[OpenSIPS-Users] uac_replace_from and two openSIPS 1.6.4

Bogdan-Andrei Iancu bogdan at opensips.org
Tue Apr 5 12:28:59 CEST 2011


Hi Anton,

There was an inline answer for that:

"if no table is used by both instances, you can share the same DB 
between 2 opensips."

Regards,
Bogdan



On 04/05/2011 01:24 PM, Anton Zagorskiy wrote:
> Hi Bogdan,
>
> Thank you, its working.
> What about my first question - mixing two openSIPS on a same DB where second
> openSIPS is just for b2b top hiding?
>
>
>
>
>
> WBR, Anton Zagorskiy
> VoIP Developer, Oyster Telecom
> Phone.: +7 812 601-0666
> Fax: +7 812 601-0593
> a.zagorskiy at oyster-telecom.ru
> www.oyster-telecom.ru
>
>
>
>> -----Original Message-----
>> From: Bogdan-Andrei Iancu [mailto:bogdan at opensips.org]
>> Sent: Monday, April 04, 2011 7:49 PM
>> To: OpenSIPS users mailling list
>> Cc: Anton Zagorskiy
>> Subject: Re: [OpenSIPS-Users] uac_replace_from and two openSIPS 1.6.4
>>
>> Hi Anton,
>>
>> On 04/04/2011 01:28 PM, Anton Zagorskiy wrote:
>>> Hello!
>>>
>>> I have two questions:
>>> 1. I have 2 openSIPS running on a one machine - first for routing,
>>> second for b2b (it has just one line 'b2b_init_request("top hiding")',
> in
>> common).
>>> Since b2b modules require a DB, can I use a same DB for both openSIPS ?
>> if no table is used by both instances, you can share the same DB between
>> 2 opensips.
>>> 2. I'm using uac_replace_from and uac_replace_to and I'm getting a
>>> strange behavior. I know that those functions shouldn't be called
>>> twice in a one branch, but they aren't - a call flow is:
>>> 1) REQUEST_ROUTE: route ->   route[invite] (uac_replace_from) ->
>>> t_relay() with t_on_failure("1")
>>> 2) FAILURE_ROUTE: failure_route[1] ->   route[failure] ->
>>> route[invite]
>>> (uac_replace_from) ->   route[to_b2b] (uac_replace_to) ->   t_relay with
>>> t_on_failure("1")
>>> And here I'm getting bad headers:
>>> Record-Route has two 'vsf' tag and From is "num1" "num2"
>>> <sip:num1 at domain1sip:num2domain2>
>>>
>>> Where is a problem?
>> The problem is that whatever you do in the main request route does apply
> to
>> all the branches (existing or future) of that request.  So you
>> uac_replace_from (from 1) does apply to all branches, including to the
>> branch you create in failure route).
>>
>> The correct approach will be to use a branch_route[] where to do the
>> from/to replacements, instead of request route.
>>
>> Regards,
>> Bogdan
>>
>> --
>> Bogdan-Andrei Iancu
>> OpenSIPS eBootcamp - 2nd of May 2011
>> OpenSIPS solutions and "know-how"


-- 
Bogdan-Andrei Iancu
OpenSIPS eBootcamp - 2nd of May 2011
OpenSIPS solutions and "know-how"




More information about the Users mailing list