[OpenSIPS-Users] How to change Contact header
Bogdan-Andrei Iancu
bogdan at voice-system.ro
Wed Oct 6 13:15:49 CEST 2010
Hi David,
take when using such regexps as the contact hdr may have multiple syntaxes:
Contact: sip:user at domain
Contact: sip:user at domain;hdr_params
Contact: <sip:user at domain>;hdr_params
Contact: <sip:user at domain;uri_params>;hdr_params
Contact: "display" <sip:user at domain>;hdr_params
Contact: display <sip:user at domain>;hdr_params
etc....
So having a regexp to match all case may be difficult....better try to
focus only on the domain part, like matching the "@IP" part...., like
(Contact: .*@)[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}
Regards,
Bogdan
David Santiago wrote:
> Solved!
>
> Adding a \r did the thing...
>
> if ( subst('/^Contact: <sip:([0-9]+)@(.*)$/Contact:
> <sip:\1 at NEW_IP_ADDRESS_HERE>\r/ig') ) {
> xlog("contact modified!");
> };
>
> On Tue, Oct 5, 2010 at 6:34 PM, David Santiago
> <david.santiago at almiralabs.com <mailto:david.santiago at almiralabs.com>>
> wrote:
>
> Hi all,
>
> I need to modify the host part of a contact header. I'm trying
> something like:
>
> if ( subst('/^Contact: <sip:([0-9]+)@(.*)$/Contact:
> <sip:\1 at NEW_IP_ADDRESS_HERE>/ig') ) {
> xlog("contact modified!");
> };
>
> but the resulting Contact header is wrong and cannot be processed.
>
> Having a look at the header with wireshark shows that the "Contact
> Binding" entry is missing the ending ">", but the "Contact", "URI" or
> "SIP contact address" have the ">" at the end :L
>
> May be this is not the right way to modify a Contact header...
>
>
> Thanks in advance,
> David
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
--
Bogdan-Andrei Iancu
OpenSIPS Bootcamp
15 - 19 November 2010, Edison, New Jersey, USA
www.voice-system.ro
More information about the Users
mailing list