El Sábado, 16 de Febrero de 2008, Raúl Alexis Betancor Santana escribió:
Me contesto yo mismo ..., parece haber un bug desde el
año 2006 y no se
puede usar t_on_reply "per branch", pues bendita putada ... menos mal que
los flags si se respetan.
Yo no sabía que eso era un bug, siempre he pensado que es lo lógico. Me
explico:
Usar t_on_reply, t_on_branch o t_on_failure implica que una vez creada la
transacción (t_relay) cada branch pasará por onbranch_route, las respuestas
pasarán, individualmente claro, por onreply_route, y si el resultado final
(la mejor de las respuestas) es un error ([3456]XX), entonces se puede
haceralgo al respecto en onfailure_route (como por ejemplo crear un nuevo
branch con "append_branch" y poner la URI al voicemail...).
Es decir, sólo tiene sentido poner t_on_reply antes de un t_relay, pero da
igual que se ponga antes o después de generar los branches. Ejemplo:
Esto:
t_on_reply("2");
lookup("locaiont");
t_relay;
es lo mismo que est:
lookup("locaiont");
t_on_reply("2");
t_relay;
Lo que tú pretendes es que, además, cada branch tenga un onreply_route
distinto, cosa que yo nunca había pensado que se podía hacer, ¿puedes
indicarme el bug que has visto al respecto?
--
Iñaki Baz Castillo