<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<br>
<br>
<div class="moz-cite-prefix">On 12/04/16 17:33, Marrold wrote:<br>
</div>
<blockquote
cite="mid:CAC-Lcd92Q=b4kVAhk3XDLRzbfOjAjy4HkLrwAuXHhxN5_6Hbxg@mail.gmail.com"
type="cite">
<div dir="ltr"><span class="im" style="font-size:12.8px">Hi,</span>
<div><span class="im" style="font-size:12.8px"><br>
>>On 06/04/16 01:57, Marrold wrote:<br>
>> Hi Charles,<br>
>><br>
>> I can confirm that t_any_timeout(), and
t_branch_timeout() return true<br>
>> when these un-ACKd transactions occur.<br>
</span><span style="font-size:12.8px"><br>
</span>
<div><span style="font-size:12.8px">> by un-ACKed, do you
mean they didn't receive any response or they didn't</span><br
style="font-size:12.8px">
<span style="font-size:12.8px">> receive the ACK
following a response to an INVITE?</span><br>
</div>
</div>
<div><span style="font-size:12.8px"><br>
</span></div>
<div><span style="font-size:12.8px">I mean specifically the
response to an INVITE was not ACK'd</span></div>
<div><span style="color:rgb(80,0,80);font-size:12.8px"><br>
</span></div>
<div><span style="font-size:12.8px">>> </span><span
style="color:rgb(80,0,80);font-size:12.8px">I've been doing
some experimentation with </span><span
style="color:rgb(80,0,80);font-size:12.8px">t_any_timeout()
and t_branch_timeout(), and I've observed they return true
if either the initial invite receives no response, or if the
200 OK >> is not acknowledged by the UAC.</span></div>
<div><span style="color:rgb(80,0,80);font-size:12.8px">>>
Is there any way of differentiating between these scenarios?</span><span
style="color:rgb(80,0,80);font-size:12.8px"> </span></div>
<div><span style="font-size:12.8px"><br>
</span></div>
<div><span style="font-size:12.8px">> If Kamailio matches the
200ok for transaction, then it should not give true for a
timeout check. But maybe there is a mismatch also in
kamailio if the 200ok is sent to caller but it is no >
ACK sent back. In such case, a sip network trace will be
useful to investigate what happens there.</span><span
style="font-size:12.8px"><br>
</span></div>
<div><span style="font-size:12.8px"><br>
</span></div>
<div><span style="font-size:12.8px">In this scenario a 200ok is
sent to the caller, but no ACK is sent back. This appears to
return true for timeout checks. I will grab a SIP trace.</span></div>
<div><span style="font-size:12.8px"><br>
</span></div>
<div><span style="font-size:12.8px">As a side note / update I
figure I can potentially add a flag / AVP when a response
and / or ACK is received and figure out the cause of the
timeout from there.</span></div>
<div><span style="font-size:12.8px"><br>
</span></div>
</div>
</blockquote>
You can also run with debug=3 in kamailio config to get more log
messages in syslog. If there are too many, then use debugger module
and set debug level to 3 only for tm module, then you should see if
tm is matching the 200ok to a transaction.<br>
<br>
Cheers,<br>
Daniel<br>
<pre class="moz-signature" cols="72">--
Daniel-Constantin Mierla
<a class="moz-txt-link-freetext" href="http://www.asipto.com">http://www.asipto.com</a>
<a class="moz-txt-link-freetext" href="http://twitter.com/#!/miconda">http://twitter.com/#!/miconda</a> - <a class="moz-txt-link-freetext" href="http://www.linkedin.com/in/miconda">http://www.linkedin.com/in/miconda</a>
Kamailio World Conference, Berlin, May 18-20, 2016 - <a class="moz-txt-link-freetext" href="http://www.kamailioworld.com">http://www.kamailioworld.com</a></pre>
</body>
</html>