Classes SIP SipSession e SipApplicationSession
As partes mais complexas da especificação SIP Servlet 1.0 são possivelmente as classes SipSession e SipApplicationSession.
Classes SIP SipSession e SipApplicationSession
Ambas as classes têm alguma finalidade útil e podem agir como o local principal para armazenar dados em aplicativos que são designados para ambientes distribuídos ou altamente disponíveis.
A classe SipSession é a melhor representação de uma comunicação de ponto a ponto específica entre duas entidades e é a mais próxima ao objeto HttpSession. Como historicamente não existiu nenhum proxy ou bifurcação para o pedido HTTP em servlets HTTP, a necessidade de algo superior a uma sessão de ponto a ponto não existiu. No entanto, mesmo usuários HTTP podem ver a crescente necessidade desse tipo de função, porque os portlets começaram essencialmente bifurcando pedidos HTTP. Os usuários SIP esperam as atividades de proxy e bifurcação que requerem várias camadas de gerenciamento de sessão SIP. A classe SipSession é a camada de ponto a ponto mais inferior.
A classe SipApplicationSession representa a camada superior de gerenciamento de sessão SIP. Uma classe SipApplicationSession pode possuir um ou mais objetos SipSession. No entanto, cada classe SipSession pode estar relacionada apenas a um único objeto SipSession. A classe SipApplicationSession também suporta a conexão de qualquer número de outras sessões de protocolo. Atualmente, apenas as sessões HTTP são suportadas por quaisquer implementações. A classe SipApplicationSession tem um método de sessão getSessions, que utiliza o tipo de protocolo solicitado como um argumento.
Você poderá achá-lo útil para muitos aplicativos a fim de combinar HTTP e SIP. Por exemplo, você poderá utilizar essa abordagem para ligar sessões HTTP e SIP a fim de monitorar uma chamada de telefone ou iniciar uma chamada de telefone por meio de uma interface gráfica com o usuário HTTP complexa.