Hi Jonathan,
Unfortunately this is a design problem - the t_replicate() is actually a
t_reply() but without passing the received replies back to the caller.
So t_replicate() behaves on parallel forking exactly as t_reply().
Some additional work may be required to change this and have
t_replicate() properly replicating to all destination. Could you please
open a ticket on github about this ?
Thanks and Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com
On 03.08.2016 19:15, Jonathan Hunter wrote:
Hi Guys,
We have an old platform we are looking to redesign but in the meantime
we need to fix a problem we have.
Currently we have an opensips proxy/registrar with 2 x Asterisk boxes
behind it.
Now currently we use t_replicate and the dispatcher module
(ds_next_domain()) to send REGISTER requests in parallel to both
Asterisk Servers so they can update their sip peers.
This works great but we sometimes (an issue we are investigating) dont
always get a 200ok response back from one or both Asterisk servers for
the REGISTER message.
Therefore I am looking to resend the REGISTER whenever this may happen.
This is fine using the fr timers should both Asterisk Servers not
respond, however if only 1 Server doesnt respond, and the other does,
this problem is lost, due to the parallel forking being applied to the
t_replicate scenario.
I can capture 200 ok messages in onreply routes to confirm which
Asterisk servers have responded, however I cannot t_relay again from
this type of route.
Is there another way to do this? Whereby I can remain transaction
stateful, and resend a REGISTER message if only one of the Asterisk
Servers doesnt respond to a REGISTER message?
Thanks
Jon
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users