<div dir="ltr">Hi list,<div><br></div><div style>I have in my config:</div><div style><br></div><div style><div>if (!lookup("location","m")) {</div><div><span class="" style="white-space:pre">        </span>switch ($retcode) {</div>
<div><span class="" style="white-space:pre">                </span>case -1: # Not used</div><div><span class="" style="white-space:pre">                </span>case -3: # User not found, forward</div><div><span class="" style="white-space:pre">                        </span>xlog("DESCISION: <$proto><CallID:$ci><CSeq:$cs><Method:$rm><$si:$sp>to<$Ri:$Rp> To: $tu not found. Route upstream");</div>
<div><span class="" style="white-space:pre">                        </span>route(upstream);</div><div><span class="" style="white-space:pre">                        </span>exit;</div><div><span class="" style="white-space:pre">                </span>case -2: # Not used</div><div>
<span class="" style="white-space:pre">                        </span>sl_send_reply("405", "Method Not Allowed");</div><div><span class="" style="white-space:pre">                        </span>exit;</div><div><span class="" style="white-space:pre">        </span>}</div>
<div>}</div><div><br></div><div style>When I'm getting an incomming call, I see in my log:</div><div style><br></div><div style>/usr/sbin/opensips[11393]: DESCISION: <udp><CallID:x@x.x.x.x><CSeq:11061><Method:INVITE><x.x.x.x:5060>to<y.y.y.y:5060> To: sip:nnnn0790@y.y.y.y:5060 not found. Route upstream<br>
</div></div><div><br><div style>Ergo, OpenSIPS fails to lookup the subscriber. However, when using opensipsctl the subscriber is clearly registered on the server:</div><div style><br></div><div style>AOR:: <a href="mailto:nnnn0790@domain.no">nnnn0790@domain.no</a><br>
</div><div style><br></div><div style>The only difference is that the AOR is registered with the domain and the INVITE is referencing the server IP. According to the documentation [1], this should not be a problem because "<span style="color:rgb(0,0,0);font-family:Helvetica,Arial;font-size:12px;text-align:justify">The functions extracts username from Request-URI and tries to find all contacts for the username in usrloc.".</span></div>
<div style><span style="color:rgb(0,0,0);font-family:Helvetica,Arial;font-size:12px;text-align:justify"><br></span></div><div style><span style="color:rgb(0,0,0);font-family:Helvetica,Arial;font-size:12px;text-align:justify">As I'm no SIP expert I thought that I might have misunderstood what actually was meant by the "username" part of the R-URI, I assumed it was just the actual phone number, exclusive of host-name. Section 19.1.1 of RFC 3261 (SIP) confirms this "</span><span style="color:rgb(0,0,0);font-size:1em">sip:user:password@host:port;uri-parameters?headers".</span></div>
<div><br></div><div>[1]. <a href="http://www.opensips.org/html/docs/modules/devel/registrar.html#id293055">http://www.opensips.org/html/docs/modules/devel/registrar.html#id293055</a><br></div><div><br></div><div>version: opensips 1.9.0-notls (x86_64/linux)<br>
</div><div><br></div><div style>So I can only conclude that either code is broken or documentation is broken, or both. </div><div><br></div><div>Brgds,<br clear="all"><div>Stian Øvrevåge</div>
</div></div></div>