Gotcha. I have a similar scenario. I use SQLops to set a gw status to 4 where it’s ATTRS is “whatever” and reload ds_reload()


That might work for you as well.

On Wed, 28 Aug 2019 at 16:36, Duarte Rocha <duarterocha91@gmail.com> wrote:
> Why not just calling dispatcher.set_state directly to the kamailio? That would only set the state in memory. Unless you do a reload.

Set_state works with gw uri and group as argument. In this scenario both gws have the same uri and group and i only want to disable the one that has a socket that doesn't exist in the machine



A quarta, 28/08/2019, 11:32, Duarte Rocha <duarterocha91@gmail.com> escreveu:
Greetings, 

I have two Kamailio's working on a HA scenario. Both Kamailio's have DB replication and each machine has one HA IP. In order to set this up, i have every GW on the DB duplicated, one with Socket IPA and another with socket IPB.

I have both GWs in a active state configurated in the replicated DB. They also both have the same URI and the same group id 

Example : 
GW1 : Socket = IPA ; GroupID = 1 ; Uri = sip:1.1.1.1:5060
GW2 : Socket = IPB ; GroupID = 1 ; Uri = sip:1.1.1.1:5060

In order to avoid errors, i want to disable on runtime the GWs that have a socket that doesn't belong, at the moment, to that machine (GW with Socket IPB on machine with IPA). To do that i would use the dispatcher.set_state, however it works with group id and address, which in this case it is the same.

Is there other method to disable the GWs on runtime using other arguments like duid or socket ?

I thought about using probing for this, since it will disable automatically the GWs with non-existent socket, but not all my clients support probing, so it isn't feasible.

Thanks in advance
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
--
Regards,

David Villasmil
email: david.villasmil.work@gmail.com
phone: +34669448337