Classes SIP SipServletRequest e SipServletResponse

As classes SipServletRequest e SipServletResponse são similares às classes HttpServletRequest e HttpServletResponse.

Classes SipServletRequest e SipServletResponse

Cada classe fornece a capacidade de acessar os cabeçalhos na mensagem SIP e manipulá-los. Devido à natureza assíncrona dos pedidos e respostas, essa classe também é o local para criar novas respostas para os pedidos. Quando você estende o método doInvite, apenas a classe SipServletRequest é transmitida para o método. Para enviar uma resposta ao cliente, você deve chamar o método createResponse no objeto Request para criar uma resposta. Por Exemplo:

protected void doInvite(SipServletRequest req) throws
 javax.servlet.ServletException, java.io.IOException {
	
	//devolver uma resposta Tentando provisional
	SipServletResponse resp = req.createResponse(100);
resp.send();

Devido à sua natureza assíncrona, os servlets SIP podem parecer complicados. No entanto, algo tão simples como a amostra de código anterior envia uma resposta a um cliente.

A seguir há um exemplo mais complexo de um servlet SIP. Com o seguinte método incluído em um servlet SIP, o servlet bloqueia todas as chamadas que não vêm do domínio example.com.

protected void doInvite(SipServletRequest req) throws
 javax.servlet.ServletException, java.io.IOException {

//verificar se a URI é uma URI SIP
	     if (req.getFrom().getURI().isSipURI()){
                 SipURI uri = (SipURI)req.getFrom.getURI();
                 if (!uri.getHost().equals("example.com")) {
                    //enviar resposta forbidden para chamadas fora do domínio
                    req.createResponse(SipServletResponse.SC_FORBIDDEN).send();
                    return;
                 }
              }
              //utilizar proxy em todos os outros pedidos em seu destino original
              req.getProxy().proxyTo(req.getRequestURI);
        }

Í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_servclass1
Nome do arquivo: rsip_servclass1.html