El Sunday 17 February 2008 17:28:32 Iñaki Baz Castillo escribió:
route {
t_on_branch("ON_BRANCH_DEFAULT");
t_on_reply("ON_REPLY_DEFAULT");
...
lookup("location");
t_relay();
}
branch_route[ON_BRANCH_DEFAULT] {
xlog("*********************** branch_route[ON_BRANCH_DEFAULT] \n");
xlog("----------------------- branch con RURI = $ru \n");
xlog("----------------------- $rr \n");
if (isbflagset(BFLAG_NAT_CALLED))
xlog("----------------------- bflag(BFLAG_NAT_CALLED) activo \n");
}
onreply_route[ON_REPLY_DEFAULT] {
xlog("*********************** onreply_route[ON_REPLY_DEFAULT] \n");
xlog("----------------------- branch con RURI = $ru \n");
xlog("----------------------- $rr \n");
if (isbflagset(BFLAG_NAT_CALLED))
xlog("----------------------- bflag(BFLAG_NAT_CALLED) activo \n");
}
Como ves es exactamente de lo que estamos hablando.
Ahora llamo a ese usuario y estos son los xlogs que veo:
Ok, punto y set ... pero no partido ... ;-)
Sigue pendiente la parte de q ue no se pueden setear branch flags desde un
branch, porque setea el flag para todos los branches.
Me explico:
route[0]
{
t_on_branch(2);
t_on_reply(1);
lookup(location);
t_relay();
}
onbrach_route[2]
{
if($dd = IP1)
{
setbflag(PARA_IP1); # Esto no funciona
}
}
... y que no funcione el setbflag ahi es un crimen gordo, si en vez de llamar
a setbflag ahí, haces un route(n) y desde route(n) haces el setbflag tampoco
funciona, porque cambia el flag para todos los branches y no puedes
especificar el branch_idx de forma dinámica.
--
Saludos.
Raúl Alexis Betancor Santana
Dimensión Virtual S.L.