[OpenSIPS-Users] $fU read-only, calling number modification problem

Maciej Bylica mbsip at gazeta.pl
Fri Oct 22 00:02:16 CEST 2010


Guys any advice please...

Thx.


> Just prompt explaination:
>> - no modparams in config
> no uac modparams in config.
>
>
>
>> - route[0] is responsible for basic routing
>> - route[5] is for proper call distribution by using lookup(location)
>> information. In the same route i have implemented calling number
>> modification.
>> Just before the end of route i am arming t_relay with failure route
>> (in case of busy for instance).
>> - failure_route[105] is to do_routing the call to VM service outside
>> the opensips. But just before t_relaying here i need to restore the
>> original $fU.
>> According to http://www.opensips.org/html/docs/modules/1.6.x/uac.html#id292928
>> i should use uac_restore_from() command (with default restore_mode
>> modparam).
>> Unfortunately the calling number once replaced cannot be restored in my case.
>> Below you may find a snippet from debug
>>
>> Number replacing is generating vsf param
>> /sbin/opensips[28268]: DBG:uac:w_replace_from: dsp=0xffd3f38c (len=0)
>> , uri=0xffd3f394 (len=29)
>> /sbin/opensips[28268]: DBG:uac:replace_uri: removing display ["unknown"]
>> /sbin/opensips[28268]: DBG:uac:replace_uri: uri to replace
>> [sip:48222114499 at 11.22.33.44]
>> /sbin/opensips[28268]: DBG:uac:replace_uri: replacement uri is
>> [sip:222114499 at 11.22.33.44]
>> /sbin/opensips[28268]: DBG:uac:replace_uri: encode
>> is=<AAAAAAIJAgUMBAEAD3AHeQUXBR8FHwUaCRoKHAsyOQ--> len=44
>> /sbin/opensips[28268]: DBG:rr:add_rr_param: adding
>> (;vsf=AAAAAAIJAgUMBAEAD3AHeQUXBR8FHwUaCRoKHAsyOQ--) 0x81c2828
>>
>> then opensips constucts Busy message and in the same time without any
>> uac_restore_from() command:
>> /sbin/opensips[28795]: DBG:uac:restore_uri_reply: removing
>> <<sip:222114496 at 11.22.33.44>>
>> /sbin/opensips[28795]: DBG:uac:restore_uri_reply: inserting <"unknown"
>> <sip:48222114499 at 11.22.33.44>>
>>
>> then the call failes to failure_route[105] and uac_restore_from() is
>> generating following debug
>> /sbin/opensips[28797]: DBG:uac:restore_uri: getting 'vsf' Route param
>> /sbin/opensips[28797]: DBG:uac:restore_uri: route param 'vsf' not found
>> just after that the call is hitting do_routing and t_relay to VM
>> server. Of course calling number was not restored to original one.
>>
>> Could You please point me where the problem is located?
>> Just  one more info - calling number modification part of config is
>> located in separated route[10] to be used whenever i wish in my
>> script.
>>
>> Thx,
>> Maciej.
>>
>>
>>> Bogdan, Stefano,
>>>
>>> Its working as is should :)
>>> Thanks for pointing me to the right function.
>>>
>>> Maciej.
>>>
>>> 2010/10/11 Bogdan-Andrei Iancu <bogdan at voice-system.ro>:
>>>> To be more precise:
>>>>    http://www.opensips.org/html/docs/modules/1.6.x/uac.html#id228582
>>>>
>>>> Regards,
>>>> Bogdan
>>>>
>>>> Stefano Pisani wrote:
>>>>>   Use replace_from :-)
>>>>>
>>>>> ciao
>>>>> s
>>>>>
>>>>> Il 10/10/2010 19:19, Maciej Bylica ha scritto:
>>>>>
>>>>>> Hello
>>>>>>
>>>>>> I have a question regarding $fU pseudo variable.
>>>>>> As mentioned at http://www.opensips.org/Resources/DocsCoreVar16 and on
>>>>>> the basis of opensips outputs:
>>>>>> ERROR:dialplan:dp_trans_fixup: the output PV is read-only!!
>>>>>> it clearly means that $fU is read-only.
>>>>>>
>>>>>> Unfortunately it is quite big problem for me, because what im
>>>>>> struggling with is to achieve proper calling number presentation.
>>>>>> In my scenario all endpoints located in subscriber table do have full
>>>>>> username with country code, so there are for instance:
>>>>>> - 48111223344 (48 country code)
>>>>>> - 49222334455 (49 country code)
>>>>>> - 44333445566 (44 country code)
>>>>>> ...
>>>>>>
>>>>>> If there is a national call inside the 48 country code the calling
>>>>>> number should be changed by striping first two digits (48) -
>>>>>> 48999887766--->999887766
>>>>>> In case of international call, i should add two digits (00) -
>>>>>> 49222334455--->0049222334455.
>>>>>>
>>>>>> I am using diaplan module in this case and following entry gives me
>>>>>> the error I mentioned.
>>>>>> dp_translate("2", "$fU/$fU");
>>>>>>
>>>>>> If there are any workaround.
>>>>>> Any help would be highly appreaciated.
>>>>>>
>>>>>> Thanks,
>>>>>> Maciej
>>>>>>
>>>>>> _______________________________________________
>>>>>> Users mailing list
>>>>>> 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
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Bogdan-Andrei Iancu
>>>> OpenSIPS Bootcamp
>>>> 15 - 19 November 2010, Edison, New Jersey, USA
>>>> www.voice-system.ro
>>>>
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at lists.opensips.org
>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>
>>>
>>
>



More information about the Users mailing list