<div dir="ltr"><div style>M.Khaled,</div><div style><br></div><div style>It may be easier to perform HTTP Queries to perform the LRN lookup. Have a look at <a href="http://www.bulkvs.com">www.bulkvs.com</a> where we offer HTTP based LRN DIPs.</div>
<div style><br></div><div style>Cheers -</div><div style><br></div><div style>Daniel</div><div><br></div><br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><br><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">M.Khaled W Chehab</b> <span dir="ltr"><<a href="mailto:kchehab@icucall.com" target="_blank">kchehab@icucall.com</a>></span><br>
Date: Tue, May 14, 2013 at 6:17 AM<br>Subject: [OpenSIPS-Users] Sip server dipping/advice<br>To: <a href="mailto:users@lists.opensips.org" target="_blank">users@lists.opensips.org</a>, <a href="mailto:users-bounces@lists.opensips.org" target="_blank">users-bounces@lists.opensips.org</a><br>
<br><br><div lang="EN-US" link="blue" vlink="purple"><div><p class="MsoNormal">Hi,<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">I am using opensips 1.8.x with do_routing module ,and trying to implement the US dipping service in my script<u></u><u></u></p>
<p class="MsoNormal">I am sending the call to the dipping sip server gateway and receive the 302 message containing the LRN number ,<u></u><u></u></p><p class="MsoNormal">As as result I can have the rn number but I am sending the invite to the dipping provider twice ,please can you advice how to setup it in the right way <u></u><u></u></p>
<p class="MsoNormal"><span style="color:#1f497d">if ($rU=~"^.") {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> route(7);<u></u><u></u></span></p><p class="MsoNormal">
<span style="color:#1f497d"> route(1);<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> exit;<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d">route[1] {<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> if (subst_uri('/(<a>sip:.*);nat=yes/\1/')</a>) {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> setbflag(6);<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> }<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> if (isflagset(5)) {<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> search_append('Contact:.*sip:[^>[:cntrl:]]*', ';nat=yes');<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> }<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> <u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> # for INVITEs enable some additional helper routes<u></u><u></u></span></p><p class="MsoNormal">
<span style="color:#1f497d"> if (is_method("INVITE")) {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> t_on_branch("2");<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> t_on_reply("2");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> t_on_failure("1");<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> avp_db_query("UPDATE `opensips`.`invites` set `trunkip` ='$rd' where `CALLID` = '$ci' ");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> } else if (is_method("BYE")) {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> setflag(1); # do accounting ...<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> setflag(3); #transaction falis<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> setflag(4); #CDR Table<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> xlog("----------------------------------------Route 1 Bye---------------");<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> } else if (is_method("ACK")) {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> # call answered an ACKed, start billing here<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> } else if (is_method("CANCEL")) {<u></u><u></u></span></p><p class="MsoNormal">
<span style="color:#1f497d"> # call cancelled by caller, do clean up here' ");<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> }<u></u><u></u></span></p><p class="MsoNormal">
<span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> if (!t_relay()) {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> xlog("L_INFO", "--Debug Customer ID:$avp(Cusid)/IP:$si------#11###Reply: $T_reply_code\n");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> send_reply("500","Internal Error");<u></u><u></u></span></p>
<p class="MsoNormal">
<span style="color:#1f497d"> };<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> exit;<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d">}<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> <u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d">route[7]{<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d">if (!do_routing("$avp(Cusid)","FW")) {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d">drop();<u></u><u></u></span></p><p class="MsoNormal">
<span style="color:#1f497d"> exit;<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> }<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d">}<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> <u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d">route[6] {<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d">if ( use_next_gw() ) {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> $var(prefix) = $(avp(gw_attrs){csv.value,1});<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> $rU = $var(prefix) + $avp(dst);<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> xlog("L_INFO", "--Debug Customer ID:$avp(Cusid)/IP:$si-----Calling number to Next Provier $rU\n");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> setflag(26); #Missed calls<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> t_on_failure("1");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> t_relay();<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> exit;<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> }<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d">}<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> <u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d">branch_route[2] {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> xlog("L_INFO", "--Debug Customer ID:$avp(Cusid)/IP:$si-----new branch at $ru\n");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> route(7);<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d">}<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> <u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d">failure_route[1] {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> <u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> if (!t_check_status("302")) {<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> if (!next_routing()){<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> xlog("L_INFO", "LRN - Unable to DIP");<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> t_reply("500","Unable to DIP");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> exit;<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> }<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> xlog("L_INFO", "LRN - Unable to DIP - Trying Next");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> t_on_failure("1");<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> t_relay();<u></u><u></u></span></p><p class="MsoNormal">
<span style="color:#1f497d"> exit; <u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> }<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> if (!$(<reply>ct.fields(uri){param.value,rn})){<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> xlog("L_INFO", "LRN - No redirect information found");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> route(1);<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> }else if ($(<reply>ct.fields(uri){param.value,rn}) == $tU){<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> xlog("L_INFO", "LRN - Returned same number, no need to redirect");<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> route(1);<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> }else{ <u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> xlog("LRN-----$rU-------Else lRN $avp(lrnct)---------");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> $rU=$avp(lrnct); <u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> xlog("LRN-----$rU-------Else lRN $avp(lrnct)---------");<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> route(1);<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> }<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> <u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> if (!t_check_status("487")) {<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> #$avp(failure_count) = $avp(failure_count) + 1; 480|486|603<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> route(6);<u></u><u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"> }<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"> }<u></u><u></u></span></p><p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="color:#1f497d">}<u></u><u></u></span></p><p class="MsoNormal"><u></u> <u></u></p></div></div><br>_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.opensips.org" target="_blank">Users@lists.opensips.org</a><br>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
<br></div><br></div>
</blockquote></div><br></div></div>