nextcloud / nextcloud/spreed

Call is not joined again on reconnection with HPB if the session expired

Open
#5,337 0 comments 0 reactions 1 assignee View on GitHub

@danxuliu is already working on this.

Since Mar 6, 2021.

bug feature: call 📹 feature: frontend 🖌️ feature: signaling 📶
Dominant language
PHP
Stars
2.2k
Forks
587
Avg merge
18h 27m
Merged PRs (30d)
333

Description

Similar, although not exactly the same as in #5316. In this case as the connection expires in the HPB it causes the Nextcloud session to leave the room too, so when the browser tries to join the room again with the previous session it receives an error (no_such_room).

The solution could be to force a reconnection with a new session if an error is received when trying to join the room in the HPB. But that could have subtle side effects that should be carefully checked ;-) (for example, if a participant is kicked out from a conversation maybe the signaling will try to reconnect, but although that would legitimately fail it could end trying to endlessly rejoin).

Steps to reproduce

  • Start a call with user A in computer A
  • Join the call with user B in computer B
  • "Disconnect the Internet cable" from computer B (you can use a VM, block packets... whatever is easier ;-) )
  • Wait around 60 seconds (or until Closing expired session XXX is shown in the signaling server logs) and connect the cable again
Expected result

User B joins the call again.

Actual result

User B does not join the call again and the UI of user B will show the dialog to stay in the call or leave it.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.