WebSphere Application Server - Express, Version 6.1   
             オペレーティング・システム: AIX , HP-UX, Linux, Solaris, Windows, Windows Vista

             目次と検索結果のパーソナライズ化

例: SIP サーブレットの SendOnServlet クラス

SendOnServlet クラスは、単純な SIP サーブレットです。 各 INVITE で呼び出され、そこから要求を送信するという、 基本的な機能を実行します。

SendOnServlet クラス

この 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 response) によって拒否しています。

   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());
   }


SendOnServlet deployment descriptor:
<sip-app>
    <display-name>Send-on Servlet</display-name>
    <servlet>
        <servlet-name>SendOnServlet</servlet-name>
        <servlet-class>com.example.SendOnServlet</servlet-class>
    </servlet>

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




関連タスク
すべての SIP トピックの参照
SIP サーブレット
SIP サーブレット仕様
関連資料
SIP SipServletRequest クラスと SipServletResponse クラス
SIP SipSession クラスと SipApplicationSession クラス
例: SIP サーブレットの単純なプロキシー
例: SIP サーブレットの Proxy サーブレット・クラス
参照トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 6:25:35 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.express.doc/info/exp/ae/rsip_servletsample2.html