I have embed JSSIP
http://tryit.jssip.net/ phone to our application and it use Freeswitch
for calling, everything words but call getting disconnect after 30 second or so and in Browser JS console logs we are seeing following,
In Freeswitch
side I am seeing re-INVITE coming from JSSIP
phone, currently Freeswitch
configured in bypass_media=true
mode.
JS console logs on Browser:
JsSIP:InviteServerTransaction Timer L expired for transaction z9hG4bK9mjrH9cZ6FHtK +30s
jssip.js:21403 JsSIP:Transport received WebSocket text message:
BYE sip:50hn96ps@h1bf3jcld769.invalid;transport=ws SIP/2.0
Via: SIP/2.0/WSS 10.20.20.212:7443;branch=z9hG4bKDSQUrNgDUKa5H
Max-Forwards: 70
From: "Satish" <sip:1003@10.20.20.212>;tag=6aQ2K8U19X09j
To: <sip:50hn96ps@h1bf3jcld769.invalid;transport=ws>;tag=5vuctmpuh3
Call-ID: 07a9b5e7-7d8e-1233-c2bf-2a1507b53463
CSeq: 75946179 BYE
User-Agent: FreeSWITCH-mod_sofia/1.4.18-3-1~64bit
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE
Supported: timer, path, replaces
Reason: Q.850;cause=96;text="MANDATORY_IE_MISSING"
Content-Length: 0
+29s
jssip.js:21403 JsSIP:RTCSession receiveRequest() +12ms
jssip.js:21403 JsSIP:Transport sending WebSocket message:
SIP/2.0 200 OK
Via: SIP/2.0/WSS 10.20.20.212:7443;branch=z9hG4bKDSQUrNgDUKa5H
To: <sip:50hn96ps@h1bf3jcld769.invalid;transport=ws>;tag=5vuctmpuh3
From: "Satish" <sip:1003@10.20.20.212>;tag=6aQ2K8U19X09j
Call-ID: 07a9b5e7-7d8e-1233-c2bf-2a1507b53463
CSeq: 75946179 BYE
Supported: outbound
Content-Length: 0
+0ms
jssip.js:21403 JsSIP:RTCSession session ended +1ms
jssip.js:21403 JsSIP:RTCSession close() +0ms
jssip.js:21403 rtcninja:RTCPeerConnection close() +0ms
jssip.js:21403 JsSIP:RTCSession close() | closing local MediaStream +7ms
jssip.js:21403 rtcninja:Adapter closeMediaStream() | calling stop() on all the MediaStreamTrack +1ms
jssip.js:21403 JsSIP:Dialog dialog 07a9b5e7-7d8e-1233-c2bf-2a1507b534635vuctmpuh36aQ2K8U19X09j deleted +1ms
jssip.js:21403 JsSIP:NonInviteServerTransaction Timer J expired for transaction z9hG4bKDSQUrNgDUKa5H +2ms
jssip.js:21403 rtcninja:RTCPeerConnection oniceconnectionstatechange() | iceConnectionState: closed +0ms
jssip.js:21403 rtcninja:RTCPeerConnection onsignalingstatechange() | signalingState: closed +1ms
For phone this is normal, this can be OS limitation for none-active app.
For iOS app network activity timeout is about 30 seconds. After this app network request will not send.
For Android app network activity timeout is about 30 seconds to 3 minutes.
But note that about WebRTC Communications Consent:
Implementations MUST verify continuing consent at least every 30 seconds