第283章 SIP コンポーネント
Camel バージョン 2.5 で利用可能
Camel の sip コンポーネントは Jain SIP 実装(JCP ライセンスで利用可能)をベースにした通信コンポーネントです。
SIP(Session Initiation Protocol)は IETF 定義のシグナルプロトコルで、インターネットプロトコル(IP)の音声やビデオ呼び出しなどのマルチメディア通信セッションを制御するために広く使用されます。SIP プロトコルは、基礎となるトランスポート層から独立するように設計されたアプリケーションレイヤープロトコルです。Transmission Control Protocol(TCP)、User Datagram Protocol(UDP)、または SCTP(Stream Control Transmission Protocol)で実行できます。
Jain SIP 実装は TCP および UDP のみをサポートします。
Camel SIP コンポーネントは、イベントの RFC3903 - Session Initiation Protocol(SIP)Extension で説明されているように、SIPPublish および Subscribe 機能 のみ をサポートします。
この Camel コンポーネントは、プロデューサーとコンシューマーエンドポイントの両方をサポートします。
Camel SIP Producers(Event Publishers)および SIP コンシューマー(Event Subscribers)は、SIP Presence Agent(ステートフルブローカーエンティティー)と呼ばれる中間エンティティーを使用してイベントと状態情報を相互に通信します。
SIP ベースの通信では、リスナーのある SIP Stack は SIP プロデューサーおよびコンシューマーの両方でインスタンス化される 必要 があります(localhost を使用している場合は別のポートを使用)。これは、通信中に SIP スタック間のハンドシェイクと確認応答をサポートするために必要です。
Maven ユーザーは、このコンポーネントの pom.xml
に以下の依存関係を追加する必要があります。
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-sip</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency>
283.1. URI 形式
sip エンドポイントの URI スキームは以下のとおりです。
sip://johndoe@localhost:99999[?options] sips://johndoe@localhost:99999/[?options]
このコンポーネントは、TCP と UDP の両方のプロデューサーおよびコンシューマーエンドポイントをサポートします。
URI にクエリーオプションを追加するには、?option=value&option=value&…