<div dir="ltr"><div class="gmail_quote"><br><br><div dir="ltr">Hi Mates,<div>I am testing a Client in Nokia E65 using kamailio <a href="http://1.3.3." target="_blank">1.3.3.</a> I managed to successfull get it Registered but when i attempt to make a call i always get the &quot;404 Not Found&quot; message in the INVITE. Strangely enough, the Client appears to still be &nbsp;ONLINE in the location table.</div>

<div><br></div><div>################################</div><div>kamailio config below</div><div>##############################</div><div><div>if(!is_method(&quot;REGISTER&quot;)){</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if(nat_uac_test(&quot;19&quot;)){</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;record_route(&quot;;nat=yes&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;} else {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;record_route();</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp;};</div><div><br></div><div>&nbsp;&nbsp; &nbsp;##Loose_route packets</div><div>&nbsp;&nbsp; &nbsp;if (has_totag()) {</div>

<div><span style="white-space:pre">        </span> &nbsp;#sequential request withing a dialog should</div><div><span style="white-space:pre">        </span> &nbsp;# take the path determined by record-routing</div>
<div><span style="white-space:pre">        </span> &nbsp;if (loose_route()) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if(method==&quot;BYE&quot;) {</div><div><span style="white-space:pre">                </span> &nbsp; &nbsp;#Account BYE transactions</div>
<div><span style="white-space:pre">                </span> &nbsp; &nbsp;setflag(2);</div><div><span style="white-space:pre">                </span>};</div><div><span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp;#Check authentication of re-invites</div>
<div><span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp;if(method==&quot;INVITE&quot; &amp;&amp; (!allow_trusted())) {<span style="white-space:pre">        </span></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (!proxy_authorize(&quot;&quot;,&quot;subscriber&quot;)) {</div>

<div><span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proxy_challenge(&quot;&quot;,&quot;0&quot;);</div><div><span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div>
<div><span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} else if (!check_from()) {</div><div><span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply(&quot;403&quot;, &quot;Forbidden, use From=ID&quot;);</div>
<div><span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div><span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;};</div><div><span style="white-space:pre">                </span>if(method==&quot;BYE&quot; || method==&quot;CANCEL&quot;) {</div>

<div><span style="white-space:pre">                </span> &nbsp; &nbsp;end_media_session();</div><div><span style="white-space:pre">                </span>};</div><div><span style="white-space:pre">                </span>##Detect requests in the dialog behind NAT and flag with 6</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if(nat_uac_test(&quot;19&quot;) || search(&quot;^Route:.*;nat=yes&quot;)){</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;append_hf(&quot;P-hint: LR|fixcontact,setflag6\r\n&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;fix_contact();</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;setflag(6);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;route(1);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;} else {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply(&quot;404&quot;,&quot;Not here&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;}</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div>&nbsp;&nbsp; &nbsp;}</div><div><br></div><div><br></div><div>&nbsp;&nbsp; &nbsp;##Loose_route packets</div><div><div>if (loose_route()) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if(!has_totag()){</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply(&quot;403&quot;, &quot;Initial Loose-Routing Rejected&quot;);</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div><div><span style="white-space:pre">        </span></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;route(1);</div><div>&nbsp;&nbsp; &nbsp;};</div><div><br></div><div>&nbsp;&nbsp; &nbsp;#CANCEL processing</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp;if (is_method(&quot;CANCEL&quot;)) {</div><div><span style="white-space:pre">        </span> &nbsp; &nbsp;if (t_check_trans()) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;end_media_session();&nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;t_relay();</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div>&nbsp;&nbsp; &nbsp; &nbsp;}</div><div><br></div><div>&nbsp;&nbsp; &nbsp;t_check_trans();</div><div>&nbsp;&nbsp; &nbsp;#&nbsp;</div><div>&nbsp;&nbsp; &nbsp;# -- 3 -- Determine Request Target</div><div>&nbsp;&nbsp; &nbsp;#</div><div>&nbsp;&nbsp; &nbsp;if (method==&quot;REGISTER&quot;) {</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;route(2);</div><div>&nbsp;&nbsp; &nbsp;} else {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;route(3);</div><div>&nbsp;&nbsp; &nbsp;};</div><div>}</div><div><br></div><div>route[1] {</div><div>&nbsp;&nbsp; &nbsp;#</div><div>&nbsp;&nbsp; &nbsp;# -- 4 -- Forward request to target</div><div>&nbsp;&nbsp; &nbsp;#</div>

<div>&nbsp;&nbsp; &nbsp;# Forward statefully</div><div>&nbsp;&nbsp; &nbsp;t_on_reply(&quot;1&quot;);</div><div>&nbsp;&nbsp; &nbsp;t_on_failure(&quot;1&quot;);</div><div>&nbsp;&nbsp; &nbsp;if (!t_relay()) {</div><div># &nbsp; &nbsp; &nbsp; &nbsp;sl_reply_error();</div><div>&nbsp;&nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp;exit;</div>

<div>}</div><div><div>route[2] {</div><div>&nbsp;&nbsp; &nbsp;## Register request handler</div><div>&nbsp;&nbsp; &nbsp;if (is_uri_host_local()) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (!www_authorize(&quot;&quot;, &quot;subscriber&quot;)) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;www_challenge(&quot;&quot;, &quot;0&quot;);</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div><div><br></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (!check_to()) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply(&quot;403&quot;, &quot;Forbidden&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div>

<div><br></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if(!search(&quot;^Contact:[ ]*\*&quot;) &amp;&amp; client_nat_test(&quot;7&quot;)) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;setflag(6);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;fix_nated_register();</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;force_rport();</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;save(&quot;location&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div><br></div><div>&nbsp;&nbsp; &nbsp;} else if {</div><div><br></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply(&quot;403&quot;, &quot;Forbidden&quot;);</div>
<div>
<br></div><div>&nbsp;&nbsp; &nbsp;};</div><div>}</div><div><br></div><div>route[3] {</div><div>&nbsp;&nbsp; &nbsp;## Requests handler&nbsp;</div><div>&nbsp;&nbsp; &nbsp;if (method==&quot;INVITE&quot;) {</div><div>&nbsp;&nbsp; &nbsp; # Account INVITE packets</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; setflag(2);</div>

<div><span style="white-space:pre">        </span> &nbsp;# Account Missed calls</div><div><span style="white-space:pre">        </span> &nbsp;setflag(3);</div><div><span style="white-space:pre">        </span> &nbsp;# Radius Extra</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;# $avp(s:sip_proxy_ip)=&quot;<a href="http://127.0.0.1" target="_blank">127.0.0.1</a>&quot;;</div><div>&nbsp;&nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp;if (is_from_local()){</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;# From an internal domain -&gt; check the credentials and the FROM</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if(!allow_trusted()){</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (!proxy_authorize(&quot;&quot;,&quot;subscriber&quot;)) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proxy_challenge(&quot;&quot;,&quot;0&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} else if(!check_from()) {</div><div><div>sl_send_reply(&quot;403&quot;, &quot;Forbidden, use From=ID&quot;);</div><div><span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div>
<span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp;};<span style="white-space:pre">        </span></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div><div><br></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (client_nat_test(&quot;3&quot;)) {</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;append_hf(&quot;P-hint: route(3)|setflag7,forcerport,fix_contact\r\n&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;setflag(7);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;force_rport();</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;fix_contact();</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div>

<div><br></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;#unconditional call forward</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if(avp_db_load(&quot;$ru/username&quot;,&quot;$avp(s:callfwd)&quot;)) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;avp_pushto(&quot;$ru&quot;, &quot;$avp(s:callfwd)&quot;);</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;route(1);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;}</div><div><span style="white-space:pre">                </span></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;consume_credentials();</div><div><span style="white-space:pre">                </span></div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;#verify aliases, if found replace R-URI.&nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;lookup(&quot;aliases&quot;);</div><div><span style="white-space:pre">                                </span></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (is_uri_host_local()) {</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# -- Inbound to Inbound</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;route(10);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;} else {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# -- Inbound to outbound</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;route(11);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div><div><br></div>

<div>&nbsp;&nbsp; &nbsp;} else {</div><div><br></div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;#From an external domain -&gt;do not check credentials</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;#Verify aliases, if found replace R-URI.&nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;lookup(&quot;aliases&quot;);</div><div>

&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (is_uri_host_local()) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#-- Outbound to inbound</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;route(12);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} else {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# -- Outbound to outbound</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;route(13);</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp;};</div><div><div>}</div><div><br></div><div>route[4] {</div><div>&nbsp;&nbsp; &nbsp;# routing to the public network</div><div>&nbsp;&nbsp; &nbsp;rewritehostport(&quot;xx.xxx.xxx.xx:5065&quot;);</div><div>&nbsp;&nbsp; &nbsp;#t_on_failure(&quot;2&quot;);</div>

<div>&nbsp;&nbsp; &nbsp;if (!t_relay()) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;sl_reply_error();</div><div>&nbsp;&nbsp; &nbsp;};</div><div>exit;</div><div>}</div><div><br></div><div>route[6] {</div><div>&nbsp;&nbsp; &nbsp;#</div><div>&nbsp;&nbsp; &nbsp;# -- NAT handling --</div><div>&nbsp;&nbsp; &nbsp;#</div><div>

&nbsp;&nbsp; &nbsp;if (isflagset(6) || isflagset(7)) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;append_hf(&quot;P-hint: Route[6]: mediaproxy \r\n&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;use_media_proxy();</div><div>&nbsp;&nbsp; &nbsp;};</div><div>}</div><div><br></div><div>route[10] {</div>

<div>&nbsp;&nbsp; &nbsp;#from an internal domain -&gt; inbound</div><div>&nbsp;&nbsp; &nbsp;#Native SIP destinations are handled using the location table</div><div>&nbsp;&nbsp; &nbsp;#Gateway destinations are handled by regular expressions</div><div>&nbsp;&nbsp; &nbsp;append_hf(&quot;P-hint: inbound-&gt;inbound \r\n&quot;);</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</div><div>&nbsp;&nbsp; &nbsp;if (uri=~&quot;^sip:0[1-9][0-9]*@&quot;) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (is_user_in(&quot;credentials&quot;,&quot;local&quot;)) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;strip(1); &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;prefix(&quot;27&quot;);</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; route(6);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; route(4);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;} else {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply(&quot;403&quot;, &quot;No permissions for local calls&quot;);</div><div>
&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp;</div><div>&nbsp;&nbsp; &nbsp;if (uri=~&quot;^sip:00[1-9][0-9]*@&quot;) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (is_user_in(&quot;credentials&quot;,&quot;int&quot;)) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; strip(2);</div><div>

&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; route(6);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; route(4);</div><div><div>exit;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;} else {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply(&quot;403&quot;, &quot;No permissions for international calls&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div>

<div>&nbsp;&nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div><div>&nbsp;&nbsp; &nbsp;if (!lookup(&quot;location&quot;)) {&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; route(6);</div><div><span style="white-space:pre">        </span> &nbsp; route(1);</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;} else {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply(&quot;404&quot;, &quot;Not Found&quot;);</div><div><span style="white-space:pre">        </span> &nbsp; &nbsp; exit;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};<span style="white-space:pre">        </span> &nbsp;</div>

<div>route(6); &nbsp; &nbsp; &nbsp; &nbsp;</div><div>route(1);</div><div>}</div><div>route[11] {</div><div>&nbsp;&nbsp; &nbsp; # from an internal domain -&gt; outbound</div><div>&nbsp;&nbsp; &nbsp; # Simply route the call outbound using DNS search</div><div>&nbsp;&nbsp; &nbsp; append_hf(&quot;P-hint: inbound-&gt;outbound \r\n&quot;);</div>

<div>&nbsp;&nbsp; &nbsp; route(1);</div><div>}</div><div><br></div><div>route[12] {</div><div>&nbsp;&nbsp; &nbsp; # From an external domain -&gt; inbound</div><div>&nbsp;&nbsp; &nbsp; # Verify aliases, if found replace R-URI.</div><div>&nbsp;&nbsp; &nbsp; lookup(&quot;aliases&quot;);</div>

<div>&nbsp;&nbsp; &nbsp; if (!lookup(&quot;location&quot;)) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply(&quot;404&quot;, &quot;Not Found&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div>&nbsp;&nbsp; &nbsp; };</div><div>&nbsp;&nbsp; &nbsp; route(1);</div><div>}</div><div><br></div>

<div>route[13] {</div><div>&nbsp;&nbsp; &nbsp; #From an external domain outbound</div><div>&nbsp;&nbsp; &nbsp; #we are not accepting these calls</div><div><div>&nbsp;append_hf(&quot;P-hint: outbound-&gt;inbound \r\n&quot;);</div><div>&nbsp;&nbsp; &nbsp; sl_send_reply(&quot;403&quot;, &quot;Forbidden&quot;);</div>

<div>&nbsp;&nbsp; &nbsp; exit;</div><div>}</div><div><br></div><div>failure_route[1] {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##--</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##-- If cancelled, exit.&nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##--</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (t_was_cancelled()) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##--</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##-- If busy send to the e-mail server, prefix the &quot;b&quot;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##-- character to indicate busy.&nbsp;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##--</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (t_check_status(&quot;486&quot;)) {</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;revert_uri();</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;prefix(&quot;b&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;rewritehostport(&quot;xx.xxx.xxx.xx:5065&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;append_branch();</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;route(1);</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;exit;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##--</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##-- If timeout (408) or unavailable temporarily (480),</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##-- prefix the uri with the &quot;u&quot;character to indicate&nbsp;</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##-- unanswered and send to the e-mail</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##-- sever</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;##--</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if (t_check_status(&quot;408&quot;) || t_check_status(&quot;480&quot;)) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; revert_uri();</div>

<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; prefix(&quot;u&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; rewritehostport(&quot;xx.xxx.xxx.xx:5065&quot;);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; append_branch();</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; route(1);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; exit;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;};</div>

<div>}</div><div><br></div><div>failure_route[2] {</div><div>&nbsp;&nbsp; &nbsp;t_on_failure(&quot;2&quot;);</div><div>&nbsp;&nbsp; &nbsp;t_relay();</div><div><div>}</div><div><br></div><div><br></div><div>onreply_route[1] {</div><div><span style="white-space:pre">        </span>#</div>

<div><span style="white-space:pre">        </span>#-- On-replay block routing --</div><div><span style="white-space:pre">        </span>#</div><div><span style="white-space:pre">        </span>if (client_nat_test(&quot;1&quot;)) {</div>
<div>&nbsp;&nbsp; &nbsp;<span style="white-space:pre">        </span> &nbsp; &nbsp;append_hf(&quot;P-hint: Onreply-route - fixcontact \r\n&quot;);</div><div>&nbsp;&nbsp; &nbsp;<span style="white-space:pre">        </span> &nbsp; &nbsp;fix_contact();</div>
<div><span style="white-space:pre">        </span>};</div><div><br></div><div><span style="white-space:pre">        </span>if ((isflagset(6) || isflagset(7)) &amp;&amp; (status=~&quot;(180)|(183)|2[0-9][0-9]&quot;)) {</div>
<div>&nbsp;&nbsp; &nbsp; <span style="white-space:pre">        </span> &nbsp; &nbsp;if (search(&quot;^Content-Type:[ ]*application/sdp&quot;)) {</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; append_hf(&quot;P-hint: onreply_route|usemediaproxy \r\n&quot;);</div>
<div><span style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; use_media_proxy();</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; };</div><div>&nbsp;&nbsp; &nbsp; &nbsp; };</div><div>&nbsp;&nbsp; &nbsp; &nbsp; exit;</div><div>}</div><div><br></div></div></div></div></div></div>
</div></div></div><div>######################################################################</div><div>Captured &nbsp;Invite packets below.</div><div>#####################################################################</div>

<div><br></div><div>.</div><div>U 2008/12/12 20:41:19.227089 <a href="http://41.23.215.255:5060" target="_blank">41.23.215.255:5060</a> -&gt; xx.xxx.xxx.xx:5060</div><div>INVITE sip:0123825710@xx.xxx.xxx.xx SIP/2.0.</div>

<div>Via: SIP/2.0/UDP 41.23.215.255:5060;branch=z9hG4bK5lvrd249rhhc6dbif4j3i48;rport.</div><div>From: &lt;<a href="mailto:sip%3A1974@10.20.11.62" target="_blank">sip:1974@10.20.11.62</a>&gt;;tag=gm8rd21tl9hc68h6f4j2.</div>
<div>To: &lt;sip:0123825710@xx.xxx.xxx.xx&gt;.</div>
<div>Contact: &lt;<a href="mailto:sip%3A1974@41.23.215.255" target="_blank">sip:1974@41.23.215.255</a>&gt;.</div><div>Accept-Contact: *;+media=audio.</div><div>CSeq: 953 INVITE.</div><div>Call-ID: -u6Sy5l7oIf2mTACTYE46_z8sRn-_f.</div>
<div>
User-Agent: Tuune Mobile.</div><div>Max-Forwards: 70.</div><div>Content-Type: application/sdp.</div><div>Content-Length: 172.</div><div>.</div><div>v=0.</div><div>o=- 54865261 0 IN IP4 <a href="http://41.23.215.255" target="_blank">41.23.215.255</a>.</div>

<div>s=Tuune Mobile.</div><div>c=IN IP4 <a href="http://41.23.215.255" target="_blank">41.23.215.255</a>.</div><div>t=0 0.</div><div>m=audio 5000 RTP/AVP 0 97.</div><div>a=sendrecv.</div><div>a=rtpmap:0 PCMU/8000.</div><div>
a=rtpmap:97 AMR/8000.</div>
<div><br></div><div><br></div><div>U 2008/12/12 20:41:19.227945 xx.xxx.xxx.xx:5060 -&gt; <a href="http://41.23.215.255:5060" target="_blank">41.23.215.255:5060</a></div><div>SIP/2.0 404 Not Found.</div><div>Via: SIP/2.0/UDP 41.23.215.255:5060;branch=z9hG4bK5lvrd249rhhc6dbif4j3i48;rport=</div>

<div>5060.</div><div>From: &lt;<a href="mailto:sip%3A1974@10.20.11.62" target="_blank">sip:1974@10.20.11.62</a>&gt;;tag=gm8rd21tl9hc68h6f4j2.</div><div>To: &lt;sip:0123825710@xx.xxx.xxx.xx&gt;;tag=329cfeaa6ded039da25ff8cbb8668bd2.bf78.</div>

<div>CSeq: 953 INVITE.</div><div>Call-ID: -u6Sy5l7oIf2mTACTYE46_z8sRn-_f.</div><div>Server:Tuune Mobile Test.</div><div>Content-Length: 0.</div><div>.</div><div><div>####################################</div><div>It is online</div>
<div>############</div><div>41:/# openserctl ul show</div><div>database engine &#39;MYSQL&#39; loaded</div><div>Control engine &#39;FIFO&#39; loaded</div><div>entering fifo_cmd ul_dump</div><div>Domain:: aliases table=512 records=0 max_slot=0</div>
<div>Domain:: location table=512 records=1 max_slot=1</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>AOR:: 1974</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>Contact:: <a href="mailto:sip%3A1974@41.22.248.8">sip:1974@41.22.248.8</a> Q=</div>
<div><span class="Apple-tab-span" style="white-space:pre">                        </span>Expires:: 932</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>Callid:: x1ySy9r2oIf1Ogj2Uzeht2FSEcYGxE</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>Cseq:: 957</div>
<div><span class="Apple-tab-span" style="white-space:pre">                        </span>User-agent:: n/a</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>State:: CS_SYNC</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>Flags:: 0</div>
<div><span class="Apple-tab-span" style="white-space:pre">                        </span>Cflag:: 0</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>Socket:: udp:xx.xxx.xxx.xx:5060</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>Methods:: 4294967295</div>
<div>FIFO command was:</div><div>:ul_dump:openser_receiver_15196</div><div><br></div></div><div><br></div><div><br></div><div><div>I hope some one can give a clue,</div><div>WBR,</div><div>Lu.</div></div><div>&nbsp;<br clear="all">
<br>-- <br>Luzango Mfupe<br>TUUNE MOBILE<br>
Tel:0128440528/0123825710<br>Tshwane-RSA<br><br>&quot;...Ships are safe in harbor, but they were never meant to stay there.......&quot;<br>
</div></div>
</div><br><br clear="all"><br><br>
</div>