IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ブラザー工業株式会社の特許一覧

特許7574672管理システム、管理方法および管理用プログラム
<>
  • 特許-管理システム、管理方法および管理用プログラム 図1
  • 特許-管理システム、管理方法および管理用プログラム 図2
  • 特許-管理システム、管理方法および管理用プログラム 図3
  • 特許-管理システム、管理方法および管理用プログラム 図4
  • 特許-管理システム、管理方法および管理用プログラム 図5
  • 特許-管理システム、管理方法および管理用プログラム 図6
  • 特許-管理システム、管理方法および管理用プログラム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-21
(45)【発行日】2024-10-29
(54)【発明の名称】管理システム、管理方法および管理用プログラム
(51)【国際特許分類】
   G06F 3/12 20060101AFI20241022BHJP
   G06F 8/61 20180101ALI20241022BHJP
   G06F 9/445 20180101ALI20241022BHJP
   H04L 67/00 20220101ALI20241022BHJP
   H04N 1/00 20060101ALI20241022BHJP
【FI】
G06F3/12 336
G06F3/12 320
G06F3/12 330
G06F3/12 387
G06F8/61
G06F9/445
H04L67/00
H04N1/00 127A
H04N1/00 127B
【請求項の数】 13
(21)【出願番号】P 2021013364
(22)【出願日】2021-01-29
(65)【公開番号】P2022116934
(43)【公開日】2022-08-10
【審査請求日】2024-01-23
(73)【特許権者】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000578
【氏名又は名称】名古屋国際弁理士法人
(72)【発明者】
【氏名】矢田 裕紀
【審査官】漆原 孝治
(56)【参考文献】
【文献】特開2009-134610(JP,A)
【文献】特開2009-093262(JP,A)
【文献】特開2019-179446(JP,A)
【文献】米国特許出願公開第2019/0306115(US,A1)
【文献】特開2020-198000(JP,A)
【文献】特開2019-049914(JP,A)
【文献】特開2015-232755(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/12
G06F 8/61
G06F 9/445
H04L 67/00
H04N 1/00
(57)【特許請求の範囲】
【請求項1】
クラウドストレージにアクセス可能に構成された第1の通信装置と、
第1の端末装置と通信可能に接続されるか、若しくは第2の端末装置に設けられ、前記クラウドストレージにアクセス可能に構成された第2の通信装置と、
を備え、
前記第1の通信装置は、
前記クラウドストレージにタスク要求データを書込む第1の書込処理であって、前記タスク要求データは管理対象に対する第1のタスクの実行を要求するデータであり、前記管理対象は、前記第2の通信装置に接続された前記第1の端末装置、若しくは前記第2の通信装置が設けられた前記第2の端末装置である、第1の書込処理と、
第1の取得タイミングが到来することに応じて前記クラウドストレージから端末データを取得する第1の取得処理であって、前記端末データは前記管理対象が有するデータであって前記第2の通信装置により前記管理対象から取得されて前記クラウドストレージに書込まれる、第1の取得処理と、
を実行するように構成され、
前記第2の通信装置は、
第2の取得タイミングが到来することに応じて前記クラウドストレージから前記タスク要求データを取得する第2の取得処理と、
前記管理対象から前記端末データを取得して前記クラウドストレージに書込む第2の書込処理と、
を実行するように構成されている、管理システム。
【請求項2】
請求項1に記載の管理システムであって、
前記第1の取得処理は、前記クラウドストレージに対する、前記端末データの取得を目的とする第1のポーリングを行うことを含む、管理システム。
【請求項3】
請求項1または請求項2に記載の管理システムであって、
前記第2の取得処理は、前記クラウドストレージに対する、前記タスク要求データの取得を目的とする第2のポーリングを行うことを含む、管理システム。
【請求項4】
請求項1~請求項3のいずれか1項に記載の管理システムであって、
前記第2の書込処理は、指定された種類の前記端末データを周期的に繰り返し取得して前記クラウドストレージに書込む第2のタスクを含む、管理システム。
【請求項5】
請求項4に記載の管理システムであって、
前記第1の通信装置は、さらに、前記第2のタスクで取得すべき前記端末データの前記種類を指定する指定情報を前記クラウドストレージにおける第1の記憶領域に書込む第3の書込処理を実行するように構成されており、
前記第2の通信装置は、さらに、前記クラウドストレージから前記指定情報を取得する第3の取得処理を実行するように構成されており、
前記第2のタスクは、前記第3の取得処理により取得された前記指定情報により指定された前記種類の前記端末データを周期的に繰り返し取得して、前記クラウドストレージにおける、前記第1の記憶領域とは別の第2の記憶領域に書込むように構成されている、
管理システム。
【請求項6】
請求項1~請求項5のいずれか1項に記載の管理システムであって、
前記第2の通信装置は、さらに、前記第2の取得処理により取得された前記タスク要求データに基づいて前記管理対象に対する前記第1のタスクを実行するように構成されており、
前記第2の書込処理は、前記端末データとして前記第1のタスクの実行結果を示すデータを前記管理対象から取得して前記クラウドストレージに書込むこと含む、
管理システム。
【請求項7】
請求項1~請求項6のいずれか1項に記載の管理システムであって、
前記クラウドストレージは、第1のストレージと第2のストレージとを備え、
前記第1のストレージは、データベースが書込まれるように構成され、
前記第2のストレージは、ファイルが格納されるように構成され、
前記タスク要求データ及び前記端末データは前記第1のストレージに書込まれる、
管理システム。
【請求項8】
請求項5に記載の管理システムであって、
前記クラウドストレージは、第1のストレージと第2のストレージとを備え、
前記第1のストレージは、データベースが書込まれるように構成され、
前記第2のストレージは、ファイルが格納されるように構成され、
前記指定情報は、前記第1のストレージにおける前記第1の記憶領域に書込まれる、
管理システム。
【請求項9】
請求項7または請求項8に記載の管理システムであって、
前記第1の書込処理は、前記第1のタスクで用いられる前記ファイルを前記第2のストレージに書込むことを含み、
前記第1のタスクは、前記第2のストレージから前記管理対象へ前記ファイルをダウンロードさせることを含む、
管理システム。
【請求項10】
請求項1~請求項9のいずれか1項に記載の管理システムであって、
前記第1の通信装置は、さらに、前記第2の通信装置が前記クラウドストレージにアクセスするために必要なデータを含むプロファイルを生成する生成処理を実行するように構成されており、
前記第2の通信装置は、さらに、前記生成処理により生成された前記プロファイルをインポートするインポート処理を実行するように構成されており、
前記第2の通信装置は、前記インポート処理により前記プロファイルがインポートされることに応じて前記クラウドストレージにアクセス可能となるように構成されている、
管理システム。
【請求項11】
クラウドストレージにアクセス可能な第1の通信装置によって、前記クラウドストレージにアクセス可能な第2の通信装置を介して管理対象を管理する管理方法であって、
前記第2の通信装置は、第1の端末装置と通信可能に接続されるか、若しくは第2の端末装置に設けられ、
前記管理対象は、前記第2の通信装置に接続された前記第1の端末装置、若しくは前記第2の通信装置が設けられた前記第2の端末装置であり、
前記管理方法は、
前記第1の通信装置により、前記管理対象に対する第1のタスクの実行を要求するデータであるタスク要求データを前記クラウドストレージに書込むことと、
前記第1の通信装置により、第1の取得タイミングが到来することに応じて、前記クラウドストレージから、前記管理対象が有するデータであって前記第2の通信装置により前記管理対象から取得されて前記クラウドストレージに書込まれるデータである端末データを取得することと、
前記第2の通信装置により、第2の取得タイミングが到来することに応じて前記クラウドストレージから前記タスク要求データを取得することと、
前記第2の通信装置により、前記管理対象から前記端末データを取得して前記クラウドストレージに書込むことと、
を備える管理方法。
【請求項12】
各々がクラウドストレージにアクセス可能に構成された第1の通信装置及び第2の通信装置を備えるシステムにおける、前記第1の通信装置が備えるコンピュータが実行可能な管理用プログラムであって、
前記第2の通信装置は、第1の端末装置と通信可能に接続されるか、若しくは第2の端末装置に設けられ、
前記管理用プログラムは、前記コンピュータに、
前記クラウドストレージにタスク要求データを書込む書込処理であって、前記タスク要求データは管理対象に対するタスクの実行を要求するデータであり、前記管理対象は、前記第2の通信装置に接続された前記第1の端末装置、若しくは前記第2の通信装置が設けられた前記第2の端末装置である、書込処理と、
取得タイミングが到来することに応じて前記クラウドストレージから端末データを取得する取得処理であって、前記端末データは前記管理対象が有するデータであって前記第2の通信装置により前記管理対象から取得されて前記クラウドストレージに書込まれる、取得処理と、
を実行させる管理用プログラム。
【請求項13】
各々がクラウドストレージにアクセス可能に構成された第1の通信装置及び第2の通信装置を備えるシステムにおける、前記第2の通信装置が備えるコンピュータが実行可能な管理用プログラムであって、
前記第2の通信装置は、第1の端末装置と通信可能に接続されるか、若しくは第2の端末装置に設けられ、
前記管理用プログラムは、前記コンピュータに、
取得タイミングが到来することに応じて前記クラウドストレージからタスク要求データを取得する取得処理と、
管理対象から端末データを取得して前記クラウドストレージに書込む書込処理と、
を実行させ、
前記タスク要求データは、前記管理対象に対する第1のタスクの実行を要求するデータであって前記第1の通信装置により前記クラウドストレージに書込まれ、
前記管理対象は、前記第2の通信装置に接続された前記第1の端末装置、若しくは前記第2の通信装置が設けられた前記第2の端末装置であり、
前記端末データは前記管理対象が有するデータである、
管理用プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、端末装置を管理する技術に関する。
【背景技術】
【0002】
特許文献1には、管理装置がサーバを介して画像形成装置を管理する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2019-148957号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に開示された技術では、管理装置による画像形成装置の管理のためにサーバが能動的に機能する。即ち、サーバは、自ら主体的に各種の判断処理を行い、処理結果を管理装置あるいは画像形成装置に通知する。
【0005】
そのため、サーバにかかるコストが高くなり、ひいては、管理装置から画像形成装置を管理するためのシステムの構築に要するコストが高くなる。
本開示の一局面は、端末装置を簡易的且つ低コストで管理できるようにすることを目的とする。
【課題を解決するための手段】
【0006】
本開示の一局面における管理システムは、第1の通信装置と第2の通信装置とを備える。第1の通信装置は、クラウドストレージにアクセス可能である。第2の通信装置は、第1の端末装置と通信可能に接続されるか、若しくは第2の端末装置に設けられる。第2の通信装置は、クラウドストレージにアクセス可能である。
【0007】
第1の通信装置は、第1の書込処理と、第1の取得処理とを実行する。第1の書込処理は、クラウドストレージにタスク要求データを書込む処理である。タスク要求データは、管理対象に対する第1のタスクの実行を要求するデータである。管理対象は、第2の通信装置に接続された第1の端末装置、若しくは第2の通信装置が設けられた第2の端末装置である。つまり、第2の通信装置が例えば第1の端末装置と通信可能に接続されているならば、管理対象はその第1の端末装置である。第2の通信装置が例えば第2の端末装置に設けられているならば、管理対象はその第2の端末装置である。
【0008】
第1の取得処理は、第1の取得タイミングが到来することに応じてクラウドストレージから端末データを取得する処理である。端末データは、管理対象が有するデータであって、第2の通信装置により管理対象から取得されてクラウドストレージに書込まれる。
【0009】
第2の通信装置は、第2の取得処理と、第2の書込処理とを実行する。第2の取得処理は、第2の取得タイミングが到来することに応じて、クラウドストレージからタスク要求データを取得する処理である。第2の書込処理は、管理対象から端末データを取得してクラウドストレージに書込む処理である。
【0010】
このような管理システムでは、クラウドストレージは、第1の通信装置及び第2の通信装置に対して受動的に機能する。第1の通信装置及び第2の通信装置はそれぞれ、必要なデータを自らクラウドストレージに書き込む。また、第1の通信装置及び第2の通信装置はそれぞれ、クラウドストレージにアクセスして自らデータを読み込む。そのため、クラウドストレージを簡素且つ低コストで実現できる。換言すれば、簡素且つ低コストのクラウドストレージを用いて端末装置を管理できる。そのため、端末装置を簡易的且つ低コストで管理することが可能となる。
【0011】
本開示の別の一局面は、インストールプログラムである。インストールプログラムは、コンピュータに、当該コンピュータを前述の第1の通信装置及び前述の第2の通信装置(詳しくは第1の端末装置と通信可能に接続された第2の通信装置)のうちのいずれか一方として機能させるためのプログラムをインストールする。
【0012】
具体的には、インストールプログラムは、コンピュータに、機能情報取得処理と、インストール処理とを実行させる。
機能情報取得処理は、第1の通信装置及び第2の通信装置のうちどちらとして機能すべきかを示す機能情報を取得する。インストール処理は、第1の通信装置及び第2の通信装置のうち機能情報取得処理により取得された機能情報により示される一方としてコンピュータを機能させるためのプログラムをコンピュータにインストールする。
【0013】
このようなインストールプログラムによれば、機能情報に応じて、コンピュータを第1の通信装置及び第2の通信装置のいずれか一方として択一的に機能させることができる。
本開示のさらに別の一局面では、上記管理システムを構成する第1の通信装置または第2の通信装置が提供されてもよい。本開示のさらに別の一局面では、第1の通信装置としてコンピュータを機能させるためのプログラム、第2の通信装置としてコンピュータを機能させるためのプログラムが提供されてもよい。本開示のさらに別の一局面では、上記管理システムにおいて用いられる、第1の通信装置からクラウドストレージ及び第2の通信装置を介して各端末装置を管理する方法が提供されてもよい。
【図面の簡単な説明】
【0014】
図1】実施形態の管理システムの構成図である。
図2図2Aはマスタのブロック図、図2Bはクライアントのブロック図、図2Cは第1種端末装置のブロック図である。
図3図3Aは第2種端末装置のブロック図、図3Bはクラウドサーバのブロック図である。
図4】管理システムによる管理シーケンスの一例を示す説明図である。
図5図5Aはスケジュールタスクテーブルの一例を示す説明図、図5Bはインスタントタスクテーブルの一例を示す説明図である。
図6図6Aはマスタイニシャルファイルの一例を示す説明図、図6Bはクライアントイニシャルファイルの一例を示す説明図である。
図7】インストール処理のフローチャートである。
【発明を実施するための形態】
【0015】
以下、本開示の例示的な実施形態について、図面を参照しながら説明する。
[1.実施形態]
(1-1)全体構成
本開示の例示的実施形態に係る管理システム1は、マスタ2及びクライアント3の協働により、複数拠点に配置された端末装置4,5を、クラウドサーバ6を介して管理するように構成されたネットワークシステムである。
【0016】
図1に例示されるマスタ2は、第1拠点に設置された端末装置4とローカルエリアネットワークを介して通信可能に構成される。マスタ2は、さらに、広域ネットワークを介してクラウドサーバ6と通信可能に構成される。第1拠点には、複数の端末装置4が設けられていてもよい。
【0017】
クライアント3は、第2拠点に設置された端末装置4とローカルエリアネットワークを介して通信可能に構成される。クライアント3は、さらに、広域ネットワークを介してクラウドサーバ6と通信可能に構成される。第2拠点には、複数の端末装置4が設けられていてもよい。
【0018】
第3拠点に設置された端末装置5は、広域ネットワークを介してクラウドサーバ6と通信可能に構成される。
ローカルエリアネットワークは、例えば、無線LAN及び有線LANのうち少なくとも一方を含んでいてもよい。広域ネットワークは、例えば、インターネットを含んでいてもよい。第3拠点は、ローカルエリアネットワークが構築されていてもよい。この場合、端末装置5は、第3拠点内のローカルエリアネットワークを介して広域ネットワークに接続されてもよい。
【0019】
端末装置4は、クラウドサーバ6によって提供されるクラウドサービスを利用する能力を有しない。換言すれば、各端末装置4は、クラウドサーバ6と通信を行う機能を有しない。以下では、この端末装置4のことを、特に第1種端末装置4と表現する。一方、端末装置5は、クラウドサーバ6によって提供されるクラウドサービスを利用する能力を有する端末装置である。換言すれば、端末装置5は、クラウドサーバ6と通信する機能を有する。端末装置5におけるその能力は、後述する通信プログラム82a(図3A参照)により実現される。以下では、この端末装置5のことを、特に第2種端末装置5と表現する。
【0020】
第2拠点に設置された第1種端末装置4は、クライアント3及びクラウドサーバ6を介して、マスタ2により管理される。第3拠点に設置された第2種端末装置5は、クライアント3を介さずクラウドサーバ6を介して、マスタ2により管理される。
【0021】
マスタ2によって管理される端末装置4,5は、例えば、企業などの一組織で管理される端末装置の一群であり得る。この場合、各拠点は、組織の活動拠点であり得る。一例によれば、マスタ2が存在する第1拠点は、組織の管理部門を有するオフィスであり得る。それ以外の第2拠点及び第3拠点は、第1拠点から離れた組織のブランチオフィスであり得る。
【0022】
端末装置4,5の例には、プリンタ、スキャナ、及び、それらの機能が統合されたディジタル複合機などが含まれる。マスタ2及びクライアント3は、例えば、情報処理装置(例えばパーソナルコンピュータ)に専用のコンピュータプログラムがインストールされて構成される。
【0023】
(1-2)装置構成
図2Aに示すマスタ2は、制御部11と、通信部12と、表示部13と、入力部14と、記憶部15とを備える。制御部11は、CPU21と、メモリ22とを備える。プロセッサとしてのCPU21は、記憶部15に記憶されたコンピュータプログラムに従う処理を実行する。メモリ22は、上記処理の実行時に、ワークメモリとして使用される。
【0024】
記憶部15は、例えばソリッドステートドライブ(SSD)及びハードディスクドライブ(HDD)等のストレージを含み、各種のコンピュータプログラム及びデータを記憶する。記憶部15には、主管理プログラム15aが記憶される。主管理プログラム15aは、マスタ2により実現されるべき管理機能を、CPU21に実現させるためのコンピュータプログラムである。以下において説明される制御部11を主体とした処理は、CPU21がコンピュータプログラムに従って実行する処理により実現されると理解されてよい。
【0025】
通信部12は、当該マスタ2が存在する拠点のローカルエリアネットワークに接続され、更には、広域ネットワークに接続される。通信部12は、図示しないルータを介して広域ネットワークに接続されてもよい。表示部13は、マスタ2を操作するユーザ向けの各種画面を表示するように構成される。表示部13の例には、液晶ディスプレイが含まれる。各種画面の例には、管理対象の端末装置4,5のログ情報及びステータス情報を表示するための画面、及び、ユーザからの操作信号に従って端末装置4,5を遠隔操作するための画面が含まれる。
【0026】
入力部14は、例えばキーボード及びポインティングデバイス等の、マスタ2を操作するユーザからの操作信号を入力するための一つ以上の入力デバイスを備える。制御部11は、入力部14を通じて入力される操作信号に従って、動作する。
【0027】
図2Bに示すクライアント3は、制御部31と、通信部32と、表示部33と、入力部34と、記憶部35とを備える。制御部31は、CPU41及びメモリ42を備える。プロセッサとしてのCPU41は、記憶部35が記憶するコンピュータプログラムに従う処理を実行する。
【0028】
記憶部35には、副管理プログラム35aが記憶される。副管理プログラム35aは、クライアント3により実現されるべき管理中継機能をCPU41に実現させるためのコンピュータプログラムである。以下において説明される制御部31を主体とした処理は、CPU41がコンピュータプログラムに従って実行する処理により実現されると理解されてよい。
【0029】
管理中継機能は、マスタ2の管理機能に関連する機能であり、マスタ2による第1種端末装置4の管理を中継(または仲介)する。マスタ2は、自身が存在する拠点とは別の拠点における第1種端末装置4を、当該別の拠点に設けられたクライアント3の管理中継機能を利用して管理する。すなわち、クライアント3と同一のローカルエリアネットワークに接続された第1種端末装置4(図1の例においては例えば第2拠点における2つの第1種端末装置4のそれぞれ)は、当該クライアント3が有する管理中継機能によって、当該クライアント3の仲介を受けて間接的にマスタ2に管理される。クライアント3と同一のローカルエリアネットワークに接続された第1種端末装置4、即ちクライアント3による管理中継機能の実行対象である第1種端末装置4のことを、「管理中継対象」と称する。
【0030】
通信部32は、当該クライアント3が存在する拠点のローカルエリアネットワークに接続され、更には、広域ネットワークに接続される。通信部32は、図示しないルータを介して広域ネットワークに接続されてもよい。表示部33は、例えば液晶ディスプレイを含み、クライアント3を操作するユーザ向けの各種画面を表示するように構成される。入力部34は、クライアント3を操作するユーザからの操作信号を入力するための一つ以上の入力デバイスを備える。制御部31は、入力部34を通じて入力される操作信号に従って、動作する。
【0031】
図2Cに示す第1種端末装置4は、制御部51と、通信部52と、表示部53と、入力部54とを備える。第1種端末装置4がディジタル複合機であるとき、第1種端末装置4は更に、印刷部55と、読取部56とを備えることができる。第1種端末装置4は、印刷部55及び読取部56のうちのどちらか一方のみを備えていてもよい。
【0032】
制御部51は、CPU61と、メモリ62とを備える。メモリ62は、RAMの他、例えばフラッシュメモリ等の不揮発性メモリを備えることができ、不揮発性メモリに、コンピュータプログラム及び設定データ等を記憶することができる。
【0033】
プロセッサとしてのCPU61は、メモリ62に記憶されたコンピュータプログラムに従う処理を実行することにより、第1種端末装置全体を統括制御する。以下において説明される制御部51を主体とした処理は、CPU61がコンピュータプログラムに従って実行する処理により実現されると理解されてよい。
【0034】
通信部52は、当該第1種端末装置4が存在する拠点のローカルエリアネットワークに、そこに存在するマスタ2又はクライアント3と通信可能であるように接続される。表示部53は、例えば液晶ディスプレイを含み、第1種端末装置4を操作するユーザ向けの各種画面を表示するように構成される。入力部54は、ユーザからの操作信号を入力するために、例えば液晶ディスプレイ上のタッチパネル等の一つ以上の入力デバイスを備える。
【0035】
印刷部55は、制御部51に制御されて、シートに画像を印刷するように構成される。印刷部55の例には、インクジェットプリンタ及びレーザプリンタが含まれる。本実施形態によれば、色材の残量等のステータス情報や印刷枚数等のログ情報が、後述する方法で、第1種端末装置4からクライアント3及びクラウドサーバ6を通じてマスタ2に提供される。読取部56は、制御部51に制御されて、印刷物等の読取対象を読み取るように構成される。
【0036】
図3Aに示す第2種端末装置5は、制御部71と、通信部72と、表示部73と、入力部74とを備える。第2種端末装置5がディジタル複合機であるとき、第2種端末装置5は更に、印刷部75と、読取部76とを備えることができる。第2種端末装置5は、印刷部75及び読取部76のうちのどちらか一方のみを備えていてもよい。
【0037】
制御部71は、CPU81と、メモリ82とを備える。メモリ82は、フラッシュメモリなどの不揮発性メモリを備えることができ、不揮発性メモリに、コンピュータプログラムや設定データ等を記憶することができる。
【0038】
プロセッサとしてのCPU81は、メモリ82に記憶されたコンピュータプログラムに従う処理を実行することにより、装置全体を統括制御する。メモリ82には、通信プログラム82aが記憶される。通信プログラム82aは、クラウドサーバ6によって提供されるクラウドサービスを利用するためのプログラムである。以下において説明される制御部71を主体とした処理は、CPU81がコンピュータプログラムに従って実行する処理により実現されると理解されてよい。
【0039】
通信部72は、クラウドサーバ6と通信可能であるように、広域ネットワークに接続される。第3拠点にローカルエリアネットワークが構築されている場合、通信部72は、そのローカルエリアネットワークを介して広域ネットワークに接続されてもよい。表示部73は、例えば液晶ディスプレイを含む。入力部74は、ユーザからの操作信号を入力するための一つ以上の入力デバイスを備える。
【0040】
印刷部75は、制御部71に制御されて、シートに画像を印刷するように構成される。本実施形態によれば、色材の残量等のステータス情報や印刷枚数等のログ情報が、後述する方法で、第2種端末装置5からクラウドサーバ6を通じてマスタ2に提供される。読取部76は、制御部71に制御されて、印刷物等の読取対象を読み取るように構成される。
【0041】
図3Bに示すクラウドサーバ6は、制御部91と、通信部92と、第1ストレージ93と、第2ストレージ94とを備える。制御部91は、CPU101と、メモリ102とを備える。
【0042】
プロセッサとしてのCPU101は、メモリ102が記憶するコンピュータプログラムに従う処理を実行する。CPU101が実行する処理には、当該クラウドサーバ6をクラウドストレージとして機能させるための処理が含まれる。以下において説明される制御部91を主体とした処理は、CPU101がコンピュータプログラムに従って実行する処理により実現されると理解されてよい。
【0043】
上記クラウドストレージは、テーブルストレージ及びオブジェクトストレージを含む。制御部91による上記処理の実行により、第1ストレージ93は、テーブルストレージとして機能し、第2ストレージ94は、オブジェクトストレージとして機能する。
【0044】
例示的な第1ストレージ93は、NoSQLデータストアとして機能し、スキーマレスのエンティティの一群を構成要素とする各種のテーブル(例えば後述する図5A図5B参照)を格納可能に構成される。即ち、第1ストレージ93は、データベースの一種であり、データベースが書き込まれる。
【0045】
第1ストレージ93において、テーブルにおける各エンティティは、プロパティのセットで構成される。各プロパティは、キー及び値(すなわちバリュー)のペアで構成される。マスタ2、クライアント3及び第2種端末装置5は、例えば、エンティティ及びキーを指定することにより、第1ストレージ93内のテーブルにおける所望のデータにアクセスして当該データを読み出したり、テーブルにおける所望のデータを更新したりすることができる。
【0046】
なお、エンティティは、リレーショナルデータベースにおけるレコードの位置づけに類似するものと捉えることができる。プロパティは、リレーショナルデータベースにおけるカラム(またはフィールド)の位置づけに類似するものと捉えることができる。プロパティにおけるキーは、リレーショナルデータベースにおける項目名(または見出し)の位置づけに類似するものと捉えることができる。値(バリュー)は、リレーショナルデータベースにおけるフィールドの位置づけに類似するものと捉えることができる。
【0047】
例示的な第2ストレージ94は、外部からオブジェクトを読込及び書込可能なオブジェクトストレージとして機能する。オブジェクトは、例えば、任意のテキストファイル及び/またはバイナルファイルを含む。つまり、第2ストレージ94は、ファイルが格納されるファイルストレージであると言える。第2ストレージ94に対するオブジェクトの読込及び書込は、例えばHTTP/HTTPSプロトコルを用いて行われる。マスタ2、クライアント3及び第2種端末装置5は、例えば、ファイル名及びパスを指定することにより、第2ストレージ94に格納された所望のファイルにアクセス(例えば読込s)することができる。
【0048】
上述したテーブルストレージ及びオブジェクトストレージを提供するクラウドサービスとしては、マイクロソフト社のAzure(登録商標)が知られている。クラウドサーバ6は、このようなクラウドサービスと同様に動作し得る。例えば、第1ストレージ93は、AzureにおけるAzure Table Storageであってもよく、第2ストレージ94は、AzureにおけるAzure Blob Storageであってもよい。
【0049】
(1-3)シーケンス概略
続いて、管理に関する動作シーケンスを、図4を用いて概略的に説明する。準備段階では、マスタ2に主管理プログラム15aがインストーラによりインストールされる。主管理プログラム15aのインストーラと副管理プログラム35aのインストーラは、互いに別々に用意されてもよいが、本実施形態では、共通の1つのインストーラ(以下、「共通インストーラ」と称する。本開示におけるインストールプログラムの一例に相当。)が、主管理プログラム15a及び副管理プログラム35aのうちのいずれか一方を択一的にインストールする。共通インストーラは、起動後、イニシャルファイルを参照して、主管理プログラム15a及び副管理プログラム35aのうちどちらをインストールすべきかを決定する。
【0050】
イニシャルファイルは、例えば二種類ある。具体的には、主管理プログラム15aに対応したマスタイニシャルファイルと、副管理プログラム35aに対応したクライアントイニシャルファイルとが存在し得る。マスタイニシャルファイルの一例を図6Aに示す。クライアントイニシャルファイルの一例を図6Bに示す。
【0051】
マスタイニシャルファイルはどこでどのように生成されてもよい。マスタイニシャルファイルは、例えば、マスタ2のユーザである主管理者による、マスタ2の入力部14に対する入力操作に従って、例えばテキストエディタ等によって生成されてもよい。
【0052】
クライアントイニシャルファイルは、本実施形態では、後述するように、主管理プログラム15aに基づいて自動的に生成される。なお、クライアントイニシャルファイルも、マスタイニシャルファイルと同様にユーザによる入力操作に従って生成されてもよい。
【0053】
図6Aに例示するマスタイニシャルファイルにおいて、符号A1は、動作モードを示す。動作モードは、当該イニシャルファイルがマスタ用又はクライアント用のどちらであるかを規定する。換言すれば、動作モードは、当該イニシャルファイルに従って主管理プログラム15aまたは副管理プログラム35aのどちらがインストールされるべきかを規定する。図6Aの例では、動作モードはマスタ用であることを示す。動作モードは、本開示における機能情報の一例に相当する。なお、クライアントイニシャルファイルにおいても、図6Bに符号B1で示すように動作モードが設定される。図6Bは、動作モードがクライアント用であることを示している。
【0054】
符号A2は、第1ポーリング周期を示す。図6Aでは、第1ポーリング周期が例えば1分である例が示されている。第1ポーリング周期は、後述するインスタントタスクの要求後にマスタ2がインスタントタスクの実行状況をポーリングにより確認する際の周期として用いられる(図4のS18,S23,S24参照)。第1ポーリング周期は、本開示における第1の取得タイミングの一例に相当する。
【0055】
共通インストーラを用いて主管理プログラム15aをインストールするために、共通インストーラが、インストール処理の実行時にマスタイニシャルファイルを参照できるようにする。例えば、共通インストーラとマスタイニシャルファイルとを同じフォルダに格納した状態で共通インストーラを起動させてもよい。これにより、共通インストーラは、起動後、同じフォルダにあるマスタイニシャルファイルを参照しながらインストール処理を進める。
【0056】
共通インストーラによるインストール処理について、図7を参照して説明する。記憶部15に共通インストーラが格納されたマスタ2において、制御部11は、例えば主管理者による入力操作によって共通インストーラの実行指示を受けると、共通インストーラに従ってインストール処理を開始する。
【0057】
制御部11は、インストール処理を開始すると、S110で、イニシャルファイルを取得する。S120では、S110で取得されたイニシャルファイルにおいて設定されている動作モードを判別する。具体的には、動作モードがマスタ用またはクライアント用のどちらを示しているかを判別する。
【0058】
動作モードがマスタ用を示している場合(例えば図6Aの例)、S130に移行する。動作モードがマスタ用を示しているということは、当該イニシャルファイルがマスタイニシャルファイルであることを意味する。よって、S130では、マスタイニシャルファイルを用いて主管理プログラム15aをインストールする。
【0059】
S120で、動作モードがクライアント用を示している場合(例えば図6Bの例)、S140に移行する。動作モードがクライアント用を示しているということは、当該イニシャルファイルがクライアントイニシャルファイルであることを意味する。よって、S140では、クライアントイニシャルファイルを用いて副管理プログラム35aをインストールする。
【0060】
マスタ2に主管理プログラム15aがインストールされると、主管理プログラム15aに従う処理が、マスタ2の制御部11により実行される。つまり、マスタ2が、管理機能を有するようになる。
【0061】
主管理プログラム15aに従う処理は、クラウドプロファイルを設定する処理(S01)を含む。クラウドプロファイルの設定(S01)は、例えば、主管理者による、入力部14を通じた設定操作に従って行われる。
【0062】
クラウドプロファイルの設定(S01)は、クラウドパラメータを設定することを含む。クラウドパラメータは、初期設定パラメータを含む。クライアント3及び第2種端末装置5においては、後述するように、クラウドサーバ6に対するポーリング動作、及びクラウドサーバ6に保持される情報の更新動作が実行される。このポーリング動作は、後述するインスタントタスクの有無を周期的に確認する動作である。情報更新動作は、後述するスケジュールタスクに含まれる。
【0063】
初期設定パラメータは、例えば、ポーリング動作の周期(以下、「第2ポーリング周期」と称する)、及び情報更新動作の周期(以下、「情報更新周期」と称する)を含む。第2ポーリング周期は、本開示における第2の取得タイミングの一例に相当する。第2ポーリング周期は、本実施形態では例えば、図6Bにおいて符号B7で例示するように1分である。情報更新周期は、更新すべき情報の種類に応じて複数種類設定されてもよい。本実施形態では、情報更新周期として、例えば図6Bに符号B4,B5,B6で例示する3種類が設定されている。
【0064】
クラウドパラメータは、さらに、スケジュールタスクテンプレートを含んでいてもよい。スケジュールタスクテンプレートには、各端末装置4,5が後述するスケジュールタスクとして具体的にどのような処理を実行すべきかが規定されている。前述の情報更新周期は、スケジュールタスクにおける1つ以上の処理(タスク)の実行周期に対応する。スケジュールタスクテンプレートは、後述するスケジュールタスクテーブル(図5A参照)と同様の形式のテーブルであってスケジュールタスクテーブルの初期設定データを示すものであってもよい。スケジュールタスクテンプレートは、本開示における指定情報の一例に相当する。
【0065】
スケジュールタスクテンプレートとスケジュールタスクテーブルとはそれぞれ個別に存在する。即ち、第1ストレージ93において、スケジュールタスクテンプレートは第1の記憶領域に書き込まれ、スケジュールタスクテーブルは、第1の記憶領域とは異なる第2の記憶領域に書き込まれる。
【0066】
クラウドプロファイルの設定(S01)は、さらに、クラウドサービスを利用するための共有アクセス署名(SAS:Shared Access Signature)を設定することを含む。
【0067】
SASは、第1ストレージ93及び第2ストレージ94のそれぞれ、すなわち、テーブルストレージ及びオブジェクトストレージのそれぞれに対して個別に設定されている。マスタ2におけるクラウドプロファイルの設定(S01)では、主管理者は、マスタ2から第1ストレージ93及び第2ストレージ94にアクセスできるように、第1ストレージ93及び第2ストレージ94のそれぞれに設定されているSASを、クラウドプロファイルの一部として設定する。
【0068】
なお、マスタ2における主管理プログラム15aのインストール時においても、同じSASが設定される。マスタ2がクラウドサーバ6へアクセスする際は、マスタ2に設定されているSASがクラウドサーバ6へ送信される。そして、送信されたSASが、クラウドサーバ6において設定されている当該アクセス先のSASと一致することに応じて、アクセス先との通信(データの読み書き)が可能となる。
【0069】
続いて、主管理者の操作に従い、設定されたクラウドプロファイルに従うクラウドパラメータが、マスタ2からクラウドサーバ6の第1ストレージ93にアップロードされ(S02)、第1ストレージ93に書き込まれる(S03)。第2ポーリング周期及び情報更新周期を含む初期設定パラメータは、テーブルのエンティティとして、第1ストレージ93に書き込まれる。スケジュールタスクテンプレートにおける各処理も、テーブルのエンティティとして、第1ストレージ93に書き込まれる。
【0070】
更に、クラウドプロファイルの少なくとも一部が、クライアントプロファイル、即ちクライアント3での読込用データとして、マスタ2からエクスポートされる(S04)。クライアントプロファイルは、図6Bに例示する前述のクライアントイニシャルファイルに対応する。クライアントプロファイルは、例えば、上述の初期設定パラメータ、スケジュールタスクテンプレート及びSASのうち少なくとも1つを含んでいてもよい。クライアントプロファイルは、例えば、少なくともSASを含んでいてもよい。クライアントプロファイルは本開示におけるプロファイルの一例に相当する。
【0071】
図6Bに例示するクライアントプロファイルにおいて、符号B2は第2ストレージ94にアクセスするためのSASを示し、符号B3は第1ストレージ93にアクセスするためのSASを示す。符号B4~B7については前述の通りである。符号B1は、動作モードを示す。
【0072】
即ち、クライアントプロファイルにおいても、マスタイニシャルファイルと同様、動作モードが設定される。クライアントプロファイルにおいては、図6Bにおいて符号B1で例示されているように、動作モードはクライアントイニシャルファイルに設定される。
【0073】
マスタ2によってエクスポートされたクライアントプロファイルは、クライアント3に提供される。クライアントプロファイルは、どのような方法でクライアント3に提供されてもよい。例えば、マスタ2からクライアント3へ、電子メールその他の方法でクライアントプロファイルが送信されてもよい。また例えば、主管理者により、クライアント3のユーザである副管理者にクライアントプロファイルが提供されてもよい。より具体的には、例えば、主管理者が、自身の所持する情報処理端末にクライアントプロファイルを格納し、そのクライアントプロファイルを、副管理者が所持する別の情報処理端末へ送信することにより、副管理者がその別の情報処理端末からクライアント3へクライアントプロファイルを転送できるようにしてもよい。主管理者は、自身の情報処理端末からクライアント3へクライアントプロファイルを送信してもよい。また例えば、主管理者は、クライアントプロファイルを所定のストレージに格納し、そのストレージを副管理者へ提供することにより、副管理者がそのストレージからクライアント3へクライアントプロファイルを転送できるようにしてもよい。
【0074】
副管理者は、クライアント3を操作し、共通インストーラを起動させて、クライアント3に副管理プログラム35aをインストールする(S05)。共通インストーラを用いて副管理プログラム35aをインストールするために、インストール処理の実行時に、マスタ2でエクスポートされたクライアントプロファイルを共通インストーラにインポートさせる(S06)。例えば、共通インストーラとクライアントプロファイルとをクライアント3における同じフォルダに格納した状態で共通インストーラを起動させてもよい。
【0075】
これにより、共通インストーラは、起動後、同じフォルダにあるクライアントプロファイルをインポートしながらインストール処理を進める(S05,S06)。その際、共通インストーラは、動作モードがクライアントイニシャルファイルであることに従い、副管理プログラム35aをインストールすべきと判断し、副管理プログラム35aをインストールする。
【0076】
副管理プログラム35aのインストールにおいては、共通インストーラは、クライアントプロファイルをインポートする。即ち、クライアントプロファイルで設定されている各種データを適宜クライアント3に設定する。例えば、クライアントプロファイルに設定されているSAS、第2ポーリング周期及び情報更新周期などがインポートされてクライアント3に設定される。前述のスケジュールタスクテンプレートがインポートされてもよい。
【0077】
上記のように副管理プログラム35aがインストールされ且つクライアントプロファイルが設定されることにより、クライアント3は、クラウドサーバ6を利用可能となる。これにより、クライアント3は、クラウドサーバ6を介してマスタ2と情報伝達可能に構成される。具体的には、クライアント3は、前述の管理中継機能、即ち、マスタ2から第1種端末装置4へのタスクの実行指示及び第1種端末装置4からマスタ2へのログ情報及びステータス情報の伝達などの、マスタ2と第1種端末装置4との間の中継動作を、クラウドサーバ6を介して実行可能に構成される。
【0078】
一方、第2種端末装置5には、第2種端末装置5の管理者である装置管理者による入力操作により、SASが登録される(S07)。第2種端末装置5に対するSASの登録は、例えば、第2種端末装置5の入力部74を介して行われてもよい。また例えば、第2種端末装置5とは別の情報処理装置から第2種端末装置5へSASを登録できてもよい。具体的には、第2種端末装置5に所定のWEBサーバが内蔵されていてもよい。そして、第2種端末装置5とは別の情報処理装置から当該WEBサーバへアクセスし、情報処理装置におけるユーザインタフェースを介してSASを入力してWEBサーバへ送信することにより、第2種端末装置5へSASを登録できてもよい。
【0079】
SASの登録された第2種端末装置5の制御部71は、通信プログラム82aに従う処理を実行する。通信プログラム82aに従う処理を実行している制御部71のことを、以下、「クラウドコネクタ」と称する。クラウドコネクタは、SASを用いてクラウドサーバ6の第1ストレージ93にアクセスし、マスタ2により書き込まれたクラウドパラメータを参照する(S08)。クラウドコネクタは、このクラウドパラメータを取得して自装置に設定する(S08)。
【0080】
なお、クラウドコネクタがクラウドサーバ6へアクセスする際は、クラウドコネクタにおいて設定されている、当該アクセス先のSASが、クラウドサーバ6へ送信される。そして、送信されたSASが、クラウドサーバ6において設定されている当該アクセス先のSASと一致することに応じて、アクセス先との通信(データの読み書き)が可能となる。
【0081】
上述のクラウドパラメータ及びSASの設定を含む、クライアント3及び第2種端末装置5(クラウドコネクタ)の初期設定(S05~S08)が完了すると、クライアント3及び第2種端末装置5では、設定された情報更新周期に従って、定期的に、クラウドサーバ6の第1ストレージ93内に格納された情報を更新するスケジュールタスクが実行される(S09,S10)。スケジュールタスクは、本開示における第2のタスクの一例に相当する。
【0082】
クラウドコネクタによるスケジュールタスク(S09)は、対応するデバイス情報が第1ストレージ93に未登録である場合にはまずデバイス情報を第1ストレージ93に登録することから始まる。クラウドコネクタに対応するデバイス情報とは、当該クラウドコネクタが実装された第2種端末装置5を示す所定の情報である。
【0083】
クライアント3によるスケジュールタスク(S10)は、管理対象の第1種端末装置4のうち対応するデバイス情報が第1ストレージ93に未登録である第1種端末装置4が存在している場合にはまずその第1種端末装置4のデバイス情報を第1ストレージ93に登録することから始まる。第1種端末装置4のデバイス情報とは、当該第1種端末装置4を示す所定の情報である。
【0084】
第1ストレージ93は、テーブルの一つとして、図5Aに例示するスケジュールタスクテーブルを備える。スケジュールタスクテーブルは、1つ以上のエンティティの一群を含む。1つのエンティティは複数のプロパティを含む。本実施形態では、複数のプロパティは、例えば、図5Aに示すように、第1キー、第2キー、リクエストパラメータ、レスポンスパラメータ、通知元、進捗状況、及びデバイスIDを含む。
【0085】
スケジュールタスクテーブルは、端末装置4,5のそれぞれについて個別に、「ログ」「ステータス」「登録」に関する3つのエンティティを備える。つまり、本実施形態では、管理対象の端末装置4,5毎の個別のスケジュールタスクテーブル(以下、「個別テーブル」と称する)を有し、スケジュールタスクテーブルはこれら個別テーブルの集合体であると見なせる。個別テーブルはそれぞれ、対応する端末装置の「ログ」「ステータス」「登録」それぞれに関する3つのエンティティを備える。
【0086】
エンティティ内の情報は、対応する端末装置が第1種端末装置4である場合は、当該第1種端末装置4を管理するクライアント3によって更新される(S10)。エンティティ内の情報は、対応する端末装置が第2種端末装置5である場合は、当該第2種端末装置5のクラウドコネクタによって更新される(S09)。
【0087】
図5Aに例示するスケジュールタスクテーブルにおいて、エンティティ内の「通知元」のプロパティは、エンティティの更新者を示す。エンティティがクライアント3により更新されるとき、当該エンティティにおける「通知元」のプロパティは、値「クライアント」に更新される。エンティティがクラウドコネクタにより更新されるとき、当該エンティティにおける「通知元」のプロパティは、値「デバイス」に更新される。
【0088】
「ログ」に関するエンティティは、第1キーの値「ログ」を有するログエンティティであり、第2キーの値として記載されるデバイスIDに対応する管理対象の端末装置のログ情報を、レスポンスパラメータに記述する。デバイスIDは、端末装置4,5のそれぞれにユニークなIDである。
【0089】
ログ情報は、対応する端末装置がプリンタ又はディジタル複合機であるとき、対応する端末装置の総印刷枚数の情報を含み得る。ログ情報は、印刷履歴として、印刷ジョブ毎に、印刷指令元のユーザ及び印刷枚数の情報を含み得る。なお、管理すべきログ情報が複数種類存在していて、複数種類のログ情報(本開示における指定された種類の端末データの一例に相当)のそれぞれに対応した複数のログエンティティが存在していてもよい。
【0090】
図5Aに例示されるように、レスポンスパラメータは、例えばJSONデータを含むことができる。例えば、ログ情報は、対応するパラメータの管理情報ベース(MIB)で用いられるオブジェクト識別子(OID)と、その値とを関連付けるようにして、JSON形式で記述され得る。図5Aの下段における、”x.x.x.x.x・・・・・・・・・・・”、”y.y.y.y.y・・・・・・・・・・”との記載は、オブジェクト識別子を例示的に抽象表現したものである。
【0091】
更新される前の初期状態のレスポンスパラメータは、オブジェクト識別子に初期値が関連付けられたリクエストパラメータとして存在し得る。図5Aの例示によれば、OID”y.y.y.y.y・・・・・・・・・・”及びこれに関連付けられた初期値”%MIB(y.y.y.y.y・・・・・・・・・・)%”が、リクエストパラメータとして存在し得る。このリクエストパラメータが示すログ情報が実際に管理対象から取得され、テーブルにおけるレスポンスパラメータの値として記載される。レスポンスパラメータの値は、スケジュールタスク実行毎に更新される。図5Aの下段は、一例として、所定のログ情報が、リクエストパラメータに記載された初期値から値”4”に更新されてレスポンスパラメータの値として記載される例を示している。
【0092】
なお、第1キーにおける他の「ステータス」及び「登録」それぞれにおいても、「ログ」と同様、リクエストパラメータに初期値が設定され、その初期値に対応する実際の値がレスポンスパラメータに書き込まれる。
【0093】
「ステータス」に関するエンティティは、第1キーの値「ステータス」を有するステータスエンティティであり、第2キーの値として記載されるデバイスIDに対応する管理対象の端末装置のステータス情報を、レスポンスパラメータに記述する。
【0094】
ステータス情報は、対応する端末装置がプリンタ又はディジタル複合機であるとき、対応する端末装置の色材の残量情報や紙詰まり等のエラー情報を含み得る。なお、管理すべきステータス情報が複数種類存在していて、複数種類のステータス情報(本開示における指定された種類の端末データの一例に相当)のそれぞれに対応した複数のステータスエンティティが存在していてもよい。ステータスエンティティにおいても、ログエンティティと同様に、レスポンスパラメータは、JSON形式で記述され得る。
【0095】
「登録」に関するエンティティは、第1キーの値「登録」を有する登録エンティティであり、第2キーの値として記載されるデバイスIDに対応する管理対象の端末装置のデバイス情報を、レスポンスパラメータに記述する。レスポンスパラメータには、デバイス情報として、デバイスの基本構成を説明する複数の項目値が記述される。
【0096】
スケジュールタスクテーブルにおいて、第2種端末装置5のクラウドコネクタのエンティティは、当該クラウドコネクタによって更新される(S09)。第1種端末装置4のエンティティは、第1種端末装置4と同一のローカルエリアネットワークに接続されたクライアント3によって更新される(S10)。すなわち、クライアント3によって、クライアント3配下の第1種端末装置4(即ち管理中継対象の第1種端末装置4)毎のエンティティが更新される。第1種端末装置4の登録エンティティには、第1種端末装置4を管理中継対象とするクライアント3の識別情報が、デバイス情報の一部として書き込まれてもよい。
【0097】
クライアント3は、副管理プログラム35aに従う制御部31の処理によって、同一ローカルエリア内における管理中継対象の各第1種端末装置4と通信し、各第1種端末装置4から、デバイス情報の更新に必要な情報を取得する。クライアント3は、取得した情報に基づき、スケジュールタスクテーブルにおける対応する第1種端末装置4の登録エンティティを更新することができる(S10)。
【0098】
クライアント3は、さらに、定期的に、管理中継対象の各第1種端末装置4とローカルエリア内で通信し、対応するログ情報及びステータス情報を取得する。クライアント3は、取得したログ情報及びステータス情報に基づき、クラウドサーバ6の第1ストレージ93内のスケジュールタスクテーブルにおける、対応する第1種端末装置4のログエンティティ及びステータスエンティティを更新することができる(S10)。
【0099】
第2種端末装置5のクラウドコネクタは、定期的にクラウドサーバ6にアクセスし、自己のログ情報及びステータス情報を更新するように第1ストレージ93における自己のログエンティティ及びステータスエンティティを更新することができる(S09)。
【0100】
マスタ2は、クライアント3としての機能を兼ね備える。即ち、マスタ2は、第1拠点の第1種端末装置4に対して、クライアント3として機能すると理解してよい。具体的には、クラウドサーバ6の第1ストレージ93におけるスケジュールタスクテーブルには、第1拠点における第1種端末装置4(以下、「マスタ配下端末装置」と称する)それぞれに対応した、「ログ」「ステータス」「登録」に関する3つのエンティティが生成される。マスタ2は、クライアント3と同様、マスタ配下端末装置から各種情報を取得して、第1ストレージ93のスケジュールタスクテーブルにおける、対応するマスタ配下端末装置それぞれの登録エンティティ、ログエンティティ及びステータスエンティティを更新することができる。
【0101】
マスタ2は、さらに、定期的にクラウドサーバ6にアクセスして、第1ストレージ93のスケジュールタスクテーブルにおける端末装置4,5それぞれのログエンティティ、ステータスエンティティ、及び登録エンティティを参照する(S11)。マスタ2は、これらの参照に基づき、各端末装置4,5のログ情報、ステータス情報、及び、デバイス情報を、記憶部15に記憶する処理を実行することができる(S11)。
【0102】
更に、マスタ2は、入力部14を通じたユーザからの操作信号に従って、表示部13の画面に、上記登録された端末装置4,5のリストを表示したり、端末装置4,5のログ情報及びステータス情報を表示したりすることができる(S11)。このように、管理システム1は、複数拠点で使用される端末装置4,5の状態を、マスタ2の設置された一拠点で遠隔から監視可能に構成される。
【0103】
この他、管理システム1によれば、スケジュールタスク以外の非定期のタスクであるインスタントタスクが、マスタ2からの要求に基づき、要求対象の端末装置4,5により実行される。マスタ2は、第1ストレージ93に、インスタントタスクのエンティティ(以下、「インスタントタスクエンティティ」と称する)を登録することにより、インスタントタスクの実行を、対応する端末装置4,5に要求する(S13)。例えば、1つ以上の端末装置におけるファームウェアの更新が、インスタントタスクの一つとして実現される。インスタントタスクは、本開示における第1のタスクの一例に相当する。
【0104】
マスタ2は、入力部14を通じた主管理者からの操作信号に従って、主管理者からインスタントタスクの実行要求操作を受け付ける(S12)。マスタ2は、主管理者による実行要求操作に従ってインスタントタスクエンティティを示すデータを生成し、そのデータをクラウドサーバ6へ送信することで、該当するインスタントタスクエンティティを第1ストレージ93に登録することができる(S13)。
【0105】
インスタントタスクエンティティは、第1ストレージ93において、例えば、図5Bに例示するインスタントタスクテーブルの形式で登録される。インスタントタスクテーブルは、スケジュールタスクテーブルと同様に、第1キー、第2キー、リクエストパラメータ、レスポンスパラメータ、通知元、進捗状況、及びデバイスIDのプロパティを含むエンティティの一群から構成される。
【0106】
インスタントタスクテーブルにおけるインスタントタスクエンティティは、第1キーの値として、「インスタントタスク」が記載される。インスタントタスクエンティティにおける、第2キーのプロパティは、トランザクションIDを値に有する。トランザクションIDは、同時期に発生するインスタントタスクのそれぞれに対してユニークなIDであり、同時期に発生する複数のインスタントタスクのそれぞれのエンティティを区別するために用いられる。
【0107】
インスタントタスクエンティティにおけるデバイスIDのプロパティには、インスタンスタスクを要求する端末装置のデバイスIDが値として記述される。例えばクライアント3の管理中継対象の第1種端末装置4全てに対してインスタントタスクが要求されるとき、デバイスIDのプロパティには、全ての管理中継対象の第1種端末装置4それぞれのデバイスIDが記述される。
【0108】
インスタントタスクエンティティにおけるリクエストパラメータは、インスタントタスクとして実行すべき処理の内容を説明するデータを値として含む。処理内容は、例えば、JSONデータとして記述される。つまり、インスタントタスクエンティティは、デバイスIDのプロパティに記述されたデバイスIDが示す端末装置に、リクエストパラメータに記述された値が示す処理内容を実行するように要求する。インスタントタスクエンティティにおけるリクエストパラメータは、本開示におけるタスク要求データの一例に相当する。
【0109】
インスタントタスクの実行に所定のファイルが必要な場合、マスタ2は、当該ファイルを第2ストレージ94に格納する(S14)。この場合、リクエストパラメータには、当該ファイルの格納先を示す情報(例えばURL)が記述される。例えば、インスタントタスクが端末装置4,5におけるファームウェアの更新である場合には、マスタ2は、ファームウェアの更新に必要な更新ファイルを、第2ストレージ94に格納する(S14)。この場合、リクエストパラメータには、例えば、ファームウェアの更新ファイルの格納先URLが記述されてもよい。
【0110】
第2種端末装置5のクラウドコネクタは、設定されたポーリング周期で、クラウドサーバ6の第1ストレージ93にアクセスし、自己を対象とするインスタントタスクを検索する(S15)。即ち、クラウドコネクタは、インスタントタスクテーブル内に、自己で実行すべきインスタントタスクの新規エンティティが登録されているか否かを判別する(S15)。
【0111】
新規エンティティが登録されている場合、クラウドコネクタは、第1ストレージ93内のインスタントタスクテーブルにおける、対応するインスタントタスクエンティティの進捗状況のプロパティの値を「要求」から「進行中」に更新することにより、インスタントタスクの要求の受取をマスタ2に伝達する(S15)。
【0112】
インスタントタスクエンティティを登録したマスタ2は、当該インスタントタスクエンティティに対応するインスタントタスクの状況確認を行う(S18)。具体的には、マスタ2は、第1ストレージ93の登録したインスタントタスクテーブルにおけるインスタントタスクエンティティを、例えば第1周期で定期的に参照する(S18)。マスタ2は、定期参照により、進捗状況のプロパティの値が更新されたことに基づいて、インスタントタスクの要求が受け取られたことを確認することができる。
【0113】
第2種端末装置5のクラウドコネクタは、インスタントタスクの実行に際して、インスタントタスクエンティティのリクエストパラメータを参照(取得)する(S15)。クラウドコネクタは、参照したリクエストパラメータに基づき、インスタントタスクの実行に必要なデータファイルが第2ストレージ94内に存在する場合には、リクエストパラメータに記載された格納先情報(例えばURL)に基づいて、第2ストレージ94からデータファイルをダウンロードし(S16)、インスタントタスクを実行する(S15)。
【0114】
第2種端末装置5のクラウドコネクタは、インスタントタスクが終了すると、インスタントタスクテーブルにおける該当するインスタントタスクエンティティを更新する(S17)。具体的には、進捗状況のプロパティの値を「進行中」から「完了」に更新する。さらに、レスポンスパラメータとしてインスタントタスクの処理結果を書き込む。
クライアント3も、第2種端末装置5のクラウドコネクタと同様に、設定されたポーリング周期で、クラウドサーバ6の第1ストレージ93にアクセスし、管理中継対象を対象とするインスタントタスクを検索する(S19)。即ち、クライアント3は、インスタントタスクテーブル内に、自己の管理中継対象の第1種端末装置4に実行させるべきインスタントタスクの新規エンティティが登録されているか否かを判別する(S19)。以下、管理中継対象の第1種端末装置4のうちインスタントタスクテーブルにおいてインスタントタスクの実行対象に設定されている1つ以上の第1種端末装置4(つまりデバイスIDのプロパティにデバイスIDが記述されている1つ以上の第1種端末装置4)のそれぞれを、「インスタントタスク実行対象」と称する。
【0115】
インスタントタスク実行対象に対する新規のインスタントタスクエンティティが登録されている場合、クライアント3は、該当するインスタントタスクエンティティにおける進捗状況のプロパティの値を「要求」から「進行中」に更新する(S19)。クライアント3は更に、リクエストパラメータを参照(取得)し、実行すべき処理内容を認識する(S19)。クライアント3は更に、リクエストパラメータに基づき、必要に応じて第2ストレージ94からインスタントタスクに実行に必要なデータファイルを取得する(S20)。
【0116】
その後、クライアント3は、ローカルエリアネットワークを通じて、インスタントタスク実行対象に、インスタントタスクの実行を指示する(S21)。この際、第2ストレージ94から取得した上記実行に必要なデータファイルを、各インスタントタスク実行対象に転送する(S21)。そして、クライアント3は、インスタントタスク実行対象から、インスタントタスクの実行結果を取得する(S21)。
【0117】
クライアント3は、全てのインスタントタスク実行対象においてインスタントタスクの実行が完了すると、インスタントタスクテーブルにおける該当するインスタントタスク実行対象のインスタントタスクエンティティを更新する(S22)。具体的には、進捗状況のプロパティの値を「進行中」から「完了」に更新する。さらに、レスポンスパラメータとしてインスタントタスクの処理結果を書き込む。このインスタントタスクエンティティの更新により、クライアント3は、クラウドサーバ6の第1ストレージ93を介して、マスタ2に、インスタントタスク実行対象におけるインスタントタスクの実行経過及び処理結果を通知する(S22)。なお、S17及びS22で書き込まれる処理結果、前述のログ情報及びステータス情報はそれぞれ、本開示における端末データの一例に相当する。
【0118】
マスタ2は、状況確認として、第1ストレージ93のインスタントタスクテーブルにおけるインスタントタスクエンティティを参照し、進捗状況のプロパティの値が「完了」に更新されたことを知ることにより、インスタントタスクが完了したことを確認し、処理結果を記憶部15に書き込む(S23)。
【0119】
マスタ2は更に、処理結果を表示部13の画面に表示することができる。マスタ2は、登録したインスタントタスクが、対応する全てのインスタントタスク実行対象で完了したこと、換言すればそのインスタントタスクの実行指示がもはや不要になったことを確認すると(S24)、その不要になったインスタントタスクのインスタントタスクエンティティを、第1ストレージ93から削除する(S25)。さらに、当ギアインスタントタスクに供された第2ストレージ94内のデータファイル(例えばファームウェアの更新ファイル)を削除する(S26)。
【0120】
このように、管理システム1は、クラウドサーバ6の第1ストレージ93におけるインスタントタスクエンティティの登録及び更新により、更には第2ストレージ94を介したデータファイルの転送により、複数拠点で使用される端末装置4,5を、マスタ2の設置された一拠点で遠隔から制御可能に構成される。
【0121】
(1-4)実施形態の効果
以上説明した実施形態の管理システム1では、クラウドサーバ6は、マスタ2及びクライアント3に対して受動的に機能する。即ち、クラウドサーバ6は、自らが能動的に判断処理等を行ってマスタ2やクライアント3へ命令、要求、通知などを行わない。マスタ2及びクライアント3はそれぞれ、必要なデータを自らクラウドサーバ6に書き込む。また、マスタ2及びクライアント3はそれぞれ、クラウドサーバ6にアクセスして自らデータを読み込む。そのため、クラウドサーバ6を簡素且つ低コストで実現できる。換言すれば、簡素且つ低コストのクラウドサーバ6を用いて端末装置4,5を管理できる。そのため、端末装置4,5を簡易的且つ低コストで管理することが可能となる。
【0122】
また、クライアント3及びクラウドコネクタは、周期的なポーリングによって第1ストレージ93にアクセスし、インスタントタスクの有無を確認する。そして、自身を対象とするインスタントタスクが登録されている場合、それを実行する。具体的には、クライアント3は管理中継対象の第1種端末装置4にタスクを実行させ、その結果(例えばログ情報、ステータス情報など)を第1ストレージ93に書き込む。クラウドコネクタは、自身が実装されている第2種端末装置5にタスクを実行させ、その結果を第1ストレージ93に書き込む。そして、マスタ2は、周期的なポーリングによって第1ストレージ93にアクセスし、ログ情報やステータス情報などの各種の端末データを取得する。そのため、マスタ2は管理対象それぞれの状態を適切に管理することができる。
【0123】
また、各種のテーブルは、データベースである第1ストレージ93に書き込まれる一方で、ファイルについては第2ストレージ94に格納される。つまり、記憶させる情報の種類に応じて、記憶させるストレージが使い分けられている。そのため、情報の種類に応じて柔軟且つ効率的にクラウドサーバ6を活用できる。
【0124】
また、本実施形態では、主管理プログラム15a及び副管理プログラム35aがいずれも共通インストーラによってインストールされる。そのため、コンピュータへの主管理プログラム15aまたは副管理プログラム35aのインストールを効率的に行うことができる。
【0125】
なお、本実施形態において、クラウドサーバ6は本開示におけるクラウドストレージの一例に相当する。マスタ2は本開示における第1の通信装置の一例に相当する。クライアント3は本開示における第2の通信装置の一例に相当する。第1種端末装置4は本開示における第1の端末装置の一例に相当する。第2種端末装置5は本開示における第2の通信装置及び第2の端末装置の一例に相当する。より具体的には、第2種端末装置5における、通信プログラム82aに基づいて実現されるクラウドコネクタとしての機能が、本開示における第2の通信装置の機能の一例に相当する。マスタ2の制御部11及びクライアント3の制御部31は本開示におけるコンピュータの一例に相当する。主管理プログラム15a及び副管理プログラム35aは本開示における管理用プログラムの一例に相当する。
【0126】
また、図4において、S13,S14は本開示における第1の書込処理の一例に相当する。S11,S18,S23の処理は本開示における第1の取得処理及び第1のポーリングの一例に相当する。S15,S19の処理(特にインスタントタスクエンティティにおけるリクエストパラメータの取得)は本開示における第2の取得処理及び第2のポーリングの一例に相当する。S09,S10,S17,S22の処理(特にタスクの処理結果を書込むこと)は本開示における第2の書込処理の一例に相当する。S02の処理は本開示における第3の書込処理の一例に相当する。S08の処理は本開示における第3の取得処理の一例に相当する。S04の処理は本開示における生成処理の一例に相当する。S06の処理は本開示におけるインポート処理の一例に相当する。
【0127】
また、図7において、S110の処理は本開示における機能情報取得処理の一例に相当する。S120~S140の処理は本開示におけるインストール処理の一例に相当する。
[2.他の実施形態]
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
【0128】
(2-1)図5Bに例示したインスタントタスクテーブルにおいて、リクエストパラメータとレスポンスパラメータとが共通の1つのプロパティとして統合されていてもよい。つまり、マスタ2からインスタントタスクを指示する際はその処理内容が所定のタスク記述用プロパティに記述され、当該インスタントタスクがクライアント3で実行されたら、その実行結果が、同じタスク記述用プロパティに上書きされてもよい。
【0129】
(2-2)第1ストレージ93は、NoSQLのデータストアに限らない。第1ストレージ93は、例えばリレーショナルデータベースなどの、SQLのデータベースであってもよい。
【0130】
(2-3)第1拠点及び第2拠点の少なくとも一方に、第2種端末装置5が設けられていてもよい。第3拠点に、第2拠点と同様のネットワークシステム、即ちクライアント3及び第1種端末装置4が設けられていてもよい。管理システム1において、第2拠点と同様のネットワークシステムが複数存在していてもよい。
【0131】
(2-4)上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。
【符号の説明】
【0132】
1…管理システム、2…マスタ、3…クライアント、4…端末装置、4…第1種端末装置、5…第2種端末装置、6…クラウドサーバ、11,31,51,71,91…制御部、12,32,52,72,92…通信部、13,33,53,73…表示部、14,34,54,74…入力部、15,35…記憶部、15a…主管理プログラム、35a…副管理プログラム、82a…通信プログラム、93…第1ストレージ、94…第2ストレージ。
図1
図2
図3
図4
図5
図6
図7