(57)【要約】【課題】ソフトスイッチ等の集中システム（中継交換機）を用いず、複数のＩＰ電話端末等の端末間で通話ネットワークを構成して通話を行う電話交換システムを提供する。【解決手段】本発明の電話交換システムは、ネットワークに接続された複数の端末が、固有情報及び通信状態を示す端末情報を共有するグループを形成し、各グループ毎に、同一のグループに属する端末の端末情報を格納する共有記憶領域を複数の端末に設け、端末の編入又は離脱を含む端末状態の遷移による端末情報の変更毎に、共有記憶領域の情報の同期を取り、着呼先が発呼元と同一グループか否かを検出し、着呼先が同一グループの場合、グループ内の共有記憶領域で着呼先の通信情報を検出し、着呼先が異なるグループの場合、着呼先の端末の属するグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出し、この通信情報により着呼先の端末と通話処理を実行する。【選択図】図１
2007150841.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、１つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有機能を有する電話交換システムであり、
前記各端末が、
通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出手段と、
着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出手段と、
着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出手段と、
検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理手段と
を有することを特徴とする電話交換システム。
【請求項２】
前記グループ内着呼先端末状態検出手段及びグループ間着呼先端末状態検出手段が前記通信情報から着呼先が空き状態であることを検出すると、前記通話処理手段が着呼先の端末のグループの共有記憶領域に、通信情報として着呼情報を書き込むとともに、自身の通信情報として発信情報を書き込み、着呼先の端末の通話処理手段が前記着呼情報に基づき、自身の通信情報を変更することにより、相互の通話処理を行うことを特徴とする請求項１記載の電話交換システム。
【請求項３】
共有記憶領域において各端末毎に、自身の端末情報を書き込む自端末情報記憶領域と、他の端末からみた通信状態を、該他の端末が端末情報として書き込む着信端末情報記憶領域とからなる状態テーブルが設けられていることを特徴とする請求項１または請求項２に記載の電話交換システム。
【請求項４】
共有記憶領域において各端末毎に、端末が属するグループの全ての端末と、該端末のアドレスとが対応付けられたメンバテーブルが設けられていることを特徴とする請求項１から請求項３のいずれかに記載の電話交換システム。
【請求項５】
発呼元である端末が、通話処理において、着呼先の端末のグループに編入し、該着呼先の端末の着信端末情報記憶領域における通信情報欄に着呼情報として予約中の情報を書き込むことにより発呼処理を行うことを特徴とする請求項４記載の電話交換システム。
【請求項６】
着呼先である端末が、自身の共有記憶領域の着信端末情報記憶領域における通信情報欄に、発呼元の端末の予約中の情報の書込を検出することにより、自身が着呼の受け状態にあることを検出することを特徴とする請求項４記載の電話交換システム。
【請求項７】
発呼側が発呼中において、着呼側の着信端末情報記憶領域における通信情報欄に着呼情報として予約中の情報を書き込む際、あらかじめ設定されている所定の回数、予約中の情報の書き込み処理を行えなければ、呼の切断を行うことを特徴とする請求項３から請求項６のいずれかに記載の電話交換システム。
【請求項８】
発呼処理及び着呼処理の状態遷移後に、着呼側の共有記憶領域における自端末情報記憶領域及び着信端末情報記憶領域各々の経過時間を、着呼側及び発呼側双方が検出し、経過時間のずれが所定値を超えているか否かで呼の切断の有無を判定することを特徴とする請求項６または請求項７に記載の電話交換システム。
【請求項９】
着信中のＯＦＦフック期間において、着呼側が、自身の状態を変更してから計数した経過時間と、発呼側がＯＦＦフック状態に変更するまでの経過時間とを検出して、経過時間の差が予め設定した時間を超えたか否かで呼の切断の有無の判定を行うことを特徴とする請求項８記載の電話交換システム。
【請求項１０】
着呼側が共有記憶領域の着信端末情報記憶領域における通信情報欄の発呼側の状態を参照し、自身への通話の状態でなくなったことを検出すると接続を切断することを特徴とする請求項３から請求項９のいずれかに記載の電話交換システム。
【請求項１１】
端末がグループから離脱した際、該端末の情報が共有記憶部に残っている場合、所定の端末が共有記憶部から離脱した端末の情報を消去することを特徴とする請求項１から請求項１０のいずれかに記載の電話交換システム。
【請求項１２】
前記着呼先グループ検出手段が、発呼の処理の際に、前記着呼先の属するグループの識別番号を検出する処理を行うことを特徴とする請求項１から請求項１１のいずれかに記載の電話交換システム。
【請求項１３】
着呼先グループ検出手段が、着呼先の電話番号に対して所定の演算を行い、該演算結果としてグループの識別番号を求めることを特徴とする請求項１２に記載の電話交換システム。
【請求項１４】
着呼先グループ検出手段が、電話番号とグループの識別番号との対応表を有する端末管理サーバに問い合わせて、問い合わせ結果として、グループの識別番号を求めることを特徴とする請求項１２に記載の電話交換システム。
【請求項１５】
着呼先グループ検出手段が、グループ内の他の端末に対し、電話番号に対応するグループ番号を問い合わせて、問い合わせ結果として、グループの識別番号を求めることを特徴とする請求項１２に記載の電話交換システム。
【請求項１６】
着呼先グループ検出手段が、共有記憶部に記憶されている電話番号とグループ番号との対応表により、電話番号に対応したグループ番号を抽出し、抽出結果として、グループの識別番号を求めることを特徴とする請求項１２に記載の電話交換システム。
【請求項１７】
グループ内の各共有記憶領域の記憶内容の同期をとるため、共有記憶領域に記憶されている共有データの変更を検出して、各端末に変更内容を同報するデータ変更端末が設けられていることを特徴とする請求項１から請求項１６のいずれかに記載の電話交換システム。
【請求項１８】
前記データ変更端末が同報処理を行う毎に、グループ内の端末を順に次のデータ変更端末として設定することを特徴とする請求項１７に記載の電話交換システム。
【請求項１９】
前記データ変更端末の通知により、各端末がデータ変更端末の共有記憶領域のデータを読み込み、共有記憶領域の同期をとることを特徴とする請求項１７または請求項１８に記載の電話交換システム。
【請求項２０】
ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、１つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有機能を有する電話交換方法であり、
前記各端末の行う通話過程が、
通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出過程と、
着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出過程と、
着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出過程と、
検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理過程と
を有することを特徴とする電話交換方法。
【請求項２１】
ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、１つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有処理を有する電話交換をコンピュータに実行させるプログラムであり、
前記各端末の行う通話処理が、
通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出処理と、
着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出処理と、
着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出処理と、
検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理処理と
を有するコンピュータの実行可能なプログラム。
【請求項２２】
ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、１つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有機能を有する電話交換システムに用いる端末であり、
通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出手段と、
着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出手段と、
着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出手段と、
検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理手段と
を有することを特徴とする端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトスイッチ等の集中システム（中継交換機）を用いずに、複数のＩＰ（Internet Protocol Address）電話端末等の端末装置（以下、端末）間で通話ネットワークを構成して通話を行う電話交換システム及び電話交換方法及び電話交換プログラムに関する。
【背景技術】
【０００２】
従来、複数の端末からなるグループに設けられ、グループ内の端末間において、共有する情報（共有データ）を記憶する共有メモリ上に格納されたデータの整合性を保証するための技術が知られている。ここで、共有メモリとは、各端末それぞれに、各々共有記憶領域として存在し、グループ内において同一の共有データが各々記憶されている。
例えば、特許文献１には、複数の端末における処理の負荷の軽減を図りながら、各端末に格納されている共有データの整合性を保持するデータ共有方法が開示されている。
【０００３】
この発明によれば、まずネットワークを介して相互に接続された複数の端末によってデータを共有するグループを構成する。
そして、グループ内で共有する基本データおよびグループ内の各端末に関するメンバーデータを含んだ共有データにおいて、基本データに更新が発生した場合、予め定められた所定の決定方法にしたがって、更新に関する更新情報をグループ内の各端末に対して同報送信をデータ更新端末が行う。
また、共有データにおいて、メンバーデータの更新に際しての同報は、グループ内の各端末，窓口端末及び他の端末を監視している端末が行う（実施形態に詳細に記述）。
【０００４】
各端末は、この同報端末に更新情報を送信し、同報端末により、共有データにおける更新情報をグループの各メンバーである端末に対して同報送信する。
ここで、各端末は、更新情報とともに、更新情報に対応する判別用番号を同報端末に送信する。一方、更新情報とともに、判別用番号を受信すると、同報端末は、受信する判別用番号よりも大きな判別用番号を新たな判別用番号とし、更新情報を同報送信する。ただし、このとき、同報端末は、受信した判別用番号と記憶している判別用番号とを比較し、受信した判別用番号の方が大きい場合に、同報送信する。
【０００５】
一方、各端末は、更新情報および新たな判別用番号を受信し、新たな判別用番号と記憶している判別用番号とを比較し、新たに受信した判別用番号が記憶している判別用番号よりも大きい場合、更新情報により共有データを更新する
したがって、各端末に格納されている共有データの整合性を保持しつつ、各端末の処理負荷を軽減することができる。
【特許文献１】特開２００１−３３１４６９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
一方、近年、ＶｏＩＰ（Ｖｏｉｃｅ  ｏｖｅｒ  ＩＰ）を利用したＩＰ電話端末が普及しつつある。ＩＰ電話端末間のルーティング処理は、ソフトスイッチによって仲介される。
ソフトスイッチは、管理するＩＰ電話端末のＳＩＰ（Ｓｅｓｓｉｏｎ  Ｉｎｉｔｉａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）ＵＲＬ（アドレスデータベース）を保有し、各ＩＰ電話端末は、起動時にソフトスイッチにアクセスすることで、自ＩＰアドレスを登録する。
ＩＰアドレスの登録後、相手のＩＰ電話端末（着信側）をコールする場合、発信側のＩＰ電話端末は、ソフトスイッチにアクセスすることで相手のＩＰ電話端末のＩＰアドレスをＳＩＰ  ＵＲＬから取得し、リクエストを送信する。
【０００７】
相手のＩＰ電話端末がこのリクエストに対して応答すると、それ以後は、ソフトスイッチを介さずに発呼側、着呼側のＩＰ電話端末間で直接データストリーミングを開始することで音声通話を実現する。
すなわち、ソフトスイッチにおいては、ＩＰ電話端末の起動／終了時のＳＩＰ  ＵＲＬへのアドレス登録処理、通話の際のコネクション接続制御処理、転送電話の際の相手のＩＰ電話端末の応答状態監視処理等の処理が実施される。また、アドレス登録や端末監視処理については、各要求ごとにソフトウェアによる並列処理が実施される。
【０００８】
このように、現状ではＶｏＩＰを実現するにあたり、ソフトスイッチのような集中システムを採用している。なぜ集中システムを使用するかというと、通信サービスは発呼側のＩＰ電話端末と着呼側のＩＰ電話端末とが連動して制御される必要があるためである。
すなわち、集中システムは、発呼側及び着呼側のＩＰ電話端末の状態を管理し、これに連動した呼処理（相手が話中である場合はこの着信電話を転送する等）を発呼側及び着呼側のＩＰ電話端末において実現するためには不可欠なものとなっている。
【０００９】
しかし、集中システムにおいて、実現すべきサービスが高度化（会議電話、留守番電話、保留転送機能）すると、発呼側及び着呼側のＩＰ電話端末が連動して実行すべき呼処理の内容がより複雑になる。
すると、一つ一つのサービスを同時に集中して実現するためには、ソフトウェア構成が非常に複雑なものになってしまうという問題点がある。
すなわち、集中システムが一つのサービスを新たに実装するには、システム全体の大幅な性能劣化や運用上起こり得る問題などを引き起こし、開発から設備を含め多大なコストが発生する。このため、ネットワークの利用効率を上げることによるＩＰ電話端末の低コストメリットよりも、開発コストや運用コストのデメリットが大きくなってしまうという問題点があった。
【００１０】
一方、既存の電話交換機等においては、この集中システムをサービス利用者数によって分割することで問題の解決を図っているが、この場合においては、新たに分割したシステム間の連動をどのようにして実現するかが問題となり、前述の問題を解決するには至っていない。
【００１１】
本発明は、このような事情を考慮してなされたものであり、その目的は、ソフトスイッチ等の集中システム（中継交換機）を用いずに、複数のＩＰ電話端末等の端末間で通話ネットワークを構成して通話を行うことができる電話交換システム及び電話交換方法及び電話交換プログラムを提供することにある。
【課題を解決するための手段】
【００１２】
本発明（１）の電話交換システムは、ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、１つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有機能を有しており、前記各端末が、通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出手段と、着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出手段と、着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出手段と、検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理手段とを有することを特徴とする
【００１３】
本発明（２）の電話交換システムは、前記グループ内着呼先端末状態検出手段及びグループ間着呼先端末状態検出手段が前記通信情報から着呼先が空き状態であることを検出すると、前記通話処理手段が着呼先の端末のグループの共有記憶領域に、通信情報として着呼情報を書き込むとともに、自身の通信情報として発信情報を書き込み、着呼先の端末の通話処理手段が前記着呼情報に基づき、自身の通信情報を変更することにより、相互の通話処理を行うことを特徴とする。
【００１４】
本発明（３）の電話交換システムは、共有記憶領域において各端末毎に、自身の端末情報を書き込む自端末情報記憶領域と、他の端末からみた通信状態を、該他の端末が端末情報として書き込む着信端末情報記憶領域とからなる状態テーブルが設けられていることを特徴とする。
【００１５】
本発明（４）の電話交換システムは、共有記憶領域において各端末毎に、端末が属するグループの全ての端末と、該端末のアドレスとが対応付けられたメンバテーブルが設けられていることを特徴とする。
【００１６】
本発明（５）の電話交換システムは、発呼元である端末が、通話処理において、着呼先の端末のグループに編入し、該着呼先の端末の着信端末情報記憶領域における通信情報欄に着呼情報として予約中の情報を書き込むことにより発呼処理を行うことを特徴とする。
【００１７】
本発明（６）の電話交換システムは、着呼先である端末が、自身の共有記憶領域の着信端末情報記憶領域における通信情報欄に、発呼元の端末の予約中の情報の書込を検出することにより、自身が着呼の受け状態にあることを検出することを特徴とする。
【００１８】
本発明（７）の電話交換システムは、発呼側が発呼中において、着呼側の着信端末情報記憶領域における通信情報欄に着呼情報として予約中の情報を書き込む際、あらかじめ設定されている所定の回数、予約中の情報の書き込み処理を行えなければ、呼の切断を行うことを特徴とする。
【００１９】
本発明（８）の電話交換システムは、発呼処理及び着呼処理の状態遷移後に、着呼側の共有記憶領域における自端末情報記憶領域及び着信端末情報記憶領域各々の経過時間を、着呼側及び発呼側双方が検出し、経過時間のずれが所定値を超えているか否かで呼の切断の有無を判定することを特徴とする。
【００２０】
本発明（９）の電話交換システムは、着信中のＯＦＦフック期間において、着呼側が、自身の状態を変更してから計数した経過時間と、発呼側がＯＦＦフック状態に変更するまでの経過時間とを検出して、経過時間の差が予め設定した時間を超えたか否かで呼の切断の有無の判定を行うことを特徴とする。
【００２１】
本発明（１０）の電話交換システムは、着呼側が共有記憶領域の着信端末情報記憶領域における通信情報欄の発呼側の状態を参照し、自身への通話の状態でなくなったことを検出すると接続を切断することを特徴とする。
【００２２】
本発明（１１）の電話交換システムは、端末がグループから離脱した際、該端末の情報が共有記憶部に残っている場合、所定の端末が共有記憶部から離脱した端末の情報を消去することを特徴とする。
【００２３】
本発明（１２）の電話交換システムは、前記着呼先グループ検出手段が、発呼の処理の際に、前記着呼先の属するグループの識別番号を検出する処理を行うことを特徴とする。
【００２４】
本発明（１３）の電話交換システムは、着呼先グループ検出手段が、着呼先の電話番号に対して所定の演算を行い、該演算結果としてグループの識別番号を求めることを特徴とする。
【００２５】
本発明（１４）の電話交換システムは、着呼先グループ検出手段が、電話番号とグループの識別番号との対応表を有する端末管理サーバに問い合わせて、問い合わせ結果として、グループの識別番号を求めることを特徴とする。
【００２６】
本発明（１５）の電話交換システムは、着呼先グループ検出手段が、グループ内の他の端末に対し、電話番号に対応するグループ番号を問い合わせて、問い合わせ結果として、グループの識別番号を求めることを特徴とする。
【００２７】
本発明（１６）の電話交換システムは、着呼先グループ検出手段が、共有記憶部に記憶されている電話番号とグループ番号との対応表により、電話番号に対応したグループ番号を抽出し、抽出結果として、グループの識別番号を求めることを特徴とする。
【００２８】
本発明（１７）の電話交換システムは、グループ内の各共有記憶領域の記憶内容の同期をとるため、共有記憶領域に記憶されている共有データの変更を検出して、各端末に変更内容を同報するデータ変更端末が設けられていることを特徴とする。
【００２９】
本発明（１８）の電話交換システムは、前記データ変更端末が同報処理を行う毎に、グループ内の端末を順に次のデータ変更端末として設定することを特徴とする。
【００３０】
本発明（１９）の電話交換システムは、前記データ変更端末の通知により、各端末がデータ変更端末の共有記憶領域のデータを読み込み、共有記憶領域の同期をとることを特徴とする。
【００３１】
本発明（２０）の電話交換システムは、ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、１つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有機能を有する電話交換方法であり、前記各端末の行う通話過程が、通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出過程と、着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出過程と、着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出過程と、検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理過程とを有する。
【００３２】
本発明（２１）の電話交換システムは、ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、１つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有処理を有する電話交換をコンピュータに実行させるプログラムであり、前記各端末の行う通話処理が、通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出処理と、着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出処理と、着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出処理と、検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理処理とを有するコンピュータの実行可能なプログラムである。
本発明（２２）の端末は、ネットワークに接続された複数の端末が、各端末の固有情報及び通信状態を示す通信情報からなる端末情報を共有する、１つまたは複数の端末からなるグループを形成し、各グループ毎に、同一のグループに属する全ての端末の端末情報を格納する共有記憶領域が複数の端末に設けられ、端末の編入または離脱を含む端末状態の遷移により、グループに属する端末情報が変更される毎に、各グループ内の共有記憶領域の情報の同期を取るため、共有記憶領域に記憶されている端末情報の更新制御を行うネットワーク情報共有機能を有する電話交換システムに用いる端末であり、通話処理を行う際、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出手段と、着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出手段と、着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出手段と、検出された通信情報に基づき、着呼先の端末との間の通話処理を実行する通話処理手段とを有することを特徴とする。
【発明の効果】
【００３３】
以上説明したように、本発明によれば、各々の端末（例えば、ＩＰ電話端末）において、着呼先の端末の電話番号から、この端末の所属するグループ番号を求めて、着呼先を識別して、着呼先の端末と発呼元の端末（自端末）との間で回線を接続（確立）し、通話処理を実行するため、従来のＩＰ電話のネットワークのように、ネットワーク間にソフトスイッチ等の中継交換機を介することなく、インターネット等の通信網を利用した電話通信網を構成することができ、網全体を安価に構成することが可能となる。
【００３４】
また、本発明によれば、ネットワークに接続されている端末において、単数または複数の端末によりグループを構成することにより、このグループに所属する端末に対し、共有記憶領域において電話通信に必要なデータを共有させることができ、グループに属する端末数を適正に制御することにより、共有記憶領域自体の記憶容量の大幅な増加を抑制させ、簡易にＩＰ電話のシステムを構成させることができる。
【発明を実施するための最良の形態】
【００３５】
本発明の電話交換システムは、図１に示すように、ネットワークに接続された複数の端末がグループを構成し、同一グループに参加（所属）している端末全ての固有情報及び通信情報からなる端末情報を共有するための共有記憶領域として、グループ内における共有メモリが設けられている。
また、この共有記憶領域は複数の端末に設けられ、例えば、全ての端末の記憶部に特定の領域として確保されている。
上記共有記憶領域は、各端末が各々有している異なるメモリ領域であるが、予め設定された、グループとなった端末間において共有される共有データが記憶され、他の端末の情報を読み込む際、他の端末の共有記憶領域からその情報が読み込まれ、自身の共有記憶領域に書き込まれる。
すなわち、共有記憶領域は、各端末の記憶部にそれぞれ設けられており、グループ内の各端末の通話処理に関して共有する必要のある共有データ（後に説明するメンバーテーブル及び状態テーブルなど）を記憶する領域として定義される。
【００３６】
上記共有記憶領域は、ネットワーク情報共有機能により、グループに属する端末の状態の遷移（参加，編入，離脱，故障など）によって、グループの端末情報（端末状態を示す情報、例えばメンバーテーブルや状態テーブルなどの記述）が変更となると、変更となった際に、共有記憶領域の対応する端末の端末情報（各端末が通信可能か否か、例えば他の端末と通信中であるか否かの通信状態を示す通信情報等からなる状態テーブル、及びグループに所属する端末を示すメンバーテーブルを少なくとも含む）が更新制御され、変更された内容に対応して同期が取られる。
ここで、参加は端末が自グループとなるグループに加わることを意味し、編入はすでにグループに参加している端末が他のグループに加わることを意味し、離脱は参加あるいは編入したグループから抜ける（グループのメンバーで無くなる）ことを意味し、故障は端末が通信を行う機能に障害を受けている状態を示している。
また、このグループ内に所属できる端末の数は、共有データを相互に読み出し及び書き込みが所定の時間内にて行われる範囲、また共有記憶領域として確保されるメモリ容量の上限から決定される。
【００３７】
また、上記各端末は、例えば、ＩＰ電話端末であり、通話処理を行う際、入力される電話番号から、着呼先と発呼元である自身とが同一グループに属しているか否かを検出する着呼先グループ検出部と、着呼先が自身と同一グループである場合、グループ内の共有記憶領域における着呼先の通信情報を検出するグループ内着呼先端末状態検出部と、着呼先が自身の所属するグループと異なるグループの場合、着呼先の端末の属するグループの共有記憶領域に自身の端末情報の登録処理を行い、着呼先のグループに編入し、このグループ内の共有記憶領域における着呼先の通信情報を検出するグループ間着呼先端末状態検出部と、検出された通信情報に基づいて、着呼先の端末との間の通話処理を実行する通話処理手段とを有している。
【００３８】
これにより、本発明においては、発呼元の端末が中継交換機を介さずに、着呼先、すなわち通話先の端末の通信情報を、自身の記憶部にある共有記憶領域から読み出すことにより通信状態を取得し、通話可能な状態であることを検出した場合、発呼元の端末が自身の通信状態及び着呼先の端末の通信状態を変更することにより通話処理を行うことができる。
また、発呼元の各端末は、着呼先グループ検出部により、着呼先の端末の電話番号から、着呼先の端末のグループを所定の方法（後に述べる）により検出し、着呼先の端末が同一グループに所属していないことを検出した場合、通話処理部により着呼先の端末が所属するグループに編入する。
【００３９】
この結果、本発明においては、発呼側の端末が前述した集中システムの処理を、基本的に代行するため、複数の端末同士の通話処理を制御する複雑な接続処理を行う集中システムの必要が無くなる。
一方、本発明においては、発呼元となる各端末において、着呼先の端末の通信情報を処理する性能を保証することで、通話処理を行う通信サービス全体に参加する端末の総数が変動した場合においても、常に通話サービスに対して一定の品質及び性能等を保証することができる。
【００４０】
以下、本発明の一実施形態による電話交換システムを図面を参照して説明する。図１は同実施形態のネットワークの構成例を示すブロック図である。
この図において、ネットワークＩに接続されている複数の端末Ａ１〜Ａ６，Ｂ１〜Ｂ６，Ｃ１〜Ｃ６，…が接続されており、複数の端末がグループを形成、すなわち、端末Ａ１〜Ａ６がグループＡ，端末Ｂ１〜Ｂ６がグループＢ，端末Ｃ１〜Ｃ６がグループＣを形成している。
【００４１】
ここで、各端末（Ａ１〜Ａ６，Ｂ１〜Ｂ６，Ｃ１〜Ｃ６，…）は図２に示す構成となっている。図２は一実施形態における各端末の構成例を示すブロック図である。
通話処理部１は、通話処理にて生じる状態遷移、例えば、各グループに対して編入，参加，離脱などを含む端末状態の変化に対応して、共有記憶領域（本実施形態では状態テーブル及びメンバーテーブル）における発呼元（自身）及び着呼先の端末状態の書き替え処理を、グループに所属する（メンバーである）全端末の同期を取って行う。この同期を取ってグループ内の全ての端末が同期して、各々の共有記憶領域のデータの書き換えを行う処理については後に詳述する。
着呼先グループ検出部２は、着呼先の端末が発呼元の端末である自身と同一のグループに所属しているか否か、すなわち着呼先の端末が所属するグループを、着呼先の端末に付与されている電話番号から検出し、通話処理部１へ通知する。
【００４２】
グループ内着呼先端末状態検出部３は、上記着呼先グループ検出部２が着呼先の端末が、発呼元端末である自身と同一のグループに属していることを検出した場合、自身の属するグループの共有記憶領域に記憶されている着呼先の通信情報を参照して、着呼先の端末の通信状態を検出し、通話可能か否かを通話処理部１へ通知する。
グループ間着呼先端末状態検出部４は、上記着呼先グループ検出部２が着呼先の端末が、発呼元端末である自身と異なるグループに属していることを検出した場合、着呼先の端末が属するグループに参加した後、編入したグループの共有記憶領域に記憶されている着呼先の通信情報を参照して、着呼先の端末の通信状態を検出し、通話可能か否かを通話処理部１へ通知する。
【００４３】
記憶部５は、端子毎に設けられており、各端末における制御及び演算に必要なプログラムやデータが記憶されており、所定の容量の領域が、グループ内の端末で共有する共有データ（例えば、状態テーブル及びメンバーテーブルなどの全端末が通話処理を行うに際して常に同期する必要のあるデータ）を記憶する本実施形態における共有記憶領域として確保されている。
共有機能部６は、グループのメンバーである各端末の共有記憶領域に記憶されている端末情報の遷移にともない、グループにおける全ての端末における記憶部５の共有記憶領域に記憶されている共有データである端末情報の同期処理を行う。
【００４４】
ここで、グループ内の各端末の共有記憶領域にて同期をとるとは、上述したように、グループのメンバーである（所属する）各端末間における通信、すなわち通話処理に必要なデータを共有データとして、各端末間で同一内容の共有データを記憶している必要があるため、共有記憶領域に記憶されている共有データを、グループに所属する端末間で同一とする処理を行うことを示す。
また、他のグループに編入した端末は、参加している自グループの共有データを自グループの各端末と共有し、かつ編入した他グループの共有データを他グループの各端末と共有することとなる。
【００４５】
このとき、編入した端末の自グループの他の端末は他グループの共有データの共有を行わず、編入された他グループの端末は編入した端末の自グループの共有データの共有を行わない。
すなわち、グループＡに参加している端末Ａ１がグループＢに編入した場合を例に取ると、端末Ａ１はグループＡに所属している他の端末と、グループＡの状態テーブル及びメンバーテーブルを共有データとして共有し、かつ編入先のグループＢの状態テーブル及びメンバーテーブルを共有データとして共有する。
しかしながら、端末Ａ１以外のグループＡの他の端末は、グループＢの共有データをグループＢに所属する端末（編入した端末Ａ１を含む）と共有しない。
また、編入した端末Ａ１以外のグループＢの端末（グループＢに参加している端末）は、グループＡの共有データを共有しない。
【００４６】
＜着呼先のグループ検出＞
上述したように、発呼側の端末Ａ１が着呼側の端末Ｂ１に電話をする際、発呼側の端末Ａ１は、着呼側の端末の電話番号を入力して、着呼先グループ検出部により、この着呼側の端末が参加する共有記憶領域を共有するグループを識別して、グループ番号を得る。
上記着呼先グループ検出部２における着呼先の端末の所属するグループの検出は、着呼先グループ検出部２の処理において下記に示す方法のいずれを用いても良い。
【００４７】
Ａ．着呼先の電話番号から所定の演算によって、一意に着呼先の端末の所属するグループ番号を求める。
Ｂ．着呼先の電話番号を専用サーバ（例えば、グループサーバ）に問い合わせて、検索結果として、着呼先の端末のグループ番号を得る。
この専用サーバは、システム内の全てのグループを管理し、各グループ番号とグループに属する端末（メンバー）の電話番号との対応関係を示すテーブルのグループＤＢ（データベース）を有している。
【００４８】
Ｃ．着呼先の電話番号を自グループの他のメンバーに問い合わせて、いずれかのメンバーが他のグループに編入している場合、その他のグループの各メンバーに対しても上記電話番号の問い合わせを行うというように、メンバーが編入して関連している他のグループに電話番号の問い合わせを行い、目的とする電話番号の情報を徐々に手繰り寄せていく。
しかしながら、手繰り寄せるグループがなくなり、この時点で電話番号の所属するグループが検出されない場合、システム内の全てのグループを管理し、各グループ番号とメンバーの電話番号との対応関係を示すテーブルのグループＤＢ（データベース）を有する特定のグループ（Ｂにおける専用サーバの集合体）に問い合わせ、電話番号の所属するグループ番号を得る。
【００４９】
初めから着呼先の電話番号を上記特定グループに対して問い合わせると、システム全体の各メンバーから問い合わせが集中し、大きな負荷がかかりシステム管理の処理効率の低下を招いてしまう。
このため、Ｃの着呼先の電話番号の検索処理は、電話番号の属するグループのグループ番号の検索において、できうる限り各端末間での問題解決を行わせて、特定グループへの負荷の集中を抑制する構成とされている。
【００５０】
Ｄ．すでに述べた様に、各グループ毎に、他のグループとの間におけるデータの送受信を行う特定の端末である窓口端末が１つあるいは複数個設けられており、この方法は窓口端末を利用して、電話番号が属するグループのグループ番号を検出する方法である。
すなわち、各グループが関連する他のグループの窓口端末のＩＤと電話番号とグループ番号との対応をしめすルーティングテーブルを共有記憶領に有している。
各グループにおいて、着呼先の電話番号が自グループ内のメンバーテーブルにて検出されない場合、電話番号の所属グループに検索を自グループの窓口端末に対して依頼する。
【００５１】
これにより、窓口端末は、上記ルーティングテーブルに記載されている他のグループのいずれかの窓口端末に対して、電話番号を通知して着呼先の端末の検索を依頼する。
このとき、上記窓口端末は、グループサーバに対して、電話番号を通知して他のグループの窓口端末のＩＰアドレスを検索する依頼のアクセスを行い、得られたＩＰアドレスを用いて、他のグループの窓口端末に対して、アクセスを行う。
また、この他のグループの窓口端末が自グループ内に依頼された電話番号がなければ、さらに、次のグループの窓口端末に電話番号の検索依頼を行う。
グループ内に上記窓口端末が複数設けられており、グループサーバに対して参加及び編入、離脱する窓口端末の通知を行う、すなわち参加に関しては予めグループに存在する窓口端末のいずれかが新たな窓口端末の参加及び編入をグループサーバに通知し、離脱に関してはグループに残留する窓口端末のいずれかが通知する。ここで、端末が存在しなかったグループに対して、端末が参加する際、最初に参加した端末が窓口端末となり、自身の参加をグループサーバに対して通知する。
【００５２】
以下、グループ検出方法ＡからＤについて順次説明する。
−Ａ．の方法−
電話する相手の番号から、演算によって一意にグループ番号を求める方法であり、例えば、以下のａ，ｂ，ｃの３つの方法がある。
ａ．電話番号を直接に演算する
着呼先グループ検出部２が、「電話番号  ÷  Ｎ  ＝  グループ番号」の演算を行い、演算結果をグループ番号として出力する。
電話番号を予め設定した任意の数値Ｎで除算して、グループ番号を演算により求める。
このとき、グループ番号が予め整数値となるように電話番号と数値Ｎとを設定しておくようにしても良いし、除算した結果の小数点以下を切り捨てて、整数値としたものをグループ番号として用いるようにしても良い。
【００５３】
ｂ．電話番号の一部をグループ番号に対応付ける
電話番号「ＸＸＸＸ−ＹＹ」である場合、電話番号からグループを識別する方法として、電話番号の下２桁（ＹＹ）をワイルドカードの箇所として、グループと紐付けるように、すなわち、電話番号と、この電話番号の下２桁以外の上位桁（ＸＸＸＸ）のグループ番号とを対応付けて電話番号の体系を構築することが考えられる。
これにより、入力される電話番号から、設定された上位桁を抽出することにより、グループ番号を一意に求めることができる。
【００５４】
ｃ．電話番号とグループ番号との対応関係テーブル
この構成の場合、共有記憶領域に、グループ番号と、このグループ番号の示すグループに属する端末の電話番号とを対応付けた対応関係テーブルが設定されている。
そして、着呼先グループ検出部は、電話番号が入力されると、上記対応関係テーブルを参照して、入力された電話番号に対応するグループ番号を抽出して出力する。
ここで、電話番号「ＸＸＸＸ−ＹＹ」である場合、電話番号からグループを識別する方法として、電話番号の下２桁（ＹＹ）をワイルドカードの箇所として、電話番号とグループとを紐付けるように、電話番号の下２桁以外の上位桁（ＸＸＸＸ）の番号とグループ番号との対応関係テーブルを構築することが考えられる。
【００５５】
具体的には、例えば、電話番号の下数桁をワイルドカードの箇所として、これに含まれる電話番号にグループを割り当てる（下２桁とすると００〜９９までの１００件分の電話番号を１つのグループに割り当てる）。
これにより、着呼先グループ検出部２は、下２桁以外の上位桁をグループ番号に対応付けておくことにより、電話番号を右側にシフトさせ、電話番号の下３桁目が１桁目となる演算を行い、この数値を上記対応関係テーブルにより検出し、対応するグループ番号を読み出すことにより、一意に着呼先のグループ番号を検出する処理を行うことができる。
【００５６】
−Ｂ．の方法−
例えば、グループ番号毎に、このグループ番号に属する端末の電話番号との対応関係が示された対応テーブルを有するルーティング専用の専用サーバを、各グループ毎に、あるいは複数のグループ単位に設けても良い。
端末は、上記ルーティング専用の専用サーバに対して、着呼先の端末の電話番号を出力し、着呼先の端末が属するグループのグループ番号の検索依頼を行う。
これにより、上記専用サーバは、記憶している対応テーブルを参照して、端末から入力される電話番号に対応したグループ番号を読み出し、このグループ番号を端末に対して通知する。
【００５７】
−Ｃ．の方法−
例えば、各端末が着呼先の端末の電話番号のグループを検索する際、自グループのメンバーである他の端末に対し、着呼先の端末の電話番号を送信し、この電話番号に対応するグループ番号の問い合わせを行う。
このとき、例えば、グループＡの端末Ａ１が着呼先の電話番号のグループ検出を行う際、自グループ内のグループ内メンバ共有記憶領域におけるメンバーテーブル存在していないことを検出した場合、電話番号を自グループ内の各端末Ａ２〜Ａ５に対して問い合わせて、この電話番号の検索を依頼する。
【００５８】
このとき、グループＡ内の端末Ａ５が他のグループ（グループＢ）に属していると、端末Ａ５が上記着呼先の電話番号がグループＢの共有しているグループ内メンバ共有記憶領域のメンバーテーブルに存在しているか否かの検出、すなわち、グループＢ内の端末の電話番号の検索を行う。
ここで、端末Ａ５は、グループＢのメンバーテーブルに着呼先の電話番号が存在することを検出すると、端末Ａ１に対して検出されたグループ番号を通知する。
【００５９】
一方、端末Ａ５は、グループＢのメンバーテーブルにおいて、着呼先の電話番号が存在しないことを検出すると、グループＢの各端末に対して、着呼先の電話番号を通知して、グループ番号の問い合わせを行う。
このとき、グループＢの端末のいずれかが他のグループに対して編入している場合、この端末が端末Ａ５に検索することを通知し、グループＢに編入した端末Ａ５と同様の検索処理を行う。
【００６０】
また、グループＢの各端末は他のグループに編入していない場合、端末Ａに対して編入していないことを示す通知を行い、端末Ａ５はグループＢ内の全ての端末から、編入していない通知を受信すると、端末Ａの検索する着呼先の電話番号が属するグループ番号の検索ができないことを示す通知を端末Ａ１に対して行う。
そして、端末Ａ１は自グループ内の他の全ての端末からグループ番号検索ができないことを示す通知を受信すると、各グループから構成されるシステム内に存在する全ての端末の電話番号と、この電話番号が属するグループのグループ番号との対応関係を示すグループ管理テーブルを有する端末からなる特定グループに対して、着呼先の電話番号を通知して、グループ番号の検索を依頼する。
ここで、上記特定グループ（システム内の全端末の電話番号とグループ番号とが管理されているサーバ群）は、各グループに端末が参加する際に、通知を受けるグループサーバを含み、このグループサーバから各グループに参加する端末の情報を得る。
【００６１】
−Ｄ．の方法−
すでに述べた様に、各端末が窓口端末に着呼先の電話番号の属するグループの検索を依頼することにより、窓口端末は、自グループ内に設けられた、他のグループの窓口端末とこの窓口端末の電話番号との対応を示すルーティングテーブルから、問い合わせを行う他のグループの窓口端末を選択し、選択した他のグループの窓口端末のＩＰアドレスをグループサーバに対して問い合わせ、得られたＩＰアドレスにより他のグループの窓口端末にアクセスし、着呼先の端末の電話番号の所属するグループ番号の検索を行う。
すなわち、グループＡにおいて端末Ａ１が着呼先の電話番号の所属するグループの検索を行う場合、窓口端末として設定されている端末、例えば端末Ａ２に対し、電話番号を通知してグループ番号の依頼を行う。
【００６２】
端末Ａ２は、端末Ａ１からの依頼を受信すると、ルーティングテーブルにあるグループＢの窓口端末から、例えば、端末Ｂ１を選択し、この選択された端末Ｂ１の電話番号をグループサーバに対して送信して、グループサーバから端末Ｂ１のＩＰアドレスを得る。
そして、端末Ａ２は、着呼先の電話番号を端末Ｂ１に送信して、この電話番号の端末がグループＢに存在するか否かの検出を依頼する。
このとき、端末Ｂ１は、メンバーテーブルを参照して、依頼された電話番号の有無の検出を行い、自グループのメンバーテーブルにおいて存在を検出した場合、グループＢに存在すること（すなわち、グループＢのグループ番号）を端末Ａ２へ通知する。
【００６３】
一方、端末Ｂ１は、自グループのメンバーテーブルにおいて、依頼された電話番号が検出されない場合、共有記憶領域内に記憶されているルーティングテーブルを参照し、グループＡ以外のグループを検索し、例えばグループＣが検索されたとする。
端末Ｂ１は、グループＣの窓口端末から、例えば端末Ｃ１を選択し、この選択された端末Ｂ１の電話番号をグループサーバへ送信して、グループサーバから端末Ｃ１のＩＰアドレスを得る。
そして、端末Ｂ１は、着呼先の電話番号を端末Ｃ１に送信して、この電話番号の端末がグループＣに存在するか否かの検出を依頼する。
このとき、端末Ｃ１は、メンバーテーブルを参照して、依頼された電話番号の有無の検出を行い、自グループのメンバーテーブルにおいて存在を検出した場合、グループＣに存在することを端末Ａ２へ、端末Ｂ１を介して通知する。
【００６４】
＜グループ内の共有記憶領域の同期処理＞
また、共有機能部６は、グループ内の同期をとる場合、以下に示すいくつかの方法が考えられる。
ａ．所定の端末が同報を行い、同一グループ内にて共有する端末情報の一斉書き替え
各グループにおいて、グループを構成する端末の１つまたは複数がデータ変更端末として設定されている。
上記データ変更端末は、各グループの共有記憶領域、例えば、状態テーブル及びメンバーテーブルを所定数に分割した分割領域毎に対応づけられている。例えば、共有記憶領域における共有データである状態テーブル６個とメンバーテーブル１個からなる７個の分割領域に分割されていると、この状態テーブル６個の各分割領域毎に、各々データ変更端末が対応付けられることとなる。
そして、メンバーテーブルにおけるメンバーデータの更新に際しての同報は、グループ内の各端末，窓口端末及び他の端末を監視している端末が行う（後に詳細に記述）。
【００６５】
ここで、分割領域の生成は、本実施形態のアプリケーションの機能として、すなわち共有機能部６が予めグループにおいて設定されている共有記憶領域における共有データの容量に対応して、上述したような所定数に分割される。これにより、グループに所属する端末の全てが同様な分割領域を有することとなる。
これは共有記憶領域を容量的に分割するため、状態テーブルやメンバーテーブルに共有データが書き込まれていなくとも、所定容量の区分（共有記憶領域における共通のアドレス範囲）として分割されており、共有データが記録されていないことが、共有データの変化がないと認識されることとなる。
【００６６】
グループに端末が参加する際、初めは端末がなく、最初の端末が参加した場合、グループに所属する端末が１つしかないため、アプリケーションとしては外部からグループ内の情報をダウンロードすることができないため、最初に参加する端末がグループサーバによ窓口端末として指定され、かつ自身が共有記憶領域の全ての分割領域のデータ変更端末の担当となる。
その後に、端末が増加するごとに、メンバーテーブルの端末が増加するため、後に述べる様に、各分割領域の担当を、順次他の端末をデータ変更端末とすることにより変更させ、グループ全体の端末にデータ変更端末の動作を分担させて、データ変更の管理を順次行わせる。
【００６７】
各端末は、発呼元の端末であれば、状態テーブルにおける自身のＩＤ番号に対応する領域の通信情報Ｉ１の書き替え、及び状態テーブルにおける着呼先の端末のＩＤ番号に対応する領域の通信情報Ｉ２の書き換えを、各ＩＤ番号に対応した分割領域を担当するデータ変更端末に対して要求する。
また、各端末は、着呼先の端末であれば、自身のＩＤ番号に対応する領域の通信情報Ｉ１の書き換えを、自身のＩＤ番号の領域を担当するデータ変更端末に対して要求する。
これにより、データ変更端末は、自身の担当する領域のデータの変更を、各端末から依頼されることにより、すなわち、対応付けられた分割領域の端末情報の変更が通知されると、グループ内の各端末に対して、変更する分割領域を示す情報と、変更されるデータとを同報することにより、グループ内の全端末の共有記憶領域におけるデータの同期をとる。
【００６８】
そして、データ変更端末とデータ端末に対応付けられた分割領域との関係について、グループ内の各端末は予め通知されている。
例えば、初期状態としては端末がグループに参加する順番に、分割領域に対する対応付けが行われる（窓口端末が各端末にこの対応付けを同報）が、以降、同報処理を行う毎に、次にデータ更新端末となる端末のＩＤ及び対応する分割領域の情報を、上記変更されたデータとともに、グループ内の各端末に対して同報する。
このとき、データ更新端末は、例えば、次にデータ変更端末となる端末を、メンバーテーブルの順番にて設定する。
【００６９】
ｂ．グループ内における共有データのサーバの集中管理
このｂの集中管理は、上述したａのように、データ変更端末が複数あり、かつ他の端末に変更される構成ではなく、グループ全体で１つの端末がデータ変更端末として固定に設定され、全共有記憶領域の変更を全て担当する構成となっている。
このデータ変更端末は、いずれの端末であるかが、グループに参加する時点に、窓口端末からＩＤ番号として、予めグループ内の各端末に通知されている。
各端末は、発呼元の端末であれば、状態テーブルにおける自身のＩＤ番号に対応する領域の通信情報Ｉ１の書き替え、及び状態テーブルにおける着呼先の端末のＩＤ番号に対応する領域の通信情報Ｉ２の書き換えを、上記データ変更端末に対して要求する。
また、各端末は、着呼先の端末であれば、自身のＩＤ番号に対応する領域の通信情報Ｉ１の書き換えを、データ変更端末に対して要求する。
これにより、データ変更端末は、各端末から依頼されることにより、すなわち、依頼された端末情報の変更が通知されると、グループ内の各端末に対して、変更されたデータとを同報することで、グループ内の全端末の共有記憶領域におけるデータの同期をとる。
【００７０】
ｃ、端末の共有記憶領域における端末情報の差分更新
各グループにおいて、グループを構成する端末の１つまたは複数が最新データを有する最新データ記憶端末として設定されている。
上記最新データ記憶端末は、ａの同期処理におけるデータ変更端末と同様に、各グループの共有記憶領域、例えば、状態テーブルを所定数に分割した分割領域毎に対応づけられている。例えば、共有記憶領域における状態テーブルが６個の分割領域に分割されていると、この６個の各分割領域毎に、設定された端末として対応付けられている。
【００７１】
各最新データ記憶端末がいずれの分割領域を担当しているかは、最新データ記憶端末のＩＤ番号と、担当する分割領域の位置を示すデータとして、各端末に対してあらかじめ通知（暫定の最新データ記憶端末）されている。
そして、グループ内のいずれかの端末が、データ項目の書き換えを行う必要が発生した際、例えば、発呼元ととなり状態テーブルにおける着呼先の通信情報を書き替えを行う際、着呼先の最新のデータ項目を有する最新データ記憶端末から、その最新のデータ項目をダウンロードし、データの書き換えを行うとともに、その書き替えた分割領域を示すデータと、自身が最新データ記憶端末となったことをグループに所属している全てのメンバーに通知する。
【００７２】
＜グループへの参加シーケンス＞
次に、本発明の実施形態における通話処理の動作を、以下に図を参照して順次説明する。
まず、端末状態の情報（共有データ）を共有するグループに参加する動作について説明する。図３の概念図に示すように、通話処理における最も最初の動作として、端末Ｂ２〜Ｂ６により構成されているグループＢに、電源を投入することによって、端末Ｂ１が参加する以下に示すログインの処理が共有機能部６により行われる。
この参加処理の動作について、図４のシーケンス図を用いて説明する。
端末Ｂ１は、電源が投入または通話シーケンスを行うアプリケーションの起動を契機として、通話シーケンスを行うアプリケーションが起動され、グループＢに対して参加するため、アプリケーションに予め設定されているＩＰアドレスによりグループサーバにアクセスし、グループサーバにおける認証部の認証を受ける（ログインシーケンスＬ１）。
【００７３】
グループサーバにおける上記認証部には各端末固有の識別番号が予め登録処理等により記憶されており、上記識別番号の有無を検出することにより認証処理を行い、認証処理を要求する端末Ｂ１が登録されている場合、この端末Ｂ１の認証が正常に行われたこととし、ログインシーケンスＬ２へ処理を進め、一方、登録されていない場合、認証処理を終了するとともに、ログインシーケンス（グループへの参加処理）も終了する。
次に、認証部は、端末Ｂ１を認証すると、この端末Ｂ１に対し、通話シーケンス等で用いる端末Ｂ１のＩＤ番号を送信する（ログインシーケンスＬ２）。
上記ＩＤ番号は、予め上記識別番号に対応して設定された情報でも、認証することにより所定の方法で生成してもよい。
【００７４】
また、各グループにおいて、グループに参加した順に設定された、外部とのデータの送受信を行う専用の端末である窓口端末が設けられている。グループ内の窓口端末の数は予め所定の数（例えば、３台）に設定されており、窓口端末が離脱または故障などした場合、グループ内の他の端末（グループに参加した順に設定）に変更される。
上記グループサーバは、各グループのグループ番号と、このグループ毎に設けられた窓口端末と、この窓口端末のＩＰアドレスとの対応関係を示す窓口端末テーブルを、窓口端末テーブルとして記憶している。
端末Ｂ１は、自身のＩＤ番号とＩＰアドレスとをグループサーバに対して通知し、グループＢに対する参加要求をへ行う（ログインシーケンスＬ３）。
これにより、グループサーバのダウンロード部は、窓口端末テーブルを参照し、窓口端末である端末Ｂ５に対して、グループＢの共有記憶領域に記憶されている共有している情報のダウンロード処理の実行を依頼する。（ログインシーケンスＬ４）
【００７５】
例えば、図３においては、端末Ｂ５がこの時点の窓口端末として、あらかじめグループサーバに登録されている。この窓口端末の決定方法は、例えば、グループに参加した順番で、グループサーバにより設定されている。
すなわち、グループサーバは、各グループに参加依頼をする端末を、先着順に１つまたは複数個選択して、この選択した端末を窓口端末とし、グループを示すグループ番号に対応させて窓口端末のＩＤ番号とＩＰアドレスをグループ単位に記憶している。
【００７６】
したがって、グループサーバは、端末Ｂ１に対し、窓口端末である端末Ｂ５のＩＰアドレスを送信する。
この時点において、グループＢに所属する各端末における共有記憶領域のメンバーテーブルには、グループのメンバー、すなわちグループを構成している端末（端末Ｂ２〜Ｂ５）各々のＩＤ番号に対応し、各端末のＩＰアドレスと、通信に使用しているポート番号（ＴＣＰまたはＵＤＰのポート）との対応関係が記憶されている。
【００７７】
この状態テーブルの構成は、例えば、図３に示すように、状態テーブルにおける各端末毎の構成として、自端末の状態情報として自端末の情報（経過時間Ｔ１，通信情報Ｉ１）と、着信端末の情報（経過時間Ｔ２，通信情報Ｉ２）とを有し、この構成がＩＤ番号毎に、グループの全メンバーの端末情報を、全ての端末各々がそれぞれの記憶部に対し、アプリケーションの起動により生成された共有記憶領域に記憶している。
すなわち、各端末は、自身を含み、所属するグループのメンバーである全ての端末の状態情報が記載されている状態テーブルを、それぞれの共有記憶領域に記憶して保持することで、グループ単位にてグループ内で共有する共有データ（本実施形態においては、少なくとも状態テーブル及びメンバーテーブル）の共有を行っている。
【００７８】
そして、端末Ｂ５は、端末Ｂ１に対してグループＢの共有記憶領域に記憶しているメンバーテーブルと、状態テーブルのテンプレートとを送信する（ログインシーケンスＬ５）。
これにより、端末Ｂ１において、共有機能部６は、記憶部５の所定の部分を共有記憶領域として設定し、入力される状態テーブルのテンプレートから、自身の状態テーブルを生成するとともに、メンバーテーブルを記憶する（ログインシーケンスＬ６）。
【００７９】
そして、窓口端末である端末Ｂ５は、端末Ｂ１が新たに参加することでメンバーテーブルが変更となったことにより、グループＢ内の各端末（Ｂ１〜Ｂ４）に対して、メンバーテーブルが変更されたことを通知する。
次に、各端末Ｂ１〜Ｂ４は、端末Ｂ１が書き込まれたメンバーテーブルを端末Ｂ５からダウンロードし、共有記憶領域のすでにあるメンバーテーブルに対して上書きして、書き替えた時刻を示すタイムスタンプを付加してメンバーテーブルの更新を行う。
これにより、端末Ｂ１のグループＢへの参加が終了し、端末Ｂ１はユーザまたは他の端末からの着呼の待ち受け状態となる（ログインシーケンスＬ７）。
【００８０】
＜グループ内におけるコールシーケンス＞
次に、グループＢに参加した端末Ｂ１（発呼側の端末）が同一グループＢに所属する端末Ｂ２（着呼側の端末）に電話をかける場合を、図５，図６及び図７を参照して説明する。図５は通話処理における端末の状態遷移図であり、図６及び図７は通話処理の流れを示すコールシーケンスを示す図である。この処理の説明において、共有記憶領域における共有データの同期処理を、一例として、先に「グループ内の共有記憶領域の同期処理」における”ａ”の方法を用いて説明する。また、この処理の説明において、例えば、グループＢ内において窓口端末が端末Ｂ５であり、この時点でのデータ変更端末を端末Ｂ２及び端末Ｂ４とする。
【００８１】
例えば、共有データである状態テーブルをＩＤ番号の端末Ｂ１、Ｂ２，Ｂ３から構成される分割領域Ｑ１と、端末Ｂ４及びＢ５とからなる分割領域Ｑ２とに分割され、暫定的に、端末Ｂ３が分割領域Ｑ１を担当するデータ変更端末とされ、端末Ｂ５が分割領域Ｑ２を担当するデータ変更端末とされ、担当する分割領域とともにグループに所属する各端末に対しては予め通知されている。このとき、端末Ｂ５は窓口端末であり、かつデータ変更端末であり、２つの処理の担当を兼ねている。
また、各端末の共有記憶領域には、すでに述べたように、グループに所属する端末の個有情報（端末のＩＤ番号（あるいはＩＤ），ＩＰアドレス，ポート番号など）が記憶されるメンバーテーブルとともに、通話処理監視用の自端末の端末情報（通信情報を含む）が記載された状態テーブルが生成される。
【００８２】
この状態テーブルには、自端末にて書き込む自端末のエリア（自身の端末情報の通信情報を書き込む自端末情報記憶領域）があり、発呼処理及び着呼処理における端末状態遷移後の経過時間Ｔ１と自端末の通信情報Ｉ１（発信情報または着呼情報）とを書き込むようになっており、また、発呼元の端末に書き込まれる着信端末のエリア（着呼先端末となった場合の着信端末情報記憶領域）があり、着呼処理における端末状態遷移後の経過時間Ｔ２と着信端末としての通信情報Ｉ２（着呼情報）とが書き込まれるようになっている。
上記メンバーテーブルには、各端末の個有情報である電話番号（または端末のＩＤ番号、すなわちＩＤ番号を電話番号として用いるように構成しても良い），ＩＰアドレスとともに、通信に用いるポート番号などが記録されている。
【００８３】
受話器を下ろされたオンフック状態においては、端末Ｂ１が待ち受け状態であり、自端末の通信情報Ｉ１，着信端末としての通信情報Ｉ２ともに「空き」（発呼（発呼元）または着呼（着呼先）が可能な状態）であることが記録されており、経過時間Ｔ１，Ｔ２ともに記載されない状態である（ステップＳ１）。
次に、利用者が受話器を上げることにより、通話処理部１は、受話器が上げられたこと（オフフック状態に遷移したこと）を検出して、すなわち、端末Ｂ１が「空き」状態（着信可能状態）から「発呼」状態（発信状態）に遷移したことを検出して、自端末の通信情報Ｉ１を「空き」から「発呼」に書き替える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ１を担当しているデータ変更端末Ｂ３へ送信して依頼する。
【００８４】
これにより、データ変更端末Ｂ３は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信情報Ｉ１を書き替えるとともに、各端末（Ｂ１，Ｂ２，Ｂ４，Ｂ５）に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ１の通信情報Ｉ１を、「空き」から「発呼」への書き替え処理の実行を促す通知を同報する。
このとき、データ変更端末Ｂ３は、メンバーテーブルの次の欄にある端末Ｂ４を、次の分割領域Ｑ１の担当のデータ変更端末に指定し、グループＢに所属する端末に対し、次のデータ変更端末となる端末Ｂ４のＩＤ番号Ｂ４と、端末Ｂ４が担当する分割領域Ｑ１を示す情報とを、上記書き替え処理の実行を促す通知とともに同報する。
そして、端末Ｂ１，Ｂ２，Ｂ４，Ｂ５各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号Ｂ１の通信情報Ｉ１を「空き」から「発呼」に書き替え、データ変更端末Ｂ３の共有データの変更に対してグループ内にて同期をとる（ステップＳ２）。
【００８５】
そして、利用者が端末Ｂ２の電話番号を入力することにより、端末Ｂ１において、着呼先グループ検出部２は、入力された端末Ｂ２の電話番号により、この端末Ｂ２の所属するグループのグループ番号Ｂを求め（この求め方については後に詳述する）、求めたグループ番号を通話処理部１へ出力する。
一方、着呼先グループ検出部２は、電話番号が属するグループのグループ番号が後述する方法において検出できない場合、ルート検出が不完了であるとして、処理をステップＳ５へ進める。
【００８６】
そして、着呼先グループ検出部２からグループ番号が入力されると、通話処理部１は、入力されたグループ番号により、着呼先が発呼元の自身と同一のグループＢに所属することを検出する。
これにより、グループ内着呼先端末状態検出部３は、共有記憶領域におけるメンバーテーブルから端末Ｂ２の電話番号に対応したＩＰアドレス及びポート番号を読み出し、端末Ｂ２に対してアクセスを行う（ステップＳ３）。
【００８７】
次に、端末Ｂ１のグループ内着呼先端末状態検出部３は、端末Ｂ２の共有記憶領域における状態テーブルの通信情報Ｉ２を参照し、「空き」状態であるか否かの検出を行う。
ここで、端末Ｂ１のグループ内着呼先端末状態検出部３は、端末Ｂ２の状態テーブルにおいて通信情報Ｉ２が「空き」状態であることを検出すると、相手である着呼先の端末Ｂ２が他の端末と通話状態ではなく、通話可能状態であることを検出して、処理をステップＳ４へ進める（ステップＳ３）。
【００８８】
一方、端末Ｂ１のグループ内着呼先端末状態検出部３は、端末Ｂ２の状態テーブルにおいて通信情報Ｉ２が「空き」状態でないことを検出すると、相手が他の端末と通話状態であり、自身と通話可能状態にないこと、すなわち、「話し中」状態であることを検出し、通話処理部１へ通知し、処理をステップＳ５へ進める（ステップＳ３）。
これにより、端末Ｂ１の通話処理部１は、コールシーケンスの処理を終了して、初期状態へ戻す（ステップＳ５）。
【００８９】
次に、端末Ｂ１の通話処理部１は、自身の記憶部５の状態テーブルの通信状態Ｉ１を、「発呼」の状態から「予約中」へ変更する同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ１を担当しているデータ変更端末Ｂ４へ送信して依頼する。
これにより、データ変更端末Ｂ４は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信情報Ｉ１を書き替えるとともに、各端末（Ｂ１〜Ｂ３，Ｂ５）に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ１の通信情報Ｉ１を、「発呼」から「予約中」への書き替え処理の実行を促す通知を同報する。
【００９０】
このとき、データ変更端末Ｂ４は、メンバーテーブルの次の欄にある端末Ｂ５を、次の分割領域Ｑ１の担当のデータ変更端末に指定し、グループＢに所属する端末に対し、次のデータ変更端末となる端末Ｂ５のＩＤ番号Ｂ５と、端末Ｂ５が担当する分割領域Ｑ１を示す情報とを、上記書き替え処理の実行を促す通知とともに同報する。
そして、端末Ｂ１〜Ｂ３，Ｂ５各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号Ｂ１の通信情報Ｉ１を「発呼」から「予約中」に書き替え、データ変更端末Ｂ４の共有データの変更に対してグループ内にて同期をとる。
この時点において、端末Ｂ５は分割領域Ｑ１及び分割領域Ｑ２の２つの分割領域のデータ変更の同期をとる担当であるデータ変更端末に指定されている。
【００９１】
そして、端末Ｂ１のグループ内着呼先端末状態検出部３は、端末Ｂ２の共有記憶領域における状態テーブルの通信情報Ｉ２を参照し、「空き」状態であるか否かの検出を行う。
ここで、端末Ｂ１のグループ内着呼先端末状態検出部３は、端末Ｂ２の状態テーブルにおいて通信情報Ｉ２が「空き」状態であることを検出すると、端末Ｂ２が他の端末から通話の予約されておらず、通話予約（すなわち、予約を示すための予約中の情報を書き込むこと）が可能な状態であることを検出する。
次に、端末Ｂ１のグループ内着呼先端末状態検出部３は、端末Ｂ２の共有記憶領域における状態テーブルの通信情報Ｉ２を、「空き」状態から「予約中」に書き換える、すなわち共有データの変更を行う同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末Ｂ５へ送信して依頼する。
これにより、データ変更端末Ｂ５は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信情報Ｉ２を書き替えるとともに、各端末（Ｂ１〜Ｂ４）に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の通信情報Ｉ２を、「空き」から「予約中」への書き替え処理の実行を促す通知を同報する。
【００９２】
このとき、データ変更端末Ｂ５は、メンバーテーブルの次の欄、すなわちテーブルの最初の欄にある端末Ｂ１を、次の分割領域Ｑ１の担当のデータ変更端末に指定し、グループＢに所属する端末に対し、次のデータ変更端末となる端末Ｂ５のＩＤ番号Ｂ１と、端末Ｂ１が担当する分割領域Ｑ１を示す情報とを、上記書き替え処理の実行を促す通知とともに同報する。
そして、端末Ｂ１〜Ｂ４各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号Ｂ２の通信情報Ｉ２を「空き」から「予約中」に書き替え、データ変更端末Ｂ５の共有データの変更に対してグループ内にて同期をとり、処理をステップＳ６へ進める（ステップＳ４）。
この時点において、端末Ｂ１は発呼元であり、かつ、分割領域Ｑ１のデータ変更の同期をとる担当のデータ変更端末に指定されている。
【００９３】
一方、端末Ｂ１のグループ内着呼先端末状態検出部３は、端末Ｂ２の状態テーブルにおいて通信情報Ｉ２が「空き」状態でないことが検出された場合、所定の時間が経過した後、再度、端末Ｂ２にアクセスして、端末Ｂ２の記憶部５において通信情報Ｉ２を参照し、これを複数回（例えば、５回）繰り返しても、「空き」状態に遷移しないことが検出されると「話し中」状態として検出し、処理をステップＳ５へ進めるとともに、通話処理部１へ通知する（ステップＳ４）。
これにより、端末Ｂ１の通話処理部１は、コールシーケンスの処理を終了して、初期状態へ戻す（ステップＳ５）。
【００９４】
すなわち、ステップＳ５において、端末Ｂ１の通話処理部１は、自身の共有記憶領域における状態テーブルの通信情報Ｉ１を、「予約中」から「空き」状態に書き換える、すなわち共有データの変更を行う同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末Ｂ１、すなわち自身の共有機能部６へ依頼する。
これにより、データ変更端末である端末Ｂ１は、自身からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信情報Ｉ１を書き替えるとともに、各端末（Ｂ２〜Ｂ５）に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ１の通信情報Ｉ１を、「予約中」から「空き」状態への書き替え処理の実行を促す通知を同報する。
【００９５】
このとき、データ変更端末Ｂ１は、メンバーテーブルの次の欄にある端末Ｂ２を、次の分割領域Ｑ１の担当のデータ変更端末に指定し、グループＢに所属する端末に対し、次のデータ変更端末となる端末Ｂ２のＩＤ番号Ｂ２と、端末Ｂ２が担当する分割領域Ｑ１を示す情報とを、上記書き替え処理の実行を促す通知とともに同報する。
そして、端末Ｂ２〜Ｂ５各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号Ｂ１の通信情報Ｉ１を「予約中」から「空き」状態に書き替え、データ変更端末Ｂ１の共有データの変更に対してグループ内にて同期をとる（ステップＳ５）。
【００９６】
次に、端末Ｂ２の通話処理部１は、自身の共有記憶領域の状態テーブルにおける通信情報Ｉ２が「空き」状態から「予約中」に遷移している（書き換えられている）ことを検出、すなわち他端末から着呼状態にあると検出すると、状態テーブルにおける通信状態Ｉ１を、「空き」状態から「着信呼出中」状態に書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末Ｂ２、すなわち自身の共有機能部６へ送信して依頼するとともに、タイムスタンプとして経過時間Ｔ１の計数を開始し、ベル音等の着信音をスピーカから出力し、着信していることを利用者に通知する。
これにより、データ変更端末Ｂ２は、自身からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信情報Ｉ１を書き替えるとともに、各端末（Ｂ１，Ｂ３〜Ｂ５）に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の通信情報Ｉ１を、「空き」から「着信呼出中」への書き替え処理の実行を促す通知を同報する。
【００９７】
このとき、データ変更端末Ｂ２は、メンバーテーブルの次の欄、すなわちテーブルの最初の欄にある端末Ｂ３を、次の分割領域Ｑ１の担当のデータ変更端末に指定し、グループＢに所属する端末に対し、次のデータ変更端末となる端末Ｂ３のＩＤ番号Ｂ３と、端末Ｂ３が担当する分割領域Ｑ１を示す情報とを、上記書き替え処理の実行を促す通知とともに同報する。
そして、端末Ｂ１，Ｂ３〜Ｂ５各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号Ｂ２の通信情報Ｉ１を「空き」から「着信呼出中」に書き替え、データ変更端末Ｂ２の共有データの変更に対してグループ内にて同期をとる。
ここで、グループ内で共有する共有データの変更を同期を取って行う処理は、上述してきた説明と同様のため、データ変更端末に同期処理を依頼するとして、データ変更端末の変更処理について、以降の説明において省略する。
【００９８】
次に、端末Ｂ２の通話処理部１は、経過時間Ｔ１の計数を開始した後、所定の時間毎に（一定の周期にて）端末Ｂ２の共有記憶領域の状態テーブルにおける経過時間Ｔ１に対して、計数した計数時間を書き込む同期処理を、自端末のＩＤ番号と自身の計数した計数時間とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼する。
これにより、データ変更端末は、端末Ｂ２からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の経過時間Ｔ１を書き替えるとともに、グループＢに所属する他の端末（グループＢにおけるデータ変更端末以外の端末）に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の経過時間Ｔ１を、送信される端末Ｂ２の計数時間への書き替え処理の実行を促す通知を同報する。
そして、同報された端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号Ｂ２の経過時間Ｔ１を、端末Ｂ２の計数時間へ書き替え、データ変更端末の共有データの変更に対してグループ内にて同期をとる。
【００９９】
同様に、端末Ｂ１の通話処理部１は、端末Ｂ２の共有記憶領域の状態テーブルにおける通信状態Ｉ１が「着信呼出中」となったことを検出すると、端末Ｂ２と同様にタイムスタンプとして、経過時間の計数を開始し、所定の時間毎に（一定の周期にて）端末Ｂ２の共有記憶領域の状態テーブルにおける経過時間Ｔ２に対して、計数した計数時間を書き込む同期処理を、自端末のＩＤ番号と自身の計数した計数時間とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼する。
これにより、データ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の経過時間Ｔ２を書き替えるとともに、グループＢに所属する他の端末（グループＢにおけるデータ変更端末以外の端末）に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の経過時間Ｔ２を、送信される端末Ｂ１の計数時間への書き替え処理の実行を促す通知を同報する。
そして、同報された端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号Ｂ２の経過時間Ｔ２を、端末Ｂ１の計数時間へ書き替え、データ変更端末の共有データの変更に対してグループ内にて同期をとる。
【０１００】
また、端末Ｂ１の通話処理部１は、自身の共有記憶領域の状態テーブルにおける通信状態Ｉ１を「予約中」から「呼出中」に書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼する。
これにより、データ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信情報Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ１の通信情報Ｉ１を、「予約中」から「呼出中」への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号Ｂ１の通信情報Ｉ１を「予約中」から「呼出中」に書き替え、データ変更端末の共有データの変更に対してグループ内にて同期をとる。
【０１０１】
同様に、端末Ｂ１の通話処理部１は、端末Ｂ２の共有記憶領域の状態テーブルにおける通信状態Ｉ２を「予約中」から「呼出中」に書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼する。
これにより、データ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信情報Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の通信情報Ｉ２を、「予約中」から「呼出中」への書き替え処理の実行を促す通知を同報する。
【０１０２】
そして、グループＢに所属する端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号Ｂ２の通信情報Ｉ２を「予約中」から「呼出中」に書き替え、データ変更端末の共有データの変更に対してグループ内にて同期をとる（ステップＳ６）。
このとき、端末Ｂ１の通話処理部１は、スピーカから呼出音を出力して、呼出中であることを利用者に通知する。
【０１０３】
また、このステップＳ６において、端末Ｂ１及び端末Ｂ２各々の通話処理部１は、通話に用いる通信経路にテスト用のパケットを相互に送信し合い、すなわち通信経路に所定の負荷を与えて（所定量のパケットを送信する等）、経過時間をチェックすることにより、その通信経路の通信状態を取得する。
これにより、一定時間経過後に端末Ｂ１及び端末Ｂ２双方の通話処理部１が端末Ｂ２の共有記憶領域の状態テーブルにおける経過時間Ｔ１と経過時間Ｔ２との比較を行う。
このとき、例えば、端末Ｂ１の通信処理部１は、経過時間Ｔ１と経過時間Ｔ２との差が所定の範囲以上の差（例えば、５秒）であることを検出すると、接続異常と判定して処理をステップＳ５へ進める。
【０１０４】
ここで、発呼側及び着呼側双方の無線処理部１は、音声を通信し始めると、負荷が大きいものとなり、端末のハードウェアの処理能力が大幅に低下することとなるため、呼出中において、着呼側が受話器を取り通話中となる前に無理なく通信できる情報の共有を行う。
すなわち、発呼側及び着呼側双方の無線処理部１は、経過時間Ｔ１及び経過時間Ｔ２の時間が大幅にずれている場合、通信経路のトラフィックが高く音声通信が行えない場合や、一方が負荷によりシステムダウンしてしまった場合等により、端末間の通信状態が不良であり、通話処理を行うことが不可能であることを判定すると、処理をステップＳ５へ進めて通話処理を中止する。
【０１０５】
次に、端末Ｂ２の通話処理部１は、利用者が受話器を取り上げたこと（オフフック状態）を検出すると、自身の共有記憶領域の状態テーブルにおける通信情報Ｉ１を「着信呼出中」から「着信通話中」に書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼するとともに、経過時間Ｔ１をリセットして、新たに「着信通話中」に状態が変更してからの経過時間の計数を開始する。
これにより、データ変更端末は、端末Ｂ２からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信情報Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の通信情報Ｉ１を、「着信呼出中」から「着信通話中」への書き替え処理の実行を促す通知を同報する。
【０１０６】
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号Ｂ２の通信情報Ｉ１を「着信呼出中」から「着信通話中」に書き替え、データ変更端末の共有データの変更に対してグループ内にて同期をとる。
このとき、端末Ｂ２の通話処理部１は、スピーカから出力していた着信音を停止し、通話可能となったことを利用者に通知する。
また、端末Ｂ２の通話処理部１は、新たに計数を開始して以降、所定の時間毎に計数した時間を経過時間Ｔ１へ書き込む同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼する。
【０１０７】
これにより、データ変更端末は、端末Ｂ２からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の経過時間Ｔ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の経過時間Ｔ１を、端末Ｂ２が計数した時間への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の経過時間Ｔ１を、端末Ｂ２が計数した時間への変更に対してグループ内にて同期をとる。
【０１０８】
そして、端末Ｂ１の通話処理部１は、端末Ｂ２の共有記憶領域の状態テーブルにおける通信状態Ｉ１が「着信通話中」に遷移したこと検出すると、自身の共有記憶領域の状態テーブルにおける通信状態Ｉ１を「呼出中」から「通話中」に書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼するとともに、端末Ｂ２の共有記憶領域の状態テーブルにおける経過時間Ｔ２をリセットして、新たに「通話中」に状態が変更してからの経過時間の計数（カウント）を開始する。
これにより、データ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信状態Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ１の通信状態Ｉ１を、「呼出中」から「通話中」への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信情報Ｉ１を、「呼出中」から「通話中」への変更に対してグループ内にて同期をとる。
【０１０９】
このとき、端末Ｂ１の通話処理部１は、スピーカから出力していた呼び出し音を停止し、通話可能状態（すなわち、回線が接続された状態）となったことを利用者に通知し、通話を促す。
また、端末Ｂ１の通話処理部１は、新たに「通話中」に状態が変更してからの経過時間の計数を開始した後、所定の時間毎に計数した時間を経過時間Ｔ２へ書き込む同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼する。
【０１１０】
これにより、データ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の経過時間Ｔ２を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の経過時間Ｔ２を、端末Ｂ１が計数した時間への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の経過時間Ｔ２を、端末Ｂ１が計数した時間への変更に対してグループ内にて同期をとる（ステップＳ７）。
【０１１１】
このステップＳ７においても、ステップＳ６の呼出中と同様に、発呼側及び着呼側双方の無線処理部１は、経過時間Ｔ１及び経過時間Ｔ２の時間が大幅にずれている場合、通信経路のトラフィックが高く音声通信が行えない場合や、一方が負荷によりシステムダウンしてしまった場合等により、端末間の通信状態が不良であり「故障」状態であるため、通話処理を継続することが不可能であることを判定すると通話処理を中止し、処理をステップＳ５へ進めて、通話処理を中止する。
【０１１２】
次に、端末Ｂ１の通話処理部１は、利用者が受話器を端末Ｂ１に置いたこと（ＯＮフック状態となったこと）を検出すると、自身の共有記憶領域の状態テーブルにおける通信情報Ｉ１を、「通話中」から「予約消中（予約の取り消し中）」へ書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼する。
これにより、データ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信状態Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ１の通信状態Ｉ１を、「通話中」から「予約消中」への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信情報Ｉ１を、「通話中」から「予約消中」への変更に対してグループ内にて同期をとる。
【０１１３】
また、端末Ｂ１の通話処理部１は、端末Ｂ２の共有記憶領域の状態テーブルにおける通信情報Ｉ２を、「通話中」から「空き」状態へ書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼するとともに、端末Ｂ２に対するアクセスの接続状態（接続された回線）を切断する。
これにより、データ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信状態Ｉ２を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の通信状態Ｉ２を、「通話中」から「空き」への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信情報Ｉ２を、「通話中」から「空き」への変更に対してグループ内にて同期をとる。
【０１１４】
そして、端末Ｂ２の通話処理部１は、自身の共有記憶領域の状態テーブルにおける通信情報Ｉ２が「通話中」から「空き」に遷移したことを検出すると、通信情報Ｉ１を「着信通話中」から「空き」に書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼するとともに、端末Ｂ１に対するアクセスの接続状態（接続された回線）を切断する（ステップＳ８）。
これにより、データ変更端末は、端末Ｂ２からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信状態Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の通信状態Ｉ１を、「着信通話中」から「空き」への書き替え処理の実行を促す通知を同報する。
【０１１５】
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信情報Ｉ１を、「着信通話中」から「空き」への変更に対してグループ内にて同期をとる。
このとき、端末Ｂ２の通話処理部１は、通話が終了したことを示す回線切断を通知する音をスピーカから出力し、利用者に通話のアクセスが切断されたことを通知する。
これにより、端末Ｂ１及び端末Ｂ２双方は、ステップＳ０の待ち受け状態（発呼及び着呼のいずれも可能な状態）へ戻る。
【０１１６】
＜グループ間におけるコールシーケンス＞
次に、グループＢに参加した端末Ｂ１（発呼側の端末）が異なるグループＣに所属する端末Ｃ２（着呼側の端末）に電話をかける場合を、図５，図６及び図７を参照して説明する。図５は通話処理における端末の状態遷移図であり、図６及び図７は通話処理の流れを示すコールシーケンスを示す図である。
ここで、すでに述べた同一のグループに所属する端末Ｂ２に、電話をかける場合と異なるのは、着呼先グループ検出部２が端末Ｃ２の電話番号から所属するグループ番号（グループＣ）を抽出する処理と、端末Ｂ１がグループＣに編入する処理とであり、この異なる処理部分のみを説明する。
【０１１７】
この処理の説明において、共有記憶領域における共有データの同期処理を、一例として、先に「グループ内の共有記憶領域の同期処理」における”ａ”の方法を用いて説明する。また、この処理の説明において、例えば、グループＢにおける窓口端末が端末Ｂ５であり、最初の時点でのデータ変更端末を端末Ｂ２及び端末Ｂ４とする。一方、グループＣにおける窓口端末が端末Ｃ１であり、最初の時点でのデータ変更端末がＣ２及び端末Ｃ４とする。ここで、データ変更端末の変更処理については、上述の「グループ内におけるコールシーケンス」と同様に、同報処理毎にメンバーテーブル順に、次々にデータ変更端末を担当する端末が変化する。
このグループ内で共有する共有データの変更を同期を取って行う処理は、すでに説明した「グループ内におけるコールシーケンス」と同様のため、データ変更端末に同期処理を依頼するとして、データ変更端末の変更処理について、以降の説明において省略する。
【０１１８】
例えば、図９におけるグループＢにおいて、共有データである状態テーブルをＩＤ番号の端末Ｂ１、Ｂ２，Ｂ３，Ｂ４から構成される分割領域Ｑ１と、端末Ｂ５，Ｂ６，Ｂ７，Ｂ８とからなる分割領域Ｑ２とに分割され、暫定的に、端末Ｂ３が分割領域Ｑ１を担当するデータ変更端末とされ、端末Ｂ５が分割領域Ｑ２を担当するデータ変更端末とされ、担当する分割領域とともにグループＢに所属する各端末に対しては予め通知されている。グループＢにおいて、このとき、端末５は窓口端末であり、かつデータ変更端末であり、２つの処理の担当を兼ねている。
また、グループＣにおいて、共有データである状態テーブルがＩＤ番号の端末Ｃ１、Ｃ２，Ｃ３，Ｃ４から構成される分割領域Ｒ１と、端末Ｃ５，Ｃ６，Ｃ７，Ｃ８及び編入する端末Ｂ１とからなる分割領域Ｒ２とに分割され、暫定的に、端末Ｃ３が分割領域Ｒ１を担当するデータ変更端末とされ、端末Ｃ５が分割領域Ｒ２を担当するデータ変更端末とされ、担当する分割領域とともにグループＣに所属する各端末に対しては予め通知されている。
【０１１９】
図５，図６及び図７のステップＳ２において、端末Ｂ１の着呼先グループ検出部２は、すでに説明したグループ番号の検出方法ＡからＤのいずれかを用い、例えば検出方法Ａを用いたとすると、着呼先の端末Ｃ２の電話番号から所定の演算によって、一意に着呼先の端末の所属するグループ番号が得られる。
そして、端末Ｂ１において、着呼先グループ検索部２は、上述した処理により検出されたグループ番号（グループＣのグループ番号）を、通話処理部１へ通知する。
そして、通話処理部１は、上記グループ番号により、端末Ｃ２の所属するグループが自身のグループと異なることを検出すると、共有機能部６に対して、グループ番号とＩＰアドレスとを通知するとともに、グループＣに対する編入を指示する。
【０１２０】
次に、共有機能部６は、グループサーバに対してアクセスし、検出されたグループＣのグループ番号を送信する。
そして、グループサーバは、入力されるグループ番号により、グループＣの窓口端末のＩＰアドレスを検索し、この検索されたＩＰアドレスを共有機能部６に対して送信する。
これにより、共有機能部６は、入力されたＩＰアドレスにアクセスし、メンバーテーブルのダウンロードを要求する。
そして、グループＣの窓口端末は、ダウンロード処理として、自身のメンバーテーブルを、端末Ｂ１の共有機能部６に対して送信する。
【０１２１】
例えば、図９においては、端末Ｃ１がこの時点の窓口端末として、グループサーバに登録されているとする。
この時点において、グループＣにおける共有記憶領域のメンバーテーブルには、グループ内メンバである端末Ｃ１から端末Ｃ８各々の端末のＩＤ番号に対応して、ＩＰアドレスとポート番号（ＴＣＰまたはＵＤＰのポート）とが記憶されている。
また、共有記憶領域には、グループＢと同様に、各端末毎に、自身の通話状態を示す状態テーブルも記憶されている。
【０１２２】
そして、端末Ｂ１の共有機能部６は、上記グループサーバに対して、自身の端末のＩＤ番号とＩＰアドレスとを通知することで、グループＣに対する編入要求を行う。
これにより、グループサーバは、グループＣにおける窓口端末として登録されている端末Ｃ１に対して、端末Ｂ１の端末ＩＤ番号とＩＰアドレスとを通知して、端末Ｂ１に対するダウンロード情報（グループＣ内において端末間にて共有している、メンバーテーブルを含む共有データ）の送信依頼を行う。
そして、窓口端末である端末Ｃ１は、端末Ｂ１に対してグループ内の上記ダウンロード情報を、送信して編入処理を行う。
【０１２３】
そして、グループＣにおける窓口端末である端末Ｃ１は、端末Ｂ１が新たに参加することでメンバーテーブルが変更となったことにより、グループＣ内の各端末（Ｃ２〜Ｃ８）に対して、メンバーテーブルが変更されたことを通知する。
次に、各端末Ｃ２〜Ｃ８は、端末Ｂ１が書き込まれたメンバーテーブルを端末Ｃ１からダウンロードし、共有記憶領域のすでにあるメンバーテーブルに対して上書きして、書き替えた時刻を示すタイムスタンプを付加してメンバーテーブルの更新を行う。
【０１２４】
これにより、端末Ｂ１のグループＣへの編入が終了し、端末Ｂ１のグループ間着呼先端末状態検出部３は、共有記憶領域におけるメンバーテーブルから端末Ｂ２の電話番号に対応したＩＰアドレス及びポート番号を読み出し、端末Ｂ２にアクセスする（ステップＳ３）。以降の処理は、着呼先が同一グループ内の端末でないため、着呼先の端末の通信状態を検出するのは、グループ内着呼先端末状態検出部３でなく、グループ間着呼先端末状態検出部４が行う以外、図６及び図７のステップＳ４以降の処理と同様である。
【０１２５】
このとき、端末Ｂ１のグループ間着呼先端末状態検出部４は、共有記憶領域におけるメンバーテーブルから端末Ｃ２の電話番号に対応したＩＰアドレス及びポート番号を読み出し、端末Ｃ２にアクセスする（ステップＳ３）。
次に、端末Ｂ１のグループ間着呼先端末状態検出部４は、端末Ｃ２の共有記憶領域における状態テーブルの通信情報Ｉ１を参照し、「空き」状態であるか否かの検出を行う。
【０１２６】
また、グループＢの端末Ｂ１がグループＣに編入した際のグループ内の共有データの同期処理としては、端末Ｂ１は自身の状態テーブルにおける通信情報Ｉ１の変更を行う場合、グループＢにて共有している共有記憶領域における状態テーブルと、グループＣにて共有している共有記憶領域における状態テーブルとの双方を、各々のグループ単位で同期を取って変更する必要がある。
すなわち、グループＣに編入した端末Ｂ１は、グループＢで共有している共有データである状態テーブルの通信情報Ｉ１の変更をグループＢのデータ変更端末端末に対して依頼するとともに、グループＣで共有している共有データである状態テーブルの通信情報Ｉ１の変更をグループＣのデータ変更端末に依頼する。
【０１２７】
これにより、グループＢのデータ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信状態Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ１の通信状態Ｉ１を書き替える処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信情報Ｉ１を、グループＢのデータ変更端末の変更に対して同期をとる。
【０１２８】
同様に、グループＣのデータ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信状態Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ１の通信状態Ｉ１を書き替える処理の実行を促す通知を同報する。
そして、グループＣに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信情報Ｉ１を、グループＣのデータ変更端末の変更に対して同期をとる。
【０１２９】
ただし、通話終了時のステップＳ８において、端末Ｂ１の通話処理部１は、グループＣから離脱する必要があるため、メンバーテーブルからの自身の削除をグループ内の全ての端末に対して同報通知する。
また、端末Ｂ１の通話処理部１は、自身のＩＤ番号に対応する状態テーブルの削除を、自身の含まれる分割領域を担当するデータ変更端末に依頼する。
【０１３０】
これにより、グループＣのメンバの各端末は、メンバーテーブル（離脱する端末自身の同報通知に対応して）及び状態テーブル（データ変更端末からの同報通知に対応して）を、同報通知されたデータ内容に変更して、グループ内の他の端末における共有記憶領域と共有データの同期を取る。
また、端末Ｂ１の共有機能部６は、自身の共有記憶領域からグループＣに対するメンバーテーブルを消去する。上述した処理により、端末Ｂ１はグループＣからの離脱処理を終了する。ここで、端末Ｂ１は、グループＣに編入している期間において、グループＢとグループＣとの双方のメンバーテーブルに存在、すなわちグループＢとグループＣとの双方に所属しているしているが、グループＣからの離脱処理により、グループＢのメンバテーブルにのみ記載されることとなる。
【０１３１】
また、グループのメンバーである各端末は、故障している端末あるいは編入して勝手に離脱した端末を定期的に（所定の期間毎に）検出するため、例えば、メンバーテーブルに記載されている順番に、すなわち、自身の次にテーブルに記載されているメンバーが存在するか、または正常に動作しているか否かを、上記メンバに対して確認パケットを送信して、この確認パケットに対する応答パケットにより検出する（他の端末の監視を行う）。このとき、テーブルの最後に記載されている端末は、テーブルの最初に記載されている端末の監視を行う。
【０１３２】
ここで、例えば、メンバーテーブルにおけるｎ番目（メンバーテーブルに書き込まれている順番）の端末ｎは直後のｎ＋１番目の端末を監視し（監視パケットの送信及び応答パケットの受信等により）、直前のｎ−１番目の端末ｎ−１に監視され、同様にこの端末ｎ−１は直前の端末ｎ−２に監視されている。
そして、直前の端末ｎ−１は、端末ｎの状態を上述した処理により検出し、端末ｎが正常に動作していない（異常である）ことを検出すると、メンバ全員に対し、メンバテーブルの書き換え処理を同報通知する。
このとき、端末ｎ−１は、端末ｎが異常であることを検出した場合、同一グループ内における端末ｎ以外の他の全ての端末に対して、端末ｎが異常か否かの判定を依頼する。
そして、端末ｎ−１は、他の１台以上の端末から、すなわちいずれかの端末から、端末ｎが異常であるとの判定結果が応答されると、メンバの端末全てに対して、端末ｎのメンバテーブル及び状態テーブルの書き換えを行うことを指示するため、同報通知を行う。
一方、端末ｎ−１は、いずれの端末からも応答が無い場合、自身が異常である場合もあるため、グループサーバに対して、端末ｎ及び端末ｎ−１の状態を問い合わせる。
そして、端末ｎ−１は、端末ｎが異常であるとグループサーバから通知されると、共有記憶領域からの端末ｎの削除を依頼する同報通知を行い、自身が異常であることを通知されると、自身を共有記憶領域から削除する事を依頼する同報通知を行い、グループから離脱する。
また、グループ内に２台しか端末が存在しないとき、互いに異常であると検出した場合、上述したように監視対象以外の端末に確認を依頼することができないため、直接に、グループサーバに対して、端末ｎ及び端末ｎ−１の状態を問い合わせる。
【０１３３】
これにより上述したように、端末ｎ−１は、グループに所属する全ての端末に対して、端末ｎの状態テーブルを削除することを同報通知する。
同様に、端末ｎ−１は、グループに所属する全ての端末に対して、メンバーテーブルから端末ｎを削除することを同報通知する。
そして、グループに所属する各端末は、端末ｎの異常を検出した端末、すなわち端末ｎ−１からの同報通知により、端末ｎの状態テーブルのデータを削除し、かつメンバーテーブルから端末ｎを削除する。
上述した検出処理により、グループ内の各端末は、自身の監視する端末がすでにグループに存在しないことを検出した場合や、その端末が故障して通話処理が行えないことを検出した場合、グループメンバである全ての端末に対して同報通知し、メンバーテーブルにおけるこの端末（異常が検出された端末）の削除、及び状態テーブルのデータの削除を要求し、グループ内の各端末が相互に異常か否かを監視している。
【０１３４】
＜着呼先でオンフックとした場合の回線の切断シーケンス＞
次に、グループＢに参加した端末Ｂ１（発呼元）が同一グループＢに所属する端末Ｂ２（着呼先）に電話をかけ、着呼先の端末Ｂ２が先にオンフック状態になった場合の回線の切断のシーケンスを図８を用いて説明する。
図８のシーケンス図は、図６及び図７のステップＳ７から後のシーケンス処理を示している。
この処理の説明において、共有記憶領域における共有データの同期処理を、一例として、「グループ内におけるコールシーケンス」と同様に、先の「グループ内の共有記憶領域の同期処理」における”ａ”の方法を用いて説明する。
また、グループ内で共有する共有データの変更を同期を取って行う処理は、すでに説明した「グループ内におけるコールシーケンス」と同様のため、データ変更端末に同期処理を依頼するとして、データ変更端末の変更処理について、以降の説明において省略する。
【０１３５】
ステップＳ７において、端末Ｂ２の通話処理部１は、利用者が受話器を取り上げたこと（オフフック状態）を検出すると、自身の共有記憶領域の状態テーブルにおける通信情報Ｉ１を「着信呼出中」から「着信通話中」に書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼するとともに、経過時間Ｔ１をリセットして、新たに「着信通話中」に状態が変更してからの経過時間の計数を開始する。
これにより、データ変更端末は、端末Ｂ２からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信状態Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の通信状態Ｉ１を、「着信呼出中」から「着信通話中」への書き替え処理の実行を促す通知を同報する。
【０１３６】
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信情報Ｉ１を、「着信呼出中」から「着信通話中」への変更に対してグループ内の同期をとる。
また、端末Ｂ２の通話処理部１は、新たに「着信通話中」に状態が変更してからの経過時間の計数を開始した後、所定の時間毎に計数した時間を経過時間Ｔ１へ書き込む同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼する。
【０１３７】
これにより、データ変更端末は、端末Ｂ２からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の経過時間Ｔ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の経過時間Ｔ１を、端末Ｂ２が計数した時間への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の経過時間Ｔ１を、端末Ｂ２が計数した時間への変更に対してグループ内の同期をとる。
このとき、端末Ｂ２の通話処理部１は、スピーカから出力していた着信音を停止し、通話可能となったことを利用者に通知する。
【０１３８】
そして、端末Ｂ１の通話処理部１は、端末Ｂ２の供給記憶領域の状態テーブルにおける通信状態Ｉ１が「着信通話中」に遷移したこと検出すると、自身の共有記憶領域の状態テーブルにおける通信状態Ｉ１を「呼出中」から「通話中」に書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼するとともに、端末Ｂ２の共有記憶領域の状態テーブルにおける経過時間Ｔ２をリセットして、新たに「通話中」に状態が変更してからの経過時間の計数（カウント）を開始する。
【０１３９】
これにより、データ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信状態Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ１の通信状態Ｉ１を、「呼出中」から「通話中」への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ１の通信情報Ｉ１を、「呼出中」から「通話中」への変更に対してグループ内の同期をとる。
【０１４０】
また、端末Ｂ１の通話処理部１は、新たに「通話中」に状態が変更してからの経過時間の計数を開始した後、所定の時間毎に計数した時間を経過時間Ｔ２へ書き込む同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼する。
これにより、データ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の経過時間Ｔ２を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の経過時間Ｔ２を、端末Ｂ１が計数した時間への書き替え処理の実行を促す通知を同報する。
【０１４１】
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の経過時間Ｔ２を、端末Ｂ１が計数した時間への変更に対してグループ内の同期をとる（ステップＳ７）。
このとき、端末Ｂ１の通話処理部１は、スピーカから出力していた読び出し音を停止し、通話可能状態（すなわち、回線が接続された状態）となったことを利用者に通知し、通話を促す。
【０１４２】
このステップＳ７においても、ステップＳ６の呼出中と同様に、発呼側及び着呼側双方の無線処理部１は、経過時間Ｔ１及び経過時間Ｔ２の時間が大幅にずれている場合、通信経路のトラフィックが高く音声通信が行えない場合や、一方が負荷によりシステムダウンしてしまった場合等により、端末間の通信状態が不良であり「故障」状態であるため、通話処理を継続することが不可能であることを判定すると通話処理を中止し、処理をステップＳ５へ進めて、通話処理を中止する。
【０１４３】
次に、端末Ｂ２の通話処理部１は、利用者が受話器を端末Ｂ２に置いたこと（オンフック状態となったこと）を検出すると、自身の共有記憶領域の状態テーブルにおける通信情報Ｉ１を、「着信通話中」から「切断中（回線を切断する処理中であることを示す）」へ書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼する。
【０１４４】
これにより、データ変更端末は、端末Ｂ２からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信状態Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の通信状態Ｉ１を、「着信通話中」から「切断中」への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信情報Ｉ１を、「着信通話中」から「切断中」への変更に対してグループ内の同期をとる。
【０１４５】
そして、ステップＳ８’において、端末Ｂ１の通話処理部１は、端末Ｂ２の通信情報Ｉ１が「着信通話中」から「切断中」に遷移したことを検出すると、自身の共有記憶領域の状態テーブルにおける通話情報Ｉ１を「通話中」から「予約消中」に変更するとともに、端末Ｂ２の共有記憶領域の状態テーブルにおける通話情報Ｉ２を、「通話中」から「空き」に書き替える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼し、端末Ｂ１に対するアクセスの接続状態（接続された回線）を切断する。
【０１４６】
これにより、データ変更端末は、端末Ｂ１からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信状態Ｉ２を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の通信状態Ｉ２を、「通話中」から「予約消中」への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信情報Ｉ２を、「通話中」から「予約消中」への変更に対してグループ内の同期をとる。
【０１４７】
そして、端末Ｂ２の通話処理部１は、自身の共有記憶領域の状態テーブルにおける通信情報Ｉ２が「通話中」から「空き」に遷移したことを検出すると、通信情報Ｉ１を「着信通話中」から「空き」に書き換える同期処理を、自端末のＩＤ番号とともに、分割領域Ｑ２を担当しているデータ変更端末へ送信して依頼し、端末Ｂ１に対するアクセスの接続状態（接続された回線）を切断する。
これにより、データ変更端末は、端末Ｂ２からの依頼により、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信状態Ｉ１を書き替えるとともに、グループ内の他の各端末に対して、共有記憶領域の状態テーブルにおけるＩＤ番号が端末Ｂ２の通信状態Ｉ１を、「着信通話中」から「空き」への書き替え処理の実行を促す通知を同報する。
そして、グループＢに所属する各端末各々は、上記同報を受信することにより、自身の記憶部の共有記憶領域における状態テーブルのＩＤ番号が端末Ｂ２の通信情報Ｉ１を、「着信通話中」から「空き中」への変更に対してグループ内の同期をとる。
【０１４８】
このとき、端末Ｂ２の通話処理部１は、通話が終了したことを示す回線切断を通知する音をスピーカから出力し、利用者に通話のアクセスが切断されたことを通知する。
これにより、端末Ｂ１及び端末Ｂ２双方は、ステップＳ０の待ち受け状態（発呼及び着呼のいずれも可能な状態）へ戻る。
上述の説明は、同一グループＢにおける着呼先の端末Ｂ２とにおける回線の切断（着呼先が先にオンフック状態となった際の回線の切断）のシーケンスを説明したが、グループ間においても同様の処理が行われる。
【０１４９】
＜グループからの端末の離脱シーケンス＞
端末のグループからの離脱は、参加しているグループから、また編入しているグループからも、処理方法として同様である。
すでに述べたように、通話終了時のステップＳ８において、端末Ｂ１の通話処理部１は、グループＣから離脱する必要があるため、メンバーテーブルからの自身の削除をグループ内の他の全ての端末に対して同報通知する。
また、端末Ｂ１の通話処理部１は、データ変更端末に対して、自身のＩＤ番号に対応する状態テーブルの削除を、グループＣにおけるそれぞれの分割領域の担当のデータ変更端末に依頼する。
すなわち、端末Ｂ１自身がグループＣに所属する各端末に対して、メンバーテーブルから端末Ｂ１を消去することを同報通知し、また、端末Ｂ１の状態テーブルのある分割領域に対応するデータ変更端末がグループＣに所属する各端末に対して、端末Ｂ１の状態テーブルを消去することを同報通知する。
【０１５０】
そして、グループＣのメンバの各端末は、メンバーテーブルから離脱する端末Ｂ１の削除を行い、かつ状態テーブルを、データ変更端末から同報通知されたデータ内容に変更して、各データ変更端末の共有記憶領域と共有データの同期を取る。
また、グループのメンバーである各端末は、参加または編入している端末が、離脱を通知せずに勝手にグループから離脱した場合を検出するため、グループに所属するメンバである端末を定期的に（所定の期間毎に）監視、すなわち、メンバーテーブルに記載されている順番に、すなわち、自身の次にテーブルに記載されているメンバーが存在するか、または正常に動作しているか否かを、上記メンバに対して確認パケットを送信して、この確認パケットに対する応答パケットにより検出する（他の端末の監視を行う）。このとき、テーブルの最後に記載されている端末は、テーブルの最初に記載されている端末の監視を行う。
【０１５１】
ここで、例えば、メンバーテーブルにおけるｎ番目（メンバーテーブルに書き込まれている順番）の端末ｎは直後のｎ＋１番目の端末を監視し（監視パケットの送信及び応答パケットの受信等により）、直前のｎ−１番目の端末ｎ−１に監視され、同様にこの端末ｎ−１は直前の端末ｎ−２に監視されている。
そして、直前の端末ｎ−１は、端末ｎの状態を上述した処理により検出し、端末ｎが正常に動作していない（異常である）ことを検出すると、メンバ全員に対し、メンバテーブルの書き換え処理を同報通知する。
このとき、端末ｎ−１は、端末ｎが異常であることを検出した場合、同一グループ内における端末ｎ以外の他の全ての端末に対して、端末ｎが異常か否かの判定を依頼する。
そして、端末ｎ−１は、他の１台以上の端末から、すなわちいずれかの端末から、端末ｎが異常であるとの判定結果が応答されると、メンバの端末全てに対して、端末ｎのメンバテーブル及び状態テーブルの書き換えを行うことを指示するため、同報通知を行う。
一方、端末ｎ−１は、いずれの端末からも応答が無い場合、自身が異常である場合もあるため、グループサーバに対して、端末ｎ及び端末ｎ−１の状態を問い合わせる。
そして、端末ｎ−１は、端末ｎが異常であるとグループサーバから通知されると、共有記憶領域からの端末ｎの削除を依頼する同報通知を行い、自身が異常であることを通知されると、自身を共有記憶領域から削除する事を依頼する同報通知を行い、グループから離脱する。
また、グループ内に２台しか端末が存在しないとき、互いに異常であると検出した場合、上述したように監視対象以外の端末に確認を依頼することができないため、直接に、グループサーバに対して、端末ｎ及び端末ｎ−１の状態を問い合わせる。
【０１５２】
これにより上述したように、端末ｎ−１は、グループに所属する全ての端末に対して、端末ｎの状態テーブルを削除することを同報通知する。
同様に、端末ｎ−１は、グループに所属する全ての端末に対して、メンバーテーブルから端末ｎを削除することを同報通知する。
そして、グループに所属する各端末は、端末ｎの異常を検出した端末、すなわち端末ｎ−１からの同報通知により、端末ｎの状態テーブルのデータを削除し、かつメンバーテーブルから端末ｎを削除する。
上述した検出処理により、グループ内の各端末は、自身の監視する端末がすでにグループに存在しないことを検出した場合や、その端末が故障して通話処理が行えないことを検出した場合、グループメンバである全ての端末に対して同報通知し、メンバーテーブルにおけるこの端末（異常が検出された端末）の削除、及び状態テーブルのデータの削除を要求し、グループ内の各端末が相互に異常か否かを監視している。
【０１５３】
なお、図２における通話処理部１，着呼先グループ検出部２，グループ内着呼先端末状態検出部３，グループ間着呼先端末状態検出部４，共有機能部６の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりコールシーケンスの処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１５４】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【図面の簡単な説明】
【０１５５】
【図１】本発明の一実施形態における電話交換システムの接続例を示す概念図である。
【図２】本発明の一実施形態の電話交換システムにおいて使用する端末の構成例を示すブロック図である。
【図３】端末のグループへの参加の処理を説明する概念図である。
【図４】端末のグループへの参加の処理を示すシーケンス図である。
【図５】コールシーケンスにおける発呼及び着呼の処理を説明する状態遷移図である。
【図６】コールシーケンスにおける発呼及び着呼の処理を示すシーケンス図である。
【図７】コールシーケンスにおける発呼及び着呼の処理を示すシーケンス図である。
【図８】コールシーケンスにおいて、着呼先が回線の切断を行う場合のシーケンス図である。
【図９】参加しているグループと異なるグループへの編入処理を説明する概念図である。
【符号の説明】
【０１５６】
１…通話処理部
２…着呼先グループ検出部
３…グループ内着呼先端末状態検出部
４…グループ間着呼先端末状態検出部
５…記憶部
６…共有機能部
【図１】
2007150841.tif 000003
【図２】
2007150841.tif 000004
【図３】
2007150841.tif 000005
【図４】
2007150841.tif 000006
【図５】
2007150841.tif 000007
【図６】
2007150841.tif 000008
【図７】
2007150841.tif 000009
【図８】
2007150841.tif 000010
【図９】
2007150841.tif 000011