(57)【特許請求の範囲】
【請求項１】
通信サービスを提供するアプリケーションが実装されたアプリケーションサーバとサービス提供サーバと通信装置とを備える通信システムであって、
前記通信装置は、
アプリケーションサーバと、そのアプリケーションサーバが対応可能なプロトコルとの対応関係を示す情報に基づいて、前記アプリケーションサーバと前記サービス提供サーバとの間でプロトコルを変換するプロトコル変換部と、
前記サービス提供サーバが管理する通信端末間のセッション状態に関する情報を示すセッション状態情報を前記サービス提供サーバから取得する取得部と、
前記セッション状態情報を前記アプリケーションサーバに通知する通知部とを備え、
前記サービス提供サーバは、前記通信端末と自装置との間の状態に関する前記セッション状態情報を前記通信装置に送信する送信部を備え、
前記アプリケーションサーバは、前記通信装置から通知される前記セッション状態情報の内容に基づいて、前記サービス提供サーバに対し、前記通信端末へのサービスの提供に関する制御信号を送信するアプリケーション処理部を備え、
前記アプリケーションサーバは、通信端末へ電話をかける旨の指示を前記通信装置に送信し、
前記通信装置の前記プロトコル変換部は、前記通信端末へ電話をかける旨の指示をプロトコル変換し、
前記サービス提供サーバは、前記通信装置から前記通信端末へ電話をかける旨の指示を受けると、この指示に応じて前記通信端末に電話発信し、前記通信端末から電話受信の通知を受けると前記通信端末との間で通話を開始し、通話が開始されたことを示すセッション状態情報を前記通信装置に送信し、
前記通信装置の前記取得部は、通話が開始されたことを示すセッション状態情報を前記サービス提供サーバから取得し、
前記通信装置の通知部は、通話が開始されたことを示すセッション状態情報を前記アプリケーションサーバに通知し、
前記アプリケーションサーバの前記アプリケーション処理部は、通話が開始されたことを示すセッション状態情報の通知を受けると、ＦＡＸ送信を実行する指示を前記通信装置に送信し、
前記通信装置は、ＦＡＸ送信を実行する指示を受信すると、ＦＡＸ送信を実行する指示を前記サービス提供サーバに送信し、
前記サービス提供サーバは、前記ＦＡＸ送信を実行する指示を受信すると、予めファイル保存されたＦＡＸデータに基づいて前記通信端末に対しＦＡＸ送信を実行する、通信システム。
【請求項２】
前記通信装置は、
前記取得部が取得した前記セッション状態情報を記憶する記憶部を更に備え、
前記通知部は、同一のセッションＩＤについて、前記取得部が新たに取得したセッション状態情報が前記記憶部に記憶されたセッション状態情報と異なると判定したときに、前記新たに取得したセッション状態情報を前記アプリケーションサーバに通知する請求項１に記載の通信システム。
【請求項３】
前記通信装置は、
前記取得部が取得した前記セッション状態情報を記憶する記憶部を更に備え、
前記通知部は、所定の時間が経過するごとに、前記記憶部が記憶する前記セッション状態情報を前記アプリケーションサーバに通知する請求項１に記載の通信システム。
【請求項４】
通信サービスを提供するアプリケーションが実装されたアプリケーションサーバとサービス提供サーバと通信装置とを備える通信システムが行う通信方法であって、
前記通信装置が、アプリケーションサーバと、そのアプリケーションサーバが対応可能なプロトコルとの対応関係を示す情報に基づいて、前記アプリケーションサーバと前記サービス提供サーバとの間でプロトコルを変換するプロトコル変換ステップと、
前記通信装置が、前記サービス提供サーバが管理する通信端末間のセッション状態に関する情報を示すセッション状態情報を前記サービス提供サーバから取得する取得ステップと、
前記通信装置が、前記セッション状態情報を前記アプリケーションサーバに通知する通知ステップと、
前記サービス提供サーバが、前記通信端末と自装置との間の状態に関する前記セッション状態情報を前記通信装置に送信する送信ステップと、
前記アプリケーションサーバが、前記通信装置から通知される前記セッション状態情報の内容に基づいて、前記サービス提供サーバに対し、前記通信端末へのサービスの提供に関する制御信号を送信するアプリケーション処理ステップと、
を有し、
前記アプリケーションサーバが、通信端末へ電話をかける旨の指示を前記通信装置に送信するステップと、
前記通信装置が、前記通信端末へ電話をかける旨の指示をプロトコル変換するステップと、
前記サービス提供サーバが、前記通信装置から前記通信端末へ電話をかける旨の指示を受けると、この指示に応じて前記通信端末に電話発信し、前記通信端末から電話受信の通知を受けると前記通信端末との間で通話を開始し、通話が開始されたことを示すセッション状態情報を前記通信装置に送信するステップと、
前記通信装置が、通話が開始されたことを示すセッション状態情報を受信すると、通話が開始されたことを示すセッション状態情報を前記アプリケーションサーバに送信するステップと、
前記アプリケーションサーバが、通話が開始されたことを示すセッション状態情報を受信すると、ＦＡＸ送信を実行する指示を前記通信装置に送信するステップと、
前記通信装置が、ＦＡＸ送信を実行する指示を受信すると、ＦＡＸ送信を実行する指示を前記サービス提供サーバに送信するステップと、
前記サービス提供サーバが、ＦＡＸ送信を実行する指示を受信すると、予めファイル保存されたＦＡＸデータに基づいて前記通信端末に対しＦＡＸ送信を実行する通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションサーバとサービス提供サーバサーバとの間に通信装置が接続される通信システム及び通信方法に関する。
【背景技術】
【０００２】
従来、Ｗｅｂサービスを効率よく実現するための機構として、サービス指向アーキテクチャ（ＳＯＡ：Service-Oriented Architecture）が利用されている。システム設計者は、ＳＯＡを利用すれば、標準的なインタフェースを有する再利用可能なソフトウェア部品を組み合わせることによってシステムを設計することができる。
【０００３】
サービスバス装置は、ＳＯＡで公開されたソフトウェア部品を効率良く繋ぐための装置である（例えば、特許文献１参照）。サービスバス装置は、サービス提供サーバが持つＡＰＩ（Application Programming Interface）を、アプリケーションサーバに対して隠蔽し、プロトコル、データ形式、パラメータ名、及び一連の機能の大きさの程度である機能粒度をより利用しやすい形でアプリケーションサーバに提供する。サービスバス装置を利用することにより、アプリケーションサーバがサービス提供サーバの機能を容易に扱うことができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−９２１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のサービスバス装置は、サービス提供サーバが持つＡＰＩを隠蔽するため、サービス提供サーバが提供し得る情報を全てアプリケーションサーバに提供していない場合があった。例えば、従来のサービスバス装置を利用する際、アプリケーションサーバは、サービス提供サーバが管理する通信端末のセッションの状態（例えば、電話の通話状態）を知る方法がなかった。すなわち、従来のサービスバス装置は、ステートレスであった。
【０００６】
従来のサービスバス装置がステートレスである結果、通信端末のセッションの状態は、アプリケーションサーバに通知されなかった。そのため、アプリケーションの開発者は、アプリケーションサーバがセッションの状態を示す情報を得ることを前提とした機能をアプリケーションに組み込むことができなかった。アプリケーションの機能をより多彩とするには、アプリケーションサーバが通信端末のセッションの状態を示す情報を得るようにすることが望ましい。
【０００７】
本発明は上述のような課題に鑑みてなされたものであり、アプリケーションサーバが通信端末のセッションの状態を示す情報を得ることができる通信システム及び通信方法を提供することを目的としている。
【課題を解決するための手段】
【０００８】
本発明の一態様は、通信サービスを提供するアプリケーションが実装されたアプリケーションサーバとサービス提供サーバとの間でプロトコルを変換するプロトコル変換部と、前記サービス提供サーバが管理する通信端末間のセッション状態に関する情報を示すセッション状態情報を前記サービス提供サーバから取得する取得部と、前記セッション状態情報を前記アプリケーションサーバに通知する通知部とを備える通信装置である。
【０００９】
本発明の一態様においては、前記取得部が取得した前記セッション状態情報を記憶する記憶部を更に備え、前記通知部は、同一のセッションＩＤについて、前記取得部が新たに取得したセッション状態情報が前記記憶部に記憶されたセッション状態情報と異なると判定したときに、前記新たに取得したセッション状態情報を前記アプリケーションサーバに通知する。
【００１０】
本発明の一態様においては、前記取得部が取得した前記セッション状態情報を記憶する記憶部を更に備え、前記通知部は、所定の時間が経過するごとに、前記記憶部が記憶する前記セッション状態情報を前記アプリケーションサーバに通知する。
【００１１】
本発明の一態様は、通信サービスを提供するアプリケーションが実装されたアプリケーションサーバとサービス提供サーバとの間でプロトコルを変換する段階と、前記サービス提供サーバが管理する通信端末間のセッション状態に関する情報を示すセッション状態情報を前記サービス提供サーバから取得する段階と、前記セッション状態情報を前記アプリケーションサーバに通知する段階とを有する通信方法である。
【００１２】
本発明の一態様は、コンピュータを、上記の通信装置の各部として機能させるためのプログラムである。
【発明の効果】
【００１３】
本発明によれば、アプリケーションサーバが通信端末のセッションの状態を示す情報を得ることができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一態様を示すネットワークシステムの構成を示すブロック図である。
【図２】サービスバス装置の動作の流れの具体例を示すフローチャートである。
【図３】セッション状態情報記憶部が記憶したセッション状態情報の具体例を示すテーブルである。
【図４】プロトコル変換部の構成例を示すブロック図である。
【図５】ネットワークシステムにおいてセッションを確立するときのシーケンスイメージを示すシーケンス図である。
【図６】ネットワークシステムにおいてセッションを終了するときのシーケンスイメージを示すシーケンス図である。
【図７】ネットワークシステムにおいてセッションに参加する通信端末を移動するときのシーケンスイメージを示すシーケンス図である。
【図８】ネットワークシステムにおいて、通信端末が受話に応じたタイミングを見計らって、通信端末宛にＦＡＸを送信するときのシーケンスイメージを示すシーケンス図である。
【発明を実施するための形態】
【００１５】
図１は、本発明の一態様を示すネットワークシステム１００の構成を示すブロック図である。ネットワークシステム１００は、アプリケーションサーバ１０と、情報ネットワーク２０と、サービスバス装置３０（通信装置）と、サービス提供サーバ４０と、通信事業者ネットワーク５０と、通信端末６０ａ〜６０ｄとを備えている。
【００１６】
アプリケーションサーバ１０は、通信サービスを提供するアプリケーションが実装されている。アプリケーションサーバ１０は、アプリケーション処理部１１がアプリケーションプログラムを実行することにより、各種の通信サービスを提供する。アプリケーションサーバ１０は、サービスバス装置３０を通してサービス提供サーバ４０のＡＰＩを利用することにより、電話に関する機能（例えば、二者間通話、転送、多人数通話など）を利用したサービスを提供する。
情報ネットワーク２０は、アプリケーションサーバ１０とサービスバス装置３０とを接続するネットワークである。情報ネットワーク２０としては、例えばＩＰ（Internet Protocol）ネットワークが用いられる。
サービスバス装置３０は、ＡＰＩ変換機能を持つ。ＡＰＩ変換機能とは、プロトコル、データ形式、ＡＰＩのパラメータ名、ＡＰＩ名、機能粒度を変換する機能である。機能粒度の変換とは、複数のＡＰＩを組み合わせて１つのＡＰＩとすること、ＡＰＩのパラメータの一部をサービスバス装置３０にて補完することによりＡＰＩが提供するパラメータ数を減少させることをいう。
サービス提供サーバ４０は、電話に関する機能やその他機能（例えば、ストレージ管理機能)をＡＰＩとして持つサーバである。サービス提供サーバ４０は、例えばＰａｒｌａｙ−Ｘに基づいて、電話に関する機能やその他機能を実現する。サービス提供サーバ４０は、アプリケーションサーバ１０が提供するサービスを通信事業者ネットワーク５０やその接続機器に導入する役割を果たす。サービス提供サーバ４０は、例えばＳＤＰ(Service Delivery Platform)サーバとして実装されてもよい。
通信事業者ネットワーク５０は、通信事業者が所有、保有、又は管理するネットワークである。
通信端末６０ａ〜６０ｄは、電話、テレビ電話、及びファクシミリなどの通信端末である。
【００１７】
サービスバス装置３０は、制御部３１、プロトコル変換部３２、セッション状態情報取得部３３（取得部）、セッション状態情報記憶部３４（記憶部）、及びセッション状態情報通知部３５（通知部）を備えている。
制御部３１は、サービスバス装置３０の動作全体を制御する。
プロトコル変換部３２は、アプリケーションサーバ１０とサービス提供サーバ４０との間で互いにプロトコルを変換する。プロトコル変換部３２は、サービスバス装置３０がアプリケーションサーバ１０との間でデータを送受信する処理と、サービスバス装置３０がサービス提供サーバ４０との間でデータを送受信する処理との間で、プロトコルを任意に変換する。
プロトコル変換部３２の働きにより、アプリケーションサーバ１０がプロトコル(例えばSOAPやXMPP)、データ形式(例えばXMLやJSON)によらず、アプリケーションサーバ１０とサービスバス装置３０との間、及びサービスバス装置３０とサービス提供サーバ４０との間でデータを送受信することが可能となる。この目的を達成するために、プロトコル変換部３２は、どのアプリケーションサーバがどのプロトコルに対応するかの情報をテーブルとして持つ。プロトコル変換部３２は、複数のサービスを利用して新たなサービスとするマッシュアップにも対応する。
【００１８】
セッション状態情報取得部３３は、通信事業者ネットワーク５０におけるセッションの状態を示すセッション状態情報をサービス提供サーバ４０から取得する。セッション状態情報取得部３３は、サービス提供サーバ４０から送信されるセッション状態情報を受信し、セッション状態情報記憶部３４に記憶させる。
【００１９】
セッション状態情報は、サービス提供サーバ４０が管理する通信端末６０ａ〜６０ｄ間のセッション状態に関する情報を示す情報である。セッション状態情報の例としては、電話を掛ける（電話セッションの確立）、電話会議の参加者が増える（電話セッションの更新）、電話を切る（電話セッションの終了）、プッシュ信号の入力（ＤＴＭＦ(Dual-Tone Multi-Frequency)の入力）、ガイダンスを流すなどがある。セッション状態情報には、セッションＩＤを含むことがある。セッションＩＤとは、セッションごとに付与される固有の識別子である。
セッション状態情報記憶部３４は、セッション状態情報取得部３３が取得したセッション状態情報を記録し、更新する。
セッション状態情報通知部３５は、セッション状態情報取得部３３が取得したセッション状態情報またはセッション状態情報記憶部３４が記録したセッション状態情報を、アプリケーションサーバ１０に通知する。
【００２０】
図２は、サービスバス装置３０の動作の流れの具体例を示すフローチャートである。図２を参照しながら、サービスバス装置３０の動作について説明する。
まず、サービスバス装置３０のセッション状態情報取得部３３は、サービス提供サーバ４０に対して新たなセッション状態情報を要求する（ステップＳ１０１）。
セッション状態情報取得部３３は、サービス提供サーバ４０が管理するセッション状態に変化が生じたときに、セッション状態情報をサービス提供サーバ４０から取得するようにしてもよい。新たなセッション状態情報が生成するたびに、すなわちセッション状態に変化が生じたときに、サービス提供サーバ４０からサービスバス装置３０にセッション状態情報が送信されるように設定されている場合には、ステップＳ１０１の要求処理は不要である。
サービス提供サーバ４０からサービスバス装置３０にセッション状態情報を送信する際には、サービス提供サーバ４０に割り当てられたＩＰアドレス（例えば、グローバルＩＰや通常のＩＰアドレス）を送信先とする。
【００２１】
次に、サービスバス装置３０のセッション状態情報取得部３３は、サービス提供サーバ４０から新たなセッション状態情報を受信する（ステップＳ１０２）。新たなセッション状態情報は、生じたセッション状態の変化に応じて一つずつ受信してもよいし、所定期間に生じたセッション状態の変化について纏めて受信してもよい。
【００２２】
次に、サービスバス装置３０のセッション状態情報記憶部３４は、セッション状態情報取得部３３が受信したセッション状態情報を記憶する（ステップＳ１０３）。セッション状態情報がセッションＩＤを含む場合には、セッション状態情報記憶部３４は、併せてセッションＩＤを記憶する。
図３は、セッション状態情報記憶部３４が記憶したセッション状態情報の具体例を示すテーブルである。図３のテーブルは、セッションＩＤが１００１の通話が１３：００に開始され、１３：０５に終了した様子を示している。また、図３のテーブルは、セッションＩＤが１００２の電話会議が１３：２０に開始され、１３：３０に参加者が増え、１３：４０に終了した様子を示している。
なお、セッション状態情報記憶部３４は、セッション状態情報をＣＳＶ（Comma Separated Values）など任意の形式で記憶してよい。
【００２３】
次に、サービスバス装置３０のセッション状態情報通知部３５は、セッション状態情報記憶部３４が記録したセッション状態情報を、アプリケーションサーバ１０に通知する（ステップＳ１０４）。
【００２４】
セッション状態情報通知部３５が、セッション状態情報をアプリケーションサーバ１０に通知するために、セッション状態情報記憶部３４は、予め通知先となるアプリケーションサーバ１０のＵＲＩ（Uniform Resource Identifier）を記憶しておく。もしくは、セッション状態情報記憶部３４は、動的にアプリケーションサーバ１０から要求をサービスバス装置３０が受け取った際、要求に含まれる通知先を記憶することもできる。セッション状態情報通知部３５は、セッション状態情報記憶部３４の記憶内容を参照する。
セッション状態情報記憶部３４は、セッションＩＤと通知先となるアプリケーションサーバ１０のＵＲＩとを関連付けて記憶しておくとよい。この場合、セッション状態情報通知部３５は、サービス提供サーバ４０から送信されるセッション状態情報に含まれるセッションＩＤを基に、通知先となるアプリケーションサーバ１０のＵＲＩを特定することができる。
【００２５】
サービスバス装置３０は、プロトコル変換部３２の働きにより、セッション状態情報を通知先となるアプリケーションサーバ１０に適したプロトコルに変換して送信する。
【００２６】
図４は、プロトコル変換部３２の構成例を示すブロック図である。図４のプロトコル変換部３２は、メッセージ受信部３２１、分岐部３２２、メッセージ第１送信部３２３、メッセージ変換部３２４、及びメッセージ第２送信部３２５を備えている。
メッセージ受信部３２１がサービス提供サーバ４０から受信したセッション状態情報は、分岐部３２２の働きにより、アプリケーションサーバ１０に送信するにあたってプロトコル変換が必要か否かに応じて分岐される。分岐部３２２は、どのアプリケーションサーバがどのプロトコルに対応するかの情報を記録したテーブルを参照する。
【００２７】
サービス提供サーバ４０から受信したセッション状態情報のプロトコルと、アプリケーションサーバ１０が受信するプロトコルが一致する場合には、プロトコル変換は必要ない。この場合、サービス提供サーバ４０から受信したセッション状態情報は、メッセージ第１送信部３２３に出力され、アプリケーションサーバ１０に送信される。
他方、サービス提供サーバ４０から受信したセッション状態情報のプロトコルと、アプリケーションサーバ１０が受信するプロトコルが一致しない場合には、プロトコル変換が必要である。この場合、サービス提供サーバ４０から受信したセッション状態情報は、分岐部３２２により分岐されてメッセージ変換部３２４に出力される。メッセージ変換部３２４では、サービス提供サーバ４０から受信したセッション状態情報のプロトコルが、アプリケーションサーバ１０が受信するプロトコルに変換される。プロトコル変換後のセッション状態情報は、メッセージ第２送信部３２５に出力され、アプリケーションサーバ１０に送信される。
【００２８】
なお、サービスバス装置３０は、図２のフローチャートの各処理を繰り返してもよい。図２のフローチャートの各処理を繰り返す際には、ステップＳ１０４において、セッション状態情報通知部３５は、セッション状態情報記憶部３４が記憶したセッション状態情報を直ぐにアプリケーションサーバに通知しなくてもよい。
例えば、セッション状態情報通知部３５は、同一のセッションＩＤについて、セッション状態情報取得部３３が新たに取得したセッション状態情報が、セッション状態情報記憶部３４に記憶されたセッション状態情報と異なると判定したときに、新たに取得したセッション状態情報をアプリケーションサーバ１０に通知してもよい。
また、セッション状態情報通知部３５は、所定の時間が経過するごとに、セッション状態情報をアプリケーションサーバ１０に通知してもよい。
【００２９】
図５は、ネットワークシステム１００において、通信端末６０ａと通信端末６０ｂとがセッションを確立するときのシーケンスイメージを示すシーケンス図である。図５を参照しながら、ネットワークシステム１００においてセッションを確立するときの処理を説明する。
【００３０】
まず、アプリケーションサーバ１０がサービスバス装置３０に電話を掛ける旨の指示（startAudioCall）を送信すると、サービスバス装置３０は、サービス提供サーバ４０に電話を掛ける旨の指示（inviteParticipant）を送信する。２つの指示の間ではＡＰＩ名の変換が行われており、アプリケーションサーバ１０の側には、より利用しやすい名前でＡＰＩ名が提供されている。
電話を掛ける旨の指示（inviteParticipant）の受信に応じて、サービス提供サーバ４０はセッションＩＤをcallSessionIdentifierというパラメータでサービスバス装置３０に通知し、サービスバス装置３０は、セッションＩＤをcallIDというパラメータ名に変換してアプリケーションサーバ１０に通知する。
サービス提供サーバ４０は、電話を掛ける旨の指示（inviteParticipant）の受信に応じて、通信端末６０ａと通信端末６０ｂとに順次、電話発信する。サービス提供サーバ４０は、通信端末６０ａと通信端末６０ｂとから電話受信の通知を受けると、それぞれの通信端末との間で通話を開始する。これにより、通信端末６０ａと通信端末６０ｂとの間での通話が可能になる。
サービス提供サーバ４０は、通信端末６０ａと通信端末６０ｂとの間で通話を開始すると、電話受信の通知（notifySessionEvent）をサービスバス装置３０に送信する。サービスバス装置３０は、電話受信の通知（notifySessionEvent）の受信に応じて、ＡＰＩ名を変換し、電話受信の通知（notifyCallStatus）をアプリケーションサーバ１０に送信する。
このようにして、アプリケーションサーバ１０には、通信端末６０ａと通信端末６０ｂとのセッションが確立したことが通知される。
【００３１】
図６は、ネットワークシステム１００において、通信端末６０ａと通信端末６０ｂとが、セッションを終了するときのシーケンスイメージを示すシーケンス図である。図６を参照しながら、ネットワークシステム１００においてセッションを終了するときの処理を説明する。
【００３２】
まず、アプリケーションサーバ１０がサービスバス装置３０に電話を切る旨の指示（stopCall）を送信すると、サービスバス装置３０は、ＡＰＩ名を変換し、サービス提供サーバ４０に電話を切る旨の指示（disconectParticipant）を送信する。サービス提供サーバ４０は、電話を切る旨の指示（disconectParticipant）の受信に応じて、通信端末６０ａと通信端末６０ｂとに順次、電話切断を通知する。これにより、通信端末６０ａと通信端末６０ｂとの間での通話が切断される。
サービス提供サーバ４０は、通信端末６０ａと通信端末６０ｂとから切断完了の通知を受けると、電話切断の通知（notifySessionEvent）をサービスバス装置３０に送信する。サービスバス装置３０は、電話切断の通知（notifySessionEvent）の受信に応じて、ＡＰＩ名を変換し、電話切断の通知（notifyCallStatus）をアプリケーションサーバ１０に送信する。
このようにして、アプリケーションサーバ１０には、通信端末６０ａと通信端末６０ｂとのセッションが終了したことが通知される。
【００３３】
図７は、ネットワークシステム１００において、通信端末６０ａ〜６０ｄの間でセッションに参加する通信端末を移動するときのシーケンスイメージを示すシーケンス図である。図７を参照しながら、ネットワークシステム１００においてセッションに参加する通信端末を移動するときの処理を説明する。
【００３４】
前提の状態として、ｃａｌｌＩＤ１（セッションＩＤ）を付与された通信端末６０ａと通信端末６０ｂが通話中であり、ｃａｌｌＩＤ２（セッションＩＤ）を付与された通信端末６０ｃと通信端末６０ｄが通話中である。
アプリケーションサーバ１０が、通信端末６０ａのｃａｌｌＩＤ１をｃａｌｌＩＤ２に移動させる旨の指示（transferUser）を送信すると、サービスバス装置３０は、ＡＰＩ名を変換し、サービス提供サーバ４０に通信端末６０ａのｃａｌｌＩＤ１をｃａｌｌＩＤ２に移動させる旨の指示（transferCallParticipant）を送信する。サービス提供サーバ４０は、通信端末６０ａのｃａｌｌＩＤ１をｃａｌｌＩＤ２に移動させる旨の指示（transferCallParticipant）の受信に応じて、通信端末６０ｂのみをｃａｌｌＩＤ１で単独通話中の状態とし、通信端末６０ａ及び通信端末６０ｃ及び通信端末６０ｄをｃａｌｌＩＤ２で三者通話中の状態とする。これにより、通信端末６０ａ及び通信端末６０ｃ及び通信端末６０ｄの間での通話が開始される。
また、サービス提供サーバ４０は、ｃａｌｌＩＤ２でセッションに参加する通信端末を移動した旨の通知（notifySessionEvent）をサービスバス装置３０に送信する。サービスバス装置３０は、ｃａｌｌＩＤ２でセッションに参加する通信端末を移動した旨の通知（notifySessionEvent）の受信に応じて、ＡＰＩ名を変換し、ｃａｌｌＩＤ２でセッションに参加する通信端末を移動した旨の通知（notifyCallStatus）をアプリケーションサーバ１０に送信する。
このようにして、アプリケーションサーバ１０には、通信端末６０ａ〜通信端末６０ｂ間でセッションに参加する通信端末が移動したことが通知される。
【００３５】
以上のように、サービスバス装置３０は、サービス提供サーバ４０が管理する通信端末６０ａ〜６０ｄ間のセッション状態に関する情報を示すセッション状態情報をサービス提供サーバ４０から取得し、アプリケーションサーバ１０に通知する。また、上記の通知は、アプリケーションサーバ１０からの要求の有無に関係なく行われる。
サービスバス装置３０は、セッション状態情報記憶部３４が記憶するセッション状態情報が示すセッション状態に変化が生じたときに、セッション状態情報をアプリケーションサーバ１０に通知してもよい。この場合、セッション状態情報を動的にアプリケーションサーバ１０に通知することになる。
【００３６】
これにより、アプリケーションサーバ１０が通信端末６０ａ〜６０ｄのセッションの状態を示す情報を得ることができる。そのため、アプリケーションの開発者は、セッションの状態を示す情報を得ることを前提とした機能をアプリケーションに組み込むことができる。
【００３７】
アプリケーションの開発者がセッションの状態を示す情報を有効に活用する具体例として、アプリケーション開発者は、例えば下記のコマンドをアプリケーション上で採用することができる。これらコマンドは、従来のＰａｒｌａｙ−Ｘには存在しない新規コマンドである。
（新規コマンド１：startDataTransfer）
startDataTransferは、指定された参加者へのＦＡＸ送信またはデータ通信によるファイル送信を実行するコマンドである。ＦＡＸ送信またはファイル送信が完了した場合は、指定した状態通知先に対して切断完了状態通知（notifySessionEvent）を行う。
（新規コマンド２：orderDataTransfer）
orderDataTransferは、指定されたセッションＩＤに紐付く全参加者もしくは指定参加者に対する指定ファイルまたはＨＴＴＰデータの送信と、指定されたセッションＩＤに紐付く全参加者に対するＦＡＸ受信の開始とを指示するコマンドである。
（新規コマンド３：uploadData）
uploadDataは、サービス提供サーバ４０へのファイル保存（アップロード）を指示するコマンドである。
（新規コマンド４：getData）
getDataは、サービス提供サーバ４０に保存されているファイルを取得することを指示するコマンドである。
（新規コマンド５：deleteData）
deleteDataは、サービス提供サーバ４０に保存されているファイルを削除することを指示するコマンドである。
【００３８】
図８は、ネットワークシステム１００において、通信端末６０ａが受話に応じた後に通信端末６０ａ宛にＦＡＸを送信するときのシーケンスイメージを示すシーケンス図である。図８を参照しながら、上記の新規コマンドの「uploadData」及び「startDataTransfer」の使用例を説明する。
【００３９】
まず、アプリケーションサーバ１０が、所定のＦＡＸデータをサービス提供サーバ４０にファイル保存（アップロード）する指示（uploadData）をサービスバス装置３０に送信すると、サービスバス装置３０は、受信した指示をサービス提供サーバ４０に送信する。
アプリケーションサーバ１０がサービスバス装置３０に電話を掛ける旨の指示（startAudioCall）を送信すると、サービスバス装置３０は、ＡＰＩ名を変換し、サービス提供サーバ４０に電話を掛ける旨の指示（inviteParticipant）を送信する。
電話を掛ける旨の指示（inviteParticipant）の受信に応じて、サービス提供サーバ４０はセッションＩＤをcallSessionIdentifierというパラメータでサービスバス装置３０に通知し、サービスバス装置３０は、セッションＩＤをcallIDというパラメータ名に変換してアプリケーションサーバ１０に通知する。
サービス提供サーバ４０は、電話を掛ける旨の指示（inviteParticipant）の受信に応じて、通信端末６０ａに電話発信する。サービス提供サーバ４０は、通信端末６０ａから電話受信の通知を受けると、通信端末６０ａとの間で通話を開始する。
サービス提供サーバ４０は、通信端末６０ａとの間で通話を開始すると、電話受信の通知（notifySessionEvent）をサービスバス装置３０に送信する。サービスバス装置３０は、電話受信の通知（notifySessionEvent）の受信に応じて、ＡＰＩ名を変換し、電話受信の通知（notifyCallStatus）をアプリケーションサーバ１０に送信する。
アプリケーションサーバ１０は電話受信通知を受け取ることで、指定された参加者（通信端末６０ａ）へのＦＡＸ送信を実行する指示（startDataTransfer）をサービスバス装置３０に送信し、サービスバス装置３０は、受信した指示をサービス提供サーバ４０に送信する。
サービス提供サーバ４０は、受信した指示に応じて、予めファイル保存（アップロード）されたＦＡＸデータに基づいて通信端末６０ａにＦＡＸ送信を実行する。
【００４０】
また、図１のサービスバス装置３０における各機能ブロックを実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳ(Operating System)や周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ(Read Only Memory)、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。
【００４１】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００４２】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計も含まれる。なお、当然ながら、上述した実施の形態および複数の変形例は、その内容が相反しない範囲で組み合わせることができる。また、上述した実施の形態および変形例では、各部の構造などを具体的に説明したが、その構造などは本願発明を満足する範囲で各種に変更することができる。
【符号の説明】
【００４３】
１０…アプリケーションサーバ，  ２０…情報ネットワーク，  ３０…サービスバス装置（通信装置），  ３１…制御部，  ３２…プロトコル変換部，  ３３…セッション状態情報取得部（取得部），  ３４…セッション状態情報記憶部（記憶部），  ３５…セッション状態情報通知部（通知部），  ４０…サービス提供サーバ，  ５０…通信事業者ネットワーク，  ６０ａ〜６０ｄ…通信端末，  １００…ネットワークシステム
【図１】
0006023679.tif 000002
【図２】
0006023679.tif 000003
【図３】
0006023679.tif 000004
【図４】
0006023679.tif 000005
【図５】
0006023679.tif 000006
【図６】
0006023679.tif 000007
【図７】
0006023679.tif 000008
【図８】
0006023679.tif 000009