以下、図面を用いて、第1の実施の形態を詳細に説明する。
<<通信システム1の構成例>>
図1は、第1の実施の形態における通信システム1の構成例を示す図である。図1に示される通信システム1は、通信端末10a、通信端末10b及び通信端末10c、通信端末70x及び通信端末70y、並びに、通信端末10a、通信端末10b及び通信端末10c、通信端末70x及び通信端末70yを管理する通信管理システム50及び中継装置30を含む。
図1では、3つの通信端末10a、通信端末10b及び通信端末10c、2つの通信端末70x及び通信端末70yを図示しているが、数はこれに限らない。また、通信端末10a、通信端末10b及び通信端末10cのうち、任意の通信端末を「通信端末10」と表し、通信端末70x及び通信端末70yのうち、任意の通信端末を「通信端末70」と表す。例えば、テレビ会議端末は、通信端末10の一例である。スマートフォンは、通信端末70の一例である。但し、通信端末10及び通信端末70は、通信機能を有する汎用コンピュータ、電子ホワイトボード、カーナビゲーション通信端末又は電子看板(デジタルサイネージ)等であってもよい。
通信管理システム50は、サーバ機能を備えたコンピュータである。通信端末10及び通信端末70は、当該サーバ機能に対応するクライアント機能を備える。通信端末10、通信端末70、中継装置30及び通信管理システム50は、インターネット、携帯電話網、LAN(Local Area Network)、Wi−Fi(Wireless Fidelity)或いはBluetooth(登録商標)等の通信ネットワーク2を介して通信可能である。通信ネットワーク2には、携帯電話網の末端にある基地局2aも含まれる。なお、図1では、1つの基地局2aを図示しているが、数はこれに限らない。
中継装置30は、通信端末10及び通信端末70間で、音データ、映像(画像)データ及びテキストデータ等のコンテンツデータを中継する。
通信端末10は、一例として、コールセンタに配置される。通信端末70は、一例として、ホテルのフロントに配置される。通信管理システム50、中継装置30、通信端末10及び通信端末70は、同一の国、地域に配置されていても、異なる国、地域に配置されていてもよい。通信端末10のユーザは、例えば、オペレータであり、通信端末70のユーザは、例えば、カスタマである。
<<第1の実施の形態におけるハードウェア構成例>>
次に、第1の実施の形態におけるハードウェア構成例を説明する。図2は、第1の実施の形態における通信端末10の外観図の一例を示す図である。図2に示されるように、通信端末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の範囲で、上下方向に回転可能になっている。図2は、チルト角θ1が90度の状態を示している。カメラハウジング1300には、後述の内蔵型のカメラ112が設けられており、ユーザ、書類及び部屋等を撮像することができる。また、カメラハウジング1300には、トルクヒンジ1310が形成されている。カメラハウジング1300は、トルクヒンジ1310を介して、アーム1200に取り付けられている。カメラハウジング1300はアーム1200に対して、図2で示される状態を0度として±180度のパン角θ2の範囲で、且つ、±45度のチルト角θ3の範囲で、上下左右方向に回転可能になっている。
なお、上記図2の外観図はあくまで一例であって、本実施の形態は当該外観に限定されない。なお、通信端末70、中継装置30及び通信管理システム50は、一般のスマートフォン或いはサーバコンピュータの外観と同じであるため、外観の説明を省略する。
図3は、第1の実施の形態における通信端末10及び通信端末70のハードウェア構成例を示す図である。図3において、(A)は、通信端末10のハードウェア構成例を示す。通信端末10は、通信端末10全体の動作を制御するCPU101(Central Processing Unit)、IPL(Initial Program Loader)等のCPU101の駆動に用いられるプログラムを記憶したROM102(Read Only Memory)、CPU101のワークエリアとして使用されるRAM103(Random Access Memory)、通信端末10用のプログラム、画像データ及び音データ等の各種データを記憶するフラッシュメモリ104、CPU101の制御にしたがってフラッシュメモリ104に対する各種データの読み出し又は書き込みを制御するSSD105(Solid State Drive)、フラッシュメモリやICカード(Integrated Circuit Card)等の記録メディア106に対するデータの読み出し又は書き込み(記憶)を制御するメディアI/F107(Interface)、通信端末10の宛先を選択する場合等に操作される操作ボタン108、通信端末10の電源のON/OFFを切り換えるための電源スイッチ109、通信ネットワーク2を利用してデータ伝送をするためのネットワークI/F111を備えている。なお、ROM102は、書き換え可能なフラッシュメモリ等であってもよい。
また、通信端末10は、CPU101の制御に従って被写体を撮像して画像データを得る内蔵型のカメラ112、カメラ112の駆動を制御する撮像素子I/F113、音を入力する内蔵型のマイク114、音を出力する内蔵型のスピーカ115、CPU101の制御に従ってマイク114及びスピーカ115との間で音信号の入出力を処理する音入出力I/F116、CPU101の制御に従って外付けのディスプレイ120に画像データを伝送するディスプレイI/F117、各種の外部機器を接続するための外部機器接続I/F118、通信端末10の各種機能の異常を知らせるアラームランプ119及び上記各構成要素を図3に示されるように電気的に接続するためのアドレスバスやデータバス等のバスライン110を備えている。
ディスプレイ120は、被写体の画像等を表示する表示部である。ディスプレイ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の制御に従って、外付けカメラが駆動する。同じく、外付けマイクが接続された場合や、外付けスピーカが接続された場合には、CPU101の制御に従って、外付けマイクや外付けスピーカが駆動する。
なお、記録メディア106は、通信端末10に対して着脱自在となっている。また、CPU101の制御にしたがってデータの読み出し又は書き込みを行う不揮発性メモリであれば、フラッシュメモリ104に限らず、EEPROM(Electrically Erasable and Programmable ROM)等を用いてもよい。
図3において(B)は、通信端末70のハードウェア構成例を示す。通信端末70は、通信端末70全体の動作を制御するCPU701、プログラムを記憶したROM702、CPU701のワークエリアとして使用されるRAM703、CPU701の制御にしたがってデータの読み出し又は書き込みを行うEEPROM704、フラッシュメモリ等の記録メディア706に対するデータの読み出し又は書き込み(記憶)を制御するメディアI/F707及びCPU701の制御に従って被写体を撮像し画像データを得るCMOSイメージセンサ712を備えている。なお、ROM702は、書き換え可能なフラッシュメモリであってもよい。
なお、EEPROM704には、CPU701が実行するオペレーティングシステム(OS)、その他のプログラム及び種々データが記憶されている。また、EEPROM704は、フラッシュメモリであってもよい。また、CMOSイメージセンサ712は、光を電荷に変換して被写体の画像を電子化する電荷結合素子である。CMOSイメージセンサは、CCDイメージセンサに置き換えることもできる。
更に、通信端末70は、音を音信号に変換するマイク714、音信号を音に変換するスピーカ715、アンテナ711aを利用して無線通信信号により、最寄りの基地局2aと通信を行う通信部711、被写体の画像や各種アイコン等を表示する液晶や有機EL等のディスプレイ720、ディスプレイ720上に感圧式又は静電式のパネルを備えて指やタッチペン等によるタッチによってディスプレイ720上におけるタッチ位置を検出するタッチパネル721及び上記各部を電気的に接続するためのアドレスバスやデータバス等のバスライン710を備えている。
図4は、第1の実施の形態における通信管理システム50のハードウェア構成例を示す図である。図4に示される通信管理システム50は、通信管理システム50全体の動作を制御するCPU201、IPL等のCPU201の駆動に用いられるプログラムを記憶したROM202、CPU201のワークエリアとして使用されるRAM203、通信管理システム50用のプログラム等の各種データを記憶するHD204(Hard Disk)、CPU201の制御にしたがってHD204に対する各種データの読み出し又は書き込みを制御するHDD205(Hard Disk Drive)、フラッシュメモリ等の記録メディア206に対するデータの読み出し又は書き込み(記憶)を制御するメディアI/F207、カーソル、メニュー、ウィンドウ、文字又は画像等の各種情報を表示するディスプレイ208、通信ネットワーク2を利用してデータ通信するためのネットワークI/F209、文字、数値、各種指示等の入力のための複数のキーを備えたキーボード211、各種指示の選択や実行、処理対象の選択、カーソルの移動等を行うマウス212、着脱可能な記録媒体の一例としてのCD−ROM213(Compact Disc - ROM)に対する各種データの読み出し又は書き込みを制御するCD−ROMドライブ214及び上記各構成要素を電気的に接続するためのアドレスバスやデータバス等のバスライン210を備えている。
中継装置30は、通信管理システム50と同様のハードウェア構成を有していてもよい。
以下、アプリケーションソフトウェアを「アプリ」という。
図5は、第1の実施の形態における通信端末10及び通信端末70のソフトウェア構成例を示す図である。図5において(A)は、通信端末10のソフトウェア構成例を示す。通信端末10には、クライアントアプリとして通信アプリA1がインストールされている。また、通信端末10には、OS1020がインストールされている。OS1020及び通信アプリA1は、通信端末10のRAM103の作業領域1010上で動作する。OS1020は、基本的な機能を提供し、通信端末10全体を管理する基本ソフトウェアである。通信アプリA1は、他の通信端末と通信するためのアプリである。
図5において(B)は、通信端末70のソフトウェア構成例を示す。通信端末70には、クライアントアプリとして通信アプリA7がインストールされている。また、通信端末70には、OS7020がインストールされている。OS7020及び通信アプリA7は、RAM703の作業領域7010上で動作する。OS7020は、基本的な機能を提供し、通信端末70全体を管理する基本ソフトウェアである。通信アプリA7は、他の通信端末と通信するためのアプリである。
なお、通信アプリA1及び通信アプリA7の通信プロトコルとしては、(1)SIP(Session Initiation Protocol)、(2)H.323、(3)SIPを拡張したプロトコル、(4)インスタントメッセンジャーのプロトコル、(5)SIPのMESSAGEメソッドを利用したプロトコル、(6)インターネットリレーチャットのプロトコル(IRC(Internet Relay Chat))、(7)インスタントメッセンジャーのプロトコルを拡張したプロトコル等が挙げられる。このうち、(4)インスタントメッセンジャーのプロトコルは、例えば、(4-1)XMPP(Extensible Messaging and Presence Protocol)又は(4-2)ICQ(登録商標)、AIM(登録商標)若しくはSkype(登録商標)等のサービスで利用されるプロトコルである。また、(7)インスタントメッセンジャーのプロトコルを拡張したプロトコルは、例えば、Jingleである。
<<実施の形態の機能構成>>
次に、第1の実施の形態の機能構成について説明する。図6は、第1の実施の形態における通信システム1の一部を構成する通信端末10、通信端末70及び通信管理システム50の機能構成例を示す図である。
<通信端末の機能構成>
通信端末10は、送受信部11、操作入力受付部12、起動部13、出力制御部14、通信確立判定部15及び記憶・読出部19等を有する。これら各部は、図3(A)に示される各構成要素のいずれかが、フラッシュメモリ104からRAM103上に展開された通信アプリA1又はOS1020等のプログラムに従ったCPU101からの命令によって動作することで実現される。通信端末70は、送受信部71、操作入力受付部72、起動部73、出力制御部74、記憶・読出部79及び状態管理部75等を有する。これら各部は、図3(B)に示される各構成要素のいずれかが、EEPROM704からRAM703上に展開された通信アプリA2又はOS7020等のプログラムに従ったCPU701からの命令によって動作することで実現される。
また、記憶部1000は、図3(A)に示されるROM102、RAM103、フラッシュメモリ104等を用いて実現される。記憶部7000は、図3(B)に示されるROM702、RAM703、EEPROM704等を用いて実現される。
送受信部11は、ネットワークI/F111を利用して、通信ネットワーク2を介して、通信相手の通信端末、各装置又はシステム等とデータ(または情報)の送受信を行う。
操作入力受付部12は、操作ボタン(108a,108b,108c,108d,108e)、又は電源スイッチ109等を介して、ユーザによる入力又は選択を受け付ける。
起動部13は、通信アプリA1を起動する。
出力制御部14は、ディスプレイI/F117及び音入出力I/F116に対する、画像データ及び音データの出力を制御する。
通信確立判定部15は、通信を確立するか否かの判定及び当該判定に関する制御を行う。
記憶・読出部19は、記憶部1000にデータを記憶させ、記憶部1000に記憶されたデータを読み出す処理を行う。記憶部1000は、呼制御情報管理データベース1001(以下、「呼制御情報管理DB1001」という。)を含む。当該データベースの詳細については後述する。
送受信部71は、通信部711を利用して、通信ネットワーク2を介して、通信相手の通信端末10、各装置又はシステム等とデータ(または情報)の送受信を行う。
操作入力受付部72は、タッチパネル721を介して、ユーザによる入力又は選択を受け付ける。
状態管理部75は、通信端末10から通信端末70へ送信されるプレゼンス情報に基づいて、宛先候補の状態を管理する。宛先候補とは、通信相手となる通信端末10の候補である。プレゼンス情報とは、宛先候補の通信ID、プレゼンス及び属性情報を含む。通信IDとは、通信端末10又は通信端末70の識別情報である。通信IDとしては、例えば、通信端末10のユーザの識別情報及びアカウント等が含まれてもよい。プレゼンスとは、例えば、通信可能、通信不可能等の状態を示す情報である。属性とは、例えば、「英語」「韓国語」「スペイン語、タイ語」等の対応可能な言語であり、属性情報とは、対応可能な言語を示す情報である。以下、属性としての対応可能な言語「英語、中国語、韓国語、ポルトガル語、スペイン語、タイ語、ロシア語」に対応する属性情報は、それぞれ「en,zh,ko,pt,es,th,ru」によって表現される。
記憶・読出部79は、記憶部7000にデータを記憶させ、記憶部7000に記憶されたデータを読み出す処理を行う。記憶部7000は、宛先管理データベース7001(以下、「宛先管理DB7001」という。)及びプレゼンス管理データベース7002(以下、「プレゼンス管理DB7002」という。)を含む。各データベースの詳細については後述する。
<通信管理システムの機能構成>
通信管理システム50は、送受信部51、認証部52、管理部53、セッション制御部58及び記憶・読出部59を有する。これら各部は、図4に示される各構成要素のいずれかが、HD204からRAM203上に展開された通信管理システム50用のプログラムに従ったCPU201からの命令によって動作することで実現される。また、通信管理システム50は、HD204により実現される記憶部5000を有する。記憶部5000は、認証管理データベース5001(以下、「認証管理DB5001」という。)及び端末管理データベース5002(以下、「端末管理DB5002」という。)を含む。各データベースの詳細については後述する。
送受信部51は、ネットワークI/F209を利用して、通信ネットワーク2を介して通信端末10、通信端末70、装置又はシステムとデータ(または情報)の送受信を行う。
認証部52は、送受信部51で受信された通信ID及びパスワードを検索キーとして、認証管理DB5001を検索し、同一の通信ID及びパスワードが記憶されているかを判断することによって通信端末10及び通信端末70の認証を行う。認証管理DB5001は、通信管理システム50によって管理される全ての通信端末10及び通信端末70の通信ID及びパスワードを関連付けて記憶するデータベースである。
管理部53は、端末管理DB5002を利用して、ログイン中の通信端末10及び通信端末70を管理する。端末管理DB5002は、ログイン中の通信端末10及び通信端末70の通信ID及び通信端末IPアドレスを関連付けて記憶するデータベースである。
セッション制御部58は、通信端末10と通信端末70間でコンテンツデータを送信するためのセッションを制御する。当該制御は、セッションを確立するための制御、確立されたセッションに通信端末10及び通信端末70を参加させる制御、通信端末10及び通信端末70をセッションから退出させる制御等を含む。
記憶・読出部59は、記憶部5000にデータを記憶させ、記憶部5000に記憶されたデータを読み出す処理を行う。
<<通信システム1の処理・動作>>
続いて、通信システム1における処理及び動作について説明する。
図7は、第1の実施の形態における通信端末10及び通信端末70が通信管理システム50へログインする処理手順の一例を説明するためのシーケンス図である。
ユーザが通信端末70の電源スイッチをONにすると、操作入力受付部72が電源ONを受け付けて、通信端末70を起動させる(ステップS1)。通信端末70が起動すると、起動部73は、通信端末70にインストールされている通信アプリA7を起動させる(ステップS2)。以下、通信端末70における処理は、通信アプリA7によって実現される。
通信端末70の送受信部71は、通信アプリA7の起動に応じて、通信ネットワーク2を介して通信管理システム50に、ログイン要求を送信する(ステップS3)。当該ログイン要求には、ログイン要求元である自通信端末を識別するための通信ID及びパスワードが含まれる。第1の実施の形態において、通信端末70の通信IDは、カスタマ側の通信端末70であることを判別可能なように、頭文字が「C」で表されている。以下、通信端末70x,通信端末70yの通信IDは、それぞれ「C01」、「C02」であるとする。
通信管理システム50の送受信部51は、ログイン要求を受信する。通信端末70から通信管理システム50へログイン要求が送信されることで、受信側である通信管理システム50は、送信側である通信端末70のIPアドレスを取得することができる。
続いて、通信管理システム50の認証部52は、当該ログイン要求に含まれている通信ID及びパスワードを検索キーとして、認証管理DB5001上の認証管理テーブルを検索し、当該認証管理テーブルに同一の通信ID及びパスワードが存在するか否かを判断することによって認証を行う(ステップS4)。
図8は、第1の実施の形態における通信端末70及び通信管理システム50にて使用される各テーブルの一例を示す図である。
(認証管理テーブル)
図8において(A)が、認証管理テーブルの一例を示す。認証管理テーブルには、通信管理システム50によって管理される通信端末10又は通信端末70の通信IDごとにレコードが記憶される。当該レコードは、通信ID及び認証用のパスワードを含む。
認証部52によって、正当な利用権限を有する通信端末70からのログイン要求であると認証された場合に、管理部53は、端末管理テーブル(図8の(B)参照)に、ログイン要求元の通信端末70の通信ID及びIPアドレスを関連付けて記憶させる(ステップS5)。これにより端末管理テーブルによって、ログイン中の通信端末70へアクセスすることが可能となる。
(端末管理テーブル)
図8の(B)が、端末管理テーブルの一例を示す。端末管理テーブルは、端末管理DB5002に含まれる。端末管理テーブルには、ログイン中の通信端末10又は通信端末70の通信IDごとにレコードが記憶される。当該レコードは、通信ID及び通信端末のIPアドレスを含む。
通信管理システム50の送受信部51は、認証部52によって得られた認証結果が示された認証結果情報を、通信ネットワーク2を介して、ログイン要求元の通信端末70へ送信する(ステップS6)。通信端末70の送受信部71は、認証結果情報を受信する。
一方、オペレータ側の通信端末10のユーザが電源スイッチ109をONにすると、操作入力受付部12が電源ONを受け付けて、通信端末10を起動させる(ステップS11)。通信端末10が起動すると、起動部13は、通信端末10にインストールされている通信アプリA1を起動させる(ステップS12)。以下、通信端末10における処理は、通信アプリA1によって実現される。
続いて、通信端末10の出力制御部14は、通信端末10のユーザであるオペレータの属性の入力を受け付ける受付画面をディスプレイ120に出力する。
図9は、第1の実施の形態における通信端末10での受付画面の表示の一例を示す図である。受付画面140には、通信ID及びパスワードの入力を受け付ける欄の他、オペレータの属性として、対応可能な言語の選択肢と選択用のチェックボックスが含まれている。オペレータが、対応可能な言語の選択肢を選択して、受付画面140のOKボタンを押下する操作を行うと、操作入力受付部12は、オペレータの属性の入力を受け付ける(ステップS13−1)。記憶・読出部19は、選択された属性に対応する属性情報を記憶部1000に記憶させる。
通信端末10は、通信アプリA1の起動に応じて、通信管理システム50へログイン要求を送信して、通信管理システム50へログインする(ステップS13−2,S14,S15,S16)。この処理は、通信端末70と通信管理システム50との間のステップS3,S4,S5,S6の処理と同様である。但し、ログイン要求で通信端末10から通信管理システム50へ送信される通信IDは、オペレータ側の通信端末10であることを判別可能なように、頭文字が「O」で表されている。以下、通信端末10a,10b,10cの通信IDは、それぞれ「O01」、「O02」、「O03」であるとする。ログイン要求元の通信端末10の認証に成功すると、当該通信端末10は、通信管理システム50にログインする。
続いて、図10を用いて、通信端末10から通信端末70へ、オペレータ側の状態を示すプレゼンス情報を送信する処理について説明する。図10は、第1の実施の形態におけるプレゼンス情報を送信する処理手順の一例を説明するためのシーケンス図である。以下の説明において、通信端末70x及び通信端末70yは認証に成功し、通信管理システム50にログイン中であるとする。
記憶・読出部19は、状態遷移の契機となるイベントが発生すると、当該イベント及び当該イベント発生による遷移後のプレゼンスを記憶部1000へ記憶させる。プレゼンスは、通信端末10のユーザであるオペレータが通話を開始可能な状態であるか特定するために利用される。通話を開始可能な状態を示すプレゼンスには、当該通信端末10が通信管理システム50へログインしており、カスタマ側の通信端末70と通信していない状態を示す「Online」が含まれる。通話を開始不可能な状態を示すプレゼンスには、当該通信端末10が通信管理システム50へログインしていない状態を示す「Offline」、又は当該通信端末10が通信管理システム50へログインしているが、既にカスタマ側の通信端末70と通信しているため新たに通信を開始できない状態を示す「chat」が含まれる。なお、第1の実施の形態においてプレゼンスは、通話を開始可能な状態であるか特定するために利用される任意の情報が利用され、上記のものに限定されない。また、プレゼンスには、ユーザの入力に基づくものが含まれていてもよい。ユーザの入力に基づくプレゼンスのうち、通話を開始不可能な状態を示すプレゼンスの一例としては、「離席中」等が挙げられる。
「Online」への遷移の契機となるイベントの一例としては、通信端末10による、上記ステップS16の認証結果情報の受信や、ユーザからの通話の終了要求の入力の受け付け等が挙げられる。プレゼンス「Offline」への遷移の契機となるイベントの一例としては、通信端末10による、通信管理システム50からのログアウトが挙げられる。プレゼンス「chat」への遷移の契機となるイベントの一例としては、通信端末70と通信端末10の通信の確立(後述のステップS95)が挙げられる。なお、上記のイベント及びプレゼンスは一例であって、これらに限定されない。なお、プレゼンスの遷移の契機となるイベントは、検出可能なものであれば特に限定されず、通信プロトコルや通信アプリA1による処理内容に応じて、任意に設定可能である。
通信端末10aで上記のいずれかのイベントが発生すると(ステップS21)、記憶・読出部19は、例えば、「en,zh,es」等の属性情報を記憶部1000から読み出す。読み出される属性情報は、ログイン時に通信端末10aのユーザであるオペレータにより入力された「英語、中国語、スペイン語」等の属性に対応している(ステップS13−1参照)。通信端末10aの送受信部11は、通信端末10aの通信ID「O01」、ステップS21のイベント発生による遷移後の状態を示すプレゼンス及び記憶部1000から読み出された属性情報が含まれるプレゼンス情報を、通信管理システム50へ送信する(ステップS22)。例えば、通信端末10aは、ステップS16で認証結果情報を受信すると、プレゼンス「Online」を含むプレゼンス情報を通信管理システム50へ送信する。また、通信端末10aは、ログアウトの要求が受け付けられると、プレゼンス「Offline」を含むプレゼンス情報を通信管理システム50へ送信する。また、通信端末10aは、通信端末70との間の通信の確立に応じて、プレゼンス「chat」を含むプレゼンス情報を通信管理システム50へ送信する。なお、ステップS13−1で属性情報が記憶部1000に登録されてから属性情報が更新されない限り、通信端末10aは、イベントが発生する度に、同一の属性情報を含むプレゼンス情報を通信管理システム50へ送信してもよい。
通信管理システム50の送受信部51は、通信端末10aによって送信されるプレゼンス情報を受信すると、受信したプレゼンス情報を、通信管理システム50へログインしているカスタマ側の通信端末70x及び通信端末70yへ送信する(ステップS23,S24)。通信管理システム50へログインしているカスタマ側の通信端末70を特定する方法は特に限定されないが、一例として、端末管理テーブル(図8の(B)参照)から、「C」が頭文字の通信IDを読み出す方法が挙げられる。
通信端末70x及び通信端末70yの送受信部71は、オペレータ側の通信端末10aから通信管理システム50を介して送信されるプレゼンス情報を受信する。通信端末70x及び通信端末70yの記憶・読出部79は、受信したプレゼンス情報に含まれる通信ID、プレゼンス及び属性情報を宛先管理テーブル(図8の(C)参照)に記録する(ステップS25,S26)。受信したプレゼンス情報に含まれる通信IDと同一の通信IDのレコードが宛先管理テーブルに存在する場合、記憶・読出部79は、新たに受信されたプレゼンス情報に基づいて、当該レコードを上書更新する。これにより、通信端末70x及び通信端末70yは、通信端末10a側の最新のプレゼンスを取得することができる。
(宛先管理テーブル)
図8の(C)が、宛先管理テーブルの一例を示す。宛先管理テーブルは、宛先管理DB7001に含まれる。宛先管理テーブルに示すように、宛先候補であるオペレータの通信端末10の通信IDごとにレコードが記憶される。当該レコードは、当該通信ID、当該宛先候補の状態を示すプレゼンス及び当該宛先候補の属性を示す属性情報を含む。
オペレータ側の通信端末10bにおいて、上記のいずれかのイベントが発生すると、通信端末10b、通信管理システム50、通信端末70x及び通信端末70y間では、通信端末10a、通信管理システム50、通信端末70x及び通信端末70y間のステップS21,S22,S23,S24,S25,S26と同様の処理が実行される(ステップS31,S32,S33,S34,S35,S36)。オペレータ側の通信端末10cにおいて、上記のいずれかのイベントが発生すると、通信端末10c、通信管理システム50、通信端末70x及び通信端末70y間では、通信端末10a、通信管理システム50、通信端末70x及び通信端末70y間のステップS21,S22,S23,S24,S25,S26と同様の処理が実行される(ステップS41,S42,S43,S44,S45,S46)。これにより、通信端末70x及び通信端末70yは、通信端末10b及び通信端末10c側についても最新のプレゼンスを取得することができる。
続いて、図11を用いて、属性毎のグループのプレゼンスを取得する処理について説明する。図11は、第1の実施の形態における属性毎のプレゼンスを取得する処理手順の一例を説明するためのフロー図である。なお、属性毎のグループのプレゼンスとは、属性(en、zh、ko、pt、es、th、ru)ごとに、プレゼンス(Online、Offline、Chat)を示す情報をいう。例えば、「en」のグループのプレゼンスは、「en」に対応する宛先候補(通信端末10)のプレゼンスに基づいて決まる。すなわち、当該宛先候補のうちのいずれかが「Online」であれば、当該グループのプレゼンスは、「Online」となる。当該宛先候補の中に「Online」が無く、いずれかの宛先候補が「Chat」であれば、当該グループのプレゼンスは「Chat」となる。当該宛先候補の全てが「Offline」であれば、当該グループのプレゼンスは「Offline」となる。
以下、グループのプレゼンスを決定する処理の一例について説明する。なお、以下、通信端末70xの処理について説明するが、通信端末70yも同様の処理を実行可能である。
通信端末70xの状態管理部75は、図10に示されるステップS26,S36,S46において、宛先管理テーブルのプレゼンス(図8の(C)参照)が更新される度、更新されたレコードに記録されている情報を取得する(ステップS51)。取得される情報には、プレゼンス情報の送信元の通信端末10の通信ID、宛先候補の最新の状態を示すプレゼンス及び宛先候補の属性を示す属性情報が含まれている。
通信端末70xの状態管理部75は、プレゼンス管理テーブル(図8の(D)参照)における、ステップS51で取得される属性情報が含まれる各レコードを更新する。すなわち、例えば、取得される属性情報が「en,zh,es」である場合、状態管理部75は、プレゼンス管理テーブルにおける、属性情報「en,zh,es」が含まれる各レコードを更新する。
(プレゼンス管理テーブル)
図8の(D)が、プレゼンス管理テーブルの一例を示す。プレゼンス管理テーブルは、プレゼンス管理DB7002に含まれる。プレゼンス管理テーブルでは、宛先候補の属性を示す属性情報ごとにレコードが記憶される。当該レコードは、属性情報、当該属性情報に係る属性の宛先候補のグループのプレゼンス、当該属性の宛先候補のうち通話可能なプレゼンス「Online」の宛先候補の通信端末10の通信ID(通話可通信ID)及び当該属性の宛先候補のうち通話中のプレゼンス「Chat」の宛先候補の通信端末10の通信ID(通話中通信ID)を含む。
以下、一例として、通信端末10aから通信端末70xへ、プレゼンス情報「Online,(en,zh,es),O01」が送信され、ステップS51で当該情報が取得された場合の処理について説明する(ステップS52のOnline)。
まず、プレゼンス管理テーブルのうち、属性情報「en」が記録されたレコードを更新するループ処理の手順について説明する。通信端末70xの状態管理部75は、プレゼンス管理テーブル(図8の(D)参照)のうち、属性情報「en」が記録されたレコードにおける通話可通信IDのフィールドを参照する。これにより、状態管理部75は、通話可通信IDのフィールドに、ステップS51で取得された通信ID「O01」が含まれているか判断する(ステップS53)。
プレゼンス管理テーブルにおける通話可通信IDのフィールドに、ステップS51で取得された通信ID「O01」が含まれていないと判断された場合(ステップS53でNO)、状態管理部75は、通話可通信IDのフィールドに、取得された通信ID「O01」を追加する(ステップS54)。
ステップS54の処理が完了した場合、又は、ステップS53でYESの場合、通信端末70xの状態管理部75は、プレゼンス管理テーブル(図8の(D)参照)のうち、属性情報「en」が記録されたレコードにおける通話中通信IDのフィールドを参照する。これにより、状態管理部75は、通話中通信IDのフィールドに、ステップS51で取得された通信ID「O01」が含まれているか判断する(ステップS55)。
プレゼンス管理テーブルにおける通話中通信IDのフィールドに、ステップS51で取得された通信ID「O01」が含まれていると判断された場合(ステップS55でYES)、通話中通信IDのフィールドから、取得された通信ID「O01」を削除する(ステップS56)。ここまでの処理により、通信端末10a側のプレゼンスが、「Chat」から「Online」へ遷移する場合も、「Offline」から「Online」へ遷移する場合も、プレゼンス管理テーブルの属性情報「en」が記録されたレコードには、通話可通信IDのフィールドにのみ通信端末10aの通信IDが記録される。
ステップS56の処理が完了した場合、又は、ステップS55でNOの場合、通信端末70xの状態管理部75は、プレゼンス管理テーブル(図8の(D)参照)のうち、属性情報「en」が記録されたレコードにおけるグループのプレゼンスを参照して、グループのプレゼンスが「Online」であるか判断する(ステップS57)。
属性情報「en」が記録されたレコードにおけるグループのプレゼンスが「Online」ではないと判断された場合(ステップS57でNO)、状態管理部75は、当該プレゼンスを「Online」に更新する。属性情報「en」が記録されたレコードにおけるグループのプレゼンスが「Online」であると判断された場合(ステップS57でYES)、状態管理部75は、属性情報「en」が記録されたレコードにおけるグループのプレゼンスを更新しない。ここまでの処理により、プレゼンス管理テーブルの属性情報「en」が記録されたレコードにおけるグループのプレゼンスは「Online」になる。
ステップS51では属性情報「en,zh,es」が取得されているので、状態管理部75は、ループ処理により、プレゼンス管理テーブルにおける属性情報「zh,es」が記録された各レコードについても、同様に更新する。ループ処理が完了すると、図8の(D)のプレゼンス管理テーブルは、表1のようになる。
続いて、通信端末10aから通信端末70xへ、プレゼンス情報「Chat,(en,zh,es),O01」が送信され、ステップS51で当該プレゼンス情報が取得された場合の処理について説明する(ステップS52のChat)。
まず、プレゼンス管理テーブルのうち、属性情報「en」が記録されたレコードを更新するループ処理の手順について説明する。通信端末70xの状態管理部75は、プレゼンス管理テーブル(表1参照)のうち、属性情報「en」が記録されたレコードにおける通話可通信IDのフィールドを参照する。これにより、状態管理部75は、通話可通信IDのフィールドに、ステップS51で取得された通信ID「O01」が含まれているか判断する(ステップS63)。
プレゼンス管理テーブルにおける通話可通信IDのフィールドに、ステップS51で取得された通信ID「O01」が含まれていると判断された場合(ステップS63でYES)、通話可通信IDのフィールドから、取得された通信ID「O01」を削除する(ステップS64)。
ステップS64の処理が完了した場合、又は、ステップS63でNOの場合、通信端末70xの状態管理部75は、プレゼンス管理テーブル(表1参照)のうち、属性情報「en」が記録されたレコードにおける通話中通信IDのフィールドを参照する。これにより、状態管理部75は、通話中通信IDのフィールドに、ステップS51で取得された通信ID「O01」が含まれているか判断する(ステップS65)。
プレゼンス管理テーブルにおける通話中通信IDのフィールドに、ステップS51で取得された通信ID「O01」が含まれていないと判断された場合(ステップS65でNO)、通話中通信IDのフィールドに、取得された通信ID「O01」を追加する(ステップS66)。ここまでの処理により、プレゼンス管理テーブルの属性情報「en」が記録されたレコードには、通話中通信IDのフィールドにのみ通信端末10aの通信IDが記録される。
ステップS66の処理が完了した場合、又は、ステップS65でYESの場合、通信端末70xの状態管理部75は、プレゼンス管理テーブル(表1参照)のうち、属性情報「en」が記録されたレコードにおける通話可通信IDのフィールドを参照する。これにより、状態管理部75は、属性情報「en」が記録されたレコードにおける通話可通信IDのフィールドに記録されている通信IDの数が0であるか判断する(ステップS67)。
属性情報「en」が記録されたレコードにおける通話可通信IDのフィールドに記録されている通信IDの数が0である場合(ステップS67でYES)、状態管理部75は、属性情報「en」が記録されたレコードにおけるグループのプレゼンスを「Chat」に更新する(ステップS68)。属性情報「en」が記録されたレコードにおける通話可通信IDのフィールドに記録されている通信IDの数が0ではない場合(ステップS67でNO)、状態管理部75は、属性情報「en」が記録されたレコードにおけるグループのプレゼンスを更新しない。すなわち、属性情報「en」が記録されたレコードにおける通話可通信IDのフィールドに通信IDが記録されている場合、対応するプレゼンスは「Online」のまま更新されない。
ステップS51では属性情報「en,zh,es」が取得されているので、状態管理部75は、ループ処理により、プレゼンス管理テーブルにおける属性情報「zh,es」が記録された各レコードについても、同様に更新する。これにより、表1のプレゼンス管理テーブルは、表2のようになる。
続いて、通信端末10cから通信端末70xへプレゼンス情報「Offline,(ko,pt),O03」が送信され、ステップS51で当該プレゼンス情報が取得された場合について説明する(ステップS52のOffline)。
まず、プレゼンス管理テーブルのうち、属性情報「ko」が記録されたレコードを更新するループ処理の手順について説明する。通信端末70xの状態管理部75は、プレゼンス管理テーブル(表2参照)のうち、属性情報「ko」が記録されたレコードにおける通話可通信IDのフィールドを参照する。これにより、状態管理部75は、通話可通信IDのフィールドに、ステップS51で取得された通信ID「O03」が含まれているか判断する(ステップS73)。
プレゼンス管理テーブルにおける通信可能通信IDのフィールドに、ステップS51で取得された通信ID「O03」が含まれていると判断された場合(ステップS73でYES)、通信可能通信IDのフィールドから、取得された通信ID「O03」を削除する(ステップS74)。
ステップS74の処理が完了した場合、又は、ステップS73でNOの場合、通信端末70xの状態管理部75は、プレゼンス管理テーブル(表2参照)のうち、属性情報「ko」が記録されたレコードにおける通話中通信IDのフィールドを参照する。これにより、状態管理部75は、通話中通信IDのフィールドに、ステップS51で取得された通信ID「O03」が含まれているか判断する(ステップS75)。
プレゼンス管理テーブルにおける通話中通信IDのフィールドに、ステップS51で取得された通信ID「O03」が含まれていると判断された場合(ステップS75でYES)、通話中通信IDのフィールドから、取得された通信ID「O03」を削除する(ステップS76)。ここまでの処理により、プレゼンス管理テーブルにおける属性情報「ko」が記録されたレコードから通信端末10cの通信IDが削除される。
ステップS76の処理が完了した場合、又は、ステップS75でNOの場合、通信端末70xの状態管理部75は、プレゼンス管理テーブル(表2参照)のうち、属性情報「ko」が記録されたレコードにおける通話可通信ID及び通話中通信IDのフィールドを参照する。これにより、状態管理部75は、条件IF1又は条件IF2に該当するか判断する(ステップS77)。条件IF1は、属性情報「ko」が記録されたレコードにおける通信可能通信IDのフィールドに記録されている通信IDの数が0であり、通話中通信IDのフィールドに記録されている通信IDの数が0ではない場合である。条件IF2は、属性情報「ko」が記録されたレコードにおける通信可能通信IDのフィールドに記録されている通信IDの数が0であり、通話中通信IDのフィールドに記録されている通信IDの数が0である場合である。
属性情報「ko」が記録されたレコードにおける通信可能通信IDのフィールドに記録されている通信IDの数が0であり、通話中通信IDのフィールドに記録されている通信IDの数が0ではない場合(ステップS77のIF1)、状態管理部75は、プレゼンス管理テーブルの属性情報「ko」が記録されたレコードにおけるグループのプレゼンスを「Chat」に更新する(ステップS78)。属性情報「ko」が記録されたレコードにおける通信可能通信IDのフィールドに記録されている通信IDの数が0であり、通話中通信IDのフィールドに記録されている通信IDの数が0である場合(ステップS77のIF2)、状態管理部75は、プレゼンス管理テーブルの属性情報「ko」が記録されたレコードにおけるグループのプレゼンスを「Offline」に更新する(ステップS79)。ステップS77でIF1にもIF2にも該当しない場合(ステップS77でNO)、状態管理部75は、属性情報「ko」が記録されたレコードにおけるグループのプレゼンスを「Online」のまま更新しない。
ステップS51では属性情報「ko,pt」が取得されているので、状態管理部75は、ループ処理により、プレゼンス管理テーブルにおいて、属性情報「pt」が記録されたレコードについても、同様に更新する。これにより、表2のプレゼンス管理テーブルは、表3のようになる。
続いて、図12を用いて、通信を開始する処理について説明する。図12は、第1の実施の形態における通信を開始する処理手順の一例を説明するためのシーケンス図である。以下、一例として、通信端末70xが通信を開始する処理について説明するが、通信端末70yも同様の処理により通信を開始することができる。
通信端末70xの操作入力受付部12は、ユーザによる操作入力に応じて、宛先候補の属性一覧の表示要求を受け付ける。表示要求に応じて、出力制御部74は、プレゼンス管理テーブル(表3参照)に記録されている各属性情報及び当該属性情報に対応するグループのプレゼンスの組を取得する。記憶部7000には、属性情報に対応する表示画像及びグループのプレゼンスに対応する表示画像のデータが予め記憶されている。一例として、属性情報「en」に対応する表示画像のデータは「English 英語」を示すテキストデータである。また、一例として、グループのプレゼンス「Online,Offline,Chat」に対応する表示画像のデータは、それぞれ、チェックマーク、無画像、吹き出しが表されたアイコンの画像データである。出力制御部74は、取得された属性情報及びプレゼンスの組ごとに、対応するテキスト及びアイコンの表示画像のデータの組を記憶部7000から取得する。出力制御部74は、取得された表示画像のデータの組を所定の表示領域の同じ行に対応付けて配列することで属性一覧の画像データを生成する。出力制御部74は、生成された属性一覧の画像データをディスプレイ720へ出力する(ステップS81)。
図13は、第1の実施の形態における通信端末70での属性一覧の画像データの表示例を示す図である。図13の表示例は、プレゼンス管理テーブルが表3の状態である場合に対応している。
出力制御部74は、プレゼンス管理テーブルが更新される度に、上記の処理を繰り返し実行する。これにより、属性毎の最新のグループのプレゼンスが示された属性一覧がディスプレイ720に表示される。
図13に示すように、ステップS81で、出力制御部74は、アイコンのうち、「Online」に対応するチェックマークが表されたアイコンを選択可能なアイコンとして出力し、「Offline」又は「Chat」に対応する無画像又は吹き出しが表されたアイコンを選択不可能なアイコンとして出力する。例えば、図13に示された属性一覧における「韓国語」に対応する無画像のアイコンや、「中国語」に対応する吹き出しが表されたアイコンを押下する操作がユーザにより行われても、操作入力受付部72は、操作入力を受け付けない。なお、無画像のアイコン及び吹き出しが表されたアイコンを押下する操作が実行されたとき、出力制御部74は、通話を開始できない旨のメッセージや、通話の開始の待機を促すメッセージ等をディスプレイ720に出力してもよい。
図13に示される画面において、属性「英語、ポルトガル語、スペイン語、タイ語、ロシア語」に対応するチェックマークが表されたいずれかのアイコンがユーザにより押下されると、操作入力受付部72は、アイコンに対応する属性の選択を受け付ける(ステップS82)。例えば、英語の表示に対応付けられるチェックマークのアイコンが押下されると、操作入力受付部72は、宛先候補の属性として「英語」を受け付ける。すなわち、宛先候補の属性情報は「en」となる。
属性の選択が受け付けられると、記憶・読出部79は、ステップS82で選択された属性を示す属性情報「en」を検索キーとして、宛先管理テーブル(図8の(C)参照)を検索し、対応する通信ID及びプレゼンスの組を読み出す(ステップS83)。例えば、ステップS82で選択された属性を示す属性情報が「en」である場合、図8の(C)の宛先管理テーブルからは、通信ID及びプレゼンスの組として、「O01,Chat」及び「O02,Online」が読み出される。
通信端末70xの送受信部71は、ステップS83で読み出された通信IDのうち、対応するプレゼンスが「Online」である通信ID「O02」、開始要求元の通信端末70xの通信ID「C01」及びステップS82で選択された属性を示す属性情報「en」を含む通話の開始要求を通信管理システム50へ送信する(ステップS84−1)。
通信管理システム50の送受信部51は、通信端末70xによって送信される通話の開始要求を受信すると、受信した通話の開始要求に含まれる通信ID「O02」によって特定される通信端末10bへ、当該通話の開始要求を送信する(ステップS84−2)。
通話の開始要求を送信してから応答を受信するまでの間に、図10に示されるステップS26,S36,S46で宛先管理テーブルが更新された場合、通信端末70xは、ステップS83の処理を繰り返す。例えば、通信端末10a側のプレゼンスが「Online」に更新された場合、通信ID「O01」が通話の開始要求の送信先として抽出される。通信端末70xの送受信部71は、通信ID「O01」を含む通話の開始要求を通信管理システム50へ送信する(ステップS85−1)。なお、ここで送信される通話の開始要求にも、ステップS82で選択された属性を示す属性情報「en」及び自通信端末の通信ID「C01」が含まれている。
通信管理システム50の送受信部51は、通信端末70xによって送信される通話の開始要求を受信すると、受信した通話の開始要求に含まれる通信ID「O01」によって特定される通信端末10aへ、当該通話の開始要求を送信する(ステップS85−2)。
通信端末10a及び10bの送受信部11は、通信端末70xから通信管理システム50を介して送信される通話の開始要求を受信する。通話の開始要求が受信されると、通信端末10a及び10bの出力制御部14は、通話の開始要求に含まれる通信ID「C01」に対応する要求元の情報及び通話の開始要求に含まれる属性情報「en」に対応する属性の情報を含むメッセージをディスプレイ720へ出力する。
図14は、第1の実施の形態における通信端末10でのメッセージの表示例を示す図である。メッセージの画面に属性を表示することにより、通信端末10のユーザであるオペレータは、どの言語で通話すべきか、通話開始する前から事前に把握することができる。
図14に示されるメッセージの画面表示には、通話の開始の許可を受け付けるための応答ボタンが含まれている。通信端末10a及び10bにおいて、ユーザが画面上の応答ボタンを押下すると、操作入力受付部12は、応答の許可の操作入力を受け付ける(ステップS86−1及びS87−1)。
続いて、応答の許可の操作入力が受け付けられると、通信確立判定部15は、呼制御情報管理テーブル(図8の(E)参照)を更新する(ステップS86−2及びS87−2)。通信ID「C01」が対応する通信端末70xからの通話の開始要求を受け付けたので、記憶・読出部19は、呼制御情報管理テーブルに「C01」を含むレコードを記録する。
(呼制御情報管理テーブル)
図8の(E)が、呼制御情報管理テーブルの一例を示す。呼制御情報管理テーブルは、呼制御情報管理DB1001に含まれる。呼制御情報管理テーブルには、通話の開始要求を受け付けた通信端末70の通信IDを含むレコードが記憶される。当該レコードは、当該通信ID、呼制御受付時刻及び属性情報を含む。呼制御受付時刻は、当該通話の開始要求を受け付けた時刻である。属性情報は、当該通話の開始要求に含まれる属性情報である。
続いて、通信端末10a及び10bの送受信部11は、通話の開始要求元の通信ID「C01」、並びに自通信端末10a又は10bの通信ID「O01」又は「O02」が含まれる応答情報を通信管理システム50へ送信する(ステップS88−1及びS89−1)。なお、上記の処理は一例であって、通信端末10の送受信部11は、通信端末70による通話の開始要求を受信した場合に、自動的に通信端末70へ開始要求の応答を送信してもよい。また、通信端末10の送受信部11は、複数の通信端末70による複数の通話の開始要求を受信した場合に、最先に受信した通話の開始要求の送信元の通信端末70へ応答情報を送信してもよい。
なお、ステップS86−1又はS87−1にて応答の許可の操作入力を受け付けた時点から、通信端末10は、通信端末70x以外の通信端末70からの通話の開始要求を受信した場合、当該開始要求を保留する。当該保留は、後述の通信確立通知(ステップS93−1)或いはキャンセル情報(ステップS94−2)まで継続する。
通信管理システム50の送受信部51は、通信端末10a又は10bによって送信される応答情報を受信する。通信管理システム50の送受信部51は、受信した応答情報を応答情報に含まれる通信ID「C01」によって特定される通信端末70xへ送信する(ステップS88−2及びS89−2)。
通信端末70xの送受信部71は、応答情報を受信すると、応答情報の送信元の通信端末10との間での通信の確立を要求する通信確立要求を通信管理システム50へ送信する(ステップS90−1)。通信確立要求には、自通信端末の通信ID及び応答の送信元の通信端末10の通信IDが含まれる。通信端末70xの送受信部71は、複数の応答情報を受信した場合、最も早く受信した応答情報の送信元の通信端末10bの通信ID「O02」を通信確立要求に含める。
通信管理システム50の送受信部51は、通信確立要求を受信すると、当該通信確立要求に含まれる通信ID「O02」により特定される通信端末10bへ当該通信確立要求を送信する(ステップS90−2)。
通信端末10bの送受信部11が、通信確立要求を受信すると、通信確立判定部15は、当該通信確立要求に含まれる通信IDと、呼制御情報管理テーブルのレコードに記録されている通信IDとを比較して、当該通信確立要求に含まれる通信IDに対応する通信端末70xが正しい呼制御を経ているか否かを判定する。両者が一致した場合、通信を確立するため通話の開始要求元の通信ID「C01」及び自通信端末の通信ID「O02」が含まれる応答情報を通信管理システム50へ送信する(ステップS91)。両者が一致しなかった場合、ステップS91へは進まない。なお、通信確立判定部15は、判定を実行する時刻が、呼制御情報管理テーブルのレコードに記録されている呼制御受付時刻から所定の時間内であるか否かの判定によってステップS91における判定処理が代替されてもよいし、当該判定がステップS91の判定に追加されてもよい。
通信管理システム50の送受信部51は、応答情報を受信する。続いて、通信管理システム50のセッション制御部58は、応答情報に含まれる通信ID「O02,C01」により特定される通信端末10b及び通信端末70xの間で中継装置30を介して画像データ及び音データのコンテンツデータを送信するためのセッションを確立するための制御を行う(ステップS92)。なお、セッションは、上記に限られず、通信端末10b及び通信端末70xの間で通信ネットワーク2を介して直接コンテンツデータを送信するためのセッションであってもよい。通信端末10b及び通信端末70x間の通信が確立すると、通信端末10b及び通信端末70xは、自通信端末で撮像された画像の画像データ及び自通信端末で集音された音データを中継装置30を介して相手側の通信端末へ送信する。通信端末10bの出力制御部14及び通信端末70xの出力制御部74は、受信したコンテンツデータをディスプレイ120及びディスプレイ720並びにスピーカ115及びスピーカ715へ出力する。これにより、ユーザ間で通話を開始できるようになる。
続いて、通信管理システム50の送受信部51は、通信確立の通知を通信端末10bへ送信する(ステップS93−1)。当該通信確立の通知は、ステップS92と並行して行われてもよい。通信端末10bの送受信部11が、当該通信確立の通知を受信すると、通信確立判定部15は、呼制御情報管理テーブルのレコードを消去する(ステップS93−2)。なお、通信確立判定部15は、呼制御情報管理テーブルのレコードに記録されている呼制御受付時刻から所定の時間が経過したときを、呼制御情報管理テーブルのレコードを消去する契機としてもよい。
通信が確立すると、通信端末10bの送受信部11は、プレゼンス「Chat」、属性情報「en,es,pt,ru,th」及び通信ID「O02」が含まれるプレゼンス情報を通信管理システム50へ送信する(図10のステップS22参照)。
また、通信が確立すると、最先に受信した応答の送信元以外の応答の送信元に対して通話の開始要求をキャンセルするため、通信端末70xの送受信部71は、通信ID「O01」に対するキャンセル情報を通信管理システム50へ送信する(ステップS94−1)。キャンセル情報には、自通信端末の通信ID「C01」及び最先に受信した応答の送信元以外の応答の送信元の通信端末10aの通信ID「O01」が含まれる。
通信管理システム50の送受信部51が、キャンセル情報を受信すると、キャンセル情報に含まれている通信ID「O01」により特定される通信端末10aへ、キャンセル情報を送信する(ステップS94−2)。通信端末10aの送受信部11は、通信管理システム50によって送信されるキャンセル情報を受信する。これにより、通信端末10a側では、通信端末70x側からの通話の開始要求に対する応答が不要になったことを把握することができる。また当該キャンセル情報を受信したとき、通信確立判定部15は、呼制御情報管理テーブルのレコードを消去する(ステップS94−3)。
上述のように、第1の実施の形態によれば、通信端末10は、呼制御情報管理テーブルに、通信開始の要求を送信した通信端末70の通信IDを記憶しておき、通信確立の要求に含まれる通信IDと一致するか否かを判定する。これにより、通信端末10は、通信確立前に行う呼制御処理を行った通信端末70から着信があった場合、すなわち通信開始の要求を送信した通信端末70からの通信確立の要求を受信した場合に限って、通信を確立して通話を開始することができる。その結果、無用な通信の確立を回避可能とすることができる。
<<第2の実施の形態>>
続いて、第1の実施の形態の変形例である第2の実施の形態について説明する。以下、第2の実施の形態について、第1の実施の形態と異なる点を説明する。第2の実施の形態では、第1の実施の形態における属性としての対応可能な言語「英語、中国語、韓国語、ポルトガル語、スペイン語、タイ語、ロシア語」が、診療科目「内科、外科、小児科、眼科、耳鼻科、皮膚科、歯科」に置き換えられる。
図15は、第2の実施の形態における通信端末70での属性一覧の画像データの表示例を示す図である(ステップS81参照)。第2の実施の形態の通信端末10は、複数の診療科目を有する総合病院のレセプショニストに好適に利用される。また、第2の実施の形態の通信端末70は、総合病院の患者に好適に利用される。
なお、属性は、上記の各実施の形態のものに限定されず、任意に設定することが可能である。属性としては、旅行先、不動産の所在等を示す「ニューヨーク、ロンドン、東京」等の地名や、「食品、衣料品、家電」等の物品の種類等が例示される。
上述のように、第2の実施の形態によれば、属性を任意に設定可能とすることで、通信システム1は、通信端末10のオペレータに任意のサービスの処理を対応させることができる。
<<第3の実施の形態>>
続いて、第3の実施の形態について、上記の各実施の形態と異なる点を説明する。第3の実施の形態において、通信端末10の外部機器接続I/F118には、マイク及びスピーカを内蔵したヘッドセットが接続されている。ステップS13−1において、通信端末10の出力制御部14は、更に、着信時及び通話時に利用する音入出力デバイスの選択を受け付けるための画面を作成してディスプレイ120に出力する。図16は、第3の実施の形態における通信端末10での音入出力デバイスの選択を受け付ける画面の表示例を示す図である。
通信端末10の操作入力受付部12は、ステップS13−1において、着信時及び通話時に利用する音入出力デバイスの選択を受け付ける。選択された音入出力デバイスの識別情報は、記憶・読出部19によって記憶部1000に記憶される。
ステップS84−2及びS85−2で、通信端末10の送受信部11が通話の開始要求を受信すると、出力制御部14は、記憶部1000に記憶されている着信時の音出力デバイスの識別情報を参照し、当該識別情報により識別される音出力デバイスから着信音を出力させる。
続いて、通信端末70との間の通信が確立すると、通信端末10の送受信部11は、通信端末70から送信される音データを受信する。この場合、通信端末10の出力制御部14は、記憶部1000に記憶されている通話時の音出力デバイスの識別情報を参照し、当該識別情報により識別される音出力デバイスから着信音を出力させる。また、通信端末10の送受信部11は、記憶部1000に記憶されている通話時の音入力デバイスの識別情報を参照し、当該識別情報により識別される音入力デバイスから入力される音の音データを、通信端末70へ送信する。
上述のように、第3の実施の形態によれば、通信端末10は、予め動作状態ごとに利用する音入出力デバイスを選択しておくことにより、利用する音入出力デバイスを、動作状態及びタイミングに応じて適切に切り替えることができる。
<<実施の形態の補足>>
上記各実施の形態における通信端末10、通信端末70及び通信管理システム50は、単一のコンピュータによって構築されてもよいし、各部(機能又は手段)を分割して任意に割り当てられた複数のコンピュータによって構築されていてもよい。
また、上記通信システム1の通信端末用プログラム、中継装置用プログラム及び通信管理用プログラムが記憶された記録媒体、並びに、これらプログラムが記憶されたHD204は、いずれもプログラム製品(Program Product)として提供される。
更に、上記通信システム1では、図8の(B)に示される端末管理テーブルにおいて通信端末のIPアドレスを識別情報として使用したが、これに限るものではなく、通信ネットワーク2上で通信端末10を特定するための通信端末識別情報であれば、通信端末10のFQDN(Fully Qualified Domain Name)を使用してもよい。この場合、周知のDNS(Domain Name System)サーバによって、FQDNに対応するIPアドレスが取得されることになる。
通信システム1において、「テレビ会議」は、「ビデオ会議」と置き換え可能な用語として用いられている。
また、上記各実施の形態では、コンテンツデータの一例として、画像データ及び音データについて説明したが、これに限るものではなく、触覚(touch)データであってもよい。この場合、一方の通信端末側でユーザが接触した感覚が、他方の通信端末側に伝達される。更に、コンテンツデータは、嗅覚(smell)データであってもよい。この場合、一方の通信端末側の匂い(臭い)が、他の通信端末側に伝達される。また、コンテンツデータは、画像データ、音データ、触覚データ及び嗅覚データ等のストリーミングデータ(メディア)のうち、少なくとも1つのデータを含めばよい。
また、上記各実施の形態では、通信システム1によってオペレータがユーザにサービスを提供する場合について説明したが、これに限るものではなく、打ち合わせ、家族間や友人間等の一般的な会話、又は、一方向での情報の提示等に使用されてもよい。
なお、第1から第3の実施の形態において、通信端末10は、通信端末の一例である。記憶部1000は、記憶部の一例である。送受信部11は、送信部及び受信部の一例である。通信IDは、識別情報の一例である。通信確立判定部15は、判定部の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。