[OpenSIPS-Users] Avpops failure route

Andrew Pogrebennyk andrew.pogrebennyk at portaone.com
Mon Nov 30 21:29:11 CET 2009


Hello,

I have a similar setup. It could be that you just need to call 
append_branch() somewhere in the failure_route[3], unless you do it in 
route[4]. At least it works for me.

However I have faced another problem that you can't use the same 
gateway/UA several times as a target for sequential forwarding, since 
INVITEs to different targets are part of the same dialog, besides 
OpenSIPS sends new INVITE a few ms prior to canceling previous branch 
(well, I'm about to submit it as a bug). I thought you could have some 
clue about it since I see you are also using one IP address. I have 
written about it here:
http://www.mail-archive.com/users@lists.opensips.org/msg07999.html
but Bogdan didn't reply yet.

Andrew

Indiver wrote:
> hi bodgan,
> 
> Thanks for your reply. I made some changes and call is now going to
> destination. But when no answer or busy it is not going to failure route.
> here are the changes i did.
> 
> 
>         #unconditional call forward
>        if(avp_db_load("$ruri/username","$avp(s:callfwd)")) 
>        {
>             avp_pushto("$ruri", "$avp(s:callfwd)");
>             avp_print(); 
>             route(4);
>             exit;
> 
>         }
> 
>        #fwd on busy
> 
> if (avp_db_load("$ruri/username", "$avp(s:fwdbusy)")) { 
>     if (!avp_check("$avp(s:fwdbusy)", "eq/$ruri/i")) { 
>       setflag(26);
>     };
>   };
> 
> fwd on noanswer
> 
>   if (avp_db_load("$ruri/username", "$avp(s:fwdnoanswer)")) { 
>     if (!avp_check("$avp(s:fwdnoanswer)", "eq/$ruri/i")) { 
>       setflag(27);
>     };
>   };
> t_on_failure("3");
> 
> #########Failure Route#########
> 
> failure_route[3]
> {
> 
>  if (isflagset(26) && t_check_status("486")) { 
>     if (avp_pushto("$ruri","$avp(s:fwdbusy)")) {
>       avp_delete("$avp(s:fwdbusy)");
>       resetflag(26);
>       route(4);
>       exit;
>     };
>   };
> 
>   if (isflagset(27) && t_check_status("408") && t_check_status("487")) { 
>     if (avp_pushto("$ruri", "$avp(s:fwdnoanswer)")) { 
>       avp_delete("$avp(s:fwdnoanswer)");
>       resetflag(27);
>       route(4); 
>       exit;
>     };
>   };
> 
> It does not going to failure route and just hanging up!




More information about the Users mailing list