<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <tt>Hi Peter,<br>
      <br>
      How exactly do you invoke the is_contact_registered() function (as
      params) for your script?<br>
      <br>
      Regards,<br>
    </tt>
    <pre class="moz-signature" cols="72">Bogdan-Andrei Iancu

OpenSIPS Founder and Developer
  <a class="moz-txt-link-freetext" href="https://www.opensips-solutions.com">https://www.opensips-solutions.com</a>
OpenSIPS Summit 2019
  <a class="moz-txt-link-freetext" href="https://www.opensips.org/events/Summit-2019Amsterdam/">https://www.opensips.org/events/Summit-2019Amsterdam/</a>
</pre>
    <div class="moz-cite-prefix">On 8/21/19 10:34 PM, Peter Pulham
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAA6ie1D-LVFoj0GjtS9G6bZXpiqmSSfExydj+6hV=R0mBgV8iw@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div>Hi,</div>
        <div><br>
        </div>
        <div>Thanks for the input.</div>
        <div><br>
        </div>
        Adding the logging of $ct before call is_contact_registered show
        this (also added a log for when it returned false):
        <div><br>
        </div>
        <div>Aug 21 19:24:52 ip-10-100-100-62
          /usr/local/sbin/opensips[21114]: CONTACT OF REGISTER: "Peter
          Pulham" <a class="moz-txt-link-rfc2396E" href="sip:5001@y.y.y.y:49710;ob"><sip:5001@y.y.y.y:49710;ob></a><br>
          Aug 21 19:24:52 ip-10-100-100-62
          /usr/local/sbin/opensips[21114]: IS CONTACT REGISTERED
          RETURNED FALSE<br>
        </div>
        <div><br>
        </div>
        <div>The contact from the <span style="font-family:monospace">ul_show_contact
            command shows the same contact:</span></div>
        <div><span style="font-family:monospace"><br>
          </span></div>
        <div>{<br>
              "AOR": "<a href="mailto:5001@domain.net"
            moz-do-not-send="true">5001@domain.net</a>",<br>
              "Contacts": [<br>
                  {<br>
                      "Contact": <a class="moz-txt-link-rfc2396E" href="sip:5001@y.y.y.y:49710;ob">"sip:5001@y.y.y.y:49710;ob"</a>,<br>
                      "ContactID": "1491535901589791905",<br>
                      "Expires": 18,<br>
                      "Q": "",<br>
                      "Callid": "8..5AzWHdLmUQNXHdQhwDR3qMwOGPaWH",<br>
                      "Cseq": 56286,<br>
                      "User-agent": "Telephone 1.4",<br>
                      "Received": <a class="moz-txt-link-rfc2396E" href="sip:x.x.x.x:49710">"sip:x.x.x.x:49710"</a>,<br>
                      "State": "CS_NEW",<br>
                      "Flags": 0,<br>
                      "Cflags": "NAT",<br>
                      "Socket": "udp:z.z.z.z:5060",<br>
                      "Methods": 8063<br>
                  }<br>
              ]<br>
          }<span style="font-family:monospace"><br>
          </span></div>
        <div><br>
        </div>
        <div>y.y.y.y is the same in the log as the mi output.</div>
        <div><br>
        </div>
        <div>Through testing, I have realised that if the contact is not
          NAT'd then the is_contact_registered returns true.</div>
        <div><br>
        </div>
        <div>Any input appreciated.</div>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">On Wed, Aug 21, 2019 at 11:56
          AM Bogdan-Andrei Iancu <<a
            href="mailto:bogdan@opensips.org" moz-do-not-send="true">bogdan@opensips.org</a>>
          wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div bgcolor="#FFFFFF"> <tt>Hi Peter,<br>
              <br>
              To doublecheck, do this:<br>
              <br>
              * before calling the is_contact_registered(), use xlog()
              to print the contact you are testing (use $ct).<br>
              <br>
              * before running the test, use the ul_show_contact MI
              function [1] to print the in-memory contacts for the
              desired AOR.<br>
              <br>
              <br>
              [1]
              <a
                class="gmail-m_6706597972070815991moz-txt-link-freetext"
href="https://opensips.org/html/docs/modules/2.4.x/usrloc.html#mi_ul_show_contact"
                target="_blank" moz-do-not-send="true">https://opensips.org/html/docs/modules/2.4.x/usrloc.html#mi_ul_show_contact</a><br>
              <br>
              Regards,<br>
            </tt>
            <pre class="gmail-m_6706597972070815991moz-signature" cols="72">Bogdan-Andrei Iancu

OpenSIPS Founder and Developer
  <a class="gmail-m_6706597972070815991moz-txt-link-freetext" href="https://www.opensips-solutions.com" target="_blank" moz-do-not-send="true">https://www.opensips-solutions.com</a>
OpenSIPS Summit 2019
  <a class="gmail-m_6706597972070815991moz-txt-link-freetext" href="https://www.opensips.org/events/Summit-2019Amsterdam/" target="_blank" moz-do-not-send="true">https://www.opensips.org/events/Summit-2019Amsterdam/</a>
</pre>
            <div class="gmail-m_6706597972070815991moz-cite-prefix">On
              08/16/2019 06:38 PM, Peter Pulham wrote:<br>
            </div>
            <blockquote type="cite">
              <div dir="ltr">Hi,
                <div><br>
                </div>
                <div>I am using mid_registrar to save registrations to
                  the location table.</div>
                <div><br>
                </div>
                <div>If I use is_registered - everything works as
                  expected. So AOR matching is working.</div>
                <div><br>
                </div>
                <div>However, when I use is_contact_registered - it
                  returns false.</div>
                <div><br>
                </div>
                <div>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.</div>
                <div><br>
                </div>
                <div>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?</div>
                <div><br>
                </div>
                <div>Many thanks</div>
              </div>
              <br>
              <fieldset
                class="gmail-m_6706597972070815991mimeAttachmentHeader"></fieldset>
              <br>
              <pre>_______________________________________________
Users mailing list
<a class="gmail-m_6706597972070815991moz-txt-link-abbreviated" href="mailto:Users@lists.opensips.org" target="_blank" moz-do-not-send="true">Users@lists.opensips.org</a>
<a class="gmail-m_6706597972070815991moz-txt-link-freetext" href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank" moz-do-not-send="true">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a>
</pre>
            </blockquote>
            <br>
          </div>
        </blockquote>
      </div>
    </blockquote>
    <br>
  </body>
</html>