JP2007150841A - 電話交換システム及び電話交換方法及び電話交換プログラム - Google Patents
電話交換システム及び電話交換方法及び電話交換プログラム Download PDFInfo
- Publication number
- JP2007150841A JP2007150841A JP2005343937A JP2005343937A JP2007150841A JP 2007150841 A JP2007150841 A JP 2007150841A JP 2005343937 A JP2005343937 A JP 2005343937A JP 2005343937 A JP2005343937 A JP 2005343937A JP 2007150841 A JP2007150841 A JP 2007150841A
- Authority
- JP
- Japan
- Prior art keywords
- terminal
- group
- information
- storage area
- call
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
Abstract
【解決手段】本発明の電話交換システムは、ネットワークに接続された複数の端末が、固有情報及び通信状態を示す端末情報を共有するグループを形成し、各グループ毎に、同一のグループに属する端末の端末情報を格納する共有記憶領域を複数の端末に設け、端末の編入又は離脱を含む端末状態の遷移による端末情報の変更毎に、共有記憶領域の情報の同期を取り、着呼先が発呼元と同一グループか否かを検出し、着呼先が同一グループの場合、グループ内の共有記憶領域で着呼先の通信情報を検出し、着呼先が異なるグループの場合、着呼先の端末の属するグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出し、この通信情報により着呼先の端末と通話処理を実行する。
【選択図】図1
Description
例えば、特許文献1には、複数の端末における処理の負荷の軽減を図りながら、各端末に格納されている共有データの整合性を保持するデータ共有方法が開示されている。
そして、グループ内で共有する基本データおよびグループ内の各端末に関するメンバーデータを含んだ共有データにおいて、基本データに更新が発生した場合、予め定められた所定の決定方法にしたがって、更新に関する更新情報をグループ内の各端末に対して同報送信をデータ更新端末が行う。
また、共有データにおいて、メンバーデータの更新に際しての同報は、グループ内の各端末,窓口端末及び他の端末を監視している端末が行う(実施形態に詳細に記述)。
ここで、各端末は、更新情報とともに、更新情報に対応する判別用番号を同報端末に送信する。一方、更新情報とともに、判別用番号を受信すると、同報端末は、受信する判別用番号よりも大きな判別用番号を新たな判別用番号とし、更新情報を同報送信する。ただし、このとき、同報端末は、受信した判別用番号と記憶している判別用番号とを比較し、受信した判別用番号の方が大きい場合に、同報送信する。
したがって、各端末に格納されている共有データの整合性を保持しつつ、各端末の処理負荷を軽減することができる。
ソフトスイッチは、管理するIP電話端末のSIP(Session Initiation Protocol)URL(アドレスデータベース)を保有し、各IP電話端末は、起動時にソフトスイッチにアクセスすることで、自IPアドレスを登録する。
IPアドレスの登録後、相手のIP電話端末(着信側)をコールする場合、発信側のIP電話端末は、ソフトスイッチにアクセスすることで相手のIP電話端末のIPアドレスをSIP URLから取得し、リクエストを送信する。
すなわち、ソフトスイッチにおいては、IP電話端末の起動/終了時のSIP URLへのアドレス登録処理、通話の際のコネクション接続制御処理、転送電話の際の相手のIP電話端末の応答状態監視処理等の処理が実施される。また、アドレス登録や端末監視処理については、各要求ごとにソフトウェアによる並列処理が実施される。
すなわち、集中システムは、発呼側及び着呼側のIP電話端末の状態を管理し、これに連動した呼処理(相手が話中である場合はこの着信電話を転送する等)を発呼側及び着呼側のIP電話端末において実現するためには不可欠なものとなっている。
すると、一つ一つのサービスを同時に集中して実現するためには、ソフトウェア構成が非常に複雑なものになってしまうという問題点がある。
すなわち、集中システムが一つのサービスを新たに実装するには、システム全体の大幅な性能劣化や運用上起こり得る問題などを引き起こし、開発から設備を含め多大なコストが発生する。このため、ネットワークの利用効率を上げることによるIP電話端末の低コストメリットよりも、開発コストや運用コストのデメリットが大きくなってしまうという問題点があった。
本発明(22)の端末は、ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、1つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有機能を有する電話交換システムに用いる端末であり、通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出手段と、着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出手段と、着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出手段と、検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理手段とを有することを特徴とする。
また、この共有記憶領域は複数の端末に設けられ、例えば、全ての端末の記憶部に特定の領域として確保されている。
上記共有記憶領域は、各端末が各々有している異なるメモリ領域であるが、予め設定された、グループとなった端末間において共有される共有データが記憶され、他の端末の情報を読み込む際、他の端末の共有記憶領域からその情報が読み込まれ、自身の共有記憶領域に書き込まれる。
すなわち、共有記憶領域は、各端末の記憶部にそれぞれ設けられており、グループ内の各端末の通話処理に関して共有する必要のある共有データ(後に説明するメンバーテーブル及び状態テーブルなど)を記憶する領域として定義される。
ここで、参加は端末が自グループとなるグループに加わることを意味し、編入はすでにグループに参加している端末が他のグループに加わることを意味し、離脱は参加あるいは編入したグループから抜ける(グループのメンバーで無くなる)ことを意味し、故障は端末が通信を行う機能に障害を受けている状態を示している。
また、このグループ内に所属できる端末の数は、共有データを相互に読み出し及び書き込みが所定の時間内にて行われる範囲、また共有記憶領域として確保されるメモリ容量の上限から決定される。
また、発呼元の各端末は、着呼先グループ検出部により、着呼先の端末の電話番号から、着呼先の端末のグループを所定の方法(後に述べる)により検出し、着呼先の端末が同一グループに所属していないことを検出した場合、通話処理部により着呼先の端末が所属するグループに編入する。
一方、本発明においては、発呼元となる各端末において、着呼先の端末の通信情報を処理する性能を保証することで、通話処理を行う通信サービス全体に参加する端末の総数が変動した場合においても、常に通話サービスに対して一定の品質及び性能等を保証することができる。
この図において、ネットワークIに接続されている複数の端末A1〜A6,B1〜B6,C1〜C6,…が接続されており、複数の端末がグループを形成、すなわち、端末A1〜A6がグループA,端末B1〜B6がグループB,端末C1〜C6がグループCを形成している。
通話処理部1は、通話処理にて生じる状態遷移、例えば、各グループに対して編入,参加,離脱などを含む端末状態の変化に対応して、共有記憶領域(本実施形態では状態テーブル及びメンバーテーブル)における発呼元(自身)及び着呼先の端末状態の書き替え処理を、グループに所属する(メンバーである)全端末の同期を取って行う。この同期を取ってグループ内の全ての端末が同期して、各々の共有記憶領域のデータの書き換えを行う処理については後に詳述する。
着呼先グループ検出部2は、着呼先の端末が発呼元の端末である自身と同一のグループに所属しているか否か、すなわち着呼先の端末が所属するグループを、着呼先の端末に付与されている電話番号から検出し、通話処理部1へ通知する。
グループ間着呼先端末状態検出部4は、上記着呼先グループ検出部2が着呼先の端末が、発呼元端末である自身と異なるグループに属していることを検出した場合、着呼先の端末が属するグループに参加した後、編入したグループの共有記憶領域に記憶されている着呼先の通信情報を参照して、着呼先の端末の通信状態を検出し、通話可能か否かを通話処理部1へ通知する。
共有機能部6は、グループのメンバーである各端末の共有記憶領域に記憶されている端末情報の遷移にともない、グループにおける全ての端末における記憶部5の共有記憶領域に記憶されている共有データである端末情報の同期処理を行う。
また、他のグループに編入した端末は、参加している自グループの共有データを自グループの各端末と共有し、かつ編入した他グループの共有データを他グループの各端末と共有することとなる。
すなわち、グループAに参加している端末A1がグループBに編入した場合を例に取ると、端末A1はグループAに所属している他の端末と、グループAの状態テーブル及びメンバーテーブルを共有データとして共有し、かつ編入先のグループBの状態テーブル及びメンバーテーブルを共有データとして共有する。
しかしながら、端末A1以外のグループAの他の端末は、グループBの共有データをグループBに所属する端末(編入した端末A1を含む)と共有しない。
また、編入した端末A1以外のグループBの端末(グループBに参加している端末)は、グループAの共有データを共有しない。
上述したように、発呼側の端末A1が着呼側の端末B1に電話をする際、発呼側の端末A1は、着呼側の端末の電話番号を入力して、着呼先グループ検出部により、この着呼側の端末が参加する共有記憶領域を共有するグループを識別して、グループ番号を得る。
上記着呼先グループ検出部2における着呼先の端末の所属するグループの検出は、着呼先グループ検出部2の処理において下記に示す方法のいずれを用いても良い。
B.着呼先の電話番号を専用サーバ(例えば、グループサーバ)に問い合わせて、検索結果として、着呼先の端末のグループ番号を得る。
この専用サーバは、システム内の全てのグループを管理し、各グループ番号とグループに属する端末(メンバー)の電話番号との対応関係を示すテーブルのグループDB(データベース)を有している。
しかしながら、手繰り寄せるグループがなくなり、この時点で電話番号の所属するグループが検出されない場合、システム内の全てのグループを管理し、各グループ番号とメンバーの電話番号との対応関係を示すテーブルのグループDB(データベース)を有する特定のグループ(Bにおける専用サーバの集合体)に問い合わせ、電話番号の所属するグループ番号を得る。
このため、Cの着呼先の電話番号の検索処理は、電話番号の属するグループのグループ番号の検索において、できうる限り各端末間での問題解決を行わせて、特定グループへの負荷の集中を抑制する構成とされている。
すなわち、各グループが関連する他のグループの窓口端末のIDと電話番号とグループ番号との対応をしめすルーティングテーブルを共有記憶領に有している。
各グループにおいて、着呼先の電話番号が自グループ内のメンバーテーブルにて検出されない場合、電話番号の所属グループに検索を自グループの窓口端末に対して依頼する。
このとき、上記窓口端末は、グループサーバに対して、電話番号を通知して他のグループの窓口端末のIPアドレスを検索する依頼のアクセスを行い、得られたIPアドレスを用いて、他のグループの窓口端末に対して、アクセスを行う。
また、この他のグループの窓口端末が自グループ内に依頼された電話番号がなければ、さらに、次のグループの窓口端末に電話番号の検索依頼を行う。
グループ内に上記窓口端末が複数設けられており、グループサーバに対して参加及び編入、離脱する窓口端末の通知を行う、すなわち参加に関しては予めグループに存在する窓口端末のいずれかが新たな窓口端末の参加及び編入をグループサーバに通知し、離脱に関してはグループに残留する窓口端末のいずれかが通知する。ここで、端末が存在しなかったグループに対して、端末が参加する際、最初に参加した端末が窓口端末となり、自身の参加をグループサーバに対して通知する。
−A.の方法−
電話する相手の番号から、演算によって一意にグループ番号を求める方法であり、例えば、以下のa,b,cの3つの方法がある。
a.電話番号を直接に演算する
着呼先グループ検出部2が、「電話番号 ÷ N = グループ番号」の演算を行い、演算結果をグループ番号として出力する。
電話番号を予め設定した任意の数値Nで除算して、グループ番号を演算により求める。
このとき、グループ番号が予め整数値となるように電話番号と数値Nとを設定しておくようにしても良いし、除算した結果の小数点以下を切り捨てて、整数値としたものをグループ番号として用いるようにしても良い。
電話番号「XXXX−YY」である場合、電話番号からグループを識別する方法として、電話番号の下2桁(YY)をワイルドカードの箇所として、グループと紐付けるように、すなわち、電話番号と、この電話番号の下2桁以外の上位桁(XXXX)のグループ番号とを対応付けて電話番号の体系を構築することが考えられる。
これにより、入力される電話番号から、設定された上位桁を抽出することにより、グループ番号を一意に求めることができる。
この構成の場合、共有記憶領域に、グループ番号と、このグループ番号の示すグループに属する端末の電話番号とを対応付けた対応関係テーブルが設定されている。
そして、着呼先グループ検出部は、電話番号が入力されると、上記対応関係テーブルを参照して、入力された電話番号に対応するグループ番号を抽出して出力する。
ここで、電話番号「XXXX−YY」である場合、電話番号からグループを識別する方法として、電話番号の下2桁(YY)をワイルドカードの箇所として、電話番号とグループとを紐付けるように、電話番号の下2桁以外の上位桁(XXXX)の番号とグループ番号との対応関係テーブルを構築することが考えられる。
これにより、着呼先グループ検出部2は、下2桁以外の上位桁をグループ番号に対応付けておくことにより、電話番号を右側にシフトさせ、電話番号の下3桁目が1桁目となる演算を行い、この数値を上記対応関係テーブルにより検出し、対応するグループ番号を読み出すことにより、一意に着呼先のグループ番号を検出する処理を行うことができる。
例えば、グループ番号毎に、このグループ番号に属する端末の電話番号との対応関係が示された対応テーブルを有するルーティング専用の専用サーバを、各グループ毎に、あるいは複数のグループ単位に設けても良い。
端末は、上記ルーティング専用の専用サーバに対して、着呼先の端末の電話番号を出力し、着呼先の端末が属するグループのグループ番号の検索依頼を行う。
これにより、上記専用サーバは、記憶している対応テーブルを参照して、端末から入力される電話番号に対応したグループ番号を読み出し、このグループ番号を端末に対して通知する。
例えば、各端末が着呼先の端末の電話番号のグループを検索する際、自グループのメンバーである他の端末に対し、着呼先の端末の電話番号を送信し、この電話番号に対応するグループ番号の問い合わせを行う。
このとき、例えば、グループAの端末A1が着呼先の電話番号のグループ検出を行う際、自グループ内のグループ内メンバ共有記憶領域におけるメンバーテーブル存在していないことを検出した場合、電話番号を自グループ内の各端末A2〜A5に対して問い合わせて、この電話番号の検索を依頼する。
ここで、端末A5は、グループBのメンバーテーブルに着呼先の電話番号が存在することを検出すると、端末A1に対して検出されたグループ番号を通知する。
このとき、グループBの端末のいずれかが他のグループに対して編入している場合、この端末が端末A5に検索することを通知し、グループBに編入した端末A5と同様の検索処理を行う。
そして、端末A1は自グループ内の他の全ての端末からグループ番号検索ができないことを示す通知を受信すると、各グループから構成されるシステム内に存在する全ての端末の電話番号と、この電話番号が属するグループのグループ番号との対応関係を示すグループ管理テーブルを有する端末からなる特定グループに対して、着呼先の電話番号を通知して、グループ番号の検索を依頼する。
ここで、上記特定グループ(システム内の全端末の電話番号とグループ番号とが管理されているサーバ群)は、各グループに端末が参加する際に、通知を受けるグループサーバを含み、このグループサーバから各グループに参加する端末の情報を得る。
すでに述べた様に、各端末が窓口端末に着呼先の電話番号の属するグループの検索を依頼することにより、窓口端末は、自グループ内に設けられた、他のグループの窓口端末とこの窓口端末の電話番号との対応を示すルーティングテーブルから、問い合わせを行う他のグループの窓口端末を選択し、選択した他のグループの窓口端末のIPアドレスをグループサーバに対して問い合わせ、得られたIPアドレスにより他のグループの窓口端末にアクセスし、着呼先の端末の電話番号の所属するグループ番号の検索を行う。
すなわち、グループAにおいて端末A1が着呼先の電話番号の所属するグループの検索を行う場合、窓口端末として設定されている端末、例えば端末A2に対し、電話番号を通知してグループ番号の依頼を行う。
そして、端末A2は、着呼先の電話番号を端末B1に送信して、この電話番号の端末がグループBに存在するか否かの検出を依頼する。
このとき、端末B1は、メンバーテーブルを参照して、依頼された電話番号の有無の検出を行い、自グループのメンバーテーブルにおいて存在を検出した場合、グループBに存在すること(すなわち、グループBのグループ番号)を端末A2へ通知する。
端末B1は、グループCの窓口端末から、例えば端末C1を選択し、この選択された端末B1の電話番号をグループサーバへ送信して、グループサーバから端末C1のIPアドレスを得る。
そして、端末B1は、着呼先の電話番号を端末C1に送信して、この電話番号の端末がグループCに存在するか否かの検出を依頼する。
このとき、端末C1は、メンバーテーブルを参照して、依頼された電話番号の有無の検出を行い、自グループのメンバーテーブルにおいて存在を検出した場合、グループCに存在することを端末A2へ、端末B1を介して通知する。
また、共有機能部6は、グループ内の同期をとる場合、以下に示すいくつかの方法が考えられる。
a.所定の端末が同報を行い、同一グループ内にて共有する端末情報の一斉書き替え
各グループにおいて、グループを構成する端末の1つまたは複数がデータ変更端末として設定されている。
上記データ変更端末は、各グループの共有記憶領域、例えば、状態テーブル及びメンバーテーブルを所定数に分割した分割領域毎に対応づけられている。例えば、共有記憶領域における共有データである状態テーブル6個とメンバーテーブル1個からなる7個の分割領域に分割されていると、この状態テーブル6個の各分割領域毎に、各々データ変更端末が対応付けられることとなる。
そして、メンバーテーブルにおけるメンバーデータの更新に際しての同報は、グループ内の各端末,窓口端末及び他の端末を監視している端末が行う(後に詳細に記述)。
これは共有記憶領域を容量的に分割するため、状態テーブルやメンバーテーブルに共有データが書き込まれていなくとも、所定容量の区分(共有記憶領域における共通のアドレス範囲)として分割されており、共有データが記録されていないことが、共有データの変化がないと認識されることとなる。
その後に、端末が増加するごとに、メンバーテーブルの端末が増加するため、後に述べる様に、各分割領域の担当を、順次他の端末をデータ変更端末とすることにより変更させ、グループ全体の端末にデータ変更端末の動作を分担させて、データ変更の管理を順次行わせる。
また、各端末は、着呼先の端末であれば、自身のID番号に対応する領域の通信情報I1の書き換えを、自身のID番号の領域を担当するデータ変更端末に対して要求する。
これにより、データ変更端末は、自身の担当する領域のデータの変更を、各端末から依頼されることにより、すなわち、対応付けられた分割領域の端末情報の変更が通知されると、グループ内の各端末に対して、変更する分割領域を示す情報と、変更されるデータとを同報することにより、グループ内の全端末の共有記憶領域におけるデータの同期をとる。
例えば、初期状態としては端末がグループに参加する順番に、分割領域に対する対応付けが行われる(窓口端末が各端末にこの対応付けを同報)が、以降、同報処理を行う毎に、次にデータ更新端末となる端末のID及び対応する分割領域の情報を、上記変更されたデータとともに、グループ内の各端末に対して同報する。
このとき、データ更新端末は、例えば、次にデータ変更端末となる端末を、メンバーテーブルの順番にて設定する。
このbの集中管理は、上述したaのように、データ変更端末が複数あり、かつ他の端末に変更される構成ではなく、グループ全体で1つの端末がデータ変更端末として固定に設定され、全共有記憶領域の変更を全て担当する構成となっている。
このデータ変更端末は、いずれの端末であるかが、グループに参加する時点に、窓口端末からID番号として、予めグループ内の各端末に通知されている。
各端末は、発呼元の端末であれば、状態テーブルにおける自身のID番号に対応する領域の通信情報I1の書き替え、及び状態テーブルにおける着呼先の端末のID番号に対応する領域の通信情報I2の書き換えを、上記データ変更端末に対して要求する。
また、各端末は、着呼先の端末であれば、自身のID番号に対応する領域の通信情報I1の書き換えを、データ変更端末に対して要求する。
これにより、データ変更端末は、各端末から依頼されることにより、すなわち、依頼された端末情報の変更が通知されると、グループ内の各端末に対して、変更されたデータとを同報することで、グループ内の全端末の共有記憶領域におけるデータの同期をとる。
各グループにおいて、グループを構成する端末の1つまたは複数が最新データを有する最新データ記憶端末として設定されている。
上記最新データ記憶端末は、aの同期処理におけるデータ変更端末と同様に、各グループの共有記憶領域、例えば、状態テーブルを所定数に分割した分割領域毎に対応づけられている。例えば、共有記憶領域における状態テーブルが6個の分割領域に分割されていると、この6個の各分割領域毎に、設定された端末として対応付けられている。
そして、グループ内のいずれかの端末が、データ項目の書き換えを行う必要が発生した際、例えば、発呼元ととなり状態テーブルにおける着呼先の通信情報を書き替えを行う際、着呼先の最新のデータ項目を有する最新データ記憶端末から、その最新のデータ項目をダウンロードし、データの書き換えを行うとともに、その書き替えた分割領域を示すデータと、自身が最新データ記憶端末となったことをグループに所属している全てのメンバーに通知する。
次に、本発明の実施形態における通話処理の動作を、以下に図を参照して順次説明する。
まず、端末状態の情報(共有データ)を共有するグループに参加する動作について説明する。図3の概念図に示すように、通話処理における最も最初の動作として、端末B2〜B6により構成されているグループBに、電源を投入することによって、端末B1が参加する以下に示すログインの処理が共有機能部6により行われる。
この参加処理の動作について、図4のシーケンス図を用いて説明する。
端末B1は、電源が投入または通話シーケンスを行うアプリケーションの起動を契機として、通話シーケンスを行うアプリケーションが起動され、グループBに対して参加するため、アプリケーションに予め設定されているIPアドレスによりグループサーバにアクセスし、グループサーバにおける認証部の認証を受ける(ログインシーケンスL1)。
次に、認証部は、端末B1を認証すると、この端末B1に対し、通話シーケンス等で用いる端末B1のID番号を送信する(ログインシーケンスL2)。
上記ID番号は、予め上記識別番号に対応して設定された情報でも、認証することにより所定の方法で生成してもよい。
上記グループサーバは、各グループのグループ番号と、このグループ毎に設けられた窓口端末と、この窓口端末のIPアドレスとの対応関係を示す窓口端末テーブルを、窓口端末テーブルとして記憶している。
端末B1は、自身のID番号とIPアドレスとをグループサーバに対して通知し、グループBに対する参加要求をへ行う(ログインシーケンスL3)。
これにより、グループサーバのダウンロード部は、窓口端末テーブルを参照し、窓口端末である端末B5に対して、グループBの共有記憶領域に記憶されている共有している情報のダウンロード処理の実行を依頼する。(ログインシーケンスL4)
すなわち、グループサーバは、各グループに参加依頼をする端末を、先着順に1つまたは複数個選択して、この選択した端末を窓口端末とし、グループを示すグループ番号に対応させて窓口端末のID番号とIPアドレスをグループ単位に記憶している。
この時点において、グループBに所属する各端末における共有記憶領域のメンバーテーブルには、グループのメンバー、すなわちグループを構成している端末(端末B2〜B5)各々のID番号に対応し、各端末のIPアドレスと、通信に使用しているポート番号(TCPまたはUDPのポート)との対応関係が記憶されている。
すなわち、各端末は、自身を含み、所属するグループのメンバーである全ての端末の状態情報が記載されている状態テーブルを、それぞれの共有記憶領域に記憶して保持することで、グループ単位にてグループ内で共有する共有データ(本実施形態においては、少なくとも状態テーブル及びメンバーテーブル)の共有を行っている。
これにより、端末B1において、共有機能部6は、記憶部5の所定の部分を共有記憶領域として設定し、入力される状態テーブルのテンプレートから、自身の状態テーブルを生成するとともに、メンバーテーブルを記憶する(ログインシーケンスL6)。
次に、各端末B1〜B4は、端末B1が書き込まれたメンバーテーブルを端末B5からダウンロードし、共有記憶領域のすでにあるメンバーテーブルに対して上書きして、書き替えた時刻を示すタイムスタンプを付加してメンバーテーブルの更新を行う。
これにより、端末B1のグループBへの参加が終了し、端末B1はユーザまたは他の端末からの着呼の待ち受け状態となる(ログインシーケンスL7)。
次に、グループBに参加した端末B1(発呼側の端末)が同一グループBに所属する端末B2(着呼側の端末)に電話をかける場合を、図5,図6及び図7を参照して説明する。図5は通話処理における端末の状態遷移図であり、図6及び図7は通話処理の流れを示すコールシーケンスを示す図である。この処理の説明において、共有記憶領域における共有データの同期処理を、一例として、先に「グループ内の共有記憶領域の同期処理」における”a”の方法を用いて説明する。また、この処理の説明において、例えば、グループB内において窓口端末が端末B5であり、この時点でのデータ変更端末を端末B2及び端末B4とする。
また、各端末の共有記憶領域には、すでに述べたように、グループに所属する端末の個有情報(端末のID番号(あるいはID),IPアドレス,ポート番号など)が記憶されるメンバーテーブルとともに、通話処理監視用の自端末の端末情報(通信情報を含む)が記載された状態テーブルが生成される。
上記メンバーテーブルには、各端末の個有情報である電話番号(または端末のID番号、すなわちID番号を電話番号として用いるように構成しても良い),IPアドレスとともに、通信に用いるポート番号などが記録されている。
次に、利用者が受話器を上げることにより、通話処理部1は、受話器が上げられたこと(オフフック状態に遷移したこと)を検出して、すなわち、端末B1が「空き」状態(着信可能状態)から「発呼」状態(発信状態)に遷移したことを検出して、自端末の通信情報I1を「空き」から「発呼」に書き替える同期処理を、自端末のID番号とともに、分割領域Q1を担当しているデータ変更端末B3へ送信して依頼する。
このとき、データ変更端末B3は、メンバーテーブルの次の欄にある端末B4を、次の分割領域Q1の担当のデータ変更端末に指定し、グループBに所属する端末に対し、次のデータ変更端末となる端末B4のID番号B4と、端末B4が担当する分割領域Q1を示す情報とを、上記書き替え処理の実行を促す通知とともに同報する。
そして、端末B1,B2,B4,B5各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号B1の通信情報I1を「空き」から「発呼」に書き替え、データ変更端末B3の共有データの変更に対してグループ内にて同期をとる(ステップS2)。
一方、着呼先グループ検出部2は、電話番号が属するグループのグループ番号が後述する方法において検出できない場合、ルート検出が不完了であるとして、処理をステップS5へ進める。
これにより、グループ内着呼先端末状態検出部3は、共有記憶領域におけるメンバーテーブルから端末B2の電話番号に対応したIPアドレス及びポート番号を読み出し、端末B2に対してアクセスを行う(ステップS3)。
ここで、端末B1のグループ内着呼先端末状態検出部3は、端末B2の状態テーブルにおいて通信情報I2が「空き」状態であることを検出すると、相手である着呼先の端末B2が他の端末と通話状態ではなく、通話可能状態であることを検出して、処理をステップS4へ進める(ステップS3)。
これにより、端末B1の通話処理部1は、コールシーケンスの処理を終了して、初期状態へ戻す(ステップS5)。
これにより、データ変更端末B4は、端末B1からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B1の通信情報I1を書き替えるとともに、各端末(B1〜B3,B5)に対して、共有記憶領域の状態テーブルにおけるID番号が端末B1の通信情報I1を、「発呼」から「予約中」への書き替え処理の実行を促す通知を同報する。
そして、端末B1〜B3,B5各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号B1の通信情報I1を「発呼」から「予約中」に書き替え、データ変更端末B4の共有データの変更に対してグループ内にて同期をとる。
この時点において、端末B5は分割領域Q1及び分割領域Q2の2つの分割領域のデータ変更の同期をとる担当であるデータ変更端末に指定されている。
ここで、端末B1のグループ内着呼先端末状態検出部3は、端末B2の状態テーブルにおいて通信情報I2が「空き」状態であることを検出すると、端末B2が他の端末から通話の予約されておらず、通話予約(すなわち、予約を示すための予約中の情報を書き込むこと)が可能な状態であることを検出する。
次に、端末B1のグループ内着呼先端末状態検出部3は、端末B2の共有記憶領域における状態テーブルの通信情報I2を、「空き」状態から「予約中」に書き換える、すなわち共有データの変更を行う同期処理を、自端末のID番号とともに、分割領域Q2を担当しているデータ変更端末B5へ送信して依頼する。
これにより、データ変更端末B5は、端末B1からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信情報I2を書き替えるとともに、各端末(B1〜B4)に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の通信情報I2を、「空き」から「予約中」への書き替え処理の実行を促す通知を同報する。
そして、端末B1〜B4各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号B2の通信情報I2を「空き」から「予約中」に書き替え、データ変更端末B5の共有データの変更に対してグループ内にて同期をとり、処理をステップS6へ進める(ステップS4)。
この時点において、端末B1は発呼元であり、かつ、分割領域Q1のデータ変更の同期をとる担当のデータ変更端末に指定されている。
これにより、端末B1の通話処理部1は、コールシーケンスの処理を終了して、初期状態へ戻す(ステップS5)。
これにより、データ変更端末である端末B1は、自身からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B1の通信情報I1を書き替えるとともに、各端末(B2〜B5)に対して、共有記憶領域の状態テーブルにおけるID番号が端末B1の通信情報I1を、「予約中」から「空き」状態への書き替え処理の実行を促す通知を同報する。
そして、端末B2〜B5各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号B1の通信情報I1を「予約中」から「空き」状態に書き替え、データ変更端末B1の共有データの変更に対してグループ内にて同期をとる(ステップS5)。
これにより、データ変更端末B2は、自身からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信情報I1を書き替えるとともに、各端末(B1,B3〜B5)に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の通信情報I1を、「空き」から「着信呼出中」への書き替え処理の実行を促す通知を同報する。
そして、端末B1,B3〜B5各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号B2の通信情報I1を「空き」から「着信呼出中」に書き替え、データ変更端末B2の共有データの変更に対してグループ内にて同期をとる。
ここで、グループ内で共有する共有データの変更を同期を取って行う処理は、上述してきた説明と同様のため、データ変更端末に同期処理を依頼するとして、データ変更端末の変更処理について、以降の説明において省略する。
これにより、データ変更端末は、端末B2からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の経過時間T1を書き替えるとともに、グループBに所属する他の端末(グループBにおけるデータ変更端末以外の端末)に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の経過時間T1を、送信される端末B2の計数時間への書き替え処理の実行を促す通知を同報する。
そして、同報された端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号B2の経過時間T1を、端末B2の計数時間へ書き替え、データ変更端末の共有データの変更に対してグループ内にて同期をとる。
これにより、データ変更端末は、端末B1からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の経過時間T2を書き替えるとともに、グループBに所属する他の端末(グループBにおけるデータ変更端末以外の端末)に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の経過時間T2を、送信される端末B1の計数時間への書き替え処理の実行を促す通知を同報する。
そして、同報された端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号B2の経過時間T2を、端末B1の計数時間へ書き替え、データ変更端末の共有データの変更に対してグループ内にて同期をとる。
これにより、データ変更端末は、端末B1からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B1の通信情報I1を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるID番号が端末B1の通信情報I1を、「予約中」から「呼出中」への書き替え処理の実行を促す通知を同報する。
そして、グループBに所属する端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号B1の通信情報I1を「予約中」から「呼出中」に書き替え、データ変更端末の共有データの変更に対してグループ内にて同期をとる。
これにより、データ変更端末は、端末B1からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信情報I1を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の通信情報I2を、「予約中」から「呼出中」への書き替え処理の実行を促す通知を同報する。
このとき、端末B1の通話処理部1は、スピーカから呼出音を出力して、呼出中であることを利用者に通知する。
これにより、一定時間経過後に端末B1及び端末B2双方の通話処理部1が端末B2の共有記憶領域の状態テーブルにおける経過時間T1と経過時間T2との比較を行う。
このとき、例えば、端末B1の通信処理部1は、経過時間T1と経過時間T2との差が所定の範囲以上の差(例えば、5秒)であることを検出すると、接続異常と判定して処理をステップS5へ進める。
すなわち、発呼側及び着呼側双方の無線処理部1は、経過時間T1及び経過時間T2の時間が大幅にずれている場合、通信経路のトラフィックが高く音声通信が行えない場合や、一方が負荷によりシステムダウンしてしまった場合等により、端末間の通信状態が不良であり、通話処理を行うことが不可能であることを判定すると、処理をステップS5へ進めて通話処理を中止する。
これにより、データ変更端末は、端末B2からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信情報I1を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の通信情報I1を、「着信呼出中」から「着信通話中」への書き替え処理の実行を促す通知を同報する。
このとき、端末B2の通話処理部1は、スピーカから出力していた着信音を停止し、通話可能となったことを利用者に通知する。
また、端末B2の通話処理部1は、新たに計数を開始して以降、所定の時間毎に計数した時間を経過時間T1へ書き込む同期処理を、自端末のID番号とともに、分割領域Q2を担当しているデータ変更端末へ送信して依頼する。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の経過時間T1を、端末B2が計数した時間への変更に対してグループ内にて同期をとる。
これにより、データ変更端末は、端末B1からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B1の通信状態I1を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるID番号が端末B1の通信状態I1を、「呼出中」から「通話中」への書き替え処理の実行を促す通知を同報する。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B1の通信情報I1を、「呼出中」から「通話中」への変更に対してグループ内にて同期をとる。
また、端末B1の通話処理部1は、新たに「通話中」に状態が変更してからの経過時間の計数を開始した後、所定の時間毎に計数した時間を経過時間T2へ書き込む同期処理を、自端末のID番号とともに、分割領域Q2を担当しているデータ変更端末へ送信して依頼する。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の経過時間T2を、端末B1が計数した時間への変更に対してグループ内にて同期をとる(ステップS7)。
これにより、データ変更端末は、端末B1からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B1の通信状態I1を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるID番号が端末B1の通信状態I1を、「通話中」から「予約消中」への書き替え処理の実行を促す通知を同報する。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B1の通信情報I1を、「通話中」から「予約消中」への変更に対してグループ内にて同期をとる。
これにより、データ変更端末は、端末B1からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信状態I2を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の通信状態I2を、「通話中」から「空き」への書き替え処理の実行を促す通知を同報する。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信情報I2を、「通話中」から「空き」への変更に対してグループ内にて同期をとる。
これにより、データ変更端末は、端末B2からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信状態I1を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の通信状態I1を、「着信通話中」から「空き」への書き替え処理の実行を促す通知を同報する。
このとき、端末B2の通話処理部1は、通話が終了したことを示す回線切断を通知する音をスピーカから出力し、利用者に通話のアクセスが切断されたことを通知する。
これにより、端末B1及び端末B2双方は、ステップS0の待ち受け状態(発呼及び着呼のいずれも可能な状態)へ戻る。
次に、グループBに参加した端末B1(発呼側の端末)が異なるグループCに所属する端末C2(着呼側の端末)に電話をかける場合を、図5,図6及び図7を参照して説明する。図5は通話処理における端末の状態遷移図であり、図6及び図7は通話処理の流れを示すコールシーケンスを示す図である。
ここで、すでに述べた同一のグループに所属する端末B2に、電話をかける場合と異なるのは、着呼先グループ検出部2が端末C2の電話番号から所属するグループ番号(グループC)を抽出する処理と、端末B1がグループCに編入する処理とであり、この異なる処理部分のみを説明する。
このグループ内で共有する共有データの変更を同期を取って行う処理は、すでに説明した「グループ内におけるコールシーケンス」と同様のため、データ変更端末に同期処理を依頼するとして、データ変更端末の変更処理について、以降の説明において省略する。
また、グループCにおいて、共有データである状態テーブルがID番号の端末C1、C2,C3,C4から構成される分割領域R1と、端末C5,C6,C7,C8及び編入する端末B1とからなる分割領域R2とに分割され、暫定的に、端末C3が分割領域R1を担当するデータ変更端末とされ、端末C5が分割領域R2を担当するデータ変更端末とされ、担当する分割領域とともにグループCに所属する各端末に対しては予め通知されている。
そして、端末B1において、着呼先グループ検索部2は、上述した処理により検出されたグループ番号(グループCのグループ番号)を、通話処理部1へ通知する。
そして、通話処理部1は、上記グループ番号により、端末C2の所属するグループが自身のグループと異なることを検出すると、共有機能部6に対して、グループ番号とIPアドレスとを通知するとともに、グループCに対する編入を指示する。
そして、グループサーバは、入力されるグループ番号により、グループCの窓口端末のIPアドレスを検索し、この検索されたIPアドレスを共有機能部6に対して送信する。
これにより、共有機能部6は、入力されたIPアドレスにアクセスし、メンバーテーブルのダウンロードを要求する。
そして、グループCの窓口端末は、ダウンロード処理として、自身のメンバーテーブルを、端末B1の共有機能部6に対して送信する。
この時点において、グループCにおける共有記憶領域のメンバーテーブルには、グループ内メンバである端末C1から端末C8各々の端末のID番号に対応して、IPアドレスとポート番号(TCPまたはUDPのポート)とが記憶されている。
また、共有記憶領域には、グループBと同様に、各端末毎に、自身の通話状態を示す状態テーブルも記憶されている。
これにより、グループサーバは、グループCにおける窓口端末として登録されている端末C1に対して、端末B1の端末ID番号とIPアドレスとを通知して、端末B1に対するダウンロード情報(グループC内において端末間にて共有している、メンバーテーブルを含む共有データ)の送信依頼を行う。
そして、窓口端末である端末C1は、端末B1に対してグループ内の上記ダウンロード情報を、送信して編入処理を行う。
次に、各端末C2〜C8は、端末B1が書き込まれたメンバーテーブルを端末C1からダウンロードし、共有記憶領域のすでにあるメンバーテーブルに対して上書きして、書き替えた時刻を示すタイムスタンプを付加してメンバーテーブルの更新を行う。
次に、端末B1のグループ間着呼先端末状態検出部4は、端末C2の共有記憶領域における状態テーブルの通信情報I1を参照し、「空き」状態であるか否かの検出を行う。
すなわち、グループCに編入した端末B1は、グループBで共有している共有データである状態テーブルの通信情報I1の変更をグループBのデータ変更端末端末に対して依頼するとともに、グループCで共有している共有データである状態テーブルの通信情報I1の変更をグループCのデータ変更端末に依頼する。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B1の通信情報I1を、グループBのデータ変更端末の変更に対して同期をとる。
そして、グループCに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B1の通信情報I1を、グループCのデータ変更端末の変更に対して同期をとる。
また、端末B1の通話処理部1は、自身のID番号に対応する状態テーブルの削除を、自身の含まれる分割領域を担当するデータ変更端末に依頼する。
また、端末B1の共有機能部6は、自身の共有記憶領域からグループCに対するメンバーテーブルを消去する。上述した処理により、端末B1はグループCからの離脱処理を終了する。ここで、端末B1は、グループCに編入している期間において、グループBとグループCとの双方のメンバーテーブルに存在、すなわちグループBとグループCとの双方に所属しているしているが、グループCからの離脱処理により、グループBのメンバテーブルにのみ記載されることとなる。
そして、直前の端末n−1は、端末nの状態を上述した処理により検出し、端末nが正常に動作していない(異常である)ことを検出すると、メンバ全員に対し、メンバテーブルの書き換え処理を同報通知する。
このとき、端末n−1は、端末nが異常であることを検出した場合、同一グループ内における端末n以外の他の全ての端末に対して、端末nが異常か否かの判定を依頼する。
そして、端末n−1は、他の1台以上の端末から、すなわちいずれかの端末から、端末nが異常であるとの判定結果が応答されると、メンバの端末全てに対して、端末nのメンバテーブル及び状態テーブルの書き換えを行うことを指示するため、同報通知を行う。
一方、端末n−1は、いずれの端末からも応答が無い場合、自身が異常である場合もあるため、グループサーバに対して、端末n及び端末n−1の状態を問い合わせる。
そして、端末n−1は、端末nが異常であるとグループサーバから通知されると、共有記憶領域からの端末nの削除を依頼する同報通知を行い、自身が異常であることを通知されると、自身を共有記憶領域から削除する事を依頼する同報通知を行い、グループから離脱する。
また、グループ内に2台しか端末が存在しないとき、互いに異常であると検出した場合、上述したように監視対象以外の端末に確認を依頼することができないため、直接に、グループサーバに対して、端末n及び端末n−1の状態を問い合わせる。
同様に、端末n−1は、グループに所属する全ての端末に対して、メンバーテーブルから端末nを削除することを同報通知する。
そして、グループに所属する各端末は、端末nの異常を検出した端末、すなわち端末n−1からの同報通知により、端末nの状態テーブルのデータを削除し、かつメンバーテーブルから端末nを削除する。
上述した検出処理により、グループ内の各端末は、自身の監視する端末がすでにグループに存在しないことを検出した場合や、その端末が故障して通話処理が行えないことを検出した場合、グループメンバである全ての端末に対して同報通知し、メンバーテーブルにおけるこの端末(異常が検出された端末)の削除、及び状態テーブルのデータの削除を要求し、グループ内の各端末が相互に異常か否かを監視している。
次に、グループBに参加した端末B1(発呼元)が同一グループBに所属する端末B2(着呼先)に電話をかけ、着呼先の端末B2が先にオンフック状態になった場合の回線の切断のシーケンスを図8を用いて説明する。
図8のシーケンス図は、図6及び図7のステップS7から後のシーケンス処理を示している。
この処理の説明において、共有記憶領域における共有データの同期処理を、一例として、「グループ内におけるコールシーケンス」と同様に、先の「グループ内の共有記憶領域の同期処理」における”a”の方法を用いて説明する。
また、グループ内で共有する共有データの変更を同期を取って行う処理は、すでに説明した「グループ内におけるコールシーケンス」と同様のため、データ変更端末に同期処理を依頼するとして、データ変更端末の変更処理について、以降の説明において省略する。
これにより、データ変更端末は、端末B2からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信状態I1を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の通信状態I1を、「着信呼出中」から「着信通話中」への書き替え処理の実行を促す通知を同報する。
また、端末B2の通話処理部1は、新たに「着信通話中」に状態が変更してからの経過時間の計数を開始した後、所定の時間毎に計数した時間を経過時間T1へ書き込む同期処理を、自端末のID番号とともに、分割領域Q2を担当しているデータ変更端末へ送信して依頼する。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の経過時間T1を、端末B2が計数した時間への変更に対してグループ内の同期をとる。
このとき、端末B2の通話処理部1は、スピーカから出力していた着信音を停止し、通話可能となったことを利用者に通知する。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B1の通信情報I1を、「呼出中」から「通話中」への変更に対してグループ内の同期をとる。
これにより、データ変更端末は、端末B1からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の経過時間T2を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の経過時間T2を、端末B1が計数した時間への書き替え処理の実行を促す通知を同報する。
このとき、端末B1の通話処理部1は、スピーカから出力していた読び出し音を停止し、通話可能状態(すなわち、回線が接続された状態)となったことを利用者に通知し、通話を促す。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信情報I1を、「着信通話中」から「切断中」への変更に対してグループ内の同期をとる。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信情報I2を、「通話中」から「予約消中」への変更に対してグループ内の同期をとる。
これにより、データ変更端末は、端末B2からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信状態I1を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるID番号が端末B2の通信状態I1を、「着信通話中」から「空き」への書き替え処理の実行を促す通知を同報する。
そして、グループBに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのID番号が端末B2の通信情報I1を、「着信通話中」から「空き中」への変更に対してグループ内の同期をとる。
これにより、端末B1及び端末B2双方は、ステップS0の待ち受け状態(発呼及び着呼のいずれも可能な状態)へ戻る。
上述の説明は、同一グループBにおける着呼先の端末B2とにおける回線の切断(着呼先が先にオンフック状態となった際の回線の切断)のシーケンスを説明したが、グループ間においても同様の処理が行われる。
端末のグループからの離脱は、参加しているグループから、また編入しているグループからも、処理方法として同様である。
すでに述べたように、通話終了時のステップS8において、端末B1の通話処理部1は、グループCから離脱する必要があるため、メンバーテーブルからの自身の削除をグループ内の他の全ての端末に対して同報通知する。
また、端末B1の通話処理部1は、データ変更端末に対して、自身のID番号に対応する状態テーブルの削除を、グループCにおけるそれぞれの分割領域の担当のデータ変更端末に依頼する。
すなわち、端末B1自身がグループCに所属する各端末に対して、メンバーテーブルから端末B1を消去することを同報通知し、また、端末B1の状態テーブルのある分割領域に対応するデータ変更端末がグループCに所属する各端末に対して、端末B1の状態テーブルを消去することを同報通知する。
また、グループのメンバーである各端末は、参加または編入している端末が、離脱を通知せずに勝手にグループから離脱した場合を検出するため、グループに所属するメンバである端末を定期的に(所定の期間毎に)監視、すなわち、メンバーテーブルに記載されている順番に、すなわち、自身の次にテーブルに記載されているメンバーが存在するか、または正常に動作しているか否かを、上記メンバに対して確認パケットを送信して、この確認パケットに対する応答パケットにより検出する(他の端末の監視を行う)。このとき、テーブルの最後に記載されている端末は、テーブルの最初に記載されている端末の監視を行う。
そして、直前の端末n−1は、端末nの状態を上述した処理により検出し、端末nが正常に動作していない(異常である)ことを検出すると、メンバ全員に対し、メンバテーブルの書き換え処理を同報通知する。
このとき、端末n−1は、端末nが異常であることを検出した場合、同一グループ内における端末n以外の他の全ての端末に対して、端末nが異常か否かの判定を依頼する。
そして、端末n−1は、他の1台以上の端末から、すなわちいずれかの端末から、端末nが異常であるとの判定結果が応答されると、メンバの端末全てに対して、端末nのメンバテーブル及び状態テーブルの書き換えを行うことを指示するため、同報通知を行う。
一方、端末n−1は、いずれの端末からも応答が無い場合、自身が異常である場合もあるため、グループサーバに対して、端末n及び端末n−1の状態を問い合わせる。
そして、端末n−1は、端末nが異常であるとグループサーバから通知されると、共有記憶領域からの端末nの削除を依頼する同報通知を行い、自身が異常であることを通知されると、自身を共有記憶領域から削除する事を依頼する同報通知を行い、グループから離脱する。
また、グループ内に2台しか端末が存在しないとき、互いに異常であると検出した場合、上述したように監視対象以外の端末に確認を依頼することができないため、直接に、グループサーバに対して、端末n及び端末n−1の状態を問い合わせる。
同様に、端末n−1は、グループに所属する全ての端末に対して、メンバーテーブルから端末nを削除することを同報通知する。
そして、グループに所属する各端末は、端末nの異常を検出した端末、すなわち端末n−1からの同報通知により、端末nの状態テーブルのデータを削除し、かつメンバーテーブルから端末nを削除する。
上述した検出処理により、グループ内の各端末は、自身の監視する端末がすでにグループに存在しないことを検出した場合や、その端末が故障して通話処理が行えないことを検出した場合、グループメンバである全ての端末に対して同報通知し、メンバーテーブルにおけるこの端末(異常が検出された端末)の削除、及び状態テーブルのデータの削除を要求し、グループ内の各端末が相互に異常か否かを監視している。
2…着呼先グループ検出部
3…グループ内着呼先端末状態検出部
4…グループ間着呼先端末状態検出部
5…記憶部
6…共有機能部
Claims (22)
- ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、1つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有機能を有する電話交換システムであり、
前記各端末が、
通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出手段と、
着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出手段と、
着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出手段と、
検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理手段と
を有することを特徴とする電話交換システム。 - 前記グループ内着呼先端末状態検出手段及びグループ間着呼先端末状態検出手段が前記通信情報から着呼先が空き状態であることを検出すると、前記通話処理手段が着呼先の端末のグループの共有記憶領域に、通信情報として着呼情報を書き込むとともに、自身の通信情報として発信情報を書き込み、着呼先の端末の通話処理手段が前記着呼情報に基づき、自身の通信情報を変更することにより、相互の通話処理を行うことを特徴とする請求項1記載の電話交換システム。
- 共有記憶領域において各端末毎に、自身の端末情報を書き込む自端末情報記憶領域と、他の端末からみた通信状態を、該他の端末が端末情報として書き込む着信端末情報記憶領域とからなる状態テーブルが設けられていることを特徴とする請求項1または請求項2に記載の電話交換システム。
- 共有記憶領域において各端末毎に、端末が属するグループの全ての端末と、該端末のアドレスとが対応付けられたメンバテーブルが設けられていることを特徴とする請求項1から請求項3のいずれかに記載の電話交換システム。
- 発呼元である端末が、通話処理において、着呼先の端末のグループに編入し、該着呼先の端末の着信端末情報記憶領域における通信情報欄に着呼情報として予約中の情報を書き込むことにより発呼処理を行うことを特徴とする請求項4記載の電話交換システム。
- 着呼先である端末が、自身の共有記憶領域の着信端末情報記憶領域における通信情報欄に、発呼元の端末の予約中の情報の書込を検出することにより、自身が着呼の受け状態にあることを検出することを特徴とする請求項4記載の電話交換システム。
- 発呼側が発呼中において、着呼側の着信端末情報記憶領域における通信情報欄に着呼情報として予約中の情報を書き込む際、あらかじめ設定されている所定の回数、予約中の情報の書き込み処理を行えなければ、呼の切断を行うことを特徴とする請求項3から請求項6のいずれかに記載の電話交換システム。
- 発呼処理及び着呼処理の状態遷移後に、着呼側の共有記憶領域における自端末情報記憶領域及び着信端末情報記憶領域各々の経過時間を、着呼側及び発呼側双方が検出し、経過時間のずれが所定値を超えているか否かで呼の切断の有無を判定することを特徴とする請求項6または請求項7に記載の電話交換システム。
- 着信中のOFFフック期間において、着呼側が、自身の状態を変更してから計数した経過時間と、発呼側がOFFフック状態に変更するまでの経過時間とを検出して、経過時間の差が予め設定した時間を超えたか否かで呼の切断の有無の判定を行うことを特徴とする請求項8記載の電話交換システム。
- 着呼側が共有記憶領域の着信端末情報記憶領域における通信情報欄の発呼側の状態を参照し、自身への通話の状態でなくなったことを検出すると接続を切断することを特徴とする請求項3から請求項9のいずれかに記載の電話交換システム。
- 端末がグループから離脱した際、該端末の情報が共有記憶部に残っている場合、所定の端末が共有記憶部から離脱した端末の情報を消去することを特徴とする請求項1から請求項10のいずれかに記載の電話交換システム。
- 前記着呼先グループ検出手段が、発呼の処理の際に、前記着呼先の属するグループの識別番号を検出する処理を行うことを特徴とする請求項1から請求項11のいずれかに記載の電話交換システム。
- 着呼先グループ検出手段が、着呼先の電話番号に対して所定の演算を行い、該演算結果としてグループの識別番号を求めることを特徴とする請求項12に記載の電話交換システム。
- 着呼先グループ検出手段が、電話番号とグループの識別番号との対応表を有する端末管理サーバに問い合わせて、問い合わせ結果として、グループの識別番号を求めることを特徴とする請求項12に記載の電話交換システム。
- 着呼先グループ検出手段が、グループ内の他の端末に対し、電話番号に対応するグループ番号を問い合わせて、問い合わせ結果として、グループの識別番号を求めることを特徴とする請求項12に記載の電話交換システム。
- 着呼先グループ検出手段が、共有記憶部に記憶されている電話番号とグループ番号との対応表により、電話番号に対応したグループ番号を抽出し、抽出結果として、グループの識別番号を求めることを特徴とする請求項12に記載の電話交換システム。
- グループ内の各共有記憶領域の記憶内容の同期をとるため、共有記憶領域に記憶されている共有データの変更を検出して、各端末に変更内容を同報するデータ変更端末が設けられていることを特徴とする請求項1から請求項16のいずれかに記載の電話交換システム。
- 前記データ変更端末が同報処理を行う毎に、グループ内の端末を順に次のデータ変更端末として設定することを特徴とする請求項17に記載の電話交換システム。
- 前記データ変更端末の通知により、各端末がデータ変更端末の共有記憶領域のデータを読み込み、共有記憶領域の同期をとることを特徴とする請求項17または請求項18に記載の電話交換システム。
- ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、1つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有機能を有する電話交換方法であり、
前記各端末の行う通話過程が、
通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出過程と、
着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出過程と、
着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出過程と、
検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理過程と
を有することを特徴とする電話交換方法。 - ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、1つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有処理を有する電話交換をコンピュータに実行させるプログラムであり、
前記各端末の行う通話処理が、
通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出処理と、
着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出処理と、
着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出処理と、
検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理処理と
を有するコンピュータの実行可能なプログラム。 - ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、1つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有機能を有する電話交換システムに用いる端末であり、
通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出手段と、
着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出手段と、
着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出手段と、
検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理手段と
を有することを特徴とする端末。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005343937A JP4037432B2 (ja) | 2005-11-29 | 2005-11-29 | 電話交換システム及び電話交換方法及び電話交換プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005343937A JP4037432B2 (ja) | 2005-11-29 | 2005-11-29 | 電話交換システム及び電話交換方法及び電話交換プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007150841A true JP2007150841A (ja) | 2007-06-14 |
JP4037432B2 JP4037432B2 (ja) | 2008-01-23 |
Family
ID=38211692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005343937A Expired - Fee Related JP4037432B2 (ja) | 2005-11-29 | 2005-11-29 | 電話交換システム及び電話交換方法及び電話交換プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4037432B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009033258A (ja) * | 2007-07-24 | 2009-02-12 | Nippon Telegr & Teleph Corp <Ntt> | 通信装置、通信方法および通信プログラム |
WO2012014824A1 (en) * | 2010-07-28 | 2012-02-02 | Ricoh Company, Ltd. | Transmission management system and transmission system |
JP2013232931A (ja) * | 2010-07-28 | 2013-11-14 | Ricoh Co Ltd | 伝送管理システム、伝送システム、伝送管理システム用プログラム、及び、接続方法 |
-
2005
- 2005-11-29 JP JP2005343937A patent/JP4037432B2/ja not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009033258A (ja) * | 2007-07-24 | 2009-02-12 | Nippon Telegr & Teleph Corp <Ntt> | 通信装置、通信方法および通信プログラム |
WO2012014824A1 (en) * | 2010-07-28 | 2012-02-02 | Ricoh Company, Ltd. | Transmission management system and transmission system |
JP2012050063A (ja) * | 2010-07-28 | 2012-03-08 | Ricoh Co Ltd | 伝送管理システム及び伝送システム |
US20130117373A1 (en) * | 2010-07-28 | 2013-05-09 | Naoki Umehara | Transmission management system and transmission system |
JP2013232931A (ja) * | 2010-07-28 | 2013-11-14 | Ricoh Co Ltd | 伝送管理システム、伝送システム、伝送管理システム用プログラム、及び、接続方法 |
US8782229B2 (en) | 2010-07-28 | 2014-07-15 | Ricoh Company, Ltd. | Transmission management system and transmission system |
US9043399B2 (en) * | 2010-07-28 | 2015-05-26 | Ricoh Company, Ltd. | Transmission management system and transmission system |
US20150256998A1 (en) * | 2010-07-28 | 2015-09-10 | Naoki Umehara | Transmission management system and transmission system |
US9578491B2 (en) | 2010-07-28 | 2017-02-21 | Ricoh Company, Ltd. | Transmission management system and transmission system |
Also Published As
Publication number | Publication date |
---|---|
JP4037432B2 (ja) | 2008-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4386905B2 (ja) | 遠距離通信のエンドポイントのための効率的な負荷分散およびハートビート機構 | |
TW201006272A (en) | Method and apparatus for maintaining communications connections over a distributed wireless network | |
CN1894936B (zh) | 网络器件的后备 | |
EP1797688A1 (en) | System and methods for a survivable remote network | |
JP2009518879A (ja) | 通信システムおよび方法 | |
JP4522449B2 (ja) | 電話装置 | |
US7609663B2 (en) | Method for establishing a communication connection in a direct communication network | |
JP2006101528A (ja) | ループ通信チャネルの検出 | |
JP4037432B2 (ja) | 電話交換システム及び電話交換方法及び電話交換プログラム | |
US8515458B2 (en) | Wireless telephone system, relay device, and wireless telephone device | |
KR102185260B1 (ko) | 호 처리를 위한 릴레이 장치, 릴레이 장치에 의해 수행되는 호 처리 방법 및 호 처리 방법을 실행하는 프로그램이 기록된 기록매체 | |
JP4679483B2 (ja) | Ip通話端末切り替え装置及び方法 | |
CN103001987B (zh) | 一种数据处理方法和数据处理节点 | |
JP5110915B2 (ja) | 無線ip電話機及び無線ip電話機システム | |
US20060067327A1 (en) | Information distribution system, method and network devices | |
JP3915570B2 (ja) | インターネット電話装置及びプログラム | |
WO2009107494A1 (ja) | コールバックシステム、発信端末、電話中継サーバ、コールバック方法、及びコールバックプログラム | |
US8630254B2 (en) | Telephone line switching apparatus, telephone line switching system, telephone relay system, telephone relay method, telephone relay program | |
KR101397543B1 (ko) | 원넘버 VoIP 브릿지 호(Call) 제어시스템 및 방법 | |
JP5094163B2 (ja) | 無線ip電話機及び無線ip電話機システム | |
WO2017000482A1 (zh) | 一种语音协议切换方法和语音终端设备 | |
KR101041386B1 (ko) | 푸쉬서버를 이용하여 스마트폰에서 인터넷 전화를 연결하도록 하는 인터넷 전화 시스템 | |
JP5282439B2 (ja) | 電話アダプタ、電話端末および呼接続方法 | |
JP2006270195A (ja) | 発信規制装置及び発信規制方法 | |
JP2013211686A (ja) | サーバ装置、プログラム及び情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071015 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20071023 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071031 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101109 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111109 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121109 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131109 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141109 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |