Re: [OpenSER-Users-ES] Uso de "branch_route" para añadir una cabecera sólo a un mensaje
Iñaki Baz Castillo
ibc at in.ilimit.es
Wed Sep 12 16:23:39 CEST 2007
El Tuesday 04 September 2007 18:28:49 Iñaki Baz Castillo escribió:
> Hola, por desgracia el tema de añadir cabeceras es muy limitado y no
> funciona como se espera (no es un bug, es que es así sin más).
>
> Mi problema es que tras un forwarding (crear otro branch en paralelo a otro
> número) quería añadir una cabecera pero sólo al branch del forwarding, para
> evitar que cuando vuelva a pasar por el script no se le examine a él de
> nuevo posibles forwarding. Entonces se me ocurre:
>
> route[11] {
>
> - Si tiene cabecera "Forwarding" no miramos recursivamente y salimos.
> return(-1);
>
> - Buscamos forwarding en la tabla.
> if ($rc == 1) {
> $var(ru_original)=$ru;
> $ru = $avp(s:forwarding_uri);
> }
> append_branch(); # Generamos un nuevo INVITE a la URI del forwarding.
>
> $ru=$var(ru_original); # Recuperamos la URI original y seguimos con ella.
>
> # Tratamiento de branches:
> t_on_branch("11");
>
> }
>
>
>
> branch_route[11] {
>
> # Añadir aquí cabecera "Forwarding" sólo al nuevo branch creado,
> # pero... ¿cómo las distingo?
> xlog("branch_route: URI = $ru \n");
> ¿?¿?¿?
> }
>
>
>
>
>
> Bueno, que estamos en las mismas: Y ahora ¿cómo puedo diferenciar en
> ese "branch_route[11]" qué branch es el original y el que he creado por el
> forwarding para añadir la cabecera sólo a éste último?
Bueno, maś o menos lo tengo:
# -----------------------------------------------------------------
# Forwarding
# -----------------------------------------------------------------
route[11] {
...
...
$var(ru_original)=$ru;
$ru = $avp(s:forwarding_ru);
append_branch(); # Generamos un nuevo INVITE a la URI del forwarding.
$ru=$var(ru_original); # Recuperamos la URI original y seguimos con ella.
t_on_branch("11");
...
}
# -----------------------------------------------------------------
# branch_route de Forwarding
# -----------------------------------------------------------------
branch_route[11] {
if ($ru == $avp(s:forwarding_ru)) {
añadir cabeceras
}
}
Y ya está XD
--
Iñaki Baz Castillo
ibc at in.ilimit.es
More information about the Users-es
mailing list