WEB开发网
开发学院操作系统Linux/Unix WebSphere Application Server V6.1 中的会话发起... 阅读

WebSphere Application Server V6.1 中的会话发起协议——第 1 部分:SIP 简介

 2009-09-30 00:00:00 来源:WEB开发网   
核心提示: ServletContext:用于与容器通信和存储 Servlet 的属性的主要机制,另外,WebSphere Application Server V6.1 中的会话发起协议——第 1 部分:SIP 简介(10),当前访问 SipFactory API 也要通过此机制,SipAddress:来

ServletContext:用于与容器通信和存储 Servlet 的属性的主要机制。另外,当前访问 SipFactory API 也要通过此机制。

SipAddress:来自 SIP From and To Header 的地址。

Proxy:尝试查询或更改容器如何对 SIP 请求进行代理操作时非常有用的 API。

SIP Servlet 示例

SendOnServlet 类

此类是一个简单的 SIP Servlet,将对每个 INVITE 执行基本功能,并从该处转发请求。可以在此处方便地插入特定函数,以基于某个特定条件记录此 INVITE 请求或拒绝 INVITE。

package com.example; 
import java.io.IOException; 
import javax.servlet.sip.*; 
import java.servlet.ServletException; 
public class SendOnServlet extends SipServlet { 
 public void doInvite(SipServletRequest req) 
    throws ServletException, java.io.IOException { 
   //send on the request 
   req.getProxy().proxyTo(req.getRequestURI); 
 } 
} 

可以对 doInvite 方法进行修改,以进行特定操作,如根据特定标准直接拒绝 INVITE。在下面的示例 doInvite 方法中,example.com 外的域发出的所有请求都将被拒绝,并发出 Forbidden 响应。

public void doInvite(SipServletRequest req) 
 throws ServletException, java.io.IOException { 
 if (req.getFrom().getURI().isSipURI()){ 
  SipURI uri = (SipURI)req.getFrom().getURI(); 
  if (!uri.getHost().equals("example.com")) { 
 //send forbidden response for calls outside domain 
 req.createResponse(SipServletResponse.SC_FORBIDDEN, 
  "Calls outside example.com not accepted").send(); 
 return; 
  } 
 } 
 //proxy all other requests on to their original destination 
 req.getProxy().proxyTo(req.getRequestURI()); 
  } 

上一页  5 6 7 8 9 10 

Tags:WebSphere Application Server

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接