Hi
I have setup dispatcher failover on Kamailio 5.1 as below. If destination X.X.X.X is down, traffic should be routed to Y.Y.Y.Y. The failover is working but every time after 30 sec Timeout. Is there a way to setup health check properly so the failed destination can be ignored while it is down?
Your help is greatly appreciated, AL
# dispatcher.list 1 sip:X.X.X.X:5060 0 0 1 sip:Y.Y.Y.Y:5060 0 0
# ----- dispatcher params ----- modparam("dispatcher", "list_file", "/usr/local/etc/kamailio/dispatcher.list") modparam("dispatcher", "flags", 2) modparam("dispatcher", "ds_ping_interval", 10) modparam("dispatcher", "dst_avp", "$avp(AVP_DST)") modparam("dispatcher", "grp_avp", "$avp(AVP_GRP)") modparam("dispatcher", "cnt_avp", "$avp(AVP_CNT)") modparam("dispatcher", "sock_avp", "$avp(AVP_SOCK)") modparam("dispatcher", "ds_probing_mode", 1) modparam("dispatcher", "ds_inactive_threshold", 4) modparam("dispatcher", "ds_ping_latency_stats", 1) modparam("dispatcher", "ds_probing_threshold", 1)
# Dispatch requests route[DISPATCH] { if(!ds_select_dst("1", "4")) { send_reply("503", "No destination"); exit; } t_on_failure("DISPATCH_FAILOVER"); route(RELAY); exit; }
# Failure Route failure_route[DISPATCH_FAILOVER]{ if (t_is_canceled()) exit; if(!ds_next_dst()) { send_reply("503", "Out of gateways"); exit; } t_on_failure("DISPATCHER_FAILOVER"); t_relay(); }