-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Second SIP call to SIP Plugin Dangling DTLS Thread/SDP Error #696
Comments
Check the Admin API after the hangup and before trying again, to see if the WebRTC stuff is already there, and most importantly if the call was ever established. If it is, something was not cleaned up. Consider that you have to wait about a second before a retry after a hangup, as that's how long the "garbage collector" we have for the WebRTC stuff typically takes to kick in. Trying on the reference counters PR should avoid that limitation. |
I wait a long time usually between calls. Should the webrtc resources be freed? I'm not destroying the sip plugin or the session. Since the sip registration is ongoing between calls, I'm just calling once, doing hangup on both sides then calling again. I think there is some call state in the sip plugin that isn't reset between calls, but I don't know the code well enough to say for certain. I think this used to work. |
The WebRTC stuff is not handled by the SIP plugin, but by the core. If anything's stuck in this case, it's likely there. To make sure stuff is cleared, also close the PeerConnection in your page, this will trigger a DTLS alert and as a result clean the WebRTC stuff in the core no matter the signalling. |
Ok, I will close this for now and reopen when I get more info. |
To reproduce:
Open two Chrome tabs at: https://janus.conf.meetecho.com/siptest.html
Use:
sip:v18.icoa.com sip:6010@v18.icoa.com 6010 6010 as login #1
sip:v18.icoa.com sip:6011@v18.icoa.com 6011 6011 as login #2
Dial dial 6011 from login #1, works normally
Second call fails with: DOMException: Failed to set local answer sdp: Failed to push down transport description: Offerer must use actpass value for setup attribute. (This appears in the #2 console)
The sdp offer has setup:passive instead of setup:actpass
In my logs it looks like there is some state that is not being cleaned up after Janus sip hangup. The logs are filled with
[WARN] [6791368214857040] Still waiting for the DTLS stack for component 1 in stream 1...
even though the hangup has been sent to the sip plugin.
The text was updated successfully, but these errors were encountered: