この章では、Oracle User Messaging Service (UMS) について説明します。
この章には、以下のトピックがあります。
Oracle User Messaging Service は、ユーザおよびデプロイされたアプリケーションの間の双方向の通信を可能にします。主な機能は、以下のとおりです。
さまざまなメッセージング チャネルのサポート - 電子メール、IM (XMPP)、SMS (SMPP)、および Voice を通じてメッセージを送受信できます。ユーザの SOA/WebCenter Worklist にメッセージを配信することもできます。
双方向のメッセージング - アプリケーションからユーザにメッセージが送信されるだけでなく (「発信メッセージング」と呼ばれます)、ユーザがメッセージングによる対話を開始できます (着信メッセージング)。たとえば、ユーザは指定されたアドレスに電子メールまたはテキスト メッセージを送信できます。メッセージは、ユーザに応答したり、ビジネス ロジックに応じて別のプロセスを起動することのできる適切なアプリケーションにルーティングされます。
User Messaging Preferences - エンド ユーザは Web インタフェースを使用して、メッセージングの通知をいつどのように受け取るかを定義できます。アプリケーションでは柔軟性が直ちに向上します。ユーザの電子メール アドレスまたはインスタンス メッセージング クライアントのどちらに送信するかを判断する代わりに、アプリケーションではメッセージを単純にユーザに送信し、ユーザの設定に従って UMS でメッセージがルーティングされるようにできます。
堅牢なメッセージ配信 - UMS はメッセージング ゲートウェイから提供された配信ステータス情報を追跡し、失敗した配信に応答できるよう、それらの情報をアプリケーションで使用できるようにします。また、アプリケーションでは、最初のアドレスへの配信が失敗した場合に備えて、メッセージに対して 1 つまたは複数の「フェイルオーバ」アドレスを指定できます。UMS のフェイルオーバ機能を使用することで、アプリケーション開発者は厄介な再試行ロジックを実装する必要がなくなります。
Fusion Middleware 内の全面的な統合 - UMS は、1 つに統合された双方向のユーザ メッセージング サービスを提供する、他の Fusion Middleware コンポーネントと統合されています。
Oracle BPEL との統合 - Oracle JDeveloper には、メッセージング操作を可能にする組み込みの BPEL アクティビティが含まれています。開発者は目的のアクティビティを任意のワークフローにドラッグ アンド ドロップすることで、メッセージング機能を SOA 複合アプリケーションに追加できます。
Oracle Human Workflow との統合 - UMS によって、Human Workflow エンジンでは電子メールを通じてアクション可能なメッセージをユーザに送信したり、ユーザからの応答を受信することができます。
Oracle BAM との統合 - Oracle BAM では UMS を使用して、モニタ イベントへの応答時に電子メール通知を送信できます。
Oracle WebCenter との統合 - Oracle WebCenter Spaces のアプリケーションを作成する開発者は UMS API を使用できます。この API は、高性能なメッセージングのための標準 Web サービス インタフェースである Parlay X Web Services for Multimedia Messaging バージョン 2.1 の実装です。
Oracle User Messaging Service は、以下の 3 種類のコンポーネントで構成されます。これらのコンポーネントは標準 Java EE アプリケーションであるため、Oracle WebLogic Server が提供する標準ツールを使用して簡単にデプロイおよび管理できます。
UMS サーバ : UMS サーバは、アプリケーションとユーザの間でメッセージ フローのオーケストレーションを行います。サーバでは、クライアント アプリケーションから適切なドライバへの発信メッセージ、および適切なクライアント アプリケーションへの着信メッセージがルーティングされます。また、以前送信されたメッセージのリポジトリを永続的なストア内で管理し、以前送信されたメッセージを配信状態の情報と相関させます。
UMS ドライバ : UMS ドライバは、UMS でサポートされている各種のプロトコルにコンテンツを適合させて、UMS をメッセージング ゲートウェイに接続します。所定のインストールで使用可能なメッセージング チャネルに応じて、ドライバは相互に独立してデプロイまたはアンデプロイできます。
UMS クライアント アプリケーション : UMS クライアント アプリケーションは、メッセージ送受信のビジネス ロジックを実装します。UMS クライアント アプリケーションは、BPEL ワークフローの 1 ステップとしてメッセージを送信する SOA アプリケーション、または Web インタフェースからメッセージを送信できる WebCenter Spaces アプリケーションになる場合があります。
UMS 自身を構成するコンポーネントに加えて、メッセージング環境内の他の主なエンティティとしては、各メッセージング チャネルに必要な外部ゲートウェイがあります。これらのゲートウェイは UMS または Oracle WebLogic Server の一部ではありません。UMS ドライバでは広く普及しているメッセージング プロトコルがサポートされるため、UMS は企業の電子メール サーバや XMPP (Jabber) サーバなどの既存のインフラストラクチャに統合できます。また、UMS は、SMPP または VoiceXML をそれぞれサポートする SMS または Text-To-Speech サービス用の外部プロバイダに接続できます。
Oracle User Messaging Service のシステム アーキテクチャを図 16-1 に示します。
最大限の柔軟性を実現するため、UMS の各コンポーネントは、個別の Java EE アプリケーションです。このため、これらは相互に独立してデプロイおよび管理されます。たとえば、他のすべてのチャネルでのメッセージの配信に影響を与えずに、特定のドライバを停止し、再度コンフィグレーションできます。
UMS クライアント アプリケーションと UMS サーバの間のやり取りは、Web サービス クライアントの場合は SOAP/HTTP Web サービス リクエスト、または BPEL メッセージング アクティビティの場合は Remote EJB および JMS 呼び出しを通じて行われます。UMS サーバと UMS ドライバの間のやり取りは、JMS キューを通じて行われます。
Oracle UMS サーバおよびドライバは、それぞれの WebLogic Server インスタンス内で、SOA または BAM と共にインストールされます。WebCenter のインストールには、SOA インスタンスにデプロイされたサーバを起動して、UMS クライアント アプリケーションとして機能するために必要なライブラリが含まれています。