[OpenSIPS-Users] Sip server dipping/advice

Bogdan-Andrei Iancu bogdan at opensips.org
Thu May 23 11:46:20 CEST 2013


And starting with trunk version, OpenSIPS implements a REST client - see
http://www.opensips.org/html/docs/modules/devel/rest_client.html

Regards,

Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com


On 05/23/2013 08:14 AM, Daniel Yu wrote:
> M.Khaled,
>
> It may be easier to perform HTTP Queries to perform the LRN lookup.
> Have a look at www.bulkvs.com <http://www.bulkvs.com> where we offer
> HTTP based LRN DIPs.
>
> Cheers -
>
> Daniel
>
>
>
>     ---------- Forwarded message ----------
>     From: *M.Khaled W Chehab* <kchehab at icucall.com
>     <mailto:kchehab at icucall.com>>
>     Date: Tue, May 14, 2013 at 6:17 AM
>     Subject: [OpenSIPS-Users] Sip server dipping/advice
>     To: users at lists.opensips.org <mailto:users at lists.opensips.org>,
>     users-bounces at lists.opensips.org
>     <mailto:users-bounces at 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 at lists.opensips.org <mailto:Users at lists.opensips.org>
>     http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
>
>
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20130523/80b079dd/attachment-0001.htm>


More information about the Users mailing list