[OpenSER-Users] t_on_branch -- using drop() question?

Andreas Granig agranig at sipwise.com
Thu Jul 26 19:37:28 CEST 2007


Hi,

The config is designed to never relay a request to itself, but instead 
do recursive route processing. So if you do a CFC to a local user, the 
config will take care to do a lookup before a relay, which will change 
the request uri to the IP of the CF target.

Andreas

Zahid Mehmood wrote:
> I was looking at the openser config generated using the online sipwise 
> wizard.  They implement conditional call forwarding using:
> 
> if($avp(s:cfc) != NULL)
>         {
> 
>                 avp_pushto("$ru", "$avp(s:cfc)");
>                 setflag(29);
>                 append_branch();
> 
>                 t_on_branch("1");
>                 xlog("L_INFO", "CFC detected - M=$rm RURI=$ru F=$fu 
> T=$tu IP=$si ID=$ci\n");
>                 route(13);
>         }
> 
> 
> 
> branch_route[1]
> {
>         if(is_domain_local("$rd"))
>         {
> 
>                 xlog("L_INFO", "Dropping local branch - M=$rm RURI=$ru 
> F=$fu T=$tu IP=$si ID=$ci\n");
>                 drop();
>         }
> 
> }
> 
> 
> Suppose an invite gets to this point and ruri is changed to another 
> local user.  does this drop() in branch_route prevents that invite to be 
> relayed?  does it still go through route(13) ?
> 
> I'm still a newbie trying to better understand the working of openser 
> functions.  I'll greatly  appreciate if someone can briefly describe 
> when it makes sense to use "append_branch()"
> 
> Thanks in advance for your help.
> 




More information about the Users mailing list