<br><div class="gmail_quote">On Fri, Sep 4, 2009 at 7:28 PM, mayamatakeshi <span dir="ltr">&lt;<a href="mailto:mayamatakeshi@gmail.com">mayamatakeshi@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><div class="gmail_quote"><div class="im">On Wed, Sep 2, 2009 at 7:59 PM, mayamatakeshi <span dir="ltr">&lt;<a href="mailto:mayamatakeshi@gmail.com" target="_blank">mayamatakeshi@gmail.com</a>&gt;</span> wrote:<br></div>
<div class="im"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hello,<br>I&#39;m testing FS support for the header Path (FS is behind opensips).<br>It pretty much works: I tested calling from one user to the other and calls work perfectly. <br>However, I&#39;ve noticed that when I register my terminal directly with FS without going thru the proxy, I receive an unsolicited NOTIFY containing Message-Waiting information. But when I register via proxy, FS doesn&#39;t send this NOTIFY.<br>



What could be causing this difference of behavior? (enabling debug (F8) doesn&#39;t show anything for registration handling). <br></blockquote></div></div><br>I have enabled Sofia debug and I can see NTA is complaining about invalid URI when building the NOTIFY:<br>

<br>nua: nua_notify: entering<br>nua(0x9b3c1e8): sent signal r_notify<br>nua(0x9b3c1e8): recv signal r_notify<br>nua: nua_stack_set_params: entering<br>nua(0x9b3c1e8): adding notify usage with event message-summary<br>nta_leg_tcreate(0x9b74c68)<br>

nta outgoing create: invalid URI<br>nta: outgoing_free(0x9b74928)<br>nua(0x9b3c1e8): event r_notify 900 Internal error at nua_client.c:711<br>nua(0x9b3c1e8): removing notify usage with event message-summary<br><br>My REGISTER relayed by opensips is this:<br>

<br>REGISTER sip:<a href="http://test.com" target="_blank">test.com</a> SIP/2.0<br>Record-Route: &lt;sip:192.168.2.100;lr=on;ftag=AhFSdiltk3H4mrmGXICgRHFiU59ZuCk5&gt;<br>Via: SIP/2.0/UDP 192.168.2.100;branch=z9hG4bKe62c.49e9f6c1.0<br>
Via: SIP/2.0/UDP 192.168.2.121:5060;received=192.168.2.121;rport=5060;branch=z9hG4bKPj4uAYgDuRbilYy4lCWcjlDKIDAtf-9RdS<br>
Max-Forwards: 69<br>From: &lt;<a href="mailto:sip%3Auser1@test.com" target="_blank">sip:user1@test.com</a>&gt;;tag=AhFSdiltk3H4mrmGXICgRHFiU59ZuCk5<br>To: &lt;<a href="mailto:sip%3Auser1@test.com" target="_blank">sip:user1@test.com</a>&gt;<br>
Call-ID: JvQ.apMLiJtfHa7z4ShIfgBPi5jIbtBv<br>
CSeq: 14872 REGISTER<br>Contact: &lt;sip:user1@192.168.2.121:5060;nat=yes&gt;<br>Expires: 60<br>Authorization: Digest username=&quot;user1&quot;, realm=&quot;<a href="http://test.com" target="_blank">test.com</a>&quot;, nonce=&quot;7d911eef-2c16-4deb-99f6-afcff9968a19&quot;, uri=&quot;sip:192.168.2.100&quot;, response=&quot;df29caeb78790b4527f1176622cbf192&quot;, algorithm=MD5, cnonce=&quot;5.EXCbM3RZTx6iOh1cvUzUvEZTs2eheG&quot;, qop=auth, nc=00000001<br>

Content-Length:  0<br>Path: &lt;<a href="mailto:sip%3Aopensips@192.168.2.100" target="_blank">sip:opensips@192.168.2.100</a>;lr;received=sip:<a href="http://192.168.2.121:5060" target="_blank">192.168.2.121:5060</a>&gt;<br>
<br>I hope someone can point out a problem.<br>
I&#39;m looking at NTA with gdb but I&#39;m slow on this.</blockquote><div><br>The invalid URI nta is complaining about is the route_uri extracted from the Contact stored upon registration.<br>The difference of behavior between INVITE (works) and NOTIFY (doesn&#39;t work) via proxy, seems to be because for INVITE, mod_sofia code (function sofia_glue_do_invite in sofia_glue.c) calls sofia_overcome_sip_uri_weakness to adjust the route_uri. <br>
But for a NOTIFY, this function is not called (and it cannot be called, as there&#39;s no session which is required as a parameter).<br><br>In my case I can see that basically what sofia_overcome_sip_uri_weakness  does is to remove   the &quot;&lt;&quot; , &quot;&gt;&quot; around the route_uri.<br>
I messed with the code in sofia_glue_send_notify to just remove &quot;&lt;&quot; and &quot;&gt;&quot; and after that I was able to receive the NOTIFY.<br>So I believe there is  some code lacking in FS to properly permit UAs registering via proxy to receive NOTIFY. <br>
I might be wrong: if there is anyone using this scenario successfully, please let me know. Otherwise, I&#39;ll open a ticket on JIRA.<br><br>regards,<br>takeshi<br><br><br><br><br><br><br> <br></div></div><br>