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