<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix"><tt>Hi, <tt>Khaled!<br>
<br>
<tt>The match_dialog() function also matched the dialog and <tt>updates
the timer, there<tt>fore you should also set the pse<tt>udo
variable <tt>for ACK before the match<tt>_dialog()
call<tt>.<br>
<br>
<tt>B<tt>est regar<tt>ds,<br>
<br>
</tt></tt></tt></tt></tt></tt></tt></tt></tt><tt></tt></tt></tt></tt>
<pre class="moz-signature" cols="72">Razvan Crainea
OpenSIPS Core Developer
<a class="moz-txt-link-freetext" href="http://www.opensips-solutions.com">http://www.opensips-solutions.com</a>
</pre>
On 03/18/2013 03:38 PM, M.Khaled W Chehab wrote:<br>
</div>
<blockquote cite="mid:00c601ce23e6$49dc07d0$dd941770$@icucall.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator" content="Microsoft Word 14 (filtered
medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";
        color:black;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
tt
        {mso-style-priority:99;
        font-family:"Courier New";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";
        color:black;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;
        color:black;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";
        color:black;}
span.EmailStyle22
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle23
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle24
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle25
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Dear
Bogdan,<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">I
set the timer as below and all my calls have now 3 sec
duration ,please advice <o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">if (has_totag() && (uri ==
myself) && is_method("INVITE|ACK|BYE|UPDATE")) {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> if(match_dialog()) {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> xlog("L_INFO",
"<<<<< in-dialog topology hiding request -
$DLG_dir >>>>> \n");<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> if
(check_route_param("nat=yes")) {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
setflag(5);<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
setbflag(6);<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> }<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> if (
is_method("INVITE")) {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
$avp(timeout2) = 3;<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> } else if
(is_method("ACK")) {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
$avp(timeout2) = 3540;<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> }<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> route(1);<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> exit;<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> }<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">if (has_totag()) {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> if (is_method("ACK"))
{<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> $avp(timeout2)
= 3540; <o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> }<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> # sequential request
withing a dialog should<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> # take the path
determined by record-routing<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> if (loose_route()) {<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">etc……..<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">} else {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> if (
is_method("ACK") ) {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> if (
t_check_trans() ) {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
# non loose-route, but stateful ACK; must be an ACK after <o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
# a 487 or e.g. 404 from upstream server<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
t_relay();<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
exit;<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> } else
{<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
# ACK without matching transaction -><o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
# ignore and discard<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
exit;<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> }<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> }<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D">
sl_send_reply("404","Not here");<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> }<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> exit;<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> <o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> } else {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> if (
is_method("INVITE")) {<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> $avp(timeout2)
= 3;<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> }<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:9.0pt;font-family:"Courier
New";color:#1F497D"> }<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Regards<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF
1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span
style="font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext">From:</span></b><span
style="font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext">
Bogdan-Andrei Iancu [<a class="moz-txt-link-freetext" href="mailto:bogdan@opensips.org">mailto:bogdan@opensips.org</a>] <br>
<b>Sent:</b> Thursday, March 14, 2013 6:59 PM<br>
<b>To:</b> OpenSIPS users mailling list<br>
<b>Cc:</b> M.Khaled W Chehab; 'Brito Nicolas'<br>
<b>Subject:</b> Re: [OpenSIPS-Users] ACK Timer<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt"><tt><span
style="font-size:10.0pt">Hi Khaled,</span></tt><span
style="font-size:10.0pt;font-family:"Courier New""><br>
<br>
<tt>your mistake here is to set the timeout for INVITE under
the </tt></span><tt><span style="font-size:9.0pt">has_totag()
branch - initial INVITEs do not have TO tags.</span></tt><span
style="font-size:10.0pt;font-family:"Courier New""><br>
<br>
</span><tt><span style="font-size:9.0pt;color:windowtext">Try:</span></tt><span
style="font-size:10.0pt;font-family:"Courier New""><br>
<br>
<br>
</span><tt><span style="font-size:9.0pt;color:windowtext">if
(has_totag()) {</span></tt><span
style="font-size:10.0pt;font-family:"Courier New""><br>
</span><tt><span style="font-size:9.0pt;color:windowtext">
if (is_method("ACK")) {</span></tt><span
style="font-size:10.0pt;font-family:"Courier New""><br>
</span><tt><span style="font-size:9.0pt;color:windowtext">
$avp(timeout2) = 3540; </span></tt><span
style="font-size:10.0pt;font-family:"Courier New""><br>
</span><tt><span style="font-size:9.0pt;color:windowtext">
}</span></tt><span
style="font-size:9.0pt;font-family:"Courier
New";color:windowtext"><br>
</span><tt><span style="font-size:10.0pt;color:windowtext">
..... (loose_route)</span></tt><span
style="font-size:9.0pt;font-family:"Courier
New";color:windowtext"><br>
</span><span style="font-size:10.0pt;font-family:"Courier
New""><br>
</span><tt><span style="font-size:9.0pt;color:windowtext">}
else {</span></tt><span
style="font-size:9.0pt;font-family:"Courier
New";color:windowtext"><br>
</span><span style="font-size:10.0pt;font-family:"Courier
New""><br>
</span><tt><span style="font-size:9.0pt;color:windowtext">
if ( is_method("INVITE")) {</span></tt><span
style="font-size:10.0pt;font-family:"Courier New""><br>
</span><tt><span style="font-size:9.0pt;color:windowtext">
$avp(timeout2) = 3; </span></tt><span
style="font-size:10.0pt;font-family:"Courier New""><br>
</span><tt><span style="font-size:9.0pt;color:windowtext">
}</span></tt><span
style="font-size:9.0pt;font-family:"Courier
New";color:windowtext"><br>
<br>
</span><tt><span style="font-size:10.0pt;color:windowtext">
.......</span></tt><span
style="font-size:9.0pt;font-family:"Courier
New";color:windowtext"><br>
</span><span style="font-size:10.0pt;font-family:"Courier
New""><br>
</span><tt><span style="font-size:9.0pt;color:windowtext">}</span></tt><span
style="font-size:9.0pt;font-family:"Courier
New";color:windowtext"><br>
</span><span style="font-size:10.0pt;font-family:"Courier
New""><br>
</span><tt><span style="font-size:10.0pt;color:windowtext">Regards,</span></tt><span
style="font-size:10.0pt;font-family:"Courier
New";color:windowtext"><br>
<tt>Bogdan</tt></span><o:p></o:p></p>
<pre>Bogdan-Andrei Iancu<o:p></o:p></pre>
<pre>OpenSIPS Founder and Developer<o:p></o:p></pre>
<pre><a moz-do-not-send="true" href="http://www.opensips-solutions.com">http://www.opensips-solutions.com</a><span style="color:#1F497D"><o:p></o:p></span></pre>
<pre><o:p> </o:p></pre>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a>
<a class="moz-txt-link-freetext" href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a>
</pre>
</blockquote>
<br>
</body>
</html>