(57)【要約】【課題】リモートメンテナンスシステムにおける複数クライアントの画面情報の共有方法を提供する。【解決手段】機能画面選択情報と特定の機能画面上に表示されるデータ情報から、これらの画面情報に対応したメッセージを生成し、メッセージ受配信部に送信し、特定のクライアントから送られてきたメッセージ内の情報に応じたメッセージを生成して、送信元以外の複数のメッセージ送受信部に配信し、そのメッセージを受信した各クライアントソフトウェアが、メッセージの内容に応じた機能画面の切り替え、機能画面上の表示データの更新を行うものである。【選択図】    図１
2004318572.tif 000002
【特許請求の範囲】
【請求項１】
複数のユーザがそれぞれの端末で使用するクライアントソフトウェアと、メンテナンス対象装置の内部状態の監視や設定の変更を行うサーバソフトウエアによって構成されるリモートメンテナンス用クライアント・サーバシステムにおける複数クライアント間の画面情報共有方法において、
クライアントソフトウェアに属するメッセージ送受信部が、状態監視用機能画面や設定用機能画面といった複数の機能画面のうちユーザがどの機能画面を選択したかという機能画面選択情報と特定の機能画面上に表示されるデータ情報からこれらの画面情報に対応したメッセージを生成し、サーバソフトウェアに属するメッセージ受配信部に送信し、このメッセージ受配信部が、特定のクライアントから送られてきたメッセージ内の情報に応じたメッセージを生成して、送信元以外の複数のメッセージ送受信部に配信し、そのメッセージを受信した各クライアントソフトウェアが、メッセージの内容に応じた機能画面の切り替え、または、機能画面上の表示データの更新を行うことによって、複数のクライアントソフトウェア上で、表示される機能画面や機能画面上の表示データを同一にすることを特徴とするリモートメンテナンス用クライアント・サーバシステムにおける複数クライアント間の画面情報共有方法。
【請求項２】
前記メッセージ送受信部とメッセージ受配信部の構成として、クライアントのメッセージ送受信部が、サーバのメッセージ受配信部に対し、サーバが管理する画面情報のうち、通知して欲しい情報を予め登録し、その情報に関するサブスクライバ（購読者）となり、メッセージ受配信部は、サブスクライバの要求した画面情報の変化に応じて、発行者であるパブリッシャとして、複数のサブスクライバに必要な情報を配信するという、パブリッシャ／サブスクライバ型アーキテクチャを適用した請求項１記載のリモートメンテナンス用クライアント・サーバシステムにおける複数クライアント間の画面情報共有方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、遠隔地に設置された装置のメンテナンスを、ネットワーク経由で行うリモートメンテナンスシステムにおいて、複数のクライアントソフトウェア間で画面情報を共有する方法に関する。
【０００２】
【従来の技術】
従来のリモートメンテナンスシステムにおいて、複数のユーザが一つのメンテナンスサーバにネットワーク経由でアクセスするものとしては以下に示すものがある（例えば、特許文献１参照）。
（１）各ユーザがそれぞれのパソコンにインストールされたクライアントソフトウェアを使用してサーバにアクセスするが、各クライアントの画面切り替えに関する情報交換は行わないもの。
（２）ネットワーク接続された複数のパソコン間で特定のパソコンの画面情報を画面に対応する画像データとして他のパソコンに送信して共有することにより共同作業を可能にする既存の市販ソフトウェアを使用して、特定のユーザのパソコンにインストールされた一つのクライアントソフトウェアを複数のユーザが使用することによって、複数のユーザのパソコン上に表示される画面情報を共有するもの。
【０００３】
【特許文献１】
特開平９−６２６３０号公報
【０００４】
【発明が解決しようとする課題】
しかしながら、上記（１）の方法では、複数のユーザの使用するパソコン上のクライアントソフトウェアの画面情報が必ずしも同じでないためユーザ同士の共同作業が行い難いという問題がある。また、（２）の方法では、パソコンの画面全体をデータ量の多い画像データの送信によって共有するためネットワーク帯域の消費が大きく、頻繁に画面情報が更新されるようなアプリケーションでは、画面の更新の遅れによって、ユーザの操作性が著しく低下するという問題がある。
本発明は上記のような問題点に鑑みてなされたものであり、パソコンの画面に対応する画像データの送信を行わずに、クライアントソフトウェアの画面の情報をメッセージとして送受信することにより、操作性を低下させずにユーザの協同作業が実現できる、リモートメンテナンスシステムにおける複数クライアントの画面情報の共有方法を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記課題を解決するため、本発明は、各クライアントの画面の情報、即ち、データ監視画面や設定画面といった、特定の操作を行う画面の遷移に関する情報とその画面に表示される情報を表すメッセージを、各クライアントに属するメッセージ送受信部（以下、メッセンジャーと呼ぶ）とメンテナンスサーバに属するメッセージ受配信部（以下、メッセージマネージャと呼ぶ）との間で交換することによって、各クライアントの画面情報を共有させることを特徴とするものである。これにより、大量の画像データ送信による遅れに起因する操作性の低下という問題を回避しつつ、複数のユーザの共同作業を容易に行うことができる。即ち請求項１記載の発明は、複数のユーザがそれぞれの端末で使用するクライアントソフトウェアと、メンテナンス対象装置の内部状態の監視や設定の変更を行うサーバソフトウエアによって構成されるリモートメンテナンス用クライアント・サーバシステムにおける複数クライアント間の画面情報共有方法において、
クライアントソフトウェアに属するメッセージ送受信部が、状態監視用機能画面や設定用機能画面といった複数の機能画面のうちユーザがどの機能画面を選択したかという機能画面選択情報と特定の機能画面上に表示されるデータ情報からこれらの画面情報に対応したメッセージを生成し、サーバソフトウェアに属するメッセージ受配信部に送信し、このメッセージ受配信部が、特定のクライアントから送られてきたメッセージ内の情報に応じたメッセージを生成して、送信元以外の複数のメッセージ送受信部に配信し、そのメッセージを受信した各クライアントソフトウェアが、メッセージの内容に応じた機能画面の切り替え、または、機能画面上の表示データの更新を行うことによって、複数のクライアントソフトウェア上で、表示される機能画面や機能画面上の表示データを同一にすることを特徴とするものである。
また、請求項２記載の発明は、前記メッセージ送受信部とメッセージ受配信部の構成として、クライアントのメッセージ送受信部が、サーバのメッセージ受配信部に対し、サーバが管理する画面情報のうち、通知して欲しい情報を予め登録し、その情報に関するサブスクライバ（購読者）となり、メッセージ受配信部は、サブスクライバの要求した画面情報の変化に応じて、発行者であるパブリッシャとして、複数のサブスクライバに必要な情報を配信するという、パブリッシャ／サブスクライバ型アーキテクチャを適用したものである。
【０００６】
【発明の実施の形態】
以下、本発明の具体的実施例について図に基づいて説明する。図１は、本発明の方法を適用したリモートメンテナンスシステムの構成例をを示している。１ａ、１ｂはメンテナンス対象装置、例えば、ＦＡ用モーションコントローラである。２ａ、２ｂ、２ｃは、リモートメンテナンスを行うユーザの使用するパソコン、３ａ、３ｂは、ユーザからの要求によってメンテナンス対象装置内のデータを読み書きするメンテナンスサーバソフトウェア、４ａ、４ｂ、４ｃはユーザのパソコン上で動作するクライアントソフトウェア、５はメンテナンス対象装置１ｂに接続されたサーバパソコンである。メンテナンスサーバ３ａが、メンテナンス対象装置１ａに内蔵されているのは請求項１に相当する実施形態を表し、メンテナンスサーバ３ｂが、サーバパソコン５に内蔵されているのは請求項２に相当する実施形態を表している。ユーザのパソコン、サーバパソコン、および、メンテナンス対象装置は、イーサネット（登録商標）６を介して、インターネットまたはイントラネット７といったネットワークに接続されており、相互に通信を行う。
【０００７】
図２はサーバおよびクライアントのソフトウェア構成を示す図である。それぞれがソフトウェアを構成するオブジェクトを意味する。クライアントソフトウェアは、全体をまとめるクライアントメイン４１、データ監視や設定変更といった機能毎に用意される機能ウィンドウ４３０、機能ウィンドウを切り替えて表示させるベースとなるベースウィンドウ４３、ベースウィンドウに対して機能ウィンドウの切り替えを指示するメニューウィンドウ４２、サーバとメッセージ交換を行うメッセンジャー４４といったオブジェクトによって構成される。一方、サーバソフトウェアは、メンテナンス対象装置のデータの読み書きを行うサーバメイン３１、および、メッセンジャー４４とメッセージ交換を行うメッセージマネージャ３２から構成される。メッセンジャー４４とメッセージマネージャ３２とのメッセージ交換は、メッセージを格納したメッセージオブジェクト８を送受信することによって行われる。また、メッセージオブジェクトは、必要に応じて、監視データや設定データを保持したデータオブジェクト９を格納する。
【０００８】
図３は、クライアントソフトウェアの具体的な画面の構成例を示す。この例では、機能ウィンドウとして、装置の内部状態を監視する機能ウィンドウ４３１、および、装置の設定を変更する機能ウィンドウ４３２を提供している。メニューウィンドウ４２には機能ウィンドウを切り替えるための選択ボタンがあり、監視用の選択ボタン４２１と設定用の選択ボタン４２２がある。これらの選択ボタンを押すことにより、ベースウィンドウ４３上に表示される機能ウィンドウが切り替わる。監視ウィンドウは、データを表示するデータビュー４５１を持ち、監視ウィンドウが表示されている間、周期的にサーバからデータ取得してデータビュー４５１に表示する。また、設定ウィンドウは、設定値を入力するデータビュー４５２を持ち、実行ボタン４６を押すことによりデータビュー４５２の保持する値をサーバに送信し、装置の設定を変更する。
【０００９】
図４、５、６は、複数のクライアントの情報が共有される手順を表している。但し、添え字のａはクライアント４ａのオブジェクトであることを表し、添え字のｂはクライアント４ｂのオブジェクトであることを表す。
図４は複数の画面の遷移を同期させる手順を表すシーケンス図である。ここでは、クライアント４ａ（図１）の画面を選択ボタンによって切り替えたときに、クライアント４ｂ（図１）の画面が切り替わるまでのシーケンスを示す。図４のシーケンスの詳細は以下の通り。
【００１０】
（１）選択ボタン４２２ａは、ボタンが押されると、クライアントメイン４１ａの機能変更メソッド（ｃｈａｎｇｅＭｏｄｅ（））を呼び出し、ボタンに対応する機能が選択されたことを知らせる。
（２）クライアントメイン４１ａは、ベースウィンドウ４３ａの画面切替メソッド（ｃｈａｎｇｅＷｉｎｄｏｗ（））を呼び出して、機能ウィンドウを切り替えさせた後、メッセンジャー４４ａの通知メソッド（ｎｏｔｉｆｙ（））を呼び出して、選択ボタン４２２ａに対応する機能ウィンドウに切り替わったことを通知する。
（３）メッセンジャー４４ａは、自身のメッセージ送信メソッド（ｓｅｎｄＭｅｓｓａｇｅ（））を呼び出して、どの画面に切り替わったかを示す画面切替情報を格納したメッセージオブジェクト８（図２）をメッセージサーバに属するメッセージマネージャ３２に送信する。
【００１１】
（４）メッセージマネージャ３２は、複数のクライアントにメッセージを配信するメソッド（ｄｉｓｐａｔｃｈＭｅｓｓａｇｅ（））を呼び出し、画面切替情報をクライアントに配信する。図４では、クライアント４ｂ（図１）のメッセンジャー４ｂが受信する場合を示している。
（５）メッセンジャー４４ｂは、画面切替情報を受け取ると、クライアントメイン４１ｂのメッセージ格納メソッド（ｓｅｔＭｅｓｓａｇｅ（））を呼び出して、メッセージを渡す。
（６）画面切替情報を含むメッセージを渡されたクライアントメイン４１ｂは、自身の機能変更メソッド（ｃｈａｎｇｅＭｏｄｅ（））からベースウィンドウ４３ｂの画面切替メソッド（ｃｈａｎｇｅＷｉｎｄｏｗ（））を呼び出し、その結果ベースウィンドウ４３ｂは、クライアント４ｂの機能ウィンドウをクライアント４ａで選択された機能ウィンドウに切り替える。
【００１２】
図５は、設定用の機能ウィンドウ４３２が表示されているクライアント４ａ上で、設定用の実行ボタン４６（図３）が押されたときに、データビュー４５２に入力された値がメンテナンスサーバに送られ、最終的にクライアント４ｂのデータビューにクライアント４ａのデータビューの値が表示されるまでの流れを示すシーケンス図である。詳細は以下の通り。
（１）クライアント４ａの設定用の実行ボタン４６ａは、ボタンが押されると、設定用の機能ウィンドウ４３２ａのデータ設定メソッド（ｓｅｔＤａｔａ（））を呼び出す。
（２）機能ウィンドウ４３２ａは、データビュー４５２ａのデータ取得メソッド（ｇｅｔＤａｔａ（））を呼び出して入力されている値を読み出し、その値をデータオブジェクト９（図２）にデータ設定メソッド（ｓｅｔＤａｔａ（））を使って格納し、次に、クライアントメイン４１ａの要求指示メソッド（ｓｅｔＲｅｑｕｅｓｔ（））を呼び出してデータオブジェクトを渡す。
（３）クライアントメイン４１ａは、要求を指示されると、自身の要求実行メソッド（ｒｅｑｕｅｓｔ（））を呼び出し、サーバメイン３１に上記データオブジェクトを渡して設定要求を行う。
（４）サーバメイン３１は、設定要求を受けてデータオブジェクトの内容に従ってメンテナンス対象装置の設定を書き換えた後、メッセージマネージャ３２のメッセージ配信メソッド（ｄｉｓｐａｔｃｈＭｅｓｓａｇｅ（））を呼び出す。
【００１３】
（５）メッセージマネージャ３２は、メッセージ配信メソッドの呼出しを受けて、上記データオブジェクトを保持するメッセージオブジェクト８を生成し、これを設定変更情報として各クライアントに配信する。図５では、クライアント４ｂ（図１）のメッセンジャー４４ｂが受信する場合を示している。
（６）メッセンジャー４４ｂは、メッセージ受信後、クライアントメイン４１ｂのメッセージ格納メソッド（ｓｅｔＭｅｓｓａｇｅ（））を呼び出して、メッセージを渡す。（７）設定値の情報を含むメッセージを渡されたクライアントメイン４１ｂは、設定用の機能ウィンドウ４３２ｂのデータ更新メソッド（ｕｐｄａｔｅ（））を呼び出してデータオブジェクト９を渡す。
（８）機能ウィンドウ４３２ｂは上記データ更新メソッドの中でデータビュー４５２ｂのデータ設定メソッド（ｓｅｔＤａｔａ（））を呼び出して、データビュー４５２ｂに表示される値を変更する。その結果、データビュー４５２ｂに表示される値は、クライアントａが設定した値と同じになる。
【００１４】
図６は、クライアント４ａがサーバに監視データを要求して取得したデータがサーバからクライアント４ｂにも送られることによって表示を共有する処理の流れを示すシーケンス図である。但し、本実施形態においては、サーバに対するデータ要求は、最初に監視用の機能ウィンドウを表示させたクライアントがマスターとなって周期的に発行し、他のクライアントは、マスターの要求を受けてメンテナンス対象装置からデータを取り出したサーバからの配信によって得るものとする。図６はクライアント４ａがマスターになったとき、クライアント４ｂが監視データを共有するまでの流れを示している。なお、データ要求の発行は、監視用の機能ウィンドウに要求開始用のボタンを準備し、そのボタンを押すことによって開始されるようにしてもよい。以下に、図６のシーケンスの詳細示す。
【００１５】
（１）クライアント４ａの監視用の機能ウィンドウ４３１ａは、クライアントメイン４１ａの要求指示メソッド（ｓｅｔＲｅｑｕｅｓｔ（））を呼び出して、監視データの取得を依頼する。
（２）クライアントメイン４１ａは、要求指示を受けて自身の要求実行メソッド（ｒｅｑｕｅｓｔ（））を呼び出し、サーバメイン３１に対してデータ要求を行い、サーバメイン３１がメンテナンス対象装置から取得しクライアントメイン４１ａに返したデータを監視用の機能ウィンドウ４３１ａに返す。
（３）監視用の機能ウィンドウ４３１ａは要求したデータを受けた後、データビュー４５１ａのデータ設定メソッド（ｓｅｔＤａｔａ（））を呼び出して、表示を行わせる。
【００１６】
（４）一方、サーバメイン３１は、クライアントメイン４１ａに監視データを渡した後、そのデータを保持するデータオブジェクト９（図２）を生成した後、メッセージマネージャ３２のメッセージ配信メソッド（ｄｉｓｐａｔｃｈＭｅｓｓａｇｅ（））を呼び出してデータの配信を依頼する。
（５）メッセージマネージャ３２は、上記依頼を受けて、上記データオブジェクトを格納したメッセージオブジェクト８（図２）を生成し、これを監視データ情報として各クライアントに配信する。図６では、クライアント４ｂ（図１）のメッセンジャー４４ｂが受信する場合を示している。
（６）メッセンジャー４４ｂは、監視データ情報を受信すると、クライアントメイン４１ｂのメッセージ格納メソッド（ｓｅｔＭｅｓｓａｇｅ（））を呼び出してメッセージを渡す。
（７）監視データ情報を含むメッセージを渡されたクライアントメイン４１ｂは、監視用の機能ウィンドウ４３１ｂのデータ更新メソッド（ｕｐｄａｔｅ（））を呼び出してデータオブジェクト９を渡す。
（８）機能ウィンドウ４３１ｂは上記データ更新メソッドの中でデータビュー４５１ｂのデータ設定メソッド（ｓｅｔＤａｔａ（））を呼び出して、データビュー４５１ｂに表示される値を変更する。その結果、データビュー４５１ｂに表示される値は、クライアントａが取得した値と同じになる。
【００１７】
以上のように、各クライアントが備えるメッセンジャー４４（図２）とサーバが備えるメッセージマネージャ３２との間で、画面遷移やメンテナンス対象装置に関するデータの情報を保持するメッセージを交換することによって、複数のクライアントソフトウェアの画面情報を、その変化に追従しながら共有することができる。
【００１８】
【発明の効果】
以上述べたように、本発明の、リモートメンテナンスシステムにおける複数クライアントの画面情報共有方法においては、画面に関する情報を保持するメッセージをクライアントとサーバの間で交換することによって、複数のクライアントの画面遷移とデータ表示変更に追従した画面情報の共有を行うため、ユーザの操作性を低下させずに、複数のユーザが共同してリモートメンテナンスを実行できるという効果がある。
【図面の簡単な説明】
【図１】本発明の方法を適用したリモートメンテナンスシステムの構成例を示す図。
【図２】本発明の方法を実現するソフトウェアオブジェクトの関係を表す図。
【図３】クライアントソフトウェアの画面構成例。
【図４】画面の遷移を同期させる手順を表すシーケンス図。
【図５】設定ウィンドウの表示を設定操作に合わせて共有させる手順を表すシーケンス図。
【図６】監視ウィンドウに表示されるデータが複数のクライアントで共有される処理の流れを示すシーケンス図。
【符号の説明】
１ａ、１ｂ  メンテナンス対象装置
２ａ、２ｂ、２ｃ  ユーザパソコン
３ａ、３ｂ  メンテナンスサーバソフトウェア
４ａ、４ｂ、４ｃ  クライアントソフトウェア
５  サーバパソコン
６ａ、６ｂ、６ｃ  イーサネット（登録商標）
７  インターネット／イントラネット
８  メッセージオブジェクト
９  データオブジェクト
３１  サーバメイン
３２  メッセージマネージャ
４２  メニューウィンドウ
４３  ベースウィンドウ
４４  メッセンジャー
４３０  機能ウィンドウ
【図１】
2004318572.tif 000003
【図２】
2004318572.tif 000004
【図３】
2004318572.tif 000005
【図４】
2004318572.tif 000006
【図５】
2004318572.tif 000007
【図６】
2004318572.tif 000008