Merge pull request #2099 from vitorpamplona/claude/fix-webrtc-disconnect-issue-1HDAl
Fix group call handling for answer/reject events
This commit is contained in:
+8
-2
@@ -215,10 +215,13 @@ class CallManager(
|
|||||||
}
|
}
|
||||||
|
|
||||||
is CallState.IncomingCall -> {
|
is CallState.IncomingCall -> {
|
||||||
// Another device of this user answered the call — stop ringing.
|
|
||||||
if (callId != current.callId) return
|
if (callId != current.callId) return
|
||||||
|
if (answeringPeer == signer.pubKey) {
|
||||||
|
// Another device of this user answered the call — stop ringing.
|
||||||
transitionToEnded(current.callId, current.peerPubKeys(), EndReason.ANSWERED_ELSEWHERE)
|
transitionToEnded(current.callId, current.peerPubKeys(), EndReason.ANSWERED_ELSEWHERE)
|
||||||
}
|
}
|
||||||
|
// Otherwise another group member answered — we keep ringing.
|
||||||
|
}
|
||||||
|
|
||||||
is CallState.Connected -> {
|
is CallState.Connected -> {
|
||||||
if (callId != current.callId) return
|
if (callId != current.callId) return
|
||||||
@@ -273,10 +276,13 @@ class CallManager(
|
|||||||
}
|
}
|
||||||
|
|
||||||
is CallState.IncomingCall -> {
|
is CallState.IncomingCall -> {
|
||||||
// Another device of this user rejected the call — stop ringing.
|
|
||||||
if (callId != current.callId) return
|
if (callId != current.callId) return
|
||||||
|
if (rejectingPeer == signer.pubKey) {
|
||||||
|
// Another device of this user rejected the call — stop ringing.
|
||||||
transitionToEnded(current.callId, current.peerPubKeys(), EndReason.REJECTED)
|
transitionToEnded(current.callId, current.peerPubKeys(), EndReason.REJECTED)
|
||||||
}
|
}
|
||||||
|
// Otherwise another group member rejected — we keep ringing.
|
||||||
|
}
|
||||||
|
|
||||||
else -> {
|
else -> {
|
||||||
return
|
return
|
||||||
|
|||||||
Reference in New Issue
Block a user