Serdar, Have you tried to clean variables before calling new ds_select_domain(), that are using by dispatcher module failover? Like https://kamailio.org/docs/modules/5.3.x/modules/dispatcher.html#dispatcher.p.xavp_dst and so on? But as I got, you're saying, that calling ds_select_domain() with different setid's in a case of fail, not really fails, but using "old" available destinations from previous attempt? Regards, Igor
Igor, also thanks for your interest.
I remove xavp value using "xavp_rm("_dsdst_")", i supposed that my problem was solvedHello, delete the xavps based on the names you set via modparams xavp_dst and xavp_ctx. Cheers, Daniel
but in my other tests, i recognised that xavp_rm removed the first index of "xavp(_dsdst_)" not all previous destinations(indexes).
after researching, i found a post at https://lists.kamailio.org/pipermail/sr-users/2020-May/109192.html
and i removed all ellements of list as below,
if(defined $xavp(_dsdst_)) {
while($xavp(_dsdst_[0]) != $null) {
xlog("L_INFO", "--- Loaded Dispatchers --- Grp :
$xavp(_dsdst_[0]=>grp)\n");
xlog("L_INFO", "--- Loaded Dispatchers --- Uri :
$xavp(_dsdst_[0]=>uri)\n");
$xavp(_dsdst_[0]) = $null;
}
}
it worked but i am not sure it is a best solution. Is there another simple way to delete all indexes of xavp?
Best regards,
Serdar