In this case, the function will perform a string matching between the
first valid contact URI from the message and the registered contacts
(the `Contact` field). Again, it is a string matching over the entire
SIP URI.
So far, based on your logs, I would say they should match. Could you
doublecheck again ?
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
https://www.opensips-solutions.com
OpenSIPS Summit 2019
https://www.opensips.org/events/Summit-2019Amsterdam/
On 8/22/19 12:07 PM, Peter Pulham wrote:
Hi,
I am calling is_contact_registered("location")
For the mi command, I used "mi ul_show_contact location
[email protected] <mailto:[email protected]>" in opensips-cli
Many thanks
On Thu, Aug 22, 2019 at 10:00 AM Bogdan-Andrei Iancu
<[email protected] <mailto:[email protected]>> wrote:
Hi Peter,
How exactly do you invoke the is_contact_registered() function (as
params) for your script?
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
https://www.opensips-solutions.com
OpenSIPS Summit 2019
https://www.opensips.org/events/Summit-2019Amsterdam/
On 8/21/19 10:34 PM, Peter Pulham wrote:
Hi,
Thanks for the input.
Adding the logging of $ct before call is_contact_registered show
this (also added a log for when it returned false):
Aug 21 19:24:52 ip-10-100-100-62 /usr/local/sbin/opensips[21114]:
CONTACT OF REGISTER: "Peter Pulham" <sip:[email protected]:49710;ob>
Aug 21 19:24:52 ip-10-100-100-62 /usr/local/sbin/opensips[21114]:
IS CONTACT REGISTERED RETURNED FALSE
The contact from the ul_show_contact command shows the same contact:
{
"AOR": "[email protected] <mailto:[email protected]>",
"Contacts": [
{
"Contact": "sip:[email protected]:49710;ob",
"ContactID": "1491535901589791905",
"Expires": 18,
"Q": "",
"Callid": "8..5AzWHdLmUQNXHdQhwDR3qMwOGPaWH",
"Cseq": 56286,
"User-agent": "Telephone 1.4",
"Received": "sip:x.x.x.x:49710",
"State": "CS_NEW",
"Flags": 0,
"Cflags": "NAT",
"Socket": "udp:z.z.z.z:5060",
"Methods": 8063
}
]
}
y.y.y.y is the same in the log as the mi output.
Through testing, I have realised that if the contact is not NAT'd
then the is_contact_registered returns true.
Any input appreciated.
On Wed, Aug 21, 2019 at 11:56 AM Bogdan-Andrei Iancu
<[email protected] <mailto:[email protected]>> wrote:
Hi Peter,
To doublecheck, do this:
* before calling the is_contact_registered(), use xlog() to
print the contact you are testing (use $ct).
* before running the test, use the ul_show_contact MI
function [1] to print the in-memory contacts for the desired AOR.
[1]
https://opensips.org/html/docs/modules/2.4.x/usrloc.html#mi_ul_show_contact
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
https://www.opensips-solutions.com
OpenSIPS Summit 2019
https://www.opensips.org/events/Summit-2019Amsterdam/
On 08/16/2019 06:38 PM, Peter Pulham wrote:
Hi,
I am using mid_registrar to save registrations to the
location table.
If I use is_registered - everything works as expected. So
AOR matching is working.
However, when I use is_contact_registered - it returns false.
I have checked the contact header in the request against the
contact value of the AOR in the db and they match (the
request has a display name but I am presuming only the uri
is checked.
The endpoint is behind NAT, but the contacts match in the db
and request. Can some explain what is actually checked when
using is_contact_registered?
Many thanks
_______________________________________________
Users mailing list
[email protected] <mailto:[email protected]>
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users