[Freeswitch-users] INVITE and hangup in the middle of a call

Oleg Stolyar olegstolyar at gmail.com
Thu May 21 18:59:20 MSD 2015


Thanks Michael!

There are some internal reasons why it's not trivial for us to switch to
sip.js but as I said we'll be looking into that as well.
On a side note, JsSip did come back - they are actively releasing new
versions.

Also, I have a question about best practices.  If a client originates a
call to FS, do you think it's better to have the client be the session
refresher or FS?  Any reason one way or another?

On Thu, May 21, 2015 at 7:50 AM, Michael Jerris <mike at jerris.com> wrote:

> I think its incredibly easy to switch to sip.js as its pretty close API to
> jssip, and looking at the invite you posted, it does have a full sdp.
>  jssip has been mostly abandoned for many months (maybe they came back, but
> it has serious bitrot either way), its not worth the time to mess with
> something we know is broken when there is an easy alternative we know works.
>
> On May 21, 2015, at 10:44 AM, Oleg Stolyar <olegstolyar at gmail.com> wrote:
>
> The suggestion about switching to SIP.JS?  We are considering this but it
> will take a us a while to get it done and ready for production.  In the
> meantime I was able to enable debugging on JsSip and it seems that we get
> this error when receiving re-INVITE from FS:
> rtcninja:ERROR:RTCPeerConnection setLocalDescription() | error: +0ms
> Failed to set local answer sdp: Session error code: ERROR_CONTENT. Session
> error description: Failed to set audio receive codecs..
>
> It seems that FS is not including codecs info in re-INVITES.  JsSip
> developers are saying that all invites including re-invites should include
> all the info.  What do you think?
>
>
>
> On Wed, May 20, 2015 at 8:19 PM, Michael Jerris <mike at jerris.com> wrote:
>
>> See my previous suggestion earlier in this thread
>>
>>
>> On Wednesday, May 20, 2015, Oleg Stolyar <olegstolyar at gmail.com> wrote:
>>
>>> I looked at my logs more carefully and noticed that FS sends such
>>> re-INVITES for many of my calls but not all.  It is always sent about one
>>> minute after the call is established, so it's probably not based on session
>>> timer, right?
>>>
>>> In most cases when it's sent JsSip answers with a 100 Trying.  In this
>>> case the call stays on.  In some rare cases JsSip does not respond and FS
>>> disconnects the call with NORMAL_TEMPORARY_FAILURE we see in the log
>>> above.
>>>
>>> I will investigate why JsSip sometimes does not respond but I would
>>> still like to figure out why FS is sending those re-INVITES to begin with?
>>>
>>> I thought it could be happening if JsSip does not respond to OK with an
>>> ACK but that's not the case.  The ACK is there for these calls.
>>>
>>> There is a variable nonce-ttl in the sip profile that defaults to 60
>>> seconds.  Perhaps it has something to do with that?  This profile does not
>>> require authentication or registration at all, though.
>>>
>>> On Wed, May 20, 2015 at 7:40 AM, Oleg Stolyar <olegstolyar at gmail.com>
>>> wrote:
>>>
>>>> But isn't that based on the session-timeout param which defaults to 30
>>>> min?  My re-invites occur much sooner than 30 min into a call.  Or does
>>>> session-timeout param only control sessions initiated by FS while incoming
>>>> sessions use the minimum-session-expires param if it's not explicitly
>>>> passed by the session initiator?
>>>>
>>>> On Tue, May 19, 2015 at 11:40 PM, Michael Jerris <mike at jerris.com>
>>>> wrote:
>>>>
>>>>> session timer
>>>>>
>>>>>
>>>>> On Tuesday, May 19, 2015, Oleg Stolyar <olegstolyar at gmail.com> wrote:
>>>>>
>>>>>> Thanks Michael, I'll see if we can do that!
>>>>>>
>>>>>> So, is the re-INVITE legit and the problem is that JsSip does not
>>>>>> respond to it?  Still, I am curious what is triggering the re-INVITE.
>>>>>>
>>>>>> On Tue, May 19, 2015 at 8:05 PM, Michael Jerris <mike at jerris.com>
>>>>>> wrote:
>>>>>>
>>>>>>> I think the sip.js guys fixed this issue when they forked jssip.
>>>>>>> I'd suggest using that.
>>>>>>>
>>>>>>> > On May 19, 2015, at 10:01 PM, Oleg Stolyar <olegstolyar at gmail.com>
>>>>>>> wrote:
>>>>>>> >
>>>>>>> > Hi guys,
>>>>>>> >
>>>>>>> > Several weeks ago I started getting an occasional problem where FS
>>>>>>> is sending an INVITE to the other side in the middle of a call, the other
>>>>>>> side does not respond and FS hangs up the leg.  Below is the relevant log.
>>>>>>> The user experience is that they keep talking and hearing each other up to
>>>>>>> the very end.  I have a recording of that call, so can confirm.
>>>>>>> >
>>>>>>> > The call uses WebRTC and is originated by JsSip from Chrome.  Then
>>>>>>> the user is put into a conference but I doubt it's relevant in this case
>>>>>>> since the INVITE and disconnect are not happening from mod_conference
>>>>>>> >
>>>>>>> > I suspect it's a re-INVITE but what triggers FS to send it?  I
>>>>>>> couldn't find anything in the logs that could shed light.
>>>>>>> >
>>>>>>> > send 1625 bytes to wss/[##.##.##.##]:50292 at 00:00:19.702933:
>>>>>>> >
>>>>>>> ------------------------------------------------------------------------
>>>>>>> >    INVITE sip:dj012n41 at u40rf5qikah5.invalid;transport=ws;ob
>>>>>>> SIP/2.0
>>>>>>> >    Via: SIP/2.0/WSS 10.97.158.232:5067;branch=z9hG4bK7Xm4tjevU45Sr
>>>>>>> >    Max-Forwards: 70
>>>>>>> >    From: <
>>>>>>> sip:answer-c4e14a20-fe82-11e4-95ed-22000b358f22 at anonymous.invalid
>>>>>>> >;tag=KQecUSr12rSQp
>>>>>>> >    To: "user1" <sip:anonymous at anonymous.invalid>;tag=v1rlqab64i
>>>>>>> >    Call-ID: g8980rbrbk2t45oj5mru
>>>>>>> >    CSeq: 75703945 INVITE
>>>>>>> >    Contact: <
>>>>>>> sip:answer-c4e14a20-fe82-11e4-95ed-22000b358f22@##.##.###.###:5080;transport=udp
>>>>>>> >
>>>>>>> >    User-Agent: FreeSWITCH-mod_sofia/1.5.15b~64bit
>>>>>>> >    Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO,
>>>>>>> UPDATE, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE
>>>>>>> >    Supported: timer, path, replaces
>>>>>>> >    Session-Expires: 120;refresher=uac
>>>>>>> >    Min-SE: 120
>>>>>>> >    Content-Type: application/sdp
>>>>>>> >    Content-Disposition: session
>>>>>>> >    Content-Length: 825
>>>>>>> >
>>>>>>> >    v=0
>>>>>>> >    o=FreeSWITCH 1432057287 1432057288 IN IP4 ##.##.##.##
>>>>>>> >    s=FreeSWITCH
>>>>>>> >    c=IN IP4 ##.##.##.##
>>>>>>> >    t=0 0
>>>>>>> >    a=msid-semantic: WMS uZEfxiWc2Dm3Mj8pRAdC8BQDwtTzC6hW
>>>>>>> >    m=audio 22670 RTP/SAVPF 9 126 106
>>>>>>> >    a=rtpmap:9 G722/8000
>>>>>>> >    a=rtpmap:126 telephone-event/8000
>>>>>>> >    a=rtpmap:106 CN/8000
>>>>>>> >    a=ptime:20
>>>>>>> >    a=fingerprint:sha-256
>>>>>>> E4:E2:DD:6C:60:61:69:9D:FD:21:64:79:66:C0:14:58:DD:67:CE:29:35:35:58:65:2E:91:70:85:4C:6C:47:69
>>>>>>> >    a=rtcp-mux
>>>>>>> >    a=rtcp:22670 IN IP4 ##.##.##.##
>>>>>>> >    a=ssrc:1029894069 cname:VL2jTPmLiyFVIEaq
>>>>>>> >    a=ssrc:1029894069 msid:uZEfxiWc2Dm3Mj8pRAdC8BQDwtTzC6hW a0
>>>>>>> >    a=ssrc:1029894069 mslabel:uZEfxiWc2Dm3Mj8pRAdC8BQDwtTzC6hW
>>>>>>> >    a=ssrc:1029894069 label:uZEfxiWc2Dm3Mj8pRAdC8BQDwtTzC6hWa0
>>>>>>> >    a=ice-ufrag:5dS3Fzx1Thrmdy9Z
>>>>>>> >    a=ice-pwd:a19UHlvPK1BjvBzrFilbII2s
>>>>>>> >    a=candidate:3876535948 1 udp 659136 107.20.175.160 22670 typ
>>>>>>> host generation 0
>>>>>>> >
>>>>>>> ------------------------------------------------------------------------
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:19.376858
>>>>>>> [DEBUG] switch_core_session.c:1061 Send signal
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid [BREAK]
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:19.376858
>>>>>>> [DEBUG] sofia.c:6627 Channel
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid entering state
>>>>>>> [calling][0]
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.616874
>>>>>>> [DEBUG] switch_core_session.c:1061 Send signal
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid [BREAK]
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.616874
>>>>>>> [DEBUG] switch_core_session.c:1061 Send signal
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid [BREAK]
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.616874
>>>>>>> [DEBUG] sofia.c:6627 Channel
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid entering state
>>>>>>> [terminating][503]
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.616874
>>>>>>> [NOTICE] sofia.c:7543 Hangup
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid [CS_EXECUTE]
>>>>>>> [NORMAL_TEMPORARY_FAILURE]
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.616874
>>>>>>> [DEBUG] switch_channel.c:3242 Send signal
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid [KILL]
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.616874
>>>>>>> [DEBUG] switch_core_session.c:1396 Send signal
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid [BREAK]
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] mod_conference.c:5057 Channel leaving conference, cause:
>>>>>>> NORMAL_TEMPORARY_FAILURE
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] mod_conference.c:9650
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid skip receive message
>>>>>>> [UNBRIDGE] (channel is hungup already)
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] switch_core_media.c:7772
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid skip receive message
>>>>>>> [REFER_EVENT] (channel is hungup already)
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] switch_core_codec.c:246
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid Restore previous codec
>>>>>>> G722:9.
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] switch_core_session.c:2901
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid skip receive message
>>>>>>> [APPLICATION_EXEC_COMPLETE] (channel is hungup already)
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] switch_core_state_machine.c:535 (
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid) State EXECUTE going
>>>>>>> to sleep
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] switch_core_state_machine.c:472 (
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid) Running State Change
>>>>>>> CS_HANGUP
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] switch_core_state_machine.c:735 (
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid) Callstate Change
>>>>>>> ACTIVE -> HANGUP
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] switch_core_state_machine.c:737 (
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid) State HANGUP
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] mod_sofia.c:413 Channel
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid hanging up, cause:
>>>>>>> NORMAL_TEMPORARY_FAILURE
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] switch_core_state_machine.c:60
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid Standard HANGUP,
>>>>>>> cause: NORMAL_TEMPORARY_FAILURE
>>>>>>> > fc1927a8-2257-400f-b4cb-67aff7297170 2015-05-20 00:00:22.636900
>>>>>>> [DEBUG] switch_core_state_machine.c:737 (
>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid) State HANGUP going to
>>>>>>> sleep
>>>>>>> >
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _________________________________________________________________________
>>>>>>> Professional FreeSWITCH Consulting Services:
>>>>>>> consulting at freeswitch.org
>>>>>>> http://www.freeswitchsolutions.com
>>>>>>>
>>>>>>> Official FreeSWITCH Sites
>>>>>>> http://www.freeswitch.org
>>>>>>> http://confluence.freeswitch.org
>>>>>>> http://www.cluecon.com
>>>>>>>
>>>>>>> FreeSWITCH-users mailing list
>>>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>>>> UNSUBSCRIBE:
>>>>>>> http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>>>>> http://www.freeswitch.org
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> _________________________________________________________________________
>>>>> Professional FreeSWITCH Consulting Services:
>>>>> consulting at freeswitch.org
>>>>> http://www.freeswitchsolutions.com
>>>>>
>>>>> Official FreeSWITCH Sites
>>>>> http://www.freeswitch.org
>>>>> http://confluence.freeswitch.org
>>>>> http://www.cluecon.com
>>>>>
>>>>> FreeSWITCH-users mailing list
>>>>> FreeSWITCH-users at lists.freeswitch.org
>>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>>> UNSUBSCRIBE:
>>>>> http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>>> http://www.freeswitch.org
>>>>>
>>>>
>>>>
>>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://confluence.freeswitch.org
>> http://www.cluecon.com
>>
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://confluence.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://confluence.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20150521/4d4d2dc8/attachment-0001.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list