Exemplo: Classe de Servlet Proxy do Servlet SIP

Classe de Servlet Proxy

Depois do INVITE inicial, esse aplicativo será chamado em cada mensagem SIP subseqüente. Para cada Pedido e e Resposta, essa classe simplesmente imprimirá a ação e de quem ou para quem é.

package com.example;
import java.io.IOException;
import javax.servlet.sip.*;
import java.servlet.ServletException;
public class ProxyServlet extends SipServlet {
  public void doInvite(SipServletRequest req) 
       throws ServletException, java.io.IOException {
     //obter o Proxy
     Proxy p=req.getProxy();
     //ativar o modo supervisionado para que todos os eventos passem por nós
     //O padrão para isso é true, mas está configurado para enfatizar a função.
     p.setSupervised(true);     
     //configurar a rota do registro para vermos ACK, BYE e OK
     p.setRecordRoute(true);
     //proxy no pedido
     p.proxyTo(req.getRequestURI());
  }
public void doRequest(SipServletRequest req)
     throws ServletException, java.io.IOException {
   System.out.println(req.getMethod()+” Request from “+req.getFrom().getDisplayName());
   super.doRequest(req);
}
public void doResponse(SipServletResponse resp)
     throws ServletException, java.io.IOException {
   System.out.println(resp.getReasonPhrase()+” Response from “+resp.getTo().getDisplayName());
   super.doResponse(resp);
}
}

Proxy deployment descriptor
<sip-app>
    <display-name>ProxyServlet</display-name>
    <servlet>
        <servlet-name>ProxyServlet</servlet-name>
        <servlet-class>com.example.ProxyServlet</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>ProxyServlet</servlet-name>
        <pattern>
              <equal>
                <var>request.method</var>
                <value>INVITE</value>
              </equal>
        </pattern>
    </servlet-mapping>
</sip-app>

Ícone que indica o tipo de tópico Tópico de Referência



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rsip_servletsample3
Nome do arquivo: rsip_servletsample3.html