[SR-Users] Checking for 200ok Response to a REGISTER request kamailio-Asterisk

Jonathan Hunter hunterj91 at hotmail.com
Wed Jul 27 14:01:46 CEST 2016


Hi Guys,
So currently on our network we have a kamailio server which users register against, we then replicate the register messages to 2 Asterisk boxes sat behind it so that all entities are aware of the registration state of the users.
REGISTER--->KAMAILIO---->ASTERISK A                    ---->ASTERISK B
With a REGISTER---200OK exchange between Kamailio and Asterisk.
We have an issue where at some points the Asterisk servers when under load dont respond with a 200 ok(something being investigated)  to the register messages sent to kamailio, so I am just working on some logic for the register message to be resent using the t_replicate and t_set_fr functions.
This works well should both Asterisk servers not respond, however, as I am using replicate and it is parallel forking, if say Asterisk A answers first and is available with a 200ok then that in turn cancels the register message branch being sent to Asterisk B(which I know is fine), however  there could be a scenario where Asterisk B doesnt respond, and we wont know about it to try and resend the Register message, as the branch is cancelled.
Hope that makes sense?
I am looking at checking that both the Asterisk servers have responded and sent a 200ok, which I can grab in an onreply route but Im just wondering if someone has done something similar or has any suggestions as it is tricky to achieve currently.
I have also thought about stateless working but I really need kamailio to keep retransmitting the register until it gets a response.
Many thanks
Jon
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20160727/b22ce934/attachment.html>


More information about the sr-users mailing list