(57)【要約】  サーバと複数の端末とが接続されるシステムにおいて、適切に中継サーバを設定して、共同作業を効率的に進めることができる共同作業システム、通信制御方法及び通信制御プログラムを提供する。サーバは、各々の端末から役割情報を取得し、取得した役割情報に基づいて、複数の端末の中から共同作業データの編集情報を中継する中継サーバとして動作させる端末を設定し、中継サーバとして設定された端末に他の端末からの接続を受け付けるように指示すると共に、他の端末に中継サーバとして設定された端末のアドレス情報を通知して当該端末に接続するように指示する。各々の端末は、サーバに自端末の役割情報を提供し、中継サーバとして設定された端末は、他の端末からの接続を受け付けてサーバ及び他の端末を編集情報の送信先に設定し、他の端末は、中継サーバとして設定された端末に接続して当該端末を編集情報の送信先に設定する。
2017195587.tif 000002
【特許請求の範囲】
【請求項１】
共同作業データの閲覧、編集を行う複数の端末と、前記複数の端末の通信を制御するサーバと、が通信ネットワークで接続され、一の端末で行われた前記共同作業データの編集を他の端末に反映させて共同作業を行う共同作業システムであって、
前記サーバは、
各々の端末から、前記共同作業における各端末の役割を示す役割情報を取得する役割情報取得部と、
前記各々の端末から取得した前記役割情報に基づいて、前記複数の端末の中から、前記共同作業データの編集情報を中継する中継サーバとして動作させる端末を設定する中継サーバ設定部と、
前記中継サーバとして設定された端末に、他の端末からの接続を受け付けるように指示すると共に、前記他の端末に、前記中継サーバとして設定された端末のアドレス情報を通知して、前記中継サーバとして設定された端末に接続するように指示する通信制御指示部と、を備え、
前記各々の端末は、
前記サーバに、自端末の前記役割情報を提供する役割情報提供部と、
前記共同作業データの編集情報を送信する通信制御部と、を備え、
前記中継サーバとして設定された端末の前記通信制御部は、前記他の端末からの接続を受け付けると共に、前記サーバ及び前記他の端末を前記共同作業データの編集情報の送信先に設定し、
前記他の端末の前記通信制御部は、当該他の端末を前記中継サーバとして設定された端末に接続すると共に、前記中継サーバとして設定された端末を前記共同作業データの編集情報の送信先に設定する、
ことを特徴とする共同作業システム。
【請求項２】
前記中継サーバ設定部は、新たな端末が前記共同作業に参加、若しくは、前記共同作業を行っている端末が退出した場合に、前記役割情報に基づいて、前記中継サーバとして動作させる端末を更新する、
ことを特徴とする請求項１に記載の共同作業システム。
【請求項３】
前記役割情報は、前記各々の端末に設けられた表示部の画面サイズであり、
前記中継サーバ設定部は、前記画面サイズが最も大きい端末を、前記中継サーバに設定する、
ことを特徴とする請求項１又は２に記載の共同作業システム。
【請求項４】
前記役割情報は、前記各々の端末を使用しているユーザ数又はユーザ種別であり、
前記中継サーバ設定部は、前記ユーザ数が最も多い又は特定のユーザが使用している端末を前記中継サーバに設定する、
ことを特徴とする請求項１又は２に記載の共同作業システム。
【請求項５】
前記役割情報は、前記各々の端末が配置されている位置であり、
前記中継サーバ設定部は、前記複数の端末のうち中央近傍に配置されている端末を、前記中継サーバに設定する、
ことを特徴とする請求項１又は２に記載の共同作業システム。
【請求項６】
前記役割情報は、前記各々の端末の処理能力を含み、
前記中継サーバ設定部は、前記処理能力が最も高い端末を、前記中継サーバに設定する、
ことを特徴とする請求項１又は２に記載の共同作業システム。
【請求項７】
物理的位置若しくは通信ネットワーク上の位置が所定の距離の範囲内である端末のグループが設定され、
前記中継サーバ設定部は、前記グループ毎に前記中継サーバの設定又は更新を行う、
ことを特徴とする請求項１乃至６のいずれか一に記載の共同作業システム。
【請求項８】
前記通信制御指示部は、新たな端末が前記共同作業に参加することにより、前記中継サーバに接続される端末の数が予め定めた上限を超える場合は、前記上限を超える分の所定の端末に対して、他のグループの中継サーバのアドレス情報、若しくは、前記サーバのアドレス情報を通知し、
前記所定の端末の前記通信制御部は、前記共同作業データの編集情報を前記他のグループの中継サーバに送信、若しくは、前記サーバに直接送信する、
ことを特徴とする請求項７に記載の共同作業システム。
【請求項９】
共同作業データの閲覧、編集を行う複数の端末と、前記複数の端末の通信を制御するサーバと、が通信ネットワークで接続され、一の端末で行われた前記共同作業データの編集を他の端末に反映させて共同作業を行う共同作業システムにおける通信制御方法であって、
前記サーバは、
各々の端末から、前記共同作業における各端末の役割を示す役割情報を取得する役割情報取得処理と、
前記各々の端末から取得した前記役割情報に基づいて、前記複数の端末の中から、前記共同作業データの編集情報を中継する中継サーバとして動作させる端末を設定する中継サーバ設定処理と、
前記中継サーバとして設定された端末に、他の端末からの接続を受け付けるように指示すると共に、前記他の端末に、前記中継サーバとして設定された端末のアドレス情報を通知して、前記中継サーバとして設定された端末に接続するように指示する通信制御指示処理と、を実行し、
前記各々の端末は、
前記サーバに、自端末の前記役割情報を提供する役割情報提供処理と、
前記共同作業データの編集情報を送信する通信制御処理と、を実行し、
前記通信制御処理では、前記中継サーバとして設定された端末は、前記他の端末からの接続を受け付けると共に、前記サーバ及び前記他の端末を前記共同作業データの編集情報の送信先に設定し、前記他の端末は、前記中継サーバとして設定された端末に接続すると共に、前記中継サーバとして設定された端末を前記共同作業データの編集情報の送信先に設定する、
ことを特徴とする通信制御方法。
【請求項１０】
前記中継サーバ設定処理では、新たな端末が前記共同作業に参加、若しくは、前記共同作業を行っている端末が退出した場合に、前記役割情報に基づいて、前記中継サーバとして動作させる端末を更新する、
ことを特徴とする請求項９に記載の通信制御方法。
【請求項１１】
前記役割情報は、前記各々の端末に設けられた表示部の画面サイズであり、
前記中継サーバ設定処理では、前記画面サイズが最も大きい端末を、前記中継サーバに設定する、
ことを特徴とする請求項９又は１０に記載の通信制御方法。
【請求項１２】
前記役割情報は、前記各々の端末を使用しているユーザ数又はユーザ種別であり、
前記中継サーバ設定処理では、前記ユーザ数が最も多い又は特定のユーザが使用している端末を、前記中継サーバに設定する、
ことを特徴とする請求項９又は１０に記載の通信制御方法。
【請求項１３】
前記役割情報は、前記各々の端末が配置されている位置であり、
前記中継サーバ設定処理では、前記複数の端末のうち中央近傍に配置されている端末を、前記中継サーバに設定する、
ことを特徴とする請求項９又は１０に記載の通信制御方法。
【請求項１４】
前記役割情報は、前記各々の端末の処理能力を含み、
前記中継サーバ設定処理では、前記処理能力が最も高い端末を、前記中継サーバに設定する、
ことを特徴とする請求項９又は１０に記載の通信制御方法。
【請求項１５】
物理的位置若しくは通信ネットワーク上の位置が所定の距離の範囲内である端末のグループが設定され、
前記中継サーバ設定処理では、前記グループ毎に前記中継サーバの設定又は更新を行う、
ことを特徴とする請求項９乃至１４のいずれか一に記載の通信制御方法。
【請求項１６】
前記通信制御指示処理では、新たな端末が前記共同作業に参加することにより、前記中継サーバに接続される端末の数が予め定めた上限を超える場合は、前記上限を超える分の所定の端末に対して、他のグループの中継サーバのアドレス情報、若しくは、前記サーバのアドレス情報を通知し、
前記通信制御処理では、前記所定の端末は、前記共同作業データの編集情報を前記他のグループの中継サーバに送信、若しくは、前記サーバに直接送信する、
ことを特徴とする請求項１５に記載の通信制御方法。
【請求項１７】
一の端末で行われた共同作業データの編集を他の端末に反映させて共同作業を行う複数の端末の通信を制御するサーバで動作する通信制御プログラムであって、
前記サーバに、
各々の端末から、前記共同作業における各端末の役割を示す役割情報を取得する役割情報取得処理、
前記各々の端末から取得した前記役割情報に基づいて、前記複数の端末の中から、前記共同作業データの編集情報を中継する中継サーバとして動作させる端末を設定する中継サーバ設定処理、
前記中継サーバとして設定された端末に、他の端末からの接続を受け付けるように指示すると共に、前記他の端末に、前記中継サーバとして設定された端末のアドレス情報を通知して、前記中継サーバとして設定された端末に接続するように指示する通信制御指示処理、を実行させる、
ことを特徴とする通信制御プログラム。
【請求項１８】
前記中継サーバ設定処理では、新たな端末が前記共同作業に参加、若しくは、前記共同作業を行っている端末が退出した場合に、前記役割情報に基づいて、前記中継サーバとして動作させる端末を更新する、
ことを特徴とする請求項１７に記載の通信制御プログラム。
【請求項１９】
前記役割情報は、前記各々の端末に設けられた表示部の画面サイズであり、
前記中継サーバ設定処理では、前記画面サイズが最も大きい端末を、前記中継サーバに設定する、
ことを特徴とする請求項１７又は１８に記載の通信制御プログラム。
【請求項２０】
前記役割情報は、前記各々の端末を使用しているユーザ数又はユーザ種別であり、
前記中継サーバ設定処理では、前記ユーザ数が最も多い又は特定のユーザが使用している端末を、前記中継サーバに設定する、
ことを特徴とする請求項１７又は１８に記載の通信制御プログラム。
【請求項２１】
前記役割情報は、前記各々の端末が配置されている位置であり、
前記中継サーバ設定処理では、前記複数の端末のうち中央近傍に配置されている端末を、前記中継サーバに設定する、
ことを特徴とする請求項１７又は１８に記載の通信制御プログラム。
【請求項２２】
前記役割情報は、前記各々の端末の処理能力を含み、
前記中継サーバ設定処理では、前記処理能力が最も高い端末を、前記中継サーバに設定する、
ことを特徴とする請求項１７又は１８に記載の通信制御プログラム。
【請求項２３】
共同作業データの閲覧、編集を行う複数の端末と、前記複数の端末の通信を制御するサーバと、が通信ネットワークで接続され、一の端末で行われた前記共同作業データの編集を他の端末に反映させて共同作業を行う共同作業システムにおける各々の端末で動作する通信制御プログラムであって、
前記各々の端末に、
前記サーバからの要求に従って、前記サーバに、前記共同作業における自端末の役割を示す役割情報を提供する役割情報提供処理、
前記共同作業データの編集情報を送信する通信制御処理、を実行させ、
前記通信制御処理では、前記サーバにより前記役割情報に基づいて前記共同作業データの編集情報を中継する中継サーバとして設定された端末は、前記サーバの指示に従って接続を受け付けた端末を前記共同作業データの編集情報の送信先に設定し、前記中継サーバとして設定されなかった端末は、前記サーバの指示に従って前記中継サーバとして設定された端末に接続すると共に、前記中継サーバとして設定された端末を前記共同作業データの編集情報の送信先に設定する、
ことを特徴とする通信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、共同作業システム、通信制御方法及び通信制御プログラムに関し、特に、中継サーバを介して一の端末で行われた共同作業データの編集を他の端末に反映させて共同作業を行う共同作業システム、中継サーバを介した通信を制御する通信制御方法及び通信制御プログラムに関する。
【背景技術】
【０００２】
サーバに保存された共同作業データを複数の端末にて同時に共有表示し、共同で編集できるようにすることにより、遠隔会議等でコンテンツ共有を実現する共同作業システムが提案されている。この共同作業システムにおいて、その場に存在する端末間では出来るだけ早く共同作業データの編集を反映させたいという要求がある。この要求を実現する方法としては、例えば、複数の端末が配置される拠点に中継サーバを設ける方法が考えられる。【０００３】
上記の共同作業システムに関する発明ではないが、データの中継に関する技術として、例えば、下記特許文献１には、クライアントと複数のサーバとの間で受け渡される通信情報を中継する機能を有するデータ中継サーバが開示されている。このデータ中継サーバは、属性管理テーブルを記憶する記憶手段、第１の連携手段、第２の連携手段、及びデータ記憶手段を有しており、サーバ固有属性名と共有属性名との対応付けを予め属性管理テーブルによって管理しておくことで、第１のサーバ固有属性名と第２のサーバ固有属性名との対応付けを属性管理テーブルに登録された共有属性名を介して行うことが可能となり、データ中継サーバ上で出力データと入力データとの連携を実現できると記載されている。【０００４】
また、複数の端末をネットワークで接続するシステムにおける通信形態を変更する技術に関して、例えば、下記特許文献２には、ＩＰ網に接続し、多地点に配置した複数のクライアント端末と、前記ＩＰ網に接続し、会議に参加する前記複数のクライアント端末の会議通信を制御する多地点会議装置と、からなる多地点会議システムが開示されている。この多地点会議システムにおいて、前記多地点会議装置は、会議に参加する前記複数のクライアント端末の台数を監視し、前記台数が所定数以下の場合、会議に参加する前記複数のクライアント端末相互間の会議通信を制御し、前記台数が所定数を超える場合には、音声データおよび映像データを会議に参加する前記クライアント端末に配信する会議通信を制御する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−２５０７８１号公報
【特許文献２】特開２００７−０７２７３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
中継サーバは、共同作業に参加する複数の端末が配置される拠点におけるネットワーク構成が最適となるように設定されることが好ましい。そこで、従来は、データ処理能力が高い機器（例えば、プロセッサの演算処理速度が大きい機器や、データ通信速度が大きい機器など）を拠点に配置して中継サーバとして設定し、その中継サーバに拠点内の複数の端末を順次接続してネットワークを構成していた。【０００７】
このように、データ処理能力が高い機器を中継サーバに設定することにより、拠点全体のデータ処理を速くすることができるが、共同作業においては、拠点全体のデータ処理よりも特定の端末のデータ処理を速くした方が共同作業を効率的に進めることができる場合がある。例えば、拠点内の複数の端末には、１人のユーザが使用するパーソナルコンピュータなどのコンピュータ端末や、スマートフォンやタブレット端末などの携帯端末もあれば、複数のユーザが使用するプロジェクタや大型ディスプレイなどの大型表示機器もある。そして、各々の端末は共同作業における役割が異なり、多くのユーザが使用している端末や拠点の主要な場所に設置されている端末などの特定の端末は共同作業における重要度が高く、この特定の端末にできるだけ早く他の端末で行われた編集を反映させることが望ましい。従って、中継サーバを設定することによって拠点全体のデータ処理を速くすることができたとしても、必ずしも共同作業を効率的に進めることができない。【０００８】
更に、携帯端末を用いるなどして参加者が遠隔地などからテンポラリーに参加するというような会議形態では、新たに会議に参加する端末（ネットワークに追加される端末）や会議から退出する端末（ネットワークから除外される端末）が随時発生し、ネットワーク構成が変化する。そのため、初期段階でネットワーク構成が最適になるように中継サーバを設定したとしても、端末の参加／退出によりネットワーク構成が変化することにより共同作業を効率的に進めることができない場合が生じる。この問題に対して、特許文献２では端末の台数に応じて動的に通信方式を変えているが、上述したように共同作業システムでは共同作業における役割が各々異なる様々な種類の端末が使用されるため、単に台数に基づいて通信方式を変えても共同作業を効率的に進めることができない。【０００９】
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、サーバと複数の端末とが接続されるネットワークにおいて、適切に中継サーバを設定して、共同作業を効率的に進めることができる共同作業システム、通信制御方法及び通信制御プログラムを提供することにある。【００１０】
また、本発明の他の目的は、端末の参加／退出によりネットワーク構成が変化した場合でも、適切に中継サーバを更新して、共同作業を効率的に進めることができる共同作業システム、通信制御方法及び通信制御プログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の一側面は、共同作業データの閲覧、編集を行う複数の端末と、前記複数の端末の通信を制御するサーバと、が通信ネットワークで接続され、一の端末で行われた前記共同作業データの編集を他の端末に反映させて共同作業を行う共同作業システムであって、前記サーバは、各々の端末から、前記共同作業における各端末の役割を示す役割情報を取得する役割情報取得部と、前記各々の端末から取得した前記役割情報に基づいて、前記複数の端末の中から、前記共同作業データの編集情報を中継する中継サーバとして動作させる端末を設定する中継サーバ設定部と、前記中継サーバとして設定された端末に、他の端末からの接続を受け付けるように指示すると共に、前記他の端末に、前記中継サーバとして設定された端末のアドレス情報を通知して、前記中継サーバとして設定された端末に接続するように指示する通信制御指示部と、を備え、前記各々の端末は、前記サーバに、自端末の前記役割情報を提供する役割情報提供部と、前記共同作業データの編集情報を送信する通信制御部と、を備え、前記中継サーバとして設定された端末の前記通信制御部は、前記他の端末からの接続を受け付けると共に、前記サーバ及び前記他の端末を前記共同作業データの編集情報の送信先に設定し、前記他の端末の前記通信制御部は、当該他の端末を前記中継サーバとして設定された端末に接続すると共に、前記中継サーバとして設定された端末を前記共同作業データの編集情報の送信先に設定することを特徴とする。【００１２】
本発明の一側面は、共同作業データの閲覧、編集を行う複数の端末と、前記複数の端末の通信を制御するサーバと、が通信ネットワークで接続され、一の端末で行われた前記共同作業データの編集を他の端末に反映させて共同作業を行う共同作業システムにおける通信制御方法であって、前記サーバは、各々の端末から、前記共同作業における各端末の役割を示す役割情報を取得する役割情報取得処理と、前記各々の端末から取得した前記役割情報に基づいて、前記複数の端末の中から、前記共同作業データの編集情報を中継する中継サーバとして動作させる端末を設定する中継サーバ設定処理と、前記中継サーバとして設定された端末に、他の端末からの接続を受け付けるように指示すると共に、前記他の端末に、前記中継サーバとして設定された端末のアドレス情報を通知して、前記中継サーバとして設定された端末に接続するように指示する通信制御指示処理と、を実行し、前記各々の端末は、前記サーバに、自端末の前記役割情報を提供する役割情報提供処理と、前記共同作業データの編集情報を送信する通信制御処理と、を実行し、前記通信制御処理では、前記中継サーバとして設定された端末は、前記他の端末からの接続を受け付けると共に、前記サーバ及び前記他の端末を前記共同作業データの編集情報の送信先に設定し、前記他の端末は、前記中継サーバとして設定された端末に接続すると共に、前記中継サーバとして設定された端末を前記共同作業データの編集情報の送信先に設定することを特徴とする。【００１３】
本発明の一側面は、一の端末で行われた共同作業データの編集を他の端末に反映させて共同作業を行う複数の端末の通信を制御するサーバで動作する通信制御プログラムであって、前記サーバに、各々の端末から、前記共同作業における各端末の役割を示す役割情報を取得する役割情報取得処理、前記各々の端末から取得した前記役割情報に基づいて、前記複数の端末の中から、前記共同作業データの編集情報を中継する中継サーバとして動作させる端末を設定する中継サーバ設定処理、前記中継サーバとして設定された端末に、他の端末からの接続を受け付けるように指示すると共に、前記他の端末に、前記中継サーバとして設定された端末のアドレス情報を通知して、前記中継サーバとして設定された端末に接続するように指示する通信制御指示処理、を実行させることを特徴とする。【００１４】
本発明の一側面は、共同作業データの閲覧、編集を行う複数の端末と、前記複数の端末の通信を制御するサーバと、が通信ネットワークで接続され、一の端末で行われた前記共同作業データの編集を他の端末に反映させて共同作業を行う共同作業システムにおける各々の端末で動作する通信制御プログラムであって、前記各々の端末に、前記サーバからの要求に従って、前記サーバに、前記共同作業における自端末の役割を示す役割情報を提供する役割情報提供処理、前記共同作業データの編集情報を送信する通信制御処理、を実行させ、前記通信制御処理では、前記サーバにより前記役割情報に基づいて前記共同作業データの編集情報を中継する中継サーバとして設定された端末は、前記サーバの指示に従って接続を受け付けた端末を前記共同作業データの編集情報の送信先に設定し、前記中継サーバとして設定されなかった端末は、前記サーバの指示に従って前記中継サーバとして設定された端末に接続すると共に、前記中継サーバとして設定された端末を前記共同作業データの編集情報の送信先に設定する、ことを特徴とする。
【発明の効果】
【００１５】
本発明の共同作業システム、通信制御方法及び通信制御プログラムによれば、サーバと複数の端末とが接続されるネットワークにおいて、適切に中継サーバを設定して、共同作業を効率的に進めることができる。【００１６】
その理由は、共同作業システムのサーバは、各々の端末から共同作業における各端末の役割を示す役割情報を取得し、各々の端末から取得した役割情報に基づいて、複数の端末の中から、共同作業データの編集情報を中継する中継サーバとして動作させる端末を設定し、中継サーバとして設定された端末に、他の端末からの接続を受け付けるように指示すると共に、他の端末には、中継サーバとして設定された端末のアドレス情報を通知して、中継サーバに接続するように指示するからである。そして、各々の端末は、サーバに、自端末の前記役割情報を提供し、中継サーバとして設定された端末は、他の端末からの接続を受け付けると共に、サーバ及び他の端末を共同作業データの編集情報の送信先に設定することにより、自端末及び他の端末で行った共同作業データの編集情報を、接続を受け付けた端末に送信し、他の端末は、中継サーバとして設定された端末に接続すると共に、前記中継サーバとして設定された端末を前記共同作業データの編集情報の送信先に設定することにより、自端末で行った共同作業データの編集情報を、サーバから通知されたアドレス情報宛てに送信する制御を行うからである。【００１７】
本発明の共同作業システム、通信制御方法及び通信制御プログラムによれば、端末の参加／退出によりネットワーク構成が変化した場合でも、適切に中継サーバを更新して、共同作業を効率的に進めることができる。【００１８】
その理由は、新たな端末が共同作業に参加、若しくは、共同作業を行っている端末が退出することによりネットワーク構成が変更された場合に、役割情報に基づいて、中継サーバとして動作させる端末を更新する制御を行うからである。
【図面の簡単な説明】
【００１９】
【図１Ａ】本発明の一実施例に係る共同作業システムの構成の一例を示す模式図である。
【図１Ｂ】本発明の一実施例に係る共同作業システムの構成の別の例を示す模式図である。
【図２Ａ】本発明の一実施例に係るサーバの構成を示すブロック図である。
【図２Ｂ】本発明の一実施例に係るサーバの構成を示すブロック図である。
【図３Ａ】本発明の一実施例に係るクライアント端末の構成を示すブロック図である。
【図３Ｂ】本発明の一実施例に係るクライアント端末の構成を示すブロック図である。
【図４Ａ】本発明の一実施例に係る中継サーバ設定／更新の一例を示す模式図である。
【図４Ｂ】本発明の一実施例に係る中継サーバ設定／更新の他の例を示す模式図である。
【図４Ｃ】本発明の一実施例に係る中継サーバ設定／更新の他の例を示す模式図である。
【図５】本発明の一実施例に係るサーバの動作（中継サーバの設定動作）を示すフローチャート図である。
【図６】本発明の一実施例に係るクライアント端末の動作を示すフローチャート図である。
【図７】本発明の一実施例に係るサーバの動作（中継サーバの更新動作）を示すフローチャート図である。
【図８】本発明の一実施例に係るサーバの動作（ネットワーク構成の変更動作）を示すフローチャート図である。
【発明を実施するための形態】
【００２０】
背景技術で示したように、サーバに保存された共同作業データを複数の端末にて同時に共有表示し、共同で編集できるようにする共同作業システムでは、その場に存在する端末間で出来るだけ早く共同作業データの編集を反映させるために中継サーバが設けられる。この中継サーバは、共同作業を行う複数の端末が配置される拠点におけるネットワーク構成が最適となるように設定されることが好ましいことから、従来は、データ処理能力が高い機器を拠点に配置して中継サーバに設定していた。
【００２１】
しかしながら、共同作業においては、パーソナルコンピュータなどのコンピュータ端末や、スマートフォンやタブレット端末などの携帯端末、プロジェクタや大型ディスプレイなどの大型表示機器などの様々な端末が使用され、端末毎に共同作業における役割が異なるため、データ処理能力が高い機器を中継サーバに設定して拠点全体のデータ処理を早くしても、必ずしも共同作業を効率的に進めることができない。
【００２２】
更に、参加者が遠隔地などからテンポラリーに参加する会議形態では、新たに会議に参加する端末（ネットワークに追加される端末）や会議から退出する端末（ネットワークから除外される端末）が随時発生し、ネットワークを構成する端末が変化する。そのため、初期段階でネットワーク構成が最適になるように中継サーバを設定したとしても、端末の参加／退出によりネットワーク構成が最適ではなくなり、共同作業を効率的に進めることができない場合が生じる。
【００２３】
すなわち、共同作業では、各々の端末の役割が異なり、また、新たに共同作業に参加する端末や共同作業から退出する端末が随時発生してネットワークを構成する端末が変化するため、データ処理能力が高い機器を中継サーバに設定し、その中継サーバを固定して使用する従来の方法では、共同作業を効率的に進めることができないという問題がある。
【００２４】
そこで、本発明の一実施の形態では、共同作業データの閲覧、編集を行う複数の端末と、これらの端末の通信を制御するサーバと、が通信ネットワークで接続され、一の端末で行われた共同作業データの編集を他の端末に反映させることにより、複数の端末で同じデータを閲覧・編集する共同作業システムにおいて、サーバにより、各端末の共同作業における役割を考慮して中継サーバを設定する。すなわち、サーバは、各々の端末から、共同作業における各端末の役割を示す役割情報を取得し、取得した役割情報に基づいて、複数の端末の中から、共同作業データの編集情報を中継する中継サーバとして動作させる端末を設定する。そして、サーバは、中継サーバとして設定された端末に、他の端末からの接続を受け付けるように指示すると共に、他の端末に、中継サーバとして設定された端末のアドレス情報を通知して、中継サーバとして設定された端末に接続するように指示する。具体的には、サーバは、他の端末での編集を最も早く反映させることが望ましい特定の端末を中継サーバとして機能させ、他の端末をその中継サーバに接続し、中継サーバを介して通信させる。このように、特定の端末を中継サーバに設定し、中継サーバを介して端末間の通信を制御することにより、中継サーバとして設定された特定の端末に他の端末で行われた編集を迅速に反映させることができ、共同作業を効率的に進めることができる。
【００２５】
また、共同作業では、新しく共同作業に参加する端末が生じたり、共同作業に参加している端末が共同作業から退出したりすることがあるため、端末の参加／退出が発生した段階で、サーバにより、各端末の共同作業における役割を考慮して中継サーバを更新することが望ましい。ネットワークの構成が変化する度に中継サーバを更新することにより、現在のネットワーク構成において重要な役割を果たす特定の端末に他の端末で行われた編集を迅速に反映させることができ、共同作業を効率的に進めることができる。
【実施例】
【００２６】
上記した本発明の一実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係る共同作業システム、通信制御方法及び通信制御プログラムについて、図１Ａ乃至図８を参照して説明する。図１Ａ、１Ｂは、本実施例の共同作業システムの構成を示す模式図であり、図２Ａ、２Ｂは、サーバの構成を示すブロック図、図３Ａ、３Ｂは、クライアント端末の構成を示すブロック図である。また、図４Ａ、４Ｂ、４Ｃは、本実施例の中継サーバの設定／更新制御の一例を示す模式図であり、図５、７、８は、本実施例のサーバの動作を示すフローチャート図、図６は、本実施例のクライアント端末の動作を示すフローチャート図である。【００２７】
本実施例の共同作業システムは、ネットワーク上に配置された、遠隔会議等の共同作業を管理するサーバ１０と、共同作業を行うユーザが利用する複数のクライアント端末２０と、で構成され、複数のクライアント端末２０の内の一つが中継サーバとして動作する。図１Ａに示す例では、共同作業システムが、サーバ１０と、コンピュータ端末２０Ａ、大型表示装置２０Ｂ、及び携帯端末２０Ｃなどの複数のクライアント端末２０とで構成されている。サーバ１０と複数のクライアント端末２０は、イーサネット（登録商標）、トークンリング、ＦＤＤＩ（Fiber-Distributed Data Interface）等の規格により定められるＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network）等の通信ネットワーク５０を介して接続されている。【００２８】
なお、図１Ａでは、サーバ１０と複数のクライアント端末２０とが同一の通信ネットワーク５０に接続されている共同作業システムを示したが、図１Ｂに示すように、複数のクライアント端末２０（コンピュータ端末２０Ａ、大型表示装置２０Ｂ、及び携帯端末２０Ｃなど）が職場（拠点）のイントラネット５０Ａに接続され、サーバ１０がインターネット５０Ｂに接続されるなど、共同作業システムにおける通信ネットワーク５０の構成は適宜設定することができる。以下、各装置について詳細に説明する。【００２９】
［サーバ］
サーバ１０は、クライアント端末２０間の通信を制御するコンピュータ装置などであり、図２Ａに示すように、制御部１１と記憶部１５と通信Ｉ／Ｆ部１６と、必要に応じて、表示部と操作部などで構成される。【００３０】
制御部１１は、マイクロプロセッサ等により構成されるＣＰＵ（Central Processing Unit）１２と、ＲＯＭ（Read Only Memory）１３やＲＡＭ（Random Access Memory）１４などのメモリと、で構成され、ＣＰＵ１２は、ＲＯＭ１３や記憶部１５から制御プログラムを呼び出し、ＲＡＭ１４に展開して実行することにより、サーバ１０全体の動作を制御する。上記制御部１１は、図２Ｂに示すように、役割情報取得部１１ａ、中継サーバ設定部１１ｂ、通信制御指示部１１ｃなどとしても機能する。【００３１】
役割情報取得部１１ａは、共同作業を開始する時やクライアント端末２０が共同作業に参加したり共同作業から退出したりする時に、各クライアント端末２０に、共同作業における各クライアント端末２０の役割を示す情報（以下、役割情報と呼ぶ。）の送信を指示し、各クライアント端末２０から役割情報を取得する。なお、役割情報は、共同作業における各クライアント端末２０の役割を表す指標であり、例えば、各クライアント端末２０の表示部の画面サイズ情報、各クライアント端末２０を使用しているユーザ数やユーザ種別などのユーザ情報、各クライアント端末２０の拠点における物理的な位置若しくは通信ネットワーク５０上の位置を示す位置情報、各クライアント端末２０の処理能力を示す能力情報などである。【００３２】
中継サーバ設定部１１ｂは、各クライアント端末２０から取得した役割情報に基づいて、複数のクライアント端末２０の中から、中継サーバとして動作させるクライアント端末２０を設定する。具体的には、中継サーバ設定部１１ｂは、各クライアント端末２０から取得した役割情報に基づいて、共同作業において重要な役割を果たしているクライアント端末２０を特定し、特定したクライアント端末２０に他のクライアント端末２０で行われた編集が最も早く反映されるように、当該クライアント端末２０を中継サーバに設定する。例えば、表示部の画面サイズが最も大きいクライアント端末２０は、多くのユーザに使用され、共同作業の中心的役割を果たすと考えられることから、そのクライアント端末２０を中継サーバに設定してもよい。また、多くのユーザが使用しているクライアント端末２０や共同作業を進行する責任者などが使用しているクライアント端末２０は、共同作業の中心的役割を果たすと考えられることから、そのクライアント端末２０を中継サーバに設定してもよい。また、クライアント端末２０が配置されている拠点の中央近傍に配置されているクライアント端末２０（複数のクライアント端末２０のうち中央近傍に配置されているクライアント端末２０）は、共同作業の中心的役割を果たすと考えられることから、各クライアント端末２０の拠点における物理的な位置に基づいて、複数のクライアント端末２０のうち中央近傍に位置するクライアント端末２０を特定し、そのクライアント端末２０を中継サーバに設定してもよい。また、表示部の画面サイズが最も大きいクライアント端末２０や使用しているユーザ数が最も多いクライアント端末２０、責任者が使用しているクライアント端末２０、クライアント端末２０が配置されている拠点中央近傍に配置されているクライアント端末２０（複数のクライアント端末２０のうち中央近傍に配置されているクライアント端末２０）は、処理性能の高いクライアント端末２０が割り当てられる蓋然性が高いと考えられることから、そのクライアント端末２０を中継サーバに設定してもよい。また、中継サーバ設定部１１ｂは、クライアント端末２０が共同作業に参加したり共同作業から退出したりすることによってネットワーク構成が変更された場合、各クライアント端末２０から取得した役割情報に基づいて、中継サーバとして動作させるクライアント端末２０を更新する。なお、ネットワーク構成の変更前後でクライアント端末２０の種類（コンピュータ端末や携帯端末、大型表示機器）が変わらない場合や、ネットワーク構成の変更前後で中継サーバとして動作させるクライアント端末２０の性能差が所定値未満の場合は、中継サーバとして動作させるクライアント端末２０を更新しない。また、中継サーバ設定部１１ｂは、物理的位置若しくは通信ネットワーク５０上の位置が近い（例えば、所定の距離範囲内である）クライアント端末２０のグループ毎に、中継サーバの設定又は更新を行う。【００３３】
通信制御指示部１１ｃは、中継サーバとして設定されたクライアント端末２０に対しては、中継サーバとして通信制御を行うように指示する。具体的には、中継サーバとして設定されたクライアント端末２０に、他のクライアント端末２０からの接続を受け付けるように指示して、自端末及び他のクライアント端末２０で行った共同作業データに対する編集の情報（以下、編集情報と称する。）を、サーバ１０及び接続を受け付けた他のクライアント端末２０に送信するように指示する。また、中継サーバとして設定されなかったクライアント端末２０に対しては、中継サーバに対する通信の制御を行うように指示する。具体的には、中継サーバとして設定されなかったクライアント端末２０に、中継サーバとして機能するクライアント端末２０のネットワーク５０上のアドレス情報（例えば、ＩＰ（Internet Protocol）アドレス）を通知して、中継サーバに接続するように指示すると共に、自端末の編集情報を、通知したアドレス情報宛てに送信するように指示する。また、通信制御指示部１１ｃは、クライアント端末２０が新たに共同作業に参加することにより、中継サーバに接続されるクライアント端末２０の数が予め定めた上限を超える場合は、上限を超える分のクライアント端末２０に対して、この中継サーバが属するクライアント端末２０のグループとは別のグループ（例えば、他の拠点のクライアント端末２０のグループ）の中継サーバのアドレス情報、若しくは、サーバ１０のアドレス情報を通知して、自端末の編集情報を、別のグループ（他の拠点）の中継サーバに送信、若しくは、サーバ１０に直接送信するように指示する。その際、役割情報に基づく優先順位に従って、他のグループの中継サーバに接続若しくはサーバ１０に直接接続するクライアント端末２０を選択する。【００３４】
上記役割情報取得部１１ａ、中継サーバ設定部１１ｂ、通信制御指示部１１ｃは、ハードウェアとして構成してもよいし、コンピュータ読み取り可能な記録媒体に記録され、実行時に、制御部１１を、役割情報取得部１１ａ、中継サーバ設定部１１ｂ、通信制御指示部１１ｃとして機能させるアプリケーション（通信制御プログラム）として構成し、この通信制御プログラムをＣＰＵ１２（ハードウェアプロセッサ）に実行させるようにしてもよい。【００３５】
記憶部１５は、メモリやＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）などで構成され、各クライアント端末２０から受信した役割情報、通信ネットワーク５０に接続されている各クライアント端末２０のアドレス情報、中継サーバとして機能するクライアント端末２０から受信した編集情報などを記憶する。【００３６】
通信Ｉ／Ｆ部１６は、ＮＩＣ（Network Interface Card）やモデムなどで構成され、通信ネットワーク５０に接続されているクライアント端末２０との通信を確立し、各クライアント端末２０から役割情報や参加／退出要求を受信したり、中継サーバとして設定されたクライアント端末２０から編集情報を受信したりする。【００３７】
［クライアント端末］
クライアント端末２０は、１又は複数のオブジェクトで構成される共同作業データの閲覧、編集を行う端末であり、パーソナルコンピュータなどのコンピュータ端末、スマートフォンやタブレット端末などの携帯端末、プロジェクタや大型ディスプレイなどの大型表示機器などで構成される。このクライアント端末２０は、図３Ａに示すように、制御部２１と記憶部２５と通信Ｉ／Ｆ部２６と表示部２７と操作部２８などで構成される。【００３８】
制御部２１は、マイクロプロセッサ等により構成されるＣＰＵ２２と、ＲＯＭ２３やＲＡＭ２４などのメモリと、で構成され、ＣＰＵ２２は、ＲＯＭ２３や記憶部２５から制御プログラムを呼び出し、ＲＡＭ２４に展開して実行することにより、クライアント端末２０全体の動作を制御する。上記制御部２１は、図３Ｂに示すように、役割情報提供部２１ａ、通信制御部２１ｂなどとしても機能する。【００３９】
役割情報提供部２１ａは、サーバ１０からの要求（役割情報の送信指示）に従って、自端末の役割情報（表示部２７の画面サイズ情報、自端末を使用しているユーザ数やユーザ種別などのユーザ情報、自端末の物理的又は通信ネットワーク５０上の位置を示す位置情報、自端末のＣＰＵ２２の処理能力や通信Ｉ／Ｆ部２６のデータ通信速度などを示す能力情報）をサーバ１０に提供する。なお、クライアント端末２０の使用に際してユーザにログインを要求する場合は、ログイン情報からユーザ数やユーザ種別などのユーザ情報を取得することができる。また、クライアント端末２０にＲＦＩＤ（Radio Frequency Identification）リーダなどを備える場合は、身分証明書に添付されたタグをＲＦＩＤリーダで読み取って得た識別情報からユーザ数やユーザ種別などのユーザ情報を取得することができる。また、クライアント端末２０にユーザを撮像するカメラなどを備える場合は、カメラで撮像した画像を解析して人物を抽出することによりユーザ数やユーザ種別などのユーザ情報を取得することができる。【００４０】
通信制御部２１ｂは、共同作業データの編集情報の送信先を設定し、設定した送信先に共同作業データの編集情報を送信する。具体的には、クライアント端末２０が中継サーバに設定されている場合は、通信Ｉ／Ｆ部２６を制御して、他のクライアント端末２０からの接続を受け付け、サーバ１０及び接続を受け付けた他のクライアント端末２０を編集情報の送信先に設定する。また、クライアント端末２０が中継サーバに設定されていない場合は、通信Ｉ／Ｆ部２６を制御して、サーバ１０から受信したアドレス情報を用いて中継サーバに設定されたクライアント端末２０に接続すると共に、中継サーバに設定されたクライアント端末２０を編集情報の送信先に設定する。なお、中継サーバとして設定されたクライアント端末２０は、所定のクライアント端末２０から編集情報を受信した場合、当該所定のクライアント端末２０以外の他のクライアント端末２０に編集情報を送信してもよいし、当該所定のクライアント端末２０を含む全ての他のクライアント端末２０に編集情報を送信（すなわち、編集情報の送信元のクライアント端末２０にも編集情報を送信）してもよい。【００４１】
上記役割情報提供部２１ａ、通信制御部２１ｂは、ハードウェアとして構成してもよいし、コンピュータ読み取り可能な記録媒体に記録され、実行時に、制御部２１を、役割情報提供部２１ａ、通信制御部２１ｂとして機能させるアプリケーション（通信制御プログラム）として構成し、当該通信制御プログラムを共同作業システムの各々のクライアント端末２０のＣＰＵ２２（ハードウェアプロセッサ）に実行させるようにしてもよい。【００４２】
記憶部２５は、メモリやＨＤＤ、ＳＳＤなどで構成され、サーバ１０に送信する役割情報、サーバ１０から受信したアドレス情報、他のクライアント端末２０に送信する編集情報、中継サーバとして設定されたクライアント端末２０から受信した編集情報などを記憶する。【００４３】
通信Ｉ／Ｆ部２６は、ＮＩＣやモデムなどで構成され、通信ネットワーク５０に接続されている他のクライアント端末２０やサーバ１０との通信を確立し、サーバ１０から役割情報の送信指示を受信したり、サーバ１０に役割情報や参加／退出要求を送信したり、中継サーバとして設定されたクライアント端末２０と他のクライアント端末２０との間で編集情報を送受信したりする。【００４４】
表示部２７は、ＬＣＤ（Liquid Crystal Display）や有機ＥＬ（Electro Luminescence）ディスプレイなどで構成され、共同作業データを表示すると共に、自端末又は他のクライアント端末２０の編集情報に基づいて共同作業データを編集して表示する。【００４５】
操作部２８は、マウスやキーボード、表示部２７上に配置された格子状の電極からなるタッチセンサなどで構成され、共同作業データの編集操作（例えば、オブジェクトの移動や拡大／縮小、手書き入力、テキスト入力、画像の貼り付けなどの操作）を受け付ける。【００４６】
なお、図１Ａ乃至図３Ｂは、本実施例の共同作業システムの一例であり、その構成や制御内容は適宜変更可能である。例えば、本実施例では、全てのクライアント端末２０を図３Ａ、３Ｂに示す構成としたが、制御部２１が役割情報提供部２１ａ及び通信制御部２１ｂとして動作可能であれば、各クライアント端末２０の構成は同じである必要はない。【００４７】
以下、上記構成の共同作業システムの動作について図４Ａ、４Ｂ、４Ｃを参照して概説する。なお、以下の説明において、サーバ１０の制御部１１は、プロジェクタや大型ディスプレイなどの大型表示機器２０Ｂを共同作業における役割が最も高いクライアント端末２０と判断し、パーソナルコンピュータなどのコンピュータ端末２０Ａを共同作業における役割が次に高いクライアント端末２０と判断するものとする。また、この共同作業システムでは、複数の拠点にクライアント端末２０が配置されており、図４Ａ、４Ｂ、４Ｃには、共同作業に参加しているクライアント端末２０のうち、１拠点に配置されているクライアント端末２０を示すものとする。図４Ａ、４Ｂ、４Ｃにおいて、太線で囲まれた機器は中継サーバとして設定されている機器を表わす。【００４８】
図４Ａに示すように、最初にコンピュータ端末１（図４Ａの２０Ａ１を参照）が共同作業に参加した時は、拠点内のクライアント端末２０が１台であるので、サーバ１０の制御部１１（中継サーバ設定部１１ｂ）は、コンピュータ端末１に対して、サーバ１０に直接接続するよう指示する。【００４９】
次に、図４Ｂに示すように、２台目のコンピュータ端末２（図４Ｂの２０Ａ２を参照）が共同作業に参加した時は、サーバ１０の制御部１１（中継サーバ設定部１１ｂ）は、各々のクライアント端末の役割情報に基づいて、共同作業における役割が相対的に大きいクライアント端末２０を中継サーバとして設定し、他のクライアント端末２０に対して、その中継サーバに接続するよう指示する。図４Ｂの例では、サーバ１０の制御部１１（中継サーバ設定部１１ｂ）は、コンピュータ端末１（図４Ｂの２０Ａ１を参照）を中継サーバとして設定し、コンピュータ端末２（図４Ｂの２０Ａ２を参照）に対して、その中継サーバに接続するよう指示する。【００５０】
次に、図４Ｃに示すように、大型表示機器２０Ｂが共同作業に参加した時は、サーバ１０の制御部１１（中継サーバ設定部１１ｂ）は、各々のクライアント端末の役割情報に基づいて、共同作業における役割が相対的に大きい大型表示機器２０Ｂを中継サーバに切り替え、他のクライアント端末２０に対して、その中継サーバに接続するよう指示する。図４Ｃの例では、サーバ１０の制御部１１（中継サーバ設定部１１ｂ）は、コンピュータ端末１及びコンピュータ端末２（図４Ｃの２０Ａ１、２０Ａ２を参照）に対して、中継サーバとして設定された大型表示機器２０Ｂに接続するよう指示する。【００５１】
図４Ｃの状態の共同作業システムにおける中継サーバの役割を説明する。中継サーバは配下に接続されているクライアント端末２０の通信をまとめる役割を持つ。例えば、配下の端末であるコンピュータ端末１（図４Ｃの２０Ａ１を参照）から編集情報を受信した場合には（図のＴ０１参照）、中継サーバは、その編集情報を他の配下のクライアント端末２０であるコンピュータ端末２（図４Ｃの２０Ａ２を参照）に送信すると共に（図のＴ０２参照）、上位のサーバ１０に送信し（図のＴ０３参照）、上位のサーバ１０は、受信した編集情報を他の拠点の中継サーバなどに送信する（図のＴ０４参照）。【００５２】
また、上位のサーバ１０は、他の拠点の中継サーバなどから編集情報を受信した場合は（図のＴ１１参照）、その編集情報を当該拠点の中継サーバに送信し（図のＴ１２参照）、中継サーバは、その編集情報を配下の全てのクライアント端末２０であるコンピュータ端末１、コンピュータ端末２（図４Ｃの２０Ａ１、２０Ａ２）に送信する（図のＴ１３参照）。【００５３】
このように、サーバ１０の制御部１１は、１拠点に配置されたクライアント端末２０のグループなどの、物理的位置若しくは通信ネットワーク５０上の位置が近い（所定の距離範囲内である）クライアント端末２０のグループ毎に、各々のクライアント端末２０の役割に応じて、中継サーバとして動作させるクライアント端末２０を設定／更新し、中継サーバを介してクライアント端末２０間のデータ通信を行うよう制御する。これにより、中継サーバとして設定された、共同作業における役割が最も大きいクライアント端末２０には、他のクライアント端末２０で行われた編集が最も早く反映されるため、共同作業を効率的に進めることができる。【００５４】
以下、上記構成の共同作業システムの動作について図５乃至図８を参照して具体的に説明する。なお、図では、必要に応じてクライアント端末２０を単に端末と記載している。【００５５】
［サーバの動作（中継サーバの設定動作）］
まず、拠点内の複数のクライアント端末２０の中から所定のクライアント端末２０を選択して中継サーバに設定する時のサーバ１０の動作について、図５を参照して説明する。サーバ１０のＣＰＵ１２は、ＲＯＭ１３又は記憶部１５に記憶した通信制御プログラムをＲＡＭ１４に展開して実行することにより、図５のフローチャート図に示す各ステップの処理を実行する。【００５６】
サーバ１０の制御部１１（役割情報取得部１１ａ）は、共同作業に参加している各クライアント端末２０に役割情報の送信を要求し、各クライアント端末２０から役割情報を取得する（Ｓ１０１）。【００５７】
次に、制御部１１（中継サーバ設定部１１ｂ）は、各クライアント端末２０の物理的な位置やネットワーク上の位置に応じて端末のグループを設定する（Ｓ１０２）。例えば、１拠点に配置されたクライアント端末２０などの、物理的位置若しくは通信ネットワーク上の位置が相対的に近い（すなわち、所定の距離の範囲内である）クライアント端末２０を１グループとしてまとめる。各クライアント端末２０の物理的な位置に応じてグループを設定する場合は、制御部１１（中継サーバ設定部１１ｂ）は、同じ室内や一定距離以内などに存在するクライアント端末２０を１グループとしてまとめる。なお、同じ室内かどうかや距離を取得する方法としは、例えばＲＦＩＤによる入退出管理やＧＰＳ（Global Positioning System）等を用いることができる。また、ネットワーク上の位置に応じてグループを設定する場合は、ＩＰアドレスが近いクライアント端末２０（例えば、同一ＬＡＮに接続されているクライアント端末２０）を、通信ネットワーク上の位置が所定の距離の範囲内である端末として１グループにまとめる。又は、クライアント端末２０間の通信環境（帯域、遅延など）を測定し、通信環境が一定以上のものを、通信ネットワーク上の位置が所定の距離の範囲内である端末として１グループにまとめることもできる。【００５８】
次に、制御部１１（中継サーバ設定部１１ｂ）は、グループ（拠点）毎に、そのグループに属するクライアント端末２０の台数が１台であるか複数台であるかを判断し（Ｓ１０３）、クライアント端末２０の台数が１台の場合は、中継サーバを設けず、制御部１１（通信制御指示部１１ｃ）は、そのクライアント端末２０にサーバ１０のアドレス情報を送信して、そのクライアント端末２０に対して、直接サーバ１０に接続するように指示する（Ｓ１０６）。【００５９】
一方、グループに属するクライアント端末２０の台数が複数台の場合は、制御部１１（中継サーバ設定部１１ｂ）は、各クライアント端末２０の役割情報に基づいて、複数台のクライアント端末２０の中から一台を選択し、中継サーバとして動作させるクライアント端末２０として設定する（Ｓ１０４）。例えば、各クライアント端末２０の役割情報に基づいて、クライアント端末２０の中から、画面サイズが相対的に大きいクライアント端末２０、又は、使用しているユーザ数が相対的に多いクライアント端末２０、又は、共同作業における重要なユーザが使用しているクライアント端末２０、又は、拠点の中央近傍に配置されているクライアント端末２０（複数のクライアント端末２０のうち中央近傍に配置されているクライアント端末２０）、又は、処理能力が相対的に高いクライアント端末２０を選択し、中継サーバとして動作させるクライアント端末２０として設定する。そして、制御部１１（通信制御指示部１１ｃ）は、選択したクライアント端末２０に対して中継サーバになるように指示（他のクライアント端末２０からの接続を受け付けるように指示）すると共に、他のクライアント端末２０に対して中継サーバのアドレス情報を送信して、中継サーバに接続するように指示する（Ｓ１０５）。【００６０】
［クライアント端末の動作］
次に、クライアント端末２０の動作について、図６を参照して説明する。各クライアント端末２０のＣＰＵ２２は、ＲＯＭ２３又は記憶部２５に記憶した通信制御プログラムをＲＡＭ２４に展開して実行することにより、図６のフローチャート図に示す各ステップの処理を実行する。【００６１】
各クライアント端末２０の制御部２１（役割情報提供部２１ａ）は、サーバ１０から役割情報の要求を受信すると（Ｓ２０１）、自端末の役割情報（表示部２７の画面サイズ情報や自端末を使用しているユーザ数やユーザ種別などのユーザ情報、自端末の位置情報、自端末の能力情報など）をサーバ１０に送信する（Ｓ２０２）。【００６２】
その後、各クライアント端末２０の制御部２１（通信制御部２１ｂ）は、共同作業データの編集情報を所定の送信先に送信する通信制御処理を実行する。中継サーバに設定されたクライアント端末２０では（Ｓ２０３のＹｅｓ）、制御部２１（通信制御部２１ｂ）は、サーバ１０から、他のクライアント端末２０からの接続を受け付ける旨の指示を受信し（Ｓ２０４）、他のクライアント端末２０からの接続を受け付けると（Ｓ２０５）、サーバ１０及び接続を受け付けた他のクライアント端末２０のアドレス情報を共同作業データの編集情報の送信先に設定する（Ｓ２０６）。また、中継サーバに設定されなかったクライアント端末２０では（Ｓ２０３のＮｏ）、制御部２１（通信制御部２１ｂ）は、サーバ１０から中継サーバに設定されたクライアント端末２０のアドレス情報を受信すると（Ｓ２０７）、中継サーバに接続すると共に（Ｓ２０８）、受信したアドレス情報を共同作業データの編集情報の送信先に設定する（Ｓ２０９）。すなわち、他のクライアント端末２０からの接続を受け付ける旨の指示を受信したクライアント端末２０は、中継サーバとして機能し、中継サーバのアドレス情報を受信したクライアント端末２０は、中継サーバの配下に配置される端末として機能し、それぞれ、設定された送信先に共同作業データの編集情報を送信することになる。【００６３】
このように、グループ（拠点）毎に、各クライアント端末２０の役割情報に基づいて、画面サイズが最も大きい、又は、使用しているユーザ数が最も多い、又は、共同作業における重要なユーザなど特定のユーザが使用している、又は、拠点の中央近傍に設置されている（複数のクライアント端末２０のうち中央近傍に配置されている）、又は処理能力が最も高いなど、共同作業における重要度が高いと考えられるクライアント端末２０を中継サーバとして設定し、中継サーバを介して編集情報の送受信が行われるようにネットワークを構成することにより、共同作業における重要度が高いクライアント端末２０に編集を迅速に反映させることができ、共同作業を効率的に行うことができるようになる。【００６４】
次に、共同作業中に、新たなクライアント端末２０が共同作業に参加する、若しくは、共同作業に参加しているクライアント端末２０が共同作業から退出する場合のサーバ１０の動作について、図７及び図８を参照して説明する。サーバ１０のＣＰＵ１２は、ＲＯＭ１３又は記憶部１５に記憶した通信制御プログラムをＲＡＭ１４に展開して実行することにより、図７及び図８のフローチャート図に示す各ステップの処理を実行する。なお、以下の説明において、サーバ１０の制御部１１は、プロジェクタや大型ディスプレイなどの大型表示機器を共同作業における役割が最も高いクライアント端末２０と判断し、パーソナルコンピュータなどのコンピュータ端末を共同作業における役割が次に高いクライアント端末２０と判断し、スマートフォンやタブレット端末などの携帯端末を共同作業における役割が低く、中継サーバとして適していないと判断するものとする。【００６５】
［サーバの動作（中継サーバの更新動作）］
サーバ１０の制御部１１（役割情報取得部１１ａ）は、新たに共同作業に参加、若しくは、共同作業から退出するクライアント端末２０から参加／退出の要求を受け付けたら（Ｓ３０１）、各クライアント端末２０に役割情報の送信を要求し、各クライアント端末２０から役割情報を取得する（Ｓ３０２）。次に、制御部１１（中継サーバ設定部１１ｂ）は、各クライアント端末２０の物理的な位置やネットワーク上の位置に応じてクライアント端末２０のグループを設定する（Ｓ３０３）。グループの設定方法は中継サーバの設定動作時と同様である。【００６６】
次に、制御部１１（中継サーバ設定部１１ｂ）は、グループ毎に、そのグループに属するクライアント端末２０の台数が１台であるか複数台であるかを判断し（Ｓ３０４）、クライアント端末２０の台数が複数台の場合は、その中にコンピュータ端末又は大型表示機器があるかを判断する（Ｓ３０５）。Ｓ３０４でグループに属するクライアント端末２０の台数が１台の場合、若しくは、Ｓ３０４でグループに属するクライアント端末２０の台数が複数台であり、Ｓ３０５で複数台のクライアント端末２０の中にコンピュータ端末も大型表示機器も無い場合は、中継サーバを設けず、制御部１１（通信制御指示部１１ｃ）は、全クライアント端末２０にサーバ１０のアドレス情報を送信して、全クライアント端末２０に対して、直接サーバ１０に接続するように指示する（Ｓ３０６）。【００６７】
一方、Ｓ３０５で複数台のクライアント端末２０の中にコンピュータ端末又は大型表示機器がある場合は、制御部１１（中継サーバ設定部１１ｂ）は、複数台のクライアント端末２０の中に大型表示機器があるかを判断する（Ｓ３０７）。【００６８】
複数台のクライアント端末２０の中に大型表示機器がある場合は、制御部１１（中継サーバ設定部１１ｂ）は、既に中継サーバとして設定されている大型表示機器があるかを判断し（Ｓ３０８）、中継サーバとして設定されている大型表示機器がある場合は、ネットワーク構成を変えずに、共同作業に参加しているクライアント端末２０に対して、中継サーバに接続するように指示する（Ｓ３０９）。一方、中継サーバとして設定されている大型表示機器がない場合は、制御部１１（中継サーバ設定部１１ｂ）は、中継サーバを大型表示機器に更新し（Ｓ３１０）、制御部１１（通信制御指示部１１ｃ）は、大型表示機器に対して中継サーバになるように指示（他のクライアント端末２０からの接続を受け付けるように指示）すると共に、他のクライアント端末２０に対して中継サーバに接続するように指示（中継サーバのアドレス情報を送信）する（Ｓ３１１）。【００６９】
また、Ｓ３０７で複数台のクライアント端末２０の中に大型表示機器がない場合は、制御部１１（中継サーバ設定部１１ｂ）は、既に中継サーバとして設定されている端末があるかを判断し（Ｓ３１２）、中継サーバとして設定されている端末がある場合は、ネットワーク構成を変えずに、共同作業に参加しているクライアント端末２０に対して、中継サーバに接続するように指示する（Ｓ３１３）。一方、中継サーバとして設定されている端末がない場合は、制御部１１（中継サーバ設定部１１ｂ）は、各々の端末の役割情報に基づいて、複数台のコンピュータ端末の中から中継サーバとして動作させるコンピュータ端末を選択（画面サイズが最も大きい、又は、使用しているユーザ数が最も多い、又は、共同作業における重要なユーザなどの特定のユーザが使用している、又は、拠点の中央近傍（複数のクライアント端末２０のうち中央近傍）に設置されている、又は、処理能力が最も高いコンピュータ端末を選択）して中継サーバを更新し（Ｓ３１４）、制御部１１（通信制御指示部１１ｃ）は、選択したクライアント端末２０に対して中継サーバになるように指示（他のクライアント端末２０からの接続を受け付けるように指示）すると共に、他のクライアント端末２０に中継サーバに接続するように指示（中継サーバのアドレス情報を送信）する（Ｓ３１５）。【００７０】
なお、上記フローではすでに中継サーバとして設定されているクライアント端末２０がある場合には、そのクライアント端末２０を中継サーバとして継続して使用するようにしているが、サーバ１０の制御部１１により、中継サーバの候補となるクライアント端末２０の役割情報を比較し、共同作業における役割が最も高いクライアント端末２０に切り替えるようにしても良い。また、新たに中継サーバを設定する際に候補となるクライアント端末２０が複数ある場合は、サーバ１０の制御部１１により、それらのクライアント端末２０の役割情報を比較し、共同作業における役割が最も高いクライアント端末２０を中継サーバとして選択するようにしても良い。中継サーバとして機能するクライアント端末２０は、通常のクライアント端末２０より負荷がかかるため、選択肢が複数ある場合には、サーバ１０の制御部１１により中継サーバとして最も性能の高いクライアント端末２０を選択することにより、共同作業システム全体のパフォーマンスを向上させることができる。【００７１】
さらに、新たなクライアント端末２０が共同作業に参加、若しくは、共同作業を行っているクライアント端末２０が退出することによりネットワーク構成が変更されて中継サーバを更新する際に、サーバ１０の制御部１１は、以前の中継サーバと変更後の中継サーバとでクライアント端末２０の種類が変わる場合にのみ中継サーバを切り替える（すなわち、ネットワーク構成の変更前後で中継サーバとして動作させるクライアント端末２０の種類が変わらない場合は、更新を行わない）ようにしても良い。又は、中継サーバを更新する際に、サーバ１０の制御部１１は、以前の中継サーバと変更後の中継サーバとの性能差を確認し、性能差が所定値以上の場合にのみ中継サーバを切り替える（すなわち、ネットワーク構成の変更前後で中継サーバとして動作させるクライアント端末２０の性能差が所定値未満の場合は、更新を行わない）ようにしても良い。このような制御を行うことにより、中継サーバの無駄な切り替えを未然に防止することができる。【００７２】
また、上記フローでは、サーバ１０の制御部１１により、グループ内の複数のクライアント端末２０の中から中継サーバを設定し、その配下に他のクライアント端末２０を接続したが、中継サーバとなるクライアント端末２０の性能によっては、配下のクライアント端末２０が増加していくと中継サーバの負荷が増え、共同作業システム全体のパフォーマンスが低下してしまう恐れがある。そのような不都合を防止するために、中継サーバとなるクライアント端末２０の性能に応じて接続台数の上限を設定してもよい。これにより、新たなクライアント端末２０が共同作業に参加することにより、中継サーバに接続されるクライアント端末２０の数が接続台数の上限を超える場合に、サーバ１０の制御部１１は、上限を超える分のクライアント端末２０に対して他のグループの中継サーバのアドレス情報、若しくは、サーバ１０のアドレス情報を通知し、上限を超える分のクライアント端末２０は、共同作業データの編集情報を他のグループの中継サーバに送信、若しくは、サーバ１０に直接送信することができる。【００７３】
その場合のサーバ１０の動作について、図８のフローチャート図を参照して説明する。なお、図８のフローは、前述したフローにおいて、サーバ１０の制御部１１が中継サーバを決定した後（図５のＳ１０５、図７のフローのＳ３０９、Ｓ３１１、Ｓ３１３、Ｓ３１５の後）に実施する。【００７４】
まず、制御部１１（通信制御指示部１１ｃ）は、中継サーバとして設定／更新されたクライアント端末２０の性能に基づいて、接続可能なクライアント端末２０の上限台数（接続上限台数）を計算し（Ｓ４０１）、現在の接続端末数が計算した接続上限台数を超えているかを判断する（Ｓ４０２）。なお、接続上限台数の計算方法は特に限定されないが、例えば、中継サーバとして設定／更新されたクライアント端末２０から、１台のクライアント端末２０に編集情報を送信する際のＣＰＵ２２の負荷を取得し、ＣＰＵ２２の総負荷が予め定めた値となる台数を接続上限台数とすることができる。【００７５】
現在の接続端末数が接続上限台数を超えていると判断した場合は、制御部１１（通信制御指示部１１ｃ）は、接続上限台数を超えた台数分のクライアント端末２０を、元のクライアント端末２０のグループ（メイングループ）とは別のグループ（メイングループのクライアント端末２０と場所は同一であるが、接続上限台数を超えた分のクライアント端末２０で構成されるサブグループ）に追加し、サブグループのクライアント端末２０に対して、図５のＳ１０３以降の中継サーバの設定処理、若しくは、図７のＳ３０４以降の中継サーバの更新処理を行う（Ｓ４０３）。すなわち、サーバ１０の制御部１１（通信制御指示部１１ｃ）は、接続上限台数を超えたクライアント端末２０に対して、他のグループの中継サーバのアドレス情報を通知し、接続上限台数を超えたクライアント端末２０の通信制御部２１ｂが、共同作業データの編集情報を他のグループの中継サーバに送信できるようにする。【００７６】
一方、現在の接続端末数が接続上限台数を超えない場合は、制御部１１（通信制御指示部１１ｃ）は、サブグループにクライアント端末２０があるかを確認し（Ｓ４０４）、サブグループにクライアント端末２０がある場合は、そのクライアント端末２０を接続上限台数に達するまで元のグループ（メイングループ）に追加する（Ｓ４０５）。【００７７】
その後、制御部１１（通信制御指示部１１ｃ）は、決定したネットワークを構成するように各クライアント端末２０に指示する（Ｓ４０６）。具体的には、サブグループに追加されたクライアント端末２０に対しては、サブグループに設定／更新された中継サーバに接続するように指示し、メイングループに追加されたクライアント端末２０に対しては、メイングループに設定された中継サーバに接続するように指示する。これにより、各クライアント端末２０の制御部２１（通信制御部２１ｂ）は、制御部１１（通信制御指示部１１ｃ）により指定された送信先に共同作業データの編集情報を送信することができる。【００７８】
上記フローでは、サーバ１０の制御部１１は、接続上限台数を超えた分のクライアント端末２０で新しいグループ（サブグループ）を構成し、その中のクライアント端末２０から中継サーバを選択するようにしているが、単に接続上限台数を超えたクライアント端末２０をリストで管理し、それらをサーバ１０に直接接続するようにしても良い。すなわち、サーバ１０の制御部１１（通信制御指示部１１ｃ）は、接続上限台数を超えたクライアント端末２０に対して、サーバ１０のアドレス情報を通知し、接続上限台数を超えたクライアント端末２０の通信制御部２１ｂは、共同作業データの編集情報をサーバ１０に直接送信してもよい。【００７９】
また、サーバ１０の制御部１１は、元のグループ（メイングループ）の中継サーバに接続するクライアント端末２０には、共同作業における役割に応じて優先順位を設定しても良い。例えば、メイングループの中継サーバに接続するクライアント端末２０の中に携帯端末がある場合には、携帯端末を優先してメイングループの中継サーバに接続するようにしても良いし、あるいは大型表示機器をメイングループの中継サーバに優先して接続するようにしても良いし、その両方を優先してもよい。【００８０】
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、サーバ１０やクライアント端末２０の構成や制御部の制御は適宜変更可能である。【００８１】
例えば、上記実施例では、クライアント端末２０として、パーソナルコンピュータなどのコンピュータ端末、スマートフォンやタブレット端末などの携帯端末、プロジェクタや大型ディスプレイなどの大型表示機器の３種類を例示したが、クライアント端末２０は共同作業が可能な任意の機器を用いることができる。【００８２】
また、上記実施例では、サーバ１０は、中継サーバとして設定したクライアント端末２０に、他のクライアント端末２０からの接続を受け付けるように指示すると共に、他のクライアント端末２０に、中継サーバとして設定したクライアント端末２０のアドレス情報を通知して、当該クライアント端末２０に接続するように指示し、中継サーバとして設定されたクライアント端末２０は、接続を受け付けたクライアント端末２０を共同作業データの編集情報の送信先に設定したが、サーバ１０は、中継サーバとして設定したクライアント端末２０に、サーバ１０及び他の全てのクライアント端末２０のアドレス情報を通知すると共に、他の全てのクライアント端末２０に、中継サーバとして設定したクライアント端末２０のアドレス情報を通知し、各クライアント端末２０は、サーバ１０から通知されたアドレス情報を共同作業データの編集情報の送信先に設定するようにすることもできる。
【産業上の利用可能性】
【００８３】
本発明は、中継サーバを介して一の端末で行われた共同作業データの編集を他の端末に反映させて共同作業を行う共同作業システム、中継サーバを介した通信を制御する通信制御方法、通信制御プログラム及び当該通信制御プログラムを記録した記録媒体に利用可能である。
【符号の説明】
【００８４】
１０  サーバ
１１  制御部
１１ａ  役割情報取得部
１１ｂ  中継サーバ設定部
１１ｃ  通信制御指示部
１２  ＣＰＵ
１３  ＲＯＭ
１４  ＲＡＭ
１５  記憶部
１６  通信Ｉ／Ｆ部
２０  クライアント端末
２０Ａ、２０Ａ１、２０Ａ２  クライアント端末（コンピュータ端末）
２０Ｂ  クライアント端末（大型表示機器）
２０Ｃ  クライアント端末（携帯端末）
２１  制御部
２１ａ  役割情報提供部
２１ｂ  通信制御部
２２  ＣＰＵ
２３  ＲＯＭ
２４  ＲＡＭ
２５  記憶部
２６  通信Ｉ／Ｆ部
２７  表示部
２８  操作部
５０、５０Ａ、５０Ｂ  通信ネットワーク
【図１Ａ】
2017195587.tif 000003
【図１Ｂ】
2017195587.tif 000004
【図２Ａ】
2017195587.tif 000005
【図２Ｂ】
2017195587.tif 000006
【図３Ａ】
2017195587.tif 000007
【図３Ｂ】
2017195587.tif 000008
【図４Ａ】
2017195587.tif 000009
【図４Ｂ】
2017195587.tif 000010
【図４Ｃ】
2017195587.tif 000011
【図５】
2017195587.tif 000012
【図６】
2017195587.tif 000013
【図７】
2017195587.tif 000014
【図８】
2017195587.tif 000015
【国際調査報告】
2017195587.tif 000016
2017195587.tif 000017
2017195587.tif 000018
2017195587.tif 000019