Hi Daniel
No, replies are not dropped.
I looked into source code, particularly
tmx_mod.c::t_cancel_callid() function.
It alter the global pointer T (pointing to the transaction
currently processed), but do not restore original value at the end:
- at the beginning of t_cancel_callid(), T is NULL
- then t_lookup_callid() make it point to the transaction we want
to cancel
- and the pointer is not cleanup before exiting t_cancel_callid
Here is a patch that fix this issue (it may not be the correct way
to do it)
Regards,
Guillaume
On 20/11/2013 22:57, Daniel-Constantin Mierla wrote:
> Hello,
>
> are you dropping replies? I don't see the 'SIP/2.0 487 Request
> Terminated' being sent to caller, it looks ok and has two Via headers.
>
> Cheers,
> Daniel
>
> On 11/20/13 4:06 PM, Guillaume Bour wrote:
>> On 20/11/2013 12:01, Daniel-Constantin Mierla wrote:
>>> Hello,
>>>
>>> On 11/20/13 11:50 AM, Guillaume Bour wrote:
>>>> Hi All
>>>>
>>>> We wan't to prevent our users to make more than one call at
>>>> time, so we choose to disconnect the previous call.
>>>> When the previous call is established, we use dlg_bye(), and
>>>> its ok.
>>>> But when it is in early state, we use t_cancel_callid() to
>>>> cancel its INVITE transaction.
>>>>
>>>> We face 2 issues:
>>>> 1) we use local-request event route to account calls on
>>>> timeout. Sometimes this route is called for the cancelled call
>>>> (after default timeout of 1 hour)
>>>
>>> what is in the local-request in this case? Is it a BYE?
>>>
>>>> 2) t_cancel_callid() cancel previous call, but also _make
>>>> current dialog disappear_: call is still ongoing and we can
>>>> answer and talk to each other, but the dialog does not appear
>>>> in 'kamctl stats dialog' and 'kamctl mi dlg_list'
commands
>>>>
>>>> Is there a known limitation, or do we misuse t_cancel_callid() ?
>>> Can you send the log with debug=3 in kamailio.cfg? It will help
>>> to see what happens. Otherwise, if the call id is different for
>>> current dialog, it should not happen. The ngrep output in this
>>> situation (for both first and second invite) will help.
>>>
>>> Cheers,
>>> Daniel
>>>
>>
>>
>> Hi Daniel,
>>
>> local-request is triggered by a BYE
>> I have attached sample log and trace
>>
>> There is some kind of dialogs mixing. Here is the 1st call dialog
>> as reported by "kamctl mi dlg_list" _before and after_ the 2d
>> call is answered:
>>
>> # kamctl mi dlg_list
>> dialog:: hash=2790:3231
>> state:: 2
>> ref_count:: 1
>> timestart:: 0
>> timeout:: 0
>> callid:: GoXhk8GfkIEEqFyFNcySEjSOOpVKg4Uq
>> from_uri:: sip:15909901@staging.voip
>> from_tag:: swYh88AkicGbSHpK.D1z7uo3EX9Q-.AZ
>> caller_contact::
>> sip:37984520-gch2kindtioq8@10.0.1.10:5060;transport=udp
>> caller_cseq:: 24899
>> caller_route_set::
>> caller_bind_addr:: udp:10.0.1.10:5060
>> callee_bind_addr::
>> to_uri:: sip:+3360000011@staging.voip
>> to_tag::
>> callee_contact::
>> callee_cseq::
>> callee_route_set::
>>
>> # kamctl mi dlg_list
>> dialog:: hash=2790:3231
>> state:: 3
>> ref_count:: 2
>> timestart:: 1384952191
>> timeout:: 20242152
>> callid:: GoXhk8GfkIEEqFyFNcySEjSOOpVKg4Uq
>> from_uri:: sip:15909901@staging.voip
>> from_tag:: swYh88AkicGbSHpK.D1z7uo3EX9Q-.AZ
>> caller_contact::
>> sip:37984520-gch2kindtioq8@10.0.1.20:5060;transport=udp
>> caller_cseq:: 24899
>> caller_route_set::
>> caller_bind_addr:: udp:10.0.1.10:5060
>> callee_bind_addr:: udp:10.0.1.10:5060
>> to_uri:: sip:+3360000011@staging.voip
>> to_tag:: as6c8b935a
>> callee_contact:: sip:+3360000022@10.0.1.11:5060
>> callee_cseq::
>> callee_route_set::
>>
>>
>>
>>
>>
>> _______________________________________________
>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> sr-users(a)lists.sip-router.org
>>
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>
> --
> Daniel-Constantin Mierla -http://www.asipto.com
>
http://twitter.com/#!/miconda -http://www.linkedin.com/in/miconda
> Kamailio Advanced Trainings - Berlin, Nov 25-28
> - more details about Kamailio trainings
athttp://www.asipto.com -
>
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users(a)lists.sip-router.org
>
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users(a)lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users -http://www.linkedin.com/in/miconda
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users(a)lists.sip-router.org