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