El día 6 de septiembre de 2008 16:14, rabs@dimension-virtual.com escribió:
Me refería a que si tienes puesto algún xlog antes o después de procesar los AVP para comprobar en los logs los valores que toman o eso o ejecutar Kamailio en modo depuración para ver como lo procesa.
dentro de los avp tengo puesto este xlog
if(avp_db_load("$ru/username","$avp(s:callfwd)")) { avp_pushto("$ru", "$avp(s:callfwd)"); xlog("forwarded to: $avp(s:callfwd)"); route(1); exit;
Resiva el funcionamiento de t_on_failure(), has de indicarle al kamailio que on_failure_route procesará los errores de este request.
pues estoy entendiéndote un poco mas la teoría que he estado revisando en la web de kamailio , quiero que me saquen de este enredo , según la teoría yo puedo utilizar los AVP dentro del invite o del failure route , ojo veo mas que los usan dentro del failure route pero para que se pueda lograr el comportamiento deseado :
1 - si una extensión repica y no contesta que salte al buzón de voz "NO DISPONIBLE" 2 - si una extensión esta ocupada repica y repica después salte al buzon como "ESTA OCUPADA O AL TELEFONO 3 - hacer un callforward de una extensión a otro
ahora el código que tengo arriba puesto esta incompleto según yo para hacer lo que deseo hacer , lo describo de esta manera carga los datos de la base de datos con la función avp_db_load toma el $ru una petición de SIP URI con el username plenamente cargado en la base de datos de kamailio un avp atributo en este caso el mio callfwd el valor avp_pushto dentro del mensaje sip mas el atributo mencionado , pero lo peor de esto es que solo formo el URI no el RURI que realmente debe hacer la comparasion y me podría ejecutar el callfwd ... no se exactamente para que es el append branch ni que función juega dentro del sip message?
creo que mas bien debería quedar así , aunque no me juega
failure_route[1] { if(!t_was_cancelled()) { if (t_check_status("(486)|(408)")) { # cargo mis valores en la table preferences## if (avp_db_load("$ruri/username", "$avp(s:callfwd)")) { avp_pushto("$ruri", "s:callfwd"); xlog("forwarded to: $avp(s:callfwd)"); revert_uri(); rewritehostport("192.168.10.1:5070"); append_branch(); route(1); exit; } }
para mientras me interesa mas hacer el call forward , esa lucecita la dejo para despues
Pues revisa la parte de activar logs, hay un tutorial que puedes encontrar en la web de kamailio sobre como depurar y solucionar problemas con el script.
lo he buscado pero no lo encuentro ...
por cierto si que kamailio te hace pestañar , sudar , .... buff
rickygm
saludoss