Hi all,<br><br>I&#39;m facing a problem&nbsp; with &quot;early CANCEL&#39;s&quot; such the one described in this thread. The scenario is the following&nbsp; one:<br><br>A PSTN call to a SIP phone. When the PSTN decides to cancel the call only a right after initiating, the PSTN will send the CANCEL message to the SER but this is discarded and not forwarded to the correct path to the SIP Phone. So what happens is that we have a ghost call.... The PSTN has already canceled the call but the SIP phone continues to ring.<br>
&nbsp;<br>The code that I have in the SER script is really simple and the behavior to a CANCEL is the same as to a INVITE:<br><br>if(subst_uri(&#39;/^sip:(\+[0-9]+)@<a href="http://192.168.20.69.*user=phone$/sip:\1@xlab.com/i&#39;)){">192.168.20.69.*user=phone$/sip:\1@xlab.com/i&#39;)){</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; record_route();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; loose_route();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t_relay_to_udp(&quot;<a href="http://192.168.20.5">192.168.20.5</a>&quot;, &quot;5060&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break;<br>}<br>In the log file I see that:<br>
RFC3261 transaction matching failed<br>t_lookup_request: no transaction found<br>e2e_cancel: e2e cancel proceeding <br><br><br>During this thread I saw that a&nbsp; CANCEL handling tm option was decided to be created. Maybe this option can help me to solve the ghost call issue. How can I change the default behavior ?&nbsp; this feature is available&nbsp; from which&nbsp; SER release ?<br>
<br>Any idea how I can solve this isse?<br><br>Thanks in advance.<br> <span class="nfakPe"></span><br>Best Regards<br><br><div class="gmail_quote">On Thu, Mar 29, 2007 at 6:19 PM, Jiri Kuthan &lt;<a href="mailto:jiri@iptel.org">jiri@iptel.org</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">At 15:58 26/02/2007, Klaus Darilion wrote:<br>
&gt;FYI: This is the pragmatic approach how openser users handle the problem:<br>
&gt;<br>
&gt;1. drop the CANCEL if there is no corresponding INVITE transaction. The UAC must retransmit the CANCEL and meanwhile there should be the INVITE transaction. (since 1.0)<br>
&gt;<br>
&gt;if ( is_method(&quot;CANCEL&quot;) &amp;&amp; !t_check_trans() ) {<br>
&gt; &nbsp;# CANCEL without matching INVITE transaction, ignore!<br>
&gt; &nbsp;# May happen if the INVITE is slower than the CANCEL.<br>
&gt; &nbsp;# Ignore the CANCEL, as the client will retransmit it, and maybe<br>
&gt; &nbsp;# the INVITE transaction is already created for the next CANCEL<br>
&gt; &nbsp;xlog(&quot;L_WARN&quot;,&quot;$ci CANCEL without matching transaction ... ignore\n&quot;);<br>
&gt; &nbsp;exit;<br>
&gt;}<br>
<br>
</div>which does not appear really reboot-safe to me. What it can lead to that ser reboot<br>
affects pending calls in that cancels are never forwarded and ringing phones will<br>
never stop ringing -- not very pleasant indeed, is it.<br>
<div class="Ih2E3d"><br>
-jiri<br>
<br>
<br>
<br>
--<br>
Jiri Kuthan &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://iptel.org/%7Ejiri/" target="_blank">http://iptel.org/~jiri/</a><br>
<br>
_______________________________________________<br>
</div><div><div></div><div class="Wj3C7c">Serusers mailing list<br>
<a href="mailto:Serusers@lists.iptel.org">Serusers@lists.iptel.org</a><br>
<a href="http://lists.iptel.org/mailman/listinfo/serusers" target="_blank">http://lists.iptel.org/mailman/listinfo/serusers</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Nuno Ribeiro