Commit graph

111 commits

Author SHA1 Message Date
Bruno Windels f187a51c97 stop replaced track in PeerCall 2022-07-07 15:36:30 +02:00
Bruno Windels 206ac6e2dd WIP: prevent stream id from changing when upgrading call 2022-07-05 18:22:36 +02:00
Bruno Windels 8a90c48d1e debugging unmuting not working 2022-06-25 05:56:43 +02:00
Bruno Windels 41288683fc allow unmuting when we don't yet have a mic/cam track 2022-06-10 17:10:23 +02:00
Bruno Windels bfdea03bbd start with seq 1, like Element Call does 2022-06-03 15:50:02 +02:00
Bruno Windels ed5fdb8154 don't withhold member event for call just because we don't have profile 2022-06-03 12:43:51 +02:00
Bruno Windels 90b6a5ccb6 update call member info with room member info 2022-06-02 15:56:23 +02:00
Bruno Windels a530944f7d add logging to seq queueing 2022-06-02 11:11:32 +02:00
Bruno Windels 513c059459 buffer messages as long as seq numbers in between haven't been received 2022-06-02 10:59:14 +02:00
Bruno Windels a139571e20 move setting seq on outbound messages to member, is specific to_device 2022-06-02 10:59:03 +02:00
Bruno Windels a014740e72 don't throw when we can't encrypt, just fall back to sending unencrypted 2022-06-01 15:55:43 +02:00
Bruno Windels 3edfbd2cf6 await hangup here, so log doesn't terminate early 2022-06-01 15:30:25 +02:00
Bruno Windels 50ae51e893 encrypt call signalling message only for given device 2022-06-01 15:28:49 +02:00
Bruno Windels a50ea7e77b add support for observing room state for single room + initial state 2022-05-12 17:27:03 +02:00
Bruno Windels d727dfd843 add session.observeRoomState to observe state changes in all rooms
and use it for calls
this won't be called for state already received and stored in storage,
that you need to still do yourself
2022-05-12 11:58:28 +02:00
Bruno Windels a923e7e5e1 don't pass errors as log levels 2022-05-11 13:15:03 +02:00
Bruno Windels 5ee4e39bc7 add return type 2022-05-11 10:06:15 +02:00
Robert Long 21065791a8 Fix removing members in handleCallMemberEvent 2022-05-10 16:58:03 -07:00
Bruno Windels cd8fac2872 update TODO 2022-05-09 14:31:19 +02:00
Bruno Windels d69b1dc3e2 expose log items for exposing debugging info in sdk users 2022-05-06 17:06:56 +02:00
Bruno Windels fc08fc3744 always log device removal in same way and prevent call id overwritten 2022-05-06 16:59:26 +02:00
Bruno Windels 1a08616df1 logging improvements 2022-05-04 18:44:11 +02:00
Bruno Windels 1a0b11ff7e also log payload when receiving to_device call message, help debug with thirdroom 2022-04-29 14:59:19 +01:00
Bruno Windels c1c08e9eb0 more logging of callId and sessionIds 2022-04-29 14:58:44 +01:00
Bruno Windels 9938071e1c more sessionId logging 2022-04-29 14:34:03 +01:00
Bruno Windels bb92d2e30d log session id when adding a member entry 2022-04-29 14:19:10 +01:00
Bruno Windels 8e2e92cd2c this timer should not fire after disposing 2022-04-29 10:11:12 +01:00
Bruno Windels e1974711f3 dont close this when disconnecting as long as we haven't restructured the log items in general, we can always connect again fr now and assume to reuse the same log item 2022-04-28 16:56:32 +01:00
Bruno Windels d346f4a3fb add & remove rather than update when session id changed 2022-04-28 16:52:42 +01:00
Bruno Windels 3d83fda69f some more cleanup 2022-04-28 16:52:17 +01:00
Bruno Windels 2d9b69751f some logging cleanup 2022-04-28 16:52:00 +01:00
Bruno Windels 0be75d9c59 update the TODO 2022-04-28 12:45:15 +01:00
Bruno Windels a91bcf5d22 ensure there is no race between reconnecting & updating the session id
it's probably fine as connect has to wait to receive the
negotiationneeded event before it can send out an invite, but just to
be sure update the session id beforehand
2022-04-28 12:44:13 +01:00
Bruno Windels b03b296391 comments, todo housekeeping 2022-04-27 19:41:25 +02:00
Bruno Windels 4f2999f8d8 reconnect when detecting session id change, so we send invite if needed 2022-04-27 19:41:02 +02:00
Bruno Windels bffce7fafe more logging 2022-04-27 19:40:49 +02:00
Bruno Windels be04eeded0 always reevaluate remote media when receiving a new remote track
not just when we don't know the stream already
this caused the video track to not appear when the other party sends the
invite.
Also added more logging
2022-04-27 17:33:27 +02:00
Bruno Windels 230ccd95ab reset retryCount when disconnecting 2022-04-27 17:33:12 +02:00
Bruno Windels 6b22078140 prevent localMedia being disposed when disconnecting on session change
this would cause us to not send any media anymore and a black screen
on the other side that just refreshed
2022-04-27 11:34:05 +01:00
Bruno Windels beeb191588 reset member when seeing a new session id
also buffer to_device messages for members we don't have a member event
for already.
2022-04-26 21:11:41 +02:00
Bruno Windels eea3830146 emit change when muting so our own video feed gets hidden in the view 2022-04-26 16:18:49 +02:00
Bruno Windels 9ab75e8ed4 fix c/p error mixing up audio and video muting 2022-04-26 15:48:03 +02:00
Bruno Windels b46ec8bac4 Merge branch 'bwindels/calls-wip' into bwindels/calls 2022-04-26 14:29:04 +02:00
Bruno Windels f61064c462 nicer UI for calls, show avatar when muted, muted status 2022-04-26 14:27:28 +02:00
Bruno Windels 3198ca6a92 expose remote mute settings 2022-04-26 14:20:44 +02:00
Bruno Windels cdb2a79b62 add muting again, separate from changing media 2022-04-22 14:48:14 +01:00
Bruno Windels ac60d1b61d remove thick abstraction layer
instead just copy the DOM typing and make it part of the platform layer
2022-04-21 17:40:45 +02:00
Bruno Windels 10a6269147 always send new metadata after calling setMedia 2022-04-21 10:15:57 +02:00
Bruno Windels 55c6dcf613 don't re-clone streams when not needed 2022-04-21 10:11:24 +02:00
Bruno Windels 99769eb84e implement basic renegotiation 2022-04-21 10:10:49 +02:00