Hello Daniel!
Thanks for the reply. Here's the first line of a request where uri_param()
fails to detect user=phone is already present. IPs, phone numbers and
domains have been censored, but most properties (number of parts, length
etc) have been preserved where possible:
INVITE sip:+306974000000@2.2.2.2;user=phone SIP/2.0
The example code in my original message results in the following (the
script also replaces the domain part and adds the npdi username parameter):
INVITE sip:+306974000000;npdi@my.domain.tld;user=phone;user=phone SIP/2.0
BR,
George
On 23 October 2017 at 10:22, Daniel-Constantin Mierla <miconda(a)gmail.com>
wrote:
Hello,
On 13.10.17 17:25, George Diamantopoulos wrote:
Hello,
In my script I've had to test for the user=phone parameter in URIs. I
thought uri_param() from siputils would be handy for this operation on
the RURI, so I did:
if ( !uri_param("user","phone") ) {
add_uri_param("user=phone");
}
Unfortunately this wouldn't work (uri_param returns -1), and I end up
with double user=phone params in the RURI.
I was able to work around this by changing the test to:
if ( !($(ru{uri.uparam}) == "phone") ) {
add_uri_param("user=phone");
}
But I wanted to ask if this is intentional or if I should file a bug
or something. Thanks.
according to the docs, uri_param() should work for this case. Can you
paste the first line of the request that fails with uri_param() function
so I can look at the code and see if there is any issue there?
Cheers,
Daniel
--
Daniel-Constantin Mierla
www.twitter.com/miconda --
www.linkedin.com/in/miconda
Kamailio Advanced Training, Nov 13-15, 2017, in Berlin -
www.asipto.com
Kamailio World Conference -
www.kamailioworld.com