(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-26
(45)【発行日】2023-10-04
(54)【発明の名称】中継装置および音声通信の録音方法
(51)【国際特許分類】
H04M 3/56 20060101AFI20230927BHJP
H04M 11/10 20060101ALI20230927BHJP
【FI】
H04M3/56 Z
H04M11/10
(21)【出願番号】P 2019093934
(22)【出願日】2019-05-17
【審査請求日】2022-02-14
(73)【特許権者】
【識別番号】000100746
【氏名又は名称】アイコム株式会社
(74)【代理人】
【識別番号】100095407
【氏名又は名称】木村 満
(74)【代理人】
【識別番号】100131152
【氏名又は名称】八島 耕司
(74)【代理人】
【識別番号】100174573
【氏名又は名称】大坂 知美
(74)【代理人】
【識別番号】100173462
【氏名又は名称】宮本 一浩
(72)【発明者】
【氏名】中野 晃
【審査官】松原 徳久
(56)【参考文献】
【文献】米国特許出願公開第2002/0006187(US,A1)
【文献】特開2010-141497(JP,A)
【文献】特開2019-047381(JP,A)
【文献】特表2018-509045(JP,A)
【文献】欧州特許出願公開第03477636(EP,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04B7/24-7/26
H04M3/00
3/16-3/20
3/38-3/58
7/00-7/16
11/00-11/10
H04Q3/58-3/62
H04W4/00-99/00
(57)【特許請求の範囲】
【請求項1】
音声通信を行う複数の通信端末と通信する通信部と、
ある通信端末から他の1または複数の通信端末を呼び出す呼び出しがあったとき、この呼び出した通信端末および呼び出された前記1または複数の通信端末が参加端末として登録され、セッション情報で識別される通信セッションを確立し、確立された通信セッションの参加端末から音声信号が送られてくると、この音声信号を同じ通信セッションの他の参加端末に前記セッション情報とともに送信する通信セッション処理部と、
を備えた中継装置であって、
前記通信セッションの音声信号をモニタする通信モニタ部をさらに備え、
前記通信セッション処理部は、前記通信セッション確立時に、その通信セッションの参加端末の情報を前記通信モニタ部に通知し、
前記通信モニタ部は、
前記音声信号の録音を行うモニタ対象の通信端末から送信されてきた音声信号をバッファする入力バッファ、または、前記モニタ対象の通信端末へ送信する音声信号をバッファする出力バッファのいずれか一方に対応づけられた仮想デバイスを設定し、
前記通信セッションの確立時に前記モニタ対象の通信端末の情報が通知されたとき、
前記モニタ対象の通信端末と前記仮想デバイスで仮想通信セッションを確立し、
前記仮想通信セッションにおいて、前記仮想デバイスへ送信される音声信号を録音する
中継装置。
【請求項2】
前記仮想デバイスは複数設けられており、前記通信モニタ部は、前記複数の仮想デバイスのそれぞれが参加する仮想通信セッションを個別に確立する請求項
1に記載の中継装置。
【請求項3】
前記通信セッション処理部は、前記通信セッションの解消時に、その通信セッションの参加端末の情報を前記通信モニタ部に通知し、
前記通信モニタ部は、前記通信セッションの解消時に通信端末の情報が通知されたとき、該通信端末の音声信号の録音を終了する
請求項1
または2に記載の中継装置。
【請求項4】
前記通信モニタ部は、前記音声信号を揮発性メモリにバッファし、バッファした音声信号が予め定めたサイズになったとき、このバッファした音声信号をファイルとして不揮発性記憶装置に保存する
請求項1乃至請求項
3のいずれかに記載の中継装置。
【請求項5】
音声通信を行う複数の通信端末と通信する中継装置において、
ある通信端末から他の1または複数の通信端末を呼び出す呼び出しがあったとき、この呼び出した通信端末および呼び出された前記1または複数の通信端末が参加端末として登録され、セッション情報で識別される通信セッションを確立し、
確立された通信セッションの参加端末から音声信号が送られてくると、この音声信号を同じ通信セッションの他の参加端末に前記セッション情報とともに送信し、
前記通信セッションが確立されている間、予め定めた
モニタ対象の通信端末から送信されてきた音声信号をバッファする入力バッファ、または、前記モニタ対象の通信端末へ送信する音声信号をバッファする出力バッファのいずれか一方に対応づけられた仮想デバイスを設定し、
前記通信セッションの確立時にモニタ対象の通信端末と前記仮想デバイスで仮想通信セッションを確立し、
前記仮想通信セッションにおいて、前記仮想デバイスへ送信される音声信号を録音する
音声通信の録音方法。
【請求項6】
前記仮想デバイスは複数設けられており、前記複数の仮想デバイス宛に送信されてくる音声信号を平行してそれぞれ別々に録音する請求項
5に記載の音声通信の録音方法。
【請求項7】
前記音声信号の録音時に、前記音声信号を揮発性メモリにバッファし、バッファした音声信号が予め定めたサイズになったとき、このバッファした音声信号をファイルとして不揮発性記憶装置に保存する
請求項
5または6に記載の音声通信の録音方法。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、音声通信を中継する中継装置に関し、特には、中継する音声信号の録音機能に関する。
【背景技術】
【0002】
無線トランシーバや電話機などの音声通信をネットワークで中継する中継装置が提案されている(特許文献1,2,3参照)。複数の中継装置をネットワークを介して接続することで、IP電話機と無線機など、異なる種類の通信機器が相互に音声通信できるようにすることも可能である。このような中継装置で、中継している音声信号を外部出力すれば、その音声信号を録音することは可能であった。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2014-087027号公報
【文献】国際公開WO2015/068663公報
【文献】国際公開WO2016/002866公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、中継装置から音声信号を外部に取り出すためには、その外部出力用のデバイスを通信に参加させる必要があり、新たなハードウェアが必要である。また、ソフトウェア的に通信を録音できるようにすることは勿論可能であるが、中継装置に新たな録音機能を追加することは手間の掛かることであるとともに、音声通信の中継処理を行う制御部に新たな負担を強いることになってしまうという問題点があった。また、特定の通信端末が行う通信を追跡して録音することはさらに困難であった。
【0005】
そこで、本発明の目的は、特定の通信端末の通信音声を追跡して録音できるようにした中継装置を提供することにある。
【課題を解決するための手段】
【0006】
この発明の中継装置は、通信部と、通信セッション処理部と、通信モニタ部を備える。通信部は、音声通信を行う複数の通信端末と通信する。通信セッション処理部は、ある通信端末から他の1または複数の通信端末を呼び出す呼び出しがあったとき、この呼び出した通信端末および呼び出された1または複数の通信端末が参加端末として登録され、セッション情報で識別される通信セッションを確立し、確立された通信セッションの参加端末から音声信号が送られてくると、この音声信号を同じ通信セッションの他の参加端末に前記セッション情報とともに送信する。通信セッション処理部は、さらに、通信セッション確立時に、その通信セッションの参加端末の情報を通信モニタ部に通知する。通信モニタ部は、音声信号の録音を行うモニタ対象の通信端末から送信されてきた音声信号をバッファする入力バッファ、または、モニタ対象の通信端末へ送信する音声信号をバッファする出力バッファのいずれか一方に対応づけられた仮想デバイスを設定し、通信セッションの確立時にモニタ対象の通信端末の情報が通知されたとき、モニタ対象の通信端末と仮想デバイスとで仮想通信セッションを確立し、仮想通信セッションにおいて、仮想デバイスへ送信される音声信号を録音する。
【0007】
この発明の音声通信の録音方法では、音声通信を行う複数の通信端末と通信する中継装置が、以下の手順を実行する。ある通信端末から他の1または複数の通信端末を呼び出す呼び出しがあったとき、この呼び出した通信端末および呼び出された1または複数の通信端末が参加端末として登録され、セッション情報で識別される通信セッションを確立する。確立された通信セッションの参加端末から音声信号が送られてくると、この音声信号を同じ通信セッションの他の参加端末にセッション情報とともに送信する。通信セッションが確立されている間、予め定めたモニタ対象の通信端末から送信されてきた音声信号をバッファする入力バッファ、または、モニタ対象の通信端末へ送信する音声信号をバッファする出力バッファのいずれか一方に対応づけられた仮想デバイスを設定し、通信セッションの確立時にモニタ対象の通信端末と仮想デバイスで仮想通信セッションを確立し、仮想通信セッションにおいて、仮想デバイスへ送信される音声信号を録音する。
【0009】
上記発明において、仮想デバイスは複数設けられ、通信モニタ部が、複数の仮想デバイス宛に送信されてくる音声信号を平行してそれぞれ別々に録音してもよい。
【0010】
上記発明において、通信セッション処理部が、通信セッションの解消時に、その通信セッションの参加端末の情報を通信モニタ部に通知し、通信モニタ部が、通信セッションの解消時に通信端末の情報が通知されたとき、通信端末の音声信号の録音を終了するようにしてもよい。
【0011】
上記発明において、通信モニタ部は、前記音声信号を揮発性メモリにバッファし、バッファした音声信号が予め定めたサイズになったとき、このバッファした音声信号をファイルとして前記不揮発性記憶装置に保存するようにしてもよい。
【発明の効果】
【0012】
この発明によれば、通信セッションに参加している通信端末の通信音声を他の通信端末の音声信号から切り離して取得でき、この音声を録音することができる。
【図面の簡単な説明】
【0013】
【
図1】
図1は、音声通信システムのブロック図である。
【
図3】
図3は、ネットワーク通信中継部および通信モニタ部の機能ブロック図である。
【
図4】
図4は、中継装置に設けられる各種テーブルを示す図である。
【
図5】
図5は、中継装置に設けられる各種テーブルを示す図である。
【
図6】
図6は、音声パケットの構成を示す図である。
【
図7】
図7は、音声パケット受信時の処理を示すフローチャートである。
【
図8】
図8は、通信セッション登録処理を示すフローチャートである。
【
図9】
図9は、セッション離脱処理を示すフローチャートである。
【
図10】
図10は、通信セッション終了処理を示すフローチャートである。
【
図11】
図11は、通信セッション管理処理を示すフローチャートである。
【
図13】
図13は、録音開始処理および録音終了処理を示すフローチャートである。
【
図14】
図14は、通信モニタ部の処理動作を示すフローチャートである。
【発明を実施するための形態】
【0014】
図面を参照してこの発明の音声通信システムについて説明する。
図1は、この発明の実施形態である音声通信システム1の構成図である。
図2は中継装置2の構成を示す図である。
【0015】
音声通信システム1は、中継装置2の中継により、複数の通信端末間の音声通信を実現するシステムである。通信端末は、後述のSIP電話機20、内線電話機22、WLANトランシーバ23、LTEトランシーバ24、アナログトランシーバ26、および、デジタルトランシーバ28などである。これらの通信端末は、それぞれ異なる形態で音声信号を送受信する装置であり、中継装置2は、これら異種の通信端末間の音声通信を中継する。
【0016】
中継装置2は、通信の音声をモニタすることができる。2台以上の通信端末が相互に通信するとき、中継装置2はこの通信のための通信セッションを確立する。予めセッションモニタ対象として仮想デバイステーブル43(
図4参照)に登録された通信端末またはグループが参加している通信セッションで送受信される音声信号がモニタされる。また、予め個別モニタ対象として仮想デバイステーブル45(
図5参照)に登録された通信端末が通信セッションに参加している場合、この通信端末から送信された音声信号が(他の通信端末から送信された音声信号と分離されて)個別にモニタされる。モニタは、録音、音声出力の一方または両方である。
【0017】
図1において、中継装置2は、IP電話システム13、WLANトランシーバシステム14、LTEトランシーバシステム15および無線通信システム16からなる複数の通信システム間の音声通信を中継する。このため、中継装置2は、電話中継部3、ネットワーク通信中継部4および無線通信中継部5を有している。
【0018】
電話中継部3には、IP電話システム13が接続される。IP電話システム13は、ネットワーク10に接続されたSIP電話機20、VoIPゲートウェイ21、および、VoIPゲートウェイ21に接続された内線電話機22を有する。VoIPゲートウェイ21はPBX機能を備えており、電話回線(外線)にも接続される。
【0019】
ネットワーク通信中継部4には、無線アクセスポイント(不図示)を有するネットワーク10、および、基地局(不図示)を有するLTE通信網11が接続される。ネットワーク10上にはWLANトランシーバシステム14が構成され、LTE通信網11上にはLTEトランシーバシステム15が構成される。WLANトランシーバシステム14は、無線アクセスポイントを介してネットワーク10にアクセスするWLANトランシーバ23を有している。LTEトランシーバシステム15は、基地局を介してLTE通信網11にアクセスするLTEトランシーバ24を有している。ネットワーク通信中継部4の構成および機能は、本出願人の先行出願である「国際公開WO2015/068663」に詳述されている。
【0020】
無線通信中継部5は、
図2に示すように複数の外部機器インタフェース34を有している。各外部機器インタフェース34には、アナログ方式の無線トランシーバ(レピータ)25、および、デジタル方式の無線トランシーバ(レピータ)27がそれぞれ接続されている。レピータ25は、同種のアナログ方式のハンディ無線トランシーバ(アナログトランシーバ)26と通信する。レピータ27は、同種のデジタル方式のハンディ無線トランシーバ(デジタルトランシーバ)28と通信する。無線通信中継部5の構成および機能は、本出願人の先行出願である「特開2014-087027号公報」、「国際公開WO2016/002866」に詳述されている。
【0021】
図2は、中継装置2のブロック図である。中継装置2は、電話中継部3、ネットワーク通信中継部4、無線通信中継部5および通信モニタ部6を有しているが、これらは、主として機能的(ソフトウェア的)に実現される。中継装置2は制御部30を有している。制御部30は、CPU、ROM、RAMなどを有するコンピュータで構成される。制御部30には、外部記憶装置7、ネットワーク接続部31、LTE接続部32および信号処理部33が接続される。外部記憶装置7は、たとえばUSB接続のハードディスクなど不揮発・大容量の記憶装置であり、通信端末の通信音声を録音した音声ファイルが記憶される。ネットワーク接続部31は、ネットワーク10に接続される。LTE接続部32はLTE通信網11に接続される。
図1には、電話中継部3、ネットワーク通信中継部4に接続されるネットワーク10をそれぞれ別に記載しているが、全て同じネットワークで構わない。
【0022】
中継装置2では、制御部30を含むハードウェアとソフトウェアの協働により、機能的に、電話中継部3、ネットワーク通信中継部4、無線通信中継部5および通信モニタ部6が実現される。電話中継部3は、ネットワーク通信中継部4と音声信号等を送受信するためのインタフェース3Aを有している。ネットワーク通信中継部4は、無線通信中継部5と音声信号等を送受信するためのインタフェース4Aを有している。また、無線通信中継部5は信号処理部33と音声信号等を送受信するためのインタフェース5Aを有している。信号処理部33は、制御部30(インタフェース5A)から入力されたRTPパケットから音声信号を取り出し、デジタルまたはアナログの信号波に変換して外部機器インタフェース34に出力する。また、信号処理部33は、外部機器インタフェース34から入力されたデジタルまたはアナログの音声信号を圧縮、符号化およびRTPパケット化して制御部30(インタフェース5A)に入力する。
【0023】
外部機器インタフェース34(34-1~3)は、3つ設けられており、それぞれアナログインタフェース34-1、デジタルインタフェース34-2、アナログ(手元マイク・スピーカ)インタフェース34-3である。
図1では、アナログインタフェース34-1およびデジタルインタフェース34-2にレピータ25、27が接続されている状態を示している。
【0024】
ネットワーク通信中継部4は、WLANトランシーバ23同士の通信、LTEトランシーバ24同士の通信、および、WLANトランシーバ23-LTEトランシーバ24間の通信を中継する。ネットワーク通信部4は、また、電話中継部3からの呼び出しに対応して、SIP電話機20または内線電話機22(以下、電話機20、22と呼ぶ)とWLANトランシーバ23またはLTEトランシーバ24との通信、および、電話機20、22と無線トランシーバ26、28との通信を中継する。また、後述の通信セッションの制御や音声信号のミキシングは、ネットワーク通信中継部4によって実行される。ネットワーク通信中継部4が本発明の通信セッション処理部に対応する。
【0025】
電話中継部3は、SIP電話機20や内線電話機22からの呼び出しを受信し、その呼び出し先である通信相手の通信機器(宛先無線機)を決定して、その宛先無線機の情報および電話機20、22から受信した音声信号をネットワーク通信中継部4に入力する。なお、電話中継部3、ネットワーク通信中継部4、および、信号処理部33を含む無線通信中継部5の全部または一部が、本発明の通信部に対応する。
【0026】
通信モニタ部6は、複数の通信端末のうちモニタ対象となっている通信端末が参加している通信セッションの音声をモニタする。上述のようにモニタとは、録音および/または音声出力である。以下の説明では、録音について説明する。録音された音声(音声ファイル)は、外部記憶装置7に記憶される。
【0027】
図3は、ネットワーク通信中継部4によって確立される通信セッション、および、通信モニタ部6によって行われる通信のモニタを示す機能ブロック図である。ネットワーク通信中継部4が通信セッションを確立すると、
図4(B)に示すミキシングテーブルにその通信セッションが登録されるとともに、ネットワーク通信中継部4は、その通信セッションに参加している通信端末の音声信号のミキシング転送を行う。
図3は、
図4(B)のミキシングテーブルにおいて、セッションID「1」で識別される通信セッションの機能ブロック図を示している。
【0028】
通信セッションID1には、ID=21,41で識別される(実際の)通信端末が参加しており、このうち通信端末ID21には、セッションモニタ用の仮想デバイスVD1が対応づけられている(
図4(D)参照)。したがって、通信セッションID1には、通信端末ID21、通信端末ID41に加えて、仮想デバイスVD1が参加し、ミキシング部110によって、エコーキャンセルミキシング転送(後述)が行われる。
【0029】
アナログトランシーバである通信端末ID21から送信されてきた音声信号は、無線通信中継部5から入力バッファ105にバッファされ、入力バッファ105にバッファされた音声信号がミキシング部110に取り込まれる。LTEトランシーバである通信端末ID41から送信されてきた音声信号は、LTE接続部32から入力バッファ107にバッファされ、入力バッファ107にバッファされた音声信号がミキシング部110(通信セッションID1)に取り込まれる。ミキシング部110では、通信端末ID21に対しては、通信端末ID41から受信した音声信号のみが転送される。転送される音声信号は、出力バッファ106にバッファされ、信号処理部33によって取得される。また、ミキシング部110では、通信端末ID41に対しては、通信端末ID21から受信した音声信号のみが転送される。転送される音声信号は、出力バッファ108にバッファされ、LTE接続部32によって取得される。
【0030】
また、ミキシング部110では、仮想デバイスVD1に対しては、通信端末ID21および通信端末ID41から受信した音声信号がミキシングされて転送される。転送される音声信号は、出力バッファ120にバッファされ、通信モニタ部6の録音部230によって取得される。録音部230は、このミキシングされた音声信号を録音バッファに蓄積してゆき、バッファされた音声信号が所定のサイズになるごとにこれをファイル化する。
【0031】
また、通信端末ID21には、個別モニタ用の仮想デバイスVD11、VD21が対応付けられている(
図5(A)参照)。個別モニタとは、上述したように、複数の通信端末で通信セッション(相互通信)が行われている場合でも、モニタ対象の通信端末単体の送受信音声信号のみをモニタ(録音)する機能である。仮想デバイスVD11は、モニタ対象の通信端末ID21のアップストリーム音声信号(通信端末ID21から受信した音声信号)のみをモニタするために設けられた仮想デバイスであり、仮想デバイスVD21は、モニタ対象の通信端末ID21のダウンストリーム音声信号(通信端末ID21に送信される音声信号)をモニタするために設けられた仮想デバイスである。仮想デバイスVD11は、通信端末ID21の入力バッファ(in buf)105に対応付けられ、仮想デバイスVD21は、通信端末ID21の出力バッファ(out buf)106に対応付けられている。また、通信端末ID41には、アップストリーム信号を個別モニタするための仮想デバイスVD14が対応付けられており、仮想デバイスVD14は、通信端末ID41の入力バッファ107に対応付けられている。
【0032】
個別モニタのために、通信モニタ部6では、仮想の通信セッションID201、ID202およびID203が確立される(
図5(B),(C)参照)。通信端末ID21のアップストリーム音声信号をモニタする仮想通信セッションID201は、通信端末ID21(入力バッファ105)および仮想デバイスVD11のみが参加する通信セッションである。仮想通信セッションID201では、通信端末ID21から受信し入力バッファ105にバッファされる音声信号が、仮想デバイスVD11(出力バッファ213)を経由して録音部230に転送される。録音部230は、この転送された音声信号を録音バッファに蓄積してゆき、バッファされた音声信号が所定のサイズになるごとにこれをファイル化する。
【0033】
通信端末ID41のアップストリーム音声信号をモニタする仮想通信セッションID202は、通信端末ID41(入力バッファ107)および仮想デバイスVD41のみが参加する通信セッションである。仮想通信セッションID202では、通信端末ID41から受信し入力バッファ107にバッファされる音声信号が、仮想デバイスVD14(出力バッファ216)を経由して録音部230に転送される。録音部230は、この転送された音声信号を録音バッファに蓄積してゆき、バッファされた音声信号が所定のサイズになるごとにこれをファイル化する。
【0034】
通信端末ID21のダウンストリーム音声信号をモニタする仮想通信セッションID203は、通信端末ID21(出力バッファ106)および仮想デバイスVD21のみが参加する通信セッションである。仮想デバイスVD21は、通信端末ID21の出力バッファ106に対応付けられているため、仮想通信セッションID203には、実際の通信セッションID1において、通信端末ID21と通信する(他の)通信端末の音声信号が入力されることになり、通信端末ID21は、この仮想通信セッションID203においては、除外端末となる。なお、通信セッションID1は、通信端末ID21と通信端末ID41との個別通信であるため、この仮想通信セッションID203で録音される音声信号は、仮想通信セッション202で録音される音声信号とほぼ同じになるが、3以上の通信端末が参加するグループ通信(例えば、通信セッションID2)の場合には、モニタ対象の通信端末に送信される(モニタ対象を除く)、多数の通信端末の音声信号をモニタすることができる。仮想通信セッションID203では、実際の通信セッションID1において、ミキシング部110でミキシングされ、出力バッファ106にバッファされた音声信号が、仮想デバイスVD21を経由して録音部230に転送される。録音部230は、この転送された音声信号を録音バッファに蓄積してゆき、バッファされた音声信号が所定のサイズになるごとにこれをファイル化する。
【0035】
各通信端末の情報は、
図4(A)に示す端末テーブル(呼出先テーブル)40に登録されている。通信を開始しようとするユーザは、所持する通信端末で通信相手の通信端末を呼び出す。この呼び出し操作によって呼出メッセージが生成され中継装置2に送信される。呼出メッセージが中継装置2に受信されると、中継装置2は、この呼出メッセージに対応する通信セッションを
図4(B)に示すミキシングテーブル41に登録し(通信セッションを確立し)、通信相手の通信端末を呼び出す。これによって通信端末同士の通信が開始される。
【0036】
電話機20、22を除く通信端末は、音声信号をデータ本体として格納するRTPパケットを送信することで通信を開始する。すなわち、PTTスイッチが押されて通信が開始される無線トランシーバのような形態で通信が開始される。この通信の開始時に最初に送信されるRTPパケットを呼出パケットと言う。この呼出パケットが呼出メッセージとして機能する。この音声通信システム1で用いられるRTPパケットは、
図6のように構成されている。一方、電話機20、22が通信を開始するときは、まずSIPメッセージ(INVITE)を中継装置2に送信する。中継装置2は、SIP手順に従って他の通信機器との通信セッションを確立する。以下の説明では、WLANトランシーバ23などの通信端末が呼出パケットを送信することによって通信セッションが確立される場合について説明する。
【0037】
図4および
図5を参照して、中継装置2の制御部30に設けられる各種テーブルについて説明する。
図4(A)は、端末テーブル(呼出先テーブル)40を示す図である。端末テーブル40は、音声通信システム1に登録された通信端末およびグループの情報が記憶される。グループ(全体を含む)には複数の通信端末が所属し、グループが呼び出されると、所属する複数の通信端末が一斉呼び出される。各通信端末に対応づけて、識別番号(ID)、通信端末にアクセスするためのアドレス情報、参加している通信セッションを示す参加セッション番号が記憶される。各グループに対して、このグループに所属している通信端末の識別番号が記憶される。識別番号(ID)が、本発明の識別情報に対応する。
【0038】
なお、呼出種別とは、このIDを呼び出した場合にどの形態の通信が実行されるかを示す情報である。「個別」通信とは、1対1の個別の通信端末同士の通信である。「グループ」通信とは、複数の通信端末(一般的には3台以上)が相互に音声信号を交換する通信である。「全体」通信とは、ネットワーク10、LTE通信網11および外部機器インタフェース34に接続されている通信可能な全ての通信端末が相互に音声信号を交換する通信である。
【0039】
通信端末が他の通信端末を呼び出す場合、通信端末は、呼び出される通信端末の識別番号(宛先ID)が書き込まれたRTPパケット(音声パケット)を中継装置2に送信する。
図6はこの音声通信システムで使用されるRTPパケットの構成を示す図である。RTPパケットは、ヘッダとデータ本体(ペイロード)を有しており、ヘッダには送信先アドレスおよび送信元アドレスが記載される。データ本体は、音声通信のための音声信号とセッション情報を含んでいる。セッション情報は、
図4(B)のミキシングテーブル41に登録される通信セッションに関する情報であり、このRTPパケットがどの通信セッションのものであるかを識別するために書き込まれる。セッション情報は、セッション番号、宛先IDおよび発呼IDを含んでいる。なお、通信を開始したとき最初に送信される音声パケットである呼出パケットの場合、この音声パケットのための通信セッションがまだ確立されていない(ミキシングテーブル41に通信セッションが登録されていない)ため、セッション番号は空欄である。
【0040】
図4(B)はミキシングテーブル41を示す図である。ミキシングテーブル41は、確立され実行されている通信セッションが登録される。中継装置2は、通信セッションに参加している通信端末から受信した音声信号を、その通信セッションに参加している他の通信端末に転送する。同時に複数の音声信号が入力された場合には、それらをミキシングして通信端末に送信する。中継装置2は、音声信号をミキシングして各通信端末に送信する場合でも、ある通信端末が送信した音声信号がその通信端末に戻らないよう、通信端末ごとにエコーキャンセルミキシングして送信する。
【0041】
ミキシングテーブル41には、各通信セッションについて、セッションID、発呼ID、宛先ID、参加端末、除外端末、および、保持時間タイマ(TS)の欄が設けられる。セッションIDは、この通信セッションを識別する番号であり、通信セッションの確立順(登録順)にシリアルに付される。発呼IDの欄には発呼した(呼出パケットを送信した)通信端末の識別番号が記憶される。宛先IDの欄には、呼出パケットによって呼び出された通信端末またはグループの識別番号が記憶される。
【0042】
参加端末の欄には、この通信セッションに参加している通信端末の識別番号が登録される。また、除外端末の欄には、この通信セッションで呼び出されている(所属している)が、他の通信セッションに参加して通信中であるため、この通信セッションに参加していない通信端末の識別番号が登録される。参加端末の欄に識別番号が登録されている通信端末(参加端末)から音声信号が送信されてくると、制御部30は、この音声信号を他の参加端末に転送する。
【0043】
グループ通信セッションの場合、参加端末の欄には、発呼端末の識別番号および通信相手に指名されたグループに属する通信端末の識別番号が登録される。ただし、そのグループに所属していても別の通信セッションに参加している通信端末は、このグループ通信セッションに参加できないため、その通信端末は参加端末から外され除外端末の欄に識別番号が登録される。また、発呼端末が、このグループに所属していない通信端末であった場合、すなわち、発呼端末が、自身の所属するグループ以外のグループを呼び出した場合、発呼端末の識別番号も参加端末の欄に登録される。全体通信セッションの場合、通信可能な全ての通信端末が参加端末として登録される。
【0044】
各通信セッションの保持時間は、たとえば30秒に設定される。ミキシングテーブル41の保持時間タイマ(TS)は、どの参加端末からも音声信号が送信されてこない場合にカウントダウンされるタイマである。保持時間タイマTSは、通信セッション管理処理(
図11参照)で、リセットされ(30秒がセットされ)、且つ、カウントダウンされる。参加端末から30秒間、音声信号が送られて来ずにタイマTSがタイムアップした場合、この通信セッションは解消され、ミキシングテーブル41からこの通信セッションの情報が消去される。
【0045】
図4(C)は、優先度テーブル42を示す図である。優先度テーブル42には、呼出種別ごとの通信の優先度が記憶される。優先度は、数値で表され、値が小さいほど優先度が高いことを示している。一つの通信端末が、重複して複数の通信セッションから呼び出された場合、その通信端末をどちらの通信セッションに参加させるかが、優先度テーブル42の優先度に基づいて決定される。一つの通信端末が、重複して複数の通信セッションから呼び出される場合とは、例えば、同時に複数の通信セッションから呼び出される場合や、一つの通信セッションに参加中に他の通信セッションから呼び出される場合などである。
【0046】
なお、現在の通信セッションの優先度と新たな通信セッションの優先度とが同一の場合、通信端末は現在のセッションに参加し続け、新たな通信セッションに移動しない。同一の優先度であっても新たな通信セッションに移動させるようにしてもよい。また優先度テーブル42の内容はこれに限定されるものではなく、例えば、個別通信セッションを優先度1としてもよい。
【0047】
図4(D)は、仮想デバイステーブル(セッションモニタ用)43を示す図である。仮想デバイステーブル43には、モニタ対象である通信端末またはグループの呼出ID(識別番号)が記憶される。モニタ対象である通信端末またはグループを、以下の説明では、セッションモニタ対象と言う。この呼出IDの通信端末が参加する通信セッションが確立されたとき、通信モニタ部6がその通信セッションで送受信される音声信号を録音する。この音声信号を録音するため、モニタ対象に付属する仮想デバイスが設けられている。例えば、モニタ対象の通信端末ID21(アナログトランシーバ26)に対応して仮想デバイスVD1が設けられているなどである。仮想デバイスは、音声信号のミキシング転送を行うネットワーク通信中継部4から録音用の音声信号を取得するために通信セッションに参加させる仮想的なデバイスであり、通信モニタ部6は、通信対象が参加する通信セッションにこの仮想デバイスを一緒に参加させる。これにより、ネットワーク通信中継部4は、ミキシング時に仮想デバイスに送信する音声信号として、通信モニタ部6に対して音声信号を出力し、通信モニタ部6は、その(モニタ対象が参加している)通信セッションの音声信号を全て取得することができる。モニタ対象が通信セッションから離脱したとき、仮想デバイスも一緒にセッションから離脱する。通信モニタ部6は、モニタ対象の通信セッションの音声信号を録音するとともに(または録音せずに)、スピーカ等に出力してユーザが聴取できるようにしてもよい。
【0048】
図5(A)は、個別モニタ用の仮想デバイスが登録される仮想デバイステーブル45を示す図、
図5(B)、(C)は、個別モニタのための仮想通信セッションが登録される仮想ミキシングテーブル44を示す図である。
図5(B)に示す仮想ミキシングテーブル44-1には、後述のアップストリーム信号個別モニタ用の仮想デバイスが参加するアップストリーム個別モニタの仮想通信セッションが登録される。
図5(C)に示す仮想ミキシングテーブル44-2には、後述のダウンストリーム信号個別モニタ用の仮想デバイスが参加するダウンストリーム個別モニタの仮想通信セッションが登録される。なお、この実施形態では、仮想ミキシングテーブルを、アップストリーム個別モニタ用(
図5(B))とダウンストリーム個別モニタ用(
図5(C))とに分けているが、仮想デバイスIDでストリーム方向を判断することができるため、アップストリーム個別モニタ、ダウンストリーム個別モニタの仮想ミキシングテーブルを分けずに一つにしてもよい。
【0049】
図5(A)に示す仮想デバイステーブル45には、モニタ対象となる通信端末の呼出ID(識別番号)が記憶される。モニタ対象である通信端末を、以下の説明では、個別モニタ対象と言う。仮想デバイスには、モニタ対象のアップストリーム信号(モニタ対象の通信端末から受信した音声信号)をモニタするアップストリーム用の仮想デバイスVD11,12,14、および、モニタ対象のダウンストリーム信号(モニタ対象の通信端末に送信される音声信号)をモニタするダウンストリーム用の仮想デバイスVD21,22,23がある。すなわち、通信端末21,22には、アップストリーム、ダウンストリーム両方の個別モニタ用仮想デバイスがそれぞれ設けられており、通信端末31には、ダウンストリーム個別モニタ用の仮想デバイスが設けられており、通信端末41には、アップストリーム個別モニタ用の仮想デバイスが設けられている。
【0050】
アップストリーム個別モニタ用の仮想デバイスが対応付けられている通信端末が参加する実際の通信セッションが確立されたとき、通信モニタ部6がその通信端末および対応する仮想デバイスが参加する仮想通信セッションを確立し、仮想ミキシングテーブル44-1にその仮想通信セッションを登録する。仮想ミキシングテーブル44-1には、通信モニタ部6によって仮想的に確立される仮想通信セッションについて、セッションID(=201,202)、発呼ID、宛先ID、参加端末の欄が設けられる。発呼IDは、モニタ対象の通信端末のID(=21,41)である。宛先IDは、通信端末に対応づけられた仮想デバイスの識別番号(=VD11,VD14)である。参加端末の欄には、モニタ対象の通信端末のID、および、この通信端末に対応づけられた仮想デバイスのIDが記憶される。
【0051】
ダウンストリーム個別モニタ用の仮想デバイスが対応付けられている通信端末が参加する実際の通信セッションが確立されたとき、通信モニタ部6がその通信端末の出力バッファおよび対応する仮想デバイスが参加する仮想通信セッションを確立し、仮想ミキシングテーブル44-2にその仮想通信セッションを登録する。仮想ミキシングテーブル44-2には、通信モニタ部6によって仮想的に確立される仮想通信セッションについて、セッションID(=203)、発呼ID、宛先ID、参加端末の欄が設けられる。発呼IDは、モニタ対象の通信端末のID(=21)であるが、この通信端末は除外端末として登録される。宛先IDは、通信端末に対応づけられた仮想デバイスの識別番号(=VD21)である。参加端末の欄には、モニタ対象の通信端末のID(出力バッファ)、および、この通信端末に対応づけられた仮想デバイスの識別番号(=VD21)が記憶される。
【0052】
詳細はフローチャートで後述するが、通信モニタ部6は、モニタ対象が参加する通信セッションの音声を継続的にバッファし、所定サイズごと(たとえば100MBごと)に区切ってファイル化する。またモニタ対象が参加する通信セッションが変動した場合、例えば、通信セッションが開始/移動/終了したとき、その都度、バッファしている音声信号をファイル化する。
【0053】
中継装置2は、ネットワーク10、LTE通信網11および外部機器インタフェース34を介して通信端末から入力される音声パケット(音声信号)を、さらにネットワーク10、LTE通信網11および外部機器インタフェース34を介して他の通信端末に転送する。グループ通信の場合は、そのグループに属する複数の通信端末に音声信号を送信する。また、グループ通信の場合、複数の通信端末のユーザが同時に発言し、複数の通信端末から同時に音声パケットが送信されてくる場合がある。この場合、中継装置2は、これら複数の音声パケットの音声信号をミキシングして新たな音声パケットを編集し、この新たな音声パケットを各通信端末に送信する。なお、音声信号を送信していない通信端末に対しては、全ての音声信号をミキシングして送信し、音声信号を送信してきた通信端末に対しては、その通信端末が送信した音声信号を外して、それ以外の音声信号をミキシングして送信する。これにより、音声信号を送信した通信端末で自装置が送信した音声信号のエコーが生じないようにしている。なお、全体通信の形態の通信を行う場合にも、グループ通信と同様の形態でミキシングが行われる。仮想デバイスは音声信号を送信しないため、仮想デバイスにはその通信セッションの全ての音声信号が送信されてくる。
【0054】
図7~
図14のフローチャートを参照して中継装置2の動作を説明する。
図7は、音声バッファ確認処理動作を示している。制御部30は、通信端末から受信した音声信号がバッファされる入力バッファ(in buffer)を定期的(例えば20ミリ秒毎)にチェックし、音声信号がバッファされているかを判断する(S10)。音声信号がバッファされていない場合は(S10でNO)、動作を終了する。音声信号がバッファされていると(S10でYES)、この音声パケットのセッション情報を読み取り、通信セッションが、既にミキシングテーブル41に登録されているかを判断する(S11)。通信セッションが既にミキシングテーブル41に登録されている場合(S11でYES)、制御部30は、ミキシングテーブル41の保持時間タイマTSを30秒にリセットし(S15)、ミキシングテーブル41の参加端末の欄を参照し、受信した音声パケットの音声信号を通信セッションに参加している通信端末宛に転送する(S13)。
【0055】
受信した音声パケットの通信セッションが、ミキシングテーブル41に登録されていない場合(S11でNO)、すなわち、この音声パケットが呼出パケットであった場合、この新たな通信セッションをミキシングテーブル41に登録するための通信セッション登録処理を行い(S12)、受信した音声パケットの音声信号を通信セッションに参加している通信端末宛に転送する(S13)。以下、
図8のフローチャートを参照して通信セッション登録処理を説明する。
【0056】
図8は、
図7のS12で実行される通信セッション登録処理を示すフローチャートである。制御部30は、受信した呼出パケットに含まれる宛先ID、発呼IDから、この新たな通信セッションの発呼端末および呼び出される通信端末からなる参加端末候補を抽出し、その1つを選択する(S20)。次に、制御部30は、この参加端末候補の通信端末が、現在他の通信セッションに参加中(通信中)であるか否かを判断する(S21)。S21で、通信端末が通信中ではない場合(S21でNO)、制御部30は、この通信端末を、今回確立する通信セッションの参加端末として決定し(S22)、通信モニタ部6にこの通信端末(S20で選択された通信端末)が通信を開始したことを通知するメッセージを送信する(S23)。S20で選択された通信端末が個別モニタの対象になっている場合、通信モニタ部6は、この通知に対応してこの通信端末の個別モニタを開始する。次に、この通信端末がセッションモニタ対象の通信端末であるかを判断する(S24)。セッションモニタ対象の通信端末の場合には(S24でYES)、この通信端末に対応付けられている仮想デバイスVDnも参加端末に含める(S25)。
【0057】
一方、S21で、通信中である場合(S21でYES)、制御部30は、その通信端末が現在の参加している通信セッションと今回の新たな通信セッションの優先度を比較する(S26)。新たな通信セッションの優先度が高い場合(S26でYES)、制御部30は、この通信端末を現在参加している通信セッションから離脱させる離脱処理を実行し(S27)、この通信端末を、新たな通信セッションの参加端末として決定する(S22)。通信モニタ部6にこの通信端末が通信を開始したことを通知するメッセージを送信し(S23)、この通信端末がモニタ対象である場合には(S24でYES)、対応する仮想デバイスVDnも参加端末に含める(S25)。
【0058】
S26で、新たな通信セッションの優先度が、現在通信端末が参加している通信セッションの優先度と同じまたは低い場合(S26でNO)、制御部30は、この通信端末を新たな通信セッションの除外端末として決定する(S28)。制御部30は、全ての参加端末候補について、S20~S28の処理を繰り返す(S30)。
【0059】
全ての参加端末候補について上記処理が実行されると(S30でYES)、制御部30は、参加端末に決定された通信端末の数を判断する(S31)。参加端末の数が仮想デバイスを除いて2以上の場合(S31でYES)、制御部30は、この新たな通信セッションをミキシングテーブル41に登録し(S32)、この処理を終了する。また、S29で参加端末の数が2に満たなかった場合(S31でNO)、制御部30は、新たな通信セッションが成立しないとして、新たな通信セッションのミキシングテーブル41への登録は行わず、登録処理を終了する。
なお、この処理において、参加端末候補の通信端末が除外端末となって参加端末の数が2に満たない場合でも通信セッションを登録してもよい。この場合には、相互通信が成立しないため、保持時間TSが経過すると、通信セッション管理処理(
図11参照)により、この通信セッションは解消される。
【0060】
図9を参照して
図8のS27で実行されるセッション離脱処理について説明する。この処理は、
図8に示したように、通信セッションに参加している通信端末を、優先度の高い他の通信セッションに移動させるため、現在参加している通信セッションから離脱させる処理である。制御部30は、まず、通信モニタ部にこの通信端末が通信セッションから離脱する旨を通知するメッセージを送信し(S40)、端末テーブル40の参加セッション番号を消去し(S41)、ミキシングテーブル41の現在参加している通信セッションの参加端末の欄から除外端末の欄へこの通信端末の識別番号を移動させる(S42)。そしてこの通信端末がセッションモニタ対象であるかを判断する(S43)。セッションモニタ対象である場合には(S43でYES)、参加端末の欄から仮想デバイスVDnを消去する(S44)。これにより、この通信セッションのセッションモニタが終了する。そして、この通信端末の離脱によってこの通信セッションの参加端末の数が2未満になった場合(S45でYES)、この通信セッションのセッション終了処理を実行する(S46)。モニタ対象の通信端末がこの処理で通信セッションから離脱した場合、すぐに新たに参加することになる通信セッションで録音が開始される(
図8のS24-S25)。なお、参加端末の数が2未満になった場合でも、即座に通信セッションを終了させず、保持時間TSが経過するまで通信セッションを維持してもよい。
【0061】
図10は、セッション終了処理を示すフローチャートである。この処理は、通信セッションの音声が途絶えて無音のまま保持時間TS(例えば30秒)が経過した場合、および、通信セッションの参加端末の数が2未満になった場合に実行される。制御部30は、終了させる通信セッションの参加端末を一つ選択し(S50)、この通信端末の通信が終了する旨のメッセージを通信モニタ部6に送信する(S51)。S50で選択された通信端末が個別モニタの対象になっていて音声を録音中の場合、通信モニタ部6は、この通知に対応してこの通信端末のモニタを終了する。そして、端末テーブル40のこの通信端末の参加セッション番号を消去する(S52)。そしてこの通信端末がセッションモニタの対象であるかを判断する(S53)。セッションモニタの対象である場合には(S53でYES)、参加端末の欄から仮想デバイスVDnを消去する(S54)。
【0062】
そして、ミキシングテーブル41に登録されている他の通信セッションの除外端末の欄にこの通信端末の識別番号が登録されているかを検索する(S55)。この通信端末が除外端末となっている通信セッションが存在する場合(S56でYES)、この通信端末を除外されていた通信セッションに参加させるため、この通信番号の識別番号を通信セッションの除外端末欄から参加端末欄に移動させ(S57)、この通信セッションのセッション番号を、端末テーブル40のこの通信端末の参加セッション番号欄に書き込み(S58)、通信モニタ部6にこの通信端末が通信セッションに途中参加して通信を開始したことを通知するメッセージを送信する(S59)。この通信端末が個別モニタの対象になっている場合、通信モニタ部6は、この通知に対応してこの通信端末の音声信号の録音を開始する。次に、この通信端末がセッションモニタの対象であるかを判断する(S60)。セッションモニタの対象である場合には(S60でYES)、仮想デバイスVDnを通信セッションの参加端末欄に書き込む(S61)。全ての参加端末についてS50~S61の処理を実行したのち(S62でYES)、ミキシングテーブル41からこの通信セッションを消去して(S63)、セッション終了処理を終了する。
【0063】
図11は、通信セッション管理処理を示すフローチャートである。通信セッション管理処理は、ミキシングテーブル41に登録されている通信セッションの無音時間をカウントし、所定の保持時間(30秒)が経過したときその通信セッションを終了させる処理である。この処理は、定期的(たとえば20ミリ秒毎)に繰り返し実行される。制御部30は、まずミキシングテーブル41の先頭行の通信セッションを指定する(S80)。制御部30は、指定された通信セッションの保持時間タイマTSを1カウント(20ミリ秒分)減算し(S81)、この減算で保持時間タイマTSが0になったか否かを判断する(S82)。保持時間タイマTSが0になった場合(S82でYES)、制御部30は、この通信セッションは終了したとして、この行の通信セッションに対してセッション終了処理を消去する(S83、
図8)。制御部30は、以上の処理をミキシングテーブル41の最終行になるまで順次行うことで(S84、S85)、ミキシングテーブル41の管理を行う。
【0064】
図12、
図13は、制御部30の通信モニタ部6によって実行される録音処理動作を示すフローチャートである。この処理は、仮想デバイスVDn(n=1~4)のそれぞれについて、一定時間(20ms)ごとに実行される。まず
図12において、通信モニタ部6は、セッションモニタ用の仮想デバイスVDn宛の音声信号(音声パケット)を受信したか否かを判断する(S90)。音声パケットを受信した場合(S90でYES)、通信モニタ部6は、その音声パケットのデータ本体に含まれているセッション情報を読み取る。セッション情報にはセッションID等が記載されている。通信モニタ部6は、この通信セッションの音声信号を録音中であるか否かを判断する(S92)。録音中でなければ(S92でNO)、この通信セッションの最初の音声パケットを受信したとして、通信モニタ部6は、録音開始処理を実行する(S93)。
【0065】
ここで、
図13(A)のフローチャートを参照して録音開始処理について説明する。録音開始処理では、通信モニタ部6は、まず音声パケットに含まれていたセッション情報を保存する(S110)。そして、通信モニタ部6は、外部記憶装置7における音声ファイルの記憶領域(ストレージ容量)を確保する(S111)。外部記憶装置7の空き容量が少ない場合には、古い録音音声ファイルを削除して容量を確保すればよい。こののち、通信モニタ部6は、日付フォルダおよびこれからバッファする音声信号の保存ファイル名を生成するとともに(S112)、制御部3のRAM上に音声信号をバッファするバッファ領域を確保する(S113)。S110のセッション情報の記憶領域も制御部30のRAM上に設定される。なお、日付フォルダは、各仮想デバイスVDn別に日付ごとに生成される。したがって、既にこの仮想デバイスVDnの当日のフォルダが作成されている場合、S112ではフォルダを作成しない。フォルダ名およびファイル名は以下の要領で作成される。
【0066】
外部記憶装置7には、各仮想デバイスVDn(n=1~4)別の録音音声の保存ディレクトリ「voice_data[n]」(nは仮想デバイス番号)が作成される。各ディレクトリの下に日付ごとのフォルダが作成されるフォルダ名は、「保存開始時の日付」が用いられる。例えば、仮想デバイスVD1用の2018年9月10日分のフォルダは「/voice_data1/20180910」となる。また、100MBごとに作成される音声ファイルのファイル名は、バッファ開始時のMM(月)DD(日)MM(時)DD(分)SS(秒)に通信種別を付加した名称とする。通信種別は、全体通信の場合「_all」グループ通信の場合「_group100」(100はグループID)、個別通信の場合「_uid10」(トランシーバのID)、「_tel1234」(IP電話機の電話番号)などである。たとえば、9月10日の18時01分にバッファを開始したグループID100の通信セッションの音声信号のファイル名は「0910180100_group100.wav」となる。したがって、例えば、仮想デバイスVD1が2018年9月10日の18時01分にバッファを開始したグループID100の通信セッションの音声信号は、「/voice_data1/20180910/0910180100_group100.wav」として保存される。
【0067】
図12に戻って、録音開始処理(S93)でバッファ領域が確保されると、通信モニタ部6は、今回受信した音声信号をバッファする(S94)。
【0068】
現在、この仮想デバイスVDnの音声信号が現在録音中である場合(S92でYES)、今回受信した音声パケットのセッション情報と録音開始時に保存したセッション情報とを比較する(S95)。セッション情報に変化がある場合には(S95でYES)、通信相手が変化したとして、一旦録音を終了し(S97)、今回受信した新たな通信セッションのための録音を開始する(S98)。
【0069】
ここで、
図13(B)のフローチャートを参照して、S97で実行される録音終了処理について説明する。録音終了処理では、まず、バッファから外部記憶装置7の所定ディレクトリに音声データをコピーして録音音声ファイルを生成する(S115)。この音声ファイルのファイル名は上に説明したとおりである。そして、通信モニタ部6は、RAM上のバッファ領域を開放し(S116)、セッション情報をクリアする(S117)。
【0070】
図12に戻って、セッション情報に変化がない場合でも(S95でNO)、バッファしている音声信号のサイズが100MBに達した場合には(S96でYES)、通信モニタ部6は、一旦音声信号をファイル化するために、一旦録音終了処理を実行し(S97)、引き続き音声信号を録音するために録音開始処理を実行する(S98)。録音開始処理(S98)ののち、通信モニタ部6は、今回受信した音声信号をバッファする(S99)。セッション情報に変化がなく(S95でNO)且つバッファサイズが100MBに達していない場合には(S96でNO)、通信モニタ部6は、現在のバッファ領域に音声信号をバッファする(S99)。
【0071】
S90において、仮想デバイスVDn宛の音声パケットを受信なかった場合(S90でNO)、通信モニタ部6は、現在録音中であり、且つ、所定の待機時間(例えば5秒)が経過したかを判断する(S100、S101)。現在録音中であり、且つ、所定の待機時間(例えば5秒)が経過した場合には(S100およびS101でYES)、通信モニタ部6は、通信が終了したとして録音終了処理を実行する(S102)。
【0072】
なお、音声パケットを受信している場合でもその音声パケットに含まれる音声信号がほぼ無音の場合には音声信号なしとして無音待機時間を進めても良い。また、通信セッションの参加端末の欄から仮想デバイスが消去されたとき(
図9のS43、
図10のS53)、ミキシング部230(ネットワーク通信中継部4)から通信モニタ部6へセッション離脱を示す何らかのメッセージが送信される場合、そのメッセージに応じて録音終了処理が実行されればよい。
【0073】
図14は、通信モニタ部6が実行する、個別モニタの処理手順を示すフローチャートである。
【0074】
図14(A)は、仮想セッション開始処理を示すフローチャートである。ネットワーク通信中継部4から、通信端末が通信セッションに参加または途中参加した旨のメッセージを受信すると(S150)、通知された通信端末が個別モニタ対象の通信端末であるかを判断する(S151)。個別モニタ対象でない場合には(S151でNO)、処理を終了する。通知された通信端末が個別モニタ対象の場合には(S151でYES)、モニタ対象がアップストリーム信号であるかダウンストリーム信号であるかを判断する(S152)。アップストリーム信号の個別モニタ対象である場合は(S152でYES)、この通信端末とこの通信端末に対応づけられている個別モニタ用の仮想デバイスとが参加する仮想の通信セッションを仮想ミキシングテーブル44-1に登録する(S153)。そしてこの仮想デバイス宛に転送される音声信号を録音するための録音開始処理を実行する(S154:
図13(A)参照)。なお、
図13(A)の録音開始処理のS110において保存されるセッション情報は、この仮想セッションでなく、S150でネットワーク通信中継部4から送信されてくる実際の通信セッションの情報である。
【0075】
S152において、モニタ対象がダウンストリーム信号である場合は(S152でNO)、この通信端末の出力バッファとこの通信端末に対応づけられている個別モニタ用の仮想デバイスとが参加する仮想の通信セッションを仮想ミキシングテーブル44-2に登録する(S155)。そしてモニタ対象の出力バッファからこの仮想デバイス宛に転送される音声信号を録音するための録音開始処理を実行する(S156:
図13(A)参照)。なお、
図13(A)の録音開始処理のS110において保存されるセッション情報は、この仮想セッションでなく、S150でネットワーク通信中継部4から送信されてくる実際の通信セッションの情報である。
【0076】
図14(B)は、仮想セッション終了処理を示すフローチャートである。ネットワーク通信中継部4から通信端末が参加している通信セッションが終了した旨、または、通信端末が通信セッションから離脱した旨のメッセージが送られてくると(S161)、仮想ミキシングテーブル44-1,2を参照して、通知された通信端末が個別モニタ対象であるかを判断する(S162)。個別モニタ対象でない場合には(S162でNO)、処理を終了する。通知された通信端末が個別モニタ対象の場合には(S162でYES)、仮想ミキシングテーブルに登録されているこの通信端末を対象とする仮想通信セッションを消去し(S163)、録音終了処理を実行する(S164)。
【0077】
図14(C)は、音声バッファ確認処理を示すフローチャートである。通信モニタ部6は、仮想セッションが登録されている間、その通信セッションに参加している実際の通信端末、すなわち個別モニタ対象の通信端末の入力バッファの内容を定期的(例えば20ミリ秒毎)に取得する(S171)。入力バッファの内容が空(無音)でも構わない。この取得した音声信号を、録音バッファに追加する(S172)。すなわち、無音期間も含めて時系列に通信端末の音声信号を録音してゆく。そして、録音バッファにバッファしている音声信号のサイズが確認し(S173)、バッファサイズが100MBに達した場合には(S173でYES)、通信モニタ部6は、一旦音声信号をファイル化するために、一旦録音終了処理を実行し(S174)、引き続き音声信号を録音するために録音開始処理を実行する(S175)。バッファサイズが100MBに達していない場合には(S173でNO)、通信モニタ部6は、処理を終了する。
【0078】
以上のように、個別モニタでは、無音期間を含めてモニタ対象の通信端末が通信セッションに参加している間の音声信号が、時間軸に録音され、セッションモニタは、通信セッションに参加しているいずれかの通信端末から(所定レベル以上の)音声信号が入力された場合に、その信号を録音する。個別モニタにおいても、モニタ対象の通信端末から音声信号が入力されたときのみ、それを録音するようにしてもよい。また、セッションモニタにおいても、無音期間を含めて通信セッションでミキシングされる音声信号を全て録音するようにしてもよい。
【0079】
なお、上記実施形態では、録音音声データをWAVとしたが、エンコード形式はどのようなものでもよい。たとえば、MP3などでもよい。
【0080】
また、この実施形態では、バッファしている録音音声のサイズが所定サイズになる毎にファイル化しているが、録音時間が所定の時間になる毎にファイル化してもよい。
【符号の説明】
【0081】
1 音声通信システム
2 中継装置
3 電話中継部
3A インタフェース
4 ネットワーク通信中継部
5 無線通信中継部
6 通信モニタ部
7 外部記憶装置
20 SIP電話機
22 内線電話機
25 アナログ無線機(レピータ)
26 アナログトランシーバ
27 デジタル無線機(レピータ)
28 デジタルトランシーバ
29 マイク・スピーカ
34-1~3 外部機器インタフェース