(57)【要約】【課題】機器が移動された場合であっても、当該機器に対する監視を継続し精度よく機器からの通知情報を得ること。【解決手段】監視システムは、ネットワークに接続される機器と、前記ネットワークとファイアウォールを介して接続されるコンピュータと、前記ネットワークに接続され、前記機器と前記コンピュータとの間の通信を中継する仲介装置とを含み、前記仲介装置は、前記機器と通信を行う第１の通信部と、前記仲介装置の通信アドレスが変更されたとき、前記機器に変更された前記仲介装置の通信アドレスを通知する第１の通知部とを有し、前記機器は、前記仲介装置と通信を行う第２の通信部と、前記機器の通信アドレスが変更されたとき、前記仲介装置又は前記コンピュータに変更された前記機器の通信アドレスを通知する第２の通知部とを有し、前記コンピュータは、前記機器から受信した通知に基づく通信アドレスを前記仲介装置に送信する管理部を有する。【選択図】図３
2018174395.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続される機器と、前記ネットワークとファイアウォールを介して接続されるコンピュータと、前記ネットワークに接続され、前記機器と前記コンピュータとの間の通信を中継する仲介装置とを含む監視システムであって、
前記仲介装置は、
前記機器と通信アドレスに基づいて通信を行う第１の通信部と、
前記仲介装置の通信アドレスが変更されたとき、前記機器に変更された前記仲介装置の通信アドレスを通知する第１の通知部とを有し、
前記機器は、
前記仲介装置と通信アドレスに基づいて通信を行う第２の通信部と、
前記機器の通信アドレスが変更されたとき、前記仲介装置又は前記コンピュータに変更された前記機器の通信アドレスを通知する第２の通知部とを有し、
前記コンピュータは、
前記機器から受信した通知に基づく通信アドレスを前記仲介装置に送信する管理部を有する監視システム。
【請求項２】
前記第１の通知部は、前記仲介装置の通信アドレスが変更されたとき、前記コンピュータに変更された前記仲介装置の通信アドレスを通知する請求項１記載の監視システム。
【請求項３】
前記第１の通知部は、前記機器への変更された前記仲介装置の通信アドレスの通知が成功しなかった場合、予め設定された再送間隔、再送回数又は再送する時間帯に基づいて、当該通知の再送を行う請求項１記載の監視システム。
【請求項４】
前記第１の通知部は、前記機器への変更された前記仲介装置の通信アドレスの通知が成功しなかった場合、前記コンピュータに前記機器の通信アドレスを問い合わせる請求項１記載の監視システム。
【請求項５】
前記第１の通知部は、前記コンピュータからの前記機器の通信アドレスを問い合わせた応答に基づいた前記機器への通知が成功しなかった場合、前記コンピュータに前記機器の検索要求を通知する請求項４記載の監視システム。
【請求項６】
前記第２の通知部は、前記仲介装置への変更された前記機器の通信アドレスの通知が成功しなかった場合、前記コンピュータに変更された前記機器の通信アドレスを通知し、
前記管理部は、前記機器から受信した通知に基づく通信アドレスを前記仲介装置に送信し、
前記第１の通知部は、前記管理部から受信した通信アドレスに基づいて、前記機器に前記仲介装置の通信アドレスを通知する請求項１記載の監視システム。
【請求項７】
前記管理部が前記仲介装置に送信する機器追加の要求に基づいて、前記第１の通知部は、前記ネットワークに接続される機器に前記機器のシリアルナンバの送信要求を通知する請求項１記載の監視システム。
【請求項８】
前記シリアルナンバに基づいて、前記機器の特定を行う特定部を、前記仲介装置がさらに有する請求項７記載の監視システム。
【請求項９】
前記機器がシリアルナンバを有しない場合、前記機器に機器固有の情報の送信要求を通知する請求項７記載の監視システム。
【請求項１０】
ネットワークに接続される機器と、前記ネットワークとファイアウォールを介して接続されるコンピュータと、前記ネットワークに接続され、前記機器と前記コンピュータとの間の通信を中継する仲介装置とを含む監視システムであって、
前記機器と通信アドレスに基づいて通信を行う第１の通信部と、
前記仲介装置の通信アドレスが変更されたとき、前記機器に変更された前記仲介装置の通信アドレスを通知する第１の通知部と、
前記仲介装置と通信アドレスに基づいて通信を行う第２の通信部と、
前記機器の通信アドレスが変更されたとき、前記仲介装置又は前記コンピュータに変更された前記機器の通信アドレスを通知する第２の通知部と、
前記機器から受信した通知に基づく通信アドレスを前記仲介装置に送信する管理部とを有する監視システム。
【請求項１１】
ネットワークに接続される機器と、前記ネットワークとファイアウォールを介して接続されるコンピュータで実行可能なプログラムと、前記ネットワークに接続され、前記機器と前記コンピュータとの間の通信を中継する仲介装置とを含む監視システムであって、
前記仲介装置は、
前記機器と通信アドレスに基づいて通信を行う第１の通信部と、
前記仲介装置の通信アドレスが変更されたとき、前記機器に変更された前記仲介装置の通信アドレスを通知する第１の通知部とを有し、
前記機器は、
前記仲介装置と通信アドレスに基づいて通信を行う第２の通信部と、
前記機器の通信アドレスが変更されたとき、前記仲介装置又は前記コンピュータに変更された前記機器の通信アドレスを通知する第２の通知部とを有し、
前記プログラムは、
前記機器から受信した通知に基づく通信アドレスを前記仲介装置に送信する管理手順を前記コンピュータに実行させる監視システム。
【請求項１２】
ネットワークに接続される機器と、前記ネットワークとファイアウォールを介して接続されるコンピュータと、前記ネットワークに接続され、前記機器と前記コンピュータとの間の通信を中継する仲介装置とを含む監視システムで実行可能なプログラムであって、
前記機器と通信アドレスに基づいて通信を行う第１の通信手順と、
前記仲介装置の通信アドレスが変更されたとき、前記機器に変更された前記仲介装置の通信アドレスを通知する第１の通知手順と、
前記仲介装置と通信アドレスに基づいて通信を行う第２の通信手順と、
前記機器の通信アドレスが変更されたとき、前記仲介装置又は前記コンピュータに変更された前記機器の通信アドレスを通知する第２の通知手順と、
前記機器から受信した通知に基づく通信アドレスを前記仲介装置に送信する管理手順とを前記監視システムに実行させるためのプログラム。
【請求項１３】
ネットワークに接続される機器と、前記ネットワークとファイアウォールを介して接続されるコンピュータと、前記ネットワークに接続され、前記機器と前記コンピュータとの間の通信を中継する仲介装置とを含む監視システムが実行する監視方法であって、
前記機器と通信アドレスに基づいて通信を行う第１の通信手順と、
前記仲介装置の通信アドレスが変更されたとき、前記機器に変更された前記仲介装置の通信アドレスを通知する第１の通知手順と、
前記仲介装置と通信アドレスに基づいて通信を行う第２の通信手順と、
前記機器の通信アドレスが変更されたとき、前記仲介装置又は前記コンピュータに変更された前記機器の通信アドレスを通知する第２の通知手順と、
前記機器から受信した通知に基づく通信アドレスを前記仲介装置に送信する管理手順とを実行する監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、監視システム、プログラム及び監視方法に関する。
【背景技術】
【０００２】
顧客へ納入した機器のオンラインサポートサービスのように、多数の装置を遠隔かつリアルタイムで監視するサービスが知られている。当該サービスのシステムでは、顧客側の装置に異常が発生したとき、エラー情報がネットワークを介して監視装置へ通知される。エラー通知を受けた監視側では、オペレータが、顧客に対し電話や電子メール等にて詳細を確認し、カスタマエンジニアが現地に行き修理する、といったサポート業務を行う。監視側へ通知されるエラーには、例えば、装置の点検作業に伴う再起動や停電など、予め顧客側にて計画された作業によるエラーが含まれることがある。この場合、エラーを受けた監視側は、顧客に対しサポートの連絡を行っても、そのサポートは無駄なものとなる。
【０００３】
そこで、障害の有無を判別するために、システムとシステムを監視する装置との間で、定期的にメッセージをやりとりする必要がある。これは、特に、数万台といった膨大な監視対象が存在するシステムの場合、ネットワークが輻輳する可能性がある。一方、輻輳を回避するために、例えば、定期メッセージの周期を比較的長く設定すると、障害の検出に漏れが生じるおそれがある。そのため、ネットワークに対する通信負荷を抑えつつ、監視装置が被監視装置のエラー発生を精度よく検知する方法が既に知られている（例えば特許文献１）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の監視システムでは、人が作業計画情報を入力しなければならない、日単位で細かく稼動状況が変わる機器を監視する場合等に、必ずしも作業計画情報通りに運用できないケースがあった。このため、エラー発生を精度よく検知することができない。また、作業計画通りに運用されずに機器が移動してしまった場合においては、ＩＰアドレスが変わってしまい機器を監視できなくなってしまう。ＤＮＳ（Domain Name Service）サーバを利用して名前解決で対応することも可能であるが、別途仕組みを構築し、それぞれの機器にホスト名を割り振る必要がありコストがかかる、という問題があった。
【０００５】
本発明は、上記の点に鑑みてなされたものであって、機器が移動された場合であっても、当該機器に対する監視を継続し精度よく機器からの通知情報を得ることを目的とする。
【課題を解決するための手段】
【０００６】
そこで上記課題を解決するため、監視システムは、ネットワークに接続される機器と、前記ネットワークとファイアウォールを介して接続されるコンピュータと、前記ネットワークに接続され、前記機器と前記コンピュータとの間の通信を中継する仲介装置とを含み、前記仲介装置は、前記機器と通信アドレスに基づいて通信を行う第１の通信部と、前記仲介装置の通信アドレスが変更されたとき、前記機器に変更された前記仲介装置の通信アドレスを通知する第１の通知部とを有し、前記機器は、前記仲介装置と通信アドレスに基づいて通信を行う第２の通信部と、前記機器の通信アドレスが変更されたとき、前記仲介装置又は前記コンピュータに変更された前記機器の通信アドレスを通知する第２の通知部とを有し、前記コンピュータは、前記機器から受信した通知に基づく通信アドレスを前記仲介装置に送信する管理部を有する。
【発明の効果】
【０００７】
機器が移動された場合であっても、当該機器に対する監視を継続し精度よく機器からの通知情報を得ることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態における監視システム１０００の構成例を示す図である。
【図２】本発明の実施の形態における仲介装置３００のハードウェア構成例を示す図である。
【図３】本発明の実施の形態における監視システム１０００の機能構成例を示す図である。
【図４】本発明の実施の形態における機器追加の手順の一例を説明するためのシーケンス図である。
【図５】本発明の実施の形態における機器接続定義の一例を示す図である。
【図６】本発明の実施の形態における機器削除の手順の一例を説明するためのシーケンス図である。
【図７】本発明の実施の形態における機器検索の手順の一例を説明するためのシーケンス図である。
【図８】本発明の実施の形態における仲介装置３００のＩＰアドレス変更検知に係る第１の手順の一例を説明するためのシーケンス図である。
【図９】本発明の実施の形態における仲介装置３００のＩＰアドレス変更検知に係る第２の手順の一例を説明するためのシーケンス図である。
【図１０】本発明の実施の形態における仲介装置３００のＩＰアドレス変更検知に係る第３の手順の一例を説明するためのシーケンス図である。
【図１１】本発明の実施の形態における機器４００のＩＰアドレス変更検知に係る第１の手順の一例を説明するためのシーケンス図である。
【図１２】本発明の実施の形態における機器４００のＩＰアドレス変更検知に係る第２の手順の一例を説明するためのシーケンス図である。
【図１３】監視システム１０００の他の構成例を示す図である。
【発明を実施するための形態】
【０００９】
以下、図面に基づいて本発明の実施の形態を説明する。
【００１０】
図１は、本発明の実施の形態における監視システム１０００の構成例を示す図である。図１に示されるように、監視システム１０００は、ＰＣ１５０ａ、ＰＣ１５０ｂ、ＰＣ１５０ｃ、クラウド２００、仲介装置３００、機器４００ａ、機器４００ｂ及び機器４００ｃを含む。
【００１１】
ＰＣ１５０ａ、ＰＣ１５０ｂ及びＰＣ１５０ｃ（以下、それぞれを区別しない場合「ＰＣ１５０」という。）は、クラウド２００に接続されるＰＣ（Personal Computer）である。ＰＣ１５０ａではアプリケーションソフトウェア（以下、アプリという。）１００ａ、ＰＣ１５０ｂではアプリ１００ｂ、ＰＣ１５０ｃではアプリ１００ｃ（以下、アプリ１００ａ〜ｃのそれぞれを区別しない場合、アプリ１００という。）が動作している。アプリ１００は、クラウド２００が提供する機器へのアクセス手段を使ってソリューションを提供する。当該ソリューションは、例えば、機器に係るログ収集サービス、機器に係るカウンタ収集サービス、機器メンテナンスサービス等を含む。図１に示されるアカウントは、アプリを使用する複数のユーザをグルーピングするものである。
【００１２】
機器４００ａ、機器４００ｂ及び機器４００ｃ（以下、それぞれを区別しない場合「機器４００」という。）は、監視システム１０００から監視される被監視装置である。機器４００は、メンテナンス又はカウンタ検針が必要な機器（例えば、複写機、プロジェクタ等）であり、ファイアウォールで保護されたＬＡＮ（Local Area Network）に接続される。また、機器４００は、ネットワーク機能が付与された人感センサ等のセンサを備えるその他の機器であってもよい。
【００１３】
クラウド２００は、複数のサーバコンピュータを含み、ＰＣ１５０及びファイアウォールを介して仲介装置３００と接続される。クラウド２００は、ＰＣ１５０上で動作するアプリ１００、仲介装置３００及び機器４００の通信経路情報を記憶するデータベースを有し、アプリ１００と機器４００との双方向通信をサポートする。
【００１４】
仲介装置３００は、ファイアウォールで保護されたＬＡＮに接続され、機器４００と、クラウド２００又はアプリ１００との間の通信を中継する。仲介装置３００は、クラウド２００からの指示を受け、機器４００にアクセスし、当該機器の状態に関するアラート通知を受信してクラウド２００に通知する。アラート通知とは、機器４００の状態変化に関する情報、センサの検知結果の情報等を含む通知である。また、仲介装置３００は、予め設定されたスケジュール情報に基づき、機器４００の情報取得、情報通知及びネットワーク通信が可能であるか否かを監視する死活監視を行う。
【００１５】
図２は、本発明の実施の形態における仲介装置３００のハードウェア構成例を示す図である。図２に示されるように、仲介装置３００は、それぞれ相互に接続されている、ＣＰＵ（Central Processing Unit）３００１、メモリ３００２、補助記憶装置３００３、ネットワークＩ／Ｆ３００４、電源３００５及びその他Ｉ／Ｏ３００６等を有する。
【００１６】
仲介装置３００での処理、例えば、クラウド２００又は機器４００との通信又はデータベース更新又は機器監視等を実現するプログラムは、補助記憶装置３００３に格納される。補助記憶装置３００３は、インストールされたプログラムを格納すると共に、当該処理に必要なファイル及びデータ等を格納する。
【００１７】
メモリ３００２は、プログラムの起動指示があった場合に、補助記憶装置３００３からプログラムを読み出して格納する。ＣＰＵ３００１は、メモリ３００２に格納されたプログラムに従って仲介装置３００に係る機能を実現する。
【００１８】
ネットワークＩ／Ｆ３００４は、クラウド２００又は機器４００等と通信を行うための有線又は無線の物理的なインタフェースである。当該インタフェースは、例えば、有線ＬＡＮ、無線ＬＡＮ、３Ｇ・ＬＴＥ（登録商標）・４Ｇ・５Ｇ等携帯端末の通信インタフェース、Ｚｉｇｂｅｅ（登録商標）、ＥｎＯｃｅａｎ（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）  Ｌｏｗ  Ｅｎｅｒｇｙ等である。
【００１９】
電源３００５は、仲介装置３００を駆動する動力源であり、ＡＣアダプタ等から給電される。
【００２０】
その他Ｉ／Ｏ３００６は、ＵＳＢ（Universal Serial Bus）機器、ハードウェアキー、状態通知用ＬＥＤ、液晶ディスプレイ等の様々な入出力装置との接続を行うためのインタフェースである。
【００２１】
なお、ＰＣ１５０、クラウド２００に含まれるサーバコンピュータ及び機器４００も図２と同様のハードウェア構成を有していてもよい。
【００２２】
図３は、本発明の実施の形態における監視システム１０００の機能構成例を示す図である。図３に示されるように、監視システム１０００は、アプリ１００、クラウド２００、仲介装置３００及び機器４００からなる機能構成を有する。
【００２３】
アプリ１００は、ＰＣ１５０で動作しており、ユーザＩ／Ｆ１０１、アプリ命令送信部１０２、アプリ通知受信部１０３、機器状態管理部１０４、異常状態通知部１０５及びレポート集計・出力部１０６を有する。ユーザＩ／Ｆ１０１は、監視対象の機器４００又は仲介装置３００の状態・情報を確認するため、機器４００に対して情報取得又は制御等の命令の発行を指示するユーザインタフェースを備える。当該ユーザインタフェースは、例えば、押下するボタンを表示する画面であり、機器４００又は仲介装置３００の状態・情報を、一覧画面又は詳細画面で確認する機能を有する。アプリ命令送信部１０２は、ユーザＩ／Ｆ１０１による指示をクラウド２００に送信する。当該送信の通信方式は、ＨＴＴＰＳ（Hypertext Transfer Protocol Secure）を想定するが、セキュアな通信を実現するものであればよく、ＨＴＴＰＳに限られない。アプリ通知受信部１０３は、アプリ１００が発行した指示に対する結果を受信し、また、仲介装置３００又は機器４００の自発的なアラート通知を受信する。機器状態管理部１０４は、クラウド２００のデータベースを利用して、機器４００の現状の状態（正常・異常、異常ならばどのような異常であるか）を保持し、ユーザＩ／Ｆ１０１に情報提供する。異常状態通知部１０５は、カスタマエンジニア等が現地を訪問して修理が必要な場合等に電子メールを介して当該カスタマエンジニアに連絡する。なお、通知手段は、電子メールに限られず、例えば、音声メッセージ又はチャット等による通知でもよい。レポート集計・出力部１０６は、ユーザ所望のフォーマットにデータを整形し出力する。例えば、レポート集計・出力部１０６は、機器４００のカウンタ情報を集計し、ＣＳＶ形式にまとめて月次でレポートを生成して出力する。
【００２４】
クラウド２００は、アプリ命令受信部２０１、アプリ命令送信部２０２、通知受信部２０３、通知送信部２０４及び通信経路管理部２０５を有する。アプリ命令受信部２０１は、アプリ１００からの命令を受信する。アプリ命令送信部２０２は、アプリ１００からの指示を仲介装置３００に送信する。通常、ＬＡＮ環境とインターネット環境との間にはファイアウォールが設置されているため、アプリ１００から仲介装置３００へ直接接続することはできない。そこで、仲介装置３００からクラウド２００へポーリングを行い、当該ポーリングの応答としてクラウド２００を介してアプリ１００からの命令を取得する方法、あるいは、仲介装置３００からアプリ１００へ常時通信可能なように通信セッション（ＷｅｂＳｏｃｋｅｔ等）を維持しておき、アプリ１００から仲介装置３００への送信を実現する方法がある。本実施の形態では、どちらの方法をとってもよい。通知受信部２０３は、アプリ１００が発行した命令に対する仲介装置３００又は機器４００からの結果を受信する。一方で、通知受信部２０３は、仲介装置３００又は機器４００からの自発的なアラート通知を受信する。通知送信部２０４は、アプリ１００が発行した命令に対する結果、または、仲介装置３００又は機器４００からの自発的なアラート通知を、アプリ１００へ転送する。通信経路管理部２０５は、アプリ１００と仲介装置３００又は機器４００との間の通信経路をデータベースで管理し、アプリ１００から命令が発行された際にどの仲介装置３００にルーティングすべきかを当該データベースによる情報で判断する。また、通信経路管理部２０５は、仲介装置３００から通知された情報をどのアプリ１００に転送すべきかを当該データベースによる情報で判断する。
【００２５】
仲介装置３００は、システム監視部３０１、設置用ユーザＩ／Ｆ３０２、スケジューラ３０３、機器アラート受信部３０４、機器要求送信部３０５、機器情報管理部３０６、クラウド通信部３０７、機器接続定義管理部３０８、機器追加部３０９、機器削除部３１０、機器検索部３１１及び仲介装置ＩＰ変更通知部３１２を有する。システム監視部３０１は、メモリ不足、ディスク不足又はディスク書き込みエラー等のシステム異常状態を検知する。設置用ユーザＩ／Ｆ３０２は、ＬＡＮから機器４００又はクラウド２００と通信するためのネットワーク設定、クラウド２００と通信開始するためのアクティベーション手続き又は接続確認等をユーザが行うための画面を提供する。スケジューラ３０３は、仲介装置３００の内部タイマ及び予め設定されたスケジュール情報に基づき、監視対象の機器４００から情報を取得しクラウド２００へ通知する。また、スケジューラ３０３は、機器４００がネットワーク通信可能であるか確認する（死活監視）、といった定期動作を実現する。機器アラート受信部３０４は、機器４００からの機器アラートであるテキストメッセージ又はバイナリデータを受信する。機器要求送信部３０５は、アプリ１００からの命令の内容を解釈して機器４００にリクエストを送信する。当該リクエストの送信に使用される通信プロトコルは、ＨＴＴＰ、ＳＮＭＰ（Simple Network Management Protocol）等を想定するが、これらの通信プロトコルに限られない。機器情報管理部３０６は、機器４００と通信するための機器識別子、機器種別、機器ＩＰアドレスを対応付けた情報をデータベースで管理する。クラウド通信部３０７は、クラウド２００からアプリ１００の命令を受信し、アプリ１００からの命令の実行結果又は仲介装置３００及び機器４００の通知を送信する。機器接続定義管理部３０８は、機器４００の追加・削除・検索、機器情報取得・疎通確認を実行するための通信パラメータをデータベースで管理する。例えば、ＨＴＴＰの通信パラメータは、リソースＵＲＩ、メソッド、ヘッダ、クエリ、ボディを含む。また例えば、ＳＮＭＰの通信パラメータは、コマンド種別（Ｇｅｔ／ＧｅｔＢｕｌｋ）、バージョン、コミュニティ名、ＯＩＤ（オブジェクト識別子）を含む。機器追加部３０９、機器削除部３１０及び機器検索部３１１は、アプリ１００からの命令を受けて仲介装置３００が機器４００に対して機器接続定義に従って通信し、機器４００を追加・削除・検索する（シーケンスはそれぞれ後述）。仲介装置ＩＰ変更通知部３１２は、ＤＨＣＰ（Dynamic Host Configuration Protocol）によって仲介装置３００のＩＰアドレスが変更になった場合に、監視対象の機器４００に新しいＩＰアドレスを通知する。
【００２６】
機器４００は、機器アラート検知部４０１、機器アラート送信部４０２、仲介装置要求通信部４０３、機器識別子管理部４０４、仲介装置ＩＰ管理部４０５及び機器ＩＰ変更通知部４０６を有する。機器アラート検知部４０１は、機器４００の内部状態を監視しアプリ１００に通知が必要な条件を満たすかを判断する。機器アラート送信部４０２は、機器アラート検知部４０１の検知タイミングをトリガとして、仲介装置３００に機器アラートを送信する。仲介装置要求通信部４０３は、機器４００の追加時の仲介装置３００からの機器識別子又はＩＰアドレスの通知を受信し、機器削除時に監視対象ではなくなった通知を受信し、仲介装置３００のＩＰアドレスが変更になった際に新しいＩＰアドレスの通知を受信する、機器情報取得要求に応答する、といった機能を有する。機器識別子管理部４０４は、仲介装置３００から通知された機器識別子をデータベースで管理する。仲介装置ＩＰ管理部４０５は、アラート通知先の仲介装置３００のＩＰアドレスをデータベースで管理する。機器ＩＰ変更通知部４０６は、仲介装置３００と同様に、ＤＨＣＰ又はモバイル機器で位置が変更された等の理由でＩＰアドレスが変更された場合に仲介装置３００、または、仲介装置３００に送信できなかった場合にはクラウド２００に新しいＩＰアドレスを通知する。
【００２７】
図４は、本発明の実施の形態における機器追加の手順の一例を説明するためのシーケンス図である。図４に示されるシーケンスにおいて、仲介装置３００の処理は、機器追加部３０９の制御に基づいて実行される。
【００２８】
ステップＳ１０１において、アプリ１００は、アプリ命令送信部１０２から機器追加要求をクラウド２００に送信する。機器追加要求には、追加する機器４００の情報、例えば、機器名称、機器種別、機器のＩＰアドレス等が含まれてもよい。続いて、クラウドは、機器識別子の採番を行い（Ｓ１０２）、破線で示されるようにアプリ１００に要求受付を送信する。続いて、クラウド２００は、アプリ命令送信部２０２から機器追加要求を仲介装置３００へ送信する（Ｓ１０３）。仲介装置３００は、破線で示されるように、クラウド通信部３０７からクラウド２００に要求受付を送信し、機器要求送信部３０５から機器４００にシリアルＮｏ取得を送信する（Ｓ１０４）。シリアルＮｏ取得は、追加する機器４００がシリアルＮｏを有している場合のみ、実行される。機器４００は、破線で示されるように、仲介装置要求通信部４０３からシリアルＮｏを仲介装置３００に送信する。機器要求送信部３０５が、ステップＳ１０４のシリアルＮｏ取得を機器４００に送信した場合、当該送信の応答としてシリアルＮｏを機器４００から取得できなかった場合は、機器追加部３０９は、機器追加を行わずシーケンスを終了する。また、ステップＳ１０４のシリアルＮｏ取得は、追加する機器４００のデバイス種別及びシリアルＮｏ取得が可能であるアクションに対応する機器接続定義が、機器接続定義管理部３０８に登録されている必要があり、当該機器接続定義が機器接続定義管理部３０８に登録されていない場合はステップＳ１０４のシリアルＮｏ取得は実行されない。
【００２９】
図５は、本発明の実施の形態における機器接続定義の一例を示す図である。図５では、機器接続定義の通信プロトコルは変更せずに通信パラメータを変えて値を取得する場合の例が示されている。追加前の機器接続定義では、機器４００との通信に使用できる通信プロトコルは、ＨＴＴＰ（ボディ部はＪＳＯＮ（Java（登録商標）Script Object Notation））とＳＮＭＰの２つであることを示している。また、ＨＴＴＰ通信する際には、メソッド、リソースＵＲＩ、ヘッダ、ボディというパラメータを指定する必要がある。図５に示される追加前の機器接続定義は、プロジェクタからの状態取得（ＧＥＴ  ／ｓｔａｔｅ）の例である。パラメータ「デバイス」に対応するデバイス通信定義情報は「プロジェクタ」であり、同様に、「アクション」には「状態取得」、「メソッド」には「ＧＥＴ」、「リソースＵＲＩ（Uniform Resource Identifier）」には「／ｓｔａｔｅ」、「ヘッダ」には「無し」、「ボディ」には「無し」が対応する。なお、通信プロトコル管理部は、機器接続定義管理部３０８に含まれる機能部であり、通信ライブラリは、使用可能な複数の通信プロトコルの群をいう。
【００３０】
図５に示される追加後の機器接続定義では、通信ライブラリ中のＨＴＴＰ＋ＪＳＯＮに、通信パラメータを追加している。追加された通信パラメータにおいて、パラメータ「アクション」に対応するデバイス通信定義情報は「機器情報取得」であり、またパラメータ「リソースＵＲＩ」に対応するデバイス通信定義情報は「／ｐｒｏｐｅｒｔｙ」である。当該通信パラメータの追加によって、仲介装置３００は、デバイス「プロジェクタ」に対して、「機密情報取得」を「／ｐｒｏｐｅｒｔｙ」に対して行うことができる。すなわち、ステップＳ１０４において、シリアルＮｏ取得が実行されるためには、少なくともアクションに「シリアルＮｏ取得」が含まれるパラメータが設定されている通信ライブラリが必要となる。
【００３１】
図５に示されるパラメータの追加は、アプリ１００の命令によるものであってもよい。上述のようにパラメータを追加又は変更することで、仲介装置３００のファームウェアを更新せずに、機器接続定義を容易に拡張することができる。
【００３２】
図４に戻る。ステップＳ１０５において、機器要求送信部３０５は、監視対象通知を機器４００へ送信する。仲介装置３００は、監視対象通知によって、機器４００に監視対象になったことを通知し、また、機器４００から仲介装置３００にアラート通知を行う際に必要となる機器識別子及び仲介装置のＩＰアドレスを通知する。続いて、機器４００は、受信した監視対象通知に基づき、機器識別子を機器識別子管理部４０４に登録し、仲介装置のＩＰアドレスを仲介装置ＩＰアドレス管理部４０５に登録する。当該通知の目的は、機器４００に監視対象となったことを通知する目的と、機器４００から仲介装置３００にアラート通知をするときに必要となる機器識別子及び仲介装置３００のＩＰアドレスを通知する２つの目的を兼ねている。機器４００は、機器識別子及び仲介装置３００のＩＰアドレスの登録が完了すると（ステップＳ１０６）、破線で示されるように仲介装置３００に通知受信ＯＫを送信する。続いて、仲介装置３００は、クラウド通信部３０７からクラウド２００の通知受信部２０３に追加結果通知を送信する（Ｓ１０７）。ステップＳ１０８において、クラウド２００の通知送信部２０４は、アプリ１００のアプリ通知受信部１０３に機器４００の追加結果通知を送信し、機器４００の登録を行う（ステップＳ１０９）。上述の図４に示される手順により、監視システム１０００は、機器４００の追加ができる。
【００３３】
図６は、本発明の実施の形態における機器削除の手順の一例を説明するためのシーケンス図である。図６に示されるシーケンスにおいて、仲介装置３００の処理は、機器削除部３１０の制御に基づいて実行される。
【００３４】
ステップＳ２０１において、アプリ１００は、アプリ命令送信部１０２から機器削除要求をクラウド２００に送信する。機器削除要求には、削除する機器４００の情報、例えば、機器名称、機器種別、機器のＩＰアドレス等が含まれてもよい。続いて、クラウドは、破線で示されるようにアプリ１００に要求受付を送信する。続いて、クラウド２００は、アプリ命令送信部２０２から機器削除要求を仲介装置３００へ送信する（Ｓ２０２）。仲介装置３００は、破線で示されるように、クラウド通信部３０７からクラウド２００に要求受付を送信し、機器要求送信部３０５から機器４００に監視対象外通知を送信する（Ｓ２０３）。機器４００は、破線で示されるように、仲介装置要求通信部４０３から通知受信ＯＫを仲介装置３００に送信する。続いて、仲介装置３００は、クラウド通信部３０７からクラウド２００の通知受信部２０３に削除結果通知を送信する（Ｓ２０５）。ステップＳ２０６において、クラウド２００の通知送信部２０４は、アプリ１００のアプリ通知受信部１０３に機器４００の削除結果通知を送信し、機器４００を監視対象外とする（ステップＳ２０７）。上述の図６に示される手順により、監視システム１０００は、監視対象であった機器４００を監視対象から削除できる。また、機器４００は、仲介装置３００への通知を停止し、仲介装置３００は、機器４００からの通知を受け付けない状態となる。
【００３５】
図７は、本発明の実施の形態における機器検索の手順の一例を説明するためのシーケンス図である。図７に示されるシーケンスにおいて、仲介装置３００の処理は、機器検索部３１１の制御に基づいて実行される。
【００３６】
ステップＳ３０１において、アプリ１００は、アプリ命令送信部１０２から機器検索要求をクラウド２００に送信する。機器検索要求には、検索する機器４００の情報、例えば、機器名称、機器種別等が含まれてもよい。続いて、クラウドは、破線で示されるようにアプリ１００に要求受付を送信する。続いて、クラウド２００は、アプリ命令送信部２０２から機器検索要求を仲介装置３００へ送信する。仲介装置３００は、破線で示されるように、クラウド通信部３０７からクラウド２００に要求受付を送信し、機器要求送信部３０５から機器４００に機器発見通信を送信する（Ｓ３０３）。機器４００は、破線で示されるように、仲介装置要求通信部４０３からＯＫを仲介装置３００に送信する。続いて、仲介装置３００は、機器要求送信部３０５から機器４００にシリアルＮｏ取得を送信する（Ｓ３０４）。機器４００は、破線で示されるように、仲介装置要求通信部４０３からシリアルＮｏを仲介装置３００に送信する。ステップＳ３０３及びステップＳ３０４の通信が成功した場合、仲介装置３００は、機器４００が発見されたと判断し、当該通信が失敗した場合、仲介装置３００は、機器４００が発見されなかったと判断する。ステップＳ３０５において、仲介装置３００は、機器要求送信部３０５から機器４００に機器プロパティ取得を送信する（Ｓ３０５）。機器プロパティとは、機器４００の情報であり、機器４００を特定するために使用される。例えば、機器プロパティは、ＩＰアドレスが複数の機器４００で同一であった場合に、機器４００が複数の機器４００のいずれであるかの特定に用いられる。機器４００は、破線で示されるように、仲介装置要求通信部４０３から機器プロパティを仲介装置３００に送信する。続いて、仲介装置３００は、クラウド通信部３０７からクラウド２００の通知受信部２０３に検索結果通知を送信する（Ｓ３０６）。ステップＳ３０７において、クラウド２００の通知送信部２０４は、アプリ１００のアプリ通知受信部１０３に機器４００の検索結果通知を送信し、機器４００の検索結果を保存する（ステップＳ３０８）。上述の図７に示される手順により、監視システム１０００は、機器４００を検索することができる。
【００３７】
図８は、本発明の実施の形態における仲介装置３００のＩＰアドレス変更検知に係る第１の手順の一例を説明するためのシーケンス図である。図８に示されるシーケンスにおいて、仲介装置３００の処理は、仲介装置ＩＰ変更通知部３１２の制御に基づいて実行される。
【００３８】
ステップＳ４０１において、仲介装置３００は、自装置のＩＰアドレスの変更を検知すると、クラウド通信部３０７からクラウド２００の通知受信部２０３に仲介装置情報通知を送信する（Ｓ４０２）。クラウド２００は、通知送信部２０４からアプリ１００のアプリ通知受信部１０３に、仲介装置情報通知を送信する（Ｓ４０３）。ステップＳ４０４において、仲介装置３００は、機器要求送信部３０５から機器４００にＩＰ変更通知を送信する。機器４００は、仲介装置ＩＰ管理部４０５に当該通知による仲介装置３００のＩＰアドレスの変更を記録する。また、破線で示されるように、機器４００は、仲介装置要求通信部４０３からＯＫを送信する。
【００３９】
図９は、本発明の実施の形態における仲介装置３００のＩＰアドレス変更検知に係る第２の手順の一例を説明するためのシーケンス図である。図９に示されるシーケンスにおいて、仲介装置３００の処理は、仲介装置ＩＰ変更通知部３１２の制御に基づいて実行される。
【００４０】
ステップＳ５０１において、仲介装置３００は、自装置のＩＰアドレスの変更を検知すると、クラウド通信部３０７からクラウド２００の通知受信部２０３に仲介装置情報通知を送信する（Ｓ５０２）。クラウド２００は、通知送信部２０４からアプリ１００のアプリ通知受信部１０３に、仲介装置情報通知を送信する（Ｓ５０３）。ステップＳ５０４において、仲介装置３００は、機器要求送信部３０５から機器４００にＩＰ変更通知を送信する。このとき、仲介装置３００は、機器４００からの応答を受信できない場合、予め定められたスケジューリングで仲介装置ＩＰ変更通知のリトライを行う。スケジューリングは、例えば、所定の間隔（例：３０秒）及び所定の回数（例：５回）が指定される。当該リトライによっても機器４００からの応答を受信できない場合、仲介装置３００は、当該機器４００を見失ったと判定して、クラウド通信部３０７からクラウド２００の通知受信部２０３に機器ＩＰ問い合わせを送信する（Ｓ５０６）。当該機器ＩＰ問い合わせには、当該機器を識別する情報が含まれる。当該機器を識別する情報とは、例えば、シリアルＮｏ、その他の機器プロパティである。破線で示されるように、クラウド２００は、仲介装置３００のクラウド通信部３０７に機器ＩＰを送信する。仲介装置は、当該機器ＩＰに基づき、機器のＩＰアドレスを機器情報管理部３０６に記録する。
【００４１】
なお、ステップＳ５０４において、仲介装置３００は、機器４００からの応答を受信できない場合、リトライせずに、１度目の応答受信失敗でクラウド２００に機器ＩＰ問い合わせを行ってもよい。また、ステップＳ５０４及びステップＳ５０５の仲介装置３００から機器４００への仲介装置ＩＰ変更通知に関して、機器４００の運用によっては電源が特定の時間帯のみＯＮになる場合があるため、リトライ時のスケジューリングによる通知を含む当該通知は、指定された時間帯に行われてもよい。
【００４２】
図１０は、本発明の実施の形態における仲介装置３００のＩＰアドレス変更検知に係る第３の手順の一例を説明するためのシーケンス図である。図１０に示されるシーケンスにおいて、仲介装置３００の処理は、仲介装置ＩＰ変更通知部３１２の制御に基づいて実行される。
【００４３】
ステップＳ６０１からステップＳ６０６は、ステップＳ５０１からステップＳ５０６と同様である。
【００４４】
ステップＳ６０６による機器ＩＰ問い合わせに対して、破線で示されるように、クラウド２００は、仲介装置３００のクラウド通信部３０７に機器のＩＰアドレスが不明であることを応答する。当該応答を受けて、仲介装置３００は、クラウド通信部３０７からクラウド２００の通知受信部２０３に機器通信不能通知を送信する（Ｓ６０７）。当該機器通信不能通知には、当該機器を識別する情報が含まれる。続いて、クラウド２００は、通知送信部２０４からアプリ１００のアプリ通知受信部に機器通信不能通知を送信する（Ｓ６０８）。アプリ１００が、ステップＳ６０８において、機器通信不能通知を受信して、当該通知に含まれる機器を識別する情報に基づいて、アプリ１００が当該機器に対する機器検索が必要であると判断した場合、アプリ１００は当該機器検索を実行してもよい。また、常に監視するポリシーが予めアプリ１００に設定されている場合、アプリ１００は当該機器検索を自動で実行してもよい。
【００４５】
図１１は、本発明の実施の形態における機器４００のＩＰアドレス変更検知に係る第１の手順の一例を説明するためのシーケンス図である。図１１に示されるシーケンスにおいて、機器４００の処理は、機器ＩＰ変更通知部４０６の制御に基づいて実行される。
【００４６】
ステップＳ７０１において、機器４００は、自装置のＩＰアドレスの変更を検知すると、仲介装置要求通信部４０３から仲介装置３００の機器アラート受信部３０４にＩＰ変更検知を送信する（Ｓ７０２）。続いて、仲介装置３００は、クラウド通信部３０７からクラウド２００の通知受信部２０３に機器ＩＰ変更通知を送信する（Ｓ７０３）。クラウド２００は、通知送信部２０４からアプリ１００のアプリ通知受信部１０３に、機器ＩＰ変更通知を送信する（Ｓ７０４）。また、破線で示されるように、仲介装置３００は、仲介装置要求通信部４０３から機器４００の仲介装置要求通信部４０３にＯＫを送信する。
【００４７】
図１２は、本発明の実施の形態における機器４００のＩＰアドレス変更検知に係る第１の手順の一例を説明するためのシーケンス図である。図１２に示されるシーケンスにおいて、機器４００の処理は、機器ＩＰ変更通知部４０６の制御に基づいて実行される。
【００４８】
ステップＳ８０１において、機器４００は、自装置のＩＰアドレスの変更を検知すると、仲介装置要求通信部４０３から仲介装置３００の機器アラート受信部３０４にＩＰ変更検知を送信する（Ｓ８０２）。図１２に示されるように、当該通知が、仲介装置３００へ到達しなかった場合、機器４００において、仲介装置３００からの応答の通信タイムアウトが発生する。
【００４９】
ステップＳ８０３において、機器４００は、機器ＩＰ変更通知をクラウド２００に送信する。続いて、クラウド２００は、通知送信部２０４からアプリ１００のアプリ通知受信部１０３に機器ＩＰ変更通知を行う。ステップＳ８０５において、クラウド２００は、仲介装置３００のクラウド通信部３０７に機器ＩＰ変更通知を送信する。続いて、仲介装置３００は、受信した当該通知に含まれる機器のＩＰアドレスに基づいて、機器４００に、仲介装置ＩＰ変更通知を送信する。当該通知に含まれる仲介装置３００のＩＰアドレスにより、機器４００では、仲介装置３００への通信を回復させることができる。
【００５０】
上述したように、本発明の実施の形態によれば、仲介装置３００は、装置の移動等により仲介装置３００のＩＰアドレスが変更された場合、機器４００に当該ＩＰアドレスの変更を通知することが可能である。機器４００に当該通知ができない場合であっても、仲介装置３００は、クラウド２００からの機器４００のＩＰアドレスの取得又はアプリ１００による機器４００の再検索によって、機器４００と通信を継続することができる。また、仲介装置３００は、機器の移動等により機器４００のＩＰアドレスが変更された場合、機器４００から当該ＩＰアドレスの変更の通知を受信することが可能である。機器４００から当該通知が取得できない場合であっても、仲介装置３００は、機器４００がクラウド２００に当該ＩＰアドレスの変更を通知することにより、クラウド２００から機器４００の変更後のＩＰアドレスを取得して、機器４００と通信を継続することができる。すなわち、機器が移動された場合であっても、当該機器に対する監視を継続し精度よく機器からの通知情報を得ることができる。
【００５１】
なお、監視システム１０００の構成は、図１に示したものに限定されない。例えば、当該監視システム１０００に含まれる監視制御対象の機器は、機器４００ａ、機器４００ｂ又は機器４００ｃに限られない。機器は、ネットワーク家電、自動販売機、医療機器、産業機械、電源装置、３Ｄプリンタ、空調システム、ガス・水道・電気等の計量システム等に通信機能を持たせた機器であってもよい。例えば、産業機械としては、加工装置、検査装置、搬送装置、ピッキング装置等が挙げられる。また、これら機器の周辺に設置され機器の状態を把握するための撮像装置又は集音装置が監視システム１０００に含まれてもよい。産業機械は、当該機器の識別情報、当該機器の稼働状況又は異常動作の有無、消耗品の交換時期に関する情報、当該機器による検査結果等を、数値データ、テキストデータ又は画像データ等の種々のデータ形式を用いて仲介装置３００を経由してアプリ１００に送信する。また、例えば、医療機器としては、眼底検査装置、Ｘ線検査装置、血圧計、体脂肪計、視力計、ペースメーカ等が挙げられる。医療機器は、当該機器の識別情報、当該機器の稼働状況又は異常動作の有無、当該機器による測定結果等を、数値データ、テキストデータ又は画像データ等の種々のデータ形式を用いて仲介装置３００を経由してアプリ１００に送信する。また、３Ｄプリンタは、造形方式として、材料押出堆積法（ＦＤＭ（Fused Deposition Modeling））、マテリアルジェッティング、バインダジェッティング、粉末焼結積層造形（ＳＬＳ（Selective Laser Sintering））、光造形法（ＳＬＡ（Stereolithography））等を採用する。３Ｄプリンタは、当該機器の識別情報、当該機器の稼働状況、異常動作の有無又は当該機器に装着された消耗品の状態等を、数値データ、テキストデータ又は画像データ等の種々のデータ形式を用いて仲介装置３００を経由してアプリ１００に送信する。
【００５２】
図１３は、監視システム１０００の他の構成例を示す図である。図１３において、監視システム１０００は、施設Ａ１０９１及び施設Ｂ１０９２、ファイアウォール１０９３及びファイアウォール１０９４、インターネット１０９５を含む。ＰＣ（監視制御アプリ）１０８９又は１０９０は、パーソナルコンピュータ等の情報処理装置であって、監視制御アプリが動作しており、機器の情報を取得して、監視又は制御を行う機能を有する。施設Ａ１０９１は、仲介装置１０８０、産業機械１０８１、撮像装置１０８２、集音装置１０８３を含む。仲介装置１０８０は、有線又は無線ＬＡＮ等を介して産業機械１０８１、撮像装置１０８２、集音装置１０８３と通信可能である。また仲介装置１０８０はファイアウォール１０９３及びクラウド１０８８を経由してインターネット１０９５上にあるＰＣ（監視制御アプリ）８９又は９０と通信可能である。施設１０９２は、仲介装置機能付き機器１０８４、医療機器１０８５、ネットワーク家電１０８６、自動販売機１０８７を含む。仲介装置機能付き機器１０８４は、仲介装置の機能に加えて監視又は制御される機器としての機能も併せ持つ機器である。仲介装置機能付き機器１０８４は、有線又は無線ＬＡＮ等を介して医療機器１０８５、ネットワーク家電１０８６、自動販売機１０８７と通信可能である。また仲介装置機能付き機器１０８４はファイアウォール１０９４を経由してインターネット１０９５上にあるクラウド１０８８、ＰＣ（監視制御アプリ）１０８９又は１０９０と通信可能である。なお、ＰＣ（監視制御アプリ）１０８９又は１０９０、クラウド１０８８は、それぞれ複数のサーバコンピュータ等の情報処理装置から構成されてもよい。
【００５３】
なお、ＰＣ１５０及び仲介装置３００は、複数の情報処理装置によって構成されるシステムであってもよい。
【００５４】
なお、本発明の実施の形態において、ＬＡＮは、ネットワークの一例である。機器４００は、機器の一例である。アプリ１００又はクラウド２００は、コンピュータの一例である。ＩＰアドレスは、通信アドレスの一例である。機器アラート受信部３０４は、第１の通信部の一例である。機器要求送信部３０５は、第１の通知部の一例である。機器アラート送信部４０２は、第２の通信部の一例である。仲介装置要求通信部４０３は、第２の通知部の一例である。アプリ命令送信部２０２は、管理部の一例である。機器プロパティは、機器固有の情報の一例である。機器追加部３０９又は機器検索部３１１は、特定部の一例である。シリアルＮｏは、シリアルナンバの一例である。
【００５５】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００５６】
１０００      監視システム
１００        アプリ
１５０        ＰＣ
２００        クラウド
３００        仲介装置
４００        機器
３００１      ＣＰＵ
３００２      メモリ
３００３      補助記憶装置
３００４      ネットワークＩ／Ｆ
３００５      電源
３００６      その他Ｉ／Ｏ
１０１        ユーザＩ／Ｆ
１０２        アプリ命令送信部
１０３        アプリ通知受信部
１０４        機器状態管理部
１０５        異常状態通知部
１０６        レポート集計・出力部
２０１        アプリ命令受信部
２０２        アプリ命令送信部
２０３        通知受信部
２０４        通知送信部
２０５        通信経路管理部
３０１        システム監視部
３０２        設置用ユーザＩ／Ｆ
３０３        スケジューラ
３０４        機器アラート受信部
３０５        機器要求送信部
３０６        機器情報管理部
３０７        クラウド通信部
３０８        機器接続定義管理部
３０９        機器追加部
３１０        機器削除部
３１１        機器検索部
３１２        仲介装置ＩＰ変更通知部
４０１        機器アラート検知部
４０２        機器アラート送信部
４０３        仲介装置要求通信部
４０４        機器識別子管理部
４０５        仲介装置ＩＰ管理部
４０６        機器ＩＰ変更通知部
１０８１      産業機械
１０８２      撮像装置
１０８３      集音装置
１０８４      仲介装置機能付き機器
１０８５      医療機器
１０８６      ネットワーク家電
１０８７      自動販売機
１０８８      クラウド
１０８９      ＰＣ（監視制御アプリ）
１０９０      ＰＣ（監視制御アプリ）
１０９１      施設Ａ
１０９２      施設Ｂ
１０９３      ファイアウォール
１０９４      ファイアウォール
【先行技術文献】
【特許文献】
【００５７】
【特許文献１】特開２００９−２０５３５６号公報
【図１】
2018174395.tif 000003
【図２】
2018174395.tif 000004
【図３】
2018174395.tif 000005
【図４】
2018174395.tif 000006
【図５】
2018174395.tif 000007
【図６】
2018174395.tif 000008
【図７】
2018174395.tif 000009
【図８】
2018174395.tif 000010
【図９】
2018174395.tif 000011
【図１０】
2018174395.tif 000012
【図１１】
2018174395.tif 000013
【図１２】
2018174395.tif 000014
【図１３】
2018174395.tif 000015