以下に、図面を参照しながら、本発明に係る通信端末、通信システム、通信方法およびプログラムの実施形態を詳細に説明する。また、以下の実施形態によって本発明が限定されるものではなく、以下の実施形態における構成要素には、当業者が容易に想到できるもの、実質的に同一のもの、およびいわゆる均等の範囲のものが含まれる。さらに、以下の実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換、変更および組み合わせを行うことができる。
また、コンピュータソフトウェアとは、コンピュータの動作に関するプログラム、その他コンピュータによる処理の用に供する情報であってプログラムに準ずるものをいう(以下、コンピュータソフトウェアは、ソフトウェアという)。アプリケーションソフトとは、ソフトウェアの分類のうち、特定の作業を行うために使用されるソフトウェアの総称である。一方、オペレーティングシステム(OS)とは、コンピュータを制御し、アプリケーションソフトなどがコンピュータ資源を利用可能にするためのソフトウェアのことである。オペレーティングシステムは、入出力の制御、メモリやハードディスクなどのハードウェアの管理、プロセスの管理といった、コンピュータの基本的な管理・制御を行っている。アプリケーションソフトウェアは、オペレーティングシステムが提供する機能を利用して動作する。プログラムとは、コンピュータに対する指令であって、一の結果を得ることができるように組み合わせたものをいう。また、プログラムに準ずるものとは、コンピュータに対する直接の指令ではないためプログラムとは呼べないが、コンピュータの処理を規定するという点でプログラムに類似する性質を有するものをいう。例えば、データ構造(データ要素間の相互関係で表される、データの有する論理的構造)がプログラムに準ずるものに該当する。
(通信システムの全体構成)
図1は、実施形態に係る通信システムの概略構成図である。図1を参照しながら、本実施形態に係る通信システム1の構成の概略を説明する。
図1に示すように、通信システム1は、複数の通信端末10aa、10ab、10ba、10bb、10ca、10cb、10da、10dbと、各通信端末用のディスプレイ120aa、120ab、120ba、120bb、120ca、120cb、120da、120dbと、管理システム50と、プログラム提供システム90と、を含み、通信ネットワーク2を介して互いに通信可能となるように構築されている。
なお、図1では、通信端末10aa、10ab、10ba、10bb、10ca、10cb、10da、10dbが示されているが、これらのうち任意の通信端末を示す場合または総称する場合、単に「通信端末10」と称する。また、図1に示す通信システム1に含まれる複数の通信端末10は、一例を示すものであり、異なる台数であってもよい。
また、図1では、ディスプレイ120aa、120ab、120ba、120bb、120ca、120cb、120da、120dbが示されているが、これらのうち任意のディスプレイを示す場合または総称する場合、単に「ディスプレイ120」と称する。また、図1に示す通信システム1に含まれる複数のディスプレイ120は、一例を示すものであり、通信端末10の台数に従って異なる台数であってもよい。
通信端末10は、他の装置との間で、各種情報を送受信する端末である。通信端末10は、他の通信端末10との間でセッションを確立し、確立したセッションにおいて、音声データおよび画像データ(映像データ)を含むコンテンツデータの送受信による通話を行う。これにより、通信システム1において、複数の通信端末10間のテレビ会議が実現される。
管理システム50は、通信端末10を一元的に管理するコンピュータである。管理システム50は、通信端末10間でのセッションを確立することにより、通信端末10間における通話等によるテレビ会議を実現する。管理システム50は、所定の端末10からセッションの開始要求情報を受信した場合に、開始要求情報を送信した通信端末10(開始要求端末)と宛先端末との間のセッションを確立し、テレビ会議を開始させる。したがって、管理システム50は、確立したセッションにより、複数の通信端末10間でコンテンツデータの中継を行う。なお、管理システム50は複数の通信端末10間でセッションを確立するものの、実際にコンテンツデータの中継は、別の中継装置により行われるものとしてもよい。本実施形態では、説明を簡略にするため、セッションの確立、およびコンテンツデータの中継は、管理システム50が行うものとして説明する。
プログラム提供システム90は、通信端末10に各種機能または各種手段を実現させるための端末用プログラムが記憶された補助記憶装置(HDD(Hard Disk Drive)等)を備えており、通信端末10に端末用プログラム(後述する通信アプリA等)を提供するコンピュータである。また、プログラム提供システム90は、管理システム50等に各種機能または各種手段を実現させるためのプログラムも補助記憶装置に記憶しており、管理システム50等に、対応するプログラムを送信することができる。
通信ネットワーク2は、図1に示すように、例えば、LAN(Local Area Network)2a〜2d、専用線2ab、2cd、およびインターネット2iを含んで構築されている。なお、通信ネットワーク2は、図1に示すような構成に限定されるものではなく、その他のネットワーク機器が含まれるものとしてもよく、有線だけでなく無線による通信が行われる箇所があってもよい。
LAN2a〜2d、および専用線2ab、2cdは、それぞれルータ70a〜70d、70ab、70cdを含む。ルータ70a〜70d、70ab、70cdは、通信データの最適な経路の選択を行うネットワーク機器である。なお、ルータ70a〜70d、70ab、70cdのうち任意のルータを示す場合または総称する場合、単に「ルータ70」と称する。
通信端末10(10aa、10ab、・・・)、およびルータ70aは、LAN2aによって通信可能に接続されている。また、通信端末10(10ba、10bb、・・・)、およびルータ70bは、LAN2bによって通信可能に接続されている。また、LAN2a、LAN2b、およびルータ70abは、専用線2abによって通信可能に接続されており、地域A内で構築されている。
一方、通信端末10(10ca、10cb、・・・)、およびルータ70cは、LAN2cによって通信可能に接続されている。また、通信端末10(10da、10db、・・・)、およびルータ70dは、LAN2dによって通信可能に接続されている。また、LAN2c、LAN2d、およびルータ70cdは、専用線2cdによって通信可能に接続されており、地域B内で構築されている。
地域Aおよび地域Bのネットワークは、それぞれルータ70ab、70cdによってインターネット2iを介して通信可能に接続されている。
また、管理システム50およびプログラム提供システム90は、インターネット2iを介して、各通信端末10と通信可能に接続されている。なお、管理システム50およびプログラム提供システム90は、地域Aまたは地域Bに設置されていてもよいし、これら以外の地域に設置されていてもよい。
また、図1において、各通信端末10、管理システム50、各ルータ70およびプログラム提供システム90の近傍に示されている4組の数字は、一般的なIPv4におけるIP(Ineternet Protocol)アドレスを簡易的に示している。例えば、通信端末10aaのIPアドレスは、「1.2.1.3」であるものとしている。なお、IPv4ではなく、IPv6を用いてもよいが、説明を簡略化するため、IPv4を用いて説明する。
なお、図1に示す通信システム1の構成は、一例を示すものであり、この構成に限定されるものではない。すなわち、図1に示す各装置、システムの台数は、図1に示す台数に限定されるものではない。また、図1では、地域A、Bの2つの地域のネットワーク構成が示されているが、同一地域内のネットワークであってもよく、3つ以上の地域がネットワークで接続された構成であってもよい。
(通信端末のハードウェア構成)
図2は、実施形態に係る通信端末のハードウェア構成の一例を示す図である。図2を参照しながら、通信端末10のハードウェア構成の詳細について説明する。
図2に示すように、本実施形態に係る通信端末10は、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、SSD(Solid State Drive)105と、メディアドライブ107と、操作ボタン108と、電源スイッチ109と、を備えている。
CPU101は、通信端末10全体の動作を制御する演算装置である。ROM102は、通信端末10用のプログラム(後述する通信アプリA等)を記憶している不揮発性記憶装置である。RAM103は、CPU101のワークエリアとして使用される揮発性記憶装置である。
SSD105は、画像データ、音声データおよび動画データ等の各種データを記憶する補助記憶装置である。なお、SSD105は、補助記憶装置の一例であり、HDD等であってもよい。メディアドライブ107は、CPU101の制御に従って、フラッシュメモリ等であるメディア106に対するデータの読み出しおよび書き込みを制御する装置である。メディア106は、通信端末10に対して着脱自在の記憶装置である。なお、メディア106は、CPU101の制御に従ってデータの読み出しおよび書き込みを行う不揮発性メモリであれば、フラッシュメモリに限定されるものではなく、EEPROM(Electrically Erasable and Programmable ROM)等を用いてもよい。
操作ボタン108は、通信端末10に動作を指示する場合等に操作されるボタンである。電源スイッチ109は、通信端末10の電源のオン/オフを切り替えるスイッチである。
また、通信端末10は、ネットワークI/F111と、撮像素子I/F113と、音声入出力I/F116と、ディスプレイI/F119と、を備えている。
ネットワークI/F111は、通信ネットワーク2を利用してデータを通信するためのインターフェースである。
撮像素子I/F113は、CPU101の制御に従って被写体を撮像して画像データを得るカメラ112との間で画像データを伝送するためのインターフェースである。カメラ112は、レンズ、および光を電荷に変換して被写体の画像(映像)を電子化する固体撮像素子を含む。カメラ112は、ケーブル112cによって撮像素子I/F113に接続される。固体撮像素子としては、CMOS(Complementary Metal Oxide Semiconductor)またはCCD(Charge Coupled Device)等が用いられる。
音声入出力I/F116は、CPU101の制御に従って、音声を入力するマイク114および音声を出力するスピーカ115との間で音声信号(音声データ)の入出力を処理するインターフェースである。マイク114およびスピーカ115は、それぞれ、ケーブル114cおよびケーブル115cによって音声入出力I/F116に接続される。
ディスプレイI/F119は、CPU101の制御に従って、外付けのディスプレイ120に画像データを伝送するためのインターフェースである。ディスプレイ120は、被写体の画像および操作用アイコン等を表示する液晶または有機EL等によって構成された表示装置である。ディスプレイ120は、ケーブル120cによってディスプレイI/F119に接続される。ケーブル120cは、アナログRGB(VGA)信号用のケーブルであってもよく、コンポーネントビデオ用のケーブルであってもよく、HDMI(登録商標)(High−Definition Multimedia Interface)またはDVI(Digital Video Interactive)信号用のケーブルであってもよい。
上述のCPU101、ROM102、RAM103、SSD105、メディアドライブ107、操作ボタン108、電源スイッチ109、ネットワークI/F111、撮像素子I/F113、音声入出力I/F116およびディスプレイI/F119は、アドレスバスおよびデータバス等のバスライン110によって互いに通信可能に接続されている。
なお、図2に示した通信端末10のハードウェア構成は一例を示すものであり、図2に示した構成要素以外の構成要素を含むものとしてもよい。また、カメラ112、マイク114およびスピーカ115は、通信端末10に一体的に備えられるものとしてもよく、または、カメラ112、マイク114およびスピーカ115のうち少なくとも少なくともいずれかは、外付けの別体の装置であってもよい。
(管理システム等のハードウェア構成)
図3は、実施形態に係る管理システムおよびプログラム提供システムのハードウェア構成の一例を示す図である。図3を参照しながら、管理システム50およびプログラム提供システム90のハードウェア構成の詳細について説明する。
まず、図3を参照しながら管理システム50のハードウェア構成について説明する。図3に示すように、管理システム50は、CPU201と、ROM202と、RAM203と、補助記憶装置205と、メディアドライブ207と、ディスプレイ208と、ネットワークI/F209と、キーボード211と、マウス212と、DVD(Digital Versatile Disc)ドライブ214と、を備えている。
CPU201は、管理システム50全体の動作を制御する演算装置である。ROM202は、管理システム50用のプログラムを記憶している不揮発性記憶装置である。RAM203は、CPU201のワークエリアとして使用される揮発性記憶装置である。
補助記憶装置205は、後述する認証管理DB5001、端末管理DB5002、グループ管理DB5003およびセッション管理DB5004等の各種データを記憶するHDDまたはSSD等の記憶装置である。メディアドライブ207は、CPU201の制御に従って、フラッシュメモリ等の記録メディア206に対するデータの読み出しおよび書き込みを制御する装置である。
ディスプレイ208は、カーソル、メニュー、ウィンドウ、文字または画像等の各種情報を表示する液晶または有機EL等によって構成された表示装置である。ネットワークI/F209は、通信ネットワーク2を利用してデータを通信するためのインターフェースである。
キーボード211は、文字、数字、各種指示の選択、およびカーソルの移動等を行う入力装置である。マウス212は、各種指示の選択および実行、処理対象の選択、ならびにカーソルの移動等を行うための入力装置である。
DVDドライブ214は、着脱自在な記憶媒体の一例としてのDVD−ROMまたはDVD−R等のDVD213に対するデータの読み出しおよび書き込みを制御する装置である。
上述のCPU201、ROM202、RAM203、補助記憶装置205、メディアドライブ207、ディスプレイ208、ネットワークI/F209、キーボード211、マウス212およびDVDドライブ214は、アドレスバスおよびデータバス等のバスライン210によって互いに通信可能に接続されている。
なお、図3に示した管理システム50のハードウェア構成は一例を示すものであり、図3に示した構成要素を全て含む必要はなく、または、その他の構成要素を含むものとしてもよい。
また、上述の管理システム50用のプログラムは、インストール可能な形式または実行可能な形式のファイルによって、記録メディア206またはDVD213等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
また、プログラム提供システム90は、上述の管理システム50と同様のハードウェア構成を有しているため、その説明を省略する。ただし、ROM202には、プログラム提供システム90を制御するためのプログラム提供システム90用のプログラムが記録されている。この場合も、プログラム提供システム90用のプログラムは、インストール可能な形式または実行可能な形式のファイルで、記録メディア206またはDVD213等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
なお、上述の着脱可能な記録媒体の他の例として、CD−R(Compact Disc Recordable)またはブルーレイディスク等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
(通信端末のソフトウェア構成)
図4は、実施形態に係る通信端末のソフトウェア構成の一例を示す図である。図4を参照しながら、通信端末10のソフトウェア構成の詳細について説明する。
通信端末10には、クライアントアプリとして通信アプリAがインストールされている。ここで、アプリとは、アプリケーションソフトを意味する。図4に示すように、OS(Operating System)1020、および通信アプリAは、通信端末10のRAM103の作業領域1010上で動作する。
OS1020は、基本的な機能を提供し、通信端末10全体を管理する基本ソフトウェアである。通信アプリAは、OS1020の制御に従って動作し、他の通信端末10と通信(通話)するためのアプリである。
なお、通信アプリAの通信プロトコルとしては、SIP(Session Initiation Protocol)、H.323、IRC(Internet Relay Chat)、またはJingle等が挙げられる。
(音響エコーおよびエコーキャンセラについて)
図5は、音響エコーの仕組みを説明する図である。まず、図5を参照しながら、音響エコーが発生する仕組みについて説明する。
図5に示すように、自拠点の通信端末1000aおよび他拠点の通信端末1000bが
、管理システム5000を介して通話を行う場合を考える。通信端末1000aは、マイク1114aと、スピーカ1115aとを備える。通信端末1000bは、マイク1114bと、スピーカ1115bとを備える。
自拠点の話者の発話によって、通信端末1000aのマイク1114aに音声信号が入力されたものとする。入力された自拠点の音声信号は、管理システム5000を介して、他拠点の通信端末1000bへ送信される。他拠点の通信端末1000bは、受信した音声信号をスピーカ1115bから音声として再生する。このとき、スピーカ1115bから再生された音声は、当該スピーカ1115bを搭載する通信端末1000bのマイク1114bにより入力される。これによって、他拠点の通信端末1000bのマイク1114bに入力された音声は、音声信号として、管理システム5000を介して、自拠点の通信端末1000aへ送信され、当該通信端末1000aのスピーカ1115aから音声として再生される。この結果、自拠点のマイク1114aに入力された自拠点の話者の音声信号が、自拠点のスピーカ1115aから再生される現象、すなわち音響エコーが発生する。
この音響エコーが発生すると、一度マイクに入力された音声信号が同じ拠点のスピーカから常に再生されることになるため、テレビ会議の実施に支障を来すことになる。また、図5に示すような自拠点で発生した音響エコーは、他拠点でも発生する。これによって、一度マイクに入力された音声信号が自拠点および他拠点で常に再生され続けてしまい、テレビ会議の実施に支障を来す。
図6は、エコーキャンセラの仕組みを説明する図である。次に、図6を参照しながら、エコーキャンセラによるエコーキャンセル処理について説明する。
エコーキャンセラは、音響エコーを発生しないようにする技術または装置である。具体的には、エコーキャンセラは、マイクから入力された音声信号から、スピーカで再生される音声信号を差し引くこと(エコーキャンセル処理)によって、音響エコーの発生を抑制する。
図6に示すように、通信端末1000bは、マイク1114bおよびスピーカ1115bのほか、エコーキャンセラ1117bを備えるものとする。エコーキャンセラ1117bは、フィルタ1301と、減算器1302と、を有する。
フィルタ1301は、例えば、出力する信号を、目標信号に近づけるように自身の特性を調整する適応フィルタである。減算器1302は、マイク1114bから入力された音声信号と、フィルタ1301が出力する信号との差分をとる(減算する)処理部である。
具体的には、フィルタ1301は、図6に示すように、スピーカ1115bから再生される音声信号を入力信号とし、当該入力信号がスピーカ1115bから再生されて、再生された音声がマイク1114bから入力された場合の音声信号が、フィルタ1301の目標信号となる。すなわち、フィルタ1301は、減算器1302によるマイク1114bから入力された音声信号と、フィルタ1301が出力する信号との差分が最小となるように自身の特性を調整する。この結果、減算器1302からの出力(差分)は限りなく小さく、すなわち、スピーカ1115bから再生された後、マイク1114bに入力した音声信号が取り除かれることになり、音響エコーの発生が抑制される。これによって、音響エコーによるテレビ会議への影響も低減し、快適なテレビ会議が実現される。
図7は、ダブルトークによる音声信号への影響を説明する図である。次に、図7を参照しながら、ダブルトークが発生した場合の音声信号への影響について説明する。
図7に示すように、他拠点の通信端末1000bのマイク1114bに対して、スピーカ1115bから再生された音声(すなわち、自拠点の話者の音声)、および、他拠点の話者の発話による音声の両方が入力された場合、すなわち、ダブルトークの状態の場合を想定する。このとき、通信端末1000bは、上述した機能を有するエコーキャンセラ1117bを備えているので、マイク1114bに入力された音声信号に対してエコーキャンセラ1117bによるエコーキャンセル処理が施されて、他拠点の話者の発話による音声信号だけが取り出されることが期待される。
しかし、他拠点のマイク1114bが、スピーカ1115bから再生された音声、および、他拠点の話者の発話による音声の両方を入力した場合、マイク1114bの最大受電レベルを超える等の理由により、入力した音声信号が変形され、エコーキャンセル処理が正常に機能せずキャンセル不良が発生する場合がある。この場合、エコーキャンセラ1117bにより処理された音声信号は、スピーカ1115bから再生された音声信号でもなく、他拠点の話者の発話による音声信号でもない異常な音声信号(例えば途切れ等を含む音声信号)となる。そして、この異常な音声信号が、管理システム5000を介して通信端末1000aに送信されることになり、テレビ会議の品質が低下することになる。
そこで、本実施形態に係る通信端末10は、ダブルトークの状態の場合に、エコーキャンセラのキャンセル不良の発生をテレビ会議の参加者(話者)に認識させる動作を実現する。この通信端末10による動作の概要を、以下の図8および図9で説明する。
(本実施形態に係る通信端末の動作の概要)
図8は、実施形態に係る通信端末においてエコーキャンセラのキャンセル不良を検出する動作の概要を説明する図である。図9は、実施形態に係る通信システムにおいてエコーキャンセラのキャンセル不良を通知する動作の概要を説明する図である。
まず、図8を参照しながら、本実施形態に係る通信端末10においてエコーキャンセラのキャンセル不良を検知する動作について説明する。図8に示すように、自拠点の通信端末10aおよび他拠点の通信端末10bが、管理システム50を介して通話を行う場合を考える。通信端末10aは、マイク114aと、スピーカ115aと、を備える。通信端末10bは、マイク114bと、スピーカ115bと、エコーキャンセラ117bと、検出器118と、を備えている。エコーキャンセラ117bは、フィルタ301と、減算器302と、を有する。フィルタ301および減算器302の機能は、それぞれ図6で上述したフィルタ1301および減算器1302と同様である。なお、通信端末10aも、通信端末10bと同様にエコーキャンセラを備えるが、図9では、通信端末10bが有するエコーキャンセラ117bのみ図示している。
図8に示すように、他拠点の通信端末10bのマイク114bに対して、スピーカ115bから再生された音声(すなわち、自拠点の話者の音声)、および、他拠点の話者の発話による音声の両方が入力された場合、すなわち、ダブルトークの状態の場合を想定する。このとき、通信端末10bは、エコーキャンセラ117bを備えているので、マイク114bに入力された音声信号に対してエコーキャンセラ117bによるエコーキャンセル処理が施されて、他拠点の話者の発話による音声信号だけが取り出されることが期待される。
しかし、図7で上述したのと同様に、マイク114bが、スピーカ115bから再生された音声、および、他拠点の話者の発話による音声の両方を入力した場合、マイク114bの最大受電レベルを超える等の理由により、入力した音声信号が変形され、エコーキャンセル処理が正常に機能せずキャンセル不良が発生する場合がある。このとき、エコーキャンセラ117bにより出力された音声信号、すなわち、エコーキャンセラ117bによりエコーキャンセル処理が行われた音声信号は、検出器118へ入力される。検出器118は、エコーキャンセラ117bから出力された音声信号の強度が所定値以上であるか否かを検出する処理部である。検出器118は、エコーキャンセラ117bから出力された音声信号の強度が所定値未満である場合、エコーキャンセラ117bによるエコーキャンセル処理は正常であると判断し、当該音声信号を通信端末10aへ送信する。一方、検出器118は、エコーキャンセラ117bから出力された音声信号の強度が所定値以上であることを検出した場合、エコーキャンセラ117bによるエコーキャンセル処理でキャンセル不良が発生したと判断し、当該音声信号を通信端末10aへ送信しないものとする。これによって、キャンセル不良が発生した音声信号(例えば途切れ等を含む音声信号)が相手側(図8における通信端末10a)へ送信されることがないので、テレビ会議の品質の低下を抑制することができる。ただし、単にキャンセル不良が発生した音声信号を相手側へ送信しないのみでは、互いの拠点の話者がキャンセル不良の発生を認識することができない。そこで、本実施形態に係る通信端末10は、キャンセル不良の発生を相手側へ通知するものとする。当該通知動作の概要を図9にて説明する。
図9に示す構成の例では、3つ通信端末10(10a、10b、10c)が、管理システム50を介して互いに通話しているものとし、通信端末10aにおいてダブルトークでのキャンセル不良が発生したものとする。この場合、通信端末10aは、キャンセル不良が発生したことを管理システム50へ通知する(図9の(1))。また、通信端末10aは、当該通信端末10aを利用する話者に対して、キャンセル不良が発生したことを示す警告音を再生する(図9の(2))。この警告音によって、通信端末10aを利用する話者は、通信端末10aにおいてキャンセル不良が発生していることを認識することができ、発話による音声信号の入力を止めたり、相手側の話者へ発話を譲る等の対応を促すことができる。
また、管理システム50は、通信端末10aからキャンセル不良の発生の通知を受信すると、当該通知を他の通信端末10(10b、10c)へ送信する(図9の(3))。そして、通信端末10b、10cは、管理システム50からキャンセル不良の発生の通知を受信すると、それぞれ自身のディスプレイ120にキャンセル不良が発生した旨を表示する(図9の(4))。これによって、通信端末10aに対する相手側である通信端末10b、10cを利用する各話者は、通信端末10aにおいてキャンセル不良が発生していることを認識することができ、発話による音声信号の入力を止めたり、相手側の話者へ発話を譲る等の対応を促すことができる。
なお、図8に示したエコーキャンセラ117bおよび検出器118は、図4で上述したソフトウェアである通信アプリAが実行されることによって実現される。ただし、エコーキャンセラ117bおよび検出器118のうち少なくともいずれかは、ASIC(Application Specific Integrate Circuit)またはFPGA(Field−Programmable Gate Array)等のハードウェア回路によって実現されるものとしてもよい。
(通信システムの機能ブロックの構成)
図10は、実施形態に係る通信システムの機能ブロックの構成の一例を示す図である。図10を参照しながら、本実施形態に係る通信システム1の機能ブロックの構成について説明する。
<通信端末の機能ブロックの構成>
図10に示すように、通信端末10は、通信部11(受信部、送信部)と、操作入力受付部12と、撮像部13と、表示制御部14と、音声入力部15と、音声出力部16と、記憶・読出部17と、記憶部18と、認証要求部19と、音声処理部20と、検出部21と、通知部22と、を有している。
通信部11は、通信ネットワーク2を介して、他の通信端末10または各システムと各種データの送受信を行う機能部である。通信部11は、図2に示すネットワークI/F111によって実現される。
通信部11は、当該通信端末10が他の通信端末10とセッションを確立し、通話によるテレビ会議を開始する前に、管理システム50から、宛先端末の候補としての各通信端末10の状態を示す各状態情報の受信を開始する。ここで、宛先端末の候補とは、通信端末10が、テレビ会議を行う相手、すなわちセッションの相手として指定可能なテレビ会議の相手として候補となる他の通信端末10である。すなわち、通信端末10は、宛先端末の候補として予め設定されていない通信端末とは、セッションを確立することができず、テレビ会議を行うことができない。
また、状態情報は、各通信端末10の稼動状態(オンラインかオフラインかの状態)と、オンラインにおいてはさらに通話中であるか、待受け中であるか等の詳細な状態(以下、通信状態と称する)を示す。また、状態情報は、各通信端末10の稼動状態および通信状態だけでなく、ケーブルが通信端末10から外れている、音声を出力できるが画像は出力できない、または、音声を出力さないよう設定されている(MUTE)等、様々な状態を示すものとしてもよいが、以下では、一例として、稼動状態および通信状態を示す場合について説明する。
通信部11は、当該通信端末10が開始要求端末として動作する場合には、開始要求情報を管理システム50に送信する。ここで、開始要求情報とは、テレビ会議に用いられるセッションの開始を要求する情報である。開始要求情報は、具体的には、開始を要求する旨を示す情報と、開始要求情報の送信元である開始要求端末の端末IDと、セッションの相手となる宛先端末の端末IDと、を含む。端末IDは、通信端末10を識別するための情報であって、予め通信端末10に記憶させておく他、ユーザが直接通信端末10へ入力して決定するものとしてもよい。
操作入力受付部12は、ユーザによる各種入力を受け付ける機能部である。操作入力受付部12は、図2に示す操作ボタン108および電源スイッチ109によって実現される。
例えば、ユーザが、操作入力受付部12のうち図2に示す電源スイッチ109をオンにすると、当該通信端末10の電源がオン状態になる。また、ユーザが電源スイッチ109をオンの状態からオフにすると、通信部11は、管理システム50へ、当該通信端末10の電源がオフになった旨の状態情報を送信してから、当該通信端末10の電源が完全にオフとなる。これによって、管理システム50は、通信端末10が電源オンから電源オフになったことを把握することができる。
撮像部13は、被写体を撮像して、撮像して得た画像データを取得する機能部である。撮像部13は、図2に示すCPU101によるソフトウェアである通信アプリAの実行、ならびに、カメラ112および撮像素子I/F113によって実現される。
表示制御部14は、ディスプレイ120(表示装置)に対して画像データ等の表示制御を行う機能部である。表示制御部14は、図2に示すCPU101による通信アプリAの実行によって実現される。
表示制御部14は、例えば、テレビ会議の要求元としての当該通信端末10が所望の宛先としての通信端末10とテレビ会議の通話を開始する前に、通信部11によって受信された宛先端末の候補の状態情報を反映させて、各宛先端末の候補の名前が含まれた宛先リストをディスプレイ120に表示させる。
音声入力部15は、マイク114(入力装置)によってユーザ(話者)の音声が音声信号に変換された後、当該音声信号を入力する機能部である。音声入力部15は、図2に示す音声入出力I/F116によって実現される。
音声出力部16は、音声信号をスピーカ115(出力装置)に出力し、スピーカ115から音声を出力させる機能部である。音声出力部16は、図2に示すCPU101による通信アプリAの実行、および音声入出力I/F116によって実現される。
記憶・読出部17は、記憶部18に各種データを記憶したり、記憶部18に記憶された各種データを読み出す処理を行う機能部である。記憶部18には、例えば、宛先端末との通話を行う際に受信されるコンテンツデータが、受信される度に上書き記憶される。このうち、上書きされる前の画像データによってディスプレイ120に画像が表示され、上書きされる前の音声データによってスピーカ115から音声が出力される。記憶・読出部17は、図2に示すCPU101による通信アプリAの実行によって実現される。
認証要求部19は、当該通信端末10の電源がオンしたことを契機として、通信部11から通信ネットワーク2を介して管理システム50に、ログインの認証を要求する旨を示す認証要求情報、および当該通信端末10の現時点のIPアドレスを送信する機能部である。認証要求部19は、図2に示すCPU101による通信アプリAの実行によって実現される。
音声処理部20は、宛先端末との通話において、音声入力部15により入力された音声信号に対してエコーキャンセル処理を行う機能部である。音声処理部20は、図7に示したエコーキャンセラ117bに相当し、図2に示すCPU101による通信アプリAの実行によって実現される。
検出部21は、音声処理部20によりエコーキャンセル処理が行われた音声信号の強度が所定値以上であるか否かを検出する処理部である。検出部21は、音声処理部20によりエコーキャンセル処理が行われた音声信号の強度が所定値未満である場合、エコーキャンセル処理は正常であると判断し、当該音声信号を通信部11を介して宛先端末へ送信する。一方、検出部21は、音声処理部20によりエコーキャンセル処理が行われた音声信号の強度が所定値以上であることを検出した場合、エコーキャンセル処理でキャンセル不良が発生したと判断し、当該音声信号を宛先端末へ送信しない。検出部21は、図7に示した検出器118に相当し、図2に示すCPU101による通信アプリAの実行によって実現される。
なお、検出部21が、音声処理部20でのエコーキャンセル処理でキャンセル不良が発生したか否かを検出するためには、上述のように音声信号の強度が所定値以上であるか否かを検出することに限定されず、その他の方法で検出するものとしてもよい。例えば、波形解析または周波数解析等により、途切れ等の音声信号が含まれているか否かによりキャンセル不良を検出する等の方法によって検出するものとしてもよい。
通知部22は、当該通信端末10においてキャンセル不良が発生したことを、通信部11を介して宛先端末へ通知する機能部である。また、通知部22は、当該通信端末10においてキャンセル不良が発生したこと場合、音声出力部16に警告音を再生させる。通知部22は、図2に示すCPU101による通信アプリAの実行によって実現される。
なお、表示制御部14、認証要求部19、音声処理部20、検出部21、および通知部22のうち少なくともいずれかは、ASICまたはFPGA等のハードウェア回路によって実現されるものとしてもよい。
また、図10に示した通信端末10の各機能部は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図10に示した通信端末10で独立した機能部として図示した複数の機能部を、1つの機能部として構成してもよい。一方、図10に示した通信端末10の1つ機能部が有する機能を複数に分割し、複数の機能部として構成するものとしてもよい。
<管理システムの機能ブロックの構成>
図10に示すように、管理システム50は、通信部51と、認証部52と、状態管理部53と、端末抽出部54と、端末状態取得部55と、セッション制御部56と、記憶・読出部57と、記憶部58と、を有している。記憶部58は、図3に示す補助記憶装置205によって実現され、図10に示すように、認証管理DB5001と、端末管理DB5002と、グループ管理DB5003と、セッション管理DB5004とを記憶している。以下、記憶部58に記憶されている各DBにおいて管理される各テーブルについて説明する。
<<認証管理テーブル>>
図11は、認証管理テーブルの一例を示す図である。
記憶部58は、図11に示す認証管理テーブルを含む認証管理DB5001を記憶している。認証管理テーブルでは、ログインの認証を行う通信端末10を識別する端末IDに対して、パスワードが関連付けられて管理される。ここで、IDは、利用する通信端末10を識別する情報であり、パスワードは、ログインの認証するために利用される情報である。例えば、図11に示す認証管理テーブルにおいて、端末IDが「10aa」で識
別されるパスワードは「aaaa」であることが示されている。
なお、端末IDは、通信端末10を一意に識別するために使われる文字、記号、数字または各種のしるし等の識別情報を示す。また、端末IDは、上述の文字、記号、数字および各種のしるしのうち、少なくとも2つが組み合わされた識別情報であってもよい。
<<端末管理テーブル>>
図12は、端末管理テーブルの一例を示す図である。
記憶部58は、図12に示す端末管理テーブルを含む端末管理DB5002を記憶している。端末管理テーブルでは、各通信端末10の端末ID毎に、端末名、各通信端末10の稼動状態、他の通信端末との通信状態、および各通信端末10のIPアドレスが関連付けられて管理される。
ここで、稼動状態としては、電源がオンされ、通信が可能または通信中の状態であるオ
ンラインと、電源がオンされていない等、通信が可能でない状態であるオフラインとがあ
る。また、通信状態としては、例えば、「Calling」、「Ringing」、「Accepted」、「Busy」、および「None」等がある。「Calling」は、他の通信端末10を呼び出している状態、すなわち、他の通信端末10に対しテレビ会議に用いられるセッションの開始要求情報を送信し、応答を待っている状態を示す。「Ringing」は、他の通信端末10から呼び出されている状態、すなわち、他の通信端末10から開始要求情報を受信し、受信した開始要求情報に対する応答が完了していない状態を示す。「Accepted」は、他の通信端末10からの開始要求情報に対し許可の応答が完了しているが、セッションの確立が完了していない状態、および、自端末が送信した開始要求情報に対し許可の応答の受信が完了しているが、セッションの確立が完了していない状態を示す。「Busy」は、他の通信端末10とのセッションが確立し、テレビ会議におけるコンテンツデータの通信による通話が行われている状態を示す。「None」は、他の通信端末10と通信しておらず、待ち受け中の状態を示す。
例えば、図12に示す端末管理テーブルにおいて、端末IDが「10ad」の通信端末10adは、端末名が「日本 東京事業所 AD端末」で、稼動状態が「オンライン」で、通信状態がコンテンツデータの通信による通話が行われている状態を示す「Busy」で、この通信端末10adのIPアドレスが「1.2.1.6」であることが示されている。
<<グループ管理システム>>
図13は、グループ管理テーブルの一例を示す図である。
記憶部58は、図13に示すグループ管理テーブルを含むグループ管理DB5003を記憶している。グループ管理テーブルでは、管理システム50に予め登録されているテレビ会議のグループごとに、当該グループに含まれる通信端末10の端末IDが管理される。すなわち、グループ管理テーブルでは、グループを識別するグループIDと、当該グループに含まれる通信端末10の端末IDとが関連付けられて管理される。
例えば、図13に示すグループ管理テーブルにおいて、グループIDが「G002」のグループは、端末IDが「10ac」、「10ca」、「10cb」である通信端末10を含むことが示されている。
<<セッション管理テーブル>>
図14は、セッション管理テーブルの一例を示す図である。
記憶部58は、図14に示すセッション管理テーブルを含むセッション管理DB5004を記憶している。セッション管理テーブルでは、通信端末10間でコンテンツデータが通信されるセッションを識別するためのセッションID毎に、セッションの開始要求端末の端末ID、およびセッションの開始要求情報において相手先として指定された宛先端末の端末IDが関連付けられて管理される。
例えば、図14に示すセッション管理テーブルにおいて、セッションID「se1」で識別されるセッションは、端末IDが「10aa」の開始要求端末(通信端末10aa)と、端末IDが「10db」の宛先端末(通信端末10db)との間で確立されたことを示す。
なお、図11〜図14に示した各テーブルで管理される情報は、テーブル形式の情報としているが、これに限定されるものではなく、管理される各情報が関連付けられることができれば、テーブル形式に限定されるものではない。
図10に戻り、管理システム50の機能ブロックの説明に戻る。
通信部51は、通信ネットワーク2を介して、通信端末10または各システムと各種データの送受信を行う機能部である。通信部51は、図3に示すネットワークI/F209によって実現される。
認証部52は、通信部51を介して受信された認証要求情報に含まれている端末IDおよびパスワードを検索キーとし、記憶部58の認証管理テーブル(図11参照)を検索し、認証管理テーブルに同一の端末IDおよびパスワードが管理されているかを判断することによって端末認証を行う機能部である。認証部52は、図3に示すCPU201によるプログラムの実行によって実現される。
状態管理部53は、図12に示す端末管理テーブルの稼動状態および通信状態を管理す
る機能部である。状態管理部53は、ログインの認証を要求してきた通信端末10の稼動状態を管理すべく、端末管理テーブルに、この通信端末10の端末ID、当該通信端末10の稼動状態、および当該通信端末10のIPアドレスを関連付けて記憶して管理する。
状態管理部53は、通信端末10のユーザが電源スイッチ109をオフ状態からオン状態にすることで、この通信端末10から送られてきた電源をオンする旨の情報に基づいて、端末管理テーブルの稼動状態をオフラインからオンラインに更新する。また、状態管理部53は、ユーザが通信端末10の電源スイッチ109をオン状態からオフ状態にすることで、この通信端末10から送られてきた電源をオフする旨の情報に基づいて、端末管理テーブルの稼動状態をオンラインからオフラインに更新する。
状態管理部53は、図3に示すCPU201によるプログラムの実行によって実現される。
端末抽出部54は、ログインの認証要求した通信端末10等、処理対象となる対象端末の端末IDを検索キーとして、図13に示すグループ管理テーブルを検索し、対象端末と通話することができる、すなわちセッションを確立することのできる宛先端末の候補(同じグループの通信端末10)の端末IDを読み出す機能部である。端末抽出部54は、図3に示すCPU201によるプログラムの実行によって実現される。
端末状態取得部55は、端末IDを検索キーとして、図12に示す端末管理テーブルを検索し、端末ID毎に稼動状態および通信状態を読み出す機能部である。これにより、端末状態取得部55は、ログインの認証要求をしてきた通信端末10と通話することができる宛先端末の候補の稼動状態および通信状態を取得することができる。端末状態取得部55は、図3に示すCPU201によるプログラムの実行によって実現される。
セッション制御部56は、図14に示すセッション管理テーブルに、生成したセッションID、開始要求端末の端末IDおよび宛先端末の端末IDを関連付けて記憶して管理する機能部である。セッション制御部56は、通信端末10間のセッションの確立をするための制御を行う。セッション制御部56は、図3に示すCPU201によるプログラムの実行によって実現される。
記憶・読出部57は、記憶部58に各種テーブルに情報を記憶したり、記憶部58に記憶された各種テーブルの情報を読み出す処理を行う機能部である。記憶・読出部57は、図3に示すCPU201によるプログラムの実行によって実現される。
なお、認証部52、状態管理部53、端末抽出部54、端末状態取得部55、およびセッション制御部56のうち少なくともいずれかは、ASICまたはFPGA等のハードウェア回路によって実現されるものとしてもよい。
また、図10に示した管理システム50の各機能部は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図10に示した管理システム50で独立した機能部として図示した複数の機能部を、1つの機能部として構成してもよい。一方、図10に示した管理システム50の1つ機能部が有する機能を複数に分割し、複数の機能部として構成するものとしてもよい。
(コンテンツデータおよび各種管理情報の送受信の状態)
図15は、実施形態に係る通信システムにおけるコンテンツデータおよび各種管理情報を送受信するために確立されたセッションを示す図である。図15を参照しながら、通信システム1におけるコンテンツデータおよび各種管理情報を送受信するために確立されたセッションについて説明する。
図15に示すように、通信システム1では、開始要求端末と宛先端末Aと宛先端末Bとの間で、管理システム50を介して、各種の管理情報を送受信するための管理情報用セッションseiが確立される。さらに、開始要求端末と宛先端末Aと宛先端末Bとの間で、管理システム50を介して、画像データおよび音声データを送受信するためのコンテンツデータ用セッションSedが確立される。すなわち、コンテンツデータ用セッションsedが、テレビ会議において直接的に用いられるセッションである。なお、このセッションの概念はあくまで一例であって、例えば、画像データのセッションでは、解像度ごとに分けられるものとしてもよい。
(通信端末が通話開始する前の準備段階における各管理情報の送受信処理)
図16は、通信端末が通話を開始するための認証処理を含む準備段階の処理の一例を示すシーケンス図である。図17は、宛先リストの表示例を示す図である。図16および図17を参照しながら、通信端末10aaが通話を開始する前の準備段階における各情報の送受信処理について説明する。なお、図16では、管理情報用セッションseiによって、各種管理情報が送受信される処理が示されている。
まず、通信端末10aaのユーザが、図2に示す電源スイッチ109をオンにすると、通信端末10aaの操作入力受付部12が、電源オンを受け付けて、通信端末10aaの電源をオンにする(ステップS21)。そして、通信端末10aaの認証要求部19は、上述の通信端末10aaの電源オンを契機とし、通信部11から通信ネットワーク2を介して管理システム50に、ログインの認証要求を示す認証要求情報、および通信端末10aaのIPアドレスを送信する(ステップS22)。この認証要求情報には、開始要求端末としての自端末である通信端末10aaを識別するための端末IDおよびパスワードが含まれている。端末IDおよびパスワードは、通信端末10aaの記憶・読出部17によって記憶部18から読み出されて、通信部11に送られたデータである。また、通信端末10aaから管理システム50へ認証要求情報が送信される際は、受信側である管理システム50は、送信側である通信端末10aaのIPアドレスを把握することができる。
次に、管理システム50の認証部52は、通信部51を介して受信した認証要求情報に含まれている端末IDおよびパスワードを検索キーとして、認証管理テーブル(図11参照)を検索し、認証管理テーブルに同一の端末IDおよびパスワードが管理されているかを判断することによって端末認証を行う(ステップS23)。
認証部52によって、正当な利用権限を有する通信端末10からのログインの認証要求であると判断された場合には、管理システム50の状態管理部53は、端末管理テーブル(図12参照)に、通信端末10aaの端末IDおよび端末名で示されるレコード毎に、通信端末10aaのIPアドレスを関連付けて記憶する(ステップS24−1)。これにより、端末管理テーブルには、通信端末10aaの端末ID「10aa」に、端末IPアドレス「1.2.1.3」が関連付けて管理されることになる。
続いて、状態管理部53は、通信端末10aaの稼動状態「オンライン」および通信状態「None」を設定し、端末管理テーブルに、通信端末10aaの端末IDおよび端末名で示されるレコードに、稼動状態および通信状態を関連付けて記憶する(ステップS24−2)。これにより、端末管理テーブルには、通信端末10aaの端末ID「10aa」に、稼動状態「オンライン」および通信状態「None」が関連付けて管理されることになる。
そして、管理システム50の通信部51は、認証部52によって得られた端末認証の結果が示された認証結果情報を、通信ネットワーク2を介して、認証要求情報を送信してきた開始要求端末(通信端末10aa)に送信する(ステップS25)。本実施形態では、認証部52によって正当な利用権限を有する端末であると端末認証された場合につき、以下続けて説明する。
通信端末10aaにおいて、正当な利用権限を有する端末であると端末認証された結果が示された認証結果情報を受信すると、通信部11は、通信ネットワーク2を介して管理システム50へ、宛先リストを要求する旨が示された宛先リスト要求情報を送信する(ステップS26)。これにより、管理システム50の通信部51は、宛先リスト要求情報を受信する。
次に、管理システム50の端末抽出部54は、開始要求端末(通信端末10aa)の端末ID「10aa」を検索キーとして、グループ管理テーブル(図13参照)を検索し、開始要求端末が通話することができる、すなわち、開始要求端末と同じグループ(グループID「G001」のグループ)に属する宛先端末の候補の端末IDを抽出する(ステップS27)。また、端末抽出部54は、抽出した端末IDを検索キーとして、端末管理テーブルを検索し、この端末IDに対応する端末名、すなわち宛先端末の候補の端末名を抽出する。ここでは、開始要求端末(通信端末10aa)の端末ID「10aa」に対応する宛先端末の候補(通信端末10ab、10ac、10ad、10db)のそれぞれの端末ID(「10ab」、「10ac」、「10ad」、「10db」)と、これらに対応する端末名(「日本 東京事業所 AB端末」、「日本 東京事業所 AC端末」、「日本 東京事業所 AD端末」、「アメリカ ワシントン事業所 DB端末」)が抽出される。
次に、管理システム50の通信部51は、端末抽出部54によって抽出された宛先端末の候補の端末IDおよび端末名を含む宛先リスト情報を、開始要求端末(通信端末10aa)に送信する(ステップS28)。これにより、開始要求端末(通信端末10aa)では、通信部11が宛先リスト情報を受信し、記憶・読出部17が記憶部18へ宛先リスト情報を記憶する(ステップS29)。
このように、本実施形態では、各通信端末10で宛先リスト情報を管理するのではなく、管理システム50がすべての通信端末10の宛先リスト情報を一元管理している。これによって、通信システム1に新たな通信端末10が含まれるようになったり、既に含まれている端末10が除外されたりする場合でも、管理システム50側で一括して対応するため、各通信端末10側で宛先リスト情報の変更を行う手間を省くことができる。
また、管理システム50の端末状態取得部55は、端末抽出部54によって抽出された
宛先端末の候補の端末ID(「10ab」、「10ac」、「10ad」、「10db」)を検索キーとして、端末管理テーブルを検索する。そして、端末状態取得部55は、宛先端末の候補の端末ID毎に、対応する稼動状態および通信状態を読み出すことにより、宛先端末の候補(通信端末10ab、10ac、10ad、10db)それぞれの稼動状態および通信状態を取得する(ステップS30)。
次に、通信部51は、ステップS30で使用された検索キーである端末IDと、対応する宛先端末の候補の稼動状態および通信状態とを含む状態情報を、通信ネットワーク2を介して開始要求端末に送信する(ステップS31)。具体的には、通信部51は、検索キーとしての端末ID「10ab」と、宛先端末の候補(通信端末10ab)の稼動状態「オフライン」とを含む状態情報を、開始要求端末(通信端末10aa)に送信する。なお、稼動状態が「オフライン」の場合には、状態情報には、通信状態は含まれない。また、通信部51は、端末ID「10ac」と、宛先端末の候補(通信端末10ac)の稼動状態「オンライン」と、通信状態「None」とを含む状態情報等、宛先端末の候補すべてに対する状態情報それぞれを開始要求端末(通信端末10aa)へ送信する。
次に、開始要求端末(通信端末10aa)の記憶・読出部17は、順次、管理システム50から受信した状態情報を記憶部18に記憶する(ステップS32)。したがって、開始要求端末(通信端末10aa)は、宛先端末の候補の状態情報を受信することで、通話することができる宛先端末の候補の現時点のそれぞれの稼動状態および通信状態を取得することができる。
次に、開始要求端末(通信端末10aa)の表示制御部14は、記憶部18に記憶されている宛先リスト情報、および宛先端末の候補の状態情報に基づいて、宛先端末の候補の稼動状態および通信状態を反映させた宛先リストを作成する。そして、表示制御部14は、図1に示すディスプレイ120aaに、所定のタイミングで宛先リストを表示する(ステップS33)。
図17に示すように、ディスプレイ120aaに表示される宛先リストは、宛先端末の候補の端末ID1100−2と、端末名1100−3と、状態情報を反映させたアイコン1100−4a〜1100−4c等を含む。アイコンとしては、オフラインで通話できないことを示すオフラインアイコン1100−4aと、オンラインで通話可能であることを示す通話可能アイコン1100−4bと、オンラインで通話中であることを示す通話中アイコン1100−4cとがある。
表示制御部14は、宛先端末の候補の稼動状態が「オンライン」であり、通信状態が「None」である場合には、この宛先端末の候補に対し、通話可能アイコン1100−4bを割り当てる。また、表示制御部14は、宛先端末の候補の稼動状態が「オンライン」であり、通信状態が「None」以外である場合には、この宛先端末の候補に対し、通話中アイコン1100−4cを割り当てる。そして、表示制御部14は、宛先端末の候補の稼動状態が「オフライン」である場合には、この宛先端末の候補に対し、オフラインアイコン1100−4aを割り当てる。
なお、他の通信端末10でも、ステップS21と同様に、ユーザが図2に示す電源スイッチ109をONにすると、当該通信端末10の操作入力受付部12が、電源オンを受け付けて、上述のステップS22〜S33の処理と同様の処理を行う。
(通信端末が他の通信端末との通信の開始を要求する場合の処理)
図18は、通話の開始を要求する処理の一例を示すシーケンス図である。図18を参照しながら、通信端末10が他の通信端末10との通信の開始を要求する場合の処理を説明する。なお、図18では、すべて管理情報用セッションseiによって、各種管理情報が送受信される処理が示されている。
図18においては、図16においてログインが許可された通信端末10aaが、開始要求情報を送信する例、すなわち、通信端末10aaが開始要求端末として動作する例について説明する。開始要求端末としての通信端末10aaは、図16のステップS31で受信した宛先端末の候補の状態情報に基づいて、宛先端末の候補のうち、稼動状態が「オンライン」であり、通信状態が「None」である通信端末10のうち少なくとも1つの通信端末10と通話を行うことができる。例えば、開始要求端末(通信端末10aa)は、宛先端末の候補のうち、図16のステップS31によって受信した状態情報により、稼動状態が「オンライン」であり、通信状態が「None」である通信端末10dbと通話を行うことができる。そこで、以下では、開始要求端末(通信端末10aa)のユーザが、宛先端末(通信端末10db)と通話を開始することを選択した場合について説明する。
なお、図18に示す処理が開始される前の状態において、開始要求端末としての通信端末10aaのディスプレイ120aaには、図17に示す宛先リストが表示されているものとする。そして、開始要求端末のユーザは、宛先リストから所望の通話相手(宛先端末)を選択することができる。
まず、開始要求端末のユーザは、通信端末10aaの操作ボタン108を押下して宛先端末(通信端末10db)を選択する(ステップS41)。すると、通信端末10aaの通信部11は、開始要求端末(通信端末10aa)の端末ID「10aa」、および宛先端末(通信端末10db)の端末ID「10db」を含む開始要求情報を、開始要求端末のIPアドレスと共に管理システム50へ送信する(ステップS42)。これにより、管理システム50の通信部51は、開始要求情報を受信すると共に、送信元である開始要求端末(通信端末10aa)のIPアドレス「1.2.1.3」を把握することになる。
そして、状態管理部53は、開始要求情報に含まれる開始要求端末(通信端末10aa)の端末ID「10aa」および宛先端末(通信端末10db)の端末ID「10db」に基づき、端末管理DB5002の端末管理テーブルにおいて、端末ID「10aa」および端末ID「10db」がそれぞれ含まれるレコードの通信状態のフィールド部分を変更する(ステップS43)。具体的には、状態管理部53は、端末管理テーブルの端末ID「10aa」が含まれるレコードの通信状態を「Calling」に変更する。同様に、状態管理部53は、端末管理テーブルの端末ID「10db」が含まれるレコードの通信状態を「Ringing」に変更する。
そして、管理システム50のセッション制御部56は、開始要求端末(通信端末10aa)によって要求された宛先端末との間の通信を実行するためのセッション(コンテンツデータ用セッションsed)を識別するためのセッションID「se1」を生成する(ステップS44)。セッション制御部56は、セッションIDを生成すると、セッションID「se1」をセッション管理テーブル(図14参照)に記憶する。続いて、セッション制御部56は、セッション管理テーブルにおいて、セッションID「se1」が含まれるレコードの開始要求端末の端末IDおよび宛先端末の端末IDのフィールド部分に、それぞれ開始要求端末の端末ID「10aa」、宛先端末の端末ID「10db」を記憶して管理する(ステップS45)。
次に、通信部51は、通信ネットワーク2を介して、開始要求端末(通信端末10aa)へ、セッション制御部56により生成されたセッションIDを送信する(ステップS46)。また、通信部51は、開始要求端末の端末ID「10aa」と、セッションID「se1」とを含む開始要求情報と、管理システム50のIPアドレスとを宛先端末へ送信する(ステップS47)。これにより、宛先端末(通信端末10db)は、開始要求情報を受信すると共に、管理システム50のIPアドレス「1.1.1.2」を把握することになる。
(宛先端末が開始要求端末との間で通信開始を許可する応答を受け付けた場合の処理)
図19は、通話の開始の要求を許可する処理の一例を示すシーケンス図である。図20は、開始要求受付画面の表示例を示す図である。図19および図20を参照しながら、開始要求情報を受信した宛先端末のユーザが、操作ボタン108を押下することにより、開始要求端末との間の通信の開始(セッションの確立)を許可する旨の応答が受け付けられた場合の処理について説明する。
図19に示す送受信処理の開始時には、宛先端末(通信端末10db)のディスプレイ120には、開始要求情報を受信したことを示す開始要求受付画面1200−1(図20参照)が表示されている(ステップS51)。
図20に示す開始要求受付画面1200−1は、開始要求情報を受信した旨を示し、開始要求端末との間の通信の開始(セッションの確立)を許可するか否かを指定するためのユーザインターフェースである。ユーザは、開始要求受付画面1200−1を閲覧することにより、開始要求を受信したことを確認することができる。開始要求受付画面1200−1には、セッションの確立を許可するための「はい」ボタン1200−2と、セッションの確立を許可しない選択をするための「いいえ」ボタン1200−3とが含まれている。
宛先端末(通信端末10db)の操作ボタン108の操作によって「はい」ボタン1200−2が押下された場合、操作入力受付部12は、開始要求端末(通信端末10aa)との間の通信の開始(セッション確立)を許可する旨の応答を受け付ける(ステップS52)。次に、宛先端末の通信部11は、宛先端末の端末ID「10db」、開始要求端末の端末ID「10aa」、およびセッションID「se1」が含まれる開始応答情報を、管理システム50へ送信する(ステップS53)。
管理システム50の通信部51が開始応答情報を受信すると、状態管理部53は、開始応答情報に含まれる開始要求端末の端末ID「10aa」および宛先端末の端末ID「10db」に基づき、端末管理テーブルにおいて、端末ID「10aa」および端末ID「10db」がそれぞれ含まれるレコードの通信状態のフィールド部分を変更する(ステップS54)。具体的には、状態管理部53は、端末管理テーブルの端末ID「10aa」が含まれるレコードの通信状態を「Accepted」に変更する。同様に、状態管理部53は、端末管理テーブルの端末ID「10db」が含まれるレコードの通信状態も「Accepted」に変更する。
次に、通信部51は、宛先端末(通信端末10db)の端末ID「10db」、およびセッションID「se1」が含まれる開始応答情報を開始要求端末(通信端末10aa)へ送信する(ステップS55)。開始要求端末は、この開始応答情報を受信すると、通信部11によってセッションID「se1」を管理システム50に送信することにより、セッションを確立させる(ステップS56)。一方、宛先端末は、通信部11によってセッションID「se1」を管理システム50に送信することにより、セッションを確立させる(ステップS57)。
(通信端末のダブルトークの状態での処理)
図21は、ダブルトークについてのキャンセル不良の検出時の処理の一例を示すシーケンス図である。図22は、キャンセル不良の発生を警告する警告音の再生状態の一例を示す図である。図23は、通話画面におけるキャンセル不良の発生表示の一例を示す図である。図21〜図23を参照しながら、通話を行っている2拠点の通信端末10の一方でダブルトークの状態となった場合の処理について説明する。なお、通信を行う通信端末10は、開始要求端末である通信端末10aa(第2通信端末の一例)、および宛先端末である通信端末10db(第1通信端末の一例)であるものとし、通信端末10aaと通信端末10dbとの間ではセッションが確立しているものとする。また、ここではセッションで送受信されるコンテンツデータのうち音声データ(音声信号)のみに着目して説明する。また、通信端末10aaが設置された拠点を自拠点、通信端末10dbが設置された拠点を他拠点と称する場合がある。
<ステップS71>
自拠点の通信端末10aaを利用するユーザ80a(話者)は、他拠点のユーザ(話者)へ音声を送信するために発話し、その発話による音声は、通信端末10aaの音声入力部15により入力される。
<ステップS72、S73>
音声入力部15は、入力した通信端末10aaのユーザの音声の音声信号を、通信部11へ送る。そして、通信部11は、通信ネットワーク2を介して、音声信号を管理システム50へ送信する。
<ステップS74、S75>
管理システム50の通信部51は、通信端末10aaから音声信号(第1音声信号)を受信すると、音声処理部20へ当該音声信号を送る。
<ステップS76>
音声処理部20は、受信した音声信号のデータを記憶部18へ一時的に記憶させる。
<ステップS77、S78>
通信部51は、上述のように受信した音声信号を、音声処理部20へ送ると共に、音声出力部16へ送る。音声出力部16は、音声信号を受け取ると、当該音声信号をスピーカ115から音声として、通信端末10dbのユーザ80bに対し再生する。これにより、他拠点のユーザ80bは、自拠点のユーザ80aの発話の内容を認識することができる。
<ステップS79、S80>
図5で上述したように、音声出力部16から再生された音声は、当該音声出力部16を搭載する通信端末10dbの音声入力部15から入力されることになる。さらに、音声出力部16から再生された音声が音声入力部15から入力されると共に、ユーザ80bの発話による音声が、音声入力部15によって入力され、ダブルトークの状態となったものとする。
<ステップS81>
音声入力部15は、入力した音声出力部16から再生された音声の音声信号、および、ユーザ80bの発話の音声信号の双方(第2音声信号)を、音声処理部20へ送る。
<ステップS82、S83>
音声処理部20は、受け取った音声出力部16から再生された音声の音声信号、および、ユーザ80bの発話の音声信号に対して、エコーキャンセル処理を実行する。すなわち、音声処理部20は、図6で上述したように、音声入力部15へ入力された音声信号のうち、音声出力部16から再生された音声の音声信号のみを差し引く処理を試みる。そして、音声処理部20は、エコーキャンセル処理後の音声信号(以下、処理後音声信号と称する場合がある)(第3音声信号)を、検出部21へ送る。
<ステップS84>
上述したように、音声処理部20によるエコーキャンセル処理では、通信端末10dbのマイク114の最大受電レベルを超える等の理由により、入力した音声信号が変形されて正常に機能せずキャンセル不良が発生する場合がある。検出部21は、音声処理部20によるエコーキャンセル処理においてキャンセル不良が発生したか否かを判断するため、音声処理部20から受け取った処理後音声信号の強度が所定値以上であるか否かを検出する。処理後音声信号の強度が所定値未満である場合、検出部21は、音声処理部20によるエコーキャンセル処理が正常であると判断し、ステップS85へ移行する。一方、処理後音声信号の強度が所定値以上である場合、検出部21は、音声処理部20によるエコーキャンセル処理でキャンセル不良が発生したと判断し、ステップS91へ移行する。
<ステップS85、S86>
検出部21は、処理後音声信号の強度が所定値未満である場合、音声処理部20によるエコーキャンセル処理が正常であると判断し、処理後音声信号を通信部11へ送る。通信部11は、受け取った処理後音声信号を、通信ネットワーク2を介して管理システム50へ送信する。
<ステップS87、S88>
管理システム50は、受信した処理後音声信号を、通信ネットワーク2を介して、通信端末10aaへ送信する。通信端末10aaの通信部11は、管理システム50から受信した処理後音声信号を、音声出力部16へ送る。
<ステップS89>
通信端末10aaの音声出力部16は、処理後音声信号を受け取ると、当該処理後音声信号をスピーカ115から音声として、通信端末10aaのユーザ80aに対し再生する。これにより、音声出力部16から再生された処理後音声信号は、通信端末10dbの音声入力部15へ入力された音声信号のうち、エコーキャンセル処理によりユーザ80bの発話の音声信号が正常に取り出されているので、自拠点のユーザ80aは、他拠点のユーザ80bの発話の内容を認識することができる。
<ステップS90、S91>
検出部21は、処理後音声信号の強度が所定値以上であることを検出した場合、音声処理部20によるエコーキャンセル処理でキャンセル不良が発生したと判断し、当該処理後音声信号を送信しないものとする。そして、検出部21は、通信端末10dbでキャンセル不良が発生した旨を示す情報を通知部22へ送る。
<ステップS92、S93>
通知部22は、検出部21から受け取った通信端末10dbでキャンセル不良が発生した旨を示す情報を、通信部11へ送る。この場合、通知部22は、当該情報と共に、通信端末10dbを示す情報(例えば、通信端末10dbの端末ID)も通信部11へ送る。通信部11は、キャンセル不良が発生した旨を示す情報、および通信端末10dbを示す情報を、キャンセル不良通知として、通信ネットワーク2を介して管理システム50へ送信する。
<ステップS94、S95>
管理システム50は、受信したキャンセル不良通知を、通信ネットワーク2を介して、通信端末10aaへ送信する。通信端末10aaの通信部11は、受信したキャンセル不良通知を表示制御部14へ送る。
<ステップS96>
表示制御部14は、通信部11から受け取ったキャンセル不良通知を、ディスプレイ120aaへ表示させる。図23には、ディスプレイ120aaでキャンセル不良通知が表示された通話画面1400−1の一例が示されている。通話画面1400−1には、自拠点の話者であるユーザ80aを表示する自拠点側表示1400−2aと、他拠点の話者であるユーザ80bを表示する他拠点側表示1400−2bとが含まれる。この場合、表示制御部14は、キャンセル不良通知に含まれる通信端末10dbを示す情報(例えば、通信端末10dbの端末ID)に基づいて、他拠点の話者、すなわち、通信端末10dbを利用する話者を表示する他拠点側表示1400−2bの下側に、キャンセル不良が発生した旨を示すキャンセル不良通知表示1400−3を表示させる。これによって、通信端末10dbに対する相手側である通信端末10aaを利用する各話者(ユーザ80a)は、通信端末10dbにおいてキャンセル不良が発生していることを認識することができ、発話による音声信号の入力を止めたり、相手側の話者へ発話を譲る等の対応を促すことができる。
なお、通信端末10dbでのキャンセル不良の発生を、ディスプレイ120aaに表示させることによって通知するものとしているが、これに限定されるものではなく、音の再生による通知等のその他の方法により通知を行うものとしてもよい。
<ステップS97、S98>
通知部22は、ステップS92で通信端末10dbでキャンセル不良が発生した旨を示す情報を通信部11へ送ると共に、音声出力部16へ当該情報を送る。そして、音声出力部16は、受け取ったキャンセル不良が発生した旨を示す情報に従って、スピーカ115からキャンセル不良が発生したことを示す警告音を再生する。
図22には、通信端末10dbにおいてダブルトークの状態でキャンセル不良が発生した状態の一例が示されている。自拠点の話者であるユーザ80aの音声が、通信端末10dbのスピーカ115から再生されているときに、ユーザ80bの発話音声501がマイク114から入力され、かつ、スピーカ115から再生されている音声もマイク114から入力されてダブルトークの状態となる。そして、通信端末10dbの音声処理部20によるエコーキャンセル処理でキャンセル不良が発生すると、通信端末10dbの音声出力部16は、スピーカ115からキャンセル不良が発生したことを示す警告音502を再生する。
この警告音によって、通信端末10dbを利用する話者(ユーザ80b)は、通信端末10dbにおいてキャンセル不良が発生していることを認識することができ、発話による音声信号の入力を止めたり、相手側の話者へ発話を譲る等の対応を促すことができる。
なお、通信端末10dbでのキャンセル不良の発生を、スピーカ115から警告音の再生により通知するものとしているが、これに限定されるものではなく、ディスプレイ120dbにその旨を表示させる等のその他の方法により通知を行うものとしてもよい。
<ステップS99>
通信端末10dbの音声処理部20は、ステップS76で記憶部18へ一時的に記憶させた音声信号のデータを破棄する。
以上のように、本実施形態に係る通信システム1では、テレビ会議に参加している通信端末10でダブルトークの状態となった場合において、エコーキャンセラ(音声処理部20の機能に相当)によるエコーキャンセル処理にキャンセル不良が発生したとき、テレビ会議の参加者に当該キャンセル不良の発生を通知するものとしている。具体的には、エコーキャンセル不良が発生した通信端末10の話者に対して、警告音を再生することにより、当該通信端末10でキャンセル不良が発生したことを通知するものとしている。さらに、エコーキャンセル不良が発生した通信端末10と通話を行っている他の通信端末10の話者に対しては、エコーキャンセル不良が発生した旨を表示させることによって通知するものとしている。これによって、テレビ会議の参加者(話者)は互いに発話による音声信号の入力を止めたり、相手側の話者へ発話を譲る等の対応を促すことができるので、ダブルトークを容易に解消することができる。
(検出部によるキャンセル不良の検出の別形態)
図24は、学習モデルによりキャンセル不良の有無を検出する動作を模式的に説明する図である図24を参照しながら、検出部21におけるキャンセル不良の有無の検出動作の別形態いついて説明する。
図21における検出部21は、音声処理部20によるエコーキャンセル処理においてキャンセル不良が発生したか否かを判断するための方法として、処理後音声信号の強度が所定値以上であるか否かの閾値判定を行うものとした。このキャンセル不良の発生の有無を検出するためには、上述の閾値判定に限られるものではなく、例えば、音声認識技術を用いた学習モデルを用いて行うものとしてもよい。図24では、機械学習により音声信号を、エコーキャンセル処理における処理結果(キャンセル正常、キャンセル不良)に変換する学習モデルとしてのニューラルネットワーク401が示されている。特に、ニューラルネットワーク401の階層が深いものをディープラーニング(深層学習)という。また、音声信号のような時系列データを分類するにはRNN(Reccurent Neural Network)が適していることが知られている。一例として20ミリ秒ごとにスライスした音声信号をMFCC(Mel−frequency cepstral coefficients)に変換し、入力層402の各ノードに入力する。出力層403の各ノードには、エコーキャンセル処理における各処理結果が対応する。学習フェーズにおいて入力層402にはMFCCに変換された音声信号が入力され、出力層403には、キャンセル正常に対応するノードに「1」が割り当てられ、キャンセル不良に対応するノードに「0」が割り当てられる。そして、入力層402のノード、ニューラルネットワーク401の各階層のノード、および、出力層403のノードの間の重みが誤差逆伝播法で学習される。認識フェーズでは、入力された音声信号が、キャンセル正常を示す音声に近い出力層403のノードほど大きい値(1に近い値)を出力する。検出部21は、閾値以上の値を出力したノードに対応するエコーキャンセル処理における処理結果を取り出す。このように、検出部21は、ニューラルネットワーク401を用いることにより実現されるものとしてもよい。
なお、種々の音声認識方法があり、図24の説明は一例に過ぎない。例えば、隠れマルコフモデルを使用して音声認識してもよく、または他の手法を採用してもよい。
(通信端末が通話開始する前の準備段階における各管理情報の送受信処理の別形態)
図25は、通信端末が通話を開始するための認証処理をメールアドレスで行う場合の処理の一例を示すシーケンス図である。図25を参照しながら、通信端末10aaが通話を開始する前の準備段階における各情報の送受信処理の別形態について説明する。
図16に示す処理では、通信端末10自身を識別する端末IDを用いて認証処理等が行われるものとした。このような認証処理等では、端末IDを用いることに限定されるものではなく、例えば、通信端末10を利用するユーザID(例えばメールアドレス)を用いるものとしてもよい。以下、図25に示す処理ではユーザIDとしてメールアドレスを用いた場合の処理について、図16に示す処理の相違点を中心に説明する。
まず、通信端末10aaのユーザが、図2に示す電源スイッチ109をオンにすると、通信端末10aaの操作入力受付部12が、電源オンを受け付けて、通信端末10aaの電源をオンにする(ステップS21a)。そして、通信端末10aaの認証要求部19は、通信部11から通信ネットワーク2を介して管理システム50に、ログインの認証要求を示す認証要求情報、および通信端末10aaのIPアドレスを送信する(ステップS22a)。この認証要求情報には、開始要求端末としての通信端末10aaを利用するユーザを識別するためのメールアドレスおよびパスワードが含まれている。
次に、管理システム50の認証部52は、通信部51を介して受信した認証要求情報に含まれているメールアドレスおよびパスワードを検索キーとして、認証管理テーブルを検索し、認証管理テーブルに同一のメールアドレスおよびパスワードが管理されているかを判断することによって端末認証を行う(ステップS23a)。
認証部52によって、正当な利用権限を有する通信端末10からのログインの認証要求であると判断された場合には、管理システム50の状態管理部53は、端末管理テーブルに、通信端末10aaのメールアドレスおよび端末名で示されるレコード毎に、通信端末10aaのIPアドレスを関連付けて記憶する(ステップS24a−1)。
続いて、状態管理部53は、通信端末10aaの稼動状態「オンライン」および通信状態「None」を設定し、端末管理テーブルに、通信端末10aaのメールアドレスおよび端末名で示されるレコードに、稼動状態および通信状態を関連付けて記憶する(ステップS24a−2)。
そして、管理システム50の通信部51は、認証部52によって得られた端末認証の結果が示された認証結果情報を、通信ネットワーク2を介して、認証要求情報を送信してきた開始要求端末(通信端末10aa)に送信する(ステップS25a)。以下、認証部52によって正当な利用権限を有する端末であると端末認証された場合につき、続けて説明する。
通信端末10aaにおいて、正当な利用権限を有する端末であると端末認証された結果が示された認証結果情報を受信すると、通信部11は、通信ネットワーク2を介して管理システム50へ、宛先リストを要求する旨が示された宛先リスト要求情報を送信する(ステップS26a)。これにより、管理システム50の通信部51は、宛先リスト要求情報を受信する。
次に、管理システム50の端末抽出部54は、開始要求端末(通信端末10aa)を利用するユーザのメールアドレスを検索キーとして、グループ管理テーブルを検索し、開始要求端末が通話することができる、すなわち、開始要求端末と同じグループに属する宛先端末の候補を利用するユーザのメールアドレスを抽出する(ステップS27a)。また、端末抽出部54は、抽出したメールアドレスを検索キーとして、端末管理テーブルを検索し、このメールアドレスに対応する端末名、すなわち宛先端末の候補の端末名を抽出する。ここでは、開始要求端末(通信端末10aa)を利用するユーザのメールアドレスに対応する宛先端末の候補(通信端末10ab、10ac、10ad、10db)のそれぞれを利用するユーザのメールアドレスと、これらに対応する端末名(「日本 東京事業所 AB端末」、「日本 東京事業所 AC端末」、「日本 東京事業所 AD端末」、「アメリカ ワシントン事業所 DB端末」)が抽出される。
次に、管理システム50の通信部51は、端末抽出部54によって抽出された宛先端末の候補を利用するユーザのメールアドレスおよび端末名を含む宛先リスト情報を、開始要求端末(通信端末10aa)に送信する(ステップS28a)。これにより、開始要求端末(通信端末10aa)では、通信部11が宛先リスト情報を受信し、記憶・読出部17が記憶部18へ宛先リスト情報を記憶する(ステップS29a)。
また、管理システム50の端末状態取得部55は、端末抽出部54によって抽出された
宛先端末の候補を利用するユーザのメールアドレスを検索キーとして、端末管理テーブルを検索する。そして、端末状態取得部55は、宛先端末の候補を利用するユーザのメールアドレス毎に、対応する稼動状態および通信状態を読み出すことにより、宛先端末の候補(通信端末10ab、10ac、10ad、10db)それぞれの稼動状態および通信状態を取得する(ステップS30a)。
次に、通信部51は、ステップS30aで使用された検索キーであるメールアドレスと、対応する宛先端末の候補の稼動状態および通信状態とを含む状態情報を、通信ネットワーク2を介して開始要求端末に送信する(ステップS31a)。
次に、開始要求端末(通信端末10aa)の記憶・読出部17は、順次、管理システム50から受信した状態情報を記憶部18に記憶する(ステップS32a)。したがって、開始要求端末(通信端末10aa)は、宛先端末の候補の状態情報を受信することで、通話することができる宛先端末の候補の現時点のそれぞれの稼動状態および通信状態を取得することができる。
次に、開始要求端末(通信端末10aa)の表示制御部14は、記憶部18に記憶されている宛先リスト情報、および宛先端末の候補の状態情報に基づいて、宛先端末の候補の稼動状態および通信状態を反映させた宛先リストを作成する。そして、表示制御部14は、図1に示すディスプレイ120aaに、所定のタイミングで宛先リストを表示する(ステップS33a)。
(通信端末のソフトウェア構成の別形態)
図26は、実施形態に係る通信端末のWebアプリを利用する場合のソフトウェア構成の一例を示す図である。図26を参照しながら、通信端末10のソフトウェア構成の別形態について説明する。
上述の図4では、通信端末10で通信アプリAが実行される動作を説明したが、同様の処理をWebアプリによっても実現できる。Webアプリは、ブラウザ上で動作する、例えばJavaScript(登録商標)によるプログラムとWebサーバ側のプログラムとが協調することによって動作し、ユーザはそれをブラウザ上で使用する。すなわち、図26に示すように、通信端末10は管理システム50から、プログラムWA(HTML(HyperText Markup Language)+JavaScript(登録商標)+CSS(Coefficient Of Performance)等)をダウンロードして、ブラウザ1040上で実行する。当該ブラウザ1040は、OS1020の制御に従って動作する。
通信端末10は、HTTP(Hypertext Transfer Protocol)またはHTTPS(Hypertext Transfer Protocol Secure)等のプロトコルを用いて管理システム50とデータを送受信することによって、管理システム50が提供しているサービスを利用できる。このような利用形態では、予め通信端末10に通信アプリAをダウンロードしておく必要がない。
なお、上述の実施形態の各機能は、一または複数の処理回路によって実現することが可能である。ここで、「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上述した各機能を実行するよう設計されたASIC、DSP(Digital Signal Processor)、FPGA、SOC(System on a chip)、GPU(Graphics Processing Unit)や従来の回路モジュール等のデバイスを含むものとする。
また、上述の実施形態において、通信端末10および管理システム50の各機能部の少なくともいずれかがプログラムの実行によって実現される場合、そのプログラムは、ROM等に予め組み込まれて提供される。また、上述の実施形態に係る通信端末10および管理システム50で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM(Compact Disc Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk−Recordable)、DVDまたはSDカード等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、上述の実施形態に係る通信端末10および管理システム50で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述の実施形態に係る通信端末10および管理システム50で実行されるプログラムを、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、上述の実施形態に係る通信端末10および管理システム50で実行されるプログラムは、上述した各機能部のうち少なくともいずれかを含むモジュール構成となっており、実際のハードウェアとしてはCPUが上述の記憶装置からプログラムを読み出して実行することにより、上述の各機能部が主記憶装置上にロードされて生成されるようになっている。