Rtcomm Gateway の構成

Rtcomm Gateway は、音声ストリームおよびビデオ・ストリームの交換のために、Rtcomm WebRTC エンドポイントとの Session Initiation Protocol (SIP) 接続の機能を追加します。

このタスクについて

Rtcomm Gateway (GW) は、Rtcomm ネットワークと、さまざまなベンダーのネットワークとの間で統合を必要とする場合に便利です。他方のネットワークとしては、 異なるシグナリング方式を使用する WebRTC エンドポイントのネットワークや、Voice over IP (VOIP) デバイスからなる別のネットワークが考えられますが、 公衆交換電話網 (PSTN) でも可能です。そういった統合が可能なのは、 他方のネットワークが、広く採用されている SIP プロトコルをサポートするエッジ GW エレメントを備えている場合に限ります。

Rtcomm Gateway は、 Interactive Connectivity Establishment (ICE) for SIP ( RFC 5245 に基づく) および Trickle ICE for SIP (IETF ドラフトに基づく) の両方をサポートします。このドラフトには進行中の作業であることを意味する "work in progress" というマークがまだ付いているため、この実装はこのドラフトの進行に従って将来変更される可能性があります。

手順

  1. Rtcomm Gateway 機能を有効にするため、server.xml ファイルで rtcommGateway-1.0 フィーチャーを追加します。
    <featureManager>
    	  <feature>rtcommGateway-1.0</feature>
    </featureManager>
    Rtcomm Gateway は rtcomm セクション内に構成されます。この構成では以下を定義できます。
    1. 着信 Rtcomm シグナリング・メッセージから変換された SIP メッセージをどこに送信するのかについて GW に指示します。次の 3 つの選択肢があります。
      • 何も構成しない (デフォルト): GW は、Rtcomm WebRTC クライアント上のターゲットとして提供された SIP アドレスに基づいて宛先の解決を試みます。
      • sipContainer=true: GW は、メッセージを内部 Liberty SIP サーブレット・コンテナー・ポートに送信します。このメッセージは、 標準アプリケーション・ルーター・ルールに従って、Liberty サーバー上にインストールされた JSR 289 アプリケーションに転送されます。詳細については、『Liberty 上の Session Initiation Protocol (SIP) アプリケーション』を参照してください。
      • ExternalPR=host:port: 変換後の SIP メッセージを SIP プロキシーまたはレジストラーの外部宛先に転送するよう GW に指示します。
    2. 着信 SIP メッセージ用の SIP エンドポイントを定義します。SIP エンドポイントに着信するメッセージは Rtcomm シグナリングに変換され、 GW によって、SIP 初期メッセージ requestURI ヘッダーから解決された WebRTC エンドポイントに送信されます。
  2. Rtcomm Gateway の実装についての以下の追加の考慮事項を検討します。
    1. Rtcomm WebRTC から SIP へのメッセージ送信。
      • REGISTER: DOCUMENT メッセージを使用している WebRTC クライアントから Rtcomm 登録メッセージを送信する場合、クライアント・トピックとして SIP AOR (address of record) を使用することが可能です。 そういった SIP URI が登録されている場合、GW はそれを SIP REGISTER 要求に変換し、構成によって定義されたルールに従ってそれを転送するよう試みます。 Contact ヘッダーは、Liberty サーバーに構成されている Rtcomm Gateway SIP エンドポイント・アドレスと、AOR に設定されているユーザー名から構築されます。
      • Rtcomm START_SESSION メッセージも SIP アドレスに送信されることが可能です。この場合、START_SESSION toEndpointID フィールドが、'sip''sips'、または 'tel' のいずれかのスキーム接頭部で始まる URI によって設定され、 その後、メッセージが SIP INVITE に変換され、構成されたルールに従って送信されます。ダイアログ中のすべての後続メッセージが、 定義されたシグナリング・シナリオおよび関連する Request For Comments (RFC) に従って SIP に変換されます。このルールは、 Interactive Connectivity Establishment (ICE) と Trickle ICE の両方のシグナリング・シナリオに適用されます。
    2. SIP から Rtcomm WebRTC へのメッセージ送信。
      現在、GW は INVITE ダイアログのみをサポートしています。構成された GW SIP エンドポイントの 1 つに着信する SIP INVITE は Rtcomm START_SESSION メッセージに変換され、 解決された WebRTC エンドポイントに送信されます。WebRTC エンドポイントは以下のルールに従って解決されます。
      • INVITE requestURI SIP アドレスを探します。 エンドポイントが前の Rtcomm DOCUMENT メッセージによってクライアント・トピックとして登録済みの場合、 これが START_SESSION メッセージの送信先です。例えば、Rtcomm エンドポイントが DOCUMENT トピックとして "sip:bob@x.y.z.w" と登録済みの場合、 "sip:bob@x.y.z.w requestURI" を伴う INVITE はどれも START_SESSION に変換され、その MQTT トピックに送信されます。
      • 前のステップで宛先が解決されなかった場合、SIP requestURI 内でユーザー部分のみを探します。エンドポイントが登録済みの場合、 START_SESSION はそのトピックに送信されます。例えば、Rtcomm エンドポイントが "bob" と登録済みの場合、 requestURI 内のどの <domain>bob@domain です。
        注: サポートされていない SIP 要求は 405 エラー応答で戻ります。
    3. トランスコーディングおよび拡張メディア・サーバー機能。
      • Rtcomm Gateway はメディア・プレーンの処理をサポートしていないため、 SIP VOIP と WebRTC エンドポイントのコーデック間のトランスコーディングなどのアクションは実行しません。つまり、GW では、その基本的な使用法として、 異なる WebRTC エンドポイント間の統合、あるいは、類似したコーデックおよびストリーミング・プロトコル (例えば WebRTC 標準) を使用するエンドポイント間の統合のみが可能であるということです。
      • Rtcomm Gateway 機能をフル活用するために、JSR 309 標準に基づくメディア・サーバー・コネクター用 API を提供するフィーチャーで Liberty サーバーを拡張することが可能です。 このフィーチャーにより、他の多くの拡張フィーチャー (マルチパーティー A/V 会議用の、記録、アナウンスメント再生、ストリーム・ミキシングなど) に加えて、 トランスコーディングおよびストリーミング・プロトコル変換用にメディア・サーバーを使用するアプリケーションを Liberty サーバー上に作成およびインストールできます。詳細については、JSR 309 仕様を参照してください。
      • メディア用のメディエーターおよび変換機構としてメディア・サーバーを使用して SIP ソフトフォンおよび Rtcomm WebRTC エンドポイントを接続するために JSR 289 および 309 を使用するサンプル・アプリケーションを WASdev で見つけてください。
      • そのアプリケーションは SIP Servlets (JSR 289) を JSR 309 と共に使用し、SIP ネットワークと Rtcomm WebRTC ネットワークの間を仲介します。このアプリケーションに必要なのは、 server.xml ファイルでの内部ルーティングの構成のみです。 以下に例を示します。
        <rtcomm messageServerHost="<brokerhostname>" messageServerPort="<brokerhostport>"
                     <gateway sipContainer="true"></gateway>
        </rtcomm>
        注: 着信 SIP メッセージが送信される先の SIP ポートは、 GW エンドポイントではなく SIP サーブレット・コンテナー・エンドポイントのポートであるようにしてください。『Liberty での Session Initiation Protocol (SIP) の管理』を参照してください。

この例では、着信 WebRTC メッセージは外部 SIP エンドポイントに送信されます。このエンドポイントは、プロキシーまたはレジストラーである可能性があり、 例えば 1.2.23.2:5063 です。
<rtcomm messageServerHost="<brokerhostname>" messageServerPort="<brokerhostport>"
   <gateway sipContainer="false" externalPR="1.2.23.2:5063" allowFromSipEndpointRef="webrtc2, webrtc"></gateway>
</rtcomm>
着信 SIP メッセージは "webrtc" および "webrtc2" SIP エンドポイントにあることができます。次の例では、 "webrtc" はデフォルトのポート (5060 および localhost) を使用します。
<sipEndpoint id="webrtc"></sipEndpoint>
<sipEndpoint id="webrtc2" sipTCPPort="5067" sipUDPPort="5067" sipTLSPort="5068" host="*"></sipEndpoint>

トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_config_webrtc_gateway
ファイル名: twlp_config_webrtc_gateway.html