El Jueves, 30 de Agosto de 2007, Jesus Rodriguez escribió:
Hola,
Hola, casualmente he encontrado este texto en la web en construcción de B2BUA de Sippy Software: http://www.b2bua.org/wiki/B2BUADocumentation
Can the Sippy B2BUA determine if one of the peer in a session gone without a BYE message (eg. disconnected the network interface) and then send a BYE message to the other peer?
Yes, it's possible. There are two methods for determining that the one of the parties is gone: the first is by sending periodical re-INVITE to both parties (so-called SIP keep-alives), and another one is by monitoring state of the RTP session in the proxy. The first one is already supported by the B2BUA.
¿Y no es posible esto con OpenSer? sería una funcionalidad muy interesante para el módulo "dialog", y tal vez para otros posibles módulos que en un futuro podrían depender de "dialog".
¿O es una idea feliz fruto de haber dormido poco?
Es una idea muy feliz :)
Hay otra opción para monitorizar el estado de un diálogo y es enviar un OPTIONS in-dialog. Si el díalogo al que está destinado el OPTIONS existe, el destinatario del OPTIONS tiene que responder con un 200. Si el díalogo no existe, responde con un 404.
Vaya, así que he aquí una utilidad para los OPTIONS in-dialog. Qué buena :)
Una cuarta opción, usada por los gateways Cisco, es que si durante varios segundos no te llega RTCP, consideras que la llamada se ha caído y envías un BYE.
Sí, pero en el caso del B2BUA que comento no se puede porque no sirve para pasar el RTP (ni tampoco es lo que yo necesitaba).
Para la 1.3 se están haciendo varias cosas con el módulo dialog como poder terminar una transacción (BYE) desde el proxy y cosas así. De todas formas, eso es tender cada vez más a opciones de b2bua y no se si hay mucha disposición en los desarrolladores para seguir por ese camino.
Ok, entendido.
Gracias.