OK. A little trial and error and I think I found the problem. I changed the failure_route to include the command lookup("location"). I'm not clear why this makes a difference but it does. The new failure route is:
# Iterate through extension list for subscribers with call hunting enabled failure_route[6] { if (avp_pushto("$ruri/username", "s:huntlist")) { lookup("location"); append_branch(); avp_delete("s:huntlist"); t_on_failure("6"); t_relay(); }; }
Thanks,Steve
Steve Blair wrote:
Greger:
This technique almost works. Two things are happening which I cannot fully explain. Perhaps you can help. First, does the avp_db_load load the values in a specific, predictable order? Second, I cannot seem to hunt to a third number. I believe this is because the call to the second number causes SER to exit failure_route[6] effectively stopping the hunt. Do you or anyone else on this list have any thoughts on why I can only hunt trough the second number?
Thanks,Steve
Steve Blair wrote:
Greger:
So something like the following:
# hunting (serial forking) if (avp_db_load("$ruri/username", "s:allow_hunt")) { if (avp_check("s:allow_hunt", "eq/y/i")) { avp_delete("s:allow_hunt"); avp_db_load("$ruri/username", "s:huntlist/sam"); t_on_failure("6"); t_relay(); break; }; };
# Iterate through extension list for subscribers with call hunting enabled failure_route[6] { if (avp_pushto("$ruri/username", "s:huntlist")) { append_branch(); avp_delete("s:huntlist"); t_on_failure("6"); t_relay(); }; }