element-hq / element-hq/element-call

Call Disconnected bug 2: 15 second timeout edition

Open
#1,904 3 comments 0 reactions 0 assignees View on GitHub
T-Defect
Dominant language
TypeScript
Stars
996
Forks
213
Avg merge
1d 6h
Merged PRs (30d)
54

Description

### Steps to reproduce

We are seeing bug reports come in with more call disconnections. In all of these cases, the client sends an answer and then 15 seconds later, the call disconnects. Livekit's logging isn't quite good enough to immediately tell whether the client is deliberately closing the connection, but the code on the server is 1005 so this would suggest that.

Client:
```
2023-11-17T04:29:17.078Z 1 sending answer
2023-11-17T04:29:32.075Z 4 cannot send signal request before connected, type: ping
2023-11-17T04:29:32.075Z 4 cannot send signal request before connected, type: pingReq
2023-11-17T04:29:32.200Z 1 clearing ping interval
2023-11-17T04:29:32.200Z 1 room event connectionStateChanged {"event":"connectionStateChanged","args":["disconnected"]}
2023-11-17T04:29:32.200Z 1 room event disconnected {"event":"disconnected","args":[null]}
2023-11-17T04:29:32.208Z 2 Leaving call session in room **redacted**
2023-11-17T04:29:32.208Z 2 Session in room **redacted** changed to left
```

### Outcome

#### What did you expect?

#### What happened instead?

### Operating system

_No response_

### Browser information

_No response_

### URL for webapp

_No response_

### Will you send logs?

Yes

Contributor guide

Open the contributing guide

Research direction

Start with the client log sequence: an answer is sent, ping and pingReq fail 15 seconds later, and the room becomes disconnected. Trace the corresponding server-side code reporting status 1005 and determine whether the client or server closes the connection; done means the disconnect cause is identified and reproducible behavior is documented.

Written by the indexing model from the issue text.

Assessment

Domain
audio-video-rtc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.