以下、図面を用いて、本発明の実施形態について説明する。
<<通信システムの概略>>
まず、図1を用いて、本発明の一実施形態に係る通信システムの概略について説明する。図1は、通信システム1における各種情報の送受信の状態を示した概略図である。以下、通信端末を、単に「端末」と略して説明する。
一実施形態に係る通信システム1は、複数の端末(10aa,10bb,10cc)、複数の中継装置(30xx,30yy,30zz)、及び、管理システム5により構築される。管理システム5は、複数の制御装置(50x,50y,50z)、及び共通管理装置60を備えている。以下、複数の端末(10aa,10bb,10cc)等のうち、任意の端末は「端末10」と表されている。また、複数の中継装置(30xx,30yy,30zz)等のうち、任意の中継装置は「中継装置30」と表されている。また、複数の制御装置(50x,50y,50z)等のうち、任意の制御装置は「制御装置50」と表されている。
各端末10は、コンテンツデータの送受信による通信を行なう。また、一以上の中継装置30は、複数の端末10間で、コンテンツデータを中継する。これにより、複数の端末10間では、一以上のコンテンツデータを送信するための一以上のセッションが確立される。以下、一以上のコンテンツデータを送信するためのセッションをセッションsedと表す。
端末10がセッションsedに参加することで、端末10間でコンテンツデータが交換され、複数の事業所間での通話、同じ事業所内の異なる部屋間での通話、同じ部屋内での通話、屋外と屋内又は屋外と屋外での通話等のコミュニケーションを実現することができる。なお、端末10が屋外で使われる場合には、携帯電話通信網等の無線による通信が行われても良い。
上記のように、通信システム1は、コミュニケーションシステムとして機能する。このコミュニケーションシステムは、コミュニケーション管理システム(「管理システム」に相当)を介してセッションsedを確立させて、複数のコミュニケーション端末(「端末」に相当)間で情報や感情等を相互に伝達するためのシステムである。
本実施形態では、コミュニケーションシステムの一例としてのビデオ会議システム、コミュニケーション管理システムの一例としてのビデオ会議管理システム、及びコミュニケーション端末の一例としてのビデオ会議端末を想定した上で、通信システム、管理システム、及び端末について説明する。即ち、本発明の端末及び管理システムは、ビデオ会議システムに適用されるだけでなく、コミュニケーションシステム、又は通信システムにも適用される。すなわち、通信システム1は電話システムであり、端末10は、IP( (Internet Protocol)電話機や、インターネット電話機、PC(Personal Computer)等であってもよい。
なお、実施形態において、「ビデオ会議」は、「テレビ会議」と置き換え可能に用いられる。
更に、以下、ビデオ会議端末(下位概念)等の端末(中位概念)によって、通話を行うことに関して説明するが、これに限るものではなく、通話を含めたより広い概念として通信を行うことができればよい。例えば、通信システム1は、アプリが自らセンターのサーバにアクセスして、各種データを送信したり取得する場合にも適用される。この場合、相手側が、端末ではなく、サーバの場合もあり得る。また、端末には、ゲーム機、又はカーナビゲーション装置等が含まれる。また、通信システム1は情報共有システムであり、端末10は、プロジェクタ、電子看板(デジタルサイネージ)、インタラクティブホワイトボードであっても良い。
一実施形態の通信システム1において、端末10間で送信される一以上のコンテンツデータは、例えば、高解像度の画像データ、中解像度の画像データ、低解像度の画像データ、及び音データの4つの各データである。なお、画像データの画像は、動画であっても静止画であってもよく、動画と静止画の両方であってもよい。低解像度の画像データは、例えば、横が160画素、縦が120画素から成り、ベース画像となる。中解像度の画像データは、横が320画素、縦が240画素から成る。高解像度の画像データは、例えば、横が640画素、縦が480画素から成る。一実施形態によると、複数の端末10間で、コンテンツデータが狭帯域経路を経由して伝送される場合には、ベース画像となる低解像度の画像データのみから成る低画質の画像データが中継される。比較的広い帯域を経由する場合には、ベース画像となる低解像度の画像データ、及び中解像度の画像データから成る中画質の画像データが中継される。また、非常に広い帯域を経由する場合には、ベース画質となる低解像度の画像データ、中解像度の画像データ、及び高解像度の画像データから成る高画質の画像データが中継される。音データは、画像データに比べてデータ量が少ないため、狭帯域経路であっても中継される。
図1の通信システム1において、複数の中継装置30は、中継システム3を構成する。図1では、3つの中継装置30が3つの端末10間でコンテンツデータを中継している一実施形態が示されているが、本発明は、これに限定されない。例えば、通信システム1において、2つの中継装置30が3つの端末10間でコンテンツデータを中継しても良いし、3つの中継装置30が2つの端末10間でコンテンツデータを中継しても良い。
共通管理装置60は、端末10、あるいは、端末10間のセッションsedに関する各種情報であって、各制御装置50が利用する共通の情報を管理する。
端末10間では、制御装置50を介して、各種情報を送信するためのセッションが確立される。以下、このセッションをセッションseiと表す。端末10間で送信される各種情報には、通信の開始要求、通信の開始許可、及び通信の終了要求等が含まれる。各制御装置50は、端末10から送られてきた各種情報に基づいて、端末10の状態を把握することができる。
図2は、端末10の状態遷移の一例を示す状態遷移図である。図2の状態遷移図において、各枠内には、例えば、「None」等の端末10の状態を示す状態情報が記載されている。端末10は、制御装置50へログインしてオンラインとなると、ログインした端末10の通信の状態は、通信開始前の待受中の状態(状態情報「None」で示される状態)となる。続いて、端末10が他の端末10との通信の開始要求をすると、開始要求元の端末10の通信の状態は、他の端末10との通信の開始を要求している状態(状態情報「Inviting」で示される状態)となり、宛先の端末10の通信の状態は、他の端末10から通信の開始要求をされている状態(状態情報「Invited」で示される状態)となる。続いて、宛先の端末10が着信音を出力すると、宛先の端末10の通信の状態は、着信音を出力している状態(状態情報「Ringing」で示される状態)となり、開始要求元の端末10の通信の状態は発信音を出力している状態(状態情報「Calling」で示される状態)となる。続いて、宛先の端末10が開始要求を許可すると、開始要求元及び宛先の端末10は、開始要求が許可された状態(状態情報「Accepted」で示される状態)となる。続いて、端末10がコンテンツデータの中継の開始要求をすると、端末10の通信の状態は、通信中の状態(状態情報「Busy」で示される状態)となる。続いて、端末10が通信の終了要求をすると、終了要求元の端末10の通信の状態は、状態情報「None」で示される状態に戻る。一方、端末10が確立されたセッションsedへの参加要求をした場合には、参加要求元の端末10の通信の状態は、状態情報「Accepted」で示される状態となる。なお、上記の状態遷移のルールは、一例であって、通信システム1において他のルールが採用されても良い。
各制御装置50の記憶部5000には、図2の状態遷移図によって示される状態遷移のルールを示す情報が記憶されている。これにより、例えば、端末10から開始要求が送られてきたときに、開始要求元の端末10の通信の状態が「None」であれば、制御装置50は、開始要求を宛先の端末10へ送信し、開始要求元の端末10の通信の状態が「None」ではない場合には、開始要求を拒否する等して、正確に端末10間の呼制御を行うことができる。
また、各制御装置50は、上記の端末10の通信の状態とは別に、例えば、端末10の利用者に通知する目的で、端末10毎の稼働状態(プレゼンス)を管理している。この稼働状態は、端末10の稼働状態としては、端末10が制御装置50と接続しているが他の端末10とは通信していない状態「オンライン」、端末10が制御装置50と接続しており、他の端末10と通信している状態「オンライン(通話中)」、端末10が制御装置50と接続していない状態「オフライン」等が挙げられる。各制御装置50は、自制御装置50に接続している端末10に対して、その端末10に対する宛先候補の端末10の稼働状態を通知する。端末10側では、制御装置50から稼働状態が送られてくると、送られてきた稼働状態に基づいて、表示制御部17が、宛先リスト(図3参照)に表示されている稼働状態を示したアイコンを更新する(図3参照)。
<<実施形態のハードウェア構成>>
次に、本実施形態のハードウェア構成を説明する。図4は、本実施形態に係る端末10の外観図の一例である。図4に示されているように、端末10は、筐体1100、アーム1200、及びカメラハウジング1300を備えている。このうち、筐体1100の前側壁面1110には、複数の吸気孔によって形成された吸気面が設けられており、筐体1100の後側壁面1120には、複数の排気孔が形成された排気面1121が設けられている。これにより、筐体1100に内蔵された冷却ファンの駆動によって、吸気面を介して端末10の後方の外気を取り込み、排気面1121を介して端末10の後方へ排気することができる。筐体1100の右側壁面1130には、収音用孔1131が形成され、後述する内蔵型のマイク114によって音声、物音、雑音等の音が収音可能となっている。
筐体1100の右側壁面1130側には、操作パネル1150が形成されている。この操作パネル1150には、後述の複数の操作ボタン(108a〜108e)、後述の電源スイッチ109、及び後述のアラームランプ119が設けられていると共に、後述の内蔵型のスピーカ115からの出力音を通すための複数の音声出力孔によって形成された音出面1151が形成されている。また、筐体1100の左側壁面1140側には、アーム1200及びカメラハウジング1300を収容するための凹部としての収容部1160が形成されている。筐体1100の右側壁面1130には、後述の外部機器接続I/F118に対して電気的にケーブルを接続するための複数の接続口(1132a〜1132c)が設けられている。一方、筐体1100の左側壁面1140には、後述の外部機器接続I/F118に対して電気的にディスプレイ120用のケーブル120cを接続するための接続口が設けられている。
なお、以下では、操作ボタン(108a〜108e)のうち任意の操作ボタンを示す場合には「操作ボタン108」を用い、接続口(1132a〜1132c)のうち任意の接続口を示す場合には「接続口1132」を用いて説明する。
次に、アーム1200は、トルクヒンジ1210を介して筐体1100に取り付けられており、アーム1200が筐体1100に対して、135度のチルト角θ1の範囲で、上下方向に回転可能に構成されている。図4は、チルト角θ1が90度の状態を示している。カメラハウジング1300には、後述の内蔵型のカメラ112が設けられており、利用者、書類、及び部屋等を撮像することができる。また、カメラハウジング1300には、トルクヒンジ1310が形成されている。カメラハウジング1300は、トルクヒンジ1310を介して、アーム1200に取り付けられている。そして、カメラハウジング1300は、トルクヒンジ1310を介してアーム1200に取り付けられており、カメラハウジング1300がアーム1200に対して、図4で示されている状態を0度として±180度のパン角θ2の範囲で、且つ、±45度のチルト角θ3の範囲で、上下左右方向に回転可能に構成されている。
なお、上記図4の外観図はあくまで一例であってこの外観に限定するものではない。端末10は例えば汎用的なPC、スマートフォン、タブレット型端末、であってもよい。カメラやマイクは必ずしも内蔵型である必要はなく外付けであってもよい。
なお、中継装置30、中継管理装置40、制御装置50、及び共通管理装置60は、それぞれ一般のサーバコンピュータの外観と同じであるため、外観の説明を省略する。
図5は、本実施形態に係る端末10のハードウェア構成図である。図5に示されているように、本実施形態の端末10は、端末10全体の動作を制御するCPU(Central Processing Unit)101、IPL(Initial Program Loader)等のCPU101の駆動に用いられるプログラムを記憶したROM(Read Only Memory)102、CPU101のワークエリアとして使用されるRAM(Random Access Memory)103、端末10の各種端末用のプログラム、画像データ、及び音声データ等の各種データを記憶するフラッシュメモリ104、CPU101の制御に従ってフラッシュメモリ104に対する各種データの読み出し又は書き込みを制御するSSD(Solid State Drive)105、フラッシュメモリやICカード(Integrated Circuit Card)等の記録メディア106に対するデータの読み出し又は書き込み(記憶)を制御するメディアI/F107、宛先を選択する場合などに操作される操作ボタン108、端末10の電源のON/OFFを切り換えるための電源スイッチ109、通信ネットワーク2を利用してデータ伝送をするためのネットワークI/F(Interface)111を備えている。
また、端末10は、CPU101の制御に従って被写体を撮像して画像データを得る内蔵型のカメラ112、このカメラ112の駆動を制御する撮像素子I/F113、音声を入力する内蔵型のマイク114、音声を出力する内蔵型のスピーカ115、CPU101の制御に従ってマイク114及びスピーカ115との間で音声信号の入出力を処理する音入出力I/F116、CPU101の制御に従って外付けのディスプレイ120に画像データを伝送するディスプレイI/F117、各種の外部機器を接続するための外部機器接続I/F118、端末10の各種機能の異常を知らせるアラームランプ119、及び上記各構成要素を図5に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン110を備えている。
ディスプレイ120は、被写体の画像や操作用情報等を表示する液晶や有機EL(Organic Electroluminescence)によって構成された表示部である。また、ディスプレイ120は、ケーブル120cによってディスプレイI/F117に接続される。このケーブル120cは、アナログRGB(VGA)信号用のケーブルであってもよいし、コンポーネントビデオ用のケーブルであってもよいし、HDMI(登録商標)(High-Definition Multimedia Interface)やDVI(Digital Video Interactive)信号用のケーブルであってもよい。
カメラ112は、レンズや、光を電荷に変換して被写体の画像(映像)を電子化する固体撮像素子を含み、固体撮像素子として、CMOS(Complementary Metal Oxide Semiconductor)や、CCD(Charge Coupled Device)等が用いられる。
外部機器接続I/F118には、筐体1100の接続口1132に差し込まれたUSB(Universal Serial Bus)ケーブル等によって、外付けカメラ、外付けマイク、及び外付けスピーカ等の外部機器がそれぞれ電気的に接続可能である。外付けカメラが接続された場合には、CPU101の制御に従って、内蔵型のカメラ112に優先して、外付けカメラが駆動する。同じく、外付けマイクが接続された場合や、外付けスピーカが接続された場合には、CPU101の制御に従って、それぞれが内蔵型のマイク114や内蔵型のスピーカ115に優先して、外付けマイクや外付けスピーカが駆動する。
なお、記録メディア106は、端末10に対して着脱自在な構成となっている。また、CPU101の制御に従ってデータの読み出し又は書き込みを行う不揮発性メモリであれば、フラッシュメモリ104に限らず、EEPROM(Electrically Erasable and Programmable ROM)等を用いてもよい。
図6は、制御装置50のハードウェア構成図である。制御装置50は、制御装置50全体の動作を制御するCPU501、IPL等のCPU501の駆動に用いられるプログラムを記憶したROM502、CPU501のワークエリアとして使用されるRAM503、制御装置50用のプログラム等の各種データを記憶するHD504、CPU501の制御に従ってHD504に対する各種データの読み出し又は書き込みを制御するHDD(Hard Disk Drive)505、フラッシュメモリ等の記録メディア506に対するデータの読み出し又は書き込み(記憶)を制御するメディアドライブ507、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示するディスプレイ508、通信ネットワーク2を利用してデータ通信するためのネットワークI/F509、文字、数値、各種指示などの入力のための複数のキーを備えたキーボード511、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行うマウス512、着脱可能な記録メディアの一例としてのCD−ROM(Compact Disc Read Only Memory)513に対する各種データの読み出し又は書き込みを制御するCD−ROMドライブ514、及び、上記各構成要素を図6に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン510を備えている。
中継装置30は、制御装置50と同様のハードウェア構成を有しているため、その説明を省略する。
なお、端末10、中継装置30、制御装置50、及び共通管理装置60用の各プログラムは、インストール可能な形式又は実行可能な形式のファイルによって、コンピュータで読み取り可能な記録メディアに記録されて流通されるようにしてもよい。また、上記記録メディアの例として、CD−R(Compact Disc Recordable)、DVD(Digital Versatile Disk)、ブルーレイディスク等が挙げられる。また、各プログラムが記憶されたCD−ROM等の記録メディア、並びに、これらプログラムが記憶されたHD504は、プログラム製品(Program Product)として、国内又は国外へ提供されることができる。
また、制御装置50、及び、共通管理装置60は、単一のコンピュータによって構築されてもよいし、各部(機能又は手段)を分割して任意に割り当てられた複数のコンピュータによって構築されていても良い。また、共通管理装置60は、複数の制御装置50のうち、いずれか一の制御装置50において構築されていても良い。
<<通信システムの全体構成>>
続いて、図7を用いて、実施形態の全体構成について説明する。図7は、本発明の一実施形態に係る通信システムの全体構成図である。
端末10、中継装置30、制御装置50、及び、共通管理装置60は、それぞれ、通信ネットワーク2を介して、他の端末、装置との間で通信可能に接続されている。通信ネットワーク2は、LAN2x(Local Area Network)、インターネット、携帯電話網、あるいは専用線であっても良い。特に限定されないが、例えば、中継装置30間、制御装置50間、あるいは、制御装置50と共通管理装置60との間を、専用線による通信ネットワーク2で接続しても良い。これにより、装置間の通信を安定化することができる。また、通信ネットワーク2を介した通信には、有線通信、あるいは、無線通信が含まれてもよい。
中継装置(30xx,30xy)、並びに、制御装置50xは、地域Xに配置されている。例えば、地域Xは日本であって、中継装置(30xx,30xy)、並びに、制御装置50xは、東京のデータセンターに配置されている。
中継装置(30yy,30yz)、並びに、制御装置50yは、地域Yに配置されている。例えば、地域Yはアメリカであって、中継装置(30yy,30yz)、並びに、制御装置50yは、ニューヨークのデータセンターに配置されている。
中継装置(30zz,30zx)、並びに、制御装置50zは、地域Zに配置されている。例えば、地域Zは東南アジアであって、中継装置(30zz,30zx)、並びに、制御装置50zは、シンガポールのデータセンターに配置されている。
端末(10aa,10bb,10cc)のそれぞれは、持ち運び可能であり、地域(X,Y,Z)から、通信ネットワーク2に接続しても良いし、それ以外の地域から通信ネットワーク2に接続しても良い。
通信システム1において、4つ以上の端末10が設けられていても良い。共通管理装置60は、地域(X,Y,Z)のいずれか一地域に配置されていても良いし、それ以外の地域に配置されていても良い。また、地域(X,Y,Z)以外の地域に、中継装置30及び制御装置50が配置されていても良い。
<<実施形態の機能構成>>
次に、図5、図6及び図8を用いて、本実施形態の機能構成について説明する。図8は、本実施形態に係る通信システムの各機能ブロック図である。
<端末の機能構成>
端末10は、送受信部11、受付部12、通信制御部13、表示制御部17、及び記憶・読出部19を有している。これら各部は、図5に示されている各構成要素のいずれかが、フラッシュメモリ104からRAM103上に展開された端末用プログラムに従ったCPU101からの命令によって動作することで実現される機能、又は機能する手段である。また、端末10は、RAM103、及びフラッシュメモリ104によって構築される記憶部1000を有している。更に、端末10には、記録メディア106によって構築される記録媒体1010が挿入されており、記憶・読出部19によって各種データの読み出し又は書き込みが行なわれる。
(端末の各機能構成)
次に、端末10の各機能構成について詳細に説明する。なお、以下では、端末10の各機能構成を説明するにあたって、図5に示されている各構成要素のうち、端末10の各機能構成を実現させるための主な構成要素との関係も説明する。
送受信部11は、CPU101からの命令、及びネットワークI/F111によって実現され、通信ネットワーク2を介して他の端末、装置又はシステムと各種データ(または情報)の送受信を行う。
受付部12は、CPU101からの命令によって実現され、利用者による操作ボタン108の操作又は利用者による電源スイッチ109の押下等の各種入力を受け付ける。例えば、利用者が、電源スイッチ109をONにすると、受付部12が電源ONを受け付けて、電源をONにする。
通信制御部13は、CPU101からの命令、並びにカメラ112及び撮像素子I/F113によって実現され、被写体を撮像して、この撮像によって得た画像データを出力する。また、通信制御部13は、CPU101からの命令、及び音入出力I/F116によって実現され、マイク114によって利用者の音声が音声信号に変換された後、この音声信号に係る音データを入力する。更に、通信制御部13は、CPU101からの命令、及び音入出力I/F116によって実現され、音データに係る音声信号をスピーカに出力し、スピーカ115から音声を出力させる。
表示制御部17は、CPU101からの命令、及びディスプレイI/F117によって実現され、受信された解像度の異なる画像データを組み合わせ、この組み合わされた画像データをディスプレイ120に送信するための制御を行う。表示制御部17は、制御装置50から受信した情報をディスプレイ120に送信して、ディスプレイ120に表示を表示させることができる。
記憶・読出部19は、CPU101からの命令及びSSD105によって実行され、又はCPU101からの命令によって実現され、記憶部1000又は記録媒体1010に各種データを記憶したり、記憶部1000又は記録媒体1010に記憶された各種データを読み出したりする処理を行う。記憶部1000には、端末10を識別するための端末ID(Identification)、及びパスワード等が記憶される。なお、端末IDとパスワードの少なくとも一方は、記録媒体1010に記録されており、記憶・読出部19によって読み出されるようにしてもよい。この場合の記録媒体1010は、SIMカード(Subscriber Identity Module Card)等のICカード(Integrated circuit card)である。そして、端末10の利用者は、記録媒体1010を購入することで、管理システム5の管理者から通信サービスの提供を受けることができる。
更に、記憶部1000には、宛先端末との通話を行う際に受信される画像データ及び音データが、受信される度に上書き記憶される。このうち、上書きされる前の画像データによってディスプレイ120に画像が表示され、上書きされる前の音データによってスピーカ115から音声が出力される。
なお、本実施形態の端末IDは、端末10を一意に識別するために使われる言語、文字、記号、又は各種のしるし等の識別情報の一例を示す。また、端末IDは、上記言語、文字、記号、及び各種のしるしのうち、少なくとも2つが組み合わされた識別情報であってもよい。また、端末IDに代えて、端末10の利用者を識別するための利用者IDを利用してもよい。この場合、端末識別情報には、端末IDだけでなく、利用者IDも含まれる。
<制御装置の機能構成>
制御装置50は、送受信部51、認証部52、管理部53、検索部54、セッション制御部58、及び記憶・読出部59を有している。これら各部は、図6に示されている各構成要素のいずれかが、HD504からRAM503上に展開された制御装置50用のプログラムに従ったCPU501からの命令によって動作することで実現される機能又は手段である。また、制御装置50は、HD504により構築される記憶部5000を有している。
制御装置50の記憶部5000には、自制御装置50あるいは他の制御装置50が配置されている地域(X,Y,Z)の地域IDが記憶されている。例えば、記憶部5000には、制御装置50xが配置されている日本を示す地域ID「jp01」、制御装置50yが配置されているアメリカを示す地域ID「us01」、及び、制御装置50zが配置されているシンガポールを示す地域ID「sg01」がそれぞれ記憶されている。
また、記憶部5000には、認証管理テーブルによって構成されている認証管理DB5001、端末管理テーブルによって構成されている端末管理DB5002、宛先リスト管理テーブルによって構成されている宛先リスト管理DB5003、セッション管理テーブルによって構成されているセッション管理DB5004、中継装置管理テーブルによって構成されている中継装置管理DB5011、稼働状態管理テーブルによって構成されている稼働状態管理DB5012、及び、接続管理テーブルによって構成されている接続管理DB5013が構築されている。
(認証管理テーブル)
図9(A)は、認証管理テーブルを示す概念図である。この認証管理テーブルでは、端末10を識別するための端末ID、パスワード、及び、端末10において利用可能なサービスのサービスIDが関連付けられて管理される。なお、端末(10aa,10bb,10cc)の端末IDは、それぞれ「01aa@xx.com,01bb@xx.com,01cc@xx.com」であるものとして説明を続ける。ただし、端末IDに含まれる「@xx.com」は、各端末10において共通しているため、適宜省略する。
(端末管理テーブル)
図9(B)は、端末管理テーブルを示す概念図である。この端末管理テーブルでは、各端末10の端末IDに対して、宛先名(例えば、端末名)、端末10の通信の状態を示す状態情報、この端末10への宛先を示すIPアドレス、この端末10の接続先の制御装置50の地域ID、及び、この端末10の接続先の中継装置30の中継装置IDが関連付けられて管理されている。
(宛先リスト管理テーブル)
図9(C)は、宛先リスト管理テーブルを示す概念図である。この宛先リスト管理テーブルでは、通信の開始要求元の端末10の端末IDに対して、開始要求元の端末10において指定可能な宛先候補の端末10の端末IDが関連付けられて管理されている。
(セッション管理テーブル)
図9(D)は、セッション管理テーブルを示す概念図である。このセッション管理テーブルでは、セッションsedを識別するためのセッションIDに対して、このセッションsedに参加している端末10の端末IDが関連付けられて管理されている。なお、本実施形態では、セッションsedにおいて、端末10間で複数の中継装置30を介してコンテンツデータを送信する場合に、一の中継装置30がコンテンツデータの中継の全体を管理しており、この中継装置30を起点として、他の各中継装置30に対して、コンテンツデータの中継先等を示す情報が提供される。このため、セッションIDには、セッションsedにおける起点となる中継装置(例えば、中継装置30xx)を示すドメイン情報(例えば、「001xx」)が含まれている。
(中継装置管理テーブル)
図9(E)は、中継装置管理テーブルを示す概念図である。この中継装置管理テーブルでは、中継装置30の中継装置IDに対して、この中継装置30が配置されている地域の地域ID、及びこの中継装置30のURI(Uniform Resource Identifier)が関連付けられて管理されている。
(稼働状態管理テーブル)
図9(F)は、稼働状態管理テーブルを示す概念図である。この稼働状態管理テーブルでは、端末10の端末IDに対して、この端末10の稼働状態(プレゼンス)が関連付けられて管理されている。
(接続管理テーブル)
図9(G)は、接続管理テーブルを示す概念図である。この接続管理テーブルでは、端末10の端末IDに対して、端末10が中継装置30と接続する度に生成される中継装置接続IDと、端末10が中継装置30と接続するときに端末10の認証に用いられる中継装置接続パスワードと、が関連付けられて管理されている。
(制御装置の各機能構成)
次に、制御装置50の各機能構成について詳細に説明する。なお、以下では、制御装置50の各機能構成を説明するにあたって、図6に示されている各構成要素のうち、制御装置50の各機能構成を実現させるための主な構成要素との関係も説明する。
送受信部51は、CPU501からの命令、及びネットワークI/F509によって実行され、通信ネットワーク2を介して各端末、装置又はシステムと各種データ(または情報)の送受信を行う。
認証部52は、CPU501からの命令によって実現され、送受信部51で受信された端末ID及びパスワードを検索キーとして、認証管理テーブル(図9(A)参照)を検索し、この認証管理テーブルに同一の端末ID及びパスワードが管理されているかを判断することによって端末10の認証を行う。
管理部53は、CPU501からの命令によって実現され、上記の各管理テーブルにおいて各種情報を追加あるいは削除することにより、各管理テーブルを管理する。
検索部54は、CPU501からの命令によって実現され、他の制御装置50と接続している端末10(ノード)をノード検索する。
セッション制御部58は、CPU501からの命令によって実現され、端末10間でコンテンツデータを送信するセッションsedを制御する。上記の制御としては、セッションsedを確立するための制御、確立されたセッションsedに端末10を参加させる制御、セッションsedを切断する制御等が含まれる。
記憶・読出部59は、CPU501からの命令及びHDD505によって実行され、又はCPU501からの命令によって実現され、記憶部5000に各種データを記憶したり、記憶部5000に記憶された各種データを読み出す処理を行う。
<共通管理装置の機能構成>
共通管理装置60は、送受信部61、及び記憶・読出部69を有している。これら各部は、図6に示されている各構成要素のいずれかが、HD504からRAM503上に展開された共通管理装置用のプログラムに従ったCPU501からの命令によって動作することで実現される機能又は手段である。また、共通管理装置60は、HD504により構築される記憶部6000を有している。この記憶部6000には、認証管理テーブルによって構成されている認証管理DB6001、端末管理テーブルによって構成されている端末管理DB6002、宛先リスト管理テーブルによって構成されている宛先リスト管理DB6003、セッション管理テーブルによって構成されているセッション管理DB6004が構築されている。なお、共通管理装置側の認証管理DB6001、端末管理DB6002、宛先リスト管理DB6003、及び、セッション管理DB6004と、制御装置50側の認証管理DB5001、端末管理DB5002、宛先リスト管理DB5003、及び、セッション管理DB5004は、それぞれ同期しており、それぞれ共通する情報を管理している。
(共通管理装置の各機能構成)
送受信部61は、CPU501からの命令、及びネットワークI/F509によって実行され、通信ネットワーク2を介して他の端末、装置又はシステムと各種データ(または情報)の送受信を行う。
記憶・読出部69は、CPU501からの命令及びHDD505によって実行され、又はCPU501からの命令によって実現され、記憶部6000に各種データを記憶したり、記憶部6000に記憶された各種データを読み出す処理を行う。
<中継装置の機能構成>
中継装置30は、送受信部31、認証部32、及び記憶・読出部39を有している。これら各部は、図6に示されている各構成要素のいずれかが、HD504からRAM503上に展開された共通管理装置用のプログラムに従ったCPU501からの命令によって動作することで実現される機能又は手段である。また、中継装置30は、HD504により構築される記憶部3000を有している。
(共通管理装置の各機能構成)
送受信部31は、CPU501からの命令、及びネットワークI/F509によって実行され、通信ネットワーク2を介して他の端末、装置又はシステムと各種データ(または情報)の送受信を行う。
認証部32は、CPU501からの命令によって実現され、送受信部31で受信された端末ID、中継装置接続ID、及び中継装置接続パスワードの組が、制御装置50側の接続管理テーブル(図9(G)参照)において管理されているかを判断することによって端末10の認証を行う。
記憶・読出部39は、CPU501からの命令及びHDD505によって実行され、又はCPU501からの命令によって実現され、記憶部3000に各種データを記憶したり、記憶部3000に記憶された各種データを読み出す処理を行う。
<<実施形態の処理または動作>>
続いて、通信システム1を構成する端末10、中継装置30、制御装置50、及び共通管理装置60の処理または動作について詳細に説明する。
(ログイン処理)
まずは、図10を用いて、端末10が制御装置50及び中継装置30へログインする処理について説明する。図10は、端末10のログイン処理を示したシーケンス図である。
本発明の一実施形態によると、端末10は、複数の制御装置50のうち任意の一の制御装置50へログインすることができる。端末10毎のログイン要求先の制御装置50を選択する方法は特に限定されないが、端末10において入力された情報に基づいて制御装置50を選択する方法、端末10の物理的な位置情報に基づいて、最も近い制御装置50を選択する方法、広域負荷分散(GSLB, Global Server Load Balancing)を用いて制御装置50を選択する方法等が挙げられる。
端末10は、送受信部11によって、選択された任意の制御装置50に対し、ログイン要求及び自端末のIPアドレスを送信する(ステップS1)。このログイン要求には、ログイン要求元の端末10の端末ID及びパスワードが含まれる。また、端末10がログイン要求を送信することにより、端末10のIPアドレスが、ログイン要求先の制御装置50へ送信される。これにより、制御装置50の送受信部51は、端末ID及びパスワードが含まれたログイン要求、並びに端末10のIPアドレスを受信する。
続いて、認証部52は、認証管理テーブル(図9(A))を参照して、ログイン要求元の端末10を認証する(ステップS2)。ここで、ログイン要求元から送られてきた端末ID及びパスワードの組と同じ組が、認証管理テーブルにおいて管理されている場合には、認証部52はログイン要求元の端末10の認証に成功する。一方、ログイン要求元の端末ID及びパスワードの組と同じ組が認証管理テーブルで管理されていない場合には、認証部52はログイン要求元の端末10の認証に失敗する。以下、認証に成功した場合について、説明を続ける。
記憶・読出部59は、ステップS2の処理の一環として、ログイン要求元の端末10の端末IDを検索キーとして、認証管理テーブルを検索して、対応するサービスIDを読み出す。
続いて、管理部53は、ログイン要求元の端末10に対して、自制御装置50の配置されている地域を示す地域IDを割り当てる(ステップS3)。この地域IDは、制御装置50の記憶部5000に予め記憶されているものである。例えば、ログイン要求を受け付けた制御装置50が、地域X(日本)に配置されている制御装置50xであれば、管理部53は、ログイン要求元の端末10に対して地域IDとして「jp01」を割り当てる。
続いて、記憶・読出部59は、管理部53による要求に基づいて、稼働状態管理テーブル(図9(F)参照)において、ログイン要求元の端末10の端末IDに関連付けて、稼働状態「オンライン」を記憶する(ステップS4)。
また、管理部53は、図2の状態遷移図によって示される状態遷移のルールに従って、ログイン要求元の端末10の通信の状態を管理する(ステップS5)。すなわち、ステップS4において、稼働状態が「オンライン」となったことを契機として、管理部53は、ログイン要求元の端末10の新たな状態を示す状態情報を「None」に決定する(図2参照)。
ステップS2において読み出したサービスIDが「ビデオ会議」である場合には、セッション制御部58は、ログイン要求元の端末10が接続する接続先の中継装置30を選択する(ステップS6)。この場合、セッション制御部58は、セッション管理テーブルにおいて、自制御装置が配置されている地域(例えば、地域X)の地域ID(例えば「jp01」)に関連付けられて管理されている中継装置IDによって識別される中継装置30、すなわち、自制御装置と同じ地域に配置されている中継装置30を、ログイン要求元の端末10が接続する接続先の中継装置30として選択する。なお、自制御装置と同じ地域に複数の中継装置30が配置されている場合に、中継装置30を選択する方法としては、特に限定されないが、ラウンドロビン方式で選択する方法、中継装置30毎の負荷に基づいて選択する方法等が挙げられる。また、ステップS6の処理の一環として、記憶・読出部59は、選択された中継装置30の中継装置IDを検索キーとして、中継装置管理テーブル(図9(E)参照)を検索し、対応するURIを読み出す。
また、制御装置50のセッション制御部58は、ログイン要求元の端末10がステップS5で選択された中継装置30と接続するときに用いられる中継装置接続IDを生成する(ステップS7)。ステップS7の処理の一環として、記憶・読出部59は、接続管理テーブル(図9(G)参照)において、ログイン要求元の端末10の端末IDに関連付けて、生成された中継装置接続ID、及び中継装置接続パスワードを記憶する。なお、中継装置接続パスワードは、中継装置30毎に予め定められているものであっても、端末10が中継装置30と接続する度に生成されるものであっても良い。
また、制御装置50の送受信部51は、共通管理装置60へ、端末管理テーブルの更新要求を送信する(ステップS8−1)。この更新要求には、ログイン要求元の端末10の端末ID及びIPアドレス、ステップS3において割り当てられた地域ID、ステップS5において決定された状態情報、並びにステップS6において選択された中継装置30の中継装置IDが含まれている。共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、更新要求に含まれる端末ID、IPアドレス、状態情報、地域ID、及び中継装置IDを関連付けて記憶する。
その後、共通管理装置60の送受信部61は、端末ID、状態情報、地域ID、及び中継装置ID等を含む端末管理テーブルの更新内容を、通信システム1を構成する各制御装置(50x,50y,50z)へ送信する。各制御装置(50x,50y,50z)の送受信部51が更新内容を受信すると、各制御装置50の記憶・読出部59は、受信した更新内容に基づいて、自制御装置の端末管理テーブルを更新する。これにより、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS8−2−1,S8−2−…)。
続いて、制御装置50の送受信部51は、ログイン要求元の端末10に対して、認証に成功した旨の認証結果、ステップS6で読み出された中継装置30のURI、ステップS7で生成された中継装置接続ID及び中継装置接続パスワードを送信する(ステップS9)。
端末10の送受信部11は、制御装置50から送られてきたURI、中継装置接続ID、及び中継装置接続パスワードを受信すると、URIによって示される中継装置30へ、ログイン要求を送信する(ステップS10)。このログイン要求には、ログイン要求元の端末10の端末IDと、制御装置50から送られてきた中継装置接続IDと、中継装置接続パスワードとが含まれている。
ログイン要求を受信した中継装置30では、認証部32が、ログイン要求元の端末10を認証する(ステップS11)。この場合、認証部32は、送受信部31を介して、ログイン要求に含まれる端末ID、中継装置接続ID、及び中継装置パスワードの組と同じ組が、制御装置50側の接続管理テーブル(図9(G)参照)で管理されているかを、自中継装置と同じ地域に配置されている制御装置50へ問い合わせる。問い合わせを受信した制御装置50側では、管理部53は、接続管理テーブルを参照し、問い合わせに対する結果を送受信部51を介して、中継装置30へ送信する。ログイン要求に含まれる端末ID、中継装置接続ID、及び中継装置接続パスワードの組と同じ組が、制御装置50側の接続管理テーブルにおいて管理されている場合には、認証部32はログイン要求元の端末10の認証に成功する。一方、ログイン要求に含まれる端末ID、中継装置接続ID、及び中継装置接続パスワードの組と同じ組が、制御装置50側の接続管理テーブルで管理されていない場合には認証部32は、ログイン要求元の端末10の認証に失敗する。中継装置30の送受信部31は、認証結果をログイン要求元の端末10へ送信する(ステップS12)。
以下、認証に成功した場合について説明を続ける。
(宛先リスト要求)
続いて、図11を用いて、端末10において自端末の宛先候補が示された宛先リストを表示するまでの処理について説明する。図11は、端末において宛先リストを表示する処理を示したシーケンス図である。端末10では、認証結果を受信すると、送受信部11が通信ネットワーク2を介して制御装置50へ、自端末の端末IDを含み、宛先リストを要求する旨が示された宛先リスト要求を送信する(ステップS21)。これにより、制御装置50の送受信部51は、宛先リスト要求を受信する。
続いて、記憶・読出部59は、宛先リスト要求元の端末10の端末IDを検索キーとして、宛先リスト管理テーブル(図9(C)参照)を検索し、宛先リストの要求元の端末10が宛先として指定することができる宛先候補の端末10の端末IDを抽出する(ステップS22)。また、記憶・読出部59は、抽出された端末IDを検索キーとして、端末管理テーブル(図9(B)参照)を検索し、宛先名を読み出す。制御装置50の送受信部51は、記憶・読出部59によって読み出された宛先候補の端末10の端末IDと、宛先名を、宛先リスト要求元の端末10へ送信する(ステップS23)。
宛先リスト要求元の端末10の送受信部11が宛先リスト情報を受信すると、端末10の表示制御部17は、宛先リスト情報に含まれる端末ID、及び宛先名に基づいて、指定可能な宛先候補名を反映させた宛先リストをディスプレイ120に表示させる(図3参照)(ステップS24)。
本発明の一実施形態によると、宛先リストへ宛先候補を追加したり、宛先リストから宛先候補を削除する場合、端末10は、追加又は削除する宛先候補の端末10の端末ID、及び自端末の端末IDを含む宛先リスト管理テーブルの更新要求を制御装置50へ送信する(ステップS25)。更新要求を受信した制御装置50では、管理部53による要求に基づいて、送受信部51が宛先リスト管理テーブルの更新要求を共通管理装置60へ送信する(ステップS26−1)。この更新要求には、更新要求元の端末10の端末ID、及び、追加又は削除する宛先候補の端末10の端末IDが含まれている。共通管理装置60の記憶・読出部69は、宛先リスト管理テーブルにおいて、更新要求元の端末10の端末IDに関連付けられる宛先候補の端末IDとして、更新要求に含まれる追加する宛先候補の端末IDを追加する。或いは、共通管理装置60の記憶・読出部69は、宛先リスト管理テーブルにおいて、更新要求元の端末10の端末IDに関連付けられている宛先候補の端末IDの中から、更新要求に含まれる削除する宛先候補の端末IDを削除する。
その後、共通管理装置60の送受信部61は、宛先リスト管理テーブルの更新内容を、通信システム1を構成する各制御装置(50x,50y,50z)へ送信する。各制御装置(50x,50y,50z)の送受信部51が更新内容を受信すると、各制御装置50の記憶・読出部59は、更新内容に基づいて、自制御装置の宛先リスト管理テーブルを更新する。これにより、各制御装置(50x,50y,50z)側の宛先リスト管理テーブルは、共通管理装置60側の宛先リスト管理テーブルと同期する(ステップS26−2−1,S26−2−…)。
(稼働状態管理)
続いて、図12を用いて、ノード間連携処理の一例として、管理システム5を構築する各制御装置(50x,50y,50z)において管理されている端末10の稼働状態を、制御装置(50x,50y,50z)間で同期する処理について説明する。図12は、制御装置間で稼働状態を同期する処理を示したシーケンス図である。
端末10(ここでは、端末10aaとする)が、制御装置50(ここでは、制御装置50xとする)へログインすると、制御装置50xの検索部54は、宛先候補の端末10(ここでは、端末(10bb,10cc)とする)をノード検索する(ステップS41−1,S41−2)。このノード検索は、自制御装置と接続していない宛先候補の端末10がどの制御装置50と接続しているかを把握するために実行される処理である。従って、ノード検索は、宛先候補の端末10のうち、自制御装置と接続していない端末10に対して実行される。
ノード検索を行う場合、制御装置50xの送受信部51は、検索部54による要求に基づいて、他の制御装置(50y、50z)へ、ノード検索用の検索情報を送信する。この検索情報には、自制御装置と接続している端末10aaの端末ID、及び、自制御装置と接続していない宛先候補の端末(10bb,10cc)の端末IDが含まれている。
制御装置(50y,50z)の送受信部51が検索情報を受信すると、各セッション制御部58は、検索情報に含まれている端末IDによって識別される端末(10bb,10cc)が自制御装置と接続しているか否かを判断する(ステップS42−1,S42−2)。端末10との接続を判断する方法としては、公知の方法が用いられ、特に限定されないが、例えば、セッションseiにおいて、端末10から定期的に送られてくる情報を最後に受信してから所定の閾値を超える時間経過したか否かに基づいて判断する方法が挙げられる。セッション制御部58によって、端末IDによって識別される端末(10bb,10cc)が自制御装置と接続していないと判断された場合には(ステップS42−1,S42−2のNO)、制御装置50は、検索情報の送信元の制御装置50へ応答せずに処理を終了する。以下、セッション制御部58によって、端末IDによって識別される端末(10bb,10cc)が自制御装置と接続していると判断された場合(ステップS42−1,S42−2のYES)について説明を続ける。
各制御装置(50y,50z)の記憶・読出部59は、検索情報に含まれている宛先候補の端末10のうち自制御装置と接続している端末(10bb又は10cc)の端末10の端末IDに対応する稼働状態を、稼働状態管理テーブル(図9(F)参照)から読み出す(ステップS43−1,S43−2)。
続いて、制御装置(50y,50z)の送受信部51は、検索情報に対する応答として、自制御装置に接続している端末(10bb又は10cc)の端末IDと、ステップS43−1又はS43−2で読み出された稼働状態を含む通知を制御装置50xへ送信する(ステップS44−1,S44−2)。制御装置50xの送受信部51が各通知を受信すると、検索部54は、通知の送信元の制御装置50を、通知に含まれる端末IDによって識別される端末(10bb又は10cc)の接続先として特定する。続いて、送受信部11は、ログインした端末10aaへ、受信した各通知を送信する(ステップS45−1,S45−2)。端末10aaの送受信部11がこの通知を受信すると、表示制御部17は、通知に含まれている宛先候補の端末(10bb,10cc)の端末ID及び稼働状態に基づいて、宛先リスト(図3参照)における各宛先候補の端末(10bb又は10cc)の稼働状態を示すアイコンを更新する(ステップS46−1,S46−2)。
一方、制御装置50xでは、管理部53による要求に基づいて、記憶・読出部59が、自制御装置の稼働状態管理テーブルにおいて、制御装置(50y,50z)から送られてきた各通知に含まれている(端末10bb,10cc)の各端末IDに関連付けて、各通知に含まれている各稼働状態を記憶する(ステップS47−1,S47−2)。これにより、制御装置50xでは、自制御装置に接続している端末10aaに対する宛先候補の端末(10bb,10cc)の稼働状態を把握できるようになる。
また、制御装置50xの記憶・読出部59は、自制御装置に接続する端末10aaの端末IDに対応する稼働状態を稼働状態管理テーブルから読み出す(ステップS48)。制御装置50xの送受信部51は、宛先候補の端末(10bb,10cc)の接続先である制御装置(50y,50z)へ、端末10aaの端末ID及びステップS48で読み出した稼働状態を含む通知を送信する(ステップS49−1,S49−2)。制御装置(50y,50z)の送受信部51がそれぞれ通知を受信すると、自制御装置と接続する各端末(10bb,10cc)へ、受信した通知を送信する(ステップS50−1,S50−2)。端末(10bb,10cc)の送受信部11がこの通知を受信すると、表示制御部17は、通知に含まれている端末10aaの端末ID及び稼働状態に基づいて、宛先リストにおける端末10aaの稼働状態を示すアイコンを更新する(ステップS51−1,S51−2)。
また、制御装置(50y,50z)では、管理部53による要求に基づいて、記憶・読出部59が、自制御装置の稼働状態管理テーブルにおいて、制御装置50xから送られてきた通知に基づいて、端末10aaの稼働状態を更新する(ステップS52−1,S52−2)。これにより、制御装置(50y又は50z)では、制御装置50xと接続している端末10aaの稼働状態を把握できるようになる。
なお、自制御装置に接続している端末10の稼働状態が更新される度に、各制御装置及び各端末は、ステップS43−1乃至S47−1の処理、ステップS43−2乃至S47−2の処理、或いは、ステップS48乃至S52−1,2の処理を繰り返す。これにより、各制御装置50、端末10、あるいは、端末の利用者は、各端末10の最新の稼働状態を把握できるようになる。
(セッションsed確立)
続いて、図13を用いて、セッションsedを確立するために端末10間で情報を送信する処理を説明する。なお、図13は、端末10間で情報を送信する処理を示したシーケンス図である。以下、制御装置50xと接続している端末10aaが、制御装置50yと接続している端末10bbを宛先として通信の開始要求をする場合について説明する。
端末10aaは、利用者による操作ボタン108の操作に応じて、送受信部11によって、制御装置50xに対し、通信の開始要求を送信する(ステップS61)。この通信の開始要求には、通信の開始要求元の端末10aaの端末ID「01aa」、及び宛先の端末10bbの端末ID「01bb」が含まれている。
制御装置50xの送受信部51が開始要求を受信すると、記憶・読出部59は、管理部53による要求に基づいて、稼働状態管理テーブル(図9(F)参照)において、開始要求元の端末10aaの端末IDに関連付けて、稼働状態「オンライン(通話中)」を記憶する(ステップS62)。更新された稼働状態「オンライン(通話中)」は、上記のステップS48乃至S52−1,2の処理により、端末10aaの宛先候補の端末10に通知される。
また、管理部53は、図2の状態遷移図によって示される状態遷移のルールに従って、端末10の通信の状態を管理する(ステップS63−1)。すなわち、ステップS61において、制御装置50xが受信した開始要求に基づいて、管理部53は、開始要求元の端末10aaの新たな状態を示す状態情報を「Inviting」に決定し、宛先の端末10bbの新たな状態を示す状態情報を「Invited」に決定する。そして、開始要求元及び宛先の端末(10aa,10bb)の各端末IDに関連付けて端末(10aa,10bb)の新たな状態を示す各状態情報「Inviting,Invited」を含む端末管理テーブルの更新要求を共通管理装置60へ送信する。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、更新要求に含まれる各端末IDと、各状態情報とを関連付けて記憶する。その後、ステップS8−2−1,S8−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS63−2−1,S63−2−2,S63−2−…)。
続いて、セッション制御部58は、端末(10aa,10bb)と接続してる中継装置(30xx,30yy)の中から、セッションsedにおいて起点となる中継装置30を選択する(ステップS64)。端末(10aa,10bb)間で確立されるセッションsedにおいては、2つの中継装置(30xx,30yy)が、コンテンツデータを中継する。そのうちステップS64で選択される中継装置30は、ノード(端末10又は中継装置30)間のセッションにおけるコンテンツデータの中継先(宛先)の全体を管理する。すなわち、選択された中継装置30を起点として、他の中継装置30に対してコンテンツデータの中継先を示す情報等が提供される。なお、ステップS64において中継装置30を選択する方法は特に限定されないが、本実施形態では、開始要求元の端末10が接続している中継装置30xxが選択されるものとして説明を続ける。
続いて、管理部53は、端末(10aa,10bb)間で確立されるセッションsedに係る情報を管理する(ステップS65−1)。まず、管理部53は、端末(10aa,10bb)間で確立されるセッションsedを識別するためのセッションIDを生成する。この場合、管理部53は、ステップS64において選択された起点となる中継装置30xxを示す情報(例えば、「001xx」)を含めたセッションID(例えば、「conf01.001xx」)を生成する。続いて、共通管理装置60の送受信部61は、管理部53による要求に基づいて、生成されたセッションID、及び、開始要求元及び宛先の端末(10aa,10bb)の端末IDを含むセッション管理テーブル(図9(D)参照)の更新要求を共通管理装置60へ送信する。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側のセッション管理テーブルにおいて、更新要求に含まれるセッションID、及び端末IDを関連付けて記憶する。その後、送受信部61は、セッション管理テーブルの更新内容を、通信システム1を構成する各制御装置(50x,50y,50z)へ送信する。各制御装置(50x,50y,50z)の送受信部51が更新内容を受信すると、各制御装置50の記憶・読出部59は、更新内容に基づいて、自制御装置のセッション管理テーブルを更新する。これにより、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側のセッション管理テーブルと同期する(ステップS65−2−…)。
また、制御装置50xの送受信部51は、開始要求元の端末10aaへ、ステップS65−1において生成されたセッションIDを送信する(ステップS66)。さらに、制御装置50xの送受信部51は、開始要求元の端末10aaから送られてきた開始要求、及び上記のセッションIDを宛先の端末10bbへ送信する(ステップS67)。なお、制御装置50x側の端末管理テーブル(図9(B)参照)は、共通管理装置60から送られてきた端末10bbのIPアドレスに基づいて、共通管理装置60側の端末管理テーブルと同期しており、宛先の端末10bbのIPアドレスを管理している。このため、制御装置50xの送受信部51は、宛先の端末10bbの接続先である制御装置50yにIPアドレスを問い合わせたり、制御装置50yを介することなく、開始要求等を直接、端末10bbへ送信することができる。
宛先の端末10bbの送受信部11が開始要求を受信すると、通信制御部13は、スピーカ115から呼出音を出力させる。続いて、端末10bbの送受信部11は、呼出音を出力している旨を示す呼出情報を、自端末の接続先である制御装置50yへ送信する(ステップS68)。この呼出情報には、開始要求元及び宛先の端末(10aa,10bb)の端末IDが含まれている。
制御装置50yの送受信部51が呼出情報を受信すると、管理部53は、図2の状態遷移図によって示される状態遷移のルールに従って、端末10の通信の状態を管理する(ステップS69−1)。すなわち、ステップS68において、制御装置50yが受信した呼出情報に基づいて、管理部53は、開始要求元の端末10aaの新たな状態を示す状態情報を「Calling」に決定し、宛先の端末10bbの新たな状態を示す状態情報を「Ringing」に決定する。そして、開始要求元及び宛先の端末(10aa,10bb)の各端末IDに関連付けて端末(10aa,10bb)の新たな状態を示す各状態情報「Calling,Ringing」を含む端末管理テーブルの更新要求を共通管理装置60へ送信する。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、更新要求に含まれる各端末IDと、各状態情報とを関連付けて記憶する。その後、ステップS8−2−1,S8−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS69−2−1,S69−2−2,S69−2−…)。
続いて、制御装置50yの送受信部51は、宛先の端末10bbから送られてきた呼出情報を開始要求元の端末10aaへ送信する(ステップS70)。なお、制御装置50y側の端末管理テーブル(図9(B)参照)は、共通管理装置60から送られてきた情報に基づいて、共通管理装置60側の端末管理テーブルと同期しているため、開始要求元の端末10aaのIPアドレスを管理している。このため、制御装置50yの送受信部51は、端末10aaの接続先である制御装置50xに宛先情報を問い合わせたり、制御装置50xを介することなく、呼出情報を直接、端末10aaへ送信することができる。
一方、宛先の端末10bbでは、受付部12が利用者の入力操作に基づいて通信の開始の許可を受け付けると、送受信部11が通信の開始の許可を示す開始許可情報を、自端末の接続先である制御装置50yへ送信する(ステップS71)。この開始許可情報には、開始要求元及び宛先の端末(10aa,10bb)の端末IDが含まれている。
制御装置50yの送受信部51が開始許可情報を受信すると、ステップS69−1と同様の処理により、管理部53は、受信した開始許可情報に基づいて、開始要求元及び宛先の端末(10aa,10bb)の新たな状態を示す状態情報を「Accepted」に決定する。そして、開始要求元及び宛先の端末(10aa,10bb)の各端末ID、端末(10aa,10bb)の新たな状態を示す各状態情報「Accepted」を含む端末管理テーブルの更新要求を共通管理装置60へ送信する(ステップS72−1)。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、更新要求に含まれる各端末IDと、各状態情報とを関連付けて記憶する。その後、ステップS8−2−1,S8−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS72−2−1,S72−2−2,S72−2−…)。
続いて、制御装置50yの送受信部51は、ステップS70と同様の処理により、宛先の端末10bbから送られてきた開始許可情報を開始要求元の端末10aaへ送信する(ステップS73)。
続いて、図14を用いて、開始要求元及び宛先の各端末(10aa,10bb)が、接続先の各中継装置(30xx,30yy)へ、コンテンツデータの中継の開始を要求する処理について説明する。図14の各図は、コンテンツデータの中継を開始する処理を示したシーケンス図である。
まず、図14(A)を用いて、端末(10aa,10bb)間のコンテンツデータの中継を開始するために、端末10aaと中継装置30xx間のセッションsedを確立する処理について説明する。開始要求元の端末10aaの送受信部11は、開始許可情報を受信した後(ステップS73参照)、コンテンツデータの中継の開始の要求を示す中継要求情報を、制御装置50xへ送信する(ステップS81)。この中継要求情報には中継要求元の端末10aaの端末ID、及び、ステップS66において受信したセッションID「conf01.001xx」が含まれている。
制御装置50xの送受信部51が中継要求情報を受信すると、管理部53は、受信した中継要求情報に基づいて、ステップS63−1と同様の処理により、中継要求元の端末10aaの新たな状態を示す状態情報を「Busy」に決定する。そして、中継要求元の端末10aaの端末ID、及び、端末10aaの新たな状態を示す状態情報「Busy」を含む端末管理テーブルの更新要求を共通管理装置60へ送信する(ステップS82−1)。
共通管理装置60の送受信部61がこれらの情報を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、更新要求に含まれる端末IDと、状態情報とを関連付けて記憶する。また、ステップS8−2−1,S8−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS82−2−1,S82−2−…)。
続いて、制御装置50xの送受信部51は、自制御装置の端末管理テーブル(図9(B)参照)において、中継要求元の端末10aaの端末IDに関連付けられている中継装置ID「001xx」に基づいて、この中継装置IDによって識別される中継装置30xxへ、中継要求元の端末10aaから送られてきた中継要求情報を送信する(ステップS83)。中継装置30xxの送受信部31は、中継要求情報に対する応答として、中継を許可する旨を示す中継許可情報を制御装置50xへ送信する(ステップS84)。制御装置50xの送受信部51は、中継装置30xxから送られてきた中継許可情報を受信すると、中継要求元の端末10aaへ中継許可情報を送信する(ステップS85)。
中継装置30xxの送受信部31が中継要求情報を受信すると、中継装置30xx側では、中継要求元の端末10aaが、中継要求情報に含まれるセッションIDによって識別されるセッションに参加することを把握できる。これにより、中継装置30xxは、端末10aaから送られてきたコンテンツデータを、端末10aaと同じセッションに参加する他の端末10への中継をし始める一方で、他の端末10から送られてきたコンテンツデータを端末10aaへ送信し始める。このようにして、端末10aaと中継装置30xxとの間のセッションsedが確立される。
続いて、図14(B)を用いて、端末(10aa,10bb)間のコンテンツデータの中継を開始するために、端末10bbと中継装置30yyとの間及び中継装置(30xx,30yy)間のセッションsedを確立する処理について説明する。端末10bbの送受信部11は、開始許可情報を送信した後(ステップS71参照)、コンテンツデータの中継の開始の要求を示す中継要求情報を、制御装置50yへ送信する(ステップS91)。この中継要求情報には中継要求元の端末10bbの端末ID、及び、ステップS67において受信したセッションID「conf01.001xx」が含まれている。
制御装置50yの送受信部51が中継要求情報を受信すると、ステップS69−1と同様の処理により、管理部53は、受信した中継要求情報に基づいて、中継要求元の端末10bbの新たな状態を示す状態情報を「Busy」に決定する。そして、中継要求元の端末10bbの端末ID、及び、端末10bbの新たな状態を示す状態情報「Busy」を含む端末管理テーブルの更新要求を共通管理装置60へ送信する(ステップS92−1)。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、更新要求に含まれる端末IDと、状態情報とを関連付けて記憶する。その後、ステップS8−2−1,S8−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS92−2−1,S92−2−…)。
続いて、制御装置50yの送受信部51は、自制御装置の端末管理テーブル(図9(B)参照)において、中継要求元の端末10bbの端末IDに関連付けられている中継装置ID「001yy」に基づいて、この中継装置IDによって識別される中継装置30yyへ、中継要求元の端末10bbから送られてきた中継要求情報を送信する(ステップS93)。中継要求情報に含まれるセッションID「conf01.001xx」には、起点となる中継装置30xxを示す情報「001xx」が含まれているため、中継要求情報を受信した中継装置30yy側では、このセッションsedにおいて、起点となる中継装置30は中継装置30xxであることを把握することができる。そこで、中継装置30yyの送受信部31は、制御装置50yから送られてきた中継要求情報を、起点となる中継装置30xxへ送信する(ステップS94)。
中継装置30xxの送受信部31は、中継要求情報に対する応答として、中継を許可する旨を示す中継許可情報を中継装置30yyへ送信する(ステップS95)。中継装置30yyの送受信部31は、中継要求情報に対する応答として、中継を許可する旨を示す中継許可情報を制御装置50yへ送信する(ステップS96)。制御装置50yの送受信部51は、中継装置30yyから送られてきた中継許可情報を受信すると、中継要求元の端末10bbへ中継許可情報を送信する(ステップS97)。
中継装置30xxの送受信部31が中継要求情報を受信すると、中継装置30xx側では、中継装置30yyと接続している端末10bbが、中継要求情報に含まれるセッションIDによって識別されるセッションに参加することを把握できる。中継装置30xxでは、セッションsedに参加する各端末10がどの中継装置30に接続しているかに基づいて、コンテンツデータの伝送ルートを決定して、中継装置30yyへ通知する。例えば、中継装置30xxは、端末10bbから送られてきたコンテンツデータを中継装置30xxへ送信し、中継装置30xxから送られてきたコンテンツデータを端末10bbへ送信する旨の要求を、中継装置30yyへ送信する。これにより、中継装置30yyは、端末10bbから送られてきたコンテンツデータを、中継装置30xxへ送信し始める一方で、中継装置30xxから送られてきた端末10aaのコンテンツデータを端末10bbへ送信し始める。このようにして、端末10bbと中継装置30yyとの間、及び中継装置(30xx,30yy)間のセッションsedが確立される。
端末10aaと中継装置30xxとの間、端末10bbと中継装置30yyとの間、及び中継装置(30xx,30yy)間のセッションsedのすべてが確立されると、端末(10aa,10bb)間で相互にコンテンツデータを送信できるようになる。
続いて、図15を用いて、端末10aaと中継装置30xxとの間、端末10bbと中継装置30yyとの間、及び中継装置(30xx,30yy)間のセッションsedが確立された後、中継装置30zzと接続している端末10ccが、上記のセッションsedに参加する処理について説明する。図15は、端末10がセッションsedに参加する処理を示したシーケンス図である。
まず、セッションsedに参加している端末10aaにおいて、受付部12が、端末10ccをセッションsedに招待する旨の要求を利用者から受け付けると、送受信部11は、端末10ccをセッションsedに招待する旨の招待情報を、自端末の接続先である制御装置50xへ送信する(ステップS101)。招待情報には、セッションsedのセッションID、及び、招待する端末10ccの端末IDが含まれている。
制御装置50xの送受信部51は、端末10aaから送られてきた招待情報を受信すると、招待情報に含まれている端末IDに基づいて、端末10ccへ招待情報を送信する(ステップS102)。なお、制御装置50x側の端末管理テーブル(図9(B)参照)は、共通管理装置60から送られてきた情報に基づいて、共通管理装置60側の端末管理テーブルと同期しており、宛先の端末10ccのIPアドレスを管理している。このため、制御装置50xの送受信部51は、宛先の端末10ccの接続先である制御装置50zに宛先情報を問い合わせたり、制御装置50zを介することなく、招待情報を直接、端末10ccへ送信することができる。
端末10ccの送受信部11は、制御装置50xから送られてきた招待情報を受信すると、利用者による要求に基づいて、端末10aa側が招待したセッションsedに参加する要求を示す参加要求情報を、自端末の接続先である制御装置50zへ送信する(ステップS103)。この参加要求情報には、参加するセッションsedのセッションIDが含まれている。
制御装置50zの送受信部51が参加要求情報を受信すると、管理部53は、受信した参加要求情報に基づいて、ステップS63−1と同様の処理により、参加要求元の端末10ccの新たな状態を示す状態情報を「Accepted」に決定する。そして、参加要求元の端末10ccの端末ID、及び端末10ccの新たな状態を示す状態情報「Accepted」を含む端末管理テーブルの更新要求を共通管理装置60へ送信する(ステップS104−1)。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、更新要求に含まれる端末IDと、状態情報とを関連付けて記憶する。また、ステップS8−2−1,S8−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS112−2−1,S112−2−…)。
続いて、管理部53は、端末(10aa,10bb,10cc)間で確立されるセッションsedに係る情報を管理する(ステップS105−1)。この場合、送受信部51は、管理部53による要求に基づいて、参加要求情報に含まれるセッションID、及び、参加要求元の端末10ccの端末IDを含むセッション管理テーブルの更新要求を共通管理装置60へ送信する。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側のセッション管理テーブル(図9(D)参照)において、更新要求に含まれるセッションID、及び端末IDを関連付けて記憶する。その後、S65−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側のセッション管理テーブルは、共通管理装置60側のセッション管理テーブルと同期する(ステップS105−2−…)。
続いて、制御装置50zの送受信部51は、参加の許可を示す参加許可情報を、参加要求元の端末10ccへ送信する(ステップS106)。
参加要求元の端末10ccの送受信部11は、参加許可情報を受信した後、コンテンツデータの中継の開始の要求を示す中継要求情報を、制御装置50zへ送信する(ステップS111)。この中継要求情報には中継要求元の端末10ccの端末ID、及び、ステップS102において受信したセッションID「conf01.001xx」が含まれている。
制御装置50zの送受信部51が中継要求情報を受信すると、管理部53は、受信した中継要求情報に基づいて、ステップS63−1と同様の処理により、中継要求元の端末10ccの新たな状態を示す状態情報を「Busy」に決定する。そして、中継要求元の端末10ccの端末ID、及び端末10ccの新たな状態を示す状態情報「Busy」を含む端末管理テーブルの更新要求を共通管理装置60へ送信する(ステップS112−1)。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、更新要求に含まれる端末IDと、状態情報とを関連付けて記憶する。続いて、ステップS8−2−1,S8−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS112−2−1,S112−2−…)。
続いて、制御装置50zの送受信部51は、自制御装置の端末管理テーブル(図9(B)参照)において、中継要求元の端末10ccの端末IDに関連付けられている中継装置ID「001zz」に基づいて、この中継装置IDによって識別される中継装置30zzへ、中継要求元の端末10ccから送られてきた中継要求情報を送信する(ステップS113)。この中継要求情報には、端末10ccから送られてきた中継要求情報に、参加要求元の端末10ccの端末IDが追加されている。
中継要求情報に含まれるセッションID「conf01.001xx」には、起点となる中継装置30を示す情報「001xx」が含まれているため、中継要求情報を受信した中継装置30zz側では、このセッションsedにおいて、起点となる中継装置30は中継装置30xxであることを把握することができる。そこで、中継装置30zzの送受信部31は、制御装置50zから送られてきた中継要求情報を、起点となる中継装置30xxへ送信する(ステップS114)。
中継装置30xxの送受信部31は、中継要求情報に対する応答として、中継を許可する旨を示す中継許可情報を中継装置30zzへ送信する(ステップS115)。中継装置30zzの送受信部31は、中継要求情報に対する応答として、中継を許可する旨を示す中継許可情報を制御装置50zへ送信する(ステップS116)。制御装置50zの送受信部51は、中継装置30zzから送られてきた中継許可情報を受信すると、中継要求元の端末10ccへ中継許可情報を送信する(ステップS117)。
中継装置30xxの送受信部31が中継要求情報を受信すると、中継装置30xx側では、中継装置30zzと接続している端末10bbが、中継要求情報に含まれるセッションIDによって識別されるセッションに参加することを把握できる。中継装置30xxでは、セッションsedに参加する端末10がどの中継装置30に接続しているかに基づいて、コンテンツデータの伝送ルートを決定して、中継装置(30zz,30yy)へ通知する。例えば、中継装置30xxは、端末10ccから送られてきたコンテンツデータを中継装置(30xx,30yy)へ送信し、中継装置(30xx,30zz)から送られてきた端末(10aa,10bb)のコンテンツデータを端末10ccへ送信する旨の要求を、中継装置30zzへ送信する。これにより、中継装置30zzは、端末10ccから送られてきたコンテンツデータを、中継装置(30xx,30yy)へ送信し始める一方で、中継装置30xxから送られてきた端末10aaのコンテンツデータを端末10bbへ送信し始める。
また、中継装置30xxは、端末10bbから送られてきたコンテンツデータを中継装置30zzへ送信し、中継装置30zzから送られてきた端末10ccのコンテンツデータを端末10bbへ送信する旨の要求を、中継装置30yyへ送信する。これにより、中継装置30yyは、端末10bbから送られてきたコンテンツデータを、中継装置30zzへ送信し始める一方で、中継装置30zzから送られてきた端末10ccのコンテンツデータを端末10bbへ送信し始める。
このようにして、端末10ccと中継装置30zzとの間、及び中継装置30zzと中継装置(30xx,30yy)との間のセッションsedが確立される。
端末10ccと中継装置30zzとの間、及び中継装置30zzと中継装置(30xx,30yy)との間のセッションsedのすべてが確立されると、端末(10aa,10bb,10cc)間で相互にコンテンツデータを送信できるようになる。
(セッションsedからの退出)
続いて、図16(A)を用いて、端末(10aa,10bb,10cc)間で確立されたセッションsedに参加している端末10aaが、セッションsedから退出する処理について説明する。図16の各図は、端末10aaが、セッションsedから退出する処理を示したシーケンス図である。
まず、端末10aaの送受信部11は、利用者による要求に基づいて、通信の終了の要求を示す終了要求情報を制御装置50xへ送信する(ステップS121)。この終了要求情報には端末10aaが参加しているセッションsedのセッションID「conf01.001xx」が含まれている。
制御装置50xの送受信部51が終了要求情報を受信すると、管理部53は、受信した終了要求情報に基づいて、ステップS63−1と同様の処理により、終了要求元の端末10aaの新たな状態を示す状態情報を「None」に決定する。そして、終了要求元の端末10aaの端末ID、及び端末10aaの新たな状態を示す状態情報「None」を含む端末管理テーブルの更新要求を共通管理装置60へ送信する(ステップS122−1)。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、更新要求に含まれる端末IDと、状態情報とを関連付けて記憶する。また、ステップS8−2−1,S8−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS122−2−1,S122−2−…)。
続いて、管理部53は、端末10aaが退出するセッションsedに係る情報を管理する(ステップS123−1)。この場合、送受信部51は、管理部53による要求に基づいて、終了要求情報に含まれるセッションID、及び、セッションsedから退出する端末10aaの端末IDを含むセッション管理テーブルの更新要求を共通管理装置60へ送信する。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側のセッション管理テーブル(図9(D)参照)において、更新要求に含まれているセッションIDに関連づけられている端末10aaの端末IDを削除する。その後、ステップS65−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側のセッション管理テーブルと同期する(ステップS123−2−…)。
続いて、制御装置50xの送受信部51は、自制御装置の端末管理テーブル(図9(B)参照)において、終了要求元の端末10aaの端末IDに関連付けられている中継装置ID「001xx」に基づいて、この中継装置IDによって識別される中継装置30xxへ、終了要求元の端末10aaから送られてきた終了要求情報を送信する(ステップS124)。
中継装置30xxの送受信部31が終了要求情報を受信すると、中継装置30xx側では、端末(10aa,10bb,10cc)間で確立されているセッションsedから端末10aaが退出することを把握できる。中継装置30xxでは、端末10aaが退出後もセッションsedに参加する端末(10bb、10cc)がどの中継装置30に接続しているかに基づいて、コンテンツデータの伝送ルートを決定して、中継装置(30yy,30zz)へ通知する。例えば、中継装置30xxは、端末10bbから送られてきたコンテンツデータを中継装置30zzへ送信し、中継装置30zzから送られてきた端末10ccのコンテンツデータを端末10bbへ送信する旨の要求を、中継装置30yyへ送信する。また、中継装置30xxは、端末10ccから送られてきたコンテンツデータを中継装置30yyへ送信し、中継装置30yyから送られてきた端末10bbのコンテンツデータを端末10ccへ送信する旨の要求を、中継装置30zzへ送信する。
これにより、端末10aaは、セッションsedを切断する一方で(ステップS125)、端末(10bb,10cc)間では継続してコンテンツデータを相互に送信することができる。
続いて、図16(B)を用いて、端末10aaが退出した後、端末(10bb,10cc)間で確立されているセッションsedから、端末10bbが退出する処理について説明する。まず、端末10bbの送受信部11は、利用者による要求に基づいて、通信の終了の要求を示す終了要求情報を制御装置50yへ送信する(ステップS131)。この終了要求情報には端末10bbが参加しているセッションsedのセッションID「conf01.001xx」が含まれている。
制御装置50yの送受信部51が終了要求情報を受信すると、管理部53は、受信した終了要求情報に基づいて、ステップS63−1と同様の処理により、終了要求元の端末10bbの新たな状態を示す状態情報を「None」に決定する。そして、終了要求元の端末10bbの端末ID、及び端末10bbの新たな状態を示す状態情報「None」を含む端末管理テーブルの更新要求を共通管理装置60へ送信する(ステップS132−1)。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、更新要求に含まれる端末IDと、状態情報とを関連付けて記憶する。その後、ステップS8−2−1,S8−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS132−2−1,S132−2−…)。
続いて、管理部53は、端末10bbが退出するセッションsedに係る情報を管理する(ステップS133−1)。この場合、送受信部51は、管理部53による要求に基づいて、終了要求情報に含まれるセッションID、及び、セッションsedから退出する端末10bbの端末IDを含むセッション管理テーブルの更新要求を共通管理装置60へ送信する。
共通管理装置60の送受信部61が更新要求を受信すると、記憶・読出部69は、共通管理装置60側のセッション管理テーブル(図9(D)参照)において、更新要求に含まれるセッションIDに関連づけられている端末10bbの端末IDを削除する。その後、ステップS65−2−…の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側のセッション管理テーブルと同期する(ステップS133−2−…)。
続いて、制御装置50yの送受信部51は、自制御装置の端末管理テーブル(図9(B)参照)において、終了要求元の端末10bbの端末IDに関連付けられている中継装置ID「001yy」に基づいて、この中継装置IDによって識別される中継装置30yyへ、終了要求元の端末10bbから送られてきた終了要求情報を送信する(ステップS134)。終了要求情報に含まれるセッションID「conf01.001xx」には、起点となる中継装置30xxを示す情報「001xx」が含まれているため、中継要求情報を受信した中継装置30yy側では、このセッションsedにおいて、起点となる中継装置30は中継装置30xxであることを把握することができる。そこで、中継装置30yyの送受信部31は、制御装置50yから送られてきた終了要求情報を、起点となる中継装置30xxへ送信する(ステップS135)。
中継装置30xxの送受信部31が終了要求情報を受信すると、中継装置30xx側では、端末(10bb,10cc)間で確立されているセッションsedから端末10bbが退出することを把握できる。中継装置30xxでは、端末10aaが退出後もセッションsedに参加する端末10ccがどの中継装置30に接続しているかに基づいて、コンテンツデータの伝送ルートを決定して、中継装置(30yy,30zz)へ通知する。例えば、中継装置30xxは、端末10bbとの間のセッションsed、及び中継装置30xxとの間のセッションsedを切断する旨の要求を中継装置30yyへ送信する(ステップS136)。また、中継装置30xxは、端末10ccから送られてきた端末10ccのコンテンツデータを端末10ccへ返送する旨の要求を中継装置30zzへ送信する。これにより、端末10bbは、セッションsedから切断する一方で(ステップS137)、端末10bbは、自端末が送信したコンテンツデータを、中継装置30zzを介して自端末で受信するセッションsedを継続することができる。
(ログアウト処理)
まずは、図17を用いて、端末10が制御装置50からログアウトする処理について説明する。図17は、端末10のログアウト処理を示したシーケンス図である。以下、端末10aaが、端末(10bb,10cc)との間のセッションsedから退出した後、制御装置50xからログアウトする処理について説明する。
端末10aaは、利用者による要求に基づいて、送受信部11によって、接続先の制御装置50xに対し、ログアウト要求を送信する(ステップS141)。制御装置50xの送受信部51は、ログアウト要求を受信すると、管理部53による要求に基づいて、ログアウトする端末10aaの端末IDに関連付けられている地域ID、IPアドレス、及び中継装置IDを端末管理テーブル(図9(B)参照)から削除する要求を共通管理装置60へ送信する(ステップS142−1)。
共通管理装置60の送受信部61がこの要求を受信すると、記憶・読出部69は、共通管理装置60側の端末管理テーブル(図9(B)参照)において、受信した端末IDに関連づけられている地域ID、IPアドレス、及び中継装置IDを削除する。その後、ステップS8−2−1,S8−2−…と同様の処理が実行されることで、各制御装置(50x,50y,50z)側の端末管理テーブルは、共通管理装置60側の端末管理テーブルと同期する(ステップS142−2−…)。
続いて、記憶・読出部59は、管理部53による要求に基づいて、稼働状態管理テーブル(図9(F)参照)において、ログアウト要求元の端末10aaの端末IDに関連付づけて、稼働状態「オフライン」を記憶する(ステップS143)。更新された稼働状態「オフライン」は、上記のステップS48乃至S52−1,2の処理により、端末10aaの宛先候補の端末10に通知される。
また、管理部53は、制御装置50xの接続管理テーブル(図9(G))において、ログアウト要求元の端末10aaの端末IDが記録されているレコードを削除する(ステップS144)。これにより、接続管理テーブルにおいて、端末10aaの端末ID、及び、この端末IDに関連付けられている中継装置接続ID、中継装置接続パスワードが削除される。
続いて、制御装置50xの送受信部51は、ログアウトが完了した旨を示すログアウト完了情報をログアウト要求元の端末10aaへ送信する(ステップS145)。
また、端末10aaは、中継装置30xxに対してログアウト要求を送信する(ステップS146)。中継装置30xxでは、端末10aaのログアウトに伴う処理を完了するとログアウト完了情報を端末10aaへ送信する(ステップS147)。
以上の処理により、端末10aaは、制御装置50x及び中継装置30xxからのログアウトを完了する。
<<実施形態の主な効果>>
続いて、上記の実施形態の主な効果を説明する。
管理システム5(制御システムの一例)は、端末10間でコンテンツデータを送信するためのセッションsedを制御する制御装置50を複数備えている。複数の制御装置50における各制御装置(50x、50y、50z)の送受信部51(宛先情報送信手段の一例)は、自制御装置と接続している端末10(第1の通信端末の一例)への通信ネットワーク2上における宛先を示すIPアドレス(宛先情報の一例)を、このIPアドレスを管理する共通管理装置60(管理装置の一例)へ送信する。また、各制御装置(50x、50y、50z)の送受信部51(宛先情報受信手段の一例)は、共通管理装置60が送信した、他の制御装置50と接続している端末10(第2の通信端末の一例)への宛先を示すIPアドレスを受信する。
また、各制御装置(50x、50y、50z)の送受信部51(端末間情報受信手段の一例)は、端末10間のセッションsedを確立するために、自制御装置と接続している端末10と他の制御装置と接続している端末との間で送信される情報のうち、自制御装置と接続している端末10が送信した通信の開始要求等の情報(端末間情報の一例)を受信する。また、各制御装置(50x、50y、50z)の送受信部51(端末間情報送信手段の一例)は、受信した開始要求を、送受信部51が先に受信した他の制御装置50と接続している端末10のIPアドレスに基づいて、他の制御装置50と接続している端末10へ送信する。
これにより、各制御装置(50x、50y、50z)は、自制御装置と接続している端末10と他の制御装置50と接続している端末10との間のセッションsedを確立する場合に、他の制御装置50を介さずに開始要求を直接、他の制御装置と接続している端末10へ送信できるようになる。これにより、他の制御装置50を介して開始要求を送信する場合と比較して、開始要求の送信経路を短縮できるので、セッションsedが確立するまでに要する時間を短縮できる。
各制御装置(50x、50y、50z)の端末管理DB5002(宛先情報管理手段の一例)は、送受信部51が受信した、他の制御装置50と接続している端末10のIPアドレスを管理する。送受信部51は、端末管理DB5002において管理されている、他の制御装置50と接続している端末10のIPアドレスに基づいて、開始要求を、他の制御装置50と接続している端末10へ送信する。このように、自制御装置の端末管理DB5002に予め記憶されているIPアドレスを用いることで、送受信部51は、開始要求を速やかに他の制御装置50と接続している端末10へ送信することができる。
各制御装置(50x、50y、50z)の送受信部51(削除要求送信手段の一例)は、端末10が自制御装置からログアウトして切断するときに、共通管理装置60の端末管理DB6002において管理されているIPアドレスから、切断する端末10のIPアドレスを削除する要求を共通管理装置60へ送信する。このように、端末10が切断する度に、端末管理DB6002において管理されているIPアドレスから、切断する端末10のIPアドレスを削除することで、この端末10が新たに任意の制御装置50と接続するときに、端末10のIPアドレスが二重に登録されることを防ぐことができる。
各制御装置(50x、50y、50z)の送受信部51(状態情報受信手段の一例)は、各端末10の状態を管理する共通管理装置60が送信した、各端末10の状態を示す各状態情報を受信する。また、各制御装置(50x、50y、50z)の管理部53(決定手段の一例)は、送受信部51が受信した開始要求と、状態情報「None」と、に基づいて、自制御装置と接続している端末10の新たな状態を示す状態情報を「Calling」に決定する。また、各制御装置(50x、50y、50z)の送受信部51(状態情報送信手段の一例)は、管理部53によって決定された自制御装置と接続している端末10の新たな状態を示す状態情報「Calling」を、共通管理装置60へ送信する。
これにより、自制御装置と接続している端末10の新たな状態を、共通管理装置60を介して、他の制御装置へ通知することが可能となる。
各制御装置50の端末管理DB5002(状態情報管理装置の一例)は、送受信部51が受信した各端末10の状態を示す状態情報を管理する。記憶・読出部59(更新手段の一例)は、送受信部51が受信した各状態情報に基づいて、端末管理DB5002において管理されている状態情報を更新する。管理部53は、端末管理DB5002において管理されている状態情報に基づいて、自制御装置と接続している端末10の新たな状態を示す状態情報を決定する。このように、端末管理DB5002に予め記憶されている状態情報を用いることで、管理部53は、自制御装置と接続している端末10の新たな状態を示す状態情報を速やかに決定することができる。
管理システム5は、端末10aa(第1の通信端末の一例)と接続している制御装置50x(第1の制御装置の一例)と、端末10bb(第2の通信端末の一例)と接続している制御装置50y(第2の制御装置の一例)と、を備えている。制御装置50xの送受信部51は、端末10aaが送信した、端末10aaと端末10bbとの間の通信の開始要求を受信し、この開始要求を端末10bbへ送信する。
制御装置50yの送受信部51は、端末10bbが送信した、端末10aaと端末10bbとの間の通信の開始要求に対する通信の開始許可(端末間情報の一例)を受信し、この開始許可を、端末10aaへ送信する。
これにより、セッションsedを確立するために用いられる情報を、端末(10aa,10bb)間で双方向に送信する場合にも、いずれか一つの制御装置50を介して上記の情報を送信できるようになるので、セッションsedの確立に要する時間を短縮することができる。
<<実施形態の補足>>
上記実施形態では、共通管理装置60が、制御装置50とは異なる装置である場合について説明したが、本発明はこのような実施形態に限定されない。他の一実施形態によると、共通管理装置60は、制御装置(50x,50y,50z)のうち、いずれか一の制御装置50に設けられていても良い。この場合、一の制御装置50は、上記の共通管理装置60の各機能部を備えている。例えば、端末10との接続数が最も多い制御装置50に共通管理装置60の各機能部を構築しておくことで、通信システム1全体として、制御装置50が共通管理装置60へアクセスするために要する時間の平均値を小さくすることができるという効果を奏する。
請求項1に掛かる発明の制御システムは、通信端末間でコンテンツデータを送信するためのセッションを制御する制御装置を複数備えており、複数の前記制御装置における各制御装置は、自制御装置と接続している第1の通信端末への通信ネットワーク上における宛先を示す宛先情報を、該宛先情報を管理する管理装置へ送信する宛先情報送信手段と、前記管理装置が送信した、前記複数の前記制御装置における他の制御装置と接続している第2の通信端末への宛先を示す各宛先情報を受信する宛先情報受信手段と、前記第1の通信端末と前記第2の通信端末との間で送信される端末間情報のうち、前記第1の通信端末が送信した前記第1の通信端末と前記第2の通信端末との間の通信の開始要求を示す前記端末間情報を受信し、または、前記第2の通信端末が送信した前記第1の通信端末と前記第2の通信端末との間の通信の開始要求に対する通信の開始許可を示す前記端末間情報を受信する端末間情報受信手段と、前記端末間情報受信手段が受信した前記第1の通信端末からの前記通信の開始要求を示す前記端末間情報を、前記宛先情報受信手段が受信した前記第2の通信端末の宛先情報に基づいて、前記第2の通信端末へ送信し、または、前記端末間情報受信手段が受信した前記第2の通信端末からの前記通信の開始許可を示す前記端末間情報を、前記第1の通信端末へ送信する端末間情報送信手段と、を有することを特徴とする。