[Freeswitch-users] Occasional INCOMPATIBLE_DESTINATION error

Oleg Stolyar olegstolyar at gmail.com
Tue Jun 23 00:36:34 MSD 2015


All right, fair enough.  I have a sip.js test page and I'll try driving
sufficient volume through it and my jssip test page to see if I can
reproduce the issue on either.

Speaking for myself, some of the reasons I stayed on jssip so far (and of
course reasonable people can disagree :-)) are

1. I started using it before the fork, they are the original and a certain
amount of loyalty is important as long as you can afford it
2. It largely works for my use cases
3. In at least some cases when JsSIP did not work with FS but sip.js did,
it was because sip.js hid a bug in FS with a workaround that resulted in a
less severe but harder to detect error.
4. As Michael said, SIP in general is not ideal for WebRTC, so instead of
switching between jssip and sip.js I am waiting for the right moment (on
our roadmap) to go to Verto.


On Mon, Jun 22, 2015 at 12:54 PM, Michael Jerris <mike at jerris.com> wrote:

> Just to make this as completely clear as possible, as this is the 4th or
> 5th thread on a similar issue. JSSIP IS KNOWN TO BE BROKEN AND DOES NOT
> RELIABLY WORK FOR ANYONE I HAVE SEEN POST ABOUT IT.  Every single person i
> have mentioned this to has for whatever reason resisted changing to
> sip.js.  Everyone has eventually switched to use sip.js and all of the
> issues they were reporting have disappeared once switching.  Sip.js is a
> fork of jssip which fixed many of the issues found in jssip, and it is
> nearly api compatible, and they have a documented guide for how to switch.
> If anyone is having an issue with jssip, the first thing I am going to ask
> is if the same issue happens on sip.js.  We are not going to spend any time
> trying to troubleshoot an issue with another piece of software that we have
> a long line of people acknowledging is fundamentally broken.  Furthermore,
> the entire concept of sip in javascript is not particularly useful.  We
> have spent the time to write an alternate endpoint, verto, which addresses
> many of the feature and fundamental design problems with the js sip
> support.  We highly recommend using verto instead of sip to communicate
> with webrtc.
>
> Mike
>
>
>
> On Jun 22, 2015, at 3:36 PM, Oleg Stolyar <olegstolyar at gmail.com> wrote:
>
> Ah, got it.  My bad.
>
> On Mon, Jun 22, 2015 at 12:28 PM, Michael Jerris <mike at jerris.com> wrote:
>
>> 0 is not an attribute id, its a port.
>>
>> On Jun 22, 2015, at 3:15 PM, Oleg Stolyar <olegstolyar at gmail.com> wrote:
>>
>> Michael, so you are saying that 0 is not a valid attribute ID and FS is
>> doing the right thing by not handling it, right?
>>
>> If so, that's all I was asking!  I'll try to fix it from the browser/JS
>> end then.
>>
>> On Mon, Jun 22, 2015 at 12:09 PM, Michael Jerris <mike at jerris.com> wrote:
>>
>>> It is absolutely manipulated by the library.  Regardless, your issue is
>>> on the browser side, not the freeswitch side, you will need to figure out
>>> why it is sending that.
>>>
>>>
>>> On Jun 22, 2015, at 2:50 PM, Oleg Stolyar <olegstolyar at gmail.com> wrote:
>>>
>>> OK, thanks.  Since this is not reproducible at will, the only way for me
>>> to try it with sip.js is to release sip.js into production.  It's not
>>> really feasible just to test this one case.
>>>
>>> From everything I could find, my understanding is that the m= line is
>>> created by Chrome and not manipulated by the library.
>>>
>>> I think the question is this:  Is 0 a valid value for an attribute ID.
>>> Unless it's explicitly forbidden by some RFP, I don't see why it wouldn't
>>> be.  If it is, then shouldn't FS handle it?
>>>
>>> On Mon, Jun 22, 2015 at 11:39 AM, Michael Jerris <mike at jerris.com>
>>> wrote:
>>>
>>>> it is manipulated by the js library.
>>>>
>>>> On Jun 22, 2015, at 2:29 PM, Oleg Stolyar <olegstolyar at gmail.com>
>>>> wrote:
>>>>
>>>> Isn't SDP created by Chrome rather than the SIP JS library?
>>>>
>>>> On Mon, Jun 22, 2015 at 11:25 AM, Michael Jerris <mike at jerris.com>
>>>> wrote:
>>>>
>>>>> see if you get the same results with sip.js instead of jssip.
>>>>>
>>>>> On Jun 22, 2015, at 2:20 PM, Oleg Stolyar <olegstolyar at gmail.com>
>>>>> wrote:
>>>>>
>>>>> The client is sending this to Freeswitch.
>>>>>
>>>>> On Mon, Jun 22, 2015 at 11:15 AM, Michael Jerris <mike at jerris.com>
>>>>> wrote:
>>>>>
>>>>>> is that the client sending that or freeswitch?
>>>>>>
>>>>>> On Jun 22, 2015, at 2:09 PM, Oleg Stolyar <olegstolyar at gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>> Thanks Brian, this makes a lot of sense.  Snippets from SDP in these
>>>>>> problem cases look like this:
>>>>>>    m=audio 0 RTP/SAVPF 111 103 104 9 0 8 106 105 13 126
>>>>>>    c=IN IP4 10.198.149.58
>>>>>>    a=rtcp:0 IN IP4 10.198.149.58
>>>>>>
>>>>>> While good INVITES have this:
>>>>>>    m=audio 50937 RTP/SAVPF 111 103 104 9 0 8 106 105 13 126
>>>>>>    c=IN IP4 10.198.149.35
>>>>>>    a=rtcp:50937 IN IP4 10.198.149.35
>>>>>>
>>>>>> Looks like it happens when the first parameter in m=audio is 0 even
>>>>>> though there is a seemingly valid attribute 0 present.  Should 0 be
>>>>>> handled?  If so, is this an FS bug?
>>>>>>
>>>>>>
>>>>>> On Mon, Jun 22, 2015 at 10:31 AM, Brian West <brian at freeswitch.org>
>>>>>> wrote:
>>>>>>
>>>>>>> See the logs with the offer and look at the codec parsing, without
>>>>>>> this its really hard to tell what is going on, it could be an issue in
>>>>>>> chrome.  Do you ever see device or permission error?
>>>>>>>
>>>>>>> On Mon, Jun 22, 2015 at 12:29 PM, Oleg Stolyar <
>>>>>>> olegstolyar at gmail.com> wrote:
>>>>>>>
>>>>>>>> Hi guys,
>>>>>>>>
>>>>>>>> I am calling FreeSWITCH from Chrome with WebRTC (JsSip).  It works
>>>>>>>> great but occasionally (much less than 1%) FreeSWITCH does this when trying
>>>>>>>> to execute answer.  I cannot reproduce it at will, so just collecting data
>>>>>>>> from production logs.  Is there some way I can find out what exactly makes
>>>>>>>> FS unhappy?
>>>>>>>>
>>>>>>>> EXECUTE sofia/leia_agent/anonymous at anonymous.invalid answer()
>>>>>>>> 2015-06-22 16:04:53.414528 [DEBUG] switch_core_session.c:912 Send
>>>>>>>> signal sofia/leia_agent/anonymous at anonymous.invalid [BREAK]
>>>>>>>> 2015-06-22 16:04:53.414528 [NOTICE] switch_channel.c:3750 Hangup
>>>>>>>> sofia/leia_agent/anonymous at anonymous.invalid [CS_EXECUTE]
>>>>>>>> [INCOMPATIBLE_DESTINATION]
>>>>>>>> 2015-06-22 16:04:53.414528 [DEBUG] switch_channel.c:3242 Send
>>>>>>>> signal sofia/leia_agent/anonymous at anonymous.invalid [KILL]
>>>>>>>>
>>>>>>>>
>
> _________________________________________________________________________
> 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/20150622/8eea8ffc/attachment-0001.html 


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