Hola, en el RFC 3261 pone claramente que siempre que sea posible es preferible
que el proxy SIP fuerce el desvío de un mensaje a otro servidor SIP
insertando en el mensaje la cabecera "Route" (siempre claro, que sepa de
antemano que el servidor destino es un "loose router").
En cambio, en todos los ejemplos que se ven , incluso en el curso del VON,
siempre se proponía la modificación del URI (que implica el comportamiento de
strict router en el servidor al que se envía el mensaje).
Es más, creo que nunca he visto un ejemplo de OpenSer en el que se inserte una
cabecera "Route" para desviar el mensaje. En vez de ello, o se reescribe la
URI ("$ru=XXXX", rewriteuri(XXX), seturi(XXX)) o se hace un
"forward(XXX)".
Por ejemplo, para desviar la llamada a un Asterisk se suele hacer:
$rd = IP_asterisk;
t_relay();
¿Cómo se haría eso mismo añadiendo una cabecera "route" en plan:?
add_route_hf("udp:IP_asterisk:5060");
t_relay;
¿Existe una función que haga eso? (yo al menos no la he encontrado).
Gracias.
PD: Igual es cosa de hacerlo en plan:
insert_hf("Route: udp:IP_asterisk:5060\r\n");
pero me parece un poco... tristón.
--
Iñaki Baz Castillo