[asterisk-bugs] [JIRA] (ASTERISK-30376) Disconnecting WebRTC SIP client disconnects all other WebRTC SIP clients
Sébastien Duthil (JIRA)
noreply at issues.asterisk.org
Fri Dec 23 16:39:58 CST 2022
Sébastien Duthil created ASTERISK-30376:
-------------------------------------------
Summary: Disconnecting WebRTC SIP client disconnects all other WebRTC SIP clients
Key: ASTERISK-30376
URL: https://issues.asterisk.org/jira/browse/ASTERISK-30376
Project: Asterisk
Issue Type: Bug
Security Level: None
Components: Resources/res_pjsip_pubsub
Affects Versions: 19.7.1
Reporter: Sébastien Duthil
Severity: Major
Given I have two PJSIP WebRTC endpoints A and B registered
When A disconnects
Then B is unregistered on Asterisk
I can reproduce the scenario with Asterisk 19.7.1 and the configuration given in the [WebRTC tutorial|https://wiki.asterisk.org/wiki/display/AST/WebRTC+tutorial+using+SIPML5] (using two endpoints {{webrtc_client}} and {{webrtc_client2}}) and two instances of the [SIPML5 WebRTC client|https://www.doubango.org/sipml5].
The disconnection by pressing the "logout" button on SIPML5 does:
* send a SIP REGISTER with {{Contact: expires=0}}
* receives the SIP ACK
* close the SIP Websocket
Here are the logs of the WebRTC connection for both accounts:
{noformat}
== WebSocket connection from '192.168.121.1:53748' for protocol 'sip' accepted using version '13'
-- Added contact 'sips:webrtc_client2 at 192.168.121.1:53748;transport=ws;rtcweb-breaker=no;x-ast-orig-host=df7jal23ls0d.invalid:0' to AOR 'webrtc_client2' with expiration of 200 seconds
== Endpoint webrtc_client2 is now Reachable
== WebSocket connection from '192.168.121.1:53750' for protocol 'sip' accepted using version '13'
-- Added contact 'sips:webrtc_client at 192.168.121.1:53750;transport=ws;rtcweb-breaker=no;x-ast-orig-host=df7jal23ls0d.invalid:0' to AOR 'webrtc_client' with expiration of 200 seconds
== Endpoint webrtc_client is now Reachable
{noformat}
Here is the Asterisk console when disconnecting {{webrtc_client}}:
{noformat}
-- Removed contact 'sips:webrtc_client at 192.168.121.1:53750;transport=ws;rtcweb-breaker=no;x-ast-orig-host=df7jal23ls0d.invalid:0' from AOR 'webrtc_client' due to request
== Contact webrtc_client/sips:webrtc_client at 192.168.121.1:53750;transport=ws;rtcweb-breaker=no;x-ast-orig-host=df7jal23ls0d.invalid:0 has been deleted
== Endpoint webrtc_client is now Unreachable
-- Removed contact 'sips:webrtc_client2 at 192.168.121.1:53748;transport=ws;rtcweb-breaker=no;x-ast-orig-host=df7jal23ls0d.invalid:0' from AOR 'webrtc_client2' due to shutdown
== Contact webrtc_client2/sips:webrtc_client2 at 192.168.121.1:53748;transport=ws;rtcweb-breaker=no;x-ast-orig-host=df7jal23ls0d.invalid:0 has been deleted
== Endpoint webrtc_client2 is now Unreachable
{noformat}
We can see that {{webrtc_client2}} is disconnected as well.
We have successfully worked around this behavior in Asterisk 19.7.1 by reverting the patch for ASTERISK-30244.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list