(58)【調査した分野】(Int.Cl.,DB名)
複数の端末それぞれに対して割り当てた所定の順番に従って前記複数の端末それぞれに対して所定の指示を出すイベントである第1のイベントと、着信先の端末を特定した通話の開始を試みている端末又は通話中の端末に対して所定の指示を出すイベントである第2のイベントとの双方のイベントが未処理である場合に、前記第2のイベントに関連する複数の端末それぞれについてのイベント全ての処理を実行した後に、他の端末についてのイベントの処理を実行することを特徴とする反応速度向上装置。
前記第2のイベントに関連する複数の端末とは、着信先の端末を特定した通話の開始を試みている端末と該開始を試みている通話の着信先として特定された端末の双方であるか、あるいは通話中の複数の端末であることを特徴とする請求項1に記載の反応速度向上装置。
前記他の端末についてのイベントの処理を実行している途中で、前記第2のイベントが新たに発生した場合には、前記他の端末についてのイベントの処理を中断して、前記新たに発生した第2のイベントに関連する複数の端末それぞれについてのイベントの処理を実行することを特徴とする請求項1又は2に記載の反応速度向上装置。
前記他の端末についてのイベントの処理を複数の他の端末の内の1つの端末について実行する度に、前記第2のイベントが新たに発生していないか否かを確認することを特徴とする請求項1乃至3の何れか1項に記載の反応速度向上装置。
前記第2のイベントに関連する複数の端末それぞれについての前記第2のイベントを処理する場合に、前記第2のイベントに関連する複数の端末それぞれについての第1のイベントの処理も併せて実行することを特徴とする請求項1乃至4の何れか1項に記載の反応速度向上装置。
前記複数の端末は電話交換機に接続された電話機であり、前記第1のイベント及び前記第2のイベントにおける前記所定の指示は、前記電話交換機から送信される、前記電話機である端末を制御するための制御メッセージにより示されることを特徴とする請求項1乃至5の何れか1項に記載の反応速度向上装置。
複数の端末それぞれに対して割り当てた所定の順番に従って前記複数の端末それぞれに対して所定の指示を出すイベントである第1のイベントと、着信先の端末を特定した通話の開始を試みている端末及び通話中の端末に対して所定の指示を出すイベントである第2のイベントとの双方のイベントが未処理である場合に、前記第2のイベントに関連する複数の端末それぞれについてのイベント全ての処理を実行した後に、他の端末についてのイベントの処理を実行する反応速度向上装置としてコンピュータを機能させることを特徴とする反応速度向上プログラム。
【発明を実施するための形態】
【0018】
まず、本発明の実施形態の概略を説明する。本発明の実施形態は、概略、複数の多機能電話機を収容する電話交換機システムにおいて、即時表示や即時通知等が求められる多機能電話機の反応速度を向上する、というものである。
【0019】
次に、本発明の実施形態の構成について図面を参照して詳細に説明する。
【0020】
図1を参照すると、本発明の実施形態は、電話交換機システム10と、500台の多機能電話機である多機能電話機20−1乃至20−500を含む。なお、多機能電話機の「−」以降の末尾の数字は、その多機能電話機20のポート番号に対応する。例えば、多機能電話機20−1のポート番号は、「ポート1」であり、多機能電話機20−500のポート番号は、「ポート500」である。
【0021】
また、電話交換機システム10と多機能電話機20−1乃至20−500及び通信網40は、LAN(Local Area Network)ケーブル30を介して接続されている。ここで、通信網40は、公衆網により実現される、いわゆる外線である。そして、多機能電話機20−1乃至20−500は、電話交換機システム10による制御に基づいて、通信網40に接続されている外線の電話機(図示を省略する)と通信を行なうことができる。
【0022】
電話交換機システム10は、ハードウェアとソフトウェアが協働して動作する電話交換機である。電話交換機システム10は各多機能電話機との通信機能のほか、通信網40との通信機能も有し、外線着信等の通知の受信や応答などの通知を送信する機能を有する。そして、多機能電話機20−1乃至20−500は、電話交換機システム10による制御に基づいて、相互に通信を行なう。また、多機能電話機20−1乃至20−500は、電話交換機システム10による制御に基づいて、通信網40に接続されている外線の電話機(図示を省略する)と通信を行なう。電話交換機システム10の詳細な構成については
図2を参照して後述する。
【0023】
また、
図1には、多機能電話機20−1乃至20−500のうち、システム内部で1番目のポート、すなわちポート番号1として収容及び管理されている多機能電話機20−1と、500番目のポート、すなわちポート番号500として収容及び管理されている多機能電話機20−500を図示する。一方で、2番目のポート、すなわちポート番号2として管理されている多機能電話機20−2乃至ポート499番目のポート、すなわちポート番号499として管理されている多機能電話機20−499は図示を省略する。今回の説明では、多機能電話機20が計500台であると想定して説明を行うが、この台数はあくまで例示であり本実施形態の適用可能な多機能電話機20の台数を限定するものではない。
【0024】
各多機能電話機20はユーザによるボタン操作等を受け付けて、受け付けた操作内容を電話交換機システム10に送信する機能を有する。また、各多機能電話機20は電話交換機システム10からのランプの点滅指示や、着信中である旨等の情報の表示部への表示指示等を制御メッセージとして受信する機能を有する。そして、これらの制御メッセージを受信した各多機能電話機20は、制御メッセージの内容に応じてランプを点滅させたり、着信中である旨等の情報を自身に含まれる表示部に表示させたりする。
【0025】
次に、
図2を参照して電話交換機システム10内に含まれる各制御モジュールについて説明をする。
【0026】
図2を参照すると電話交換機システム10は、LANインターフェースモジュール11(図中では、「LAN I/Fモジュール11」と表記する。)、上りイベント解析モジュール12、呼制御モジュール13、下りイベント解析モジュール14及び通話端末管理配列記憶部15を含む。
【0027】
LANインターフェースモジュール11はLANケーブル30を介して多機能電話機20−1乃至20−500あるいは通信網40から送られてきたメッセージを受信したり、多機能電話機20−1乃至20−500あるいは通信網40へのメッセージを、LANケーブル30を介して送出したりする機能を有する。なお、LANインターフェースモジュール11は、本発明の受信手段及び送信手段に相当する。
【0028】
上りイベント解析モジュール12は、多機能電話機20−1乃至20−500あるいは通信網40から送られてきたメッセージをLANインターフェースモジュール11から受信する。そして、上りイベント解析モジュール12は、受信したメッセージを解析し、解析結果であるメッセージの内容を呼制御モジュール13に送信する。
【0029】
呼制御モジュール13は上りイベント解析モジュール12から送られてきたメッセージの内容を受信する。
【0030】
そして、呼制御モジュール13は、受信したメッセージの内容と、呼制御モジュール13内で管理している多機能電話機20−1乃至20−500の状態とに基づいて制御メッセージを生成する。また、呼制御モジュール13は、生成した制御メッセージを下りイベント解析モジュール14に送信する。ここで、制御メッセージの具体例としては「多機能電話機20−1乃至20−500に対して、赤色でランプを点灯する旨を通知する」や「何れかの多機能電話機20に対して、内線着信中である旨を表示部に表示する旨を通知する」等が挙げられる。更に、呼制御モジュール13は、各多機能電話機20の状態を判断し、通話端末管理配列記憶部15に対して書き換えを行う機能を有する。
【0031】
以下の説明においては、送話及び受話可能に回線が確立された状態を「通話状態」と呼ぶ。また、回線を確立する前段階である、発信元の電話機から着信先の電話機に対しての発呼が開始されてから着信先の電話機が応答をしたことにより送話及び受話可能に回線が確立されるまでの状態を「通話試行状態」と呼ぶ。
【0032】
ただし、「通話試行状態」に含まれるのは、着信先となる多機能電話機20が特定されている場合であり、着信先となる多機能電話機20が特定されていない場合には発信元の電話機からの発呼が開始されたとしても「通話試行状態」にあるとは扱わない。例えば、多機能電話機20間で内線による通話を行なう場合の発呼は、着信先となる多機能電話機20を特定したものである。従って、このような発呼が開始されると「通話試行状態」にあるとして扱う。また、他の多機能電話機20に対して外線を転送する場合にも、着信先となる多機能電話機20は特定される。従ってこのような場合には、転送が開始されると「通話試行状態」にあると扱う。一方で、例えば、外線の電話機からの発呼があった場合には、着信先となる多機能電話機20は特定されておらず、全ての多機能電話機20が着信先となる。従ってこのような発呼が開始されたとしても「通話試行状態」にあるとは扱わない。
【0033】
そして、呼制御モジュール13は、通話試行状態にある多機能電話機20と、通話状態にある多機能電話機20のポート番号を通話端末処理列に加える。
【0034】
一方で、呼制御モジュール13は、通話試行状態にも通話状態にもない多機能電話機20のポート番号を通常処理列に加える。
【0035】
ここで、各多機能電話機20が何れの状態にあるのかは、電話交換機システム10が受信したメッセージの内容を確認することにより判断することができる。
【0036】
例えば、発信元のユーザが多機能電話機20の受話器を持ち、オフフックとした後に、ボタン押下により着信先に対応する内線番号を入力すると、着信先となる多機能電話機20を特定した通話を開始するためのメッセージが発信元の多機能電話機20から電話交換機システム10へ送信される。電話交換機システム10は、このメッセージを受信すると、送信元の多機能電話機20と着信先の多機能電話機20が通話試行状態に移行したと判断できる。そして、呼制御モジュール13は、送信元の多機能電話機20のポート番号と着信先の多機能電話機20のポート番号を通話端末処理列に加える。
【0037】
また、着信先の多機能電話機20では着信があったことから着信音が鳴動している。これを聞いたユーザが受話器を持ち、オフフックとすると、着信先の多機能電話機20からの通話を開始するためのメッセージが電話交換機システム10へ送信される。電話交換機システム10は、このメッセージを受信すると、送信元の多機能電話機20と着信先の多機能電話機20が通話状態に移行したと判断できる。そして、呼制御モジュール13は、送信元の多機能電話機20のポート番号と着信先の多機能電話機20のポート番号を通話端末処理列に加える。
【0038】
更に、通話状態にある多機能電話機20の何れかの受話器が置かれオンフックとなると、通話状態にある多機能電話機20から通話を終了するためのメッセージが電話交換機システム10へ送信される。電話交換機システム10は、このメッセージを受信すると、送信元の多機能電話機20と着信先の多機能電話機20の通話状態が終了したと判断できる。そして、呼制御モジュール13は、この通話状態が終了した、送信元であった多機能電話機20のポート番号と着信先であった多機能電話機20のポート番号を通話端末処理列から通話端末処理列に移動させる。
【0039】
下りイベント解析モジュール14は、呼制御モジュール13から送信された制御メッセージが有るか否かを所定の周期で監視する。そして、下りイベント解析モジュール14は、送信するべき制御メッセージが存在する場合は、その制御メッセージに基づいた処理をするというイベントを処理する。具体的には、その制御メッセージを、多機能電話機20−1乃至20−500に送信するフォーマットに準拠するように加工する。そして、イベント解析モジュール14は、LANインターフェースモジュール11を介して、多機能電話機20−1乃至20−500に対して、加工した制御メッセージを送信する。
【0040】
ここで、下りイベント解析モジュール14によるイベントの処理は、通話試行実行状態にある多機能電話機20について優先して行われる。そのため、下りイベント解析モジュール14は、イベントを処理する場合に、まず通話端末管理配列記憶部15の読み込みを行う。
【0041】
ここで、
図3を参照して、下りイベント解析モジュール14による通話端末管理配列記憶部15の読み込みについて説明する。
【0042】
図3の上側には、通話端末管理配列記憶部15の通話端末処理列に多機能電話機20のポート番号が加わっていない場合について記載されている。すなわち、何れの多機能電話機20も通話状態及び通話試行状態(以下、通話状態又は通話試行状態をまとめて「通話試行実行状態」と呼ぶ)に無い場合について記載されている。
【0043】
この場合には、
図3の上側に表わされるように通常処理列のみが存在し、通話端末処理列には何れのポートも含まれていない(そのため、
図3の上側では話端末処理列の図示を省略する)。この場合、下りイベント解析モジュール14は、イベントを処理する際に常に通常処理列を読み込む。そのため、通常処理列に含まれるポート番号の内の、番号が若いポート1の多機能電話機20−1からポート500の多機能電話機20−500に昇順に処理を進める。
【0044】
次に、
図3の下側には、ポート500の多機能電話機からポート499の多機能電話機20への発信操作、すなわち、着信先となる多機能電話機20を特定したINVITメッセージの送信操作を受け付けたことにより、通話端末管理配列記憶部15の通話端末処理列に多機能電話機20のポート番号としてポート499及びポート500が加わっている場合について記載されている。つまり、通話試行実行状態の多機能電話機20が存在する場合について記載されている。
【0045】
この場合には、通話試行実行状態の多機能電話機20のポート番号であるポート499及びポート500が通話端末処理列に加えられる。そして、ポート499及びポート500に対応する多機能電話機20−499及び多機能電話機20−500が優先制御の対象となる。そのため、下りイベント解析モジュール14は、1つの多機能電話機20についてのイベントの処理が終了する度に、通常処理列よりも通話端末処理列を常に優先して参照し、処理対象となる多機能電話機20を選択してイベント処理の対象としていく。
【0046】
この下りイベント解析モジュール14によるイベント処理時の動作について
図4のフローチャートを参照して説明する。
【0047】
まず、下りイベント解析モジュール14は、通話端末管理配列記憶部15を参照し、通話端末処理列にポート番号が含まれているかを確認する(ステップS51)。ここで、通話端末処理列にポート番号が含まれている場合(ステップS51においてYes)には、通話端末処理列に含まれているポート番号に対応する多機能電話機20について未処理のイベントが有るか否かを確認する(ステップS52)。未処理のイベントが存在する場合(ステップS52においてYes)には、かかる未処理のイベントを処理する(ステップS53)。ここで、通話端末処理列にポート番号が複数存在し、この複数のポート番号に対応する多機能電話機20それぞれについて未処理のイベントが存在する場合には、一番若いポート番号に対応する多機能電話機20についての未処理のイベントを処理する。例えば、通話端末処理列にポート499とポート500が存在しており、両ポートに対応する多機能電話機20それぞれについて未処理のイベントが存在する場合には、ポート499に対応する多機能電話機20−499についての未処理のイベントを処理する。
【0048】
次に、下りイベント解析モジュール14は、ステップS53にて処理したイベントを、下りイベント解析モジュール14から削除する。
【0049】
そして、再度ステップS51に戻り、通話端末管理配列記憶部15を参照し、通話端末処理列にポート番号が含まれているかを確認する(ステップS51)。仮に、通話端末処理列にポート番号が含まれており、このポート番号に対応する多機能電話機20について未処理のイベントが存在するのであれば、通話端末処理列に含まれている全てのポート番号に対応する多機能電話機20についての、全ての未処理のイベントが処理されるまで処理が繰り返される(ステップS51においてYes、ステップS52においてYes、ステップS53及びステップS54)。例えば、内線通話を行っている多機能電話機20が二組存在する場合には、4台の多機能電話機20が通話試行実行状態となっているので、これら4台についてのイベントが処理されるまで処理が繰り返される(ステップS51においてYes、ステップS52においてYes、ステップS53及びステップS54)。
【0050】
一方で、通話端末処理列にポート番号が含まれていない場合(ステップS51においてNo)や、通話端末処理列にポート番号が含まれてはいるが、このポート番号に対応する多機能電話機20について未処理のイベントが存在しない場合(ステップS51においてYes及びステップS52においてNo)には、ステップS55に進む。
【0051】
そして、ステップS55では、下りイベント解析モジュール14は、通話端末管理配列記憶部15を参照し、通常処理列にポート番号が含まれているかを確認する(ステップS55)。ここで、通常処理列にポート番号が含まれている場合(ステップS55においてYes)には、通常処理列に含まれているポート番号に対応する多機能電話機20について未処理のイベントが有るか否かを確認する(ステップS56)。未処理のイベントが存在する場合(ステップS56においてYes)には、かかる未処理のイベントを処理する(ステップS57)。ここで、通常処理列にポート番号が複数存在し、この複数のポート番号に対応する多機能電話機20それぞれについて未処理のイベントが存在する場合には、一番若いポート番号に対応する多機能電話機20についての未処理のイベントを処理する。例えば、通常処理列にポート1乃至ポート497が存在しており、各ポートに対応する多機能電話機20それぞれについて未処理のイベントが存在する場合には、ポート1に対応する多機能電話機20−1についての未処理のイベントを処理する。
【0052】
次に、下りイベント解析モジュール14は、ステップS57にて処理したイベントを、下りイベント解析モジュール14から削除する。
【0053】
そして、再度ステップS51に戻り、通話端末管理配列記憶部15を参照し、通常処理列にポート番号が含まれているかを確認する(ステップS51)。
【0054】
ここで、仮にステップS55乃至ステップS58の処理を実行中に新たに通話試行実行状態となった多機能電話機20が存在するような場合には通話端末処理列に、この新たに通話試行実行状態となった多機能電話機20のポート番号が含まれる。この場合には、この新たにポート番号が含まれた多機能電話機20についての未処理のイベントを処理する(ステップS51においてYes、ステップS52においてYes、ステップS53及びステップS54)。
【0055】
また、ステップS55乃至ステップS58の処理を実行中に、通話端末処理列に含まれるポート番号に対応する多機能電話機20について、新たなイベントが発生するような場合も考えられる。例えば、通話試行実行状態にあった端末が通話を終了する場合には、通話を終了するためのイベントが新たに発生する。この場合にも、この多機能電話機20についての新たに発生した未処理のイベントを処理する(ステップS51においてYes、ステップS52においてYes、ステップS53及びステップS54)。
【0056】
一方で、ステップS57にて処理後も、通話端末処理列にポート番号が含まれていない場合(ステップS51においてNo)や、通話端末処理列にポート番号が含まれてはいるが、このポート番号に対応する多機能電話機20について未処理のイベントが存在しない場合(ステップS51においてYes及びステップS52においてNo)には、再度ステップS55に進んで処理を繰り返す。
【0057】
そして、通常処理列にポート番号が含まれていない場合(ステップS55においてNo)や、通常処理列にポート番号が含まれてはいるが、このポート番号に対応する多機能電話機20について未処理のイベントが存在しない場合(ステップS55においてYes及びステップS56においてNo)には、ステップS55に進んで処理を繰り返す。
【0058】
下りイベント解析モジュール14が、このように動作することにより、通話試行実行状態となった多機能電話機20についてのイベントが常に優先的に処理されることとなり、優先制御の対象となった多機能電話機20−1の反応速度を向上することが可能となる、という効果を奏する。
【0059】
通話端末管理配列記憶部15は、或る多機能電話機20が通話試行実行状態であり優先制御の対象となっているか否かを多機能電話機20毎に表す配列を記憶する部分である。上述したように、通話端末管理配列記憶部15には「通常処理列」と「通話端末処理列」の2つの配列を含ませる。そして、通話試行実行状態に無い多機能電話機20のポート番号は通常処理列に加える。例えば、何れの多機能電話機20も通話試行実行状態にないのであれば、全ての多機能電話機20のポート番号が通常処理列に加えられる。
【0060】
一方で、通話試行実行状態にある多機能電話機20のポート番号は、通話端末処理列に加え、通話試行実行状態にある間は、通常処理列からは削除される。そして、通話が終了し、アイドル状態に戻った場合には、通話試行実行状態からアイドル状態に戻った多機能電話機20のポート番号は、通話端末処理から削除され、通常処理列に加えられる。つまり、通話試行実行状態にある多機能電話機20のポート番号を、通話試行実行状態にある間は、通話端末処理列から通常処理列に移動する。
【0061】
以上、電話交換機システム10に含まれる各モジュールについて説明した。これらモジュールは本実施形態の動作に特に関連するモジュールであるが、電話交換機システム10には、これ以外にも一般的な電話交換システムの機能を実現するための他のモジュールも含まれる。しかし、これら他のモジュールは当業者にとってよく知られているので、ここでは説明を省略する。
【0062】
次に、
図5−1、
図5−2及び
図5−3のシーケンス図を参照して本発明の実施形態の動作について詳細に説明する。
【0063】
以下では、電話交換機システム10に、通信網40を介して外部の電話機より外線着信があったとほぼ同時に、多機能電話機20−500から多機能電話機20−499へ内線発信操作を行なった場合を例として説明する。
【0064】
まず、電話交換機システム10はLANインターフェースモジュール11にて外線着信メッセージを受信する。そして、かかる受信した外線着信メッセージを上りイベント解析モジュール12に通知する(
図5−1、ステップS101)。
【0065】
これとほぼ同時に、ユーザAが、多機能電話機20−500から多機能電話機20−499の内線番号をダイヤルし発信ボタンを押す。なお、本説明では、説明の便宜上外線着信があった後に内線発信操作があったものとしているが、内線発信操作があった後に、外線着信があっても良い。
【0066】
何れにしても、多機能電話機20−500は、この多機能電話機20−499の内線番号のダイヤル及び発信ボタンの押下を受け付ける。その後、この内線番号ダイヤル及び発信ボタンを押したというメッセージは、LANケーブル30を通じて電話交換機システム10に通知される(
図5−1、ステップS102)。
【0067】
上りイベント解析モジュール12は、LANインターフェースモジュール11から通知された外線着信メッセージを解析する。そして、かかるメッセージの解析結果である「外線着信が発生した。」というメッセージを呼制御モジュール13に通知する(
図5−1、ステップS103)。
【0068】
続いて電話交換機システム10は、LANインターフェースモジュール11にて多機能電話機20−500からの、多機能電話機20−499の内線番号のダイヤル及び発信ボタン押下を、多機能電話機20−500が受け付けた旨のメッセージを受信する。そして、かかる受信したメッセージを上りイベント解析モジュール12に通知する(
図5−1、ステップS104)。
【0069】
「外線着信が発生した。」というメッセージを受信した呼制御モジュール13は、接続されている500台全ての多機能電話機20である、多機能電話機20−1(ポート1)乃至多機能電話機20−500(ポート500)に対して外線着信があることを通知する。具体的には、「外線ボタンを赤点滅させる。」メッセージを、下りイベント解析モジュール14に対して全ての多機能電話機の数の分だけ通知する(
図5−1、ステップS105)。
【0070】
上りイベント解析モジュール12は、ステップS104にて通知されたメッセージの解析を行なう。そして、上りイベント解析モジュール12は、解析結果である「多機能電話機20−499の内線番号のダイヤル及び発信ボタン押下を、多機能電話機20−500が受け付けた。」というメッセージを呼制御モジュール13に通知する(
図5−1、ステップS106)。
【0071】
「多機能電話機20−499の内線番号のダイヤル及び発信ボタン押下を、多機能電話機20−500が受け付けた。」というメッセージを受信した呼制御モジュール13は、内線発信であること、その発信元及び発信先となる多機能電話機のポートを解析する。そして、解析した発信元及び発信先となる多機能電話機のポートである、発信先ポート499及び発信元ポート500について通話端末管理配列記憶部15を書き換える(
図5−1、ステップS107、S108)。具体的には、ポート499及びポート500を通話端末管理配列記憶部15の通常処理列から削除する一方で、これらポート499及びポート500を通話端末管理配列記憶部15の通話端末処理列に加える。なお、通話端末管理配列記憶部15の書き換えたポート番号を通話端末処理列から削除して通常処理列に加えることによって、通話端末管理配列記憶部15を書き換え前の元の状態に戻すのは呼制御モジュール13が特定のメッセージにより通話試行実行状態の終了を判断したタイミングとなる。
【0072】
さらに呼制御モジュール13は、発信元多機能電話機20−500に対して内線発信中であることを通知するために、「発信元多機能電話機20−500に内線発信中の表示をさせる。」メッセージを下りイベント解析モジュール14に対して出力する(
図5−1、ステップS109)。
【0073】
また呼制御モジュール13は、発信先多機能電話機20−499に対して内線着信中であることを通知するために、「発信先多機能電話機20−499に内線着信中の表示をさせる。」メッセージを下りイベント解析モジュール14に対して出力する(
図5−1、ステップS110)。
【0074】
他方で、下りイベント解析モジュール14は、呼制御モジュール13からメッセージを受信していないかを定周期で監視する。また、メッセージを受信していた場合には、このメッセージを解析して、どのようなイベントを表すメッセージであるかを確認する。この時点で受信しているメッセージを解析すると、未処理のイベントは、上述のステップS105にて通知された「多機能電話機20−1乃至多機能電話機20−500の外線着信ボタンを赤点滅させる。」イベントと、上述のステップS109にて通知された「多機能電話機20−500に内線発信中の旨を表示させる。」イベントと、上述のステップS110にて通知された「多機能電話機20−499に内線着信中の旨を表示させる。」イベントである。そして、下りイベント解析モジュール14は、これらのイベントが未処理であることを認識する。次に、下りイベント解析モジュール14は、まず通話端末管理配列記憶部15に記憶されている通話端末管理配列を参照し、優先して処理すべきポートである、通話端末処理列に含まれるポートが有るか否かを確認する(
図5−2、ステップS111)。
【0075】
確認後、優先処理すべきポートである、通話端末処理列に含まれるポートが存在した場合、まず、優先制御すべきポートに対してイベント処理を開始する。
【0076】
また、本説明では、上述したステップS108において、ポート499及びポート500が通話端末処理列に加えられている。つまり、ポート499及びポート500が優先制御の対象となっている。一方で、ポート1乃至ポート498は通常処理列に加えられている。つまり、ポート1乃至ポート498は優先制御の対象となっていない。そこで、下りイベント解析モジュール14は、まず、ポート499及びポート500の内で番号の若い、ポート499に対応する多機能電話機20−499に対して、ステップS105にて通知されたイベント及びステップS110にて通知されたイベントに基づいて、外線着信ボタンを赤点滅させ、且つ、内線着信がある旨を表示させるメッセージを作成する。作成したメッセージは、LANインターフェースモジュール11に送信する(
図5−2、ステップS112)。ここで、ステップS112における下りイベント解析モジュール14の動作を
図4のフローチャートに照らして説明する。ステップS112の時点では通話処理列にポート499及びポート500が含まれることからステップS51においてYesとなる。また、上述したようにポート499及びポート500について未処理のイベントが存在することからステップS52においてYesとなる。そして、ポート499についての未処理のイベントを処理する(ステップS53)。更に、処理済みのイベントとなったポート499についてのイベントを削除する(ステップS54)。
【0077】
LANインターフェースモジュール11は、ステップS112において送信されたメッセージを受信し、多機能電話機20−499に、そのメッセージを転送する(
図5−2、ステップS113)。
【0078】
多機能電話機220−499は、ステップS113にて転送されたメッセージに基づいて外線着信ボタンを赤点滅させ、且つ、内線着信がある旨を表示させる(
図5−2、ステップS114)。
【0079】
この時点で未処理のイベントは、上述のステップS105にて通知された「多機能電話機20−1乃至多機能電話機20−500の外線着信ボタンを赤点滅させる。」イベントと、上述のステップS109にて通知された「多機能電話機20−500に内線発信中の旨を表示させる。」イベントである。そして、下りイベント解析モジュール14は、処理すべきこれらのイベントがまだあることを認識しているので、再度、通話端末管理配列記憶部15に記憶されている通話端末管理配列を参照し、優先して処理すべきポートである、通話端末処理列に含まれるポートが有るか否かを確認する(
図5−2、ステップS115)。
【0080】
今回は、上述したステップS108において、ポート499及びポート500が通話端末処理列に加えられている。つまり、ポート499及びポート500が優先制御の対象となっている。一方で、ポート1乃至ポート498は通常処理列に加えられている。つまり、ポート1乃至ポート498は優先制御の対象となっていない。そこで、下りイベント解析モジュール14は、ポート500に対応する多機能電話機20−500に対して外線着信ボタンを赤点滅させ、且つ、内線発信している旨を表示させるメッセージを作成し、LANインターフェースモジュール11に送信する(
図5−2、ステップS116)。ここで、ステップS116における下りイベント解析モジュール14の動作を
図4のフローチャートに照らして説明する。ステップS116の時点では通話処理列にポート499及びポート500が含まれることからステップS51においてYesとなる。また、上述したようにポート500について未処理のイベントが存在することからステップS52においてYesとなる。そして、ポート500についての未処理のイベントを処理する(ステップS53)。更に、処理済みのイベントとなったポート500についてのイベントを削除する(ステップS54)。
【0081】
LANインターフェースモジュール11は、ステップS116におけるメッセージを受信し、多機能電話機20−500に、そのメッセージを転送する(
図5−2、ステップS117)。
【0082】
多機能電話機220−500は、ステップS117にて転送されたメッセージに基づいて外線着信ボタンを赤点滅させ、且つ、内線発信している旨を表示させる(
図5−2、ステップS118)。
【0083】
下りイベント解析モジュール14は、処理すべきイベントがまだあると認識し、再度通話端末管理配列記憶部15に記憶されている通話端末管理配列を参照し、優先して処理すべきポートである、通話端末処理列に含まれるポートが有るか否かを確認する(
図5−2、ステップS119)。
【0084】
今回は、上述したステップS108において、ポート499及びポート500が通話端末処理列に加えられている。つまり、ポート499及びポート500が優先制御の対象となっている。一方で、ポート1乃至ポート498は通常処理列に加えられている。つまり、ポート1乃至ポート498は優先制御の対象となっていない。そして、ポート499についてのイベントの処理は、ステップS112で処理済みである。また、ポート500についてのイベントの処理は、ステップS116で処理済みである。
【0085】
従って、優先して処理すべきポートに対しては処理するイベントは既に無い。そのため、次は通常処理する対象である、通常処理列に含まれる各ポートについてのイベントを処理する。ここで、未処理のイベントは、上述のステップS105にて通知された「多機能電話機20−1乃至多機能電話機20−500の外線着信ボタンを赤点滅させる。」イベントである。また、現在通常処理列に含まれるポートはポート1乃至ポート499である。そこで、これらポートで一番若いポート1(に対応する多機能電話機20−1)についてのイベントを処理後に、ポート2(に対応する多機能電話機20−2)からポート499(に対応する多機能電話機20−498)を対象としてイベントの処理を行なう。
【0086】
具体的には、通常処理列に含まれる各ポートについて外線ボタンを赤点滅させるメッセージを作成する。作成したメッセージは、LANインターフェースモジュール11を介して各ポートそれぞれ対応する多機能電話機20に対して送信する。このメッセージの作成及び送信の処理を、通常処理列に含まれる全てのポートについて行うまで、処理を繰り返す(
図5−2、ステップS120、ステップS121)。ここで、ステップS120における下りイベント解析モジュール14の動作を
図4のフローチャートに照らして説明する。ステップS121の時点では通話処理列にポート499及びポート500が含まれることからステップS51においてYesとなる。また、上述したようにポート499及びポート500について未処理のイベントは存在しないことからステップS52においてNoとなる。そして、ポート1乃至ポート498が通常処理列に含まれることからステップS55においてYesとなる。また、上述したようにポート1乃至ポート498について未処理のイベントが存在することからステップS56においてYesとなる。そして、ポート1乃至ポート498についての未処理のイベントを処理する(ステップS53)。更に、処理済みのイベントとなったポートについてのイベントを削除する(ステップS54)。これを、ポート1乃至ポート498についての未処理のイベントがなくなり、ステップS56においてNoとなるまで繰り返す。
【0087】
そして、メッセージを受信した各多機能電話機は、ステップS121にて転送されたメッセージに基づいて外線着信ボタンを赤点滅させる(
図5−2、ステップS122及びステップS123)。
【0088】
また、下りイベント解析モジュール14において、通常処理列に含まれるポートに対してのメッセージの作成及び送信の処理が完了後に、毎回、通話端末管理配列記憶部15の通話端末処理列を参照して優先制御すべきポートが存在するか否かを確認する(ステップS119)。
【0089】
仮に優先制御すべきポートが存在し、且つ、この優先制御すべきポートに対して処理すべきイベントが存在する場合には、この優先制御すべきポートに対してメッセージを作成し、LANインターフェースモジュール11を介して、この優先制御すべきポートに対応する多機能電話機20に対して送信する。
【0090】
つまり、通常処理列に含まれる或るポートに対する処理を行っている最中に、新たに通話を開始した多機能電話機20が存在することから通話端末管理配列が書き換えられた、もしくは優先して処理すべきポートに対して処理するメッセージが新たに発生した場合は、処理中の或るポートに対する処理が完了後に、他の通常処理すべきポートに対するイベントの処理に先駆けて、優先制御すべきポートに対するイベントの処理が行なわれる。
【0091】
優先制御すべきポートが無くなった場合又はこの優先制御すべきポートに関する未処理のイベントが無くなった場合は、また通常処理の対象とするポートの続きから処理を再開する。
【0092】
具体例を挙げて説明する。ステップS120及びステップS121の繰り返しの過程で多機能電話機20−100に対してのイベントの処理を行っている途中で、例えば、多機能電話機20−299と多機能電話機20−300間での通話が開始されたとする。この場合、多機能電話機20−299と多機能電話機20−300に対応するポート299とポート300は通話端末管理配列記憶部15の通話端末処理列に追加される。
【0093】
そして、多機能電話機20−100に対してのイベント処理が終了すると、次に、多機能電話機20−101に対してのイベント処理を行なうのではなく、通話端末処理列に含まれるポート299とポート300に対応する多機能電話機20−299と多機能電話機20−300に対してのイベント処理を優先して行なう。そして、多機能電話機20−299と多機能電話機20−300に対してのイベント処理が終了後、通常処理列の続きである多機能電話機20−101以降の他の多機能電話機20に対してのイベント処理に戻り、処理を継続する。
【0094】
また、同時間帯に更に他の多機能電話機(20−1乃至20−498の何れか)も通話試行実行状態となり通話端末処理列に書き込まれていれば、これら他の通話試行実行状態の多機能電話機20も優先制御の対象としてイベント処理を優先して行なう。そして、これら他の通話試行実行状態の多機能電話機20に対してのイベント処理が終了後、多機能電話機20−101以降の他の多機能電話機20に対してのイベント処理が実行される。
【0095】
このようにして、上記動作処理をさせることにより、ユーザ操作がない多機能電話機20においても通話試行実行状態となった多機能電話機20の処理の優先度を向上させることが可能となる。
【0096】
そして、通常処理列に含まれる全てのポートに対する処理が終了していない場合であっても、優先度を向上させたポートについてのイベントを優先的に制御することにより、優先制御すべきポートに対するイベントの処理を迅速に実行することが可能となる。これにより、優先制御の対象となった多機能電話機20−1の反応速度を向上することが可能となる、という効果を奏する。
【0097】
次に、
図5−3を参照して、多機能電話機20−499が内線の着信に応答する場合の動作について説明する。
【0098】
ステップS114にて、表示された内線着信中を表す表示を参照したユーザは、多機能電話機20−499の受話器を取る。これに応じて多機能電話機20−499はオフフックとなる。すると、このオフフックされたというメッセージは、LANケーブル30を通じて電話交換機システム10に通知される(
図5−3、ステップS124)。
【0099】
上りイベント解析モジュール12は、LANインターフェースモジュール11から通知された外線着信メッセージを解析する。そして、かかるメッセージの解析結果である「多機能電話機20−499がオフフックされた。」というメッセージを呼制御モジュール13に通知する(
図5−3、ステップS125、ステップS126)。
【0100】
「多機能電話機20−499がオフフックされた。」というメッセージを受信した呼制御モジュール13は、内線の発信元と着信先である多機能電話機20−500(ポート500)と多機能電話機20−499(ポート499)に対して内線通話が開始されたことを通知する。具体的には、「内線通話中を表示させる。」メッセージを、下りイベント解析モジュール14に対して、多機能電話機20−500(ポート500)と多機能電話機20−499(ポート499)の分通知する(
図5−3、ステップS127)
下りイベント解析モジュール14は、呼制御モジュール13からメッセージを受信していないかを定周期で監視する。また、メッセージを受信していた場合には、このメッセージを解析して、どのようなイベントを表すメッセージであるかを確認する。そして、下りイベント解析モジュール14は、ステップS127にて通知された、発信元多機能電話機20−499及び発信元多機能電話機20−500に内線通話中を表示させるイベントを受信したこと及びこれらのイベントが未処理であることを認識する。
【0101】
次に、下りイベント解析モジュール14は、まず通話端末管理配列記憶部15に記憶されている通話端末管理配列を参照し、優先して処理すべきポートである、通話端末処理列に含まれるポートが有るか否かを確認する(
図5−3、ステップS128)。
【0102】
確認後、優先処理すべきポートである、通話端末処理列に含まれるポートが存在した場合、まず、優先制御すべきポートに対してイベント処理を開始する。今回は、上述したステップS108において、ポート499及びポート500が通話端末処理列に加えられている。つまり、ポート499及びポート500が優先制御の対象となっている。一方で、ポート1乃至ポート498は通常処理列に加えられている。つまり、ポート1乃至ポート498は優先制御の対象となっていない。そこで、下りイベント解析モジュール14は、まず、ポート499及びポート500の内で番号の若い、ポート499に対応する多機能電話機20−499に対して、ステップS127にて通知されたイベントに基づいて、内線通話中である旨を表示させるメッセージを作成する。作成したメッセージは、LANインターフェースモジュール11に送信する(
図5−3、ステップS129)。ここで、ステップS129における下りイベント解析モジュール14の動作を
図4のフローチャートに照らして説明する。ステップS129の時点では通話処理列にポート499及びポート500が含まれることからステップS51においてYesとなる。また、上述したようにポート499及びポート500について未処理のイベントが存在することからステップS52においてYesとなる。そして、ポート499についての未処理のイベントを処理する(ステップS53)。更に、処理済みのイベントとなったポート499についてのイベントを削除する(ステップS54)。
【0103】
LANインターフェースモジュール11は、ステップS129において送信されたメッセージを受信し、多機能電話機20−499に、そのメッセージを転送する(
図5−3、ステップS130)。
【0104】
多機能電話機220−499は、ステップS130にて転送されたメッセージに基づいて内線通話中である旨を表示させる(
図5−3、ステップS131)。
【0105】
下りイベント解析モジュール14は、処理すべきイベントがまだあることを認識しているので、再度、通話端末管理配列記憶部15に記憶されている通話端末管理配列を参照し、優先して処理すべきポートである、通話端末処理列に含まれるポートが有るか否かを確認する(
図5−3、ステップS132)。
【0106】
今回は、上述したステップS108において、ポート499及びポート500が通話端末処理列に加えられている。つまり、ポート499及びポート500が優先制御の対象となっている。一方で、ポート1乃至ポート498は通常処理列に加えられている。つまり、ポート1乃至ポート498は優先制御の対象となっていない。そして、ステップS127で受信したメッセージに対応するポート499についてのイベントの処理は、ステップS129で処理済みである。一方で、そして、テップS127で受信したメッセージに対応するポート500についてのイベントの処理は未処理である。そこで、下りイベント解析モジュール14は、ポート500に対応する多機能電話機20−500に対して外線着信ボタン内線通話中である旨を表示させるメッセージを作成し、LANインターフェースモジュール11に送信する(
図5−3、ステップS133)。ここで、ステップS133における下りイベント解析モジュール14の動作を
図4のフローチャートに照らして説明する。ステップS133の時点では通話処理列にポート499及びポート500が含まれることからステップS51においてYesとなる。また、上述したようにポート500について未処理のイベントが存在することからステップS52においてYesとなる。そして、ポート500についての未処理のイベントを処理する(ステップS53)。更に、処理済みのイベントとなったポート500についてのイベントを削除する(ステップS54)。
【0107】
LANインターフェースモジュール11は、ステップS133におけるメッセージを受信し、多機能電話機20−500に、そのメッセージを転送する(
図5−3、ステップS134)。
【0108】
多機能電話機220−500は、ステップS134にて転送されたメッセージに基づいて内線通話中である旨を表示させる(
図5−3、ステップS135)。
【0109】
以上、
図5−3を参照して説明した動作にて、内線通話状態であることから、通話端末処理列に含まれているポートに対応する多機能電話機20−499及び多機能電話機20−500ついてのイベント処理を優先的に行なうことができる。従って、多機能電話機20−499がオフフックをする前後において、外線着信が更に発生したような場合であっても、多機能電話機1乃至多機能電話機498についての外線着信のイベント処理に先立って、通話端末処理列に含まれているポートに対応する多機能電話機20−499及び多機能電話機20−500ついてのイベント処理を優先的に行なうことができる。このように、通話状態にある多機能電話機20についてのイベント処理を優先的に行うことから、これら通話状態にある多機能電話機20の反応速度を向上することが可能となる。
【0110】
次に、本発明の実施形態の効果について説明する。
【0111】
本発明の実施形態では、呼制御モジュール13における多機能電話機の通話試行実行状態移行をトリガーとして優先すべき端末がどれかを認識して通話端末管理配列を書き換え、下りイベント解析モジュール14において優先処理すべき端末を通常処理する端末よりも先に処理する。これにより、本実施形態では、通常は先に処理すべき端末があらかじめ多くあった場合でも優先処理すべき端末が早い段階で処理されることになり、発着信及び通話を行なうユーザに対して遅延を感じさせないような動作が可能となる。
【0112】
特に、本発明の実施形態はCPU(Central Processing Unit)の処理パフォーマンスが低いような場合、かつ多機能電話機の数が多く制御メッセージが膨大となるケースに有用である。
【0113】
なお、上記の電話交換機システム及び多機能電話機20−1乃至多機能電話機20−500のそれぞれは、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれを実現することができる。また、上記の電話交換機システム及び多機能電話機20−1乃至多機能電話機20−500により行なわれる反応速度向上方法も、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
【0114】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0115】
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
【0116】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0117】
(付記1) 複数の端末それぞれに対して割り当てた所定の順番に従って前記複数の端末それぞれに対して所定の指示を出すイベントである第1のイベントと、着信先の端末を特定した通話の開始を試みている端末又は通話中の端末に対して所定の指示を出すイベントである第2のイベントとの双方のイベントが未処理である場合に、前記第2のイベントに関連する端末についてのイベントの処理を実行した後に、他の端末についてのイベントの処理を実行することを特徴とする反応速度向上装置。
【0118】
(付記2) 前記他の端末についてのイベントの処理を実行している途中で、前記第2のイベントが新たに発生した場合には、前記他の端末についてのイベントの処理を中断して、前記新たに発生した第2のイベントに関連する端末についてのイベントの処理を実行することを特徴とする付記1に記載の反応速度向上装置。
【0119】
(付記3) 前記他の端末についてのイベントの処理を複数の他の端末の内の1つの端末について実行する度に、前記第2のイベントが新たに発生していないか否かを確認することを特徴とする付記1又は2に記載の反応速度向上装置。
【0120】
(付記4) 前記第2のイベントに関連する端末についての前記第2のイベントを処理する場合に、前記第2のイベントに関連する端末についての第1のイベントの処理も併せて実行することを特徴とする付記1乃至3の何れか1に記載の反応速度向上装置。
【0121】
(付記5) 前記複数の端末は電話交換機に接続された電話機であり、前記第1のイベント及び前記第2のイベントにおける前記所定の指示は、前記電話交換機から送信される、前記電話機である端末を制御するための制御メッセージにより示されることを特徴とする付記1乃至4の何れか1に記載の反応速度向上装置。
【0122】
(付記6) 前記端末のそれぞれについて、着信先の端末を特定した通話の開始を試みている端末又は通話中の端末であるか否かを記憶する通話端末管理配列記憶手段と、
端末から、着信先の端末を特定した通話を開始又は終了するための操作の受け付けがあった旨のメッセージ、或いは着信先の端末を特定しない通話を開始又は終了するための操作の受け付けがあった旨のメッセージを受信する受信手段と、
前記受信手段で受け付けたメッセージを解析し、解析したメッセージの内容を呼制御手段に出力する上りイベント解析手段と、
前記上りイベント解析手段が出力するメッセージの内容に基づいて、端末それぞれの状態に対応するように前記通話端末管理配列記憶手段が記憶する情報を書き換えると共に端末に対して送信する前記所定の指示を生成し、生成した前記所定の指示を送信先となる端末に対して送信するように下りイベント解析手段に指示を出す前記呼制御手段と、
前記通話端末管理配列記憶手段が記憶している情報を読み取ることにより認識した、着信先の端末を特定した通話の開始を試みている端末又は通話中の端末を優先して順番に前記所定の指示を送信するように送信手段に指示を出す前記下りイベント解析手段と、
前記下りイベント解析手段の指示に従って前記所定の指示を複数の前記端末に送信する前記送信手段と、
を備えることを特徴とする付記1乃至5の何れか1に記載の反応速度向上装置。
【0123】
(付記7) 前記呼制御手段は前記上りイベント解析手段が出力するメッセージの内容が、
着信先の端末を特定した通話の開始を試みるためのメッセージである場合に、該メッセージに関連する端末を着信先の端末を特定した通話の開始を試みている端末として前記通話端末管理配列記憶手段を書き換え、
通話が開始されたことを表すメッセージである場合に、該メッセージに関連する端末を通話中の端末として前記通話端末管理配列記憶手段を書き換え、
通話を終了するためのメッセージである場合に、該メッセージに関連する端末を通話中の端末ではないとして前記通話端末管理配列記憶手段を書き換えることを特徴とする付記6に記載の反応速度向上装置。
【0124】
(付記8) 前記通話端末管理配列は、優先制御の対象とする着信先の端末を特定した通話の開始を試みている端末又は通話中の端末を特定する通話端末処理列と、優先制御の対象としない端末を特定する通常処理列と、の2つの処理列を有しており、
前記下りイベント解析手段は、前記通話端末処理列を前記通常処理列よりも優先して参照することにより前記所定の指示を送信する前記順番を決定することを特徴とする付記6又は7に記載の反応速度向上装置。
【0125】
(付記9) 反応速度向上装置と、複数の端末とを含む反応速度向上システムであって、
前記反応速度向上装置は、付記1乃至8の何れか1に記載の反応速度向上装置であり、
前記複数の端末のうちの少なくとも1つの端末は、前記反応速度向上装置からの前記所定の指示の内容に基づいて、ユーザに対して所定の情報を出力することを特徴とする反応速度向上システム。
【0126】
(付記10) 複数の端末それぞれに対して割り当てた所定の順番に従って前記複数の端末それぞれに対して所定の指示を出すイベントである第1のイベントと、着信先の端末を特定した通話の開始を試みている端末及び通話中の端末に対して所定の指示を出すイベントである第2のイベントとの双方のイベントが未処理である場合に、前記第2のイベントに関連する端末についてのイベントの処理を実行した後に、他の端末についてのイベントの処理を実行する反応速度向上装置としてコンピュータを機能させることを特徴とする反応速度向上プログラム。