(Sorry... losed quotation symbol in the last post)
Bogdan,
thank you very much for help.
2008/4/16, Bogdan-Andrei Iancu <bogdan@voice-system.ro>:
> So, if one of your SPAs is sending 302, this will not hit failure route as you still have the second branch still ringing. Only if the
> second branch will fail too, the whole transaction will fail and the failure route will be called.
So can I intercept the 302 response in an onreply_route? I tryied to put the below configuration taken from sipwise inside the onreply_route but some of the used functions cannot be used in the onreply_route.
-----------------------------------------------------------------------------------------------------------------------
if(t_check_status("301|302"))
{
avp_delete("$avp(s:acc_caller_user)/g");
avp_delete("$avp(s:acc_caller_domain)/g");
avp_delete("$avp(s:acc_state)/g");
avp_copy("$avp(s:acc_callee_user)", "$avp(s:acc_caller_user)");
avp_copy("$avp(s:acc_callee_domain)", "$avp(s:acc_caller_domain)");
$avp(s:acc_state) = "cfc";
setflag(29);
if(!get_redirects("1:1"))
{
xlog("L_ERROR", "Failed to fetch contact '$ct' from 301/302 - M=$rm RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n");
acc_db_request("480", "acc");
t_reply("480", "Temporarily Unavailable");
exit;
}
# get last URI from destination-set and set it as R-URI
avp_delete("$avp(s:tmp)/g");
$avp(s:tmp) = $ds;
avp_subst("$avp(s:tmp)", "/.*(sip:.+@[^:;>]+).*$/\1/");
avp_pushto("$ru", "$avp(s:tmp)");
setflag(29);
append_branch();
t_on_branch("1");
xlog("L_INFO", "Redirect from UAC intercepted - M=$rm RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n");
route(13);
exit;
}
t_on_branch("1");
xlog("L_INFO", "CFC detected - M=$rm RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n");
route(13);
-----------------------------------------------------------------------------------------------------
> Regards,
> Bogdan
Best regards,
Antonio.