[OpenSIPS-Users] Dynamic Routing module issue with srip
Michele Pinassi
michele.pinassi at unisi.it
Tue May 3 14:33:20 CEST 2016
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 - centralino at unisi.it
Per trovare una soluzione rapida ai tuoi problemi tecnici consulta le FAQ di Ateneo, http://www.faq.unisi.it
More information about the Users
mailing list