[Serusers] save("location") causing routing errors?

sip sip at arcdiv.com
Mon Oct 17 04:24:16 CEST 2005


Because that's not what an INVITE message is for. 

http://www.faqs.org/rfcs/rfc3261.html

Read the SIP specification. While, technically, you might be able to parse out
some contact information from an invite message, there is no guarantee that
this information need actually be in full or total. An INVITE is designed to
send a request to another SIP UA to initiate a messaging conversation. A
REGISTER is for the purpose of setting location information. 

One might very well ask why you can't terminate a call on an ACK or initiate a
REINVITE on a BYE message. Technically, you COULD... but that's not what these
messages are for. You need to follow the specification, or the specification
is worthless. The whole idea one has a specification is so that everyone's
software/hardware works the same way and there are no surprises. 

N.


On Mon, 17 Oct 2005 15:08:01 +1300, Patrick Jordan-Smith wrote
> But I don't understand why I can't save the location when it's a INVITE
> not just a REGISTER? Could you please explain this?
> 
> Thank you,
> 
> On Sun, 2005-10-16 at 20:26 -0400, sip wrote:
> > That's what you need a static repository of location info. This is what the
> > database is for. 
> > 
> > Assuming you have your mysql db set up, you'd add these lines to your config:
> > 
> > 
> > modparam("usrloc", "db_mode", 2)
> > modparam("usrloc", "db_url", "mysql://ser:heslo@localhost/ser")
> > 
> > 
> > The DB mode could be 0, 1, or 2.  0 says that there will be no storage of the
> > information in the database, 1 means that the information will be stored at a
> > partciular interval, 2 means that the data will be stored upon each register. 
> > 
> > Then, if the server restarts before the registration expires, the location
> > information will be stored within the database upon restart. 
> > 
> > N.
> > 
> > 
> > On Mon, 17 Oct 2005 12:07:47 +1300, Patrick Jordan-Smith wrote
> > > On Sun, 2005-10-16 at 17:57 -0400, sip wrote:
> > > > That should be couched in an if(method=="REGISTER") block. 
> > > > 
> > > > 
> > > > In such a way, it would never GET an INVITE
> > > >
> > > 
> > > Yes, but then how do we handle a situation where the server has 
> > > fallen over (happens sometimes) and then come back up, we check them 
> > > but until the UA sends another REGISTER we don't know where they are 
> > > and can't get incoming calls to that UA.
> > > 
> > > Maybe I can force the re-register period to be really small (5 
> > > seconds?)
> > > 
> > > Thanks for your help,
> > > Patrick
> > > 
> > > -- 
> > 
> > > Patrick Jordan-Smith
> > > Mercury Telecommunications Ltd
> > > 
> > > voice +64-9-916-0300
> > > paper +64-9-916-0301
> > > 
> > > _______________________________________________
> > > Serusers mailing list
> > > serusers at lists.iptel.org
> > > http://lists.iptel.org/mailman/listinfo/serusers
> > 
> >




More information about the sr-users mailing list