中継通信システム及び中継サーバ
【課題】互いに通信可能な複数の中継サーバ及び複数のクライアント端末を有する中継通信システムにおいて、遠隔操作する端末及び遠隔操作される端末以外の他の端末が遠隔操作の内容を取得する。
【解決手段】第3クライアント端末B1が第1〜3操作セッション401A〜401Cを介して第5クライアント端末C2に対して遠隔操作している。この状態で第5クライアント端末C2に接続された第3中継サーバCは、第2クライアント端末A2から遠隔操作への参加を要求されれば、第1〜2参加操作セッション501A〜501Bを介して第第5クライアント端末C2に対する排他的操作権の調整を行う。第3中継サーバCは、第2クライアント端末及び第3クライアント端末のうち調整後の遠隔操作の排他的操作権を有するクライアント端末と第5クライアント端末C2との間で行われる前記遠隔操作の操作データを中継する
【解決手段】第3クライアント端末B1が第1〜3操作セッション401A〜401Cを介して第5クライアント端末C2に対して遠隔操作している。この状態で第5クライアント端末C2に接続された第3中継サーバCは、第2クライアント端末A2から遠隔操作への参加を要求されれば、第1〜2参加操作セッション501A〜501Bを介して第第5クライアント端末C2に対する排他的操作権の調整を行う。第3中継サーバCは、第2クライアント端末及び第3クライアント端末のうち調整後の遠隔操作の排他的操作権を有するクライアント端末と第5クライアント端末C2との間で行われる前記遠隔操作の操作データを中継する
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、互いに通信可能な複数の中継サーバと、複数のクライアント端末と、クライアント端末を中継サーバに接続するLANとを有する中継通信システムに関し、さらに中継通信システムに用いられる中継サーバに関する。
【背景技術】
【0002】
従来、家庭あるいはオフィスなどに設置されている電子機器等の端末機の監視及び保守を、遠隔地から行う遠隔保守システムが実用化されている。保守業者のサービスマンは、遠隔保守システムの利用することで、端末機の設置場所に出向くことなく、端末機の保守作業を行う。
また従来、所定のネットワークを介して接続されたコンピュータ端末の画面の内容を確認しつつ、コンピュータ端末を遠隔操作できる画像処理装置が提案されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−59083号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に開示された遠隔操作システムは、画像処置装置と1つのコンピュータ端末との間でしか運用されない。すなわち、特許文献1に開示された遠隔操作では、一対一の関係を有する遠隔操作の操作側の端末及び被操作側の端末の間でのみ遠隔操作の内容が共有される。従って、従来では、操作側の端末が被操作側の端末を遠隔操作している場合に、これら以外の他の端末が遠隔操作の内容を取得したいという要望を持っていても、そのような要望に応えることは困難であった。
【0005】
本発明の目的は、互いに通信可能な複数の中継サーバ及び複数のクライアント端末を有する中継通信システムにおいて、遠隔操作する端末及び遠隔操作される端末以外の他の端末が遠隔操作の内容を取得することにある。
【課題を解決するための手段】
【0006】
以下に、課題を解決するための手段として複数の態様を説明する。これら態様は、必要に応じて任意に組み合せることができる。
【0007】
本発明の一見地に係る中継通信システムは、第1ネットワークと、第2ネットワークと、第1中継サーバと、第2中継サーバと、第1クライアント端末と、第2クライアント端末と、第3クライアント端末と、を備える。第1中継サーバは、第1ネットワークに接続される。第2中継サーバは、第2ネットワークに接続され、第3ネットワークを介して第1中継サーバと通信可能である。第1クライアント端末は、第1中継サーバと第1ネットワークを介して接続される。第2クライアント端末及び第3クライアント端末は、第2中継サーバと第2ネットワークを介して接続される。
第1中継サーバ及び第2中継サーバは、操作制御部を備える。操作制御部は、中継サーバ自身の起動情報と中継サーバ自身に接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を互いに共有する。
第2中継サーバは、第2操作制御部を有する。第2操作制御部は、遠隔操作を行う操作クライアント端末である第2クライアント端末から、中継サーバ情報を参照して被操作クライアント端末として選択された第1クライアント端末を遠隔操作する要求であって、第2クライアント端末及び第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、以下の処理を行う。第2操作制御部は、第1クライアント端末が接続されている第1中継サーバを特定し、第1中継サーバへ遠隔操作要求を中継し、第2クライアント端末との間に第1操作セッションを確立し、第1中継サーバとの間で中間サーバ間セッションを確立し、遠隔操作要求に基づいて行われる第2クライアント端末による第1クライアント端末への遠隔操作の操作データを第1操作セッション及び中間サーバ間セッションの間で中継する。
第1中継サーバは、第1操作制御部を有する。第1操作制御部は、第2中継サーバから遠隔操作要求を受信すれば、以下の処理を行う。第1クライアント端末に遠隔操作要求を中継し、第1クライアント端末との間に第3操作セッションを確立し、遠隔操作要求に基づいて行われる遠隔操作の操作データを中間サーバ間セッション及び第3操作セッションの間で中継し、第1クライアント端末及び第2クライアント端末の情報を含む遠隔操作情報を作成する。
第2操作制御部は、遠隔操作情報を参照した参加操作クライアント端末である第3クライアント端末より遠隔操作に対する操作参加要求を受け付ければ、第3クライアント端末との間に第1参加操作セッションを確立し、前記第2クライアント端末及び前記第3クライアント端末のうち、操作権を有するいずれかのクライアント端末から受信した操作イベントを第1中継サーバへ中継し、第1中継サーバから受信した画像データを第1クライアント端末及び第3クライアント端末へ中継する。
【0008】
ここでは、第1中継グループ内で一台の被操作クライアント端末に対して複数のクライアント端末が遠隔操作できる。
【0009】
第2操作制御部は、排他的操作権を調整する際、第3クライアント端末から受信した遠隔操作に対する排他的操作権の取得要求を第2クライアント端末へ送信し、第2クライアント端末から排他的操作権の取得要求に対する許可応答を受信してもよい。
【0010】
本発明の他の見地に係る中継サーバは、第2ネットワークに接続される第2中継サーバと通信可能であり、第1ネットワークに接続され、第1ネットワークを介して第1クライアント端末と接続される第1中継サーバとして機能する中継サーバである。
中継サーバは、情報共有部と、操作制御部と、を備える。
情報共有部は、中継サーバの起動情報と中継サーバに接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を第2中継サーバと互いに共有する。
操作制御部は、遠隔操作を行う操作クライアント端末である第2中継サーバに接続された第2クライアント端末から、中継サーバ情報を参照して選択された第1クライアント端末を遠隔操作する要求であって、第2クライアント端末及び第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、以下の処理を行う。操作制御部は、第1クライアント端末に遠隔操作要求を中継し、第2中継サーバとの間に中継サーバ間セッションを確立し、第1クライアント端末との間に第2操作セッションを確立し、中継サーバ間セッションと、第3操作セッションと、第3クライアント端末と第2中継サーバとの間に確立された第1操作セッションとを介して遠隔操作要求に基づいて行われる第2クライアント端末による第1クライアント端末への遠隔操作の操作データを中継サーバ間セッション及び第2操作セッションの間で中継する。操作制御部は、第1クライアント端末及び第2クライアント端末の情報を含む遠隔操作情報を作成する。
ここで、操作制御部は、遠隔操作情報を参照した参加操作クライアント端末である第3クライアント端末より遠隔操作に対する操作参加要求を受け付ければ、以下の処理を行う。操作制御部は、第3クライアント端末が接続された第2中継サーバとの間に参加操作セッションをさらに確立し、第2操作制御部によって調整された第1クライアント端末に対する遠隔操作の排他的操作権に基づいて、第2クライアント端末及び第3クライアント端末のうち調整後の遠隔操作の排他的操作権を有するクライアント端末と第1クライアント端末との間で行われる遠隔操作の操作データを中継する。操作イベントは、排他的操作権を有するクライアント端末から供給される。
【0011】
本発明のさらに他の見地に係る中継通信システムは、第1ネットワークと、第2ネットワークと、第3ネットワークと、第1中継サーバと、第2中継サーバと、第3中継サーバと、第1クライアント端末と、第2クライアント端末と、第5クライアント端末とを備えている。第1中継サーバは、第1ネットワークに接続される。第2中継サーバは、第2ネットワークに接続される。第3中継サーバは、第3ネットワークに接続され、第1中継サーバ及び第2中継サーバと相互に通信可能である。第1クライアント端末は、第1中継サーバと第1ネットワークを介して接続される。第2クライアント端末は、第2中継サーバと第2ネットワークを介して接続される。第5クライアント端末は、第3中継サーバと第3ネットワークを介して接続される。第1中継サーバ、第2中継サーバ及び第3中継サーバは中継サーバ自身の起動情報と中継サーバ自身に接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を互いに共有する情報共有部を有している。第2中継サーバは、第2操作部を有している。第2操作部は、遠隔操作を行う操作クライアント端末である第2クライアント端末から、中継サーバ情報を参照して被操作クライアント端末として選択された第1クライアント端末を遠隔操作する要求であって、第2クライアント端末及び第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、第1クライアント端末が接続されている第1中継サーバを特定し、第1中継サーバへ遠隔操作要求を中継し、第2クライアント端末との間に第1操作セッションを確立し、第1中継サーバとの間に中継サーバ間セッションを確立し、遠隔操作要求に基づいて行われる第2クライアント端末による第1クライアント端末への遠隔操作の操作データとしての操作イベント及び画像データを第1操作セッション及び中継サーバ間セッションの間で中継する。第1中継サーバは、第1操作制御部を有している。第1操作制御部は、第2中継サーバから遠隔操作要求を受信すれば、第1クライアント端末に遠隔操作要求を中継し、第1クライアント端末との間に第2操作セッションを確立し、遠隔操作要求に基づいて行われる遠隔操作の操作データを中継サーバ間セッション及び第2操作セッションの間で中継し、第1クライアント端末及び第2クライアント端末の情報を含む遠隔操作情報を作成する。第3中継サーバは、操作参加要求を送受信可能な第3操作制御部を有している。第3操作制御部は、遠隔操作情報を参照した参加操作クライアント端末である第5クライアント端末より遠隔操作に対する操作参加要求を受け付ければ、操作参加要求を第1中継サーバへと中継し、第5クライアント端末との間に第1参加操作セッションを確立し、第3中継サーバとの間で第2参加セッションを確立し、第1操作制御部は、第2クライアント端末及び第5クライアント端末のうち、操作権を有するいずれかのクライアント端末から受信した操作イベントを第1クライアント端末へ中継し、第1クライアント端末から受信した画像データを第2クライアント端末及び第5クライアント端末へ中継する。
【0012】
本発明のさらに他の見地に係る第1中継サーバは、WANを介して第2中継サーバ及び第3中継サーバと接続可能であり、LANを介して第1クライアント端末、第2クライアント端末及び第3クライアント端末と接続可能な第1中継サーバである。第1中継サーバは、第1操作セッション確立部と、第2操作セッション確立部と、被操作セッション確立部と、操作制御部と、操作権限変更部と、を備えている。第1操作セッション確立部は、第1クライアント端末又は第2中継サーバとの間に第1操作セッションを確立する。第2操作セッション確立部は、第2クライアント端末又は第3中継サーバとの間に第2操作セッションを確立する。被操作セッション確立部は、第3クライアント端末との間に被操作セッションを確立する。操作制御部は、第1操作セッション又は第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、被操作セッションへ中継し、被操作セッションから受信した画像データを第1操作セッション及び第2操作セッションへ中継する。操作権限変更部は、第1操作セッション又は第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する。
【0013】
本発明のさらに他の見地に係る第1中継サーバは、WANを介して第2中継サーバと接続可能であり、LANを介して第1クライアント端末及び第2クライアント端末と接続可能な第1中継サーバである。第1中継サーバは、第1操作セッション確立部と、第2操作セッション確立部と、被操作セッション確立部と、操作制御部と、操作権限変更部と、を備えている。第1操作セッション確立部は、第1クライアント端末との間に第1操作セッションを確立する。第2操作セッション確立部は、第2クライアント端末との間に第2操作セッションを確立する。被操作セッション確立部は、第2中継サーバとの間に被操作セッションを確立する。操作制御部は、第1操作セッション又は第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、被操作セッションへ中継し、被操作セッションから受信した画像データを第1操作セッション及び第2操作セッションへ中継する。操作権限変更部は、第1操作セッション又は第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する。
【発明の効果】
【0014】
本発明によると、第1中継グループ内で一台の被操作クライアント端末に対して複数の操作クライアント端末が遠隔操作できる。
【図面の簡単な説明】
【0015】
【図1】中継通信システムの全体構成を示す模式図。
【図2】第1中継サーバの構成を示すブロック図。
【図3】第1クライアント端末の構成を示すブロック図。
【図4】中継グループ情報の概略構成を示す図。
【図5】中継グループ情報の詳細構成を示す図。
【図6】中継サーバ情報の概略構成を示す図。
【図7】中継サーバ情報の詳細構成を示す図。
【図8】遠隔操作情報の概略構成を示す図。
【図9A】操作クライアント端末の操作処理を示すフローチャート(その1)。
【図9B】操作クライアント端末の操作処理を示すフローチャート(その2)。
【図10】被操作クライアント端末の処理を示すフローチャート。
【図11】確立した操作セッションの一例を示す図。
【図12A】参加操作クライアント端末の操作処理を示すフローチャート(その1)。
【図12B】参加操作クライアント端末の操作処理を示すフローチャート(その2)。
【図12C】参加操作クライアント端末の操作処理を示すフローチャート(その3)。
【図13A】操作制御中継サーバの処理を示すフローチャート(その1)。
【図13B】操作制御中継サーバの操作処理を示すフローチャート(その2)。
【図13C】操作制御中継サーバの操作処理を示すフローチャート(その3)。
【発明を実施するための形態】
【0016】
1.本実施形態の概要
本実施形態における中継通信システムでは、複数の中継サーバを介して、クライアント端末同士がWANを超えて互いに通信可能となる。
【0017】
2.中継通信システムの全体構成
以下、図面を参照しつつ、本発明の実施の形態について説明する。図1は、中継通信システムの全体構成を示す。中継通信システムは、第1LAN1と、第2LAN2と、第3LAN3と、WAN4とから構成される。第1LAN1、第2LAN2及び第3LAN3は、遠隔に構築される小規模なネットワークである。WAN4は、インターネットなどの大規模なネットワークである。
この実施形態では、後に詳細に説明するが、第1LAN1の第1中継サーバAと、第2LAN2の第2中継サーバBと、第3LAN3の第3中継サーバCとが、中継グループとしての第1中継グループを構成している。
【0018】
第1LAN1は、第4LAN11と第5LAN13とを有しており、第4LAN11と第5LAN13とは第1汎用ルータ15により互いに接続されている。第4LAN11では、第1中継サーバAと第1クライアント端末A1とが互いに接続されている。第5LAN13では、第2クライアント端末A2と第1通信機器17とが互いに接続されている。
【0019】
第2LAN2では、第2中継サーバBと第3クライアント端末B1とが互いに接続されている。
第3LAN3は、第6LAN19と、第7LAN21と、第8LAN23とを有している。第6LAN19と第7LAN21とは第2汎用ルータ25により接続されていて、第6LAN19と第8LAN23とは第3汎用ルータ27により接続されている。第6LAN19には、第3中継サーバCが所属している。第7LAN21には、第4クライアント端末C1が接続されている。第8LAN23には、第5クライアント端末C2が接続されている。
【0020】
第1クライアント端末A1、第2クライアント端末A2、第3クライアント端末B1、第4クライアント端末C1及び第5クライアント端末C2は、例えば、パーソナルコンピュータである。また、第1通信機器17も、例えばパーソナルコンピュータである。
【0021】
第1中継サーバA、第2中継サーバB及び第3中継サーバCは、第1クライアント端末A1、第2クライアント端末A2、第3クライアント端末B1、第4クライアント端末C1及び第5クライアント端末C2の相互間の通信を中継する。WAN4は、第1中継サーバA、第2中継サーバB及び第3中継サーバCの相互間の通信を中継する。なお、第1中継サーバA、第2中継サーバB及び第3中継サーバCの相互間の通信プロトコルは特に限定されない。
【0022】
3.中継サーバの構成要素
中継サーバは、LANだけでなくWANにも接続されており、同一のLANに接続されている各クライアント端末と通信可能であるとともに、他のLANに配置された中継サーバと通信可能になっている。そのため、各中継サーバには、プライベートIPアドレスに加えて、グローバルIPアドレスが付与されている。
図2は、第1中継サーバAの構成要素を示す。第1中継サーバAは、ネットワークインターフェース121、LAN制御部122、WAN制御部123、制御部124及びデータベース格納部125を有する。また、第1中継サーバAは、表示部126及び操作入力部127を有していてもよい。
ネットワークインターフェース121は、プライベートIPアドレスを利用してLAN1内の端末に対して通信を実行し、さらに、グローバルIPアドレスを利用してWAN4に対して通信を実行する。
LAN制御部122は、ネットワークインターフェース121を介してLAN1内の端末と間で行う様々な通信を制御する処理部であり、所定のプロトコルに従った通信処理を制御する。
WAN制御部123は、WAN4に接続された端末との間でネットワークインターフェース121を介して行う様々な通信を制御する処理部であり、所定のプロトコルに従った通信処理を制御する。
【0023】
制御部124は、例えば、制御及び演算の機能を有するCPUであり、ロードされたプログラムにより各種処理を実行可能である。
本実施形態の制御部124は、情報共有部131及び操作制御部132を有する。
【0024】
情報共有部131は、後述する中継グループ情報及び中継サーバ情報の作成及び更新を行う。
また、情報共有部131は、中継グループ情報、中継サーバ情報及び後述する遠隔操作情報を中継グループ内の中継サーバ及びクライアント端末と共有する処理を行う。具体的には、情報共有部131は、作成及び更新された中継グループ情報を中継グループ内の中継サーバ及び中継サーバに接続されたクライアント端末と共有し、中継グループ情報格納部141(後述)に格納する。情報共有部131は、作成及び更新された中継サーバ情報を中継グループ内の中継サーバ及び中継サーバに接続されたクライアント端末と共有し、中継サーバ情報格納部142(後述)に格納する。また情報共有部131は、作成及び更新された遠隔操作情報を中継グループ内の中継サーバ及びクライアント端末と共有し、遠隔操作情報格納部143(後述)に格納する。
【0025】
操作制御部132は、遠隔操作要求に応じて中継グループ内で行われる遠隔操作を行うための操作セッションを確立し遠隔操作を制御する。遠隔操作要求とは、遠隔操作を行うクライアント端末(以下、操作クライアント端末)から出力された遠隔操作の要求であって、操作クライアント端末の情報と、遠隔操作されるクライアント端末(以下、被操作クライアント端末)の情報とが含まれる。操作クライアント端末及び被操作クライアント端末の情報とは、各クライアント端末を識別するための情報であって、本実施形態では各クライアント端末のアカウント名である。
具体的には、操作制御部132は、遠隔操作要求を受け付けた場合、中継サーバ情報を参照して遠隔操作要求を被操作クライアント端末へと中継し、遠隔操作を実行するための操作セッションを確立する処理を行う。例えば、操作制御部132は、中継サーバに接続された操作クライアント端末から遠隔操作要求を受け付けた場合は、中継サーバ情報を参照して、被操作クライアント端末が接続された中継サーバを特定した上で、遠隔操作要求を中継する。また、操作制御部132は、被操作クライアント端末が接続された中継サーバとの間に操作セッションを確立する。次に、被操作クライアント端末が接続された中継サーバの操作制御部132は、被操作クライアント端末へと遠隔操作要求を中継し、中継サーバ情報に基づき被操作クライアント端末との間に操作セッションを確立する。
【0026】
また、操作制御部132は、操作セッションを介して操作クライアント端末と被操作クライアント端末との間で行われている遠隔操作に関する操作データを中継する。操作データには、後述する操作イベント及び画像データが含まれる。さらに、操作制御部132は、遠隔操作情報の作成又は更新を行うが、詳細は後述する。
【0027】
さらに、操作制御部132は、操作セッションを介して遠隔操作が行われている際に操作クライアント端末と被操作クライアント端末とは異なる他のクライアント端末から遠隔操作への参加要求を受信した場合には、遠隔操作の排他的操作権の調整の制御をする。その後、操作制御部132は、遠隔操作の排他的操作権を有するクライアント端末からの遠隔操作の操作データを中継する。以下、遠隔操作への参加要求を受信に応じて、遠隔操作の排他的操作権の調整をする中継サーバを操作制御中継サーバという。また、遠隔操作への途中参加を要求するクライアント端末を参加操作クライアント端末という。
【0028】
データベース格納部125は、例えば、ハードディスク又は不揮発RAMであり、各種データを保存可能である。データベース格納部125は、中継グループ情報格納部141、中継サーバ情報格納部142及び遠隔操作情報格納部143を有する。中継グループ情報格納部141、中継サーバ情報格納部142及び遠隔操作情報格納部143に格納される情報の詳細は後述する。
【0029】
表示部126は、液晶表示パネル等の表示デバイスを含む。表示部126は、中継グループ情報、中継サーバ情報及び遠隔操作情報等に関する種々の情報をユーザに提示する。
操作入力部127は、第1中継サーバAに対する各種の指示を入力するためのハードキー及びマウス等で構成される。
【0030】
なお、第2中継サーバB、第3中継サーバCの構成要素は第1中継サーバAと同様であるので説明を省略する。
【0031】
4.クライアント端末の構成要素
クライアント端末は、ユーザが直接操作できる端末である。クライアント端末は、例えば、ユーザによって日々の業務に利用されるパーソナルコンピュータである。各クライアント端末には、同一のLAN内でユニークに管理されたプライベートIPアドレスが付与される。
【0032】
図3は、第1クライアント端末A1の構成要素を示す。第1クライアント端末A1は、LANインターフェース221、制御部222、データベース格納部223、表示部224及び操作入力部225を有する。
【0033】
LANインターフェース221は、プライベートIPアドレスを利用して、第1LAN1内の第1中継サーバA及び他の端末に対して通信を実行することができる。
【0034】
制御部222は、例えば、制御及び演算の機能を有するCPUであり、ロードされたプログラムにより各種処理を実行可能である。本実施形態の制御部222は、情報共有部231、操作制御部232、画像設定部233及びクライアント通信制御部234を有する。
【0035】
情報共有部231は、中継グループ情報、中継サーバ情報及び遠隔操作情報を中継グループ内の中継サーバ及びクライアント端末と共有する処理を行う。具体的には、情報共有部231は、作成及び更新された中継グループ情報を中継グループ内の中継サーバ及び中継サーバに接続されたクライアント端末と共有し、中継グループ情報格納部241(後述)に格納する。情報共有部231は、作成及び更新された中継サーバ情報を中継グループ内の中継サーバ及び中継サーバに接続されたクライアント端末と共有し、中継サーバ情報格納部242(後述)に格納する。また情報共有部231は、作成及び更新された遠隔操作情報を中継グループ内の中継サーバ及びクライアント端末と共有し、遠隔操作情報格納部243(後述)に格納する。
【0036】
操作制御部232は、遠隔操作要求に応じて中継グループ内で行われる遠隔操作を行うための操作セッションを確立し遠隔操作を制御する。
操作クライアント端末の操作制御部232は、まずユーザから遠隔操作要求を受け付ける。その後、操作制御部232は、被操作クライアント端末に対して遠隔操作要求を中継サーバを介して送信し、さらに中継サーバを介して被操作クライアント端末との間に操作セッションを確立するように制御する。
操作セッションの確立後は、操作制御部232は、ユーザからの操作イベントを受け付け、受け付けた操作イベントを操作セッションに出力する制御を行う。操作イベントとは、操作入力部225を介したユーザ操作であって、例えばマウス及びキーボードを介したカーソル移動、マウス入力又はキーボード入力である。
また、操作制御部232は、被操作クライアント端末から操作イベントが処理された画像データを受信した場合は、受信した画像データを表示部224に出力して表示させる。
【0037】
一方、被操作クライアント端末の操作制御部232は、遠隔操作要求を受け付ければ、中継サーバを介して操作クライアント端末との間に操作セッションを確立するように制御する。また、操作イベントを操作クライアント端末から受け付ければ、操作制御部232は、受け付けた操作イベントをクライアント端末のシステムにおいて実行させて、操作イベントが反映された画像データを操作セッションを介して操作クライアント端末へと出力する。
【0038】
また、参加操作クライアント端末の操作制御部232は、操作制御中継サーバに対して操作参加要求を送信する。そして、ユーザからの指示に応じて遠隔操作の排他的操作権の取得要求を操作制御中継サーバに対して送信する。操作制御中継サーバから排他的操作権の取得が許可された場合は、操作制御部232はその後被操作クライアント端末に対して遠隔操作を行う。一方、操作制御中継サーバから排他的操作権の取得が許可されない場合は、操作制御部232はその後遠隔操作を監視する制御を行う。
【0039】
操作クライアント端末及び被操作クライアント端末の画像設定部233は、遠隔操作を行う際に操作クライアント端末及び被操作クライアント端末の画像情報を決定し、決定された画像情報をクライアント端末に設定する処理を行う。画像情報には、画面サイズ、色情報、解像度及び輝度等が含まれている。具体的に画像設定部233は、ハンドシェーク処理によって操作クライアント端末と被操作クライアント端末との間の画面情報を交換し、操作クライアント端末と被操作クライアント端末との間の画面情報が共通になるように画像情報を決定する。そして画像設定部233は、決定された画像情報に基づき、クライアント端末の画像情報を設定する。このように、操作クライアント端末と被操作クライアント端末との間の画面情報が共通に設定されることにより、操作クライアント端末の表示部224に不鮮明な画像データが表示されることを防ぐ。本実施形態では、各クライアント端末の操作制御部の画像設定部233によって、操作クライアント端末と被操作クライアント端末の画像情報のうち低い能力を示す画像情報に、他のクライアント端末の画像情報を合わせる設定が行われる。
【0040】
クライアント通信制御部234は、通信パケットを処理し、LANインターフェース221を介して行うTCP/IP、UDP又はSIPなどのプロトコルに従った様々な通信を制御する。
【0041】
データベース格納部223は、例えば、ハードディスク又は不揮発RAMであり、各種データを保存可能である。データベース格納部223は、中継グループ情報格納部241、中継サーバ情報格納部242及び遠隔操作情報格納部243を有する。中継グループ情報格納部241と、中継サーバ情報格納部242と、遠隔操作情報格納部243とに格納される情報の詳細は後述する。
【0042】
表示部224は、液晶表示パネル等の表示デバイスを含む。表示部224は、中継グループ情報、中継サーバ情報及び遠隔操作情報に関する種々の情報をユーザに提示する。また、操作クライアント端末の表示部224は、遠隔操作に関する操作用ウインドウをユーザに提示する。一方、被操作クライアント端末の表示部224は、遠隔操作に関する被操作用ウインドウをユーザに提示する。
操作入力部225は、第1クライアント端末A1に対する各種の指示を入力するためのハードキー及びマウス等で構成される。
第2クライアント端末A2、第3クライアント端末B1、第4クライアント端末C1及び第5クライアント端末C2は、第1クライアント端末A1と同様であるので説明を省略する。
【0043】
5.中継グループ情報
図4及び図5を参照して、中継グループ情報20を説明する。図4は、中継グループ情報の概略構成を示す図である。図5は、中継グループ情報の詳細構成を示す図である。中継グループ情報20は、中継通信システムにおける各中継グループの概要を示す情報である。図4は、第1中継グループが、第1中継サーバAと、第2中継サーバBと、第3中継サーバCとから構成されていることを示す。
【0044】
図5に示すとおり、中継グループ情報20は、上位情報201、下位情報202から構成される。
上位情報201は、第1中継グループ自体についての情報である。「group id」は、中継グループの識別情報を示す。「lastmod」は、中継グループ情報の最新更新時刻を示す。「name」は、中継グループの名称を示す。
【0045】
下位情報202は、第1中継サーバA、第2中継サーバB及び第3中継サーバCについての情報である。「site id」は、中継サーバの識別情報を示す。
【0046】
中継グループ情報20は、第1中継サーバAと、第2中継サーバBと、第3中継サーバCとの間で共有されて、各中継サーバの中継グループ情報格納部141に格納される。さらに、中継グループ情報20は、中継サーバとクライアント端末との間でも共有され、各クライアント端末の中継グループ情報格納部241に格納される。
【0047】
6.中継サーバ情報
図6及び図7を参照して、中継サーバ情報30を説明する。図6は、中継サーバ情報の概略構成を示す。図7は、中継サーバ情報30の詳細構成を示す。中継サーバ情報30は、中継通信システムを構成する中継サーバ及びクライアント端末の概要を示す情報である。
【0048】
図6に示すように、中継サーバ情報30には、第1中継サーバAに第1クライアント端末A1及び第2クライアント端末A2が接続され、第2中継サーバBに第3クライアント端末B1が接続され、第3中継サーバCに第4クライアント端末C1及び第5クライアント端末C2が接続されている情報が示されている。
【0049】
図7に示すとおり、中継サーバ情報30は、上位情報301−1、301−2、301−3及び下位情報302−1、302−2、302−3を含む。
【0050】
上位情報301−1、301−2、301−3は、中継サーバについての情報である。「site id」は、中継サーバの識別情報を示す。「name」は、中継サーバの名称を示す。「stat」は、中継サーバが起動しているか否かについての情報を示す。
【0051】
下位情報302−1、302−2、302−3は、クライアント端末についての情報である。「div」は、クライアント端末の部署名を示す。「group」は、クライアント端末が所属する中継グループの識別情報を示す。「id」は、クライアント端末の識別情報を示す。「name」は、クライアント端末の名称を示す。「site」は、クライアント端末がログオンしている場合にログオン先の中継サーバの識別情報を示す。
【0052】
中継サーバ情報30は、第1中継サーバA、第2中継サーバB及び第3中継サーバC間で共有され、各中継サーバの中継サーバ情報格納部142において格納される。また、中継サーバ情報30は、中継サーバ及びクライアント端末間で共有され、各クライアント端末の中継サーバ情報格納部242に格納される。
【0053】
中継サーバが起動しているときには、上位情報301−1、301−2、301−3の「stat」が「active」になっている。中継サーバが起動していないときには、「stat」が空欄になっている。これにより、中継サーバが起動しているか否かについての情報が、中継通信システム全体として共有される。
【0054】
またクライアント端末が中継サーバにログオンしているときには、下位情報302−1、302−2、302−3の「site」にクライアント端末のログオン先の中継サーバの識別情報が記載されている。クライアント端末が中継サーバにログオンしていないときには、「site」は空欄になっている。これにより、クライアント端末が中継サーバにログオンしているか否かについての情報が、中継通信システム全体として共有される。
【0055】
7.遠隔操作情報
遠隔操作情報は、操作クライアント端末及び被操作クライアント端末の識別情報と、遠隔操作を識別する識別情報とを含む情報である。本実施形態において各クライアント端末の識別情報とはアカウント名である。しかし、各クライアント端末を識別できる情報であれば各クライアント端末の識別情報はこの例に限定されない。また、遠隔操作の識別情報として任意のIDが用いられる。しかし、遠隔操作の識別できれば任意のID以外の識別情報が用いられてもよい。
【0056】
また、ある被操作クライアント端末に対して複数の操作クライアント端末が存在する場合、遠隔操作情報には、被操作クライアント端末に対して現在どの操作クライアント端末が遠隔操作をしているのかが示される。本実施形態では、現在遠隔操作をしている操作クライアント端末の「ステータス」の欄に、「操作中」のマークが表示される。
【0057】
遠隔操作情報は、さらに各クライアント端末の画像情報を含んでいてもよい。画像情報とは、前述のとおり画面サイズ、色情報、解像度及び輝度等を有していて、操作クライアント端末及び被操作クライアント端末間における画像情報の決定処理において参照されてもよい。
【0058】
図8を参照して、遠隔操作情報を説明する。図は、遠隔操作情報40の概略構成を示す。遠隔操作情報40には、操作クライアント端末として第3クライアント端末B1及び第2クライアント端末A2のアカウント名が格納され、被操作クライアント端末として第5クライアント端末C2のアカウント名が格納されている。また、第3クライアント端末B1の「ステータス」の欄には「操作中」のマークが表示されている。さらに、第3クライアント端末B1、第2クライアント端末A2及び第5クライアント端末C2間における遠隔操作を識別するための識別情報として、「31」が格納されている。この遠隔操作情報40から、第5クライアント端末C2に対して二つの操作クライアント端末である第3クライアント端末B1及び第2クライアント端末A2が存在していて、現在第3クライアント端末B1が遠隔操作中であることが分かる。
なお、第2クライアント端末A2、第3クライアント端末B1及び第5クライアント端末C2には、クライアント端末毎に画像情報が対応付けられている。
遠隔操作情報40は、遠隔操作要求の情報に基づき、操作クライアント端末及び被操作クライアント端末間において、操作セッションが確立しハンドシェーク処理が行われるタイミングで被操作クライアント端末が接続された操作制御中継サーバによって作成又は更新される。
【0059】
8.中継通信システムにおける情報共有
中継通信システムにおいて、第1中継グループとしての中継グループの設定及び中継グループ内の情報共有は以下のとおり行われる。
まず、第1中継グループの初期設定として、第1中継サーバA、第2中継サーバB及び第3中継サーバCの各中継サーバは、中継サーバに接続されたクライアント端末に対してアカウントを作成し、中継サーバ情報を作成して中継サーバ情報格納部に格納する。
その後、いずれかの中継サーバより中継通信システムの第1中継グループのグループ構築が要求されれば、各中継サーバは、中継グループ情報を作成して中継グループ情報格納部に格納する。次に、中継サーバは、第1中継グループを構成する中継サーバ間で中継サーバ情報の交換し、交換した中継サーバ情報を中継サーバが保存する中継サーバ情報と合成して新たな中継サーバ情報として保存する。その結果、第1中継サーバA、第2中継サーバB及び第3中継サーバCの間で共通の中継サーバ情報が保有される。
このような中継通信システムにおいて、LAN及びクライアント端末の増減状態及び接続状態が変化した場合には、一の中継サーバは、状態変化を認識したときには、その内容に応じて、中継グループ情報及び中継サーバ情報を直ちに更新する。
【0060】
そして、一の中継サーバは、中継グループ情報及び中継サーバ情報に記載されている他の中継サーバに、中継グループ情報及び中継サーバ情報が更新されたことを直ちに通知する。また、一の中継サーバは、更新された中継サーバ情報を直ちに中継サーバに接続されたクライアント端末に通知する。
【0061】
しかし、一の中継サーバは、他の中継サーバが中継グループ情報及び中継サーバ情報に記載されているとしても、他の中継サーバが未接続状態にあると判断したときには、他の中継サーバに直ちに通知することはない。
【0062】
これにより、LAN及びクライアント端末の増減状態及び接続状態についての情報は、第1中継グループを構成する中継サーバ及び中継サーバに接続されたクライアント端末間でリアルタイムに共有される。
【0063】
9.中継通信システムにおけるデータの送受信
上記のように中継通信システムにおいてLAN及びクライアント端末の増減状態及び接続状態についての情報が共有された後に、クライアント端末を使用するユーザが他のクライアント端末を指定して通信するときには、以下のようにデータが送受信される。
【0064】
具体的にクライアント端末は、指定先のクライアント端末情報と、送信元であるクライアント端末情報と、送信したいデータとを含む送信データを、クライアント端末が接続された中継サーバに送信する。送信データを受信した中継サーバは、中継サーバ情報を参照し、指定されたクライアント端末が中継グループ内のどの中継サーバに配下にあるかを確認する。また、中継サーバは、指定されたクライアント端末を配下におく中継サーバが起動状態であるかどうか、及び指定されたクライアント端末がログオン状態であるかどうかを確認する。具体的には、中継サーバ情報の上位情報「stat」が「active」に設定されていることを確認することによって、中継サーバが起動状態にあるかどうか判断できる。また、中継サーバ情報の下位情報「site」にクライアント端末のログオン先の中継サーバの識別情報が記載されているかどうかを確認することによって、クライアント端末がログオン状態にあるかどうか判断する。
【0065】
中継サーバの起動状態及びクライアント端末のログオン状態が確認できれば、指定されたクライアント端末を配下におく中継サーバに対して受信した送信データが中継送信される。また、送信データを受信した中継サーバは、自配下にある指定されたクライアント端末に対して送信データを中継送信する。
【0066】
10.遠隔操作処理
次に、上記のように中継通信システムにおいてLAN及びクライアント端末の増減状態及び接続状態についての情報が共有された状態において、同一の中継グループに属する被操作クライアント端末に対して操作クライアント端末が遠隔操作をする処理を説明する。
【0067】
操作クライアント端末のユーザは、表示部224に表示された操作用ウインドウ中でマウス及びキーボードを用いた入力操作を行うことにより、被操作クライアント端末のマウスやキーボードによって被操作クライアント端末を操作したかのように操作できる。
【0068】
本実施形態では、以下に説明するとおり、操作制御中継サーバによる制御に基づき、一つの被操作クライアント端末に対して複数の操作クライアント端末が遠隔操作することができる。以下では、図6及び図7に示す中継サーバ情報30が第1中継グループ内で共有されている状態において、第3クライアント端末B1が第5クライアント端末C2に対して遠隔操作をし、さらに第2クライアント端末A2が遠隔操作に途中参加する処理を例に挙げて説明する。以下、被操作クライアント端末に対して先に遠隔操作を行うクライアント端末を操作クライアント端末という。この例では、第3クライアント端末B1が操作クライアント端末である。また、すでに行われている遠隔操作に対して途中参加するクライアント端末を参加操作クライアント端末という。この例では、第2クライアント端末A2が参加操作クライアント端末である。
【0069】
10−1.遠隔操作するクライアント端末の処理
まず、操作クライアント端末である第3クライアント端末B1の処理について、図9A及び図9Bを参照して説明する。図9A及び図9Bは、操作クライアント端末の操作処理を示すフローチャートである。
【0070】
第3クライアント端末B1は、被操作クライアント端末の検索を受け付ける(ステップS101)。具体的には、ユーザによる遠隔操作の指示に応じて、中継サーバ情報格納部242に格納されている中継サーバ情報30を表示部224に表示させる。ユーザは、表示部224に表示された中継サーバ情報30に示されるクライアント端末のうち、遠隔操作の対象となる被操作クライアント端末を選択する。
ユーザから操作入力部225を介して遠隔操作の対象となる第5クライアント端末C2の選択を受ければ(ステップS103でYes)、第3クライアント端末B1の操作制御部232は、第2中継サーバBへ遠隔操作要求を送信する(ステップS10)。送信された遠隔操作要求は、第2中継サーバB及び第3中継サーバCを介して第5クライアント端末C2へ送信される。
その後第2中継サーバBを介して第5クライアント端末C2からの操作許可応答を受信すれば(ステップS107でYes)、第3クライアント端末B1の操作制御部232は、第2中継サーバBとの間に第1操作セッションを確立するための制御をする(ステップS109)。
なお、その後、第2中継サーバB及び第3中継サーバC間で第2操作セッションが確立され、第3中継サーバC及び第5クライアント端末C2間で第3操作セッションが確立される。
一方、第2中継サーバB及び第3中継サーバCを介して第5クライアント端末C2から操作許可応答を受信しない場合は(ステップS107でNo)、第3クライアント端末B1の操作制御部232は遠隔操作の処理を終了する。
【0071】
操作セッションが確立した後、第3クライアント端末B1の画像設定部233は、第5クライアント端末C2の画像設定部233との間でハンドシェーク処理を実行して(ステップS111)、伝送する画像情報の設定処理を行う(ステップS113)。
続いて第3クライアント端末B1の操作制御部232は、第5クライアント端末C2から、第5クライアント端末C2の表示部224で表示されている画像データを受信する(ステップS115)。続いて第3クライアント端末B1の操作制御部232は、受信した画像データを第3クライアント端末B1の表示部224に出力して、操作ウインドウとして表示させる(ステップS117)。
【0072】
その後、操作ウインドウに対し、マウス又はキーボードを介して操作イベントが発生すれば(ステップS119でYes)、第3クライアント端末B1の操作制御部232は、発生した操作イベントを第1操作セッションを介して第2中継サーバBへと送信する(ステップS121)。なお、このとき送信された送信イベントは、第2中継サーバB及び第3中継サーバCによって中継されて第5クライアント端末C2へと送信される。
第3クライアント端末B1の操作制御部232は、ユーザから遠隔操作の終了指示を受け付ければ(ステップS123でYes)、遠隔操作の終了指示を第2中継サーバBに送信し、遠隔操作を終了するように制御する。具体的には、第3クライアント端末B1の操作制御部232は、第2中継サーバBとの間で確立した第1操作セッションを切断する(ステップS125)。また、第3クライアント端末B1の操作制御部232は、表示部224に表示している操作ウインドウを閉じる。なお、このとき、遠隔操作の終了指示は、第2中継サーバB及び第3中継サーバを介して第5クライアント端末C2に送信され、第2操作セッション及び第3操作セッションも同様に切断される。
一方、第3クライアント端末B1の操作制御部232は、ユーザから遠隔操作の終了指示を受け付けなければ(ステップS123でNo)、再びステップS115に戻って、画像データの受信処理を行う。なお、この時、画像データとして画像差分情報(後述)を受信した場合は、第3クライアント端末B1は、例えば受信済みの最新の画像データと画像差分情報との合成画像を作成して操作ウインドウの更新を行う。
【0073】
10−2.操作クライアント端末が接続された中継サーバの処理
遠隔操作をする第3クライアント端末B1が接続された第2中継サーバBの処理について説明する。
第3クライアント端末B1の操作制御部232から、遠隔操作要求を受信すれば(図9AのステップS105を参照)、第2中継サーバBの操作制御部132は、中継サーバ情報を参照して、被操作クライアント端末が接続された中継サーバCを特定した上で、遠隔操作要求を中継する。具体的に、第2中継サーバBの操作制御部132は、中継サーバ情報に基づき第5クライアント端末C2が接続された第3中継サーバを特定し、遠隔操作要求を第3中継サーバCに中継する。また、第5クライアント端末C2から操作許可応答が送信されれば、第2中継サーバBの操作制御部132は、特定した第3中継サーバCとの間に第2操作セッションを確立する。
その後、第3クライアント端末B1と第5クライアント端末C2との間で遠隔操作が行われている場合、第2中継サーバBの操作制御部132は、操作イベント及び画像データを中継する。
【0074】
10−3.遠隔操作されるクライアント端末の処理
次に、被操作クライアント端末である第5クライアント端末C2の処理について説明する。図10は、被操作クライアント端末の処理を示すフローチャートである。
第5クライアント端末C2の操作制御部232は、第2中継サーバB及び第3中継サーバCによって中継された第3クライアント端末B1からの遠隔操作要求を受信し(ステップS131)、第5クライアント端末C2が遠隔操作を受け付け可能な状態であるかどうか判断する(ステップS133)。
遠隔操作を受け付け可能であれば(ステップS133でYes)、第5クライアント端末C2の操作制御部232は、遠隔操作の許可応答を、第3中継サーバCへと送信する(ステップS135)。送信された遠隔操作の許可応答は、その後第3中継サーバC及び第2中継サーバBを介して第3クライアント端末B1へと送信される。
一方、遠隔操作を受け付け可能な状態ではないと判断すれば(ステップS133でNo)、第5クライアント端末C2の操作制御部232は、エラー応答を第3中継サーバC及び第2中継サーバBを介して第3クライアント端末B1へと送信し(ステップS137)、処理を終了する。
【0075】
第5クライアント端末C2の操作制御部232は、第3中継サーバCによる制御のもと、第3中継サーバCとの間に第3操作セッションを確立する制御をする(ステップS139)。
第3操作セッションが確立されれば、次に第5クライアント端末C2の操作制御部232は、第3クライアント端末B1との間でハンドシェーク処理を行い(ステップS141)、伝送する画像情報の設定処理を行う(ステップS143)。
画像情報が設定された後、第5クライアント端末C2の操作制御部232は、第3中継サーバC及び第2中継サーバBを介して、第5クライアント端末C2の表示部224に表示されている被操作ウインドウの画像データを設定された画像情報に基づいて第3クライアント端末B1へと送信する(ステップS145)。
【0076】
その後第3クライアント端末B1から操作イベントを受信すれば(ステップS147)、第5クライアント端末C2の操作制御部232は、操作イベントに応じたシステム処理を実行する(ステップS149)。次に、第5クライアント端末C2の操作制御部232は、第3クライアント端末B1に対して画像データとして画像差分情報を送信する(ステップS151)。例えば、第5クライアント端末C2と第3クライアント端末B1との間ですでに共有されている画像データの一部のみが操作イベントによって更新される場合がある。この場合は、第5クライアント端末C2の操作制御部232は、画像データとして差分対象となる画像の描画位置差分等を含む画像差分情報のみを第3クライアント端末B1に送信する。このように操作イベントに応じて被操作ウインドウにおける画像データの一部を更新するシステム処理を行った場合には画像差分情報のみが送信されるので、第5クライアント端末C2から第3クライアント端末B1に転送されるデータの量を削減できる。
【0077】
続いて、時計情報の更新等、被操作ウインドウ側で自発的に画面更新があった場合は(ステップS153でYes)、ステップS151に戻って、第5クライアント端末C2の操作制御部232は、第3クライアント端末B1に対して画像差分情報を送信する。
その後、被操作ウインドウにおいて画面の更新がなく(ステップS153でNo)、第3クライアント端末B1より遠隔操作の終了の指示を受信すれば(ステップS155でYes)、第5クライアント端末C2の操作制御部232は、遠隔操作の処理を終了する。第3クライアント端末B1より遠隔操作の終了の指示を受信していない場合は(ステップS155でNo)、第5クライアント端末C2による処理は再びステップS147へと戻る。
【0078】
10−4.被操作クライアント端末が接続された中継サーバの処理
被操作クライアント端末である第5クライアント端末C2が接続された第3中継サーバCの処理について説明する。
まず、第3中継サーバCの操作制御部132は、第2中継サーバBから、遠隔操作要求を受信すれば、遠隔操作要求を被操作クライアント端末である第5クライアント端末C2に中継する。また、第3中継サーバCの操作制御部132は、遠隔操作の許可応答を受信すれば、第5クライアント端末C2との間に第3操作セッションを確立する。
さらに、第3クライアント端末B1と第5クライアント端末C2との間で遠隔操作が行われている場合、第3中継サーバCは、操作イベント及び画像データを中継する。また、第3中継サーバCは、遠隔操作情報を作成及び更新して第3中継サーバCの遠隔操作情報格納部144に格納し、さらに遠隔操作情報を第1中継グループ内の他の中継サーバ及びクライアント端末と共有する処理をする。
具体的には、第3中継サーバCは、第3クライアント端末B1及び第5クライアント端末C2間において遠隔操作要求に許可応答を返した時に、第1〜3操作セッションが確立されハンドシェーク処理にて画像情報が交換されているタイミングで遠隔操作の情報を記録し遠隔操作情報40(図8参照)を作成する。作成された遠隔操作情報40は、中継グループ情報及び中継サーバ情報と同様に第1中継グループ内で共有される。
【0079】
11.遠隔操作への途中参加
次に上記のように同じ中継グループに属するクライアント端末に対して他のクライアント端末が遠隔操作をしている状態において、同じ中継グループに属するさらに別のクライアント端末が遠隔操作に参加をする処理について説明する。
以下、図11に示すように、第3クライアント端末B1が第5クライアント端末C2を第1〜3操作セッションを介して遠隔操作している場合に、参加操作クライアント端末である第2クライアント端末A2が遠隔操作に参加する説明をする。図11は、確立した第1〜3操作セッションの一例を示す。図11に示すとおり、第3クライアント端末B1と第5クライアント端末C2との間には、図9A、図9B及び図10による処理によって第1〜3操作セッション401A〜401Cが確立されている。
【0080】
11−1.参加操作クライアント端末の処理
まず、参加操作クライアント端末の第2クライアント端末A2の処理について、さらに図12A〜図12Cを参照して説明する。図12A〜図12Cは、参加操作クライアント端末の操作処理を示すフローチャートである。
【0081】
まず、第2クライアント端末A2の操作制御部232は、被操作クライアント端末の検索を受け付ける(ステップS161)。具体的には、ユーザによる遠隔操作の指示に応じて、中継サーバ情報格納部242に格納されている中継サーバ情報30を表示部224に表示させる。又は、第2クライアント端末A2の操作制御部232は、遠隔操作情報格納部244に格納されている遠隔操作情報40がある場合は、遠隔操作情報40を表示部224に表示させる。ユーザは、表示部224に表示された中継サーバ情報30又は遠隔操作情報40に示されるクライアント端末のうち、遠隔操作の対象となる被操作クライアント端末を選択する。
【0082】
ユーザから操作入力部225を介して遠隔操作の対象となる第5クライアント端末C2の選択を受ける(ステップS163)。
【0083】
その後第2クライアント端末A2の操作制御部232は、被操作クライアント端末である第5クライアント端末C2が遠隔操作されているかどうかを確認する(ステップS165)。例えば、第2クライアント端末A2の操作制御部232は、第1中継サーバAによって第5クライアント端末C2が接続されていると特定された第3中継サーバCに問い合わせて、第5クライアント端末C2が遠隔操作されているかどうか確認する。
【0084】
ここで、第5クライアント端末C2が遠隔操作されていない場合は(ステップS165でNo)、第2クライアント端末A2の操作制御部232は、操作クライアント端末としての制御を行う。すなわち、図9A及び図9Bにおける操作クライアント端末である第3クライアント端末B1と同様の処理を行う。具体的には、第2クライアント端末A2の操作制御部232は、第5クライアント端末C2に対して操作要求を送信し(ステップS167)、許可応答を受信すれば(ステップS171でYes)、第1中継サーバAとの間に操作セッションを確立する(ステップ175)。その後第2クライアント端末A2の操作制御部232は、第1中継サーバAとの間に確立した操作セッションと、第1中継サーバAと第2中継サーバBとの間に確立された操作セッション及び第3中継サーバCと第5クライアント端末C2との間に確立された操作セッションを介して第5クライアント端末C2から画像データを受信し(ステップS177)、受信した画像データを出力して表示部224に表示する(ステップS179)。さらに第2クライアント端末A2の操作制御部232は、第5クライアント端末C2に対する唯一の操作クライアント端末であるため、第5クライアント端末C2に対する排他的操作権を有している(ステップS181でYes)。よって、その後操作イベントの発生に応じて、操作セッションを介して操作イベントを第5クライアント端末C2へと送信し(ステップS189、ステップS191)、遠隔操作を行う。
【0085】
一方、第5クライアント端末C2が遠隔操作されている場合は(ステップS165でYes)、第2クライアント端末A2の操作制御部232は、第1中継サーバAを介してステップS165で問い合わせた第3中継サーバCに対して送信する(ステップS169)。操作参加要求とは、すでに実行されている遠隔操作に参加するための要求である。
第2クライアント端末A2の操作制御部232は、第3中継サーバCから遠隔操作の参加に関する許可応答を受信すれば(ステップS171でYes)、第1中継サーバAとの間に第1参加操作セッション501Aを確立する処理を行う。このとき、第1中継サーバAと第3中継サーバCとの間には、第2参加操作セッション501Bが確立される。
一方、第3中継サーバCから許可応答を受信しない場合は(ステップS171でNo)、第2クライアント端末A2の操作制御部232はエラー処理を実行し(ステップS173)、参加操作の処理を終了する。
【0086】
第1〜2参加操作セッション501A〜501Bが確立された後、第2クライアント端末A2の操作制御部232は、第1中継サーバAを介して第3中継サーバCから画像データを受信する(ステップS177)。続いて第2クライアント端末A2の操作制御部232は、受信した画像データを第2クライアント端末A2の表示部224に出力して、操作ウインドウとして表示させる(ステップS179)。
なお、ここで第2クライアント端末A2の画像設定部233は、第3クライアント端末B1及び第5クライアント端末C2の画像設定部233との間でハンドシェーク処理を実行して、画像情報の設定処理を行ってもよい。
【0087】
その後、第2クライアント端末A2の操作制御部232は、第2クライアント端末A2に第5クライアント端末C2に対する排他的操作権があるかどうかを確認する(ステップS181)。具体的には、第2クライアント端末A2の操作制御部232は、遠隔操作情報40を参照して、どの操作クライアント端末に「操作中」のマークが表されているかを確認する。この例では、遠隔操作情報40では第3クライアント端末B1に「操作中」のマークが表されているため、第2クライアント端末A2の操作制御部232は、第2クライアント端末A2が排他的操作権を有していないことを確認する(ステップS181でNo)。
【0088】
続いて第2クライアント端末A2の操作制御部232は、ユーザから第5クライアント端末C2の排他的操作権を取得する指示があるかどうかを判断する(ステップS183)。例えば第2クライアント端末A2の操作制御部232は、表示部224に遠隔操作情報40を表示し、第2クライアント端末A2が第5クライアント端末C2の排他的操作権を有していないこと提示してユーザから排他的操作権の取得に関する指示を受け付ける。
ユーザから第5クライアント端末C2の排他的操作権の取得指示があれば(ステップS183でYes)、第2クライアント端末A2の操作制御部232は、第3中継サーバCに対して、第5クライアント端末C2の排他的操作権の取得要求を送信する(ステップS185)。
【0089】
第3中継サーバCから第5クライアント端末C2の排他的操作権の取得の許可応答を受信した場合(ステップS187でYes)、又はステップS181で排他的操作権があると確認した場合は、第2クライアント端末A2の操作制御部232は、ステップS189へと移行する。その後、第2クライアント端末A2の操作制御部232は、操作イベントが発生すれば(ステップS189でYes)、操作イベントを第1中継サーバAを介して第3中継サーバCに対して送信する(ステップS191)。続いて、第2クライアント端末A2の操作制御部232は、ユーザから遠隔操作の終了指示を受け付ければ(ステップS193でYes)、第5クライアント端末C2との間で確立した操作セッションを切断する制御をする(ステップS195)。また、このとき第2クライアント端末A2の操作制御部232は、表示部224に表示している操作ウインドウを閉じる。
【0090】
一方、第2クライアント端末A2の操作制御部232は、ユーザから遠隔操作の終了指示を受け付けなければ(ステップS193でNo)、再びステップS177に戻って、画像データの受信処理を行う。なお、このとき、画像データとして画像差分情報(後述)を受信した場合は、第2クライアント端末A2は、例えば受信済みの最新の画像データと画像差分情報との合成画像を作成して操作ウインドウの更新を行う。
【0091】
ステップS183にてユーザから排他的操作権の取得指示がなかった場合(ステップS183でNo)、又はステップS187にて第3中継サーバCから排他的操作権の取得の許可応答を受信しない場合は(ステップS187でNo)、第2クライアント端末A2の操作制御部232は、遠隔操作の監視を行う。具体的には、第2クライアント端末A2の操作制御部232は、第3クライアント端末B1による第5クライアント端末C2の遠隔操作に関する画像データを受信し(ステップS197)、受信した画像データを表示部224に出力して監視ウインドウとして表示させる(ステップS199)。
その後、ユーザより監視の終了指示を受け付ければ(ステップS201でYes)、第2クライアント端末A2の操作制御部232は、第1中継サーバAとの間に確立された参加第1参加操作セッション501Aを切断する(ステップS195)。このとき、第2参加操作セッション501Bも切断される(ステップS195)。
【0092】
一方、ユーザより監視の終了指示を受け付けてはいないが(ステップS201でNo)第3中継サーバCより第3クライアント端末B1による遠隔操作の終了コマンドを受け付ければ(ステップS203でYes)、第2クライアント端末A2の操作制御部232は、再びステップ181に戻る。すなわち、第3クライアント端末B1による遠隔操作が終了すれば、第2クライアント端末A2が第5クライアント端末C2の遠隔操作の排他的操作権を取得できる。従って、その後第2クライアント端末A2の操作制御部232は、第2クライアント端末A2に排他的操作権があることを確認し(ステップS181でYes)、ステップS189へと移行する。
【0093】
一方、第3中継サーバCより遠隔操作の終了コマンドを受け付けていない場合は(ステップS203でNo)、第2クライアント端末A2の操作制御部233による処理は、ステップS197へと再び戻る。
【0094】
11−2.操作制御中継サーバの処理
次に、被操作クライアント端末が接続された操作制御中継サーバが操作参加要求を受信した場合の処理について、さらに図13A〜図13Cを参照して説明する。図13A〜図13Cは、操作制御中継サーバの操作処理を示すフローチャートである。この例では、操作制御中継サーバは、第3中継サーバCである。
【0095】
第3中継サーバCの操作制御部132は、まず参加操作クライアント端末から操作参加要求を受信したかどうかを判断する(ステップS211)。ここでは、第2クライアント端末A2より送信され、第1中継サーバAによって中継された操作参加要求を受信する。ここで受信した参加操作要求は、第3クライアント端末B1と第5クライアント端末C2との間で実行されている遠隔操作に対する参加操作要求である。
【0096】
第3中継サーバCの操作制御部132は、要求された操作参加を許可できる場合は(ステップS213でYes)、第1中継サーバAを介して第2クライアント端末A2に対して許可応答を送信する(ステップS215)。ここで第3中継サーバCの操作制御部132は、要求された操作参加を許可できない場合は(ステップS213でNo)、第1中継サーバAを介して第2クライアント端末A2に対してエラー応答を返信して(ステップS217)、処理を終了する。
【0097】
許可応答を送信した場合、次に第3中継サーバCの操作制御部132は、第2クライアント端末A2が接続された第1中継サーバAとの間で第2参加操作セッション501Bを確立する制御をする(ステップS219)。このとき、第2クライアント端末A2及び第1中継サーバAとの間において第1参加操作セッション501Aが確立される。なお、本実施形態では、このとき第3中継サーバCの操作制御部133は、遠隔操作情報格納部144に格納された遠隔操作情報40に操作クライアント端末として第2クライアント端末A2のアカウント名を追加して遠隔操作情報40を更新する。その後更新された遠隔操作情報40は、第1中継グループ内の中継サーバ及びクライアント端末間で共有される。
【0098】
次に第3中継サーバCの操作制御部132は、第5クライアント端末C2に対して、画面データの新規取得の指示を送信する(ステップS221)。前述のとおり、第5クライアント端末C2と第3クライアント端末B1との間ですでに画像データが共有されていて、共有された画像データの一部のみが操作イベントに応じて更新される場合がある。この場合は、画像データとして差分対象となる画像の描画位置差分等を含む画像差分情報のみが第5クライアント端末C2から第3中継サーバC及び第2中継サーバBによって中継されて第3クライアント端末B1へと送信される。しかし、遠隔操作に参加する第2クライアント端末A2は、第5クライアント端末C2と第3クライアント端末B1とが共有する画像データを有していない。従って、第2クライアント端末A2の表示部224に操作ウインドウを表示するためには、画像差分情報の受信だけでは不十分である。そこで、第3中継サーバCの操作制御部132は、第5クライアント端末C2に対して、被操作ウインドウに表示されている全ての新規画像データの新規取得の指示を送信する。
【0099】
第5クライアント端末C2から新規画面データを取得した後、第3中継サーバCの操作制御部132は、新規取得した画像データを第1〜2参加操作セッション501A〜501Bを介して第2クライアント端末A2へ送信する(ステップS223)。なお、続いて第5クライアント端末C2から画像差分情報等の画像データを受信すれば、第3中継サーバCの操作制御部132は、受信した画像データのコピーを第1〜2参加操作セッション501A〜501Bを介して第2クライアント端末A2へと送信する。
【0100】
その後、第3中継サーバCの操作制御部132は、第2クライアント端末A2から排他的操作権の取得要求を受信したかどうかを判断する(ステップS225)。排他的操作権の取得要求を受信した場合は(ステップS225でYes)、第3中継サーバCの操作制御部132は、操作中の操作クライアント端末に対して排他的操作権の取得要求を送信する(ステップS227)。この例では、第3中継サーバCの操作制御部132は、第5クライアント端末C2を現在操作している第3クライアント端末B1に対して、排他的操作権の取得要求を送信する。第3クライアント端末B1から排他的操作権の許可応答を受信すれば(ステップS229でYes)、第3中継サーバCの操作制御部132は、排他的操作権の要求元である第2クライアント端末A2へ許可応答を送信する(ステップS231)。続いて第3中継サーバCの操作制御部132は、排他的操作権を要求した参加操作クライアント端末に排他的操作権を変更する(ステップS233)。この例では、第3中継サーバCの操作制御部132は、第5クライアント端末C2に対する排他的操作権を第3クライアント端末B1から第2クライアント端末A2へと変更する。具体的に、第3中継サーバCの操作制御部132は、操作イベントを第1〜2参加操作セッション501A〜501Bから受け入れるように第3操作セッション401Cを切り替える制御をする。また、このとき第3中継サーバCの操作制御部133は、遠隔操作情報格納部144に格納された遠隔操作情報40において、「ステータス」を更新する。具体的には、第2クライアント端末A2の「ステータス」を「操作中」に更新し、第3クライアント端末B1の「ステータス」をブランクに変更する。更新された遠隔操作情報40は、第1中継グループ内の中継サーバ及びクライアント端末間で共有される。
【0101】
一方、第3クライアント端末B1から許可応答を受信しない場合は(ステップS229でNo)、第3中継サーバCの操作制御部132は、排他的操作権の要求元にエラー応答を返信する(ステップS235)。この例では、第3中継サーバCの操作制御部132は、第2クライアント端末A2にエラー応答を返信する。
【0102】
第2クライアント端末A2にエラー応答を返信した後、第3中継サーバCの操作制御部132は、次に第3クライアント端末B1から遠隔操作の終了指示を受信したかどうかを判断する(ステップS237)。第2クライアント端末A2から排他的操作権の取得要求を受信してない場合(ステップS225でNo)も同様に、第3中継サーバCの操作制御部132は、次に第3クライアント端末B1から遠隔操作の終了指示を受信するかどうかを判断する。
【0103】
遠隔操作の終了指示を受信すれば(ステップS237でYes)、第3中継サーバCの操作制御部132は、他に操作クライアント端末が存在するかどうか判断する(ステップS239)。ここで、仮に他に操作クライアント端末が存在しないとすれば(ステップS239でNo)、第3中継サーバCの操作制御部132は、第3クライアント端末B1と第5クライアント端末C2との間の第1〜第3操作セッション501A〜301Cを切断する制御をする(ステップS241)。
【0104】
一方、本実施形態では、操作クライアント端末として第2クライアント端末A2が存在するので(ステップS239でYes)、第3中継サーバCの操作制御部132は、第2クライアント端末A2に対して遠隔操作終了コマンドを送信し(ステップS243)、ステップS125に再び戻る。すなわち、遠隔操作終了コマンドを送信することにより第2クライアント端末A2に対して第3クライアント端末B1による遠隔操作を終了したことを通知し、第2クライアント端末A2から第5クライアント端末C2の排他的操作権の取得要求を受信するかどうかを判断する。
【0105】
12.本実施形態の効果
本実施形態における中継通信システムによると、第1中継グループ内で一台の被操作クライアント端末に対して複数のクライアント端末が遠隔操作できる。
【0106】
13.他の実施形態
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
【0107】
(a)上記の実施形態では、操作制御中継サーバは、被操作クライアント端末が接続された中継サーバである例を挙げて説明した。しかし、操作制御中継サーバは、操作クライアント端末が接続された中継サーバであってもよい。
【0108】
(b)上記の例では、遠隔操作情報40は、操作クライアント端末及び被操作クライアント端末間において操作セッションが確立しハンドシェーク処理が行われるタイミングで被操作クライアント端末が接続された中継サーバによって作成される例を挙げた。しかし、遠隔操作情報40が作成されるタイミングは上記の例に限定されず、例えば操作イベントが発生したタイミングであってもよい。さらに遠隔操作情報40は、被操作クライアント端末が接続された中継サーバでなく、操作クライアント端末、被操作クライアント端末又は操作クライアント端末が接続された中継サーバによって作成されてもよい。
【0109】
(c)上記の実施形態では、中継グループ情報及び中継サーバ情報は、全ての中継サーバ及びクライアント端末間で常時最新のものが共有されるようになっていた。しかし、本発明はそのような実施形態に限定されない。例えば、中継サーバの1つをセンター端末として、センター端末が中継サーバ同士のアクセス権を管理するようにしてもよい。
(d)上記の実施形態では、作成及び更新された遠隔操作情報40が中継グループ内の中継サーバ及びクライアント端末間で共有される例を挙げた。
しかし、遠隔操作情報40は、操作クライアント端末、被操作クライアント端末、操作クライアント端末が接続された中継サーバ及び被操作クライアント端末が接続された中継サーバのみが有し、それぞれの遠隔操作情報格納部114、224に格納されていてもよい。そして、参加操作クライアント端末は、中継サーバ情報30を参照して上記いずれかの端末に遠隔操作が行われているかどうかを問い合わせることにより、参加する遠隔操作を決定してもよい。
【0110】
(e)上記の例では、遠隔操作情報40が一つの遠隔操作「31」に関する情報を有する例を挙げた。しかし、同一中継グループ内で複数の遠隔操作が行われていてもよく、複数の遠隔操作が行われている場合は、遠隔操作情報40は複数の遠隔操作に関する情報を有していてもよい。
【0111】
(f)操作セッション又は参加操作セッションが確立されている各中継サーバは、遠隔操作情報格納部に格納された遠隔操作情報に、さらにコネクション情報を関連付けて格納していてもよい。コネクション情報とは、中継サーバに対して確立された操作セッション又は参加操作セッションに関する情報である。
例えば、上記の実施形態において、操作制御中継サーバである第3中継サーバCは、第3中継サーバCに対して第2操作セッション401B、第3操作セッション401C及び第2参加操作セッション501Bが確立されているセッション情報を有していてもよい。
このように、第3中継サーバCは、遠隔操作情報に関連して第3中継サーバCに対して確立されているコネクション情報を格納しているので、第3中継サーバCは、第3中継サーバCが複数の遠隔操作に関する監視制御中継サーバであっても、第3中継サーバCに確立された操作セッションをより適切に識別して操作イベント及び画像データ等の中継制御を行うことができる。
なお、操作セッション又は参加操作セッションが確立されている各クライアント端末が、遠隔操作情報格納部に格納された遠隔操作情報に対して、さらにクライアント端末に対して確立された操作セッションに関するコネクション情報を関連付けて格納していてもよい。例えば第5クライアント端末C2は、第5クライアント端末C2に対して第3操作セッション401Cが確立されているコネクション情報を遠隔操作情報に関連付けて格納していてもよい。
【0112】
(g)前記実施形態では、参加操作クライアント端末は第2クライアント端末A1であったが、第6クライアント端末B2(図示せず)が第2遠隔操作を要求してもよい。その場合、第2中継サーバBは、遠隔操作情報を参照した参加操作クライアント端末である第6クライアント端末B2より遠隔操作に対する操作参加要求を受け付ければ、操作参加要求を第3中継サーバCへと中継し、第6クライアント端末B2との間に第1参加操作セッションを確立し、第3中継サーバCとの間に第2参加操作セッションを確立し、第2中継サーバBの操作制御部132は、第5クライアント端末C2に対する遠隔操作の排他的操作権を調整し、第4クライアント端末B1及び第6クライアント端末B2のうち調整後の遠隔操作の排他的操作権を有するクライアント端末と第5クライアント端末C2との間で行われる遠隔操作の操作データを中継する。
【0113】
(h)他の実施形態として、図1の中継通信システムにおいて、第3中継サーバCに第4クライアント端末C1、第5クライアント端末C2以外に、さらに第6クライアント端末C3(図示せず)が配置されたものを説明する。
第3中継サーバCは、WAN4を介して第2中継サーバB及び第1中継サーバAと接続可能であり、LANを介して第4クライアント端末C1、第5クライアント端末C2及び第6クライアント端末C3と接続可能である。操作制御部132は、第1操作セッション確立部として、第4クライアント端末C1又は第2中継サーバBとの間に第1操作セッションを確立する。操作制御部132は、第2操作セッション確立部は、第5クライアント端末C2又は第1中継サーバAとの間に第2操作セッションを確立する。操作制御部132は、被操作セッション確立部として、第6クライアント端末C3との間に被操作セッションを確立する。操作制御部132は、さらに、第1操作セッション又は第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、被操作セッションへ中継し、被操作セッションから受信した画像データを第1操作セッション及び第2操作セッションへ中継する。操作制御部132は、操作権限変更部として、第1操作セッション又は第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する。
以上の実施形態では、互いに通信可能な複数の中継サーバ及び複数のクライアント端末を有する中継通信システムにおいて、遠隔操作する端末及び遠隔操作される端末以外の他の端末が遠隔操作の内容を取得することができる。
【0114】
(i)他の実施形態を、図1の中継通信システムを用いて説明する。
第3中継サーバCは、WAN4を介して第2中継サーバBと接続可能であり、LAN19、21,23を介して第4クライアント端末C1及び第5クライアント端末C2と接続可能である。操作制御部132は、第1操作セッション確立部として、第4クライアント端末C1との間に第1操作セッションを確立する。操作制御部132は、第2操作セッション確立部として、第5クライアント端末C2との間に第2操作セッションを確立する。操作制御部132は、被操作セッション確立部として、第2中継サーバBとの間に被操作セッションを確立する。操作制御部132は、第1操作セッション又は第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、被操作セッションへ中継し、被操作セッションから受信した画像データを第1操作セッション及び第2操作セッションへ中継する。操作制御部132は、操作権限変更部として、第1操作セッション又は第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する。
以上の実施形態では、互いに通信可能な複数の中継サーバ及び複数のクライアント端末を有する中継通信システムにおいて、遠隔操作する端末及び遠隔操作される端末以外の他の端末が遠隔操作の内容を取得することができる。
【産業上の利用可能性】
【0115】
本発明は、互いに通信可能な複数の中継サーバと、複数のクライアント端末と、クライアント端末を中継サーバに接続するLANとを有する中継通信システム、及びそれに用いられる中継サーバに広く適用できる。
【符号の説明】
【0116】
1 第1LAN
2 第2LAN
3 第3LAN
4 WAN
30 中継サーバ情報
40 遠隔操作情報
A 第1中継サーバ
B 第2中継サーバ
C 第3中継サーバ
A1 第1クライアント端末
A2 第2クライアント端末
B1 第3クライアント端末
C1 第4クライアント端末
C2 第5クライアント端末
【技術分野】
【0001】
本発明は、互いに通信可能な複数の中継サーバと、複数のクライアント端末と、クライアント端末を中継サーバに接続するLANとを有する中継通信システムに関し、さらに中継通信システムに用いられる中継サーバに関する。
【背景技術】
【0002】
従来、家庭あるいはオフィスなどに設置されている電子機器等の端末機の監視及び保守を、遠隔地から行う遠隔保守システムが実用化されている。保守業者のサービスマンは、遠隔保守システムの利用することで、端末機の設置場所に出向くことなく、端末機の保守作業を行う。
また従来、所定のネットワークを介して接続されたコンピュータ端末の画面の内容を確認しつつ、コンピュータ端末を遠隔操作できる画像処理装置が提案されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−59083号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に開示された遠隔操作システムは、画像処置装置と1つのコンピュータ端末との間でしか運用されない。すなわち、特許文献1に開示された遠隔操作では、一対一の関係を有する遠隔操作の操作側の端末及び被操作側の端末の間でのみ遠隔操作の内容が共有される。従って、従来では、操作側の端末が被操作側の端末を遠隔操作している場合に、これら以外の他の端末が遠隔操作の内容を取得したいという要望を持っていても、そのような要望に応えることは困難であった。
【0005】
本発明の目的は、互いに通信可能な複数の中継サーバ及び複数のクライアント端末を有する中継通信システムにおいて、遠隔操作する端末及び遠隔操作される端末以外の他の端末が遠隔操作の内容を取得することにある。
【課題を解決するための手段】
【0006】
以下に、課題を解決するための手段として複数の態様を説明する。これら態様は、必要に応じて任意に組み合せることができる。
【0007】
本発明の一見地に係る中継通信システムは、第1ネットワークと、第2ネットワークと、第1中継サーバと、第2中継サーバと、第1クライアント端末と、第2クライアント端末と、第3クライアント端末と、を備える。第1中継サーバは、第1ネットワークに接続される。第2中継サーバは、第2ネットワークに接続され、第3ネットワークを介して第1中継サーバと通信可能である。第1クライアント端末は、第1中継サーバと第1ネットワークを介して接続される。第2クライアント端末及び第3クライアント端末は、第2中継サーバと第2ネットワークを介して接続される。
第1中継サーバ及び第2中継サーバは、操作制御部を備える。操作制御部は、中継サーバ自身の起動情報と中継サーバ自身に接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を互いに共有する。
第2中継サーバは、第2操作制御部を有する。第2操作制御部は、遠隔操作を行う操作クライアント端末である第2クライアント端末から、中継サーバ情報を参照して被操作クライアント端末として選択された第1クライアント端末を遠隔操作する要求であって、第2クライアント端末及び第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、以下の処理を行う。第2操作制御部は、第1クライアント端末が接続されている第1中継サーバを特定し、第1中継サーバへ遠隔操作要求を中継し、第2クライアント端末との間に第1操作セッションを確立し、第1中継サーバとの間で中間サーバ間セッションを確立し、遠隔操作要求に基づいて行われる第2クライアント端末による第1クライアント端末への遠隔操作の操作データを第1操作セッション及び中間サーバ間セッションの間で中継する。
第1中継サーバは、第1操作制御部を有する。第1操作制御部は、第2中継サーバから遠隔操作要求を受信すれば、以下の処理を行う。第1クライアント端末に遠隔操作要求を中継し、第1クライアント端末との間に第3操作セッションを確立し、遠隔操作要求に基づいて行われる遠隔操作の操作データを中間サーバ間セッション及び第3操作セッションの間で中継し、第1クライアント端末及び第2クライアント端末の情報を含む遠隔操作情報を作成する。
第2操作制御部は、遠隔操作情報を参照した参加操作クライアント端末である第3クライアント端末より遠隔操作に対する操作参加要求を受け付ければ、第3クライアント端末との間に第1参加操作セッションを確立し、前記第2クライアント端末及び前記第3クライアント端末のうち、操作権を有するいずれかのクライアント端末から受信した操作イベントを第1中継サーバへ中継し、第1中継サーバから受信した画像データを第1クライアント端末及び第3クライアント端末へ中継する。
【0008】
ここでは、第1中継グループ内で一台の被操作クライアント端末に対して複数のクライアント端末が遠隔操作できる。
【0009】
第2操作制御部は、排他的操作権を調整する際、第3クライアント端末から受信した遠隔操作に対する排他的操作権の取得要求を第2クライアント端末へ送信し、第2クライアント端末から排他的操作権の取得要求に対する許可応答を受信してもよい。
【0010】
本発明の他の見地に係る中継サーバは、第2ネットワークに接続される第2中継サーバと通信可能であり、第1ネットワークに接続され、第1ネットワークを介して第1クライアント端末と接続される第1中継サーバとして機能する中継サーバである。
中継サーバは、情報共有部と、操作制御部と、を備える。
情報共有部は、中継サーバの起動情報と中継サーバに接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を第2中継サーバと互いに共有する。
操作制御部は、遠隔操作を行う操作クライアント端末である第2中継サーバに接続された第2クライアント端末から、中継サーバ情報を参照して選択された第1クライアント端末を遠隔操作する要求であって、第2クライアント端末及び第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、以下の処理を行う。操作制御部は、第1クライアント端末に遠隔操作要求を中継し、第2中継サーバとの間に中継サーバ間セッションを確立し、第1クライアント端末との間に第2操作セッションを確立し、中継サーバ間セッションと、第3操作セッションと、第3クライアント端末と第2中継サーバとの間に確立された第1操作セッションとを介して遠隔操作要求に基づいて行われる第2クライアント端末による第1クライアント端末への遠隔操作の操作データを中継サーバ間セッション及び第2操作セッションの間で中継する。操作制御部は、第1クライアント端末及び第2クライアント端末の情報を含む遠隔操作情報を作成する。
ここで、操作制御部は、遠隔操作情報を参照した参加操作クライアント端末である第3クライアント端末より遠隔操作に対する操作参加要求を受け付ければ、以下の処理を行う。操作制御部は、第3クライアント端末が接続された第2中継サーバとの間に参加操作セッションをさらに確立し、第2操作制御部によって調整された第1クライアント端末に対する遠隔操作の排他的操作権に基づいて、第2クライアント端末及び第3クライアント端末のうち調整後の遠隔操作の排他的操作権を有するクライアント端末と第1クライアント端末との間で行われる遠隔操作の操作データを中継する。操作イベントは、排他的操作権を有するクライアント端末から供給される。
【0011】
本発明のさらに他の見地に係る中継通信システムは、第1ネットワークと、第2ネットワークと、第3ネットワークと、第1中継サーバと、第2中継サーバと、第3中継サーバと、第1クライアント端末と、第2クライアント端末と、第5クライアント端末とを備えている。第1中継サーバは、第1ネットワークに接続される。第2中継サーバは、第2ネットワークに接続される。第3中継サーバは、第3ネットワークに接続され、第1中継サーバ及び第2中継サーバと相互に通信可能である。第1クライアント端末は、第1中継サーバと第1ネットワークを介して接続される。第2クライアント端末は、第2中継サーバと第2ネットワークを介して接続される。第5クライアント端末は、第3中継サーバと第3ネットワークを介して接続される。第1中継サーバ、第2中継サーバ及び第3中継サーバは中継サーバ自身の起動情報と中継サーバ自身に接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を互いに共有する情報共有部を有している。第2中継サーバは、第2操作部を有している。第2操作部は、遠隔操作を行う操作クライアント端末である第2クライアント端末から、中継サーバ情報を参照して被操作クライアント端末として選択された第1クライアント端末を遠隔操作する要求であって、第2クライアント端末及び第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、第1クライアント端末が接続されている第1中継サーバを特定し、第1中継サーバへ遠隔操作要求を中継し、第2クライアント端末との間に第1操作セッションを確立し、第1中継サーバとの間に中継サーバ間セッションを確立し、遠隔操作要求に基づいて行われる第2クライアント端末による第1クライアント端末への遠隔操作の操作データとしての操作イベント及び画像データを第1操作セッション及び中継サーバ間セッションの間で中継する。第1中継サーバは、第1操作制御部を有している。第1操作制御部は、第2中継サーバから遠隔操作要求を受信すれば、第1クライアント端末に遠隔操作要求を中継し、第1クライアント端末との間に第2操作セッションを確立し、遠隔操作要求に基づいて行われる遠隔操作の操作データを中継サーバ間セッション及び第2操作セッションの間で中継し、第1クライアント端末及び第2クライアント端末の情報を含む遠隔操作情報を作成する。第3中継サーバは、操作参加要求を送受信可能な第3操作制御部を有している。第3操作制御部は、遠隔操作情報を参照した参加操作クライアント端末である第5クライアント端末より遠隔操作に対する操作参加要求を受け付ければ、操作参加要求を第1中継サーバへと中継し、第5クライアント端末との間に第1参加操作セッションを確立し、第3中継サーバとの間で第2参加セッションを確立し、第1操作制御部は、第2クライアント端末及び第5クライアント端末のうち、操作権を有するいずれかのクライアント端末から受信した操作イベントを第1クライアント端末へ中継し、第1クライアント端末から受信した画像データを第2クライアント端末及び第5クライアント端末へ中継する。
【0012】
本発明のさらに他の見地に係る第1中継サーバは、WANを介して第2中継サーバ及び第3中継サーバと接続可能であり、LANを介して第1クライアント端末、第2クライアント端末及び第3クライアント端末と接続可能な第1中継サーバである。第1中継サーバは、第1操作セッション確立部と、第2操作セッション確立部と、被操作セッション確立部と、操作制御部と、操作権限変更部と、を備えている。第1操作セッション確立部は、第1クライアント端末又は第2中継サーバとの間に第1操作セッションを確立する。第2操作セッション確立部は、第2クライアント端末又は第3中継サーバとの間に第2操作セッションを確立する。被操作セッション確立部は、第3クライアント端末との間に被操作セッションを確立する。操作制御部は、第1操作セッション又は第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、被操作セッションへ中継し、被操作セッションから受信した画像データを第1操作セッション及び第2操作セッションへ中継する。操作権限変更部は、第1操作セッション又は第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する。
【0013】
本発明のさらに他の見地に係る第1中継サーバは、WANを介して第2中継サーバと接続可能であり、LANを介して第1クライアント端末及び第2クライアント端末と接続可能な第1中継サーバである。第1中継サーバは、第1操作セッション確立部と、第2操作セッション確立部と、被操作セッション確立部と、操作制御部と、操作権限変更部と、を備えている。第1操作セッション確立部は、第1クライアント端末との間に第1操作セッションを確立する。第2操作セッション確立部は、第2クライアント端末との間に第2操作セッションを確立する。被操作セッション確立部は、第2中継サーバとの間に被操作セッションを確立する。操作制御部は、第1操作セッション又は第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、被操作セッションへ中継し、被操作セッションから受信した画像データを第1操作セッション及び第2操作セッションへ中継する。操作権限変更部は、第1操作セッション又は第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する。
【発明の効果】
【0014】
本発明によると、第1中継グループ内で一台の被操作クライアント端末に対して複数の操作クライアント端末が遠隔操作できる。
【図面の簡単な説明】
【0015】
【図1】中継通信システムの全体構成を示す模式図。
【図2】第1中継サーバの構成を示すブロック図。
【図3】第1クライアント端末の構成を示すブロック図。
【図4】中継グループ情報の概略構成を示す図。
【図5】中継グループ情報の詳細構成を示す図。
【図6】中継サーバ情報の概略構成を示す図。
【図7】中継サーバ情報の詳細構成を示す図。
【図8】遠隔操作情報の概略構成を示す図。
【図9A】操作クライアント端末の操作処理を示すフローチャート(その1)。
【図9B】操作クライアント端末の操作処理を示すフローチャート(その2)。
【図10】被操作クライアント端末の処理を示すフローチャート。
【図11】確立した操作セッションの一例を示す図。
【図12A】参加操作クライアント端末の操作処理を示すフローチャート(その1)。
【図12B】参加操作クライアント端末の操作処理を示すフローチャート(その2)。
【図12C】参加操作クライアント端末の操作処理を示すフローチャート(その3)。
【図13A】操作制御中継サーバの処理を示すフローチャート(その1)。
【図13B】操作制御中継サーバの操作処理を示すフローチャート(その2)。
【図13C】操作制御中継サーバの操作処理を示すフローチャート(その3)。
【発明を実施するための形態】
【0016】
1.本実施形態の概要
本実施形態における中継通信システムでは、複数の中継サーバを介して、クライアント端末同士がWANを超えて互いに通信可能となる。
【0017】
2.中継通信システムの全体構成
以下、図面を参照しつつ、本発明の実施の形態について説明する。図1は、中継通信システムの全体構成を示す。中継通信システムは、第1LAN1と、第2LAN2と、第3LAN3と、WAN4とから構成される。第1LAN1、第2LAN2及び第3LAN3は、遠隔に構築される小規模なネットワークである。WAN4は、インターネットなどの大規模なネットワークである。
この実施形態では、後に詳細に説明するが、第1LAN1の第1中継サーバAと、第2LAN2の第2中継サーバBと、第3LAN3の第3中継サーバCとが、中継グループとしての第1中継グループを構成している。
【0018】
第1LAN1は、第4LAN11と第5LAN13とを有しており、第4LAN11と第5LAN13とは第1汎用ルータ15により互いに接続されている。第4LAN11では、第1中継サーバAと第1クライアント端末A1とが互いに接続されている。第5LAN13では、第2クライアント端末A2と第1通信機器17とが互いに接続されている。
【0019】
第2LAN2では、第2中継サーバBと第3クライアント端末B1とが互いに接続されている。
第3LAN3は、第6LAN19と、第7LAN21と、第8LAN23とを有している。第6LAN19と第7LAN21とは第2汎用ルータ25により接続されていて、第6LAN19と第8LAN23とは第3汎用ルータ27により接続されている。第6LAN19には、第3中継サーバCが所属している。第7LAN21には、第4クライアント端末C1が接続されている。第8LAN23には、第5クライアント端末C2が接続されている。
【0020】
第1クライアント端末A1、第2クライアント端末A2、第3クライアント端末B1、第4クライアント端末C1及び第5クライアント端末C2は、例えば、パーソナルコンピュータである。また、第1通信機器17も、例えばパーソナルコンピュータである。
【0021】
第1中継サーバA、第2中継サーバB及び第3中継サーバCは、第1クライアント端末A1、第2クライアント端末A2、第3クライアント端末B1、第4クライアント端末C1及び第5クライアント端末C2の相互間の通信を中継する。WAN4は、第1中継サーバA、第2中継サーバB及び第3中継サーバCの相互間の通信を中継する。なお、第1中継サーバA、第2中継サーバB及び第3中継サーバCの相互間の通信プロトコルは特に限定されない。
【0022】
3.中継サーバの構成要素
中継サーバは、LANだけでなくWANにも接続されており、同一のLANに接続されている各クライアント端末と通信可能であるとともに、他のLANに配置された中継サーバと通信可能になっている。そのため、各中継サーバには、プライベートIPアドレスに加えて、グローバルIPアドレスが付与されている。
図2は、第1中継サーバAの構成要素を示す。第1中継サーバAは、ネットワークインターフェース121、LAN制御部122、WAN制御部123、制御部124及びデータベース格納部125を有する。また、第1中継サーバAは、表示部126及び操作入力部127を有していてもよい。
ネットワークインターフェース121は、プライベートIPアドレスを利用してLAN1内の端末に対して通信を実行し、さらに、グローバルIPアドレスを利用してWAN4に対して通信を実行する。
LAN制御部122は、ネットワークインターフェース121を介してLAN1内の端末と間で行う様々な通信を制御する処理部であり、所定のプロトコルに従った通信処理を制御する。
WAN制御部123は、WAN4に接続された端末との間でネットワークインターフェース121を介して行う様々な通信を制御する処理部であり、所定のプロトコルに従った通信処理を制御する。
【0023】
制御部124は、例えば、制御及び演算の機能を有するCPUであり、ロードされたプログラムにより各種処理を実行可能である。
本実施形態の制御部124は、情報共有部131及び操作制御部132を有する。
【0024】
情報共有部131は、後述する中継グループ情報及び中継サーバ情報の作成及び更新を行う。
また、情報共有部131は、中継グループ情報、中継サーバ情報及び後述する遠隔操作情報を中継グループ内の中継サーバ及びクライアント端末と共有する処理を行う。具体的には、情報共有部131は、作成及び更新された中継グループ情報を中継グループ内の中継サーバ及び中継サーバに接続されたクライアント端末と共有し、中継グループ情報格納部141(後述)に格納する。情報共有部131は、作成及び更新された中継サーバ情報を中継グループ内の中継サーバ及び中継サーバに接続されたクライアント端末と共有し、中継サーバ情報格納部142(後述)に格納する。また情報共有部131は、作成及び更新された遠隔操作情報を中継グループ内の中継サーバ及びクライアント端末と共有し、遠隔操作情報格納部143(後述)に格納する。
【0025】
操作制御部132は、遠隔操作要求に応じて中継グループ内で行われる遠隔操作を行うための操作セッションを確立し遠隔操作を制御する。遠隔操作要求とは、遠隔操作を行うクライアント端末(以下、操作クライアント端末)から出力された遠隔操作の要求であって、操作クライアント端末の情報と、遠隔操作されるクライアント端末(以下、被操作クライアント端末)の情報とが含まれる。操作クライアント端末及び被操作クライアント端末の情報とは、各クライアント端末を識別するための情報であって、本実施形態では各クライアント端末のアカウント名である。
具体的には、操作制御部132は、遠隔操作要求を受け付けた場合、中継サーバ情報を参照して遠隔操作要求を被操作クライアント端末へと中継し、遠隔操作を実行するための操作セッションを確立する処理を行う。例えば、操作制御部132は、中継サーバに接続された操作クライアント端末から遠隔操作要求を受け付けた場合は、中継サーバ情報を参照して、被操作クライアント端末が接続された中継サーバを特定した上で、遠隔操作要求を中継する。また、操作制御部132は、被操作クライアント端末が接続された中継サーバとの間に操作セッションを確立する。次に、被操作クライアント端末が接続された中継サーバの操作制御部132は、被操作クライアント端末へと遠隔操作要求を中継し、中継サーバ情報に基づき被操作クライアント端末との間に操作セッションを確立する。
【0026】
また、操作制御部132は、操作セッションを介して操作クライアント端末と被操作クライアント端末との間で行われている遠隔操作に関する操作データを中継する。操作データには、後述する操作イベント及び画像データが含まれる。さらに、操作制御部132は、遠隔操作情報の作成又は更新を行うが、詳細は後述する。
【0027】
さらに、操作制御部132は、操作セッションを介して遠隔操作が行われている際に操作クライアント端末と被操作クライアント端末とは異なる他のクライアント端末から遠隔操作への参加要求を受信した場合には、遠隔操作の排他的操作権の調整の制御をする。その後、操作制御部132は、遠隔操作の排他的操作権を有するクライアント端末からの遠隔操作の操作データを中継する。以下、遠隔操作への参加要求を受信に応じて、遠隔操作の排他的操作権の調整をする中継サーバを操作制御中継サーバという。また、遠隔操作への途中参加を要求するクライアント端末を参加操作クライアント端末という。
【0028】
データベース格納部125は、例えば、ハードディスク又は不揮発RAMであり、各種データを保存可能である。データベース格納部125は、中継グループ情報格納部141、中継サーバ情報格納部142及び遠隔操作情報格納部143を有する。中継グループ情報格納部141、中継サーバ情報格納部142及び遠隔操作情報格納部143に格納される情報の詳細は後述する。
【0029】
表示部126は、液晶表示パネル等の表示デバイスを含む。表示部126は、中継グループ情報、中継サーバ情報及び遠隔操作情報等に関する種々の情報をユーザに提示する。
操作入力部127は、第1中継サーバAに対する各種の指示を入力するためのハードキー及びマウス等で構成される。
【0030】
なお、第2中継サーバB、第3中継サーバCの構成要素は第1中継サーバAと同様であるので説明を省略する。
【0031】
4.クライアント端末の構成要素
クライアント端末は、ユーザが直接操作できる端末である。クライアント端末は、例えば、ユーザによって日々の業務に利用されるパーソナルコンピュータである。各クライアント端末には、同一のLAN内でユニークに管理されたプライベートIPアドレスが付与される。
【0032】
図3は、第1クライアント端末A1の構成要素を示す。第1クライアント端末A1は、LANインターフェース221、制御部222、データベース格納部223、表示部224及び操作入力部225を有する。
【0033】
LANインターフェース221は、プライベートIPアドレスを利用して、第1LAN1内の第1中継サーバA及び他の端末に対して通信を実行することができる。
【0034】
制御部222は、例えば、制御及び演算の機能を有するCPUであり、ロードされたプログラムにより各種処理を実行可能である。本実施形態の制御部222は、情報共有部231、操作制御部232、画像設定部233及びクライアント通信制御部234を有する。
【0035】
情報共有部231は、中継グループ情報、中継サーバ情報及び遠隔操作情報を中継グループ内の中継サーバ及びクライアント端末と共有する処理を行う。具体的には、情報共有部231は、作成及び更新された中継グループ情報を中継グループ内の中継サーバ及び中継サーバに接続されたクライアント端末と共有し、中継グループ情報格納部241(後述)に格納する。情報共有部231は、作成及び更新された中継サーバ情報を中継グループ内の中継サーバ及び中継サーバに接続されたクライアント端末と共有し、中継サーバ情報格納部242(後述)に格納する。また情報共有部231は、作成及び更新された遠隔操作情報を中継グループ内の中継サーバ及びクライアント端末と共有し、遠隔操作情報格納部243(後述)に格納する。
【0036】
操作制御部232は、遠隔操作要求に応じて中継グループ内で行われる遠隔操作を行うための操作セッションを確立し遠隔操作を制御する。
操作クライアント端末の操作制御部232は、まずユーザから遠隔操作要求を受け付ける。その後、操作制御部232は、被操作クライアント端末に対して遠隔操作要求を中継サーバを介して送信し、さらに中継サーバを介して被操作クライアント端末との間に操作セッションを確立するように制御する。
操作セッションの確立後は、操作制御部232は、ユーザからの操作イベントを受け付け、受け付けた操作イベントを操作セッションに出力する制御を行う。操作イベントとは、操作入力部225を介したユーザ操作であって、例えばマウス及びキーボードを介したカーソル移動、マウス入力又はキーボード入力である。
また、操作制御部232は、被操作クライアント端末から操作イベントが処理された画像データを受信した場合は、受信した画像データを表示部224に出力して表示させる。
【0037】
一方、被操作クライアント端末の操作制御部232は、遠隔操作要求を受け付ければ、中継サーバを介して操作クライアント端末との間に操作セッションを確立するように制御する。また、操作イベントを操作クライアント端末から受け付ければ、操作制御部232は、受け付けた操作イベントをクライアント端末のシステムにおいて実行させて、操作イベントが反映された画像データを操作セッションを介して操作クライアント端末へと出力する。
【0038】
また、参加操作クライアント端末の操作制御部232は、操作制御中継サーバに対して操作参加要求を送信する。そして、ユーザからの指示に応じて遠隔操作の排他的操作権の取得要求を操作制御中継サーバに対して送信する。操作制御中継サーバから排他的操作権の取得が許可された場合は、操作制御部232はその後被操作クライアント端末に対して遠隔操作を行う。一方、操作制御中継サーバから排他的操作権の取得が許可されない場合は、操作制御部232はその後遠隔操作を監視する制御を行う。
【0039】
操作クライアント端末及び被操作クライアント端末の画像設定部233は、遠隔操作を行う際に操作クライアント端末及び被操作クライアント端末の画像情報を決定し、決定された画像情報をクライアント端末に設定する処理を行う。画像情報には、画面サイズ、色情報、解像度及び輝度等が含まれている。具体的に画像設定部233は、ハンドシェーク処理によって操作クライアント端末と被操作クライアント端末との間の画面情報を交換し、操作クライアント端末と被操作クライアント端末との間の画面情報が共通になるように画像情報を決定する。そして画像設定部233は、決定された画像情報に基づき、クライアント端末の画像情報を設定する。このように、操作クライアント端末と被操作クライアント端末との間の画面情報が共通に設定されることにより、操作クライアント端末の表示部224に不鮮明な画像データが表示されることを防ぐ。本実施形態では、各クライアント端末の操作制御部の画像設定部233によって、操作クライアント端末と被操作クライアント端末の画像情報のうち低い能力を示す画像情報に、他のクライアント端末の画像情報を合わせる設定が行われる。
【0040】
クライアント通信制御部234は、通信パケットを処理し、LANインターフェース221を介して行うTCP/IP、UDP又はSIPなどのプロトコルに従った様々な通信を制御する。
【0041】
データベース格納部223は、例えば、ハードディスク又は不揮発RAMであり、各種データを保存可能である。データベース格納部223は、中継グループ情報格納部241、中継サーバ情報格納部242及び遠隔操作情報格納部243を有する。中継グループ情報格納部241と、中継サーバ情報格納部242と、遠隔操作情報格納部243とに格納される情報の詳細は後述する。
【0042】
表示部224は、液晶表示パネル等の表示デバイスを含む。表示部224は、中継グループ情報、中継サーバ情報及び遠隔操作情報に関する種々の情報をユーザに提示する。また、操作クライアント端末の表示部224は、遠隔操作に関する操作用ウインドウをユーザに提示する。一方、被操作クライアント端末の表示部224は、遠隔操作に関する被操作用ウインドウをユーザに提示する。
操作入力部225は、第1クライアント端末A1に対する各種の指示を入力するためのハードキー及びマウス等で構成される。
第2クライアント端末A2、第3クライアント端末B1、第4クライアント端末C1及び第5クライアント端末C2は、第1クライアント端末A1と同様であるので説明を省略する。
【0043】
5.中継グループ情報
図4及び図5を参照して、中継グループ情報20を説明する。図4は、中継グループ情報の概略構成を示す図である。図5は、中継グループ情報の詳細構成を示す図である。中継グループ情報20は、中継通信システムにおける各中継グループの概要を示す情報である。図4は、第1中継グループが、第1中継サーバAと、第2中継サーバBと、第3中継サーバCとから構成されていることを示す。
【0044】
図5に示すとおり、中継グループ情報20は、上位情報201、下位情報202から構成される。
上位情報201は、第1中継グループ自体についての情報である。「group id」は、中継グループの識別情報を示す。「lastmod」は、中継グループ情報の最新更新時刻を示す。「name」は、中継グループの名称を示す。
【0045】
下位情報202は、第1中継サーバA、第2中継サーバB及び第3中継サーバCについての情報である。「site id」は、中継サーバの識別情報を示す。
【0046】
中継グループ情報20は、第1中継サーバAと、第2中継サーバBと、第3中継サーバCとの間で共有されて、各中継サーバの中継グループ情報格納部141に格納される。さらに、中継グループ情報20は、中継サーバとクライアント端末との間でも共有され、各クライアント端末の中継グループ情報格納部241に格納される。
【0047】
6.中継サーバ情報
図6及び図7を参照して、中継サーバ情報30を説明する。図6は、中継サーバ情報の概略構成を示す。図7は、中継サーバ情報30の詳細構成を示す。中継サーバ情報30は、中継通信システムを構成する中継サーバ及びクライアント端末の概要を示す情報である。
【0048】
図6に示すように、中継サーバ情報30には、第1中継サーバAに第1クライアント端末A1及び第2クライアント端末A2が接続され、第2中継サーバBに第3クライアント端末B1が接続され、第3中継サーバCに第4クライアント端末C1及び第5クライアント端末C2が接続されている情報が示されている。
【0049】
図7に示すとおり、中継サーバ情報30は、上位情報301−1、301−2、301−3及び下位情報302−1、302−2、302−3を含む。
【0050】
上位情報301−1、301−2、301−3は、中継サーバについての情報である。「site id」は、中継サーバの識別情報を示す。「name」は、中継サーバの名称を示す。「stat」は、中継サーバが起動しているか否かについての情報を示す。
【0051】
下位情報302−1、302−2、302−3は、クライアント端末についての情報である。「div」は、クライアント端末の部署名を示す。「group」は、クライアント端末が所属する中継グループの識別情報を示す。「id」は、クライアント端末の識別情報を示す。「name」は、クライアント端末の名称を示す。「site」は、クライアント端末がログオンしている場合にログオン先の中継サーバの識別情報を示す。
【0052】
中継サーバ情報30は、第1中継サーバA、第2中継サーバB及び第3中継サーバC間で共有され、各中継サーバの中継サーバ情報格納部142において格納される。また、中継サーバ情報30は、中継サーバ及びクライアント端末間で共有され、各クライアント端末の中継サーバ情報格納部242に格納される。
【0053】
中継サーバが起動しているときには、上位情報301−1、301−2、301−3の「stat」が「active」になっている。中継サーバが起動していないときには、「stat」が空欄になっている。これにより、中継サーバが起動しているか否かについての情報が、中継通信システム全体として共有される。
【0054】
またクライアント端末が中継サーバにログオンしているときには、下位情報302−1、302−2、302−3の「site」にクライアント端末のログオン先の中継サーバの識別情報が記載されている。クライアント端末が中継サーバにログオンしていないときには、「site」は空欄になっている。これにより、クライアント端末が中継サーバにログオンしているか否かについての情報が、中継通信システム全体として共有される。
【0055】
7.遠隔操作情報
遠隔操作情報は、操作クライアント端末及び被操作クライアント端末の識別情報と、遠隔操作を識別する識別情報とを含む情報である。本実施形態において各クライアント端末の識別情報とはアカウント名である。しかし、各クライアント端末を識別できる情報であれば各クライアント端末の識別情報はこの例に限定されない。また、遠隔操作の識別情報として任意のIDが用いられる。しかし、遠隔操作の識別できれば任意のID以外の識別情報が用いられてもよい。
【0056】
また、ある被操作クライアント端末に対して複数の操作クライアント端末が存在する場合、遠隔操作情報には、被操作クライアント端末に対して現在どの操作クライアント端末が遠隔操作をしているのかが示される。本実施形態では、現在遠隔操作をしている操作クライアント端末の「ステータス」の欄に、「操作中」のマークが表示される。
【0057】
遠隔操作情報は、さらに各クライアント端末の画像情報を含んでいてもよい。画像情報とは、前述のとおり画面サイズ、色情報、解像度及び輝度等を有していて、操作クライアント端末及び被操作クライアント端末間における画像情報の決定処理において参照されてもよい。
【0058】
図8を参照して、遠隔操作情報を説明する。図は、遠隔操作情報40の概略構成を示す。遠隔操作情報40には、操作クライアント端末として第3クライアント端末B1及び第2クライアント端末A2のアカウント名が格納され、被操作クライアント端末として第5クライアント端末C2のアカウント名が格納されている。また、第3クライアント端末B1の「ステータス」の欄には「操作中」のマークが表示されている。さらに、第3クライアント端末B1、第2クライアント端末A2及び第5クライアント端末C2間における遠隔操作を識別するための識別情報として、「31」が格納されている。この遠隔操作情報40から、第5クライアント端末C2に対して二つの操作クライアント端末である第3クライアント端末B1及び第2クライアント端末A2が存在していて、現在第3クライアント端末B1が遠隔操作中であることが分かる。
なお、第2クライアント端末A2、第3クライアント端末B1及び第5クライアント端末C2には、クライアント端末毎に画像情報が対応付けられている。
遠隔操作情報40は、遠隔操作要求の情報に基づき、操作クライアント端末及び被操作クライアント端末間において、操作セッションが確立しハンドシェーク処理が行われるタイミングで被操作クライアント端末が接続された操作制御中継サーバによって作成又は更新される。
【0059】
8.中継通信システムにおける情報共有
中継通信システムにおいて、第1中継グループとしての中継グループの設定及び中継グループ内の情報共有は以下のとおり行われる。
まず、第1中継グループの初期設定として、第1中継サーバA、第2中継サーバB及び第3中継サーバCの各中継サーバは、中継サーバに接続されたクライアント端末に対してアカウントを作成し、中継サーバ情報を作成して中継サーバ情報格納部に格納する。
その後、いずれかの中継サーバより中継通信システムの第1中継グループのグループ構築が要求されれば、各中継サーバは、中継グループ情報を作成して中継グループ情報格納部に格納する。次に、中継サーバは、第1中継グループを構成する中継サーバ間で中継サーバ情報の交換し、交換した中継サーバ情報を中継サーバが保存する中継サーバ情報と合成して新たな中継サーバ情報として保存する。その結果、第1中継サーバA、第2中継サーバB及び第3中継サーバCの間で共通の中継サーバ情報が保有される。
このような中継通信システムにおいて、LAN及びクライアント端末の増減状態及び接続状態が変化した場合には、一の中継サーバは、状態変化を認識したときには、その内容に応じて、中継グループ情報及び中継サーバ情報を直ちに更新する。
【0060】
そして、一の中継サーバは、中継グループ情報及び中継サーバ情報に記載されている他の中継サーバに、中継グループ情報及び中継サーバ情報が更新されたことを直ちに通知する。また、一の中継サーバは、更新された中継サーバ情報を直ちに中継サーバに接続されたクライアント端末に通知する。
【0061】
しかし、一の中継サーバは、他の中継サーバが中継グループ情報及び中継サーバ情報に記載されているとしても、他の中継サーバが未接続状態にあると判断したときには、他の中継サーバに直ちに通知することはない。
【0062】
これにより、LAN及びクライアント端末の増減状態及び接続状態についての情報は、第1中継グループを構成する中継サーバ及び中継サーバに接続されたクライアント端末間でリアルタイムに共有される。
【0063】
9.中継通信システムにおけるデータの送受信
上記のように中継通信システムにおいてLAN及びクライアント端末の増減状態及び接続状態についての情報が共有された後に、クライアント端末を使用するユーザが他のクライアント端末を指定して通信するときには、以下のようにデータが送受信される。
【0064】
具体的にクライアント端末は、指定先のクライアント端末情報と、送信元であるクライアント端末情報と、送信したいデータとを含む送信データを、クライアント端末が接続された中継サーバに送信する。送信データを受信した中継サーバは、中継サーバ情報を参照し、指定されたクライアント端末が中継グループ内のどの中継サーバに配下にあるかを確認する。また、中継サーバは、指定されたクライアント端末を配下におく中継サーバが起動状態であるかどうか、及び指定されたクライアント端末がログオン状態であるかどうかを確認する。具体的には、中継サーバ情報の上位情報「stat」が「active」に設定されていることを確認することによって、中継サーバが起動状態にあるかどうか判断できる。また、中継サーバ情報の下位情報「site」にクライアント端末のログオン先の中継サーバの識別情報が記載されているかどうかを確認することによって、クライアント端末がログオン状態にあるかどうか判断する。
【0065】
中継サーバの起動状態及びクライアント端末のログオン状態が確認できれば、指定されたクライアント端末を配下におく中継サーバに対して受信した送信データが中継送信される。また、送信データを受信した中継サーバは、自配下にある指定されたクライアント端末に対して送信データを中継送信する。
【0066】
10.遠隔操作処理
次に、上記のように中継通信システムにおいてLAN及びクライアント端末の増減状態及び接続状態についての情報が共有された状態において、同一の中継グループに属する被操作クライアント端末に対して操作クライアント端末が遠隔操作をする処理を説明する。
【0067】
操作クライアント端末のユーザは、表示部224に表示された操作用ウインドウ中でマウス及びキーボードを用いた入力操作を行うことにより、被操作クライアント端末のマウスやキーボードによって被操作クライアント端末を操作したかのように操作できる。
【0068】
本実施形態では、以下に説明するとおり、操作制御中継サーバによる制御に基づき、一つの被操作クライアント端末に対して複数の操作クライアント端末が遠隔操作することができる。以下では、図6及び図7に示す中継サーバ情報30が第1中継グループ内で共有されている状態において、第3クライアント端末B1が第5クライアント端末C2に対して遠隔操作をし、さらに第2クライアント端末A2が遠隔操作に途中参加する処理を例に挙げて説明する。以下、被操作クライアント端末に対して先に遠隔操作を行うクライアント端末を操作クライアント端末という。この例では、第3クライアント端末B1が操作クライアント端末である。また、すでに行われている遠隔操作に対して途中参加するクライアント端末を参加操作クライアント端末という。この例では、第2クライアント端末A2が参加操作クライアント端末である。
【0069】
10−1.遠隔操作するクライアント端末の処理
まず、操作クライアント端末である第3クライアント端末B1の処理について、図9A及び図9Bを参照して説明する。図9A及び図9Bは、操作クライアント端末の操作処理を示すフローチャートである。
【0070】
第3クライアント端末B1は、被操作クライアント端末の検索を受け付ける(ステップS101)。具体的には、ユーザによる遠隔操作の指示に応じて、中継サーバ情報格納部242に格納されている中継サーバ情報30を表示部224に表示させる。ユーザは、表示部224に表示された中継サーバ情報30に示されるクライアント端末のうち、遠隔操作の対象となる被操作クライアント端末を選択する。
ユーザから操作入力部225を介して遠隔操作の対象となる第5クライアント端末C2の選択を受ければ(ステップS103でYes)、第3クライアント端末B1の操作制御部232は、第2中継サーバBへ遠隔操作要求を送信する(ステップS10)。送信された遠隔操作要求は、第2中継サーバB及び第3中継サーバCを介して第5クライアント端末C2へ送信される。
その後第2中継サーバBを介して第5クライアント端末C2からの操作許可応答を受信すれば(ステップS107でYes)、第3クライアント端末B1の操作制御部232は、第2中継サーバBとの間に第1操作セッションを確立するための制御をする(ステップS109)。
なお、その後、第2中継サーバB及び第3中継サーバC間で第2操作セッションが確立され、第3中継サーバC及び第5クライアント端末C2間で第3操作セッションが確立される。
一方、第2中継サーバB及び第3中継サーバCを介して第5クライアント端末C2から操作許可応答を受信しない場合は(ステップS107でNo)、第3クライアント端末B1の操作制御部232は遠隔操作の処理を終了する。
【0071】
操作セッションが確立した後、第3クライアント端末B1の画像設定部233は、第5クライアント端末C2の画像設定部233との間でハンドシェーク処理を実行して(ステップS111)、伝送する画像情報の設定処理を行う(ステップS113)。
続いて第3クライアント端末B1の操作制御部232は、第5クライアント端末C2から、第5クライアント端末C2の表示部224で表示されている画像データを受信する(ステップS115)。続いて第3クライアント端末B1の操作制御部232は、受信した画像データを第3クライアント端末B1の表示部224に出力して、操作ウインドウとして表示させる(ステップS117)。
【0072】
その後、操作ウインドウに対し、マウス又はキーボードを介して操作イベントが発生すれば(ステップS119でYes)、第3クライアント端末B1の操作制御部232は、発生した操作イベントを第1操作セッションを介して第2中継サーバBへと送信する(ステップS121)。なお、このとき送信された送信イベントは、第2中継サーバB及び第3中継サーバCによって中継されて第5クライアント端末C2へと送信される。
第3クライアント端末B1の操作制御部232は、ユーザから遠隔操作の終了指示を受け付ければ(ステップS123でYes)、遠隔操作の終了指示を第2中継サーバBに送信し、遠隔操作を終了するように制御する。具体的には、第3クライアント端末B1の操作制御部232は、第2中継サーバBとの間で確立した第1操作セッションを切断する(ステップS125)。また、第3クライアント端末B1の操作制御部232は、表示部224に表示している操作ウインドウを閉じる。なお、このとき、遠隔操作の終了指示は、第2中継サーバB及び第3中継サーバを介して第5クライアント端末C2に送信され、第2操作セッション及び第3操作セッションも同様に切断される。
一方、第3クライアント端末B1の操作制御部232は、ユーザから遠隔操作の終了指示を受け付けなければ(ステップS123でNo)、再びステップS115に戻って、画像データの受信処理を行う。なお、この時、画像データとして画像差分情報(後述)を受信した場合は、第3クライアント端末B1は、例えば受信済みの最新の画像データと画像差分情報との合成画像を作成して操作ウインドウの更新を行う。
【0073】
10−2.操作クライアント端末が接続された中継サーバの処理
遠隔操作をする第3クライアント端末B1が接続された第2中継サーバBの処理について説明する。
第3クライアント端末B1の操作制御部232から、遠隔操作要求を受信すれば(図9AのステップS105を参照)、第2中継サーバBの操作制御部132は、中継サーバ情報を参照して、被操作クライアント端末が接続された中継サーバCを特定した上で、遠隔操作要求を中継する。具体的に、第2中継サーバBの操作制御部132は、中継サーバ情報に基づき第5クライアント端末C2が接続された第3中継サーバを特定し、遠隔操作要求を第3中継サーバCに中継する。また、第5クライアント端末C2から操作許可応答が送信されれば、第2中継サーバBの操作制御部132は、特定した第3中継サーバCとの間に第2操作セッションを確立する。
その後、第3クライアント端末B1と第5クライアント端末C2との間で遠隔操作が行われている場合、第2中継サーバBの操作制御部132は、操作イベント及び画像データを中継する。
【0074】
10−3.遠隔操作されるクライアント端末の処理
次に、被操作クライアント端末である第5クライアント端末C2の処理について説明する。図10は、被操作クライアント端末の処理を示すフローチャートである。
第5クライアント端末C2の操作制御部232は、第2中継サーバB及び第3中継サーバCによって中継された第3クライアント端末B1からの遠隔操作要求を受信し(ステップS131)、第5クライアント端末C2が遠隔操作を受け付け可能な状態であるかどうか判断する(ステップS133)。
遠隔操作を受け付け可能であれば(ステップS133でYes)、第5クライアント端末C2の操作制御部232は、遠隔操作の許可応答を、第3中継サーバCへと送信する(ステップS135)。送信された遠隔操作の許可応答は、その後第3中継サーバC及び第2中継サーバBを介して第3クライアント端末B1へと送信される。
一方、遠隔操作を受け付け可能な状態ではないと判断すれば(ステップS133でNo)、第5クライアント端末C2の操作制御部232は、エラー応答を第3中継サーバC及び第2中継サーバBを介して第3クライアント端末B1へと送信し(ステップS137)、処理を終了する。
【0075】
第5クライアント端末C2の操作制御部232は、第3中継サーバCによる制御のもと、第3中継サーバCとの間に第3操作セッションを確立する制御をする(ステップS139)。
第3操作セッションが確立されれば、次に第5クライアント端末C2の操作制御部232は、第3クライアント端末B1との間でハンドシェーク処理を行い(ステップS141)、伝送する画像情報の設定処理を行う(ステップS143)。
画像情報が設定された後、第5クライアント端末C2の操作制御部232は、第3中継サーバC及び第2中継サーバBを介して、第5クライアント端末C2の表示部224に表示されている被操作ウインドウの画像データを設定された画像情報に基づいて第3クライアント端末B1へと送信する(ステップS145)。
【0076】
その後第3クライアント端末B1から操作イベントを受信すれば(ステップS147)、第5クライアント端末C2の操作制御部232は、操作イベントに応じたシステム処理を実行する(ステップS149)。次に、第5クライアント端末C2の操作制御部232は、第3クライアント端末B1に対して画像データとして画像差分情報を送信する(ステップS151)。例えば、第5クライアント端末C2と第3クライアント端末B1との間ですでに共有されている画像データの一部のみが操作イベントによって更新される場合がある。この場合は、第5クライアント端末C2の操作制御部232は、画像データとして差分対象となる画像の描画位置差分等を含む画像差分情報のみを第3クライアント端末B1に送信する。このように操作イベントに応じて被操作ウインドウにおける画像データの一部を更新するシステム処理を行った場合には画像差分情報のみが送信されるので、第5クライアント端末C2から第3クライアント端末B1に転送されるデータの量を削減できる。
【0077】
続いて、時計情報の更新等、被操作ウインドウ側で自発的に画面更新があった場合は(ステップS153でYes)、ステップS151に戻って、第5クライアント端末C2の操作制御部232は、第3クライアント端末B1に対して画像差分情報を送信する。
その後、被操作ウインドウにおいて画面の更新がなく(ステップS153でNo)、第3クライアント端末B1より遠隔操作の終了の指示を受信すれば(ステップS155でYes)、第5クライアント端末C2の操作制御部232は、遠隔操作の処理を終了する。第3クライアント端末B1より遠隔操作の終了の指示を受信していない場合は(ステップS155でNo)、第5クライアント端末C2による処理は再びステップS147へと戻る。
【0078】
10−4.被操作クライアント端末が接続された中継サーバの処理
被操作クライアント端末である第5クライアント端末C2が接続された第3中継サーバCの処理について説明する。
まず、第3中継サーバCの操作制御部132は、第2中継サーバBから、遠隔操作要求を受信すれば、遠隔操作要求を被操作クライアント端末である第5クライアント端末C2に中継する。また、第3中継サーバCの操作制御部132は、遠隔操作の許可応答を受信すれば、第5クライアント端末C2との間に第3操作セッションを確立する。
さらに、第3クライアント端末B1と第5クライアント端末C2との間で遠隔操作が行われている場合、第3中継サーバCは、操作イベント及び画像データを中継する。また、第3中継サーバCは、遠隔操作情報を作成及び更新して第3中継サーバCの遠隔操作情報格納部144に格納し、さらに遠隔操作情報を第1中継グループ内の他の中継サーバ及びクライアント端末と共有する処理をする。
具体的には、第3中継サーバCは、第3クライアント端末B1及び第5クライアント端末C2間において遠隔操作要求に許可応答を返した時に、第1〜3操作セッションが確立されハンドシェーク処理にて画像情報が交換されているタイミングで遠隔操作の情報を記録し遠隔操作情報40(図8参照)を作成する。作成された遠隔操作情報40は、中継グループ情報及び中継サーバ情報と同様に第1中継グループ内で共有される。
【0079】
11.遠隔操作への途中参加
次に上記のように同じ中継グループに属するクライアント端末に対して他のクライアント端末が遠隔操作をしている状態において、同じ中継グループに属するさらに別のクライアント端末が遠隔操作に参加をする処理について説明する。
以下、図11に示すように、第3クライアント端末B1が第5クライアント端末C2を第1〜3操作セッションを介して遠隔操作している場合に、参加操作クライアント端末である第2クライアント端末A2が遠隔操作に参加する説明をする。図11は、確立した第1〜3操作セッションの一例を示す。図11に示すとおり、第3クライアント端末B1と第5クライアント端末C2との間には、図9A、図9B及び図10による処理によって第1〜3操作セッション401A〜401Cが確立されている。
【0080】
11−1.参加操作クライアント端末の処理
まず、参加操作クライアント端末の第2クライアント端末A2の処理について、さらに図12A〜図12Cを参照して説明する。図12A〜図12Cは、参加操作クライアント端末の操作処理を示すフローチャートである。
【0081】
まず、第2クライアント端末A2の操作制御部232は、被操作クライアント端末の検索を受け付ける(ステップS161)。具体的には、ユーザによる遠隔操作の指示に応じて、中継サーバ情報格納部242に格納されている中継サーバ情報30を表示部224に表示させる。又は、第2クライアント端末A2の操作制御部232は、遠隔操作情報格納部244に格納されている遠隔操作情報40がある場合は、遠隔操作情報40を表示部224に表示させる。ユーザは、表示部224に表示された中継サーバ情報30又は遠隔操作情報40に示されるクライアント端末のうち、遠隔操作の対象となる被操作クライアント端末を選択する。
【0082】
ユーザから操作入力部225を介して遠隔操作の対象となる第5クライアント端末C2の選択を受ける(ステップS163)。
【0083】
その後第2クライアント端末A2の操作制御部232は、被操作クライアント端末である第5クライアント端末C2が遠隔操作されているかどうかを確認する(ステップS165)。例えば、第2クライアント端末A2の操作制御部232は、第1中継サーバAによって第5クライアント端末C2が接続されていると特定された第3中継サーバCに問い合わせて、第5クライアント端末C2が遠隔操作されているかどうか確認する。
【0084】
ここで、第5クライアント端末C2が遠隔操作されていない場合は(ステップS165でNo)、第2クライアント端末A2の操作制御部232は、操作クライアント端末としての制御を行う。すなわち、図9A及び図9Bにおける操作クライアント端末である第3クライアント端末B1と同様の処理を行う。具体的には、第2クライアント端末A2の操作制御部232は、第5クライアント端末C2に対して操作要求を送信し(ステップS167)、許可応答を受信すれば(ステップS171でYes)、第1中継サーバAとの間に操作セッションを確立する(ステップ175)。その後第2クライアント端末A2の操作制御部232は、第1中継サーバAとの間に確立した操作セッションと、第1中継サーバAと第2中継サーバBとの間に確立された操作セッション及び第3中継サーバCと第5クライアント端末C2との間に確立された操作セッションを介して第5クライアント端末C2から画像データを受信し(ステップS177)、受信した画像データを出力して表示部224に表示する(ステップS179)。さらに第2クライアント端末A2の操作制御部232は、第5クライアント端末C2に対する唯一の操作クライアント端末であるため、第5クライアント端末C2に対する排他的操作権を有している(ステップS181でYes)。よって、その後操作イベントの発生に応じて、操作セッションを介して操作イベントを第5クライアント端末C2へと送信し(ステップS189、ステップS191)、遠隔操作を行う。
【0085】
一方、第5クライアント端末C2が遠隔操作されている場合は(ステップS165でYes)、第2クライアント端末A2の操作制御部232は、第1中継サーバAを介してステップS165で問い合わせた第3中継サーバCに対して送信する(ステップS169)。操作参加要求とは、すでに実行されている遠隔操作に参加するための要求である。
第2クライアント端末A2の操作制御部232は、第3中継サーバCから遠隔操作の参加に関する許可応答を受信すれば(ステップS171でYes)、第1中継サーバAとの間に第1参加操作セッション501Aを確立する処理を行う。このとき、第1中継サーバAと第3中継サーバCとの間には、第2参加操作セッション501Bが確立される。
一方、第3中継サーバCから許可応答を受信しない場合は(ステップS171でNo)、第2クライアント端末A2の操作制御部232はエラー処理を実行し(ステップS173)、参加操作の処理を終了する。
【0086】
第1〜2参加操作セッション501A〜501Bが確立された後、第2クライアント端末A2の操作制御部232は、第1中継サーバAを介して第3中継サーバCから画像データを受信する(ステップS177)。続いて第2クライアント端末A2の操作制御部232は、受信した画像データを第2クライアント端末A2の表示部224に出力して、操作ウインドウとして表示させる(ステップS179)。
なお、ここで第2クライアント端末A2の画像設定部233は、第3クライアント端末B1及び第5クライアント端末C2の画像設定部233との間でハンドシェーク処理を実行して、画像情報の設定処理を行ってもよい。
【0087】
その後、第2クライアント端末A2の操作制御部232は、第2クライアント端末A2に第5クライアント端末C2に対する排他的操作権があるかどうかを確認する(ステップS181)。具体的には、第2クライアント端末A2の操作制御部232は、遠隔操作情報40を参照して、どの操作クライアント端末に「操作中」のマークが表されているかを確認する。この例では、遠隔操作情報40では第3クライアント端末B1に「操作中」のマークが表されているため、第2クライアント端末A2の操作制御部232は、第2クライアント端末A2が排他的操作権を有していないことを確認する(ステップS181でNo)。
【0088】
続いて第2クライアント端末A2の操作制御部232は、ユーザから第5クライアント端末C2の排他的操作権を取得する指示があるかどうかを判断する(ステップS183)。例えば第2クライアント端末A2の操作制御部232は、表示部224に遠隔操作情報40を表示し、第2クライアント端末A2が第5クライアント端末C2の排他的操作権を有していないこと提示してユーザから排他的操作権の取得に関する指示を受け付ける。
ユーザから第5クライアント端末C2の排他的操作権の取得指示があれば(ステップS183でYes)、第2クライアント端末A2の操作制御部232は、第3中継サーバCに対して、第5クライアント端末C2の排他的操作権の取得要求を送信する(ステップS185)。
【0089】
第3中継サーバCから第5クライアント端末C2の排他的操作権の取得の許可応答を受信した場合(ステップS187でYes)、又はステップS181で排他的操作権があると確認した場合は、第2クライアント端末A2の操作制御部232は、ステップS189へと移行する。その後、第2クライアント端末A2の操作制御部232は、操作イベントが発生すれば(ステップS189でYes)、操作イベントを第1中継サーバAを介して第3中継サーバCに対して送信する(ステップS191)。続いて、第2クライアント端末A2の操作制御部232は、ユーザから遠隔操作の終了指示を受け付ければ(ステップS193でYes)、第5クライアント端末C2との間で確立した操作セッションを切断する制御をする(ステップS195)。また、このとき第2クライアント端末A2の操作制御部232は、表示部224に表示している操作ウインドウを閉じる。
【0090】
一方、第2クライアント端末A2の操作制御部232は、ユーザから遠隔操作の終了指示を受け付けなければ(ステップS193でNo)、再びステップS177に戻って、画像データの受信処理を行う。なお、このとき、画像データとして画像差分情報(後述)を受信した場合は、第2クライアント端末A2は、例えば受信済みの最新の画像データと画像差分情報との合成画像を作成して操作ウインドウの更新を行う。
【0091】
ステップS183にてユーザから排他的操作権の取得指示がなかった場合(ステップS183でNo)、又はステップS187にて第3中継サーバCから排他的操作権の取得の許可応答を受信しない場合は(ステップS187でNo)、第2クライアント端末A2の操作制御部232は、遠隔操作の監視を行う。具体的には、第2クライアント端末A2の操作制御部232は、第3クライアント端末B1による第5クライアント端末C2の遠隔操作に関する画像データを受信し(ステップS197)、受信した画像データを表示部224に出力して監視ウインドウとして表示させる(ステップS199)。
その後、ユーザより監視の終了指示を受け付ければ(ステップS201でYes)、第2クライアント端末A2の操作制御部232は、第1中継サーバAとの間に確立された参加第1参加操作セッション501Aを切断する(ステップS195)。このとき、第2参加操作セッション501Bも切断される(ステップS195)。
【0092】
一方、ユーザより監視の終了指示を受け付けてはいないが(ステップS201でNo)第3中継サーバCより第3クライアント端末B1による遠隔操作の終了コマンドを受け付ければ(ステップS203でYes)、第2クライアント端末A2の操作制御部232は、再びステップ181に戻る。すなわち、第3クライアント端末B1による遠隔操作が終了すれば、第2クライアント端末A2が第5クライアント端末C2の遠隔操作の排他的操作権を取得できる。従って、その後第2クライアント端末A2の操作制御部232は、第2クライアント端末A2に排他的操作権があることを確認し(ステップS181でYes)、ステップS189へと移行する。
【0093】
一方、第3中継サーバCより遠隔操作の終了コマンドを受け付けていない場合は(ステップS203でNo)、第2クライアント端末A2の操作制御部233による処理は、ステップS197へと再び戻る。
【0094】
11−2.操作制御中継サーバの処理
次に、被操作クライアント端末が接続された操作制御中継サーバが操作参加要求を受信した場合の処理について、さらに図13A〜図13Cを参照して説明する。図13A〜図13Cは、操作制御中継サーバの操作処理を示すフローチャートである。この例では、操作制御中継サーバは、第3中継サーバCである。
【0095】
第3中継サーバCの操作制御部132は、まず参加操作クライアント端末から操作参加要求を受信したかどうかを判断する(ステップS211)。ここでは、第2クライアント端末A2より送信され、第1中継サーバAによって中継された操作参加要求を受信する。ここで受信した参加操作要求は、第3クライアント端末B1と第5クライアント端末C2との間で実行されている遠隔操作に対する参加操作要求である。
【0096】
第3中継サーバCの操作制御部132は、要求された操作参加を許可できる場合は(ステップS213でYes)、第1中継サーバAを介して第2クライアント端末A2に対して許可応答を送信する(ステップS215)。ここで第3中継サーバCの操作制御部132は、要求された操作参加を許可できない場合は(ステップS213でNo)、第1中継サーバAを介して第2クライアント端末A2に対してエラー応答を返信して(ステップS217)、処理を終了する。
【0097】
許可応答を送信した場合、次に第3中継サーバCの操作制御部132は、第2クライアント端末A2が接続された第1中継サーバAとの間で第2参加操作セッション501Bを確立する制御をする(ステップS219)。このとき、第2クライアント端末A2及び第1中継サーバAとの間において第1参加操作セッション501Aが確立される。なお、本実施形態では、このとき第3中継サーバCの操作制御部133は、遠隔操作情報格納部144に格納された遠隔操作情報40に操作クライアント端末として第2クライアント端末A2のアカウント名を追加して遠隔操作情報40を更新する。その後更新された遠隔操作情報40は、第1中継グループ内の中継サーバ及びクライアント端末間で共有される。
【0098】
次に第3中継サーバCの操作制御部132は、第5クライアント端末C2に対して、画面データの新規取得の指示を送信する(ステップS221)。前述のとおり、第5クライアント端末C2と第3クライアント端末B1との間ですでに画像データが共有されていて、共有された画像データの一部のみが操作イベントに応じて更新される場合がある。この場合は、画像データとして差分対象となる画像の描画位置差分等を含む画像差分情報のみが第5クライアント端末C2から第3中継サーバC及び第2中継サーバBによって中継されて第3クライアント端末B1へと送信される。しかし、遠隔操作に参加する第2クライアント端末A2は、第5クライアント端末C2と第3クライアント端末B1とが共有する画像データを有していない。従って、第2クライアント端末A2の表示部224に操作ウインドウを表示するためには、画像差分情報の受信だけでは不十分である。そこで、第3中継サーバCの操作制御部132は、第5クライアント端末C2に対して、被操作ウインドウに表示されている全ての新規画像データの新規取得の指示を送信する。
【0099】
第5クライアント端末C2から新規画面データを取得した後、第3中継サーバCの操作制御部132は、新規取得した画像データを第1〜2参加操作セッション501A〜501Bを介して第2クライアント端末A2へ送信する(ステップS223)。なお、続いて第5クライアント端末C2から画像差分情報等の画像データを受信すれば、第3中継サーバCの操作制御部132は、受信した画像データのコピーを第1〜2参加操作セッション501A〜501Bを介して第2クライアント端末A2へと送信する。
【0100】
その後、第3中継サーバCの操作制御部132は、第2クライアント端末A2から排他的操作権の取得要求を受信したかどうかを判断する(ステップS225)。排他的操作権の取得要求を受信した場合は(ステップS225でYes)、第3中継サーバCの操作制御部132は、操作中の操作クライアント端末に対して排他的操作権の取得要求を送信する(ステップS227)。この例では、第3中継サーバCの操作制御部132は、第5クライアント端末C2を現在操作している第3クライアント端末B1に対して、排他的操作権の取得要求を送信する。第3クライアント端末B1から排他的操作権の許可応答を受信すれば(ステップS229でYes)、第3中継サーバCの操作制御部132は、排他的操作権の要求元である第2クライアント端末A2へ許可応答を送信する(ステップS231)。続いて第3中継サーバCの操作制御部132は、排他的操作権を要求した参加操作クライアント端末に排他的操作権を変更する(ステップS233)。この例では、第3中継サーバCの操作制御部132は、第5クライアント端末C2に対する排他的操作権を第3クライアント端末B1から第2クライアント端末A2へと変更する。具体的に、第3中継サーバCの操作制御部132は、操作イベントを第1〜2参加操作セッション501A〜501Bから受け入れるように第3操作セッション401Cを切り替える制御をする。また、このとき第3中継サーバCの操作制御部133は、遠隔操作情報格納部144に格納された遠隔操作情報40において、「ステータス」を更新する。具体的には、第2クライアント端末A2の「ステータス」を「操作中」に更新し、第3クライアント端末B1の「ステータス」をブランクに変更する。更新された遠隔操作情報40は、第1中継グループ内の中継サーバ及びクライアント端末間で共有される。
【0101】
一方、第3クライアント端末B1から許可応答を受信しない場合は(ステップS229でNo)、第3中継サーバCの操作制御部132は、排他的操作権の要求元にエラー応答を返信する(ステップS235)。この例では、第3中継サーバCの操作制御部132は、第2クライアント端末A2にエラー応答を返信する。
【0102】
第2クライアント端末A2にエラー応答を返信した後、第3中継サーバCの操作制御部132は、次に第3クライアント端末B1から遠隔操作の終了指示を受信したかどうかを判断する(ステップS237)。第2クライアント端末A2から排他的操作権の取得要求を受信してない場合(ステップS225でNo)も同様に、第3中継サーバCの操作制御部132は、次に第3クライアント端末B1から遠隔操作の終了指示を受信するかどうかを判断する。
【0103】
遠隔操作の終了指示を受信すれば(ステップS237でYes)、第3中継サーバCの操作制御部132は、他に操作クライアント端末が存在するかどうか判断する(ステップS239)。ここで、仮に他に操作クライアント端末が存在しないとすれば(ステップS239でNo)、第3中継サーバCの操作制御部132は、第3クライアント端末B1と第5クライアント端末C2との間の第1〜第3操作セッション501A〜301Cを切断する制御をする(ステップS241)。
【0104】
一方、本実施形態では、操作クライアント端末として第2クライアント端末A2が存在するので(ステップS239でYes)、第3中継サーバCの操作制御部132は、第2クライアント端末A2に対して遠隔操作終了コマンドを送信し(ステップS243)、ステップS125に再び戻る。すなわち、遠隔操作終了コマンドを送信することにより第2クライアント端末A2に対して第3クライアント端末B1による遠隔操作を終了したことを通知し、第2クライアント端末A2から第5クライアント端末C2の排他的操作権の取得要求を受信するかどうかを判断する。
【0105】
12.本実施形態の効果
本実施形態における中継通信システムによると、第1中継グループ内で一台の被操作クライアント端末に対して複数のクライアント端末が遠隔操作できる。
【0106】
13.他の実施形態
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
【0107】
(a)上記の実施形態では、操作制御中継サーバは、被操作クライアント端末が接続された中継サーバである例を挙げて説明した。しかし、操作制御中継サーバは、操作クライアント端末が接続された中継サーバであってもよい。
【0108】
(b)上記の例では、遠隔操作情報40は、操作クライアント端末及び被操作クライアント端末間において操作セッションが確立しハンドシェーク処理が行われるタイミングで被操作クライアント端末が接続された中継サーバによって作成される例を挙げた。しかし、遠隔操作情報40が作成されるタイミングは上記の例に限定されず、例えば操作イベントが発生したタイミングであってもよい。さらに遠隔操作情報40は、被操作クライアント端末が接続された中継サーバでなく、操作クライアント端末、被操作クライアント端末又は操作クライアント端末が接続された中継サーバによって作成されてもよい。
【0109】
(c)上記の実施形態では、中継グループ情報及び中継サーバ情報は、全ての中継サーバ及びクライアント端末間で常時最新のものが共有されるようになっていた。しかし、本発明はそのような実施形態に限定されない。例えば、中継サーバの1つをセンター端末として、センター端末が中継サーバ同士のアクセス権を管理するようにしてもよい。
(d)上記の実施形態では、作成及び更新された遠隔操作情報40が中継グループ内の中継サーバ及びクライアント端末間で共有される例を挙げた。
しかし、遠隔操作情報40は、操作クライアント端末、被操作クライアント端末、操作クライアント端末が接続された中継サーバ及び被操作クライアント端末が接続された中継サーバのみが有し、それぞれの遠隔操作情報格納部114、224に格納されていてもよい。そして、参加操作クライアント端末は、中継サーバ情報30を参照して上記いずれかの端末に遠隔操作が行われているかどうかを問い合わせることにより、参加する遠隔操作を決定してもよい。
【0110】
(e)上記の例では、遠隔操作情報40が一つの遠隔操作「31」に関する情報を有する例を挙げた。しかし、同一中継グループ内で複数の遠隔操作が行われていてもよく、複数の遠隔操作が行われている場合は、遠隔操作情報40は複数の遠隔操作に関する情報を有していてもよい。
【0111】
(f)操作セッション又は参加操作セッションが確立されている各中継サーバは、遠隔操作情報格納部に格納された遠隔操作情報に、さらにコネクション情報を関連付けて格納していてもよい。コネクション情報とは、中継サーバに対して確立された操作セッション又は参加操作セッションに関する情報である。
例えば、上記の実施形態において、操作制御中継サーバである第3中継サーバCは、第3中継サーバCに対して第2操作セッション401B、第3操作セッション401C及び第2参加操作セッション501Bが確立されているセッション情報を有していてもよい。
このように、第3中継サーバCは、遠隔操作情報に関連して第3中継サーバCに対して確立されているコネクション情報を格納しているので、第3中継サーバCは、第3中継サーバCが複数の遠隔操作に関する監視制御中継サーバであっても、第3中継サーバCに確立された操作セッションをより適切に識別して操作イベント及び画像データ等の中継制御を行うことができる。
なお、操作セッション又は参加操作セッションが確立されている各クライアント端末が、遠隔操作情報格納部に格納された遠隔操作情報に対して、さらにクライアント端末に対して確立された操作セッションに関するコネクション情報を関連付けて格納していてもよい。例えば第5クライアント端末C2は、第5クライアント端末C2に対して第3操作セッション401Cが確立されているコネクション情報を遠隔操作情報に関連付けて格納していてもよい。
【0112】
(g)前記実施形態では、参加操作クライアント端末は第2クライアント端末A1であったが、第6クライアント端末B2(図示せず)が第2遠隔操作を要求してもよい。その場合、第2中継サーバBは、遠隔操作情報を参照した参加操作クライアント端末である第6クライアント端末B2より遠隔操作に対する操作参加要求を受け付ければ、操作参加要求を第3中継サーバCへと中継し、第6クライアント端末B2との間に第1参加操作セッションを確立し、第3中継サーバCとの間に第2参加操作セッションを確立し、第2中継サーバBの操作制御部132は、第5クライアント端末C2に対する遠隔操作の排他的操作権を調整し、第4クライアント端末B1及び第6クライアント端末B2のうち調整後の遠隔操作の排他的操作権を有するクライアント端末と第5クライアント端末C2との間で行われる遠隔操作の操作データを中継する。
【0113】
(h)他の実施形態として、図1の中継通信システムにおいて、第3中継サーバCに第4クライアント端末C1、第5クライアント端末C2以外に、さらに第6クライアント端末C3(図示せず)が配置されたものを説明する。
第3中継サーバCは、WAN4を介して第2中継サーバB及び第1中継サーバAと接続可能であり、LANを介して第4クライアント端末C1、第5クライアント端末C2及び第6クライアント端末C3と接続可能である。操作制御部132は、第1操作セッション確立部として、第4クライアント端末C1又は第2中継サーバBとの間に第1操作セッションを確立する。操作制御部132は、第2操作セッション確立部は、第5クライアント端末C2又は第1中継サーバAとの間に第2操作セッションを確立する。操作制御部132は、被操作セッション確立部として、第6クライアント端末C3との間に被操作セッションを確立する。操作制御部132は、さらに、第1操作セッション又は第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、被操作セッションへ中継し、被操作セッションから受信した画像データを第1操作セッション及び第2操作セッションへ中継する。操作制御部132は、操作権限変更部として、第1操作セッション又は第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する。
以上の実施形態では、互いに通信可能な複数の中継サーバ及び複数のクライアント端末を有する中継通信システムにおいて、遠隔操作する端末及び遠隔操作される端末以外の他の端末が遠隔操作の内容を取得することができる。
【0114】
(i)他の実施形態を、図1の中継通信システムを用いて説明する。
第3中継サーバCは、WAN4を介して第2中継サーバBと接続可能であり、LAN19、21,23を介して第4クライアント端末C1及び第5クライアント端末C2と接続可能である。操作制御部132は、第1操作セッション確立部として、第4クライアント端末C1との間に第1操作セッションを確立する。操作制御部132は、第2操作セッション確立部として、第5クライアント端末C2との間に第2操作セッションを確立する。操作制御部132は、被操作セッション確立部として、第2中継サーバBとの間に被操作セッションを確立する。操作制御部132は、第1操作セッション又は第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、被操作セッションへ中継し、被操作セッションから受信した画像データを第1操作セッション及び第2操作セッションへ中継する。操作制御部132は、操作権限変更部として、第1操作セッション又は第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する。
以上の実施形態では、互いに通信可能な複数の中継サーバ及び複数のクライアント端末を有する中継通信システムにおいて、遠隔操作する端末及び遠隔操作される端末以外の他の端末が遠隔操作の内容を取得することができる。
【産業上の利用可能性】
【0115】
本発明は、互いに通信可能な複数の中継サーバと、複数のクライアント端末と、クライアント端末を中継サーバに接続するLANとを有する中継通信システム、及びそれに用いられる中継サーバに広く適用できる。
【符号の説明】
【0116】
1 第1LAN
2 第2LAN
3 第3LAN
4 WAN
30 中継サーバ情報
40 遠隔操作情報
A 第1中継サーバ
B 第2中継サーバ
C 第3中継サーバ
A1 第1クライアント端末
A2 第2クライアント端末
B1 第3クライアント端末
C1 第4クライアント端末
C2 第5クライアント端末
【特許請求の範囲】
【請求項1】
第1ネットワークと、
第2ネットワークと、
前記第1ネットワークに接続される第1中継サーバと、
前記第2ネットワークに接続され、第3ネットワークを介して前記第1中継サーバと通信可能な第2中継サーバと、
前記第1中継サーバと前記第1ネットワークを介して接続される第1クライアント端末と、
前記第2中継サーバと前記第2ネットワークを介して接続される第2クライアント端末及び第3クライアント端末と、
を備え、
前記第1中継サーバ及び前記第2中継サーバは、中継サーバ自身の起動情報と中継サーバ自身に接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を互いに共有する情報共有部を有し、
第2中継サーバは、
遠隔操作を行う操作クライアント端末である前記第2クライアント端末から、前記中継サーバ情報を参照して被操作クライアント端末として選択された前記第1クライアント端末を遠隔操作する要求であって、前記第2クライアント端末及び前記第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、前記第1クライアント端末が接続されている前記第1中継サーバを特定し、前記第1中継サーバへ前記遠隔操作要求を中継し、前記第2クライアント端末との間に第1操作セッションを確立し、前記第1中継サーバとの間に中継サーバ間セッションを確立し、前記遠隔操作要求に基づいて行われる前記第2クライアント端末による前記第1クライアント端末への遠隔操作の操作データとしての操作イベント及び画像データを前記第1操作セッション及び前記中継サーバ間セッションの間で中継する第2操作制御部を有し、
前記第1中継サーバは、
前記第2中継サーバから前記遠隔操作要求を受信すれば、前記第1クライアント端末に前記遠隔操作要求を中継し、前記第1クライアント端末との間に第2操作セッションを確立し、前記遠隔操作要求に基づいて行われる前記遠隔操作の操作データを前記中継サーバ間セッション及び前記第2操作セッションの間で中継し、前記第1クライアント端末及び前記第2クライアント端末の情報を含む遠隔操作情報を作成する第1操作制御部を有し、
前記第2操作制御部は、前記遠隔操作情報を参照した参加操作クライアント端末である前記第3クライアント端末より前記遠隔操作に対する操作参加要求を受け付ければ、前記第3クライアント端末との間に第1参加操作セッションを確立し、前記第2クライアント端末及び前記第3クライアント端末のうち、操作権を有するいずれかのクライアント端末から受信した操作イベントを前記第1中継サーバへ中継し、前記第1中継サーバから受信した画像データを前記第1クライアント端末及び前記第3クライアント端末へ中継する、
中継通信システム。
【請求項2】
前記第2操作制御部は、前記排他的操作権を調整する際、前記第3クライアント端末から受信した前記遠隔操作に対する排他的操作権の取得要求を前記第2クライアント端末へ送信し、前記第2クライアント端末から前記排他的操作権の取得要求に対する許可応答を受信する、請求項1に記載の中継通信システム。
【請求項3】
第2ネットワークに接続される第2中継サーバと通信可能であり、第1ネットワークに接続され、前記第1ネットワークを介して第1クライアント端末と接続される第1中継サーバとして機能する中継サーバであって、
前記中継サーバの起動情報と前記中継サーバに接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を前記第2中継サーバと互いに共有する情報共有部と、
遠隔操作を行う操作クライアント端末である前記第2中継サーバに接続された第2クライアント端末から、前記中継サーバ情報を参照して選択された前記第1クライアント端末を遠隔操作する要求であって、前記第2クライアント端末及び前記第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、前記第1クライアント端末に前記遠隔操作要求を中継し、前記第2中継サーバとの間に中継サーバ間セッションを確立し、前記第1クライアント端末との間に第2操作セッションを確立し、前記中継サーバ間セッションと、前記第2操作セッションと、前記第2クライアント端末と前記第2中継サーバとの間に確立された第1操作セッションとを介して前記遠隔操作要求に基づいて行われる前記第2クライアント端末による前記第1クライアント端末への遠隔操作の操作データとしての操作イベント及び画像データを前記中継サーバ間セッション及び前記第3操作セッションの間で中継し、前記第1クライアント端末及び前記第2クライアント端末の情報を含む遠隔操作情報を作成する操作制御部と、を備え、
前記操作制御部は、前記遠隔操作情報を参照した参加操作クライアント端末である第3クライアント端末より前記遠隔操作に対する操作参加要求を受け付ければ、前記第3クライアント端末が接続された前記第2中継サーバとの間に参加操作セッションをさらに確立し、前記第2中継サーバによって調整された前記第1クライアント端末に対する前記遠隔操作の排他的操作権に基づいて、前記第2クライアント端末及び前記第3クライアント端末のうち調整後の前記遠隔操作の排他的操作権を有するクライアント端末と前記第1クライアント端末との間で行われる前記遠隔操作の操作データを中継し、
前記操作イベントは、前記排他的操作権を有するクライアント端末から供給される、中継サーバ。
【請求項4】
前記第1操作制御部は、前記排他的操作権を調整する際、前記第3クライアント端末から受信した前記遠隔操作に対する排他的操作権の取得要求を前記第2クライアント端末へ送信し、前記第2クライアント端末から前記排他的操作権の取得要求に対する許可応答を受信する、請求項3に記載の中継サーバ。
【請求項5】
第1ネットワークと、
第2ネットワークと、
第3ネットワークと、
前記第1ネットワークに接続される第1中継サーバと、
前記第2ネットワークに接続される、第3ネットワークを介して前記第1中継サーバと通信可能な第2中継サーバと、
前記3ネットワークに接続され、前記第1中継サーバ及び前記第2中継サーバと相互に通信可能な第3中継サーバと、
前記第1中継サーバと前記第1ネットワークを介して接続される第1クライアント端末と、
前記第2中継サーバと前記第2ネットワークを介して接続される第2クライアント端末と、
前記第3中継サーバと前記第3ネットワークを介して接続される第5クライアント端末と、
を備え、
前記第1中継サーバ、前記第2中継サーバ及び前記第3中継サーバは、中継サーバ自身の起動情報と中継サーバ自身に接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を互いに共有する情報共有部を有し、
第2中継サーバは、
遠隔操作を行う操作クライアント端末である前記第2クライアント端末から、前記中継サーバ情報を参照して被操作クライアント端末として選択された前記第1クライアント端末を遠隔操作する要求であって、前記第2クライアント端末及び前記第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、前記第1クライアント端末が接続されている前記第1中継サーバを特定し、前記第1中継サーバへ前記遠隔操作要求を中継し、前記第2クライアント端末との間に第1操作セッションを確立し、前記第1中継サーバとの間に中継サーバ間セッションを確立し、前記遠隔操作要求に基づいて行われる前記第2クライアント端末による前記第1クライアント端末への遠隔操作の操作データとしての操作イベント及び画像データを前記第1操作セッション及び前記中継サーバ間セッションの間で中継する第2操作制御部を有し、
前記第1中継サーバは、
前記第2中継サーバから前記遠隔操作要求を受信すれば、前記第1クライアント端末に前記遠隔操作要求を中継し、前記第1クライアント端末との間に第2操作セッションを確立し、前記遠隔操作要求に基づいて行われる前記遠隔操作の操作データを前記中継サーバ間セッション及び前記第2操作セッションの間で中継し、前記第1クライアント端末及び前記第2クライアント端末の情報を含む遠隔操作情報を作成する第1操作制御部を有し、
前記第3中継サーバは、操作参加要求を送受信可能な第3操作制御部を有しており、
前記第3操作制御部は、前記遠隔操作情報を参照した参加操作クライアント端末である前記第5クライアント端末より前記遠隔操作に対する操作参加要求を受け付ければ、前記操作参加要求を前記第1中継サーバへと中継し、前記第5クライアント端末との間に第1参加操作セッションを確立し、前記1中継サーバとの間で第2参加セッションを確立し、前記第1操作制御部は、前記第2クライアント端末及び前記第5クライアント端末のうち、操作権を有するいずれかのクライアント端末から受信した操作イベントを前記第1クライアント端末へ中継し、前記第1クライアント端末から受信した画像データを前記第2クライアント端末及び前記第5クライアント端末へ中継する、
中継通信システム。
【請求項6】
WANを介して第2中継サーバ及び第3中継サーバと接続可能であり、LANを介して第1クライアント端末、第2クライアント端末及び第3クライアント端末と接続可能な第1中継サーバであって、
前記第1クライアント端末又は前記第2中継サーバとの間に第1操作セッションを確立する第1操作セッション確立部と、
前記第2クライアント端末又は前記第3中継サーバとの間に第2操作セッションを確立する第2操作セッション確立部と、
前記第3クライアント端末との間に被操作セッションを確立する被操作セッション確立部と、
前記第1操作セッション又は前記第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、前記被操作セッションへ中継し、前記被操作セッションから受信した画像データを前記第1操作セッション及び前記第2操作セッションへ中継する操作制御部と、
前記第1操作セッション又は前記第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する操作権限変更部と、
を備える、第1中継サーバ。
【請求項7】
WANを介して第2中継サーバと接続可能であり、LANを介して第1クライアント端末及び第2クライアント端末と接続可能な第1中継サーバであって、
前記第1クライアント端末との間に第1操作セッションを確立する第1操作セッション確立部と、
前記第2クライアント端末との間に第2操作セッションを確立する第2操作セッション確立部と、
前記第2中継サーバとの間に被操作セッションを確立する被操作セッション確立部と、
前記第1操作セッション又は前記第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、前記被操作セッションへ中継し、前記被操作セッションから受信した画像データを前記第1操作セッション及び前記第2操作セッションへ中継する操作制御部と、
前記第1操作セッション又は前記第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する操作権限変更部と、
を備える、第1中継サーバ。
【請求項1】
第1ネットワークと、
第2ネットワークと、
前記第1ネットワークに接続される第1中継サーバと、
前記第2ネットワークに接続され、第3ネットワークを介して前記第1中継サーバと通信可能な第2中継サーバと、
前記第1中継サーバと前記第1ネットワークを介して接続される第1クライアント端末と、
前記第2中継サーバと前記第2ネットワークを介して接続される第2クライアント端末及び第3クライアント端末と、
を備え、
前記第1中継サーバ及び前記第2中継サーバは、中継サーバ自身の起動情報と中継サーバ自身に接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を互いに共有する情報共有部を有し、
第2中継サーバは、
遠隔操作を行う操作クライアント端末である前記第2クライアント端末から、前記中継サーバ情報を参照して被操作クライアント端末として選択された前記第1クライアント端末を遠隔操作する要求であって、前記第2クライアント端末及び前記第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、前記第1クライアント端末が接続されている前記第1中継サーバを特定し、前記第1中継サーバへ前記遠隔操作要求を中継し、前記第2クライアント端末との間に第1操作セッションを確立し、前記第1中継サーバとの間に中継サーバ間セッションを確立し、前記遠隔操作要求に基づいて行われる前記第2クライアント端末による前記第1クライアント端末への遠隔操作の操作データとしての操作イベント及び画像データを前記第1操作セッション及び前記中継サーバ間セッションの間で中継する第2操作制御部を有し、
前記第1中継サーバは、
前記第2中継サーバから前記遠隔操作要求を受信すれば、前記第1クライアント端末に前記遠隔操作要求を中継し、前記第1クライアント端末との間に第2操作セッションを確立し、前記遠隔操作要求に基づいて行われる前記遠隔操作の操作データを前記中継サーバ間セッション及び前記第2操作セッションの間で中継し、前記第1クライアント端末及び前記第2クライアント端末の情報を含む遠隔操作情報を作成する第1操作制御部を有し、
前記第2操作制御部は、前記遠隔操作情報を参照した参加操作クライアント端末である前記第3クライアント端末より前記遠隔操作に対する操作参加要求を受け付ければ、前記第3クライアント端末との間に第1参加操作セッションを確立し、前記第2クライアント端末及び前記第3クライアント端末のうち、操作権を有するいずれかのクライアント端末から受信した操作イベントを前記第1中継サーバへ中継し、前記第1中継サーバから受信した画像データを前記第1クライアント端末及び前記第3クライアント端末へ中継する、
中継通信システム。
【請求項2】
前記第2操作制御部は、前記排他的操作権を調整する際、前記第3クライアント端末から受信した前記遠隔操作に対する排他的操作権の取得要求を前記第2クライアント端末へ送信し、前記第2クライアント端末から前記排他的操作権の取得要求に対する許可応答を受信する、請求項1に記載の中継通信システム。
【請求項3】
第2ネットワークに接続される第2中継サーバと通信可能であり、第1ネットワークに接続され、前記第1ネットワークを介して第1クライアント端末と接続される第1中継サーバとして機能する中継サーバであって、
前記中継サーバの起動情報と前記中継サーバに接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を前記第2中継サーバと互いに共有する情報共有部と、
遠隔操作を行う操作クライアント端末である前記第2中継サーバに接続された第2クライアント端末から、前記中継サーバ情報を参照して選択された前記第1クライアント端末を遠隔操作する要求であって、前記第2クライアント端末及び前記第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、前記第1クライアント端末に前記遠隔操作要求を中継し、前記第2中継サーバとの間に中継サーバ間セッションを確立し、前記第1クライアント端末との間に第2操作セッションを確立し、前記中継サーバ間セッションと、前記第2操作セッションと、前記第2クライアント端末と前記第2中継サーバとの間に確立された第1操作セッションとを介して前記遠隔操作要求に基づいて行われる前記第2クライアント端末による前記第1クライアント端末への遠隔操作の操作データとしての操作イベント及び画像データを前記中継サーバ間セッション及び前記第3操作セッションの間で中継し、前記第1クライアント端末及び前記第2クライアント端末の情報を含む遠隔操作情報を作成する操作制御部と、を備え、
前記操作制御部は、前記遠隔操作情報を参照した参加操作クライアント端末である第3クライアント端末より前記遠隔操作に対する操作参加要求を受け付ければ、前記第3クライアント端末が接続された前記第2中継サーバとの間に参加操作セッションをさらに確立し、前記第2中継サーバによって調整された前記第1クライアント端末に対する前記遠隔操作の排他的操作権に基づいて、前記第2クライアント端末及び前記第3クライアント端末のうち調整後の前記遠隔操作の排他的操作権を有するクライアント端末と前記第1クライアント端末との間で行われる前記遠隔操作の操作データを中継し、
前記操作イベントは、前記排他的操作権を有するクライアント端末から供給される、中継サーバ。
【請求項4】
前記第1操作制御部は、前記排他的操作権を調整する際、前記第3クライアント端末から受信した前記遠隔操作に対する排他的操作権の取得要求を前記第2クライアント端末へ送信し、前記第2クライアント端末から前記排他的操作権の取得要求に対する許可応答を受信する、請求項3に記載の中継サーバ。
【請求項5】
第1ネットワークと、
第2ネットワークと、
第3ネットワークと、
前記第1ネットワークに接続される第1中継サーバと、
前記第2ネットワークに接続される、第3ネットワークを介して前記第1中継サーバと通信可能な第2中継サーバと、
前記3ネットワークに接続され、前記第1中継サーバ及び前記第2中継サーバと相互に通信可能な第3中継サーバと、
前記第1中継サーバと前記第1ネットワークを介して接続される第1クライアント端末と、
前記第2中継サーバと前記第2ネットワークを介して接続される第2クライアント端末と、
前記第3中継サーバと前記第3ネットワークを介して接続される第5クライアント端末と、
を備え、
前記第1中継サーバ、前記第2中継サーバ及び前記第3中継サーバは、中継サーバ自身の起動情報と中継サーバ自身に接続されたクライアント端末の起動情報及び接続情報とを含む中継サーバ情報を互いに共有する情報共有部を有し、
第2中継サーバは、
遠隔操作を行う操作クライアント端末である前記第2クライアント端末から、前記中継サーバ情報を参照して被操作クライアント端末として選択された前記第1クライアント端末を遠隔操作する要求であって、前記第2クライアント端末及び前記第1クライアント端末の情報を含む遠隔操作要求を受け付ければ、前記第1クライアント端末が接続されている前記第1中継サーバを特定し、前記第1中継サーバへ前記遠隔操作要求を中継し、前記第2クライアント端末との間に第1操作セッションを確立し、前記第1中継サーバとの間に中継サーバ間セッションを確立し、前記遠隔操作要求に基づいて行われる前記第2クライアント端末による前記第1クライアント端末への遠隔操作の操作データとしての操作イベント及び画像データを前記第1操作セッション及び前記中継サーバ間セッションの間で中継する第2操作制御部を有し、
前記第1中継サーバは、
前記第2中継サーバから前記遠隔操作要求を受信すれば、前記第1クライアント端末に前記遠隔操作要求を中継し、前記第1クライアント端末との間に第2操作セッションを確立し、前記遠隔操作要求に基づいて行われる前記遠隔操作の操作データを前記中継サーバ間セッション及び前記第2操作セッションの間で中継し、前記第1クライアント端末及び前記第2クライアント端末の情報を含む遠隔操作情報を作成する第1操作制御部を有し、
前記第3中継サーバは、操作参加要求を送受信可能な第3操作制御部を有しており、
前記第3操作制御部は、前記遠隔操作情報を参照した参加操作クライアント端末である前記第5クライアント端末より前記遠隔操作に対する操作参加要求を受け付ければ、前記操作参加要求を前記第1中継サーバへと中継し、前記第5クライアント端末との間に第1参加操作セッションを確立し、前記1中継サーバとの間で第2参加セッションを確立し、前記第1操作制御部は、前記第2クライアント端末及び前記第5クライアント端末のうち、操作権を有するいずれかのクライアント端末から受信した操作イベントを前記第1クライアント端末へ中継し、前記第1クライアント端末から受信した画像データを前記第2クライアント端末及び前記第5クライアント端末へ中継する、
中継通信システム。
【請求項6】
WANを介して第2中継サーバ及び第3中継サーバと接続可能であり、LANを介して第1クライアント端末、第2クライアント端末及び第3クライアント端末と接続可能な第1中継サーバであって、
前記第1クライアント端末又は前記第2中継サーバとの間に第1操作セッションを確立する第1操作セッション確立部と、
前記第2クライアント端末又は前記第3中継サーバとの間に第2操作セッションを確立する第2操作セッション確立部と、
前記第3クライアント端末との間に被操作セッションを確立する被操作セッション確立部と、
前記第1操作セッション又は前記第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、前記被操作セッションへ中継し、前記被操作セッションから受信した画像データを前記第1操作セッション及び前記第2操作セッションへ中継する操作制御部と、
前記第1操作セッション又は前記第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する操作権限変更部と、
を備える、第1中継サーバ。
【請求項7】
WANを介して第2中継サーバと接続可能であり、LANを介して第1クライアント端末及び第2クライアント端末と接続可能な第1中継サーバであって、
前記第1クライアント端末との間に第1操作セッションを確立する第1操作セッション確立部と、
前記第2クライアント端末との間に第2操作セッションを確立する第2操作セッション確立部と、
前記第2中継サーバとの間に被操作セッションを確立する被操作セッション確立部と、
前記第1操作セッション又は前記第2操作セッションの内、操作権限を有する操作セッションから受信した操作イベントを、前記被操作セッションへ中継し、前記被操作セッションから受信した画像データを前記第1操作セッション及び前記第2操作セッションへ中継する操作制御部と、
前記第1操作セッション又は前記第2操作セッションから受信した操作権限変更要求に基づいて、操作権限を有する操作セッションを変更する操作権限変更部と、
を備える、第1中継サーバ。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9A】
【図9B】
【図10】
【図11】
【図12A】
【図12B】
【図12C】
【図13A】
【図13B】
【図13C】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9A】
【図9B】
【図10】
【図11】
【図12A】
【図12B】
【図12C】
【図13A】
【図13B】
【図13C】
【公開番号】特開2013−69209(P2013−69209A)
【公開日】平成25年4月18日(2013.4.18)
【国際特許分類】
【出願番号】特願2011−208800(P2011−208800)
【出願日】平成23年9月26日(2011.9.26)
【出願人】(000006297)村田機械株式会社 (4,916)
【Fターム(参考)】
【公開日】平成25年4月18日(2013.4.18)
【国際特許分類】
【出願日】平成23年9月26日(2011.9.26)
【出願人】(000006297)村田機械株式会社 (4,916)
【Fターム(参考)】
[ Back to top ]