<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle19
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;}
span.EmailStyle22
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle23
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Hi Henning,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">It turned out that I didn’t know how an e.164 lookup is initiated particularly the required format of the calling number.<o:p></o:p></p>
<p class="MsoNormal">Reading through the source code, the function call: is_e164() showed I was missing the leading + char.  I also noticed that I missed the LM_ERR in my log files eg:<o:p></o:p></p>
<p class="MsoNormal">Jan 10 10:50:11 imskamailio /usr/local/sbin/kamailio[24552]: ERROR: enum [enum.c:840]: enum_query(): R-URI user '<1234567>' is not an E164 number<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">In our case we are looking at standing up a ENUM server that can be queried for specific user characteristics to complete a call, so now we append the ‘+’ when we want to check a caller or callee:<o:p></o:p></p>
<p class="MsoNormal">enum_pv_query("+$rU", "enumsvc.e164.arpa.", "sip+video")<o:p></o:p></p>
<p class="MsoNormal">enum_pv_query("+$fU", " enumsvc.e164.arpa", "+sip+video")<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">All is good now.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thanks!<o:p></o:p></p>
<p class="MsoNormal">Martin<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> Henning Westerholt <hw@skalatan.de> <br>
<b>Sent:</b> Saturday, January 18, 2020 6:47 AM<br>
<b>To:</b> Kamailio (SER) - Users Mailing List <sr-users@lists.kamailio.org>; Woscek, Martin W. <mwoscek@mitre.org><br>
<b>Subject:</b> [EXT] Re: [SR-Users] Kamailio 5.2.2 IMS -enum_query question<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p>Hello Martin,<o:p></o:p></p>
<p>do you see any errors in the log file during the time that you execute the enum_query? Have you tried to test it with activated debug logging?<o:p></o:p></p>
<p>Cheers,<o:p></o:p></p>
<p>Henning<o:p></o:p></p>
<div>
<p class="MsoNormal">Am 10.01.20 um 17:57 schrieb Woscek, Martin W.:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">Hi,<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">I am trying to invoke unum lookups from calls to enum_query() ,is_from_user_enum() and  enum_pv_query().<o:p></o:p></p>
<p class="MsoNormal">However we are not seeing any enum lookups over the wire using wireshark.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">In the Kamailio.cfg the following are set:<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">loadmodule "enum"<o:p></o:p></p>
<p class="MsoNormal">modparam("enum", "domain_suffix", "mydnsserver.org.")<o:p></o:p></p>
<p class="MsoNormal">modparam("enum", "i_enum_suffix", " mydnsserver.org.")<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">sample use in our Kamailio.cfg file:<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">if(!enum_query("mydnsserver.org.")) {<o:p></o:p></p>
<p class="MsoNormal">                xlog(“….);<o:p></o:p></p>
<p class="MsoNormal">                #do something<o:p></o:p></p>
<p class="MsoNormal">} else {<o:p></o:p></p>
<p class="MsoNormal">                Xlog(“….”)<o:p></o:p></p>
<p class="MsoNormal">                #do something else<o:p></o:p></p>
<p class="MsoNormal">}<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">I do see NAPTR lookups being done by the other Kamailio IMS processes initially when it starts up so I know it has connectivity to the DNS server, but none for the invoked enum queries.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">We are running Kamailio 5.2.2.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
<p class="MsoNormal">Martin<o:p></o:p></p>
<p class="MsoNormal"><br>
<br>
<o:p></o:p></p>
<pre>_______________________________________________<o:p></o:p></pre>
<pre>Kamailio (SER) - Users Mailing List<o:p></o:p></pre>
<pre><a href="mailto:sr-users@lists.kamailio.org">sr-users@lists.kamailio.org</a><o:p></o:p></pre>
<pre><a href="https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users">https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users</a><o:p></o:p></pre>
</blockquote>
<pre>-- <o:p></o:p></pre>
<pre>Henning Westerholt - <a href="https://skalatan.de/blog/">https://skalatan.de/blog/</a><o:p></o:p></pre>
<pre>Kamailio services - <a href="https://gilawa.com">https://gilawa.com</a><o:p></o:p></pre>
<pre>Kamailio Merchandising - <a href="https://skalatan.de/merchandising/">https://skalatan.de/merchandising/</a><o:p></o:p></pre>
</div>
</body>
</html>