[OpenSIPS-Users] Cancel branch before failover on timeout
Bogdan-Andrei Iancu
bogdan at opensips.org
Thu Jul 11 14:24:41 CEST 2013
Hi Ronald,
I wouldn't go so far - even if you get 2 records for the transaction
based accounting, the values will be mixed.
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com
On 07/10/2013 03:08 PM, Ronald Cepres wrote:
> Bogdan,
>
> I am currently using CDR based. Does it mean that if I use transaction
> based, we will have more accurate resulting CDRs?
>
> Thanks.
>
>
> On Mon, Jul 8, 2013 at 10:05 PM, Bogdan-Andrei Iancu
> <bogdan at opensips.org <mailto:bogdan at opensips.org>> wrote:
>
> Hi Ronald,
>
> I never experienced such race (with multiple 200 oks on different
> branches)....But depending on what kind of accounting you do:
> - transaction based = you will get 2 START records and 2 STOP
> records, but with different TO tags....
> - cdr based = you will get the values of the last 200 OK (which
> will overwrite the values of the first one)..
>
> I guess the ACC module was never designed to deal with such scenarios.
>
> Regards,
>
> Bogdan-Andrei Iancu
> OpenSIPS Founder and Developer
> http://www.opensips-solutions.com
>
>
> On 07/06/2013 02:25 AM, Ronald Cepres wrote:
>> Bogdan,
>>
>> Understood, and thanks for the info.
>>
>> However, I have some concerns with regards to the resulting CDR
>> using the acc and drouting modules. I think if both GWs sent 200
>> OK at the same time, it would result in a CDR with the values of
>> AVPs specified by carrier_id_avp and gw_id_avp drouting
>> parameters set only to GW2. Also, if GW1 is the last GW in the
>> gwlist and this type of race condition happens, the value of the
>> AVPs will be set to blank.
>>
>>
>> On Fri, Jul 5, 2013 at 2:15 AM, Bogdan-Andrei Iancu
>> <bogdan at opensips.org <mailto:bogdan at opensips.org>> wrote:
>>
>> Hello Ronald,
>>
>> If the first GW sent any reply before the timeout, than
>> OpenSIPS will cancel it before hitting the failure route. If
>> no reply at all sent by GW1, OpenSIPS will hit the failure
>> route on timeout without canceling. If after this point (call
>> send to GW2) first GW sends a reply :
>> 1) if a provisional reply (<200), it will be canceled on
>> the spot
>> 2) if a 200 ok reply -> it will be accepted and fwd to
>> calling device
>> a) if the GW2 did not send a 200 OK, it will be canceled
>> b) if GW2 also sent a 200 OK in the same time, both
>> 200 OK will be sent to calling device and it that device will
>> decide what call to keep
>>
>> Regards,
>>
>> Bogdan-Andrei Iancu
>> OpenSIPS Founder and Developer
>> http://www.opensips-solutions.com
>>
>>
>> On 07/04/2013 07:41 PM, Ronald Cepres wrote:
>>>
>>> Bogdan,
>>>
>>> Thanks for the informative reply.
>>>
>>> What I really want to solve is a problem I encounter when
>>> the first GW doesnt respond after a defined timeout then
>>> Opensips does failover to next GW. A few seconds after the
>>> call is routed to second GW, the first GW responds with 200
>>> OK, which may cause problems. It seems that the first GW has
>>> a slow response time.
>>>
>>> The solution I am thinking of to prevent this is to send a
>>> cancel to the first GW before doing failover to next
>>> gateway. Does this make sense or is there a better solution?
>>>
>>> Thanks.
>>>
>>> -Ronald
>>>
>>> On Jul 4, 2013 11:58 PM, "Bogdan-Andrei Iancu"
>>> <bogdan at opensips.org <mailto:bogdan at opensips.org>> wrote:
>>>
>>> Hello Ronald,
>>>
>>> When you hit the failure route, there is no ongoing
>>> branch left (doesn't matter how many you previously
>>> created) - so you should not worry about this.
>>>
>>> By SIP definition, a transaction fails (and OpenSIPS
>>> gets into failure route) only when all branches failed.
>>>
>>> Regards,
>>>
>>> Bogdan-Andrei Iancu
>>> OpenSIPS Founder and Developer
>>> http://www.opensips-solutions.com
>>>
>>>
>>> On 07/03/2013 10:43 PM, Ronald Cepres wrote:
>>>> Hi all,
>>>>
>>>> Is there a way I can cancel a pending branch before
>>>> doing a fail-over to next gateway (due to timeout from
>>>> previous gateway)? This way I can make sure that the
>>>> call to the previous gateway will not go through
>>>> anymore after fail-over to the next gateway, thus
>>>> preventing us "double-charged" situations if the
>>>> previous gateway and the new gateway both answered the
>>>> call.
>>>>
>>>> Thanks in advance.
>>>>
>>>>
>>>> --
>>>>
>>>> Regards,
>>>>
>>>> Ronald
>>>>
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>
>>
>>
>> --
>>
>> Regards,
>>
>> Ronald Cepres
>>
>
>
>
> --
>
> Ronald Cepres
> Network Operations Center
> Net Voip Communications, Inc.
>
>
> This message contains confidential information and is intended only
> for the individual named. If you are not the named addressee you
> should not disseminate, distribute or copy this e-mail. Please notify
> the sender immediately by e-mail if you have received this e-mail by
> mistake and delete this e-mail from your system. E-mail transmission
> cannot be guaranteed to be secure or error-free as information could
> be intercepted, corrupted, lost, destroyed, arrive late or incomplete,
> or contain viruses. The sender therefore does not accept liability for
> any errors or omissions in the contents of this message, which arise
> as a result of e-mail transmission. If verification is required please
> request a hard-copy version. Net Voip Communications, Inc., 2721
> Forsyth Rd #256, Winter park, FL 32792. www.netvoipcommunications.com
> <http://www.netvoipcommunications.com/>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20130711/b8eb84c9/attachment.htm>
More information about the Users
mailing list