[SR-Users] topos and PRACK problem

Sergey Basov sergey.v.basov at gmail.com
Wed May 3 15:21:22 CEST 2017


Hi Daniel.

Do you have time to look at traces and code according to bye after 180
before 200 OK?
--
Best regards,
Sergey Basov                     e-mail: sergey.v.basov at gmail.com


2017-04-28 11:58 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com>:
> I do more tests now without PRACK.
>
> I try to terminate SIP call with BYE before receiving 200 OK. It was
> failed due to empty topos_d.b_contact.
>
> I have update https://github.com/kamailio/kamailio/pull/1097
>
> After this I have no problem with BYE after 180 and/or 183 and no
> problem with PRACK.
> Daniel, I will send you dump for problem with BYE after 180 Ringing in
> private e-mail.
>
> Thank you.
>
> --
> Best regards,
> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>
>
> 2017-04-28 10:44 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com>:
>> I think the BYE for early dialog branches should follow same rules as
>> with PRACK. If a 200ok was not received yet for INVITE, BYE can be sent
>> to close a single branch, if the caller wants to terminate the entire
>> call, then it has to send CANCEL at that moment.
>>
>> I haven't had the time to look at traces yet...
>>
>> Cheers,
>> Daniel
>>
>> On 28.04.17 08:56, Sergey Basov wrote:
>>> Sorry, this not regarding prack.
>>>
>>> This for correct contact for bye without 200 OK.
>>>
>>> In call-to-2-dest-bye-on-caller-side.pcap file, you can see correct
>>> handling of the BYE request with contact from 180 Ringing
>>> --
>>> Best regards,
>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>
>>>
>>> 2017-04-28 9:52 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com>:
>>>> Hello,
>>>>
>>>> were the two branches both requiring prack?
>>>>
>>>> Cheers,
>>>> Daniel
>>>>
>>>>
>>>> On 28.04.17 08:47, Sergey Basov wrote:
>>>>> Hi Daniel.
>>>>>
>>>>> I does not see problem with parallel forking to 2 destinations.
>>>>>
>>>>> I will send 2 dumps in private email.
>>>>> --
>>>>> Best regards,
>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>
>>>>>
>>>>> 2017-04-27 15:34 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com>:
>>>>>> May be, but there is one more problem.
>>>>>>
>>>>>> I just test call to CSIPSimple softphone, it does not returm 183, it
>>>>>> just return 180 Ringing.Call was not answered for some time, and I
>>>>>> decide to terminate it from the caller side.
>>>>>> BYE massege goes wrong, to recor-route value, as PRACK before, because
>>>>>> contact from CSIPSimple side was not get from 180, call was not
>>>>>> answered so 200 OK was not send.
>>>>>> And topos doea not have contact value to send by to CSIPSimple.
>>>>>>
>>>>>> I will send dump to your private e-mail, it has real IP adreses.
>>>>>>
>>>>>> Thank you.
>>>>>> --
>>>>>> Best regards,
>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>
>>>>>>
>>>>>> 2017-04-27 15:12 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com>:
>>>>>>> Hello,
>>>>>>>
>>>>>>> although I just looked briefly at the patch, I think that works in case
>>>>>>> of a single branch sent out, but if there is going to be a parallel
>>>>>>> forking to two or more destinations, this is not going to work.
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Daniel
>>>>>>>
>>>>>>> On 27.04.17 13:33, Sergey Basov wrote:
>>>>>>>> Hi, Daniel.
>>>>>>>>
>>>>>>>> Seems I found how to fix PRACK handling.
>>>>>>>>
>>>>>>>> It works for me.
>>>>>>>>
>>>>>>>> please lock at https://github.com/kamailio/kamailio/pull/1097
>>>>>>>>
>>>>>>>> Thank you.
>>>>>>>> --
>>>>>>>> Best regards,
>>>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>>>
>>>>>>>>
>>>>>>>> 2017-04-27 13:04 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com>:
>>>>>>>>> Yes, you are right.
>>>>>>>>>
>>>>>>>>> But now before 200 OK there empty field b_contact.
>>>>>>>>>
>>>>>>>>> May be you does not populate it from contact in 183 Progress?
>>>>>>>>>
>>>>>>>>> I see that this field is not empty only after 200 OK with a Contact field.
>>>>>>>>> --
>>>>>>>>> Best regards,
>>>>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2017-04-27 12:37 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com>:
>>>>>>>>>> Hello,
>>>>>>>>>>
>>>>>>>>>> thanks for troubleshooting further. I haven't got the time to look at
>>>>>>>>>> the source code, but I expect that the b-leg attributes (contact, record
>>>>>>>>>> routes) to be set on 200ok for dialog (topos_d). I think for PRACK, the
>>>>>>>>>> routing information should be stored and taken from transaction (topos_t).
>>>>>>>>>>
>>>>>>>>>> Cheers,
>>>>>>>>>> Daniel
>>>>>>>>>>
>>>>>>>>>> On 27.04.17 11:29, Sergey Basov wrote:
>>>>>>>>>>> Hi, Daniel.
>>>>>>>>>>>
>>>>>>>>>>> I just done one more test topos with re-invite which comes from caller
>>>>>>>>>>> to callee, same direction as PRACK.
>>>>>>>>>>>
>>>>>>>>>>> And I found that, in case of prack, b_contact field is empty...
>>>>>>>>>>>
>>>>>>>>>>> Please find attached debug=3 part of re-invite message.
>>>>>>>>>>>
>>>>>>>>>>> Hope it helps.
>>>>>>>>>>> --
>>>>>>>>>>> Best regards,
>>>>>>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> 2017-04-27 10:30 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com>:
>>>>>>>>>>>> Hi, Daniel
>>>>>>>>>>>>
>>>>>>>>>>>> Please look at attached part of debug=3 while receiving and parsing PRACK.
>>>>>>>>>>>> At line 208 seems rr module does not find correct part of record_route
>>>>>>>>>>>> which in DB consists from 2 parts.
>>>>>>>>>>>>
>>>>>>>>>>>> So at line 219 and later uac module cannot restore uris.
>>>>>>>>>>>>
>>>>>>>>>>>> Thank you.
>>>>>>>>>>>> --
>>>>>>>>>>>> Best regards,
>>>>>>>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> 2017-04-26 17:08 GMT+03:00 Sergey Basov <sergey.v.basov at gmail.com>:
>>>>>>>>>>>>> Thanks for workaround.
>>>>>>>>>>>>>
>>>>>>>>>>>>> But I will wait for you solution )
>>>>>>>>>>>>>
>>>>>>>>>>>>> I ready for testing )
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thank you Daniel for your work!
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Best regards,
>>>>>>>>>>>>> Sergey Basov                     e-mail: sergey.v.basov at gmail.com
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> 2017-04-26 16:57 GMT+03:00 Daniel-Constantin Mierla <miconda at gmail.com>:
>>>>>>>>>>>>>> Hello,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 26.04.17 14:53, Sergey Basov wrote:
>>>>>>>>>>>>>>> Hi All.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I have just try to test topos with GW which requires PRACK.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> As you can see UA at packet 21 send PRACK to topos contact, but after
>>>>>>>>>>>>>>> topos, on other kamailio side in PRACK request line present not
>>>>>>>>>>>>>>> kontact but record-route header.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Can you fix it?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> probably needs to look into the code. If you need a quick workaround,
>>>>>>>>>>>>>> try to remove Supported header from INVITE so the callee should no
>>>>>>>>>>>>>> longer Require 100rel.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Cheers,
>>>>>>>>>>>>>> Daniel
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> Daniel-Constantin Mierla
>>>>>>>>>>>>>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>>>>>>>>>>>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>>>>>>>>>>>>>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>> Kamailio (SER) - Users Mailing List
>>>>>>>>>>>>>> sr-users at lists.kamailio.org
>>>>>>>>>>>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>>>>>> --
>>>>>>>>>> Daniel-Constantin Mierla
>>>>>>>>>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>>>>>>>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>>>>>>>>>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>>>>>>>>>
>>>>>>> --
>>>>>>> Daniel-Constantin Mierla
>>>>>>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>>>>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>>>>>>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>>>>>>
>>>> --
>>>> Daniel-Constantin Mierla
>>>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>>>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>>>
>>
>> --
>> Daniel-Constantin Mierla
>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>> Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
>> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
>>



More information about the sr-users mailing list