Hoola!
Llevo un rato leyendo sobre este tema y no he llegado a grandes conclusiones, a ver si podéis arrojar algo de luz :)
OpenSER al parecer no soporta la 'presencia' BLF, vamos, el Event: dialog
buscando por ahí solo encuentro algún hilo de Iñaki y kosas sobre BLA, pero no es lo que estoy buscando, ya que lo que quiero es monitorizar el estado de las extensiones y tal...
He probado a hacer algo como esto:
else if (method=="SUBSCRIBE") { xlog("L_INFO","$C(px) -- Gestionando SUBSCRIBE -- $C(xx)\n"); if ($hdr(Event) == "dialog") { rewritehostport("al_asterisk"); t_relay(); exit; } else { handle_subscribe(); t_release(); } }
(Asterisk 've' los usuarios de OpenSER, y he creado los hints y tal...)
pero no ha colado...
Alguna idea al respecto? Thnx!!
El Tuesday 10 June 2008 09:51:35 Saúl Ibarra escribió:
Hoola!
Llevo un rato leyendo sobre este tema y no he llegado a grandes conclusiones, a ver si podéis arrojar algo de luz :)
OpenSER al parecer no soporta la 'presencia' BLF, vamos, el Event: dialog
buscando por ahí solo encuentro algún hilo de Iñaki y kosas sobre BLA, pero no es lo que estoy buscando, ya que lo que quiero es monitorizar el estado de las extensiones y tal...
He probado a hacer algo como esto:
else if (method=="SUBSCRIBE") { xlog("L_INFO","$C(px) -- Gestionando SUBSCRIBE -- $C(xx)\n"); if ($hdr(Event) == "dialog") { rewritehostport("al_asterisk"); t_relay(); exit; } else { handle_subscribe(); t_release(); } }
(Asterisk 've' los usuarios de OpenSER, y he creado los hints y tal...)
pero no ha colado...
¿Pero acepta Asterisk el SUBSCRIBE? ¿envía un NOTIFY inmediato que llega correctamente a los tfnos?
Desde el momento en el que Asterisk *cree* que los usuarios son suyos, no se me ocurre ninguna razón para que esto no funcione, creo...
Veo estos 2 NOTIFY:
U +4.663921 10.245.145.27:5070 -> 10.245.145.27:5060 NOTIFY sip:3686@10.245.145.27 SIP/2.0 Via: SIP/2.0/UDP 10.245.145.27:5070;branch=z9hG4bK1b6e8e69;rport From: "asterisk" sip:3686@10.245.145.27;tag=as5411a9bd To: sip:3686@10.245.145.27 Contact: sip:3686@10.245.145.27:5070 Call-ID: 7c315f0d50fcba5a0b1fd1e6757ae532@10.245.145.27 CSeq: 102 NOTIFY User-Agent: Asterisk PBX Max-Forwards: 70 Event: message-summary Content-Type: application/simple-message-summary Content-Length: 93
Messages-Waiting: no Message-Account: sip:asterisk@10.245.145.27 Voice-Message: 0/0 (0/0)
# U +0.003962 10.245.145.27:5070 -> 10.245.145.27:5060 NOTIFY sip:8731@10.245.145.27 SIP/2.0 Via: SIP/2.0/UDP 10.245.145.27:5070;branch=z9hG4bK3161a57b;rport From: "asterisk" sip:8731@10.245.145.27;tag=as5afa4c39 To: sip:8731@10.245.145.27 Contact: sip:8731@10.245.145.27:5070 Call-ID: 6a866fa226c894c66dcecbba38ae1257@10.245.145.27 CSeq: 102 NOTIFY User-Agent: Asterisk PBX Max-Forwards: 70 Event: message-summary Content-Type: application/simple-message-summary Content-Length: 93
Messages-Waiting: no Message-Account: sip:asterisk@10.245.145.27 Voice-Message: 0/0 (0/0)
Pero nada de lucecitas... :-O
El Tuesday 10 June 2008 10:36:43 Saúl Ibarra escribió:
Veo estos 2 NOTIFY:
Esos NOTIFY son del MWI (notificación de mensajes en el buzón de voz):
Event: message-summary Content-Type: application/simple-message-summary Content-Length: 93
Messages-Waiting: no Message-Account: sip:asterisk@10.245.145.27 Voice-Message: 0/0 (0/0)
Ya, ese es el tema, que aunque Asterisk pone changed state noseke, no se generan los NOTIFY... me estoy dejando algo?
El Tuesday 10 June 2008 11:20:57 Saúl Ibarra escribió:
Ya, ese es el tema, que aunque Asterisk pone changed state noseke, no se generan los NOTIFY... me estoy dejando algo?
En los logs de Asterisk pone que acepta el SUBSCRIBE de "Event" y además responde un 200 OK a los usuarios cuando le envían ese SUBSCRIBE?
Y comprueba otra cosa: SUBSCRIBE inicia un diálogo así que cuando los tfnos refresquen dicho diálogo enviarán un SUBSCRIBE **in-dialog**. ¿Puedes comprobar que dicho refresco se envía correctamente, que llega a Asterisk y que Asterisk lo entiende y responde un 200 OK? (creo que en Twinkle se puede indicar el tiempo de refresco de los SUBSCRIBE de presencia, tal vez el Thomson o tfno que uses lo pueda haber para los SUBSCRIBE de BLF).
En los logs de Asterisk pone que acepta el SUBSCRIBE de "Event" y además responde un 200 OK a los usuarios cuando le envían ese SUBSCRIBE?
Eso parece, porque si hago un sip show subscriptions me pone watchers a 1...
Y comprueba otra cosa: SUBSCRIBE inicia un diálogo así que cuando los tfnos refresquen dicho diálogo enviarán un SUBSCRIBE **in-dialog**. ¿Puedes comprobar que dicho refresco se envía correctamente, que llega a Asterisk y que Asterisk lo entiende y responde un 200 OK? (creo que en Twinkle se puede indicar el tiempo de refresco de los SUBSCRIBE de presencia, tal vez el Thomson o tfno que uses lo pueda haber para los SUBSCRIBE de BLF).
Voy a ver si compruebo esto... En los Snom si que se puede seleccionar ese tiempo :)
El Tuesday 10 June 2008 12:50:43 Saúl Ibarra escribió:
En los logs de Asterisk pone que acepta el SUBSCRIBE de "Event" y además responde un 200 OK a los usuarios cuando le envían ese SUBSCRIBE?
Eso parece, porque si hago un sip show subscriptions me pone watchers a 1...
Sinceramente, no me fío de Asterisk en este punto. Sólo me creo que le llega un 200 OK si lo veo con mis propios ojos, independientemente de que muestre watchers a 1 XD
Sinceramente, no me fío de Asterisk en este punto. Sólo me creo que le llega un 200 OK si lo veo con mis propios ojos, independientemente de que muestre watchers a 1 XD
Lo he comprobado, reinicio el teléfono, y watchers pasa de 0 a 1 porque hay un SUBSCRIBE y un 200 OK, pero a partir de ahí nada! :-O
Thnx Iñaki, igual es que hoy ando un poco atontau.... :)
El Tuesday 10 June 2008 13:09:03 Saúl Ibarra escribió:
Sinceramente, no me fío de Asterisk en este punto. Sólo me creo que le llega un 200 OK si lo veo con mis propios ojos, independientemente de que muestre watchers a 1 XD
Lo he comprobado, reinicio el teléfono, y watchers pasa de 0 a 1 porque hay un SUBSCRIBE y un 200 OK, pero a partir de ahí nada! :-O
Thnx Iñaki, igual es que hoy ando un poco atontau.... :)
ops ops.... ¿Asterisk no ve esos usuarios como registrados, verdad? o sea, tema realtime y vista de tabla "subscribers" pero si haces un: CLI> sip show registry no salen los usuarios de OpenSer, ¿verdad?
Apuesto a que Asterisk necesita ver los usuarios como registrados y ahí te enfrentas a una buen follón XDD
ops ops.... ¿Asterisk no ve esos usuarios como registrados, verdad? o sea, tema realtime y vista de tabla "subscribers" pero si haces un: CLI> sip show registry no salen los usuarios de OpenSer, ¿verdad?
Efectivamente........ no! :)
Apuesto a que Asterisk necesita ver los usuarios como registrados y ahí te enfrentas a una buen follón XDD
Pero los NOTIFY del MWI los gestiona bien... grrrrrrrrr entonces, hay alguna manera de conseguir algo parecido en OpenSER? Porque no he encontrado nada para gestionar los Event: dialog ...
Thnx!!
-- Iñaki Baz Castillo ibc@in.ilimit.es
Users-es mailing list Users-es@lists.openser.org http://lists.openser.org/cgi-bin/mailman/listinfo/users-es
El Tuesday 10 June 2008 13:20:51 Saúl Ibarra escribió:
Pero los NOTIFY del MWI los gestiona bien...
Yo que tú abriría, con ese argumento, un report en Asterisk. A ver si el amigo Olle te puede responder. Comenta lo de que los users son realtime de la tabla OpenSer por lo que no están registrados en Asterisk.
grrrrrrrrr entonces, hay alguna manera de conseguir algo parecido en OpenSER? Porque no he encontrado nada para gestionar los Event: dialog ...
OpenSer no puede gestionar los Event: dialog puesto que él mismo no gestiona diálogos sino transacciones (bueno, está el pua_bla pero es para los Polycom que implementan BLA).
Retomo este hilo de hace nosenikuanto para comentar que ya he dado con la "solución":
El tema es que aunque Asterisk reconoce los cambios de estado de los dispositivos (core show hints) no genera un NOTIFY correspondiente al cambio de estado :-O esto puede ser debido a que los usuarios no están _realmente_ registrados, ya que tienen host=dynamic, pero defaultip=ip_del_openser. Entonces, en vista de esto se me ocurrió suscribirme al Asterisk, en lugar de la OpenSER, por ejemplo, en un Snom:
Tipo = BLF y sip:1234@10.245.145.27:5070
Que es el Asterisk, y FUNCIONAAAA!
Ahora bien, se que sería más elegante utilizar el trozo de código de arriba para rutar los SUBSCRIBE cuyo Event sea dialog, pero como Asterisk no me genera los NOTIFY (aunque sí que genera los del MWI :-O) no me ha quedado otra...
Thnx por la ayuda!!
sr-users-es@lists.kamailio.org