Hi Bogdan, yes i'm sure (checked via tcpdump). How i can strip the '0' in the To (alto che in R-URI) before sending SIP INVITE outside through the gateway ?
Thanks, Michele Il 03/05/2016 14:29, Bogdan-Andrei Iancu ha scritto: > Hi Michele, > > Sorry for my question, but are you sure that $var(carrier) points to > "toip" carrier ? > > Note that the module changes only the username in RURI, it does not > change TO hdr . > > Best regards, > > Bogdan-Andrei Iancu > OpenSIPS Founder and Developer > http://www.opensips-solutions.com > > On 02.05.2016 12:33, Michele Pinassi wrote: >> Thanks Bogdan for your prompt reply but seems that don't work as >> expected: i need to strip leading '0' from called R-URI and To ! >> >> Just to help, i try to describe better my context: >> >> for any external calls, i use route[pstn]: >> >> route[pstn] { >> # Default outbound carrier >> $var(carrier) = "pstn"; >> >> # Need to route to specific carrier ? >> if(avp_db_load("$fu","$avp(out_carrier)")) { >> $var(carrier) = $avp(out_carrier); >> # Remove leading zero >> subst_uri('/sip:0(.*)@(.*)/sip:\1@\2/g'); >> subst('/^To:(.*)sip:0(.*)@(.*)/sip:\1@\2/g'); <---- Seems that >> don't work !!! >> } >> # Need to map outbound caller number ? >> if(avp_db_load("$fu","$avp(out_number_map)")) { >> >> uac_replace_from("$avp(out_number_map)","sip:$avp(out_number_map)@$Ri"); >> append_hf("P-Asserted-Identity: >> <sip:$avp(out_number_map)@$Ri>\r\n"); >> } >> >> xlog("L_INFO","$ci - Route via $var(carrier) from $fU to $tU (RURI: >> $ru)\n"); >> >> if(route_to_carrier("$var(carrier)")) { >> t_on_failure("next_gw"); >> t_relay(); >> exit; >> } >> } >> >> Here are dynamic routing tables: >> >> dr gateways >> +----+-----------+------+-------------+-------+------------+-------+------------+-------+--------+--------------------+ >> >> | id | gwid | type | address | strip | pri_prefix | attrs | >> probe_mode | state | socket | description | >> +----+-----------+------+-------------+-------+------------+-------+------------+-------+--------+--------------------+ >> >> | 2 | mediabox1 | 1 | 172.y.x.x | 0 | NULL | NULL >> | 2 | 0 | | Mediabox gateway | >> | 1 | pstn1 | 1 | 172.y.x.z | 0 | NULL | NULL >> | 2 | 0 | | Patton GW to MD110 | >> | 5 | toip1 | 1 | 172.w.x.r | 1 | NULL | NULL >> | 2 | 0 | | Trunk VoIP Fastweb | >> | 6 | toip2 | 1 | 172.w.x.f | 1 | NULL | NULL >> | 2 | 0 | | Trunk VoIP Fastweb | >> +----+-----------+------+-------------+-------+------------+-------+------------+-------+--------+--------------------+ >> >> dr groups >> +----+----------+--------+---------+-------------------+ >> | id | username | domain | groupid | description | >> +----+----------+--------+---------+-------------------+ >> | 1 | .* | .* | 1 | PSTN | >> | 2 | .* | .* | 2 | Asterisk mediabox | >> | 5 | .* | .* | 3 | Trunk TOIP | >> +----+----------+--------+---------+-------------------+ >> dr carriers >> +----+-----------+-------------+-------+-------+-------+-------------------------+ >> >> | id | carrierid | gwlist | flags | state | attrs | >> description | >> +----+-----------+-------------+-------+-------+-------+-------------------------+ >> >> | 6 | legacy | pstn1 | 1 | 0 | | Carrier to >> legacy MD110 | >> | 2 | mediabox | mediabox1 | 1 | 0 | | Carrier to >> MEDIA BOX | >> | 1 | pstn | pstn1 | 1 | 0 | | Carrier to >> PSTN | >> | 5 | toip | toip1,toip2 | 1 | 0 | | Carrier to >> Trunk TOIP | >> +----+-----------+-------------+-------+-------+-------+-------------------------+ >> >> dr rules >> +--------+---------+--------+---------+----------+---------+-------------+-------+-----------------------+ >> >> | ruleid | groupid | prefix | timerec | priority | routeid | gwlist >> | attrs | description | >> +--------+---------+--------+---------+----------+---------+-------------+-------+-----------------------+ >> >> | 1 | 1 | | | 100 | NULL | pstn1 >> | NULL | Default route to PSTN | >> | 2 | 2 | | | 100 | NULL | mediabox1 >> | NULL | Route to MEDIA BOX | >> | 6 | 3 | | | 100 | NULL | toip1,toip2 >> | NULL | VoIP Trunk | >> >> When someone call 00xxxxxxxx and need to get out via "toip" carrier, >> just for example, i need to strip out first 0... >> >> Thanks, Michele >> >> Il 29/04/2016 15:59, Bogdan-Andrei Iancu ha scritto: >>> Hi Michele, >>> >>> the per-gw ops are done in all the routing scenarios (per prefix, per >>> carrier, etc). Are you sure your call is routed via that GW ? try to >>> print in cfg the GW ID to see it the right GW is used. >>> >>> Regards, >>> >>> Bogdan-Andrei Iancu >>> OpenSIPS Founder and Developer >>> http://www.opensips-solutions.com >>> >>> On 29.04.2016 12:02, Michele Pinassi wrote: >>>> Hi all, >>>> >>>> on my OpenSIPS 1.11.6 i use dymanic module routing to magare multiple >>>> routes. I need to strip a number for particular gateways and, >>>> following >>>> manual, i set to '1' the 'strip' field in dr_gateways table. >>>> >>>> But, using function "route_to_carrier" to manage carrier routing, i >>>> get >>>> no number strip... >>>> >>>> Maybe i'm missing something ? >>>> >>>> Thanks, Michele >>>> > -- Michele Pinassi Responsabile Telefonia di Ateneo Servizio Reti, Sistemi e Sicurezza Informatica - Università degli Studi di Siena tel: 0577.(23)5000 - [email protected] Per trovare una soluzione rapida ai tuoi problemi tecnici consulta le FAQ di Ateneo, http://www.faq.unisi.it _______________________________________________ Users mailing list [email protected] http://lists.opensips.org/cgi-bin/mailman/listinfo/users
