この章では、Instant Messaging によって使われる API について、次の各節で説明します。
Instant Messaging には、拡張モジュールや統合化モジュールの開発に役立つ Java API が各種用意されています。それらの API の詳細なマニュアルは、Javadoc によって生成された HTML ファイルとして、インストールされた Instant Messenger コンポーネントに付属しています。Javadoc ファイルは、im-svr-base/html/apidocs/ ディレクトリ内にインストールされています。API マニュアルを参照するには、ブラウザで codebase/apidocs を表示します。codebase は、Instant Messenger リソースのコードベースを表します。
Instant Messaging API は、次のとおりです。
Instant Messaging API は、同一ホスト上またはリモートホスト上に存在するアプリケーションが、Presence、会議室、通知、調査、ニュースチャネルなどといった Instant Messaging の各種サービスにアクセスする際に使用されます。
Instant Messaging サービス API を使うと、次のことが行えます。
Java ベースまたは Web ベースのクライアント (ポータルチャネルなど) を作成する
別のクラスのクライアントを利用可能にするブリッジ (ゲートウェイ) を作成する
Instant Messenger 機能や Presence 機能を既存のアプリケーションに組み込む
外部のニュースソースを Instant Messenger のニュースとして表示する
メッセンジャー Bean は、動的に読み込まれるモジュールであり、その目的は、Instant Messenger の機能を拡張することにあります。メッセンジャー Bean を使うと、既存の Instant Messenger ウィンドウ内にボタンやメニュー項目などのアクションリスナーを追加したり、チェックボックスやトグルボタンなどのアイテムリスナーを追加したりできます。アイテムリスナーは、エンドユーザー入力の受信時に起動されます。また、Bean 固有のアクションは、エンドユーザーの入力に基づきます。これらの Bean は、独自の設定パネルを追加したり、Bean 固有のプロパティーをサーバー上に保存したりする能力を備えています。これらの Bean には、Instant Messenger が受信する任意のイベント (新しいアラートメッセージなど) を通知できます。
メッセンジャー Bean を使用したアプリケーションでは、次のことが行えます。
エンドユーザー間で、音声やビデオに加え、アプリケーションや会議を共有できる
アーカイブ目的で、会議の記録 ( 送受信されたアラートの内容など) を抽出および処理できる
サービスプロバイダインタフェース API を使うと、Instant Messaging のサーバー機能を拡張できます。サービスプロバイダインタフェースは、次の独立した API から構成されています。
アーカイブプロバイダはソフトウェアモジュールの一種であり、通常、アーカイブシステムや監査システムとの統合化機能を提供します。特定のサーバー処理が実行されると、その処理用に設定されたアーカイブプロバイダが起動されます。
アーカイブプロバイダは、次のサーバー処理に対して起動されます。
アラート、調査、チャット、ニュース、会議などのインスタントメッセージの送信時。
認証イベント中 (ログイン時やログアウト時)。
Presence ステータスの変更時。
登録イベント中 (あるユーザーが会議室に入退室する時や、新しいチャネルに登録/登録解除する時など)。
アーカイブプロバイダ API を使用したアプリケーションとしては、次のものがあります。
Instant Messaging アーカイブ
Instant Messaging のデフォルトの Instant Messaging アーカイブは、アーカイブプロバイダ API に基づいています。Instant Messaging アーカイブの詳細については、第 18 章「Instant Messaging アーカイブの管理」を参照してください。
リソースの使用量を制御する目的でその使用統計を記録するアプリケーション
メッセージコンバータは、個々のメッセージまたはその一部がサーバーを通過する際に起動されます。メッセージコンバータは、対象のメッセージ部分をまったく変更しない場合もありますし、それらのメッセージ部分を変更または削除する場合もあります。テキスト部分は、Java の String オブジェクトとして処理されます。メッセージコンバータは、それ以外の添付ファイルをバイトストリームとして処理し、処理済みのバイトストリーム (オリジナルとは異なる可能性がある) を返します。ただし、削除する必要のある添付ファイルに対しては、何も返しません。
メッセージ変換 API を使用したアプリケーションでは、次のことが行えます。
ウィルスのチェックと除去
変換エンジンの統合化
メッセージ内容のフィルタリング
認証プロバイダ API を使えば、Access Manager のパスワードベースまたはトークンベースの認証サービスを使用しない環境下で、Instant Messaging を配備できます。この API はエンドユーザーが認証を要求するたびに起動されます。また、この API は LDAP 認証と組み合わせて使用できます。
Access Manager によるシングルサインオン (SSO) は、認証プロバイダ API を使って実現されています。また、この API を使えば、ほかの認証システムとの統合化を図ることも可能です。