element-hq / element-hq/element-call

Unable to properly hangup from call

Open
#3,147 4 comments 1 reaction 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

1. Join private server.
2. Join call.
3. Hangup.

### Outcome

#### What did you expect?
Hangup.

#### What happened instead?
It fails to hangup. You are still on the call, can hear and see everyone but it appears to everyone that you left. This happens for all participants.

I grabbed this from console after clicking the red hangup button. (ignore the poor layout)
```
rageshake.ts:500 Failed to send hangup action tw: Unknown or unsupported action: im.vector.hangup
at Koe.handleResponse (https://skittles/assets/index-52Ns62Lx.js:34:58588)
at Koe.handleMessage (https://skittles/assets/index-52Ns62Lx.js:34:58153)
at https://skittles/assets/index-52Ns62Lx.js:34:57833

window.console. @ rageshake.ts:500
(anonymous) @ rageshake.ts:639
GHe @ rtcSessionHelpers.ts:162
await in GHe
LU @ rtcSessionHelpers.ts:182
await in LU
(anonymous) @ GroupCallView.tsx:327
onClick @ InCallView.tsx:588

MatrixRTCSession Not joined to session in room !ABC:url: ignoring leave call
```

### Operating system

All

### Browser information

Several

### URL for webapp

no

### Will you send logs?

No

Contributor guide

Open the contributing guide

Research direction

Start at the hangup click path in InCallView.tsx and GroupCallView.tsx, then read the related logic in rtcSessionHelpers.ts. Reproduce the failure and inspect why the hangup action is rejected and why the session reports that it was not joined. Done means leaving the call actually removes the participant from the session for all participants.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
audio-video-rtc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.