-
Notifications
You must be signed in to change notification settings - Fork 508
Open
Labels
Milestone
Description
If the inCall property for the participant who is reconnecting never becomes not in the call other participants would not notice that the participant in fact reconnected (as without HPB the same session ID is used) and then not update their connection with that participant (for example, to stop it if the participant is no longer publishing).
This might be fixed by the second commit (Create and destroy Peers based on call flag changes) in #6934
How to test
- Delay getting the users for the
usersInRoomevent (so if a participant leaves and quickly joins again, like in a forced reconnection, the clients will not receive the disconnected state) by addingif ($this->userId) { sleep(5); }beforespreed/lib/Controller/SignalingController.php
Line 362 in 2e26a23
$room = $this->manager->getRoomForSession($this->userId, $sessionId); - Add audio and video permissions by default in a conversation
- Start a call as a moderator
- In a private window, join the call as a guest with audio and/or video
- Wait until the connection is established (it may take a while due to the delayed signaling messages)
- In the original window, remove all permissions from the other participant
Result with this pull request
In the original window the other participant is seen as in the call, although without audio or video
Result without this pull request
In the original window the connection is lost with the other participant and never recovered