以下、図面を参照して実施形態について説明する。図面において、同一の機能及び構成要素については、同一符号を付して説明を省略するか、又は、簡単に説明を行う。
(第1の実施形態)
第1の実施形態では、交換機から発行されたコールイベントに基づいて発着信履歴データを生成し、ユーザ端末から識別データを受信し、識別データに関連する1又は複数の登録電話番号を取得し、取得された1又は複数の登録電話番号に対応する発着信履歴データをユーザ端末へ送信する発着信履歴管理装置について説明する。
図1は、第1の実施形態に係る発着信履歴管理装置3を備える通話システム1の構成の例を示すブロック図である。
通話システム1は、交換機2と発着信履歴管理装置3とを備える。通話システム1は、ユーザ端末4をさらに備えるとしてもよい。
交換機2は、電話機T1〜Tnと通信可能である。第1の実施形態において、電話機T0は、交換機2の配下にはない、すなわち内線電話に属さないとする。一方、電話機T1〜Tnは、交換機2の配下にあり、内線電話に属するとする。この図1の例において、電話機T0〜Tnが内線電話に属するか否かの属性は一例であり、自由に変更可能である。
図1では、電話機T0が発信電話機(発信元)であり、電話機T1が着信電話機(発信先)である場合を例として説明するが、電話機T0〜Tnのいずれが発信電話機であり、いずれが着信電話機であってもよい。電話機T0〜Tnは、固定式電話機でもよく、携帯式電話機でもよい。
図1では、ユーザ端末4と電話機T0〜Tnとを別構成としているが、ユーザ端末4は電話機T0〜Tnのいずれかであってもよい。
交換機2は、接続部5と、イベント発行部6と、記憶装置7と、API(Application Programming Interface)制御部8とを備える。第1の実施形態において、交換機2は、局内交換機の場合を例として説明するが、交換機2は、他の種類の電話交換機でもよい。
接続部5は、発信電話機である電話機T0から着信を受けた場合に、当該電話機T0と着信電話機である電話機T1との間を通話可能に接続する。
イベント発行部6は、接続部5による接続動作とともに、すなわち接続部5による接続動作と並列的に、コールイベントを発着信履歴管理装置3へ発行する。
第1の実施形態において、コールイベントは、例えば、発信電話番号(FROM)、着信電話番号(TO)、イベント種別を含む。さらに、コールイベントは、例えば、イベント発生時刻データを含むとしてもよい。
イベント種別としては、例えば、交換機2が着信したことを示す着信イベント(INCOMING)、交換機2が発信したことを示す発信イベント(OUTGOING又はDIALED)、発信電話機T0からの呼び出しに対して着信電話機T1が応答(通話又は接続)したことを示す応答イベント(CONNECTED)などがある。
記憶装置7は、番号データ9を記憶する。なお、記憶装置7は、交換機2と別構成としてもよい。記憶装置7は、複数の記憶装置から構成されていてもよい。
番号データ9は、例えば、交換機2によって管理されている電話番号を含む。番号データ9は、例えば、同一のユーザに割り当てられている少なくとも1つの電話番号(以下、登録電話番号という)を関連付けているデータである。番号データ9は、例えば、テーブル形式のデータでもよく、リスト形式のデータでもよく、そのデータ構造は、ある電話番号から、当該ある電話番号に関連付けられている他の電話番号が取得可能であればよい。なお、複数のデータを互いに関連付けている後述の他のデータのデータ構造についても同様である。
識別データは、例えば、ユーザの名前、ユーザ固有のID又は番号、ユーザが使用する装置識別データ(装置ID)、ユーザの属性データでもよい。ユーザの属性データとは、例えば、ユーザの所属する会社、部署、グループなどでもよい。また、識別データは、ユーザが使用する電話機の電話番号でもよい。例えば、ユーザには固有の内線番号が割り振られており、この内線番号が識別データとして利用されてもよい。
第1の実施形態において、各種の電話番号は、例えば、電話機の固有電話番号でもよく、複数の電話機に割り当てられている共有の電話番号でもよく、仮想内線に関する電話番号でもよい。
ここで、仮想内線とは、交換機2において内線データとして通常の内線と同様に定義・管理されているが、交換機2配下の物理的な電話機(通信装置などのデバイス)に関連付けられていない内線である。仮想内線は、物理的な電話機と関連付けられない場合であっても通常の内線と同様に電話機に近い高機能を持つことも可能である。また、仮想内線は、必ずしも交換機2内でデータのみで定義される必要はなく、交換機2内部に備えられたプログラムを包括した形式で定義されてもよい。
API制御部8は、発着信履歴管理装置3から所定の規則に準拠したコマンドを受信した場合に、コマンドに応じた処理を実行し、処理結果を発着信履歴管理装置3へ返信する。具体例として、API制御部8は、発着信履歴管理装置3から番号データ9の送信コマンドを受信し、送信コマンドに基づいて記憶装置7から番号データ9を読み出し、番号データ9を発着信履歴管理装置3へ送信してもよい。
発着信履歴管理装置3は、例えばサーバ装置などの情報処理装置であり、交換機2と通信可能である。発着信履歴管理装置3は、例えば、CTI(Computer Telephony Integration)サーバなどでもよい。
発着信履歴管理装置3は、受信部10と、履歴管理部11と、受信部12と、番号取得部13と、履歴取得部14と、送信部15と、問合せ部23と、登録部24と、記憶装置16とを備える。発信履歴管理装置3は、記憶装置16へ各種データを記憶し、又は、記憶装置16から各種データを読み出すことができる。発着信履歴管理装置3は、複数の情報処理装置が連携して実現されてもよい。記憶装置16は、発着信履歴管理装置3と別構成でもよい。記憶装置16は、例えばデータベース管理システムでもよい。記憶装置16は、例えば複数の記憶装置から構成されてもよい。
受信部10は、交換機2から発行されたコールイベントを受信する。
履歴管理部11は、コールイベントに含まれているイベント種別が、着信イベント、発信イベント、応答イベントのいずれかであるか否か判断する。
そして、履歴管理部11は、コールイベントに含まれているイベント種別が着信イベント又は発信イベントを示す場合に、コールイベントに含まれている発信電話番号と、着信電話番号と、イベント種別を示す種別データと、未応答(不在)であることを示す状態(ステータス)データと、時刻(日時)データとを関連付けた発着信履歴データ171を生成し、発着信履歴データ171を記憶装置16に記憶する。
ここで、発着信履歴データ171に含まれる時刻データには、コールイベントにイベント発生時刻データが含まれている場合には、コールイベントに含まれているイベント発生時刻データを用いてもよい。あるいは、発着信履歴データ171に含まれる時刻データは、発着信履歴管理装置3の時計機能によって管理されている時刻(システム時刻)を用いて設定されてもよい。
その後も同様に、履歴管理部11は、受信部10によって受信されたコールイベントの種別が着信イベント又は発信イベントであるたびに、それぞれ発着信履歴データ172〜17mを生成し、発着信履歴データ172〜17mを記憶装置16に記憶する。これにより、記憶装置16に発着信履歴データ171〜17mが蓄えられていく。発着信履歴データ171〜17mは、例えば、テーブル形式で管理されてもよい。
一方で、履歴管理部11は、コールイベントに含まれているイベント種別が応答イベントを示す場合、記憶装置16に記憶されている発着信履歴データ171〜17mの中から、コールイベントに含まれている発信電話番号と着信電話番号とを含む発着信履歴データを抽出し、この抽出した発着信履歴データの状態データを、未応答から応答に更新し、更新された発着信履歴データを記憶装置16に記憶する。
記憶装置16は、発着信履歴データ171〜17mと、管理データ43と、電話番号管理データ22とを記憶する。また、記憶装置16は、番号データ9を記憶していてもよい。
管理データ43は、識別データと参照用電話番号とを関連付けている。さらに、管理データ43は、識別データに対して各種のユーザ情報を関連付けていてもよい。この場合、発着信履歴管理装置3は、識別データと管理データ43とを用いてユーザ認証又はユーザの属性の認証などを行うことができる。
電話番号管理データ22は、例えば、発着信履歴管理装置3において管理されており電話帳機能で用いられるデータであり、電話番号と氏名又は名称などとを関連付けている。
受信部12は、ユーザ端末4から識別データを受信する。
番号取得部13は、例えば、記憶装置16に記憶されている管理データ43を取得(参照)する。管理データ43は、識別データと参照用電話番号とを関連付けている。番号取得部13は、管理データ43から、受信部12によって受信された識別データと関連付けられている参照用電話番号を取得する。
また、番号取得部13は、例えば、記憶装置16に記憶されている番号データ9を取得する。
番号取得部13は、記憶装置16に番号データ9が記憶されていない場合、又は、記憶装置16から番号データ9を取得することができない場合、例えば、番号データ9の送信コマンドを交換機2へ送信してもよい。この場合、交換機2のAPI制御部8は、送信コマンドを受信し、送信コマンドにしたがって記憶装置7から番号データ9を読み出し、読み出された番号データ9を発着信履歴管理装置3に送信する。番号取得部13は、交換機2から番号データ9を受信する。
そして、番号取得部13は、番号データ9の中から、取得された参照用電話番号に関連付けられている1以上の登録電話番号を取得する。
なお、識別データが電話番号の場合、上記のような番号取得部13による参照用電話番号を取得する処理と管理データ43とは省略してもよい。この場合、番号取得部13は、識別データをそのまま参照用電話番号として用いて、番号データ9の中から1以上の登録電話番号を取得してもよい。
履歴取得部13は、記憶装置16に記憶されている発着信履歴データ171〜17mの中から、番号取得部13によって取得された1以上の登録電話番号を含む発着信履歴データを取得する。
例えば、1以上の登録電話番号として、ユーザが使う内線番号と、複数の共有電話番号とが番号取得部13によって取得されたとする。この場合、履歴取得部13は、取得された内線番号と複数の共有電話番号とのうちのいずれかの番号と一致する発信電話番号又は着信電話番号を含む発着信履歴データを抽出する。
例えば、履歴取得部13は、上記のように発信電話番号又は着信電話番号の一致により発着信履歴データを抽出することに加えて、発着信履歴データの時刻データが直近から所定期間内であること、発着信履歴データが直近から所定数内であること、発着信履歴データの種別データが着信イベントであること、発着信履歴データの種別データが発信イベントであること、発着信履歴データの状態データが未応答であること、又は、発着信履歴データの状態データが応答であること、の少なくとも1つを抽出条件に加えてもよい。
送信部15は、履歴取得部13によって取得されたすべての又は一部の発着信履歴データをユーザ端末4へ送信する。
例えば、送信部15は、取得された発着信履歴データの時刻データが直近から所定期間内であること、発着信履歴データが直近から所定数内であること、発着信履歴データの種別データが着信イベントであること、発着信履歴データの種別データが発信イベントであること、発着信履歴データの状態データが未応答であること、又は、発着信履歴データの状態データが応答であること、の少なくとも1つを送信条件に加えてもよい。
発着信履歴管理装置3からユーザ端末4へ送信される発着信履歴データの条件は、ユーザ端末4から指定可能としてもよい。
問合せ部23は、履歴取得部13によって取得された発着信履歴データに含まれている発信電話番号又は着信電話番号が、記憶装置16に記憶されている電話番号管理データ22に含まれているか否か判断する。そして、問合せ部23は、取得された発着信履歴データに含まれている発信電話番号又は着信電話番号が電話番号管理データ22に含まれていない場合に、電話番号管理データ22に含まれていない発信電話番号又は着信電話番号を電話番号管理データ22に登録するか否かをユーザ端末4に問合せる。
例えば、問合せ部23は、電話番号管理データ22に含まれていない発信電話番号又は着信電話番号の表示位置近傍に、登録ボタンを表示し、ユーザが登録を希望する場合に登録ボタンの指定を促すための処理を実行する。
登録部24は、ユーザ端末4から登録指示を受けた場合に、電話番号管理データ22に含まれていない発信電話番号又は着信電話番号を電話番号管理データ22に登録する。これにより、発着信履歴管理装置3における電話帳機能で用いられる電話番号管理データ22を充実させることができる。
ユーザ端末4は、例えばクライアント装置などの情報処理装置であり、発着信履歴管理装置3と通信可能である。ユーザ端末4は、例えば、パーソナルコンピュータ、タブレット型コンピュータ、スマートフォン、固定式電話機、携帯式電話機などでもよい。
ユーザ端末4は、送信部18と、受信部19と、表示制御部20とを備える。ユーザ端末4の送信部18と受信部19と表示制御部20とは、例えば、オペレーティングシステム、ブラウザ、アプリケーションプログラム、又は、それらの2以上の組み合わせなどで実現される。
送信部18は、例えばユーザの操作にしたがって識別データを発着信履歴管理装置3へ送信する。なお、送信部18は、抽出したい発着信履歴データの条件として、例えば、データ数、時刻データ、種別データ、状態データの指定を、発着信履歴管理装置3へ通知してもよい。
また、送信部18は、電話番号管理データ22に含まれていない発信電話番号又は着信電話番号に関する登録指示を、発着信履歴管理装置3へ送信する。
受信部19は、発着信履歴管理装置3から発着信履歴データを受信する。また、受信部19は、電話番号管理データ22に含まれていない発信電話番号又は着信電話番号を電話番号管理データ22に登録するか否かの問合せを、発着信履歴管理装置3から受信する。
表示制御部20は、受信された発着信履歴データを表示するための制御を実行する。また、表示制御部20は、電話番号管理データ22に対する登録の問合せを受けた場合に、例えば登録ボタンなどのような登録指示を受け付けるためのアイコンなどを表示する。
図2は、第1の実施形態に係る通話システム1のハードウェア構成の例を示すブロック図である。
交換機2は、例えば、記憶装置7、プロセッサ25、通信装置26を備える。記憶装置7は、番号データ9とプログラム27とを記憶する。プロセッサ25は、記憶装置7に記憶されているプログラム27を実行することにより、上記図1の接続部5、イベント発行部6、API制御部8として機能するとともに、通信装置26を制御して他の装置との間で通信を行う。
発着信履歴管理装置3は、例えば、記憶装置16、プロセッサ28、通信装置29を備える。記憶装置16は、番号データ9と、発着信履歴データ171〜17mと、プログラム30と、管理データ43と、電話番号管理データ22とを記憶する。プロセッサ28は、記憶装置16に記憶されているプログラム30を実行することにより、上記図1の受信部10、履歴管理部11、受信部12、番号取得部13、履歴取得部14、送信部15、問合せ部23、登録部24として機能するとともに、通信装置29を制御して他の装置との間で通信を行う。
ユーザ端末4は、例えば、記憶装置21、操作装置31、表示装置32、プロセッサ33、通信装置34を備える。記憶装置21は、電話番号管理データ22とプログラム35とを記憶する。操作装置31は、ユーザの操作を受け付ける装置であり、例えば、タッチパネル、キーボード、マウスなどの入力デバイスでもよい。表示装置32は、例えば、液晶ディスプレイ、有機ELディスプレイなどテキスト又は画像などを表示可能なデバイスである。プロセッサ33は、記憶装置21に記憶されているプログラム35を実行することにより、上記図1の送信部18、受信部19、表示制御部20として機能するとともに、通信装置34を制御して他の装置との間で通信を行う。プログラム35は、例えば、オペレーティングシステム、ブラウザ、アプリケーションプログラムなどでもよい。
上記の図2において、番号データ9は、交換機2の記憶装置7と発着信履歴管理装置3の記憶装置16とに記憶されているが、交換機2の記憶装置7と発着信履歴管理装置3の記憶装置16とのいずれか一方に記憶されていればよい。
図3は、第1の実施形態に係るコールイベント36の例を示すデータ構造図である。
コールイベント36は、交換機2において発信イベント、着信イベント、応答イベントなどの各種のイベントが発生した場合に、当該交換機2から発着信履歴管理装置3へ発行される。
コールイベント36は、例えば、発信電話番号36a、着信電話番号36b、イベント種別36c、イベント発生時刻データ36dを含む。なお、イベント発生時刻データ36dは、コールイベント36に含まれていなくてもよい。また、コールイベント36は、発生したイベント固有のコール識別データ(コールID)を含むとしてもよい。
発信電話番号36aは、発信元の電話機の電話番号を示す。着信電話番号36bは、着信先の電話機の電話番号を示す。
イベント種別36cは、例えば、交換機2に発生したイベントが、交換機2が着信したことを示す着信イベントか、交換機2が発信したことを示す発信イベントか、又は、例えば着信電話機などの相手側電話機が応答することで発信電話機と着信電話機とが接続状態となったことを示す応答イベントか、などの種別を示す。
なお、着信イベントは、例えば、外線又は内線の発信電話機から交換機2経由で内線の着信電話機への呼び出しが発生するイベントである。発信イベントは、例えば、内線の発信電話機から交換機2経由で外線又は内線の着信電話機への呼び出しが発生するイベントである。応答イベントは、例えば、交換機2にとって着信であっても発信であっても発信電話機と着信電話機とが接続状態になった場合に発生する。
イベント発生時刻データ36dは、コールイベント36に対応するイベントが発生した時刻を示す。
図4は、第1の実施形態に係る識別データ37、管理データ43、番号データ9、発着信履歴データ171〜17mの関係の例を示すデータ構造図である。この図4において、番号データ9は、識別データ37と当該識別データ37に関連付けられている1以上の登録電話番号(電話番号38、電話番号38a、共有の電話番号38b,38c)のみを代表して示している。発着信履歴データ171〜17mは、発着信履歴データ171,17mのみを代表して示している。
識別データ37は、例えば、ユーザ端末4から発着信履歴管理装置3へ送信されるデータであり、発着信履歴を閲覧したいユーザに対して割り当てられている固有の識別データである。識別データ37は、個人識別可能であれば、例えば、ユーザID、ユーザの使う装置ID、名前、ユーザの使う内線番号などでもよい。
管理データ43は、識別データ37と参照用電話番号37aとを関連付けている、管理データ43は、識別データ37を参照用電話番号37aに変換するために用いられる。なお、識別データ37が電話番号の場合には、この管理データ43を用いた変換処理は省略することができる。
番号データ9は、例えば、同一のユーザに割り当てられている電話番号を関連付けている。
この図4の例においては、上記のように、番号データ9は、例えば、同一のユーザに割り当てられている電話番号38、内線の電話番号38a、共有の電話番号38b、共有の電話番号38cを関連付けている。したがって、発着信履歴管理装置3は、参照用電話番号37aに基づいて番号データ9を検索することで、参照用電話番号37aと一致する電話番号38、さらに電話番号38に関連する内線の電話番号38a、共有の電話番号38b、共有の電話番号38cを、同一ユーザに関する登録電話番号として取得することができる。
発着信履歴データ171〜17mのそれぞれは、例えば、発信電話番号、着信電話番号、履歴の種別を示す種別データ、呼の状態を示す状態データ、時刻データを関連付けている。
発着信履歴データ171〜17mの発信電話番号、着信電話番号、時刻データは、それぞれ、対応するコールイベントの発信電話番号、着信電話番号、イベント発生時刻データに基づいて生成される。
発着信履歴データ171〜17mの種別データは、対応するコールイベントのイベント種別が着信イベントの場合に着信を示し、コールイベントのイベント種別が発信イベントの場合に発信を示す。
発着信履歴データ171〜17mの種別データは、対応するコールイベントのイベント種別が着信イベント又は発信イベントの場合に未応答を示し、対応するコールイベントのイベント種別が応答イベントの場合に未応答から応答へ更新される。
この図4の例において、発着信履歴データ171は、例えば、発信電話番号39a、着信電話番号39b、種別データ39c、状態データ39d、時刻データ39eを含む。
また、発着信履歴データ17mは、例えば、発信電話番号40a、着信電話番号40b、種別データ40c、状態データ40d、時刻データ40eを含む。
発着信履歴管理装置3は、識別データ37から取得された1以上の登録電話番号である電話番号38、内線の電話番号38a、共有の電話番号38b、共有の電話番号39cに基づいて発着信履歴データ171〜17mを検索する。
この図4の例においては、識別データ37から取得された内線の電話番号38aと、発着信履歴データ171の発信電話番号39aとが一致するとする。また、識別データ37から取得された共有の電話番号38cと、発着信履歴データ17mの着信電話番号40bとが一致するとする。
この場合、発着信履歴管理装置3は、識別データ37の示すユーザに対する履歴データとして、取得された内線の電話番号38aと一致する発信電話番号39aを含む発着信履歴データ171と、取得された共有の電話番号38cと一致する着信電話番号40bを含む発着信履歴データ17mとを、ユーザ端末4へ送信する。
図5は、第1の実施形態に係る発着信履歴管理装置3の発着信履歴データ生成処理の例を示すフローチャートである。この図5では、上記図3のコールイベント36の発行に基づいて上記図4の発着信履歴データ171が生成される場合を例として説明する。
ステップS501において、受信部10は、交換機2から発行されたコールイベント36を受信する。
ステップS502において、履歴管理部11は、コールイベント36に含まれているイベント種別36cが、着信イベント又は発信イベントであるか、あるいは、応答イベントであるか判断する。
イベント種別36cが着信イベント又は発信イベントの場合、ステップS503において、履歴管理部11は、コールイベント36に含まれている発信電話番号36a、着信電話番号36b、イベント種別36c、イベント発生時刻データ36dを、それぞれ発着信履歴データ171の発信電話番号39a、着信電話番号39b、種別データ39c、時刻データ39eとする。また、履歴管理部11は、発着信履歴データ171の状態データ39dを未応答とする。この結果、コールイベント36に対応する発着信履歴データ171が生成される。
ステップS504において、履歴管理部11は、生成された発着信履歴データ171を記憶装置16に記憶する。そして、処理は、ステップS507へ移動する。
上記のステップS502においてイベント種別36cが応答イベントであると判断された場合、ステップS505において、履歴管理部11は、例えば、コールイベント36に含まれている発信電話番号36a、着信電話番号36b、イベント発生時刻データ36dに基づいて、コールイベント36に対応する発着信履歴データ171を記憶装置16から抽出する。より具体的には、履歴管理部11は、例えば、複数の発着信履歴データ171〜17mの中から、コールイベント36の発信電話番号36aと着信電話番号36bと一致する発信電話番号39aと着信電話番号39bとを含み、イベント発生時刻データ36dから所定期間内の時刻データ39eを含む発着信履歴データ171を抽出する。
ステップS506において、履歴管理部11は、例えば、コールイベント36に基づいて抽出された発着信履歴データ171の状態データ39dを未応答から応答へ更新し、更新された発着信履歴データ171を記憶装置16に記憶する。そして、処理は、ステップS507へ移動する。
ステップS507において、発着信履歴管理装置3は、発着信履歴データ生成処理を継続するか否か判断する。発着信履歴データ生成処理を継続する場合、処理はステップS501へ戻る。発着信履歴データ生成処理を継続しない場合、処理は終了する。
図6は、第1の実施形態に係る発着信履歴管理装置3の発着信履歴データ取得処理の例を示すフローチャートである。この図6では、識別データ37に対して発着信履歴データ171,17mが取得される場合を例として説明する。
ステップS601において、受信部12は、ユーザ端末4から識別データ37を受信する。
ステップS602において、番号取得部13は、例えば、管理データ43に基づいて識別データ37を参照用電話番号37aに変換するとともに、交換機2の記憶装置7又は記憶装置16に記憶されている番号データ9を取得する。
ステップS603において、番号取得部13は、番号データ9の中から、参照用電話番号37aに関連する1以上の登録電話番号として、電話番号38、電話番号38a、共有の電話番号38b,38cを取得する
ステップS604において、履歴取得部13は、記憶装置16に記憶されている発着信履歴データ171〜17mから、取得された1以上の電話番号38、電話番号38a、共有の電話番号38b,38cを含む発着信履歴データを検索し、例えば、取得された電話番号38aを含む発着信履歴データ171と取得された共有の電話番号38cを含む発着信履歴データ17mとを取得する。なお、発着信履歴データ171〜17mから発着信履歴データを抽出する場合には、さらに、種別データ、状態データ、時刻データなどの条件を加え、条件を満たすデータを抽出してもよい。
ステップS605において、送信部15は、履歴取得部13によって取得された発着信履歴データ171,17mをユーザ端末4へ送信する。なお、発着信履歴データ171,17mを送信する場合には、種別データ、状態データ、時刻データなどに基づき送信を許可するための条件を満たすデータを送信してもよい。
図7は、第1の実施形態に係るユーザ端末4の表示装置32の表示画面41の例を示す図である。
ユーザ端末4の送信部18は、操作装置31に対するユーザの操作にしたがって識別データ37を発着信履歴管理装置3へ送信する。
ユーザ端末4の受信部19は、発着信履歴管理装置3から、識別データ37に対応する発着信履歴データ171,17mと未登録の電話番号に対する登録ボタン42とを含む画面データを受信する。
表示制御部20は、受信された画面データに基づいて、ユーザに関連する発着信履歴を示す画面41を表示装置32に表示させる。画面41は、日時、発信元、着信先、名前、会社名又は部署名などの所属、登録ボタン42を含む。このように、履歴と登録ボタン42とを表示する画面は同じでもよい。
ここで、ユーザは操作装置31を操作し、表示されている登録ボタン42を指定したとする。すると、ユーザ端末4は、発着信履歴管理装置3の登録部24へ登録指示を送信する。発着信履歴管理装置3の登録部24は、登録指示を受信し、登録指示のされた発信電話番号又は着信電話番号を電話番号管理データ22に登録する。
以上説明した通話システム1の特徴を具体的に説明する。
通話システム1において、発着信履歴管理装置3は、交換機2にAPI等に準拠して接続され、コールイベント36を受信できる状態にセットアップされる。交換機2から発着信履歴管理装置3へのデータ転送については、例えば、FTP(File Transfer Protocol)、HTTP(Hypertext Transfer Protocol)、交換機2専用のプロトコルなど様々なプロトコルにしたがって実現可能である。例えば、発着信履歴管理装置3は交換機2に対して常時接続されてもよく、交換機2はイベント発生時に発着信履歴管理装置3との間で接続を確保してもよい。
第1の実施形態において、交換機2は、交換機2配下の各電話機T1〜Tnに対する着信、発信、応答のイベントが発生した場合に、発信、着信、応答(又は接続)に関するコールイベント36の発行と、発信、着信、応答に基づく処理とを並列的に実行する。応答に関するコールイベント36は、着信又は発信に対して相手側の電話機(着信電話機)が応答した場合に発行される。交換機2から発着信履歴管理装置3へ発行されるコールイベント36は、発信電話番号36a、着信電話番号36b、イベント種別36cを含む。イベント種別36cは、例えば、発信イベント、着信イベント、又は、応答イベントのいずれかを示す。なお、イベント種別36cは、他の種別を持つとしてもよい。コールイベント36のイベント種別36cの表記方式及びコールイベント36の通知方式については、交換機2の機種に応じて適宜変更可能である。
発着信履歴管理装置3は、コールイベントより発信電話番号36a、着信電話番号36b、イベント種別36cを取得し、判別し、システム上表現可能な形の発着信履歴データ171を生成し、記憶装置16に記憶する。具体的には、発着信履歴管理装置3は、コールイベントのイベント種別36cが着信イベント又は発信イベントを示す場合に、発着信履歴データ171を生成及び記憶し、コールイベントのイベント種別36cが応答イベントを示す場合に、記憶装置16に記憶済みの発着信履歴データ171の状態データ39dを更新する。
ユーザ端末4は、操作装置31で受け付けたユーザの指示にしたがって、履歴要求コマンド、取得したい種別データの指定、取得したい状態データの指定、識別データ37を発着信履歴管理装置3に送信する。
発着信履歴管理装置3は、ユーザ端末4から、履歴要求コマンド、取得したい種別データの指定、取得したい状態データの指定、識別データ37を受信し、番号データ9から識別データ37に関連する1以上の登録電話番号を取得する。さらに、発着信履歴管理装置3は、取得された1以上の登録電話番号のいずれかを含む発着信履歴データ141,14mを取得し、取得された発着信履歴データ141,14mをユーザ端末4へ送信する。なお、発着信履歴管理装置3は、取得された1以上の登録電話番号から発着信履歴データを取得する際、又は、取得された発着信履歴データをユーザ端末4へ送信する際に、指定された種別データ及び指定された状態データによりスクリーニングを行い、指定された条件を満たす発着信履歴データのみを取得又は送信してもよい。
ユーザ端末4は、発着信履歴管理装置3から発着信履歴データ141,14mを受信し、発着信履歴データ141,14mを表示装置32に表示する。ユーザ端末4に送信される発着信履歴データ141,14m中に、発着信履歴管理装置3で管理されている電話番号管理データ22に含まれていない電話番号がある場合、発着信履歴管理装置3は、ユーザ端末4によって表示される画面41に登録ボタン42が含まれるように画面データを生成する。ユーザがユーザ端末4の操作装置31を操作し、登録ボタン42を指定した場合、ユーザ端末4は、登録指示を発着信履歴管理装置3へ送信し、発着信履歴管理装置3の登録部24は、電話番号管理データ22に含まれていない電話番号を電話番号管理データ22に登録する。
以下で、発信又は着信に関する発着信履歴データ171の生成について説明する。
発着信履歴管理装置3は、交換機2からイベント種別36cが着信イベント又は着信イベントを示すコールイベント36を受信した場合に、発信電話番号39a、着信電話番号39b、発信又は着信を示す種別データ39c、時刻データ39eを含む発着信履歴データ171を記憶装置16へ記憶する。コールイベント36がイベント発生時刻データ36dを含まない場合は、発着信履歴管理装置3の持つシステム時刻を時刻データ39eに設定してもよい。
発信イベント又は着信イベントを示すイベント種別36cを持つコールイベント36は、交換機2において発信イベント又は着信イベントが発生した際に、即座に、発着信履歴管理装置3へ通知される。この時点で相手方の電話機が応答しているとは限らないため、コールイベント36に応じて生成される発着信履歴データ171の状態データ39eは未応答で初期化される。
内線電話から外線への発信の場合、コールイベント36の着信電話番号36bは、0-03-XXXX-YYYYのような形で先頭部分に外線に対する発信であることを示すプレフィックス「0」を含む。このため、発着信履歴管理装置3は、コールイベント36の着信電話番号36bからプレフィックスを削除して発着信履歴データ171の着信電話番号39bを生成してもよい。
これとは逆に、外線から内線電話への着信の場合、コールイベント36の発信電話番号36aは、先頭部分に外線からの着信であることを示すプレフィックス「0」を含む。このため、発着信履歴管理装置3は、コールイベント36の発信電話番号36aからプレフィックスを削除して発着信履歴データ171の発信電話番号39aを生成してもよい。
なお、着信に関するコールイベント36の発信電話番号36aが空情報の場合、発着信履歴データ171は非通知着信として取り扱われ、例えば、発着信履歴データ171の発信電話番号39aも空情報としてもよい。
以下で、応答に関する発着信履歴データ171の更新について説明する。
内線電話から外線又は内線への発信については相手側の電話機が応答した場合、又は、外線又は内線から内線電話への着信については内線の電話機が着信呼に対して応答した場合、発着信履歴管理装置3は、応答イベントを示すイベント種別36cを持つコールイベント36を、交換機2から受信する。
すると、発着信履歴管理装置3は、コールイベント36の発信電話番号36a及び着信電話番号36bに基づいて、記憶装置16の発着信履歴データ171〜17mの中から、コールイベント36に対応する発着信履歴データ171を検索する。具体的には、発着信履歴管理装置3は、コールイベント36の発信電話番号36a及び着信電話番号36bと一致する発信電話番号39a及び着信電話番号39bを持ち、状態データ39dが未応答の発着信履歴データ171を取得する。
そして、発着信履歴管理装置3は、取得された発着信履歴データ171の状態データ39dを応答に更新し、更新された発着信履歴データ171を記憶装置16に記憶する。
なお、発着信履歴データ171の検索の条件には、コール識別データ、直近から所定期間内の時刻データ39eを持つことなどの他の条件を加えてもよい。
これにより、ユーザは、着信呼、発信呼が応答したことが確認可能となる。応答イベントを示すイベント種別36cを持つコールイベント36が発行されなかった場合には、対応する発着信履歴データ171の状態データ39dは未応答で維持される。
以下で、各種のデータ間の関連付けについて説明する。
発着信履歴管理装置3と通信可能に接続されるユーザ端末4は、発着信履歴データを閲覧可能である。ユーザ端末4は、例えば、ユーザの属性、又は、ユーザに割り当てられている内線番号などを示す識別データ37を持つ。ここでは、識別データ37として用いられるユーザの内線番号が2000であると仮定する。この内線番号2000は、ユーザが用いる電話機固有の内線番号であるとする。識別データ37が電話番号ではない場合には、管理データ43を用いて識別データ37が電話番号2000へ変換されてもよい。
番号データ9では、内線番号2000と、第1の共有の電話番号3000と、第2の共有の電話番号3001と、第3の共有の電話番号3002とが関連付けられているとする。
なお、番号データ9において内線番号2000と関連付けられる登録電話番号は、共有の電話番号ではなく、例えば仮想内線などの他の種類の電話番号でもよい。番号データ9において内線番号2000と関連付けられる登録電話番号の数は自由に変更可能であり、特に上限を設ける必要はない。
発着信履歴管理装置3は、番号データ9を交換機2からAPIを用いて取得してもよいし、交換機2から番号データ9を取得できない場合、発着信履歴管理装置3がアクセス可能な記憶装置16から取得してもよい。
発着信履歴管理装置3は、着信に関する履歴を取得する場合、種別データが着信を示し、かつ、着信電話番号が2000、3000、3001、又は、3002を示す発着信履歴データを取得する。
一方、発着信履歴管理装置3は、発信に関する履歴を取得する場合、種別データが発信を示し、発信電話番号が2000、3000、3001、又は、3002を示す発着信履歴データを取得する。
なお、上記の例では、識別データ37として、ユーザの使用する電話機を特定可能な内線番号2000を用いているが、交換機2の種別によっては、識別データ37として電話機端末名を用いてもよい。この場合、内線番号2000と電話機端末名とでユーザ端末4を特定し、当該ユーザ端末4に関連する1以上の登録電話番号を取得してもよい。
以上説明した第1の実施形態に係る通話システム1によって実現される作用効果について説明する。
第1の実施形態においては、電話機ごとに発着信履歴データを記憶する場合と比較して、より多くの発着信履歴データ171〜17mを記憶し、表示することができる。したがって、ユーザは、発着信回数が多くなっても必要な発着信履歴データを確認することができる。
第1の実施形態においては、複数のユーザに割り当てられている共有の電話番号を関する発着信が発生した場合であっても、発着信履歴データ171〜17mを記憶し、必要な発着信履歴データを表示することができる。したがって、共有の電話番号が例えば代表電話番号として利用されている場合に、この代表電話番号に関する発着信履歴データをユーザは確認することができ、通話システム1におけるユーザの利便性を向上させることができる。
第1の実施形態においては、例えば内線番号などのような識別データ37から、1又は複数の登録電話番号に関する発着信履歴データを表示することができる。このため、ユーザは、ユーザに割り当てられた内線番号に対応する電話機を直接操作しなくても、ネットワーク経由で自分が使用する1又は複数の電話機の全てに関連する発着信履歴データを閲覧可能である。したがって、ユーザは、例えば、外出先からでも発着信履歴管理装置3経由で発着信履歴データを閲覧でき、例えばビジネスなどで通話システム1を利用するユーザの利便性を向上させることができる。
第1の実施形態においては、指定された種類、指定された状態、直近から指定された期間内又は所定の期間内の発着信履歴データを表示させることができる。
第1の実施形態において、発着信履歴管理装置3は、ユーザに関連する発着信履歴データ171,17mを検索する。検索された発着信履歴データ171,17mは、発信電話番号又は着信電話番号として相手方の電話番号を含む。発着信履歴管理装置3は、この相手方の電話番号により電話帳機能で利用される電話番号管理データ22を検索し、相手側の名前を抽出し、ユーザ端末4へ通知することができる。また、発着信履歴管理装置3は、ユーザ端末4に送った相手方の電話番号が、電話番号管理データ22に含まれていない場合に、ユーザからの登録指示に基づいて、相手方の電話番号と名前等の情報を電話番号管理データ22に登録することができる。
(第2の実施形態)
第2の実施形態においては、複数の交換機によって発着信履歴管理装置が共有される場合について説明する。
図8は、第2の実施形態に係る通話システム1Aの構成の例を示すブロック図である。
この通話システム1Aは、複数の交換機2A〜2Xを備える。
複数の交換機2A〜2Xのそれぞれは、発着信が発生した場合にコールイベントを、発着信履歴管理装置3へ発行する。
発着信履歴管理装置3は、上記第1の実施形態で説明したように、受信されたコールイベントに応じて発着信履歴データ171〜17mを生成し、記憶装置16へ記憶する。
ユーザ端末4を操作するユーザは、自身が複数の交換機2A〜2Xを利用する環境下であっても、また、様々な電話機で様々な電話番号を用いる場合であっても、自分に関連する充分な量の発着信履歴データを確認することができ、ユーザの利便性を向上させることができる。
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具現化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削減してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。