[OpenSIPS-Users] Contact list in REGISTER response
Bogdan-Andrei Iancu
bogdan at voice-system.ro
Wed Feb 24 12:03:58 CET 2010
Be careful about the expires value - the usrloc module will choose an
expire value based on the received expire and the max_expire (module
param). You need to send back to the UAC exactly the same expire as the
own determined by usrloc, otherwise the server and client will be out of
sync from expiration point of view. Like the uac will think it is still
registered, will the proxy will expire the UAC's contact.
Regards,
Bogdan
mayamatakeshi wrote:
>
>
> On Tue, Feb 16, 2010 at 6:45 PM, Bogdan-Andrei Iancu
> <bogdan at voice-system.ro <mailto:bogdan at voice-system.ro>> wrote:
>
> Hi,
>
> Yes, that is the only way - if REGISTRAR module builds the reply, it
> will do it in RFC way (adding all the registered contacts) and you
> cannot change this behaviour.
>
>
> Thanks,
> I tested it:
>
> if (!save("location","rp1")) {
> sl_reply_error();
> }
> append_to_reply("Contact: $ct;expires=40\r\n");
> sl_send_reply("200","OK");
>
> It works fine.
>
> regards,
> takeshi
>
>
>
> mayamatakeshi wrote:
> >
> > On Tue, Feb 16, 2010 at 12:54 AM, mayamatakeshi
> > <mayamatakeshi at gmail.com <mailto:mayamatakeshi at gmail.com>
> <mailto:mayamatakeshi at gmail.com <mailto:mayamatakeshi at gmail.com>>>
> wrote:
> >
> > Hello,
> > about registration, is it possible somehow to make opensips to
> > reply with a "200 OK" containing only the Contact of the
> > registering UA instead of all contacts from usrloc?
> >
> > I'm having a problem with eyebeam. It has a bug (at least the
> > version I'm testing) and it doesn't parse the Contact header
> > correctly and it always gets the value of expires from the first
> > contact listed.
> > So in the case of a "200 OK" with a Contact like this:
> >
> > Contact: <sip:1000 at 192.168.2.5:5050
> <http://sip:1000@192.168.2.5:5050>
> >
> <http://sip:1000@192.168.2.5:5050>>;expires=5;received="sip:192.168.2.5:5050
> <http://192.168.2.5:5050>
> > <http://192.168.2.5:5050>", <sip:1000 at 192.168.0.2:8286
> <http://sip:1000@192.168.0.2:8286>
> >
> <http://sip:1000@192.168.0.2:8286>>;expires=40;received="sip:192.168.128.33:61717
> <http://192.168.128.33:61717>
> > <http://192.168.128.33:61717>"
> >
> > it should get expires=40 but it is getting expires=5. And since
> > eyebeam re-registers 5 seconds before expirations, it sends
> > REGISTER immediately and this goes on in a loop till the expires
> > of the first contact gets greater than 5 (when the other
> terminal
> > re-registers).
> >
> >
> > I have not tested yet, but I think I got it:
> > I have to call the function save with the flag "r" (no Reply),
> compose
> > the Contact header myself and send the reply.
> >
> >
> >
> ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Users mailing list
> > Users at lists.opensips.org <mailto:Users at lists.opensips.org>
> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users
> >
>
>
> --
> Bogdan-Andrei Iancu
> www.voice-system.ro <http://www.voice-system.ro>
>
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
--
Bogdan-Andrei Iancu
www.voice-system.ro
More information about the Users
mailing list