On Fri, Sep 4, 2009 at 7:28 PM, mayamatakeshi <mayamatake...@gmail.com>wrote:
> > On Wed, Sep 2, 2009 at 7:59 PM, mayamatakeshi <mayamatake...@gmail.com>wrote: > >> Hello, >> I'm testing FS support for the header Path (FS is behind opensips). >> It pretty much works: I tested calling from one user to the other and >> calls work perfectly. >> However, I'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't send >> this NOTIFY. >> What could be causing this difference of behavior? (enabling debug (F8) >> doesn't show anything for registration handling). >> > > I have enabled Sofia debug and I can see NTA is complaining about invalid > URI when building the NOTIFY: > > nua: nua_notify: entering > nua(0x9b3c1e8): sent signal r_notify > nua(0x9b3c1e8): recv signal r_notify > nua: nua_stack_set_params: entering > nua(0x9b3c1e8): adding notify usage with event message-summary > nta_leg_tcreate(0x9b74c68) > nta outgoing create: invalid URI > nta: outgoing_free(0x9b74928) > nua(0x9b3c1e8): event r_notify 900 Internal error at nua_client.c:711 > nua(0x9b3c1e8): removing notify usage with event message-summary > > My REGISTER relayed by opensips is this: > > REGISTER sip:test.com SIP/2.0 > Record-Route: > <sip:192.168.2.100;lr=on;ftag=AhFSdiltk3H4mrmGXICgRHFiU59ZuCk5> > Via: SIP/2.0/UDP 192.168.2.100;branch=z9hG4bKe62c.49e9f6c1.0 > Via: SIP/2.0/UDP 192.168.2.121:5060 > ;received=192.168.2.121;rport=5060;branch=z9hG4bKPj4uAYgDuRbilYy4lCWcjlDKIDAtf-9RdS > Max-Forwards: 69 > From: <sip:us...@test.com <sip%3aus...@test.com> > >;tag=AhFSdiltk3H4mrmGXICgRHFiU59ZuCk5 > To: <sip:us...@test.com <sip%3aus...@test.com>> > Call-ID: JvQ.apMLiJtfHa7z4ShIfgBPi5jIbtBv > CSeq: 14872 REGISTER > Contact: <sip:us...@192.168.2.121:5060;nat=yes> > Expires: 60 > Authorization: Digest username="user1", realm="test.com", > nonce="7d911eef-2c16-4deb-99f6-afcff9968a19", uri="sip:192.168.2.100", > response="df29caeb78790b4527f1176622cbf192", algorithm=MD5, > cnonce="5.EXCbM3RZTx6iOh1cvUzUvEZTs2eheG", qop=auth, nc=00000001 > Content-Length: 0 > Path: <sip:opens...@192.168.2.100 <sip%3aopens...@192.168.2.100> > ;lr;received=sip:192.168.2.121:5060> > > I hope someone can point out a problem. > I'm looking at NTA with gdb but I'm slow on this. The invalid URI nta is complaining about is the route_uri extracted from the Contact stored upon registration. The difference of behavior between INVITE (works) and NOTIFY (doesn'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. But for a NOTIFY, this function is not called (and it cannot be called, as there's no session which is required as a parameter). In my case I can see that basically what sofia_overcome_sip_uri_weakness does is to remove the "<" , ">" around the route_uri. I messed with the code in sofia_glue_send_notify to just remove "<" and ">" and after that I was able to receive the NOTIFY. So I believe there is some code lacking in FS to properly permit UAs registering via proxy to receive NOTIFY. I might be wrong: if there is anyone using this scenario successfully, please let me know. Otherwise, I'll open a ticket on JIRA. regards, takeshi
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org