Re: registering to external proxy

Ben Greear <[email protected]> Fri, 28 Jan 2005 09:42:14 -0800
Newsgroups gmane.comp.lib.vovida.vocal
Organization Candela Technologies
Message-ID <[email protected]>
Patai Tamas wrote:
> Hi,
> 
> I'm still on trying to register to an external proxy. I receive allways a 
> REGISTRATIONEXPIRED response. Although if I make call to this account the 
> gua will ring ?!?!?
> 
> My vocal is from the BEN_GREEAR_FIXES cvs branch.
> 
> The simpliest idea to me is to skip that part of the gua in the 
> UaCallControl.cxx
> 
> 
>  if(statusMsg->getStatusLine().getStatusCode() == 200)
>  {
>         if((statusMsg->getExpires().getDelta().convertInt()))

There is a bug where VOCAL does not parse expires=foo when it is
in the Contact line.  Please see inline comments below.

>        {
>              UaFacade::instance().postMsg("REGISTERED ");
>         } else
>        {
>             UaFacade::instance().postMsg("REGISTRATIONEXPIRED ");
>         }
> }
> 
> (The message logs attached)
> 
> 
> Any suggestions?
> Thanks
> Tamas 
> 
> 
> 
>  Command received: INFO
>        (UA --> proxy)
>  Command received: INFO
>        (UA --> proxy)
>        REGISTER sip:proxy01.sipphone.com:5060 SIP/2.0
>        Via: SIP/2.0/UDP 152.66.10.7:5060
>        To: 17476007974<sip:[email protected]:5060>
>        From: 17476007974<sip:[email protected]:5060>
>        Call-ID: [email protected]
>        CSeq: 1 REGISTER
>        Max-Forwards: 70
>        Expires: 3600
>        Contact: <sip:[email protected]:5060;user=phone>
>        Content-Length: 0
>  Registering ...
>  Command received: INFO
>        (UA --> proxy)
>        SIP/2.0 401 Unauthorized
>        Via: SIP/2.0/UDP 152.66.10.7:5060;rport=5060;received=198.65.166.131
>        To: 17476007974<sip:[email protected]:5060>;tag=21a483426c2cd5d9b85bffe6bba40a2e.33ee
>        From: 17476007974<sip:[email protected]:5060>
>        Call-ID: [email protected]
>        CSeq: 1 REGISTER
>        Server: Sip EXpress router (0.8.14-2 (i386/linux))
>        Warning: 392 198.65.166.131:5060 "Noisy feedback tells:  pid=1292 req_src_ip=152.66.10.7 req_src_port=5060 in_uri=sip:proxy01.s
> phone.com:5060 out_uri=sip:proxy01.sipphone.com:5060 via_cnt==1"
>        WWW-Authenticate: Digest realm="proxy01.sipphone.com", nonce="41fa44f9f399ff0152bb6efea12598bda45fe941"
>        Content-Length: 0
>  Command received: INFO
>        (UA --> proxy)
>        REGISTER sip:proxy01.sipphone.com:5060 SIP/2.0
>        Via: SIP/2.0/UDP 152.66.10.7:5060
>        To: 17476007974<sip:[email protected]:5060>
>        From: 17476007974<sip:[email protected]:5060>
>        Call-ID: [email protected]
>        CSeq: 2 REGISTER
>        Max-Forwards: 70
>        Expires: 3600
>        Contact: <sip:[email protected]:5060;user=phone>
>        Authorization: Digest nonce="41fa44f9f399ff0152bb6efea12598bda45fe941",realm="proxy01.sipphone.com",response="02591ff48caede783
> 883d4a27f84ca",uri="sip:proxy01.sipphone.com:5060",username="17476007974"
>        Content-Length: 0
>  Registering ...
>  Command received: INFO
>        (UA --> proxy)
>        SIP/2.0 200 OK
>        Via: SIP/2.0/UDP 152.66.10.7:5060;rport=5060;received=198.65.166.131
>        To: 17476007974<sip:[email protected]:5060>;tag=21a483426c2cd5d9b85bffe6bba40a2e.33ee
>        From: 17476007974<sip:[email protected]:5060>
>        Call-ID: [email protected]
>        CSeq: 2 REGISTER
>        Server: Sip EXpress router (0.8.14-2 (i386/linux))
>        Contact: <sip:[email protected]:5060;transport=tcp;user=phone>;q=0.00;expires=3503
>        Contact: <sip:[email protected]:5060;user=phone>;q=0.00;expires=3600

This does not have the regular Expire: header, but rather puts it in the Contact
line.  This is most likely the problem.  I have fixed this in my VOCAL2 branch,
but it was not a simple one-line fix or anything like that.  Also, the VOCAL2 branch
is busted in other ways as I only test for my particular application...

The best thing to do would be to fix the logic so that it uses the expires=foo
here in the Contact line when returning the result for getExpires().

Thanks,
Ben

-- 
Ben Greear <[email protected]>
Candela Technologies Inc  http://www.candelatech.com

_______________________________________________
vocal mailing list
[email protected]
To unsubscribe, please go to http://www.vovida.org/mailman/listinfo/vocal