Hi all,
I am trying to setup an active-active pair of sip proxies. I have connected two kamailio boxes to the same PostgreSQL database and my usrloc db_mode is 3. I can see the registration data in the database but "ul show" outputs of two device is not same. I think writing registration data to the same db is not enough.
I have found a method to replicate the registraiton process. With t_replicate, I synchronize REGISTER requests to both boxes. But I had to disable shared database because of uniqe id validations.
route[REGISTRAR] {
if (is_method("REGISTER"))
{
if(isflagset(FLT_NATS))
{
setbflag(FLB_NATB);
}
if (!save("location"))
sl_reply_error();
t_replicate("sip:10.1.1.2:5060;transport=udp");
exit;
}
}
My media servers randomly sends calls to SIP proxies. If Media server send the call to the original registrar then the replicated, call initiates normally. But when UA registered in first proxy, and Media server sends the call to the send one, even if second one has UA in location table, call does not initiate.
Does anyone have an idea about this kind of an active active setup?
Thanks in advance. Best regards,
/Volkan