[OpenSER-Devel] discussion: issues with local_route
Iñaki Baz Castillo
ibc at in.ilimit.es
Thu Jun 12 10:14:24 CEST 2008
El Thursday 12 June 2008 09:59:56 Daniel-Constantin Mierla escribió:
> > In this example I hope "A" is executed for INVITE (as normal) while "B"
> > is not executed for the dummped MESSAGE since I expect the flag(3) was
> > just enabled for the INVITE. Is it?
> >
>
> In your example, neither A or B is not executed.
>
> Here is the problem. Script flag 3 is set for the environment of INVITE,
> local_route is executed, and being a top route, for a new SIP request
> (the MESSAGE sent by m_dump) the script flags are reset to 0. The
> condition for B is not met, when returning to 'route' scripts flags are
> 0, so condition for A is not met as well.
>
> In my example, if you set a flag in local_route, that flag will be set
> in 'route' after the call of m_dump.
Ok, I understand the problem. And what about Message flags?
route {
setflag(3);
if(method=="INVITE")
m_dump();
if(isflagset(3))
{
# Is it executed for the incoming INVITE? <-- A
}
}
local_route {
if(isflagset(3))
{
# Is it executed for the dummped MESSAGE? <-- B
}
}
In this case (using message flags instead of script flags) is the behaviour
the expected? This is:
- A is executed for the incoming INVITE.
- B is NOT executed for the dummped MESSAGE.
Thanks a lot for your explanation.
--
Iñaki Baz Castillo
ibc at in.ilimit.es
More information about the Devel
mailing list