Consideraciones de tiempo de ejecución para desarrolladores de aplicaciones SIP
Debe tener en cuenta determinados comportamientos de tiempo de ejecución cuando escriba aplicaciones SIP (Session Initiation Protocol).
Es posible que el contenedor no acepte los esquemas URI que no sean de SIP.
El contenedor SIP no rechazará un mensaje si no reconoce el esquema en el URI (Uniform Resource Indicator) de solicitud porque el contenedor no puede saber qué esquemas de URI están soportados por las aplicaciones. Los elementos SIP pueden dar soporte a un URI de solicitud con un esquema distinto a sip o sips, por ejemplo, el esquema pres: tiene un significado concreto para los servidores de presencia, pero el contenedor no los reconoce. Depende de la aplicación determinar si se acepta o se rechaza un esquema específico. Los elementos SIP pueden convertir los URI que no son SIP por medio de cualquier mecanismo disponible, lo que da como resultado los URI de SIP o los URI de SIPS o de cualquier otro esquema como, por ejemplo, el esquema de URI tel de RFC 2806 [9].
Direccionamiento de solicitudes en un entorno de varios contenedores
En un entorno de varios contenedores (un proxy SIP más contenedores SIP), cuando las aplicaciones envían una solicitud que inicialmente iba destinada a un envío externo pero que se ha recibido con posterioridad, debe utilizar el host y los puertos del elemento de equilibrio de carga más próximo a la parte frontal (que puede ser un distribuidor de IP para varios proxies SIP o el proxy SIP si solamente existe uno). Si la aplicación utiliza el nombre de host de un contenedor, en lugar del elemento más próximo a la parte frontal, es posible que se pierda la solicitud si se produce una anomalía.
Por ejemplo, una aplicación se envía a sí misma una solicitud INVITE pero la solicitud debe pasar por un sistema de contabilidad externo a través de una cabecera Route transferida. La aplicación debe establecer el URI de la solicitud INVITE en el host y el puerto del elemento más próximo a la parte frontal para asegurarse de que se ejecuta la sustitución por anomalía. La solicitud se direccionará al sistema de contabilidad mediante el valor de la cabecera Route transferida y se devolverá, a continuación, al elemento de equilibrio de carga frontal para su proceso.
Invocación de sucesos de escucha de sesiones
Los sucesos SipSessionListener y SipApplicationSessionListener sólo se invocan si una aplicación solicita el objeto de sesión correspondiente. Para hacerlo se utiliza en la aplicación el método que se muestra en la Tabla 1.Suceso | Método |
---|---|
SipSessionListener | getSession() |
SipApplicationSessionListener | getApplicationSession() |