情報処理システム、画像形成装置、管理装置、管理方法およびコンピュータプログラム
【課題】画像形成装置の動作設定情報を管理する管理装置のアドレスをユーザが設定することなく、画像形成装置が管理装置のアドレスを自動で取得して、管理装置から動作設定情報を取得することを可能とする情報処理システムを提供する。
【解決手段】画像形成装置101が、構成情報の変更があった場合に、変更があった構成情報を含むコンフィグデータ生成要求を設定値管理サービス310Aに送信する。画像形成装置101が、設定値管理サービス310Aから、コンフィグデータ生成要求が失敗したことを示すエラー通知を受けた場合に、探索パケットをネットワーク106上にマルチキャストして、設定値管理サービスのアドレス情報を保持している画像形成装置を探索する。画像形成装置101が、探索された画像形成装置からの応答に基づいて、当該画像装置を管理している設定値管理サービス宛にコンフィグデータ生成要求を送信する。
【解決手段】画像形成装置101が、構成情報の変更があった場合に、変更があった構成情報を含むコンフィグデータ生成要求を設定値管理サービス310Aに送信する。画像形成装置101が、設定値管理サービス310Aから、コンフィグデータ生成要求が失敗したことを示すエラー通知を受けた場合に、探索パケットをネットワーク106上にマルチキャストして、設定値管理サービスのアドレス情報を保持している画像形成装置を探索する。画像形成装置101が、探索された画像形成装置からの応答に基づいて、当該画像装置を管理している設定値管理サービス宛にコンフィグデータ生成要求を送信する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、画像形成装置、管理装置、管理方法およびコンピュータプログラムに関する。
【背景技術】
【0002】
コンフィグデータを記憶手段に記憶する画像形成装置が提案されている。このコンフィグデータは、画像形成装置の動作を切り替える設定情報(動作設定情報)である。コンフィグデータは、各画像形成装置が備える記憶手段に記憶されているので、全ての画像形成装置のコンフィグデータを変更するためには、画像形成装置の台数分だけコンフィグデータの変更設定を行う必要がある。画像形成装置の台数分だけコンフィグデータの変更設定を行う手間を省くために、ある情報処理装置から複数の画像形成装置に対してコンフィグデータの一括設定を行う技術が提案されている。
【0003】
例えば、特許文献1は、初期設定操作が行われた複数の画像形成装置が、サーバからシステム初期設定情報をダウンロードして、初期設定内容に反映する画像形成システムを開示している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−130838号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1が開示する画像形成システムは、画像形成装置の機種や、画像形成装置が備えるハードウェアオプションなどに依存して値に制約が発生するコンフィグデータを適用することができない。
【0006】
ここで、複数の画像形成装置のコンフィグデータをインターネット上のサーバで管理するクラウドサービスが考えられる。画像形成装置は、クラウドサービスが管理するコンフィグデータをクラウドサービスから取得し、取得したコンフィグデータに基づいて動作する。画像形成装置の出荷時に、画像形成装置内にクラウドサービスの場所を予め記憶させておくことが考えられる。この画像形成装置は、例えば、ネットワークに接続するだけで、自動的にクラウドサービスにアクセスしてコンフィグデータを取得し、動作する。これにより、画像形成装置の初期設置時に行う設定作業の手間をなくすことができる。
【0007】
しかし、画像形成装置が、クラウドサービスではなく、クラウドサービスとは異なる、コンフィグデータを管理するサービス(コンフィグデータ管理サービス)を利用したい場合、コンフィグデータ管理サービスのアドレスを画像形成装置に設定する必要がある。
【0008】
例えば、セキュリティの問題などから、コンフィグデータ管理サービスとして、パブリックなクラウドサービスを利用するのではなく、当該ユーザ専用の環境で提供されているサービスを利用したいユーザは多い。一般的に、このような環境をプライベートクラウドと呼ぶ。プライベートクラウド上でコンフィグデータの管理を行う場合、画像形成装置は、工場出荷時に記憶されているクラウドサービスの場所ではなく、そのユーザ環境のプライベートクラウドに接続する必要がある。従って、画像形成装置は、プライベートクラウドの場所を設定するためのUIを表示し、画像形成装置の初期設置時にユーザがUI上で設定する。
【0009】
しかし、プライベートクラウドで運用するようなユーザは大規模なユーザであり、複数の画像形成装置を保持していることが多い。従って、ユーザが、大量の画像形成装置に対してプライベートクラウドの場所(アドレス)を設定するのは手間である。
【0010】
本発明は、画像形成装置の動作設定情報を管理する管理装置のアドレスをユーザが設定することなく、画像形成装置が上記管理装置のアドレスを自動で取得して、上記管理装置から動作設定情報を取得することを可能とする情報処理システムの提供を目的とする。
【課題を解決するための手段】
【0011】
本発明の一実施形態の情報処理システムは、画像形成装置の動作を切り替える動作設定情報を管理する管理装置と、予め設定された管理単位で前記管理装置に管理される画像形成装置とを備える情報処理システムである。前記画像形成装置は、前記画像形成装置が備える機器の構成情報の変更があるかを判断する構成変更判断手段と、前記構成情報の変更があると判断された場合に、該変更があった構成情報と該画像形成装置に対応する管理単位に関する情報とを含む要求であって、該画像形成装置に対応する動作設定情報の生成を求める動作設定生成要求を、ネットワークを介して前記管理装置に対して送信する要求手段と、前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が成功したと判断して動作設定情報を生成した管理装置から、前記画像形成装置に対応する動作設定情報を取得する取得手段と、前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が失敗したと判断した管理装置からエラー通知を受けるエラー通知受信手段と、前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、管理装置のアドレス情報を保持している画像形成装置を探索し、探索された画像形成装置から、該画像形成装置を管理している管理装置のアドレス情報を取得する探索手段とを備える。前記要求手段は、前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、前記探索手段が取得したアドレス情報に対応する管理装置に対して前記動作設定生成要求を送信する。
【発明の効果】
【0012】
本発明の情報処理装置によれば、画像形成装置のコンフィグデータを管理する管理装置のアドレスを、周辺の画像形成装置から取得することができる。従って、ユーザが、コンフィグデータの取得先の管理装置のアドレスを手作業で入力する手間を省くことが可能となる。例えば、コンフィグデータを一括管理するサーバをプライベートクラウドに設置して運用している環境に、画像形成装置を新規に追加する場合に、この画像形成装置のコンフィグデータを管理する管理装置のアドレスを自動で設定することができる。
【図面の簡単な説明】
【0013】
【図1】本実施形態の全体構成例を示す図である。
【図2】本実施形態の情報処理システムのハードウェア構成の一例である。
【図3】本実施形態の情報処理システムの機能ブロック図の一例である。
【図4】実コンフィグデータの一例を示す図である。
【図5】実機器構成データの一例を示す図である。
【図6】仮想デバイスの一例を示す図である。
【図7】機種別設定値スキーマの一例を示す図である。
【図8】テナント用コンフィグデータの一例を示す図である。
【図9】テナント用コンフィグデータの更新処理を説明する図である。
【図10】仮想コンフィグデータを取得する処理を説明する図である。
【図11】設定値管理サービスアドレス取得処理の例を説明する図である。
【図12】探索パケットと応答パケットの一例を示す図である。
【発明を実施するための形態】
【0014】
以下に、本実施形態の情報処理システムについて説明する。まず、本実施形態において用いる用語の定義を行う。コンフィグデータとは、画像形成装置の動作を切り替えるデータ(動作設定情報)である。例えば、コピージョブの面付けのデフォルト値などが該当する。コピージョブの面付けのデフォルト値が「1 in 1」に設定されていれば、コピーを行った結果、用紙一枚に1ページが印刷される。コピージョブの面付けのデフォルト値が「2 in 1」に設定されていれば、コピーを行った結果、用紙一枚に2ページが印刷される。
【0015】
機器構成データとは、画像形成装置が備える機器の構成を示すデータである。機器構成データは、例えば、画像形成装置がファクスユニットを装着しているかを示す。機器構成データは、画像形成装置の機種を一意に識別するための機種コード、動作しているファームウェアバージョンなどを含む。
【0016】
機種別設定値スキーマとは、画像形成装置が特定の機種で保持するコンフィグデータのスキーマを定義するデータである。スキーマとは、コンフィグデータについての規約や位置づけを定義するデータである。機種別設定値スキーマは、例えば、コンフィグデータ各々の設定値識別子、デフォルト値、値域、データが有効になるための条件を含む。本実施形態においては、機種によって保持するコンフィグデータには差分があり、設定値スキーマを機種別に用意する運用であることを前提とする。
【0017】
仮想デバイスとは、サーバコンピュータ群が保持する実デバイスのデータ群である。具体的には、仮想デバイスは、少なくとも機器構成データ、コンフィグデータを含む。テナントとは、ユーザが画像形成装置の管理を委託する委託者の単位である。テナント識別子とは、テナントを一意に識別するための識別子である。例えば、ある会社が後述する図1に示すユーザ環境100にある画像形成装置101A、101B、101Cの管理を委託した場合を想定する。その場合、ユーザ環境100に対応するテナント識別子が1つ割り当てられ、画像形成装置101A、101B、101Cは、そのテナントに属する画像形成装置であると認識され、管理される。
【0018】
仮想デバイスに含まれるデータと、実デバイスが保持するデータと、テナント専用のデータとを区別するために、以下のように定義する。仮想デバイスに含まれる機器構成データを仮想機器構成データ、コンフィグデータを仮想コンフィグデータと呼ぶ。実デバイスが保持する機器構成データを実機器構成データ、コンフィグデータを実コンフィグデータと呼ぶ。テナント内で共通に利用されるコンフィグデータをテナント用コンフィグデータと呼ぶ。
【0019】
図1は、本実施形態の全体構成例を示す図である。図1に示すシステムは、ユーザ環境100、サービスマン環境110、画像形成装置のベンダ環境120、パブリッククラウド環境130、プライベートクラウド環境140を備える。ユーザ環境100乃至プライベートクラウド環境140は、インターネット104を介して互いに通信する。インターネット104は、公衆回線上のデジタル通信が可能なネットワークである。
【0020】
ユーザ環境100は、画像形成装置のユーザが当該画像形成装置の操作を実行する環境である。ユーザ環境100は、画像形成装置101A、101B、101C、端末装置102Aを備える。画像形成装置101A、101B、101Cは、本実施形態の画像形成装置である。ネットワーク106は、ユーザ環境100においてデジタル通信が可能なネットワークである。画像形成装置101A乃至101Cは、ネットワーク106を介してインターネット104にアクセス可能である。端末装置102Aは、ユーザ環境100のユーザが操作可能なコンピュータである。端末装置102Aも、ネットワーク106を介してインターネット104にアクセス可能である。
【0021】
サービスマン環境110は、サービスマンが端末装置102Bを使って画像形成装置の管理を行う環境である。サービスマン環境110は、端末装置102Bを備える。端末装置102Bは、画像形成装置101A、101B、101Cを管理するサービスマンが操作するコンピュータである。端末装置102Bは、インターネット104にアクセス可能である。
【0022】
画像形成装置のベンダ環境120は、画像形成装置を生産するベンダの管理担当者が、画像形成装置の管理に必要なデータのメンテナンスを行う環境である。画像形成装置のベンダ環境120は、端末装置102Cを備える。端末装置102Cは、画像形成装置のベンダに所属する管理担当者が操作するコンピュータである。端末装置102Cは、インターネット104にアクセス可能である。
【0023】
パブリッククラウド環境130は、画像形成装置のコンフィグデータを管理する設定値管理サービス(図3を参照)を提供する環境である。パブリッククラウド環境130は、複数のテナントに対してサービスを提供する。パブリッククラウド環境130は、サーバコンピュータ群105Aを備える。サーバコンピュータ群105Aは、インターネット104を介してサービスを提供するサーバ群である。サーバコンピュータ群105Aは、例えば、図3に示す設定値管理サービス310Aを提供する。本実施形態において、サーバコンピュータ群105Aが提供する設定値管理サービス310Aは、画像形成装置のコンフィグデータを管理する管理装置として機能する。設定値管理サービス310Aは、予め設定された管理単位であるテナントに対応付けて、画像形成装置を管理する。
【0024】
プライベートクラウド環境140は、パブリッククラウド環境130と同様に,画像形成装置のコンフィグデータを管理する設定値管理サービスを提供する環境である。但しプライベートクラウド環境は、パブリッククラウド環境とは異なり、特定のテナント専用にサービスを提供する環境である。プライベートクラウド環境140は、サーバコンピュータ群105Bを備える。
【0025】
サーバコンピュータ群105Bは、サーバコンピュータ群105Aと同様に、インターネット104を介してサービスを提供するサーバ群である。サーバコンピュータ群105Bは、例えば、図3に示す設定値管理サービス310Bを提供する。本実施形態において、サーバコンピュータ群105Bが設定値管理サービス310Bは、画像形成装置のコンフィグデータを管理する管理装置として機能する。サーバコンピュータ群105Bはサーバコンピュータ群105Aと同様の構成を備える。
【0026】
プライベートクラウド環境140が、インターネット104を介してユーザ環境100と接続される形態を図示したが、プライベートクラウド環境140が、ユーザ環境100に設けられていてもよい。また、プライベートクラウド環境140が、サービスマン環境110や画像形成装置のベンダ環境120に設けられていてもよい。なお、以下の説明では、画像形成装置101A、101B、101Cを画像形成装置101とも記述する。また、端末装置102B、102Cを端末装置102とも記述する。
【0027】
図2は、本実施形態の情報処理システムのハードウェア構成の一例を示す図である。サーバコンピュータ群105Aは、サーバコンピュータ210Aとサーバコンピュータ210Bとを備える。サーバコンピュータ210Bは、サーバコンピュータ210Aと同様の構成を備える。サーバコンピュータ210Aとサーバコンピュータ210Bとは、ネットワーク220を通じて通信する。
【0028】
サーバコンピュータ210Aは、内部バス216に接続されたCPU201C乃至ネットワーク通信装置207Cを備える。また、画像形成装置101は、内部バス211Aに接続されたCPU201A乃至209を備える。また、端末装置102は、内部バス211Bに接続されたCPU201B乃至ネットワーク通信装置207Bを備える。
【0029】
以下の説明では、CPU201A、201B、201CをCPU201とも記述する。また、不揮発性メモリ202A、202B、202Cを不揮発性メモリ202とも記述する。また、揮発性メモリ203A、203B、203Cを揮発性メモリ203とも記述する。また、補助記憶装置204A、204B、204Cを補助記憶装置204とも記述する。また、ディスプレイ205A、205Bをディスプレイ205とも記述する。また、入力装置206A、206Bを入力装置206とも記述する。また、ネットワーク通信装置207A、207Bをネットワーク通信装置207とも記述する。また、内部バス211A、211Bを内部バス211とも記述する。
【0030】
CPU(Central Processing Unit)201は、プログラムの実行や、様々な処理の制御を行う。不揮発性メモリ202は、ROM(Read Only Memory)を備える。不揮発性メモリ202には、機器の起動処理において初期段階に必要なプログラムやデータが格納されている。揮発性メモリ203は、RAM(Random Access Memory)を備える。揮発性メモリ203は、プログラム、データの一時的な格納場所として利用される。
【0031】
補助記憶装置204は、ハードディスクやRAMドライブ等の大容量記憶装置である。補助記憶装置204は、大容量データの保管、プログラムの実行コードの保持を行う。補助記憶装置204は、揮発性メモリ203よりも長時間保持する必要があるデータを記憶する。ディスプレイ205は、情報の表示処理を行って、情報を利用者に通知する。なお、本実施形態において、利用者とは、ユーザとサービスマンである。
【0032】
入力装置206は、利用者の選択指示を受け付け、内部バス211を介してプログラムに伝達する。ネットワーク通信装置207は、外部装置とネットワークを介して通信する装置である。ファクスユニット208は、画像形成装置101が形成した画像データか、または補助記憶装置204Aに記憶された画像データを、ネットワーク106を介して外部装置に送信するハードウェアユニットである。ファクスユニット208は、オプションであり、画像形成装置101がファクスユニット208を備えていなくてもよい。プリンタエンジン209は、画像形成装置101が形成した画像データか、または補助記憶装置204Aに記憶された画像データを紙媒体に印刷する。
【0033】
図3は、本実施形態の情報処理システムの機能ブロック図の一例である。図3に示す情報処理システムは、画像形成装置101と、設定値管理サービス310Aと、設定値管理サービス310Bとを備える。画像形成装置101と、設定値管理サービス310Aと、設定値管理サービス310Bとは、インターネット104を介して通信する。なお、設定値管理サービス310Aと、設定値管理サービス310Bとを総称して、設定値管理サービス310とも記述する。本実施形態の管理方法およびコンピュータプログラムは、図3に示す情報処理システムが備える機能によって実現される。
【0034】
画像形成装置101は、実コンフィグデータ保持部301、実コンフィグデータ更新部302、仮想コンフィグデータ受信部303、実機器構成データ収集部304、テナント識別子保持部305、実機器構成データ通知部306を備える。また、画像形成装置101は、設定値管理サービスアドレス設定部307、設定値管理サービスアドレス応答部308を備える。
【0035】
実コンフィグデータ保持部301は、画像形成装置のコンフィグデータを保持する。具体的には、実コンフィグデータ保持部301は、補助記憶装置204Aにコンフィグデータを記憶して管理する。画像形成装置は、実コンフィグデータ保持部301が保持する実コンフィグデータに基づいて、動作の振る舞いを切り替える。
【0036】
実コンフィグデータ更新部302は、実コンフィグデータ保持部301が保持する実コンフィグデータを更新する。具体的には、実コンフィグデータ更新部302は、仮想コンフィグデータ受信部303が取得した仮想コンフィグデータで、実コンフィグデータを更新する。
【0037】
仮想コンフィグデータ受信部303は、設定値管理サービス310Aが備える仮想コンフィグデータ取得部320から、仮想コンフィグデータを取得する。そして、仮想コンフィグデータ受信部303は、仮想コンフィグデータ取得部320が取得した仮想コンフィグデータを仮想コンフィグデータ取得部320から受信する。仮想コンフィグデータ受信部303は、実コンフィグデータ保持部301が保持するコンフィグデータに設定されているアドレスを用いて、仮想コンフィグデータ取得部320を呼び出す。
【0038】
図4は、実コンフィグデータの一例を示す図である。図4(A)は、デバイス識別子が010001である画像形成装置の実コンフィグデータである。図4(B)は、デバイス識別子が010002である画像形成装置の実コンフィグデータである。図4(C)は、デバイス識別子が020001である画像形成装置の実コンフィグデータである。デバイス識別子は、画像形成装置を一意に識別する識別情報である。
【0039】
実コンフィグデータは、設定値識別子702と値703といったデータ項目を有する。設定値識別子702は、設定項目を一意に識別する識別子である。値703は、設定項目の値である。図4に示す例では、”device_settings.cloud_address”の値(アドレス)として、http://ddd.com/configが設定されている。このアドレスは、画像形成装置101に対してコンフィグデータを配信する設定値管理サービスとして設定された設定値管理サービスのアドレスである。従って、上述した仮想コンフィグデータ受信部303は、このアドレスに対してアクセスする。
【0040】
画像形成装置の工場出荷時には、実コンフィグデータに、パブリッククラウド環境の設定値管理サービス310Aのアドレスがアクセス先のアドレスとして設定されている。そして、後述する設定値管理サービスアドレス設定部307の処理によって、このアドレスは、設定値管理サービス310Bのアドレス等に変更される場合がある。
【0041】
なお、仮想コンフィグデータは、図4に示す実コンフィグデータと同様のデータ構成を有する。従って、図4に示す実コンフィグデータを、適宜、仮想コンフィグデータとして説明する。
【0042】
図3に戻って、実機器構成データ収集部304は、画像形成装置101の機器構成データ(実機器構成データ)を収集する。
【0043】
図5は、実機器構成データの一例を示す図である。図5(A)、(B)、(C)は、それぞれ異なる画像形成装置の実機器構成データである。実機器構成データは、データ種別602と値603といったデータ項目を有する。データ種別602は、実機器構成データが含むデータの種別である。データ種別602には、機種を識別するための機種コードや、ファームウェアバージョン、デバイスを識別するためのデバイス識別子等が設定される。値603は、当該データの値である。値603には、データ種別に対応する値(例えば、デバイス識別子の値や、ファクスユニットの有無等)が設定される。なお、仮想機器構成データは、実機器構成データと同様のデータ構成を有する。従って、図5に示す実機器構成データを、適宜、仮想機器構成データとして説明する。
【0044】
テナント識別子保持部305は、画像形成装置101が属するテナントの識別子であるテナント識別子を保持する。テナント識別子は、画像形成装置101の初期設置時に設定され、電源が切られても失われることがないように補助記憶装置204Aに記憶される。
【0045】
実機器構成データ通知部306は、実機器構成データ収集部304が収集した実機器構成データと、テナント識別子保持部305が保持するテナント識別子とを、設定値管理サービス310Aの実機器構成データ受信部318に対して通知する。具体的には、実機器構成データ通知部306は、実機器構成データとテナント識別子とを含むコンフィグデータ生成要求を実機器構成データ受信部318に送信する。コンフィグデータ生成要求は、画像形成装置101に対応する仮想コンフィグデータの生成を求める要求(動作設定生成要求)である。
【0046】
設定値管理サービスアドレス設定部307は、仮想コンフィグデータ取得部320を呼び出すためのアドレスを取得、設定する。画像形成装置101の工場出荷時に実コンフィグデータに予め設定されているアドレスに対する通信がエラーとなった場合に、設定値管理サービスアドレス設定部307は、例えば以下の処理を実行する。この例では、実コンフィグデータに予め設定されているアドレスである”http://ddd.com/config”(図4(A))に対する通信がエラーとなったものとする。
【0047】
設定値管理サービスアドレス設定部307は、画像形成装置101の周辺に設けられた他の画像形成装置から、当該他の画像形成装置のコンフィグデータを管理している設定値管理サービスのアドレスを取得する。具体的には、設定値管理サービスアドレス設定部307は、マルチキャスト方式によってネットワーク上の周辺の画像形成装置に問い合わせて、応答を受け取る。そして、設定値管理サービスアドレス設定部307は、取得したアドレスを、画像形成装置101のアクセス先の設定値管理サービスのアドレス(設定値管理サービスアドレス)として実コンフィグデータに設定する。
【0048】
設定値管理サービスアドレス応答部308は、他の画像形成装置の設定値管理サービスアドレス設定部307からの問い合わせ(後述する探索パケット)を受け付ける。そして、設定値管理サービスアドレス応答部308は、この問い合わせに応じて、実コンフィグデータに設定されているアドレス、すなわち画像形成装置101のアクセス先として設定されているアドレスを応答する処理を行う。
【0049】
設定値管理サービス310Aは、パブリッククラウド環境において画像形成装置のコンフィグデータを管理する管理装置として機能する。前述したように、サーバコンピュータ群105Aが、設定値管理サービス310Aを提供する。設定値管理サービス310Bは、プライベートクラウド環境において画像形成装置のコンフィグデータを管理する管理装置として機能する。また、サーバコンピュータ群105Bが設定値管理サービス310Bを提供する。設定値管理サービス310Bと設定値管理サービス310Aとは、同じ構成を備える。
【0050】
設定値管理サービス310Aは、仮想デバイス保持部311、機種別設定値スキーマ保持部312、機種別設定値スキーマ更新部313、テナント用コンフィグデータ保持部314、テナント用コンフィグデータ更新部315を備える。また、設定値管理サービス310Aは、仮想コンフィグデータ生成部316、仮想コンフィグデータ更新部317、実機器構成データ受信部318、仮想機器構成データ更新部319を備える。また、設定値管理サービス310Aは、仮想コンフィグデータ取得部320、仮想コンフィグデータ閲覧部321、仮想コンフィグデータ更新確認部322を備える。
【0051】
仮想デバイス保持部311は、仮想デバイスを保持する。仮想デバイスは、少なくとも、仮想機器構成データと、仮想コンフィグデータと、仮想デバイスのデバイス識別子と、テナント識別子とを有する。仮想デバイス保持部311は、仮想デバイスを補助記憶装置204Cに記憶して管理する。
【0052】
図6は、仮想デバイスの一例を示す図である。図6に示す仮想デバイスは、デバイス識別子802、テナント識別子803、仮想機器構成データ804、仮想コンフィグデータ805、通知フラグ806を有する。デバイス識別子802は、仮想デバイスを一意に識別する識別情報である。デバイス識別子802は、当該仮想デバイスに対応する画像形成装置101を一意に識別する識別情報に相当する。デバイス識別子802は、画像形成装置101が設定値管理サービス310に対して通知する機器構成データに含まれている。
【0053】
テナント識別子803は、仮想デバイスに対応する画像形成装置101が属するテナントを一意に識別する識別情報である。仮想機器構成データ804は、仮想機器構成データを一意に識別する識別情報である。仮想機器構成データは、仮想デバイスに対応する画像形成装置101の機器構成データ(実機器構成データ)に対応する。仮想コンフィグデータ805は、仮想コンフィグデータを一意に識別する識別情報である。仮想コンフィグデータは、仮想デバイスに対応する画像形成装置101のコンフィグデータ(実コンフィグデータ)に対応する。
【0054】
通知フラグ806は、画像形成装置に対して仮想コンフィグデータ805を通知済み、未通知のいずれであるかを示す。通知フラグ806に設定された「未」は、画像形成装置に対して仮想コンフィグデータ805を未通知であることを示す。通知フラグ806に設定された「済」は、画像形成装置に対して仮想コンフィグデータ805を通知済みであることを示す。
【0055】
図3に戻って、機種別設定値スキーマ保持部312は、機種別設定値スキーマを保持する。画像形成装置の各機種に対応して1つの機種別設定値スキーマが用意される。
【0056】
図7は、機種別設定値スキーマの一例を示す図である。図7(A)は、機種コードが0x01の機種に対応する機種別設定値スキーマである。図7(B)は、機種コードが0x02の機種に対応する機種別設定値スキーマである。機種別設定値スキーマは、設定値識別子402、デフォルト値403、値域404、条件405といったデータ項目を有する。
【0057】
設定値識別子402は、設定項目を一意に識別する識別情報である。例えば、「copy_settings.nup」は、コピー設定の面付けに関する設定項目を示す。設定値識別子402が同じであることは、違う機種であっても設定項目が同じであることを示す。デフォルト値403は、当該機種におけるデフォルト設定値である。値域404は、当該機種において設定し得る範囲の定義である。例えば、「copy_settings.nup」の値域404を参照すると、当該機種において、コピー設定として「1 in 1,2 in 1,4 in 1」の3種類から選択できることを示す。
【0058】
条件405は、当該機種において設定値を利用するために必要な条件の定義である。「fax_settings.received_print」という設定項目に対応する条件405には、「ファクスユニット」が設定されている。従って、この設定項目の設定値は、ファクスユニットの装着が確認できた場合のみ有効となる。
【0059】
図3に戻って、機種別設定値スキーマ更新部313は、機種別設定値スキーマ保持部312が保持する機種別設定値スキーマを更新する。例えば、新しい機種を画像形成装置のベンダが発表した場合には、ベンダの管理責任者の指示によって、新しい機種に対応する機種別設定値スキーマが登録される。また、設定項目に変更があった場合に、機種別設定値スキーマ更新部313は、機種別設定値スキーマを更新する。
【0060】
テナント用コンフィグデータ保持部314は、テナントが画像形成装置に対して設定したいコンフィグデータを保持する。
【0061】
図8は、テナント用コンフィグデータの一例を示す図である。テナント用コンフィグデータは、設定値識別子502と値503といったデータ項目を有する。設定値識別子502は、図7に示す機種別設定値スキーマが含む設定値識別子402と同様である。値503は、テナントが所望する共通設定の値である。「copy_settings.nup」には、「2 in 1」が設定されている。これは、テナントが保持する画像形成装置全てに「2 in 1」が設定されることを所望していることを示す。
【0062】
図3に戻って、テナント用コンフィグデータ更新部315は、テナント用コンフィグデータ保持部314が保持するテナント用コンフィグデータを更新する。テナントが保持する画像形成装置の管理を行うサービスマンの操作に従って、サービスマン環境110にある端末装置102Bが、テナント用コンフィグデータの更新指示を行う。テナント用コンフィグデータ更新部315は、この更新指示に従って、テナント用コンフィグデータを更新する。なお、サービスマンは、端末装置102B内で動作するウェブブラウザに表示される設定画面上で操作する。
【0063】
仮想コンフィグデータ生成部316は、機種別設定値スキーマと、テナント用コンフィグデータと、仮想機器構成データとに基づいて、仮想コンフィグデータを生成する。まず、仮想コンフィグデータ生成部316は、仮想デバイス保持部311から、図5(A)に示す仮想機器構成データを取得する。
【0064】
次に、仮想コンフィグデータ生成部316は、取得した仮想機器構成データが含む機種コードを参照し、画像形成装置の機種を特定する。図5(A)に示す仮想機器構成データを例にとると、機種コードに対応する値として0x01が設定されている。従って、仮想コンフィグデータ生成部316は、画像形成装置の機種として、機種コードが0x01の機種を特定する。
【0065】
次に、仮想コンフィグデータ生成部316は、特定した機種コードに対応する機種別設定値スキーマを、機種別設定値スキーマ保持部312から取得する。仮想コンフィグデータ生成部316は、例えば、機種コードが0x01に合致する、図7(A)に示す機種別設定値スキーマを取得する。
【0066】
次に、仮想コンフィグデータ生成部316は、取得した機種別設定値スキーマに定義された設定値を、仮想コンフィグデータのベースとする。図7(A)に示す機種別設定値スキーマを例にとると、仮想コンフィグデータ生成部316は、「copy_settings.nup」乃至「box_settings.server_address」の5つの設定項目に対応する設定値をベースとする。
【0067】
次に、仮想コンフィグデータ生成部316は、テナント用コンフィグデータ保持部314から、図8に示すテナント用コンフィグデータを取得する。仮想コンフィグデータ生成部314は、テナント用コンフィグデータが含む設定値が、機種別設定値スキーマに定義された値域に収まるかを判断する。
【0068】
図8に示すテナント用コンフィグデータと図7(A)に示す機種別設定値スキーマとを例にとって説明する。テナント用コンフィグデータが含む「copy_settings.nup」という設定項目の値(設定値)は「2 in 1」である。一方、機種別設定値スキーマに定義された、当該設定項目に対応する値域は、「1 in 1,2 in
1,4 in 1」である。従って、テナント用コンフィグデータが含む設定値が、機種別設定値スキーマに定義された値域に収まっている。
【0069】
テナント用コンフィグデータが含む「device_settings.sleep_time」という設定項目の値(設定値)は「10秒」である。一方、機種別設定値スキーマに定義された、当該設定項目に対応する値域は、「1分、10分、1時間」である。従って、テナント用コンフィグデータが含む設定値が、機種別設定値スキーマに定義された値域に収まらない。テナント用コンフィグデータが含む設定値が、機種別設定値スキーマに定義された値域に収まらない場合、仮想コンフィグデータ生成部316は、機種別設定値スキーマに定義されたデフォルト値を取得する。この例では、「10分」というデフォルト値を取得する。仮想コンフィグデータ生成部316は、取得したデフォルト値を、仮想コンフィグデータにおける、当該設定項目の設定値として用いる。
【0070】
テナント用コンフィグデータが含む設定値が、機種別設定値スキーマに定義された値域に収まっている場合、仮想コンフィグデータ生成部316は、テナント用コンフィグデータが含む設定値を、仮想コンフィグデータの当該設定項目に対応する設定値とする。
【0071】
次に、仮想コンフィグデータ生成部316は、仮想機器構成データが、機種別設定値スキーマに定義された条件を満たすかを判断する。図7(A)に示す機種別設定値スキーマを参照すると、「copy_settings.nup」に対応する条件は特にない。従って、図5(A)に示す仮想機器構成データは、「copy_settings.nup」に対応する条件を満たす。
【0072】
しかし、「fax_settings.received_print」に対応する条件は「ファクスユニット」であるのに対し、仮想機器構成データが含む「ファクスユニット」の値として「なし」が設定されている。従って、仮想機器構成データは、当該設定項目に対応する条件を満たさない。
【0073】
仮想機器構成データが機種別設定値スキーマに定義された条件を満たさない場合、仮想コンフィグデータ生成部316は、機種別設定値スキーマに定義されたデフォルト値403を取得する。この例では、仮想コンフィグデータ生成部316は、「fax_settings.received_print」に対応するデフォルト値である「OFF」を取得する。仮想コンフィグデータ生成部316は、取得したデフォルト値を、仮想コンフィグデータにおける、当該設定項目の設定値として用いる。
【0074】
図3に戻って、仮想コンフィグデータ更新部317は、仮想コンフィグデータ生成部316が生成した仮想コンフィグデータで、仮想デバイス保持部311が保持する仮想デバイスが有する仮想コンフィグデータを更新する。
【0075】
具体的には、仮想コンフィグデータ更新部317は、仮想デバイス保持部311が保持する仮想デバイスの中から、生成した仮想コンフィグデータに対応するデバイス識別子を持つ仮想デバイスを取得する。そして、仮想コンフィグデータ更新部317は、取得した仮想デバイスが有する仮想コンフィグデータを、生成した仮想コンフィグデータで更新する。
【0076】
仮想コンフィグデータ更新部317は、さらに、仮想デバイスの通知フラグ806が「済」である場合、「未」に設定する。通知フラグ806が「未」に設定されていることは、画像形成装置に対応する仮想コンフィグデータの変更があり、画像形成装置は新しい仮想コンフィグデータを参照する必要があることを意味する。実機器構成データ受信部318は、画像形成装置101が備える実機器構成データ通知部306から、機器構成データ(図5)と、テナント識別子とを受信する。
【0077】
仮想機器構成データ更新部319は、実機器構成データ受信部318が受信した機器構成データで、仮想デバイス保持部311が保持する仮想デバイスが有する仮想機器構成データを更新する。具体的には、仮想機器構成データ更新部319は、仮想デバイス保持部311が保持する仮想デバイスの中から、実機器構成データ受信部318が受信した機器構成データに設定されたデバイス識別子を持つ仮想デバイスを取得する。そして、仮想機器構成データ更新部319は、取得した仮想デバイスが有する仮想機器構成データを、実機器構成データ受信部318が受信した機器構成データで更新する。
【0078】
仮想コンフィグデータ取得部320は、インターネット104を介して、画像形成装置101が備える仮想コンフィグデータ受信部303から仮想コンフィグデータの取得要求を受け取り、仮想デバイス保持部311から仮想コンフィグデータを取得する。
【0079】
仮想コンフィグデータの取得要求は、少なくとも仮想デバイスを特定するデバイス識別子を含んでいる。従って、仮想コンフィグデータ取得部320は、仮想コンフィグデータの取得要求が含むデバイス識別子を持つ仮想デバイスを探索する。仮想コンフィグデータ取得部320は、探索された仮想デバイスが有する仮想コンフィグデータを取得する。そして、仮想コンフィグデータ取得部320は、インターネット104を介して、取得した仮想コンフィグデータを要求元すなわち仮想コンフィグデータ受信部303に渡す。
【0080】
仮想コンフィグデータ閲覧部321は、インターネット104を介して、外部装置からコンフィグデータの閲覧要求を受ける。コンフィグデータの閲覧要求は、HTTPプロトコル上の要求である。仮想コンフィグデータ閲覧部321は、閲覧要求に対応する仮想コンフィグデータを取得し、取得した仮想コンフィグデータの閲覧用のHTMLページを生成して要求元に返す。
【0081】
仮想コンフィグデータ更新確認部322は、仮想コンフィグデータが更新されているかを確認する。具体的には、画像形成装置101が備える仮想コンフィグデータ受信部303が、インターネット104を介して、仮想コンフィグデータ更新確認部322に対して該画像形成装置101のデバイス識別子を送信する。仮想コンフィグデータ更新確認部322は、仮想デバイス保持部311が保持する仮想デバイスの中から、受信したデバイス識別子に一致する仮想デバイスを探索する。仮想コンフィグデータ更新確認部322は、探索された仮想デバイスの通知フラグ806を参照する。
【0082】
通知フラグ806が「未」である場合、仮想コンフィグデータ更新確認部322は、仮想コンフィグデータの更新があったと判断する。通知フラグ806が「済」である場合、仮想コンフィグデータ更新確認部322は、仮想コンフィグデータの更新はないと判断する。仮想コンフィグデータ更新確認部322は、仮想コンフィグデータが更新されているか否かを仮想コンフィグデータ受信部303に返す。そして、仮想コンフィグデータが更新されていることを確認した仮想コンフィグデータ受信部303が、設定値管理サービス310Aの仮想コンフィグデータ取得部320に対して、コンフィグデータの取得要求を行う。
【0083】
仮想コンフィグデータ更新確認部322が、仮想コンフィグデータ更新部317によって仮想コンフィグデータが更新されたことを契機として、仮想コンフィグデータが更新されているかを確認するようにしてもよい。そして、仮想コンフィグデータ更新確認部322が仮想コンフィグデータが更新されていることを確認した場合に、仮想コンフィグデータ取得部320が、コンフィグデータを取得し、画像形成装置101の仮想コンフィグデータに送信するようにしてもよい。
【0084】
図9は、テナント用コンフィグデータの更新処理を説明するフローチャートの一例である。この例では、管理者ユーザが、端末装置102Aを用いて、テナント用コンフィグデータを更新する。フローチャートの各ステップの処理を実現するプログラムは、不揮発性メモリ202C、揮発性メモリ203C、補助記憶装置204Cのいずれかの記憶手段に記憶され、CPU201Cにより実行される。
【0085】
まず、テナント用コンフィグデータ更新部315が、端末装置102Aから送信された、テナント用コンフィグデータの更新要求を検知する(ステップS901)。次に、テナント用コンフィグデータ更新部315が、テナント用コンフィグデータ保持部314に対して、テナント用コンフィグデータの更新要求に対応するテナント用コンフィグデータが登録済みであるか確認する(ステップS902)。テナント用コンフィグデータの更新要求に対応するテナント用コンフィグデータが登録済みである場合は、ステップS907に進む。テナント用コンフィグデータの更新要求に対応するテナント用コンフィグデータが登録済みでない場合は、ステップS903に進む。
【0086】
ステップS903において、テナント用コンフィグデータ更新部315が、テナントが保持する仮想デバイスを仮想デバイス保持部311から取得する。テナント用コンフィグデータ更新部315が、取得した仮想デバイスが含む仮想機器構成データを取得する。そして、テナント用コンフィグデータ更新部315が、取得した仮想機器構成データが含む機種コードを取得する(ステップS903)。
【0087】
次に、テナント用コンフィグデータ更新部315が、取得した機種コードに対応する機種別設定値スキーマを機種別設定値スキーマ保持部312から取得する(ステップS904)。続いて、テナント用コンフィグデータ更新部315が、ステップS904において取得した機種別設定値スキーマの少なくとも1つが持つ設定項目をリストアップする(ステップS905)。そして、テナント用コンフィグデータ更新部315が、ステップS905においてリストアップした設定項目を持つ、空のテナント用コンフィグデータを生成して(ステップS906)、ステップS907に進む。
【0088】
ステップS907において、テナント用コンフィグデータ更新部315が、テナント用コンフィグデータの具体的な更新指示を検知する(ステップS907)。そして、テナント用コンフィグデータ更新部315が、ステップ907において検知した更新指示に基づいて、テナント用コンフィグデータを更新する(ステップS908)。テナント用コンフィグデータ保持部314は、更新されたテナント用コンフィグデータを記憶する。
【0089】
次に、仮想コンフィグデータ生成部316が、テナント用コンフィグデータが更新されたことを検知する(ステップS909)。そして、仮想コンフィグデータ生成部316が、仮想デバイス保持部311が保持する仮想デバイスから、更新が検知されたテナント用コンフィグデータのテナント識別子に合致する仮想デバイスを探索する。探索された仮想デバイスに対して順次処理を行うため、仮想コンフィグデータ生成部316は、1つの仮想デバイスを取得する。仮想コンフィグデータ生成部316は、仮想デバイスを取得できたかを判断する(ステップS910)。全ての仮想デバイスに対して順次処理が行われ、次の仮想デバイスを取得できない場合には、処理を終了する。仮想コンフィグデータ生成部316が、次の仮想デバイスを取得できた場合は、ステップS911に進む。
【0090】
ステップS911において、仮想コンフィグデータ生成部316が、処理対象の仮想デバイスから仮想機器構成データを取得する(ステップS911)。続いて、仮想コンフィグデータ生成部316が、ステップS911において取得された仮想機器構成データから機種コードを取得する。そして、仮想コンフィグデータ生成部316が、取得した機種コードに対応する機種別設定値スキーマを機種別設定値スキーマ保持部312から取得する(ステップS912)。
【0091】
次に、仮想コンフィグデータ生成部316が、仮想機器構成データと、機種別設定値スキーマと、テナント用コンフィグデータとに基づいて、仮想コンフィグデータを生成する(ステップS913)。そして、仮想コンフィグデータ更新部317が、生成された仮想コンフィグデータを仮想デバイスに登録して(ステップS914)、ステップS910に戻る。ステップS914の処理によって、更新されたテナント用コンフィグデータが仮想コンフィグデータに反映される。
【0092】
図10は、画像形成装置が仮想コンフィグデータを取得する処理を説明するフローチャートの一例である。図10のステップS1001乃至S1010のステップは、画像形成装置において実行される。これらのステップを実行するためのプログラムは、不揮発性メモリ202A、揮発性メモリ203A、補助記憶装置204Aのいずれかの記憶手段に記憶され、CPU201Aにより実行される。また、ステップS1051乃至S1060は、サーバコンピュータ群105において実行される。これらのステップを実行するためのプログラムは、不揮発性メモリ202C、揮発性メモリ203C、補助記憶装置204Cのいずれかの記憶手段に記憶され、CPU201Cにより実行される。
【0093】
まず、画像形成装置101の実機器構成データ通知部306が、画像形成装置101の電源ONを検知する(ステップS1001)。続いて、実機器構成データ収集部304が、実機器構成データを収集する(ステップS1002)。
【0094】
次に、実機器構成データ通知部306が、画像形成装置101が備える機器の構成情報の変更があるかを判断する構成変更判断手段として機能する。具体的には、実機器構成データ通知部306が、ステップ1002で収集した実機器構成データに基づいて、設定値管理サービス310に対して未通知である実機器構成データの変更があるかを判断する(ステップS1003)。未通知である実機器構成データの変更があった場合は、ステップS1005に進む。未通知である実機器構成データの変更がない場合は、ステップS1004に進む。新規デバイス設置時は、ステップS1005に進むことになる。
【0095】
ステップ1004において、仮想コンフィグデータ受信部303が、デバイスが最新の仮想コンフィグデータを取得済みか、すなわち、仮想コンフィグデータが更新されているかを判断する(ステップS1004)。具体的には、仮想コンフィグデータ受信部303は、インターネット104を介して、設定値管理サービス310Aの仮想コンフィグデータ更新確認部322に対して、仮想コンフィグデータが更新されているかを確認する。仮想コンフィグデータ受信部303は、上記確認結果に基づいて、仮想コンフィグデータが更新されているかを判断する。仮想コンフィグデータが更新されていない場合は、処理を終了する。仮想コンフィグデータが更新されている場合は、ステップS1008に進む。
【0096】
ステップ1005において、実機器構成データ通知部306が、インターネット104を介して、実機器構成データとテナント識別子とを含むコンフィグデータ生成要求を設定値管理サービス310に通知する(ステップS1005)。すなわち、実機器構成データ通知部306は、構成情報の変更があると判断した場合に、該変更があった構成情報と画像形成装置に対応する管理単位に関する情報(テナント識別子)とを含むコンフィグデータ生成要求を送信する要求手段として機能する。
【0097】
通知先のアドレスは、実コンフィグデータ保持部301が保持しているアドレスである。なお、このアドレスはデバイスの工場出荷時にはパブリッククラウド環境の設定値管理サービス310Aが提供されているアドレスが設定されているものとする。従って、新規デバイス設置時には、画像形成装置101は、パブリッククラウド環境の設定値管理サービス310Aに通知する。設定値管理サービス310Aは、ステップ1051において、上記通知を検知して処理を行う。設定値管理サービス310Aが実行する処理についての詳細は後述する。
【0098】
次に、実機器構成データ通知部306が、設定値管理サービス310Aからエラー通知を受けたかを判断する(ステップS1006)。すなわち、実機器構成データ通知部306は、コンフィグデータ生成要求の送信先であって、該コンフィグデータ生成要求が失敗したと判断した設定値管理サービス310Aからエラー通知を受けるエラー通知受信手段として機能する。
【0099】
実機器構成データ通知部306が、エラー通知を受けたと判断した場合は、ステップS1010に進む。そして、設定値管理サービスアドレス設定部307が、設定値管理サービスアドレスの取得設定処理を行い(ステップS1010)、ステップS1005に戻る。実機器構成データ通知部306が、改めて実機器構成データとテナント識別子とを設定値管理サービス310に通知する。通知先アドレスは、ステップ1010において取得設定した設定値管理サービスのアドレスである。設定値管理サービスアドレスの取得設定処理の詳細については、図11を参照して後述する。
【0100】
実機器構成データ通知部306が、エラー通知を受けていないと判断した場合は、ステップS1007に進む。そして、仮想コンフィグデータ受信部303が、仮想コンフィグデータの更新が完了するまで処理の実行を待ち合わせる(ステップS1007)。次に、仮想コンフィグデータ受信部303が、設定値管理サービス310から仮想コンフィグデータを取得する。すなわち、仮想コンフィグデータ受信部303は、仮想コンフィグデータを生成(更新)した設定値管理サービス310から、画像形成装置101に対応する動作設定情報を取得する取得手段として機能する。そして、仮想コンフィグデータ更新部317が、取得された仮想コンフィグデータを実コンフィグデータとして更新する(ステップS1008)。実コンフィグデータは、実コンフィグデータ保持部301によって記憶される。
【0101】
ステップ1051において、設定値管理サービス310の実機器構成データ受信部318が、画像形成装置101から実機器構成データとテナント識別子とを含むコンフィグデータ生成要求を受信する要求受け付け手段として機能する(ステップS1051)。
【0102】
次に、仮想機器構成データ更新部319が、ステップ1051において受信したコンフィグデータ生成要求が含むテナント識別子が、設定値管理サービス310が管理しているテナントのテナント識別子かを検索する(ステップS1052)。すなわち、仮想機器構成データ更新部319が、コンフィグデータ生成要求が含むテナント識別子と、予め記憶手段に記憶されたテナント識別子とに基づいて、コンフィグデータ生成要求が成功したかを判断する判断手段として機能する。
【0103】
当該テナント識別子が、設定値管理サービス310が管理しているテナントのテナント識別子である場合、仮想機器構成データ更新部319は、コンフィグデータ生成要求が成功したと判断する。そして、仮想機器構成データ更新部319が、コンフィグデータ生成要求が成功したことを画像形成装置101に応答として返した上で、ステップS1054に進む。
【0104】
本実施形態では、例えば、プライベートクラウド環境の設定値管理サービス310Bを利用しているユーザ環境で画像形成装置101が新規デバイスとして設置された場合を想定する。画像形成装置101は、最初は工場出荷時に設定されているアドレスであるパブリッククラウド環境の設定値管理サービス310Aに通知を行う。しかし、パブリッククラウド環境の設定値管理サービス310Aではこのテナントを管理していない。従って、この場合には、仮想機器構成データ更新部319が、コンフィグデータ生成要求が含むテナント識別子が、設定値管理サービス310が管理しているテナントのテナント識別子でない、すなわち、コンフィグデータ生成要求が失敗したと判断する。そして、処理がステップS1053に進む。
【0105】
ステップS1053において、仮想機器構成データ更新部319が、当該実機器構成データとテナント識別子の通知元の画像形成装置に対してエラー通知を行うエラー通知手段として機能して(ステップS1053)、ステップS1051に戻る。
【0106】
ステップ1054において、仮想機器構成データ更新部319が、以下の処理を実行する。仮想機器構成データ更新部319は、仮想デバイス保持部311が保持する仮想デバイスの中から、ステップ1051で受信したコンフィグデータ生成要求が含む実機器構成データとテナント識別子とに合致する仮想デバイスを検索する(ステップS1054)。
【0107】
合致する仮想デバイスが検索された場合は、ステップS1056に進む。合致する仮想デバイスが検索されなかった場合は、ステップ1055に進む。新規デバイス設置時など、画像形成装置が初めて設定値管理サービス310と通信を行った時には、仮想デバイスを検索できない場合がある。従って、この場合は、ステップS1055に進む。ステップS1055において、仮想機器構成データ更新部319が、空の仮想デバイスを生成して(ステップS1055)、ステップS1056に進む。
【0108】
ステップ1056において、仮想機器構成データ更新部319が、ステップ1054において検索された仮想デバイスの仮想機器構成データを、ステップS1051において受信した実機器構成データで更新する(ステップS1056)。また、仮想機器構成データ更新部319は、ステップS1055において生成された仮想デバイスの仮想機器構成データとして、ステップS1051において受信した実機器構成データを設定する。これにより、画像形成装置101に対応する仮想デバイスが更新される。
【0109】
次に、仮想コンフィグデータ生成部316が、ステップS1056において更新された仮想機器構成データから機種コードを取得する。そして、仮想コンフィグデータ生成部316が、取得した機種コードに該当する機種別設定値スキーマを機種別設定値スキーマ保持部312から取得する(ステップS1057)。
【0110】
次に、仮想コンフィグデータ生成部316が、テナント用コンフィグデータを取得する(ステップS1058)。具体的には、仮想コンフィグデータ生成部316は、テナント用コンフィグデータ保持部314が保持するテナント用コンフィグデータから、ステップS1052において検索されたテナント識別子に対応するテナント用コンフィグデータを取得する。
【0111】
次に、仮想コンフィグデータ生成部316が、仮想機器構成データ、機種別設定値スキーマ、テナント用コンフィグデータに基づいて、仮想コンフィグデータを生成する(ステップS1059)。ステップ1059の処理は、図9のステップS913の処理と同様である。すなわち、仮想コンフィグデータ生成部316は、コンフィグデータ生成要求が成功したと判断された場合に、コンフィグデータ生成要求が含む構成情報に基づいて画像形成装置101に対応するコンフィグデータを生成する生成手段として機能する。
【0112】
次に、仮想コンフィグデータ更新部317が、生成された仮想コンフィグデータを、該当する仮想デバイスに登録、更新する(ステップS1060)。ステップS1060においては、さらに、仮想コンフィグデータ取得部320が、生成された仮想コンフィグデータを画像形成装置101の仮想コンフィグデータ受信部303に対して送信する送信手段として機能する。そして、処理がステップS1051戻る。
【0113】
図11は、図10のステップS1010における設定値管理サービスアドレス取得処理の例を説明するフローチャートである。ステップS1101乃至S1107は、画像形成装置(この例では、画像形成装置101Aとする)で行われるステップである。また、ステップS1150乃至S1153は、ネットワーク106上の、画像形成装置101Aとは異なる他の画像形成装置(画像形成装置101Bとする)で行われるステップである。これらのステップの処理を実行するプログラムは、不揮発性メモリ202A、揮発性メモリ203A、補助記憶装置204Aのいずれかの記憶手段に記憶され、CPU201A
により実行される。
【0114】
なお、画像形成装置101Bは、既にプライベートクラウド環境140の設定値管理サービス310Bによって管理されているものとする。すなわち、画像形成装置101Bの実コンフィグデータ保持部301が保持するアクセス先のアドレスは、プライベートクラウド環境140の設定値管理サービス310Bのアドレスに設定されている。図4(A)に示す例では、設定値識別子「device_settings.cloud_address」の値として、設定値管理サービス310Bのアドレスが設定されている。
【0115】
まず、画像形成装置101Aの設定値管理サービスアドレス設定部307が、設定値管理サービスアドレス保持デバイス探索パケット(以下、探索パケットとも記述)をネットワーク106上にマルチキャストする(ステップS1101)。探索パケットは、設定値管理サービスのアドレス情報を保持している画像形成装置を探索するためのパケットである。具体的には、設定値管理サービスアドレス設定部307は、RFC2608で定義されるSLP(Service Location Protocol)を用いてマルチキャストを行う。
【0116】
図12は、探索パケットと応答パケットの一例を示す図である。図12(A)は、図11のステップS1101においてマルチキャストされる探索パケットの例である。この探索パケットは、SLPフォーマットに従う。すなわち、探索パケットは、符号1201に示すように、検索するサービスタイプとして”service:cloudaddress.ddd”を指定している。また、探索パケットは、符号1201に示すように、SCOPEとして”ddd”を指定している。
【0117】
次に、設定値管理サービスアドレス設定部307が、マルチキャストに対する応答があったか、すなわち、応答パケットを受信したかを判断する(ステップS1102)。マルチキャストに対する応答があった場合は、ステップS1103に進む。
【0118】
図12(B)は、設定値管理サービスアドレス設定部307が受信する応答パケットの例である。応答パケットは、SLPフォーマットに従う。応答パケットは、符号1203に示すように、設定値管理サービスアドレスのURLなどの情報を含むURL Entryを指定している。
【0119】
図11に戻って、設定値管理サービスアドレス設定部307が、応答元の画像形成装置に対して、設定値管理サービスアドレス取得要求をする(ステップS1103)。設定値管理サービスアドレス取得要求は、当該応答元の画像形成装置を管理する設定値管理サービスのアドレスの送信を求める要求である。この例では、応答元の画像形成装置が、画像形成措置101Bであるものとする。
【0120】
次に、設定値管理サービスアドレス設定部307が、応答元の画像形成装置101Bが備える設定値管理サービスアドレス応答部308から、設定値管理サービスアドレスを受信する(ステップS1104)。受信される設定値管理サービスアドレスは、画像形成装置101Bのアクセス先である設定値管理サービス310Bのアドレスである。
【0121】
すなわち、設定値管理サービスアドレス設定部307は、設定値管理サービスのアドレス情報を保持している画像形成装置を探索する探索手段として機能する。そして、設定値管理サービスアドレス設定部307は、探索された画像形成装置から、該画像形成装置を管理している設定値管理サービスのアドレス情報を取得する。
【0122】
設定値管理サービスアドレス設定部307は、画像形成装置101Bから受信したアドレスで、実コンフィグデータ保持部301が保持する実コンフィグデータを更新する(ステップS1105)。これにより、画像形成装置101の実機器構成データ通知部306が、設定値管理サービスアドレスの取得設定処理の後に、以下の処理を実行する。すなわち、実機器構成データ通知部306は、設定値管理サービスアドレス設定部307がS1104において受信した設定値管理サービスアドレスに対応する設定値管理サービスに対してコンフィグデータ生成要求を送信する(図10のステップS1005)。
【0123】
上記ステップS1102において、マルチキャストに対する応答が、例えば予め定めた期間なかった場合は、ステップ1106に進む。そして、設定値管理サービスアドレス設定部307が、設定値管理サービスのアドレスを設定するためのUI画面を画像形成装置101Aのディスプレイ205Aに表示する(ステップS1106)。
【0124】
次に、設定値管理サービスアドレス設定部307が、UI画面上でユーザがアドレスを入力したかを判断する(ステップS1107)。ユーザがアドレスを入力していない場合は、ステップS1107に戻る。ユーザがアドレスを入力した場合は、ステップS1105に進み、設定値管理サービスアドレス設定部307が、入力されたアドレスで実コンフィグデータを更新する。
【0125】
一方、画像形成装置101Bの設定値管理サービスアドレス応答部308が、設定値管理サービスアドレス保持デバイス探索パケットを受信したかを判断する(ステップS1150)。設定値管理サービスアドレス応答部308が、設定値管理サービスアドレス保持デバイス探索パケットを受信していないと判断した場合は、ステップS1150に戻る。設定値管理サービスアドレス応答部308が、設定値管理サービスアドレス保持デバイス探索パケットを受信したと判断した場合は、ステップS1151に進む。この例では、設定値管理サービスアドレス応答部308が、画像形成装置101AがステップS1101においてマルチキャストした設定値管理サービスアドレス保持デバイス探索パケットを受信したものとする。
【0126】
次に、設定値管理サービスアドレス応答部308が、SLPに従った応答パケットを画像形成装置101Aに返す(ステップS1151)。すなわち、設定値管理サービスアドレス応答部308は、探索パケットを受信し、該探索パケットに対する応答として、画像形成装置101Bを管理している設定値管理サービスのアドレス情報を該探索パケットの送信元に対して送信する応答手段として機能する。続いて、設定値管理サービスアドレス応答部308が、画像形成装置101Aから設定値管理サービスアドレス取得要求を受信したかを判断する(ステップS1152)。
【0127】
設定値管理サービスアドレス応答部308が、画像形成装置101Aから設定値管理サービスアドレス取得要求を受信していないと判断した場合は、ステップS1152に戻る。設定値管理サービスアドレス応答部308が、画像形成装置101Aから設定値管理サービスアドレス取得要求を受信したと判断した場合は、ステップS1153に進む。そして、設定値管理サービスアドレス応答部308が、実コンフィグデータ保持部301が保持している実コンフィグデータに設定されている設定値管理サービスアドレスを読み出して、画像形成装置101Aに応答する(ステップS1153)。
【0128】
図11を参照して説明した処理の例では、画像形成装置101Aは、探索パケットに対して応答した画像形成装置101Bに対して、改めて設定値管理サービスのアドレスを問い合わせる(ステップS1103)。しかしながら、画像形成装置101Aが、探索パケットに対する応答として、直接、設定値管理サービスのアドレスを応答してもらうようにしてもよい。
【0129】
また、複数の画像形成装置が稼働している環境においては、画像形成装置101Aがステップ1101においてマルチキャストした探索パケットに対する応答が、複数の画像形成装置から返ってくる場合がある。この場合、画像形成装置101Aの設定値管理サービスアドレス設定部307が、複数の応答から一つの応答を選択し、選択した応答が含むアドレス情報で実コンフィグデータを更新するようにしてもよい。
【0130】
応答の選択方法として、例えば、画像形成装置101Aが、最初に返ってきた応答を選択するようにしてもよいし、ランダムに応答を選択するようにしてもよい。実機器構成データ通知部306は、更新された実コンフィグデータが含むアドレス情報、すなわち選択された応答が含むアドレス情報に対応する設定値管理サービスに対してコンフィグデータ生成要求を送信する。
【0131】
また、画像形成装置101Bが応答を返す際に、直近で設定値管理サービスにアクセスした時刻の情報を一緒に応答するようにしてもよい。つまり、探索パケットに対する応答が、応答元が設定値管理サービスに対して直近にアクセスした時刻の情報であるアクセス時刻情報を含むようにしてもよい。そして、画像形成装置101Aの設定値管理サービスアドレス設定部307は、複数の応答の各々に含まれるアクセス時刻情報に基づいて、一つのアドレス情報を選択するようにしてもよい。例えば、設定値管理サービスアドレス設定部307が、設定値管理サービスにアクセスした時刻が最も最近の画像形成装置からの応答が含むアドレス情報を選択するようにしてもよい。
【0132】
図11を参照して説明した処理によれば、画像形成装置101Aは、画像形成装置101Aのコンフィグデータを管理する設定値管理サービスのアドレスを、周辺の画像形成装置である画像形成装置101Bから取得することができる。
【0133】
なお、前述した図1に示すシステム構成例においては、サービスマンは、サービスマン環境110に配置された端末装置102Bを利用することを想定しているが、本発明が他の構成をとることもできる。例えば、サービスマンがユーザの許可を得て、ユーザ環境100に配置された端末装置102Aを利用するようにしてもよい。
【0134】
また、図2に示すハードウェア構成例においては、サーバコンピュータ群105がサーバコンピュータ210Aとサーバコンピュータ210Bとを備えているが、本発明が他の構成をとることもできる。例えば、サーバコンピュータ群105が、1つのサーバコンピュータ210Aのみによって構成されていてもよい。また、サーバコンピュータ群105が、ユーザ環境100、サービスマン環境110、画像形成装置のベンダ環境120等の中に構成されていてもよい。
【0135】
また、図2に示すハードウェア構成例においては、サーバコンピュータ210Aとサーバコンピュータ210Bとが、ネットワーク220を介して通信を行うが、本発明が他の構成をとることもできる。例えば、サーバコンピュータ210Aとサーバコンピュータ210Bとが、インターネット104を介して通信を行うようにしてもよい。
【0136】
また、図3に示す機能ブロック図においては、実コンフィグデータ保持部301が補助記憶装置204Aに実コンフィグデータを記憶するが、本発明が他の構成をとることもできる。例えば、実コンフィグデータ保持部301が、実コンフィグデータを揮発性メモリ203Aに一時的に記憶するようにしてもよい。実コンフィグデータを揮発性メモリ203Aに一時的に記憶した場合は、電源をOFFにしたときに実コンフィグデータが失われる。従って、この場合には、デバイスの電源をONにする度に、仮想コンフィグデータ受信部303が仮想コンフィグデータを受信する。具体的な処理の流れで示すと、図10のステップ1004で、仮想コンフィグデータの更新判定処理が省略される。
【0137】
また、図3に示す機能ブロック図においては、実機器構成データ収集部304は、画像形成装置の電源をONにする度に実機器構成データの収集を行うが、本発明が他の構成をとるようにしてもよい。例えば、画像形成装置101が、実機器構成データを補助記憶装置204Aに常に記憶する所定の処理部(例えば実機器構成データ保持部)を備えるようにしてもよい。
【0138】
実機器構成データ保持部が、実機器構成データを補助記憶装置204Aに常に記憶するようにした場合、実機器構成データの変更に応じて、実機器構成データ保持部が保持する実機器構成データを速やかに書き換える必要がある。このために、実機器構成データ収集部304は、実機器構成データの変更を監視し、変更内容を検知した場合には実機器構成データ保持部が保持する実機器構成データを更新する。更に、実機器構成データ通知部306が、実機器構成データ保持部に対して実機器構成データを要求して取得するようにしてもよい。
【0139】
また、図3に示す機能ブロック図において、テナント識別子保持部305は、補助記憶装置204Aにテナント識別子を記憶するが、本発明が他の構成をとることもできる。例えば、ユーザが入力装置206Aを用いてテナント識別子を毎回入力するようにしてもよい。テナント識別子を入力するタイミングは、画像形成装置の起動時であってもよいし、起動時とは異なる他のタイミングであってもよい。ユーザが入力装置206Aを用いてテナント識別子を毎回入力する場合、テナント識別子は揮発性メモリ203Aに記憶される。
【0140】
また、図3に示す機能ブロック図において、実機器構成データ通知部306は、画像形成装置が電源ONになったことを検知して処理を行うが、本発明が他の構成をとることもできる。例えば、ユーザが入力装置206Aを用いて仮想コンフィグデータの取得を指示するようにしてもよい。本発明が、ユーザが入力装置206Aを用いて仮想コンフィグデータの取得を指示する構成をとる場合、図10のステップ1001において、実機器構成データ通知部306が、当該ユーザの指示を検知した上で、ステップ1002以降の処理が実行される。
【0141】
また、図3に示す機能ブロック図において、仮想コンフィグデータ生成部316は機種別設定値スキーマ、テナント用コンフィグデータ、仮想機器構成データに基づいて仮想コンフィグデータを生成するが、本発明が他の構成をとることもできる。例えば、仮想コンフィグデータ生成部316が、機種別設定値スキーマとテナント用コンフィグデータとに基づいて、機種に応じた仮想コンフィグデータを生成するようにしてもよい。仮想コンフィグデータ生成部316が、機種に応じた仮想コンフィグデータを生成する場合には、画像形成装置は、当該仮想コンフィグデータで実コンフィグデータを更新する際に、機器構成に応じた実コンフィグデータを参照する構成をとる。
【0142】
また、仮想コンフィグデータ生成部316が、ライセンスデータを用いて仮想コンフィグデータを生成するようにしてもよい。仮想コンフィグデータ生成部316が、ライセンスデータを用いて仮想コンフィグデータを生成する場合、画像形成装置が備えるオプション機能に合わせた仮想コンフィグデータが生成される。
【0143】
また、図3に示す機能ブロック図においては、画像形成装置101が設定値管理サービスアドレス応答部308を備えるが、本発明が他の構成をとることもできる。例えば、端末装置102が設定値管理サービスアドレス応答部308を備えるようにしてもよい。そして、この設定値管理サービスアドレス応答部308が、画像形成装置101の設定値管理サービスアドレス設定部307からの問い合わせに応答するようにしてもよい。この場合、図11のステップ1150乃至ステップ1153の処理は、端末装置102によって実行される。
【0144】
また、図6に示す仮想デバイスのデータ項目である仮想機器構成データ804は、仮想機器構成データの識別情報を有しているが、仮想機器構成データ804が、データの実体を有するようにしてもよい。また、当該仮想デバイスのデータ項目である仮想コンフィグデータ805は、仮想コンフィグデータの識別情報を有しているが、仮想コンフィグデータ805が、データの実体を有するようにしてもよい。
【0145】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【0146】
101 画像形成装置
102 端末装置
105A サーバコンピュータ群
【技術分野】
【0001】
本発明は、情報処理システム、画像形成装置、管理装置、管理方法およびコンピュータプログラムに関する。
【背景技術】
【0002】
コンフィグデータを記憶手段に記憶する画像形成装置が提案されている。このコンフィグデータは、画像形成装置の動作を切り替える設定情報(動作設定情報)である。コンフィグデータは、各画像形成装置が備える記憶手段に記憶されているので、全ての画像形成装置のコンフィグデータを変更するためには、画像形成装置の台数分だけコンフィグデータの変更設定を行う必要がある。画像形成装置の台数分だけコンフィグデータの変更設定を行う手間を省くために、ある情報処理装置から複数の画像形成装置に対してコンフィグデータの一括設定を行う技術が提案されている。
【0003】
例えば、特許文献1は、初期設定操作が行われた複数の画像形成装置が、サーバからシステム初期設定情報をダウンロードして、初期設定内容に反映する画像形成システムを開示している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−130838号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1が開示する画像形成システムは、画像形成装置の機種や、画像形成装置が備えるハードウェアオプションなどに依存して値に制約が発生するコンフィグデータを適用することができない。
【0006】
ここで、複数の画像形成装置のコンフィグデータをインターネット上のサーバで管理するクラウドサービスが考えられる。画像形成装置は、クラウドサービスが管理するコンフィグデータをクラウドサービスから取得し、取得したコンフィグデータに基づいて動作する。画像形成装置の出荷時に、画像形成装置内にクラウドサービスの場所を予め記憶させておくことが考えられる。この画像形成装置は、例えば、ネットワークに接続するだけで、自動的にクラウドサービスにアクセスしてコンフィグデータを取得し、動作する。これにより、画像形成装置の初期設置時に行う設定作業の手間をなくすことができる。
【0007】
しかし、画像形成装置が、クラウドサービスではなく、クラウドサービスとは異なる、コンフィグデータを管理するサービス(コンフィグデータ管理サービス)を利用したい場合、コンフィグデータ管理サービスのアドレスを画像形成装置に設定する必要がある。
【0008】
例えば、セキュリティの問題などから、コンフィグデータ管理サービスとして、パブリックなクラウドサービスを利用するのではなく、当該ユーザ専用の環境で提供されているサービスを利用したいユーザは多い。一般的に、このような環境をプライベートクラウドと呼ぶ。プライベートクラウド上でコンフィグデータの管理を行う場合、画像形成装置は、工場出荷時に記憶されているクラウドサービスの場所ではなく、そのユーザ環境のプライベートクラウドに接続する必要がある。従って、画像形成装置は、プライベートクラウドの場所を設定するためのUIを表示し、画像形成装置の初期設置時にユーザがUI上で設定する。
【0009】
しかし、プライベートクラウドで運用するようなユーザは大規模なユーザであり、複数の画像形成装置を保持していることが多い。従って、ユーザが、大量の画像形成装置に対してプライベートクラウドの場所(アドレス)を設定するのは手間である。
【0010】
本発明は、画像形成装置の動作設定情報を管理する管理装置のアドレスをユーザが設定することなく、画像形成装置が上記管理装置のアドレスを自動で取得して、上記管理装置から動作設定情報を取得することを可能とする情報処理システムの提供を目的とする。
【課題を解決するための手段】
【0011】
本発明の一実施形態の情報処理システムは、画像形成装置の動作を切り替える動作設定情報を管理する管理装置と、予め設定された管理単位で前記管理装置に管理される画像形成装置とを備える情報処理システムである。前記画像形成装置は、前記画像形成装置が備える機器の構成情報の変更があるかを判断する構成変更判断手段と、前記構成情報の変更があると判断された場合に、該変更があった構成情報と該画像形成装置に対応する管理単位に関する情報とを含む要求であって、該画像形成装置に対応する動作設定情報の生成を求める動作設定生成要求を、ネットワークを介して前記管理装置に対して送信する要求手段と、前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が成功したと判断して動作設定情報を生成した管理装置から、前記画像形成装置に対応する動作設定情報を取得する取得手段と、前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が失敗したと判断した管理装置からエラー通知を受けるエラー通知受信手段と、前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、管理装置のアドレス情報を保持している画像形成装置を探索し、探索された画像形成装置から、該画像形成装置を管理している管理装置のアドレス情報を取得する探索手段とを備える。前記要求手段は、前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、前記探索手段が取得したアドレス情報に対応する管理装置に対して前記動作設定生成要求を送信する。
【発明の効果】
【0012】
本発明の情報処理装置によれば、画像形成装置のコンフィグデータを管理する管理装置のアドレスを、周辺の画像形成装置から取得することができる。従って、ユーザが、コンフィグデータの取得先の管理装置のアドレスを手作業で入力する手間を省くことが可能となる。例えば、コンフィグデータを一括管理するサーバをプライベートクラウドに設置して運用している環境に、画像形成装置を新規に追加する場合に、この画像形成装置のコンフィグデータを管理する管理装置のアドレスを自動で設定することができる。
【図面の簡単な説明】
【0013】
【図1】本実施形態の全体構成例を示す図である。
【図2】本実施形態の情報処理システムのハードウェア構成の一例である。
【図3】本実施形態の情報処理システムの機能ブロック図の一例である。
【図4】実コンフィグデータの一例を示す図である。
【図5】実機器構成データの一例を示す図である。
【図6】仮想デバイスの一例を示す図である。
【図7】機種別設定値スキーマの一例を示す図である。
【図8】テナント用コンフィグデータの一例を示す図である。
【図9】テナント用コンフィグデータの更新処理を説明する図である。
【図10】仮想コンフィグデータを取得する処理を説明する図である。
【図11】設定値管理サービスアドレス取得処理の例を説明する図である。
【図12】探索パケットと応答パケットの一例を示す図である。
【発明を実施するための形態】
【0014】
以下に、本実施形態の情報処理システムについて説明する。まず、本実施形態において用いる用語の定義を行う。コンフィグデータとは、画像形成装置の動作を切り替えるデータ(動作設定情報)である。例えば、コピージョブの面付けのデフォルト値などが該当する。コピージョブの面付けのデフォルト値が「1 in 1」に設定されていれば、コピーを行った結果、用紙一枚に1ページが印刷される。コピージョブの面付けのデフォルト値が「2 in 1」に設定されていれば、コピーを行った結果、用紙一枚に2ページが印刷される。
【0015】
機器構成データとは、画像形成装置が備える機器の構成を示すデータである。機器構成データは、例えば、画像形成装置がファクスユニットを装着しているかを示す。機器構成データは、画像形成装置の機種を一意に識別するための機種コード、動作しているファームウェアバージョンなどを含む。
【0016】
機種別設定値スキーマとは、画像形成装置が特定の機種で保持するコンフィグデータのスキーマを定義するデータである。スキーマとは、コンフィグデータについての規約や位置づけを定義するデータである。機種別設定値スキーマは、例えば、コンフィグデータ各々の設定値識別子、デフォルト値、値域、データが有効になるための条件を含む。本実施形態においては、機種によって保持するコンフィグデータには差分があり、設定値スキーマを機種別に用意する運用であることを前提とする。
【0017】
仮想デバイスとは、サーバコンピュータ群が保持する実デバイスのデータ群である。具体的には、仮想デバイスは、少なくとも機器構成データ、コンフィグデータを含む。テナントとは、ユーザが画像形成装置の管理を委託する委託者の単位である。テナント識別子とは、テナントを一意に識別するための識別子である。例えば、ある会社が後述する図1に示すユーザ環境100にある画像形成装置101A、101B、101Cの管理を委託した場合を想定する。その場合、ユーザ環境100に対応するテナント識別子が1つ割り当てられ、画像形成装置101A、101B、101Cは、そのテナントに属する画像形成装置であると認識され、管理される。
【0018】
仮想デバイスに含まれるデータと、実デバイスが保持するデータと、テナント専用のデータとを区別するために、以下のように定義する。仮想デバイスに含まれる機器構成データを仮想機器構成データ、コンフィグデータを仮想コンフィグデータと呼ぶ。実デバイスが保持する機器構成データを実機器構成データ、コンフィグデータを実コンフィグデータと呼ぶ。テナント内で共通に利用されるコンフィグデータをテナント用コンフィグデータと呼ぶ。
【0019】
図1は、本実施形態の全体構成例を示す図である。図1に示すシステムは、ユーザ環境100、サービスマン環境110、画像形成装置のベンダ環境120、パブリッククラウド環境130、プライベートクラウド環境140を備える。ユーザ環境100乃至プライベートクラウド環境140は、インターネット104を介して互いに通信する。インターネット104は、公衆回線上のデジタル通信が可能なネットワークである。
【0020】
ユーザ環境100は、画像形成装置のユーザが当該画像形成装置の操作を実行する環境である。ユーザ環境100は、画像形成装置101A、101B、101C、端末装置102Aを備える。画像形成装置101A、101B、101Cは、本実施形態の画像形成装置である。ネットワーク106は、ユーザ環境100においてデジタル通信が可能なネットワークである。画像形成装置101A乃至101Cは、ネットワーク106を介してインターネット104にアクセス可能である。端末装置102Aは、ユーザ環境100のユーザが操作可能なコンピュータである。端末装置102Aも、ネットワーク106を介してインターネット104にアクセス可能である。
【0021】
サービスマン環境110は、サービスマンが端末装置102Bを使って画像形成装置の管理を行う環境である。サービスマン環境110は、端末装置102Bを備える。端末装置102Bは、画像形成装置101A、101B、101Cを管理するサービスマンが操作するコンピュータである。端末装置102Bは、インターネット104にアクセス可能である。
【0022】
画像形成装置のベンダ環境120は、画像形成装置を生産するベンダの管理担当者が、画像形成装置の管理に必要なデータのメンテナンスを行う環境である。画像形成装置のベンダ環境120は、端末装置102Cを備える。端末装置102Cは、画像形成装置のベンダに所属する管理担当者が操作するコンピュータである。端末装置102Cは、インターネット104にアクセス可能である。
【0023】
パブリッククラウド環境130は、画像形成装置のコンフィグデータを管理する設定値管理サービス(図3を参照)を提供する環境である。パブリッククラウド環境130は、複数のテナントに対してサービスを提供する。パブリッククラウド環境130は、サーバコンピュータ群105Aを備える。サーバコンピュータ群105Aは、インターネット104を介してサービスを提供するサーバ群である。サーバコンピュータ群105Aは、例えば、図3に示す設定値管理サービス310Aを提供する。本実施形態において、サーバコンピュータ群105Aが提供する設定値管理サービス310Aは、画像形成装置のコンフィグデータを管理する管理装置として機能する。設定値管理サービス310Aは、予め設定された管理単位であるテナントに対応付けて、画像形成装置を管理する。
【0024】
プライベートクラウド環境140は、パブリッククラウド環境130と同様に,画像形成装置のコンフィグデータを管理する設定値管理サービスを提供する環境である。但しプライベートクラウド環境は、パブリッククラウド環境とは異なり、特定のテナント専用にサービスを提供する環境である。プライベートクラウド環境140は、サーバコンピュータ群105Bを備える。
【0025】
サーバコンピュータ群105Bは、サーバコンピュータ群105Aと同様に、インターネット104を介してサービスを提供するサーバ群である。サーバコンピュータ群105Bは、例えば、図3に示す設定値管理サービス310Bを提供する。本実施形態において、サーバコンピュータ群105Bが設定値管理サービス310Bは、画像形成装置のコンフィグデータを管理する管理装置として機能する。サーバコンピュータ群105Bはサーバコンピュータ群105Aと同様の構成を備える。
【0026】
プライベートクラウド環境140が、インターネット104を介してユーザ環境100と接続される形態を図示したが、プライベートクラウド環境140が、ユーザ環境100に設けられていてもよい。また、プライベートクラウド環境140が、サービスマン環境110や画像形成装置のベンダ環境120に設けられていてもよい。なお、以下の説明では、画像形成装置101A、101B、101Cを画像形成装置101とも記述する。また、端末装置102B、102Cを端末装置102とも記述する。
【0027】
図2は、本実施形態の情報処理システムのハードウェア構成の一例を示す図である。サーバコンピュータ群105Aは、サーバコンピュータ210Aとサーバコンピュータ210Bとを備える。サーバコンピュータ210Bは、サーバコンピュータ210Aと同様の構成を備える。サーバコンピュータ210Aとサーバコンピュータ210Bとは、ネットワーク220を通じて通信する。
【0028】
サーバコンピュータ210Aは、内部バス216に接続されたCPU201C乃至ネットワーク通信装置207Cを備える。また、画像形成装置101は、内部バス211Aに接続されたCPU201A乃至209を備える。また、端末装置102は、内部バス211Bに接続されたCPU201B乃至ネットワーク通信装置207Bを備える。
【0029】
以下の説明では、CPU201A、201B、201CをCPU201とも記述する。また、不揮発性メモリ202A、202B、202Cを不揮発性メモリ202とも記述する。また、揮発性メモリ203A、203B、203Cを揮発性メモリ203とも記述する。また、補助記憶装置204A、204B、204Cを補助記憶装置204とも記述する。また、ディスプレイ205A、205Bをディスプレイ205とも記述する。また、入力装置206A、206Bを入力装置206とも記述する。また、ネットワーク通信装置207A、207Bをネットワーク通信装置207とも記述する。また、内部バス211A、211Bを内部バス211とも記述する。
【0030】
CPU(Central Processing Unit)201は、プログラムの実行や、様々な処理の制御を行う。不揮発性メモリ202は、ROM(Read Only Memory)を備える。不揮発性メモリ202には、機器の起動処理において初期段階に必要なプログラムやデータが格納されている。揮発性メモリ203は、RAM(Random Access Memory)を備える。揮発性メモリ203は、プログラム、データの一時的な格納場所として利用される。
【0031】
補助記憶装置204は、ハードディスクやRAMドライブ等の大容量記憶装置である。補助記憶装置204は、大容量データの保管、プログラムの実行コードの保持を行う。補助記憶装置204は、揮発性メモリ203よりも長時間保持する必要があるデータを記憶する。ディスプレイ205は、情報の表示処理を行って、情報を利用者に通知する。なお、本実施形態において、利用者とは、ユーザとサービスマンである。
【0032】
入力装置206は、利用者の選択指示を受け付け、内部バス211を介してプログラムに伝達する。ネットワーク通信装置207は、外部装置とネットワークを介して通信する装置である。ファクスユニット208は、画像形成装置101が形成した画像データか、または補助記憶装置204Aに記憶された画像データを、ネットワーク106を介して外部装置に送信するハードウェアユニットである。ファクスユニット208は、オプションであり、画像形成装置101がファクスユニット208を備えていなくてもよい。プリンタエンジン209は、画像形成装置101が形成した画像データか、または補助記憶装置204Aに記憶された画像データを紙媒体に印刷する。
【0033】
図3は、本実施形態の情報処理システムの機能ブロック図の一例である。図3に示す情報処理システムは、画像形成装置101と、設定値管理サービス310Aと、設定値管理サービス310Bとを備える。画像形成装置101と、設定値管理サービス310Aと、設定値管理サービス310Bとは、インターネット104を介して通信する。なお、設定値管理サービス310Aと、設定値管理サービス310Bとを総称して、設定値管理サービス310とも記述する。本実施形態の管理方法およびコンピュータプログラムは、図3に示す情報処理システムが備える機能によって実現される。
【0034】
画像形成装置101は、実コンフィグデータ保持部301、実コンフィグデータ更新部302、仮想コンフィグデータ受信部303、実機器構成データ収集部304、テナント識別子保持部305、実機器構成データ通知部306を備える。また、画像形成装置101は、設定値管理サービスアドレス設定部307、設定値管理サービスアドレス応答部308を備える。
【0035】
実コンフィグデータ保持部301は、画像形成装置のコンフィグデータを保持する。具体的には、実コンフィグデータ保持部301は、補助記憶装置204Aにコンフィグデータを記憶して管理する。画像形成装置は、実コンフィグデータ保持部301が保持する実コンフィグデータに基づいて、動作の振る舞いを切り替える。
【0036】
実コンフィグデータ更新部302は、実コンフィグデータ保持部301が保持する実コンフィグデータを更新する。具体的には、実コンフィグデータ更新部302は、仮想コンフィグデータ受信部303が取得した仮想コンフィグデータで、実コンフィグデータを更新する。
【0037】
仮想コンフィグデータ受信部303は、設定値管理サービス310Aが備える仮想コンフィグデータ取得部320から、仮想コンフィグデータを取得する。そして、仮想コンフィグデータ受信部303は、仮想コンフィグデータ取得部320が取得した仮想コンフィグデータを仮想コンフィグデータ取得部320から受信する。仮想コンフィグデータ受信部303は、実コンフィグデータ保持部301が保持するコンフィグデータに設定されているアドレスを用いて、仮想コンフィグデータ取得部320を呼び出す。
【0038】
図4は、実コンフィグデータの一例を示す図である。図4(A)は、デバイス識別子が010001である画像形成装置の実コンフィグデータである。図4(B)は、デバイス識別子が010002である画像形成装置の実コンフィグデータである。図4(C)は、デバイス識別子が020001である画像形成装置の実コンフィグデータである。デバイス識別子は、画像形成装置を一意に識別する識別情報である。
【0039】
実コンフィグデータは、設定値識別子702と値703といったデータ項目を有する。設定値識別子702は、設定項目を一意に識別する識別子である。値703は、設定項目の値である。図4に示す例では、”device_settings.cloud_address”の値(アドレス)として、http://ddd.com/configが設定されている。このアドレスは、画像形成装置101に対してコンフィグデータを配信する設定値管理サービスとして設定された設定値管理サービスのアドレスである。従って、上述した仮想コンフィグデータ受信部303は、このアドレスに対してアクセスする。
【0040】
画像形成装置の工場出荷時には、実コンフィグデータに、パブリッククラウド環境の設定値管理サービス310Aのアドレスがアクセス先のアドレスとして設定されている。そして、後述する設定値管理サービスアドレス設定部307の処理によって、このアドレスは、設定値管理サービス310Bのアドレス等に変更される場合がある。
【0041】
なお、仮想コンフィグデータは、図4に示す実コンフィグデータと同様のデータ構成を有する。従って、図4に示す実コンフィグデータを、適宜、仮想コンフィグデータとして説明する。
【0042】
図3に戻って、実機器構成データ収集部304は、画像形成装置101の機器構成データ(実機器構成データ)を収集する。
【0043】
図5は、実機器構成データの一例を示す図である。図5(A)、(B)、(C)は、それぞれ異なる画像形成装置の実機器構成データである。実機器構成データは、データ種別602と値603といったデータ項目を有する。データ種別602は、実機器構成データが含むデータの種別である。データ種別602には、機種を識別するための機種コードや、ファームウェアバージョン、デバイスを識別するためのデバイス識別子等が設定される。値603は、当該データの値である。値603には、データ種別に対応する値(例えば、デバイス識別子の値や、ファクスユニットの有無等)が設定される。なお、仮想機器構成データは、実機器構成データと同様のデータ構成を有する。従って、図5に示す実機器構成データを、適宜、仮想機器構成データとして説明する。
【0044】
テナント識別子保持部305は、画像形成装置101が属するテナントの識別子であるテナント識別子を保持する。テナント識別子は、画像形成装置101の初期設置時に設定され、電源が切られても失われることがないように補助記憶装置204Aに記憶される。
【0045】
実機器構成データ通知部306は、実機器構成データ収集部304が収集した実機器構成データと、テナント識別子保持部305が保持するテナント識別子とを、設定値管理サービス310Aの実機器構成データ受信部318に対して通知する。具体的には、実機器構成データ通知部306は、実機器構成データとテナント識別子とを含むコンフィグデータ生成要求を実機器構成データ受信部318に送信する。コンフィグデータ生成要求は、画像形成装置101に対応する仮想コンフィグデータの生成を求める要求(動作設定生成要求)である。
【0046】
設定値管理サービスアドレス設定部307は、仮想コンフィグデータ取得部320を呼び出すためのアドレスを取得、設定する。画像形成装置101の工場出荷時に実コンフィグデータに予め設定されているアドレスに対する通信がエラーとなった場合に、設定値管理サービスアドレス設定部307は、例えば以下の処理を実行する。この例では、実コンフィグデータに予め設定されているアドレスである”http://ddd.com/config”(図4(A))に対する通信がエラーとなったものとする。
【0047】
設定値管理サービスアドレス設定部307は、画像形成装置101の周辺に設けられた他の画像形成装置から、当該他の画像形成装置のコンフィグデータを管理している設定値管理サービスのアドレスを取得する。具体的には、設定値管理サービスアドレス設定部307は、マルチキャスト方式によってネットワーク上の周辺の画像形成装置に問い合わせて、応答を受け取る。そして、設定値管理サービスアドレス設定部307は、取得したアドレスを、画像形成装置101のアクセス先の設定値管理サービスのアドレス(設定値管理サービスアドレス)として実コンフィグデータに設定する。
【0048】
設定値管理サービスアドレス応答部308は、他の画像形成装置の設定値管理サービスアドレス設定部307からの問い合わせ(後述する探索パケット)を受け付ける。そして、設定値管理サービスアドレス応答部308は、この問い合わせに応じて、実コンフィグデータに設定されているアドレス、すなわち画像形成装置101のアクセス先として設定されているアドレスを応答する処理を行う。
【0049】
設定値管理サービス310Aは、パブリッククラウド環境において画像形成装置のコンフィグデータを管理する管理装置として機能する。前述したように、サーバコンピュータ群105Aが、設定値管理サービス310Aを提供する。設定値管理サービス310Bは、プライベートクラウド環境において画像形成装置のコンフィグデータを管理する管理装置として機能する。また、サーバコンピュータ群105Bが設定値管理サービス310Bを提供する。設定値管理サービス310Bと設定値管理サービス310Aとは、同じ構成を備える。
【0050】
設定値管理サービス310Aは、仮想デバイス保持部311、機種別設定値スキーマ保持部312、機種別設定値スキーマ更新部313、テナント用コンフィグデータ保持部314、テナント用コンフィグデータ更新部315を備える。また、設定値管理サービス310Aは、仮想コンフィグデータ生成部316、仮想コンフィグデータ更新部317、実機器構成データ受信部318、仮想機器構成データ更新部319を備える。また、設定値管理サービス310Aは、仮想コンフィグデータ取得部320、仮想コンフィグデータ閲覧部321、仮想コンフィグデータ更新確認部322を備える。
【0051】
仮想デバイス保持部311は、仮想デバイスを保持する。仮想デバイスは、少なくとも、仮想機器構成データと、仮想コンフィグデータと、仮想デバイスのデバイス識別子と、テナント識別子とを有する。仮想デバイス保持部311は、仮想デバイスを補助記憶装置204Cに記憶して管理する。
【0052】
図6は、仮想デバイスの一例を示す図である。図6に示す仮想デバイスは、デバイス識別子802、テナント識別子803、仮想機器構成データ804、仮想コンフィグデータ805、通知フラグ806を有する。デバイス識別子802は、仮想デバイスを一意に識別する識別情報である。デバイス識別子802は、当該仮想デバイスに対応する画像形成装置101を一意に識別する識別情報に相当する。デバイス識別子802は、画像形成装置101が設定値管理サービス310に対して通知する機器構成データに含まれている。
【0053】
テナント識別子803は、仮想デバイスに対応する画像形成装置101が属するテナントを一意に識別する識別情報である。仮想機器構成データ804は、仮想機器構成データを一意に識別する識別情報である。仮想機器構成データは、仮想デバイスに対応する画像形成装置101の機器構成データ(実機器構成データ)に対応する。仮想コンフィグデータ805は、仮想コンフィグデータを一意に識別する識別情報である。仮想コンフィグデータは、仮想デバイスに対応する画像形成装置101のコンフィグデータ(実コンフィグデータ)に対応する。
【0054】
通知フラグ806は、画像形成装置に対して仮想コンフィグデータ805を通知済み、未通知のいずれであるかを示す。通知フラグ806に設定された「未」は、画像形成装置に対して仮想コンフィグデータ805を未通知であることを示す。通知フラグ806に設定された「済」は、画像形成装置に対して仮想コンフィグデータ805を通知済みであることを示す。
【0055】
図3に戻って、機種別設定値スキーマ保持部312は、機種別設定値スキーマを保持する。画像形成装置の各機種に対応して1つの機種別設定値スキーマが用意される。
【0056】
図7は、機種別設定値スキーマの一例を示す図である。図7(A)は、機種コードが0x01の機種に対応する機種別設定値スキーマである。図7(B)は、機種コードが0x02の機種に対応する機種別設定値スキーマである。機種別設定値スキーマは、設定値識別子402、デフォルト値403、値域404、条件405といったデータ項目を有する。
【0057】
設定値識別子402は、設定項目を一意に識別する識別情報である。例えば、「copy_settings.nup」は、コピー設定の面付けに関する設定項目を示す。設定値識別子402が同じであることは、違う機種であっても設定項目が同じであることを示す。デフォルト値403は、当該機種におけるデフォルト設定値である。値域404は、当該機種において設定し得る範囲の定義である。例えば、「copy_settings.nup」の値域404を参照すると、当該機種において、コピー設定として「1 in 1,2 in 1,4 in 1」の3種類から選択できることを示す。
【0058】
条件405は、当該機種において設定値を利用するために必要な条件の定義である。「fax_settings.received_print」という設定項目に対応する条件405には、「ファクスユニット」が設定されている。従って、この設定項目の設定値は、ファクスユニットの装着が確認できた場合のみ有効となる。
【0059】
図3に戻って、機種別設定値スキーマ更新部313は、機種別設定値スキーマ保持部312が保持する機種別設定値スキーマを更新する。例えば、新しい機種を画像形成装置のベンダが発表した場合には、ベンダの管理責任者の指示によって、新しい機種に対応する機種別設定値スキーマが登録される。また、設定項目に変更があった場合に、機種別設定値スキーマ更新部313は、機種別設定値スキーマを更新する。
【0060】
テナント用コンフィグデータ保持部314は、テナントが画像形成装置に対して設定したいコンフィグデータを保持する。
【0061】
図8は、テナント用コンフィグデータの一例を示す図である。テナント用コンフィグデータは、設定値識別子502と値503といったデータ項目を有する。設定値識別子502は、図7に示す機種別設定値スキーマが含む設定値識別子402と同様である。値503は、テナントが所望する共通設定の値である。「copy_settings.nup」には、「2 in 1」が設定されている。これは、テナントが保持する画像形成装置全てに「2 in 1」が設定されることを所望していることを示す。
【0062】
図3に戻って、テナント用コンフィグデータ更新部315は、テナント用コンフィグデータ保持部314が保持するテナント用コンフィグデータを更新する。テナントが保持する画像形成装置の管理を行うサービスマンの操作に従って、サービスマン環境110にある端末装置102Bが、テナント用コンフィグデータの更新指示を行う。テナント用コンフィグデータ更新部315は、この更新指示に従って、テナント用コンフィグデータを更新する。なお、サービスマンは、端末装置102B内で動作するウェブブラウザに表示される設定画面上で操作する。
【0063】
仮想コンフィグデータ生成部316は、機種別設定値スキーマと、テナント用コンフィグデータと、仮想機器構成データとに基づいて、仮想コンフィグデータを生成する。まず、仮想コンフィグデータ生成部316は、仮想デバイス保持部311から、図5(A)に示す仮想機器構成データを取得する。
【0064】
次に、仮想コンフィグデータ生成部316は、取得した仮想機器構成データが含む機種コードを参照し、画像形成装置の機種を特定する。図5(A)に示す仮想機器構成データを例にとると、機種コードに対応する値として0x01が設定されている。従って、仮想コンフィグデータ生成部316は、画像形成装置の機種として、機種コードが0x01の機種を特定する。
【0065】
次に、仮想コンフィグデータ生成部316は、特定した機種コードに対応する機種別設定値スキーマを、機種別設定値スキーマ保持部312から取得する。仮想コンフィグデータ生成部316は、例えば、機種コードが0x01に合致する、図7(A)に示す機種別設定値スキーマを取得する。
【0066】
次に、仮想コンフィグデータ生成部316は、取得した機種別設定値スキーマに定義された設定値を、仮想コンフィグデータのベースとする。図7(A)に示す機種別設定値スキーマを例にとると、仮想コンフィグデータ生成部316は、「copy_settings.nup」乃至「box_settings.server_address」の5つの設定項目に対応する設定値をベースとする。
【0067】
次に、仮想コンフィグデータ生成部316は、テナント用コンフィグデータ保持部314から、図8に示すテナント用コンフィグデータを取得する。仮想コンフィグデータ生成部314は、テナント用コンフィグデータが含む設定値が、機種別設定値スキーマに定義された値域に収まるかを判断する。
【0068】
図8に示すテナント用コンフィグデータと図7(A)に示す機種別設定値スキーマとを例にとって説明する。テナント用コンフィグデータが含む「copy_settings.nup」という設定項目の値(設定値)は「2 in 1」である。一方、機種別設定値スキーマに定義された、当該設定項目に対応する値域は、「1 in 1,2 in
1,4 in 1」である。従って、テナント用コンフィグデータが含む設定値が、機種別設定値スキーマに定義された値域に収まっている。
【0069】
テナント用コンフィグデータが含む「device_settings.sleep_time」という設定項目の値(設定値)は「10秒」である。一方、機種別設定値スキーマに定義された、当該設定項目に対応する値域は、「1分、10分、1時間」である。従って、テナント用コンフィグデータが含む設定値が、機種別設定値スキーマに定義された値域に収まらない。テナント用コンフィグデータが含む設定値が、機種別設定値スキーマに定義された値域に収まらない場合、仮想コンフィグデータ生成部316は、機種別設定値スキーマに定義されたデフォルト値を取得する。この例では、「10分」というデフォルト値を取得する。仮想コンフィグデータ生成部316は、取得したデフォルト値を、仮想コンフィグデータにおける、当該設定項目の設定値として用いる。
【0070】
テナント用コンフィグデータが含む設定値が、機種別設定値スキーマに定義された値域に収まっている場合、仮想コンフィグデータ生成部316は、テナント用コンフィグデータが含む設定値を、仮想コンフィグデータの当該設定項目に対応する設定値とする。
【0071】
次に、仮想コンフィグデータ生成部316は、仮想機器構成データが、機種別設定値スキーマに定義された条件を満たすかを判断する。図7(A)に示す機種別設定値スキーマを参照すると、「copy_settings.nup」に対応する条件は特にない。従って、図5(A)に示す仮想機器構成データは、「copy_settings.nup」に対応する条件を満たす。
【0072】
しかし、「fax_settings.received_print」に対応する条件は「ファクスユニット」であるのに対し、仮想機器構成データが含む「ファクスユニット」の値として「なし」が設定されている。従って、仮想機器構成データは、当該設定項目に対応する条件を満たさない。
【0073】
仮想機器構成データが機種別設定値スキーマに定義された条件を満たさない場合、仮想コンフィグデータ生成部316は、機種別設定値スキーマに定義されたデフォルト値403を取得する。この例では、仮想コンフィグデータ生成部316は、「fax_settings.received_print」に対応するデフォルト値である「OFF」を取得する。仮想コンフィグデータ生成部316は、取得したデフォルト値を、仮想コンフィグデータにおける、当該設定項目の設定値として用いる。
【0074】
図3に戻って、仮想コンフィグデータ更新部317は、仮想コンフィグデータ生成部316が生成した仮想コンフィグデータで、仮想デバイス保持部311が保持する仮想デバイスが有する仮想コンフィグデータを更新する。
【0075】
具体的には、仮想コンフィグデータ更新部317は、仮想デバイス保持部311が保持する仮想デバイスの中から、生成した仮想コンフィグデータに対応するデバイス識別子を持つ仮想デバイスを取得する。そして、仮想コンフィグデータ更新部317は、取得した仮想デバイスが有する仮想コンフィグデータを、生成した仮想コンフィグデータで更新する。
【0076】
仮想コンフィグデータ更新部317は、さらに、仮想デバイスの通知フラグ806が「済」である場合、「未」に設定する。通知フラグ806が「未」に設定されていることは、画像形成装置に対応する仮想コンフィグデータの変更があり、画像形成装置は新しい仮想コンフィグデータを参照する必要があることを意味する。実機器構成データ受信部318は、画像形成装置101が備える実機器構成データ通知部306から、機器構成データ(図5)と、テナント識別子とを受信する。
【0077】
仮想機器構成データ更新部319は、実機器構成データ受信部318が受信した機器構成データで、仮想デバイス保持部311が保持する仮想デバイスが有する仮想機器構成データを更新する。具体的には、仮想機器構成データ更新部319は、仮想デバイス保持部311が保持する仮想デバイスの中から、実機器構成データ受信部318が受信した機器構成データに設定されたデバイス識別子を持つ仮想デバイスを取得する。そして、仮想機器構成データ更新部319は、取得した仮想デバイスが有する仮想機器構成データを、実機器構成データ受信部318が受信した機器構成データで更新する。
【0078】
仮想コンフィグデータ取得部320は、インターネット104を介して、画像形成装置101が備える仮想コンフィグデータ受信部303から仮想コンフィグデータの取得要求を受け取り、仮想デバイス保持部311から仮想コンフィグデータを取得する。
【0079】
仮想コンフィグデータの取得要求は、少なくとも仮想デバイスを特定するデバイス識別子を含んでいる。従って、仮想コンフィグデータ取得部320は、仮想コンフィグデータの取得要求が含むデバイス識別子を持つ仮想デバイスを探索する。仮想コンフィグデータ取得部320は、探索された仮想デバイスが有する仮想コンフィグデータを取得する。そして、仮想コンフィグデータ取得部320は、インターネット104を介して、取得した仮想コンフィグデータを要求元すなわち仮想コンフィグデータ受信部303に渡す。
【0080】
仮想コンフィグデータ閲覧部321は、インターネット104を介して、外部装置からコンフィグデータの閲覧要求を受ける。コンフィグデータの閲覧要求は、HTTPプロトコル上の要求である。仮想コンフィグデータ閲覧部321は、閲覧要求に対応する仮想コンフィグデータを取得し、取得した仮想コンフィグデータの閲覧用のHTMLページを生成して要求元に返す。
【0081】
仮想コンフィグデータ更新確認部322は、仮想コンフィグデータが更新されているかを確認する。具体的には、画像形成装置101が備える仮想コンフィグデータ受信部303が、インターネット104を介して、仮想コンフィグデータ更新確認部322に対して該画像形成装置101のデバイス識別子を送信する。仮想コンフィグデータ更新確認部322は、仮想デバイス保持部311が保持する仮想デバイスの中から、受信したデバイス識別子に一致する仮想デバイスを探索する。仮想コンフィグデータ更新確認部322は、探索された仮想デバイスの通知フラグ806を参照する。
【0082】
通知フラグ806が「未」である場合、仮想コンフィグデータ更新確認部322は、仮想コンフィグデータの更新があったと判断する。通知フラグ806が「済」である場合、仮想コンフィグデータ更新確認部322は、仮想コンフィグデータの更新はないと判断する。仮想コンフィグデータ更新確認部322は、仮想コンフィグデータが更新されているか否かを仮想コンフィグデータ受信部303に返す。そして、仮想コンフィグデータが更新されていることを確認した仮想コンフィグデータ受信部303が、設定値管理サービス310Aの仮想コンフィグデータ取得部320に対して、コンフィグデータの取得要求を行う。
【0083】
仮想コンフィグデータ更新確認部322が、仮想コンフィグデータ更新部317によって仮想コンフィグデータが更新されたことを契機として、仮想コンフィグデータが更新されているかを確認するようにしてもよい。そして、仮想コンフィグデータ更新確認部322が仮想コンフィグデータが更新されていることを確認した場合に、仮想コンフィグデータ取得部320が、コンフィグデータを取得し、画像形成装置101の仮想コンフィグデータに送信するようにしてもよい。
【0084】
図9は、テナント用コンフィグデータの更新処理を説明するフローチャートの一例である。この例では、管理者ユーザが、端末装置102Aを用いて、テナント用コンフィグデータを更新する。フローチャートの各ステップの処理を実現するプログラムは、不揮発性メモリ202C、揮発性メモリ203C、補助記憶装置204Cのいずれかの記憶手段に記憶され、CPU201Cにより実行される。
【0085】
まず、テナント用コンフィグデータ更新部315が、端末装置102Aから送信された、テナント用コンフィグデータの更新要求を検知する(ステップS901)。次に、テナント用コンフィグデータ更新部315が、テナント用コンフィグデータ保持部314に対して、テナント用コンフィグデータの更新要求に対応するテナント用コンフィグデータが登録済みであるか確認する(ステップS902)。テナント用コンフィグデータの更新要求に対応するテナント用コンフィグデータが登録済みである場合は、ステップS907に進む。テナント用コンフィグデータの更新要求に対応するテナント用コンフィグデータが登録済みでない場合は、ステップS903に進む。
【0086】
ステップS903において、テナント用コンフィグデータ更新部315が、テナントが保持する仮想デバイスを仮想デバイス保持部311から取得する。テナント用コンフィグデータ更新部315が、取得した仮想デバイスが含む仮想機器構成データを取得する。そして、テナント用コンフィグデータ更新部315が、取得した仮想機器構成データが含む機種コードを取得する(ステップS903)。
【0087】
次に、テナント用コンフィグデータ更新部315が、取得した機種コードに対応する機種別設定値スキーマを機種別設定値スキーマ保持部312から取得する(ステップS904)。続いて、テナント用コンフィグデータ更新部315が、ステップS904において取得した機種別設定値スキーマの少なくとも1つが持つ設定項目をリストアップする(ステップS905)。そして、テナント用コンフィグデータ更新部315が、ステップS905においてリストアップした設定項目を持つ、空のテナント用コンフィグデータを生成して(ステップS906)、ステップS907に進む。
【0088】
ステップS907において、テナント用コンフィグデータ更新部315が、テナント用コンフィグデータの具体的な更新指示を検知する(ステップS907)。そして、テナント用コンフィグデータ更新部315が、ステップ907において検知した更新指示に基づいて、テナント用コンフィグデータを更新する(ステップS908)。テナント用コンフィグデータ保持部314は、更新されたテナント用コンフィグデータを記憶する。
【0089】
次に、仮想コンフィグデータ生成部316が、テナント用コンフィグデータが更新されたことを検知する(ステップS909)。そして、仮想コンフィグデータ生成部316が、仮想デバイス保持部311が保持する仮想デバイスから、更新が検知されたテナント用コンフィグデータのテナント識別子に合致する仮想デバイスを探索する。探索された仮想デバイスに対して順次処理を行うため、仮想コンフィグデータ生成部316は、1つの仮想デバイスを取得する。仮想コンフィグデータ生成部316は、仮想デバイスを取得できたかを判断する(ステップS910)。全ての仮想デバイスに対して順次処理が行われ、次の仮想デバイスを取得できない場合には、処理を終了する。仮想コンフィグデータ生成部316が、次の仮想デバイスを取得できた場合は、ステップS911に進む。
【0090】
ステップS911において、仮想コンフィグデータ生成部316が、処理対象の仮想デバイスから仮想機器構成データを取得する(ステップS911)。続いて、仮想コンフィグデータ生成部316が、ステップS911において取得された仮想機器構成データから機種コードを取得する。そして、仮想コンフィグデータ生成部316が、取得した機種コードに対応する機種別設定値スキーマを機種別設定値スキーマ保持部312から取得する(ステップS912)。
【0091】
次に、仮想コンフィグデータ生成部316が、仮想機器構成データと、機種別設定値スキーマと、テナント用コンフィグデータとに基づいて、仮想コンフィグデータを生成する(ステップS913)。そして、仮想コンフィグデータ更新部317が、生成された仮想コンフィグデータを仮想デバイスに登録して(ステップS914)、ステップS910に戻る。ステップS914の処理によって、更新されたテナント用コンフィグデータが仮想コンフィグデータに反映される。
【0092】
図10は、画像形成装置が仮想コンフィグデータを取得する処理を説明するフローチャートの一例である。図10のステップS1001乃至S1010のステップは、画像形成装置において実行される。これらのステップを実行するためのプログラムは、不揮発性メモリ202A、揮発性メモリ203A、補助記憶装置204Aのいずれかの記憶手段に記憶され、CPU201Aにより実行される。また、ステップS1051乃至S1060は、サーバコンピュータ群105において実行される。これらのステップを実行するためのプログラムは、不揮発性メモリ202C、揮発性メモリ203C、補助記憶装置204Cのいずれかの記憶手段に記憶され、CPU201Cにより実行される。
【0093】
まず、画像形成装置101の実機器構成データ通知部306が、画像形成装置101の電源ONを検知する(ステップS1001)。続いて、実機器構成データ収集部304が、実機器構成データを収集する(ステップS1002)。
【0094】
次に、実機器構成データ通知部306が、画像形成装置101が備える機器の構成情報の変更があるかを判断する構成変更判断手段として機能する。具体的には、実機器構成データ通知部306が、ステップ1002で収集した実機器構成データに基づいて、設定値管理サービス310に対して未通知である実機器構成データの変更があるかを判断する(ステップS1003)。未通知である実機器構成データの変更があった場合は、ステップS1005に進む。未通知である実機器構成データの変更がない場合は、ステップS1004に進む。新規デバイス設置時は、ステップS1005に進むことになる。
【0095】
ステップ1004において、仮想コンフィグデータ受信部303が、デバイスが最新の仮想コンフィグデータを取得済みか、すなわち、仮想コンフィグデータが更新されているかを判断する(ステップS1004)。具体的には、仮想コンフィグデータ受信部303は、インターネット104を介して、設定値管理サービス310Aの仮想コンフィグデータ更新確認部322に対して、仮想コンフィグデータが更新されているかを確認する。仮想コンフィグデータ受信部303は、上記確認結果に基づいて、仮想コンフィグデータが更新されているかを判断する。仮想コンフィグデータが更新されていない場合は、処理を終了する。仮想コンフィグデータが更新されている場合は、ステップS1008に進む。
【0096】
ステップ1005において、実機器構成データ通知部306が、インターネット104を介して、実機器構成データとテナント識別子とを含むコンフィグデータ生成要求を設定値管理サービス310に通知する(ステップS1005)。すなわち、実機器構成データ通知部306は、構成情報の変更があると判断した場合に、該変更があった構成情報と画像形成装置に対応する管理単位に関する情報(テナント識別子)とを含むコンフィグデータ生成要求を送信する要求手段として機能する。
【0097】
通知先のアドレスは、実コンフィグデータ保持部301が保持しているアドレスである。なお、このアドレスはデバイスの工場出荷時にはパブリッククラウド環境の設定値管理サービス310Aが提供されているアドレスが設定されているものとする。従って、新規デバイス設置時には、画像形成装置101は、パブリッククラウド環境の設定値管理サービス310Aに通知する。設定値管理サービス310Aは、ステップ1051において、上記通知を検知して処理を行う。設定値管理サービス310Aが実行する処理についての詳細は後述する。
【0098】
次に、実機器構成データ通知部306が、設定値管理サービス310Aからエラー通知を受けたかを判断する(ステップS1006)。すなわち、実機器構成データ通知部306は、コンフィグデータ生成要求の送信先であって、該コンフィグデータ生成要求が失敗したと判断した設定値管理サービス310Aからエラー通知を受けるエラー通知受信手段として機能する。
【0099】
実機器構成データ通知部306が、エラー通知を受けたと判断した場合は、ステップS1010に進む。そして、設定値管理サービスアドレス設定部307が、設定値管理サービスアドレスの取得設定処理を行い(ステップS1010)、ステップS1005に戻る。実機器構成データ通知部306が、改めて実機器構成データとテナント識別子とを設定値管理サービス310に通知する。通知先アドレスは、ステップ1010において取得設定した設定値管理サービスのアドレスである。設定値管理サービスアドレスの取得設定処理の詳細については、図11を参照して後述する。
【0100】
実機器構成データ通知部306が、エラー通知を受けていないと判断した場合は、ステップS1007に進む。そして、仮想コンフィグデータ受信部303が、仮想コンフィグデータの更新が完了するまで処理の実行を待ち合わせる(ステップS1007)。次に、仮想コンフィグデータ受信部303が、設定値管理サービス310から仮想コンフィグデータを取得する。すなわち、仮想コンフィグデータ受信部303は、仮想コンフィグデータを生成(更新)した設定値管理サービス310から、画像形成装置101に対応する動作設定情報を取得する取得手段として機能する。そして、仮想コンフィグデータ更新部317が、取得された仮想コンフィグデータを実コンフィグデータとして更新する(ステップS1008)。実コンフィグデータは、実コンフィグデータ保持部301によって記憶される。
【0101】
ステップ1051において、設定値管理サービス310の実機器構成データ受信部318が、画像形成装置101から実機器構成データとテナント識別子とを含むコンフィグデータ生成要求を受信する要求受け付け手段として機能する(ステップS1051)。
【0102】
次に、仮想機器構成データ更新部319が、ステップ1051において受信したコンフィグデータ生成要求が含むテナント識別子が、設定値管理サービス310が管理しているテナントのテナント識別子かを検索する(ステップS1052)。すなわち、仮想機器構成データ更新部319が、コンフィグデータ生成要求が含むテナント識別子と、予め記憶手段に記憶されたテナント識別子とに基づいて、コンフィグデータ生成要求が成功したかを判断する判断手段として機能する。
【0103】
当該テナント識別子が、設定値管理サービス310が管理しているテナントのテナント識別子である場合、仮想機器構成データ更新部319は、コンフィグデータ生成要求が成功したと判断する。そして、仮想機器構成データ更新部319が、コンフィグデータ生成要求が成功したことを画像形成装置101に応答として返した上で、ステップS1054に進む。
【0104】
本実施形態では、例えば、プライベートクラウド環境の設定値管理サービス310Bを利用しているユーザ環境で画像形成装置101が新規デバイスとして設置された場合を想定する。画像形成装置101は、最初は工場出荷時に設定されているアドレスであるパブリッククラウド環境の設定値管理サービス310Aに通知を行う。しかし、パブリッククラウド環境の設定値管理サービス310Aではこのテナントを管理していない。従って、この場合には、仮想機器構成データ更新部319が、コンフィグデータ生成要求が含むテナント識別子が、設定値管理サービス310が管理しているテナントのテナント識別子でない、すなわち、コンフィグデータ生成要求が失敗したと判断する。そして、処理がステップS1053に進む。
【0105】
ステップS1053において、仮想機器構成データ更新部319が、当該実機器構成データとテナント識別子の通知元の画像形成装置に対してエラー通知を行うエラー通知手段として機能して(ステップS1053)、ステップS1051に戻る。
【0106】
ステップ1054において、仮想機器構成データ更新部319が、以下の処理を実行する。仮想機器構成データ更新部319は、仮想デバイス保持部311が保持する仮想デバイスの中から、ステップ1051で受信したコンフィグデータ生成要求が含む実機器構成データとテナント識別子とに合致する仮想デバイスを検索する(ステップS1054)。
【0107】
合致する仮想デバイスが検索された場合は、ステップS1056に進む。合致する仮想デバイスが検索されなかった場合は、ステップ1055に進む。新規デバイス設置時など、画像形成装置が初めて設定値管理サービス310と通信を行った時には、仮想デバイスを検索できない場合がある。従って、この場合は、ステップS1055に進む。ステップS1055において、仮想機器構成データ更新部319が、空の仮想デバイスを生成して(ステップS1055)、ステップS1056に進む。
【0108】
ステップ1056において、仮想機器構成データ更新部319が、ステップ1054において検索された仮想デバイスの仮想機器構成データを、ステップS1051において受信した実機器構成データで更新する(ステップS1056)。また、仮想機器構成データ更新部319は、ステップS1055において生成された仮想デバイスの仮想機器構成データとして、ステップS1051において受信した実機器構成データを設定する。これにより、画像形成装置101に対応する仮想デバイスが更新される。
【0109】
次に、仮想コンフィグデータ生成部316が、ステップS1056において更新された仮想機器構成データから機種コードを取得する。そして、仮想コンフィグデータ生成部316が、取得した機種コードに該当する機種別設定値スキーマを機種別設定値スキーマ保持部312から取得する(ステップS1057)。
【0110】
次に、仮想コンフィグデータ生成部316が、テナント用コンフィグデータを取得する(ステップS1058)。具体的には、仮想コンフィグデータ生成部316は、テナント用コンフィグデータ保持部314が保持するテナント用コンフィグデータから、ステップS1052において検索されたテナント識別子に対応するテナント用コンフィグデータを取得する。
【0111】
次に、仮想コンフィグデータ生成部316が、仮想機器構成データ、機種別設定値スキーマ、テナント用コンフィグデータに基づいて、仮想コンフィグデータを生成する(ステップS1059)。ステップ1059の処理は、図9のステップS913の処理と同様である。すなわち、仮想コンフィグデータ生成部316は、コンフィグデータ生成要求が成功したと判断された場合に、コンフィグデータ生成要求が含む構成情報に基づいて画像形成装置101に対応するコンフィグデータを生成する生成手段として機能する。
【0112】
次に、仮想コンフィグデータ更新部317が、生成された仮想コンフィグデータを、該当する仮想デバイスに登録、更新する(ステップS1060)。ステップS1060においては、さらに、仮想コンフィグデータ取得部320が、生成された仮想コンフィグデータを画像形成装置101の仮想コンフィグデータ受信部303に対して送信する送信手段として機能する。そして、処理がステップS1051戻る。
【0113】
図11は、図10のステップS1010における設定値管理サービスアドレス取得処理の例を説明するフローチャートである。ステップS1101乃至S1107は、画像形成装置(この例では、画像形成装置101Aとする)で行われるステップである。また、ステップS1150乃至S1153は、ネットワーク106上の、画像形成装置101Aとは異なる他の画像形成装置(画像形成装置101Bとする)で行われるステップである。これらのステップの処理を実行するプログラムは、不揮発性メモリ202A、揮発性メモリ203A、補助記憶装置204Aのいずれかの記憶手段に記憶され、CPU201A
により実行される。
【0114】
なお、画像形成装置101Bは、既にプライベートクラウド環境140の設定値管理サービス310Bによって管理されているものとする。すなわち、画像形成装置101Bの実コンフィグデータ保持部301が保持するアクセス先のアドレスは、プライベートクラウド環境140の設定値管理サービス310Bのアドレスに設定されている。図4(A)に示す例では、設定値識別子「device_settings.cloud_address」の値として、設定値管理サービス310Bのアドレスが設定されている。
【0115】
まず、画像形成装置101Aの設定値管理サービスアドレス設定部307が、設定値管理サービスアドレス保持デバイス探索パケット(以下、探索パケットとも記述)をネットワーク106上にマルチキャストする(ステップS1101)。探索パケットは、設定値管理サービスのアドレス情報を保持している画像形成装置を探索するためのパケットである。具体的には、設定値管理サービスアドレス設定部307は、RFC2608で定義されるSLP(Service Location Protocol)を用いてマルチキャストを行う。
【0116】
図12は、探索パケットと応答パケットの一例を示す図である。図12(A)は、図11のステップS1101においてマルチキャストされる探索パケットの例である。この探索パケットは、SLPフォーマットに従う。すなわち、探索パケットは、符号1201に示すように、検索するサービスタイプとして”service:cloudaddress.ddd”を指定している。また、探索パケットは、符号1201に示すように、SCOPEとして”ddd”を指定している。
【0117】
次に、設定値管理サービスアドレス設定部307が、マルチキャストに対する応答があったか、すなわち、応答パケットを受信したかを判断する(ステップS1102)。マルチキャストに対する応答があった場合は、ステップS1103に進む。
【0118】
図12(B)は、設定値管理サービスアドレス設定部307が受信する応答パケットの例である。応答パケットは、SLPフォーマットに従う。応答パケットは、符号1203に示すように、設定値管理サービスアドレスのURLなどの情報を含むURL Entryを指定している。
【0119】
図11に戻って、設定値管理サービスアドレス設定部307が、応答元の画像形成装置に対して、設定値管理サービスアドレス取得要求をする(ステップS1103)。設定値管理サービスアドレス取得要求は、当該応答元の画像形成装置を管理する設定値管理サービスのアドレスの送信を求める要求である。この例では、応答元の画像形成装置が、画像形成措置101Bであるものとする。
【0120】
次に、設定値管理サービスアドレス設定部307が、応答元の画像形成装置101Bが備える設定値管理サービスアドレス応答部308から、設定値管理サービスアドレスを受信する(ステップS1104)。受信される設定値管理サービスアドレスは、画像形成装置101Bのアクセス先である設定値管理サービス310Bのアドレスである。
【0121】
すなわち、設定値管理サービスアドレス設定部307は、設定値管理サービスのアドレス情報を保持している画像形成装置を探索する探索手段として機能する。そして、設定値管理サービスアドレス設定部307は、探索された画像形成装置から、該画像形成装置を管理している設定値管理サービスのアドレス情報を取得する。
【0122】
設定値管理サービスアドレス設定部307は、画像形成装置101Bから受信したアドレスで、実コンフィグデータ保持部301が保持する実コンフィグデータを更新する(ステップS1105)。これにより、画像形成装置101の実機器構成データ通知部306が、設定値管理サービスアドレスの取得設定処理の後に、以下の処理を実行する。すなわち、実機器構成データ通知部306は、設定値管理サービスアドレス設定部307がS1104において受信した設定値管理サービスアドレスに対応する設定値管理サービスに対してコンフィグデータ生成要求を送信する(図10のステップS1005)。
【0123】
上記ステップS1102において、マルチキャストに対する応答が、例えば予め定めた期間なかった場合は、ステップ1106に進む。そして、設定値管理サービスアドレス設定部307が、設定値管理サービスのアドレスを設定するためのUI画面を画像形成装置101Aのディスプレイ205Aに表示する(ステップS1106)。
【0124】
次に、設定値管理サービスアドレス設定部307が、UI画面上でユーザがアドレスを入力したかを判断する(ステップS1107)。ユーザがアドレスを入力していない場合は、ステップS1107に戻る。ユーザがアドレスを入力した場合は、ステップS1105に進み、設定値管理サービスアドレス設定部307が、入力されたアドレスで実コンフィグデータを更新する。
【0125】
一方、画像形成装置101Bの設定値管理サービスアドレス応答部308が、設定値管理サービスアドレス保持デバイス探索パケットを受信したかを判断する(ステップS1150)。設定値管理サービスアドレス応答部308が、設定値管理サービスアドレス保持デバイス探索パケットを受信していないと判断した場合は、ステップS1150に戻る。設定値管理サービスアドレス応答部308が、設定値管理サービスアドレス保持デバイス探索パケットを受信したと判断した場合は、ステップS1151に進む。この例では、設定値管理サービスアドレス応答部308が、画像形成装置101AがステップS1101においてマルチキャストした設定値管理サービスアドレス保持デバイス探索パケットを受信したものとする。
【0126】
次に、設定値管理サービスアドレス応答部308が、SLPに従った応答パケットを画像形成装置101Aに返す(ステップS1151)。すなわち、設定値管理サービスアドレス応答部308は、探索パケットを受信し、該探索パケットに対する応答として、画像形成装置101Bを管理している設定値管理サービスのアドレス情報を該探索パケットの送信元に対して送信する応答手段として機能する。続いて、設定値管理サービスアドレス応答部308が、画像形成装置101Aから設定値管理サービスアドレス取得要求を受信したかを判断する(ステップS1152)。
【0127】
設定値管理サービスアドレス応答部308が、画像形成装置101Aから設定値管理サービスアドレス取得要求を受信していないと判断した場合は、ステップS1152に戻る。設定値管理サービスアドレス応答部308が、画像形成装置101Aから設定値管理サービスアドレス取得要求を受信したと判断した場合は、ステップS1153に進む。そして、設定値管理サービスアドレス応答部308が、実コンフィグデータ保持部301が保持している実コンフィグデータに設定されている設定値管理サービスアドレスを読み出して、画像形成装置101Aに応答する(ステップS1153)。
【0128】
図11を参照して説明した処理の例では、画像形成装置101Aは、探索パケットに対して応答した画像形成装置101Bに対して、改めて設定値管理サービスのアドレスを問い合わせる(ステップS1103)。しかしながら、画像形成装置101Aが、探索パケットに対する応答として、直接、設定値管理サービスのアドレスを応答してもらうようにしてもよい。
【0129】
また、複数の画像形成装置が稼働している環境においては、画像形成装置101Aがステップ1101においてマルチキャストした探索パケットに対する応答が、複数の画像形成装置から返ってくる場合がある。この場合、画像形成装置101Aの設定値管理サービスアドレス設定部307が、複数の応答から一つの応答を選択し、選択した応答が含むアドレス情報で実コンフィグデータを更新するようにしてもよい。
【0130】
応答の選択方法として、例えば、画像形成装置101Aが、最初に返ってきた応答を選択するようにしてもよいし、ランダムに応答を選択するようにしてもよい。実機器構成データ通知部306は、更新された実コンフィグデータが含むアドレス情報、すなわち選択された応答が含むアドレス情報に対応する設定値管理サービスに対してコンフィグデータ生成要求を送信する。
【0131】
また、画像形成装置101Bが応答を返す際に、直近で設定値管理サービスにアクセスした時刻の情報を一緒に応答するようにしてもよい。つまり、探索パケットに対する応答が、応答元が設定値管理サービスに対して直近にアクセスした時刻の情報であるアクセス時刻情報を含むようにしてもよい。そして、画像形成装置101Aの設定値管理サービスアドレス設定部307は、複数の応答の各々に含まれるアクセス時刻情報に基づいて、一つのアドレス情報を選択するようにしてもよい。例えば、設定値管理サービスアドレス設定部307が、設定値管理サービスにアクセスした時刻が最も最近の画像形成装置からの応答が含むアドレス情報を選択するようにしてもよい。
【0132】
図11を参照して説明した処理によれば、画像形成装置101Aは、画像形成装置101Aのコンフィグデータを管理する設定値管理サービスのアドレスを、周辺の画像形成装置である画像形成装置101Bから取得することができる。
【0133】
なお、前述した図1に示すシステム構成例においては、サービスマンは、サービスマン環境110に配置された端末装置102Bを利用することを想定しているが、本発明が他の構成をとることもできる。例えば、サービスマンがユーザの許可を得て、ユーザ環境100に配置された端末装置102Aを利用するようにしてもよい。
【0134】
また、図2に示すハードウェア構成例においては、サーバコンピュータ群105がサーバコンピュータ210Aとサーバコンピュータ210Bとを備えているが、本発明が他の構成をとることもできる。例えば、サーバコンピュータ群105が、1つのサーバコンピュータ210Aのみによって構成されていてもよい。また、サーバコンピュータ群105が、ユーザ環境100、サービスマン環境110、画像形成装置のベンダ環境120等の中に構成されていてもよい。
【0135】
また、図2に示すハードウェア構成例においては、サーバコンピュータ210Aとサーバコンピュータ210Bとが、ネットワーク220を介して通信を行うが、本発明が他の構成をとることもできる。例えば、サーバコンピュータ210Aとサーバコンピュータ210Bとが、インターネット104を介して通信を行うようにしてもよい。
【0136】
また、図3に示す機能ブロック図においては、実コンフィグデータ保持部301が補助記憶装置204Aに実コンフィグデータを記憶するが、本発明が他の構成をとることもできる。例えば、実コンフィグデータ保持部301が、実コンフィグデータを揮発性メモリ203Aに一時的に記憶するようにしてもよい。実コンフィグデータを揮発性メモリ203Aに一時的に記憶した場合は、電源をOFFにしたときに実コンフィグデータが失われる。従って、この場合には、デバイスの電源をONにする度に、仮想コンフィグデータ受信部303が仮想コンフィグデータを受信する。具体的な処理の流れで示すと、図10のステップ1004で、仮想コンフィグデータの更新判定処理が省略される。
【0137】
また、図3に示す機能ブロック図においては、実機器構成データ収集部304は、画像形成装置の電源をONにする度に実機器構成データの収集を行うが、本発明が他の構成をとるようにしてもよい。例えば、画像形成装置101が、実機器構成データを補助記憶装置204Aに常に記憶する所定の処理部(例えば実機器構成データ保持部)を備えるようにしてもよい。
【0138】
実機器構成データ保持部が、実機器構成データを補助記憶装置204Aに常に記憶するようにした場合、実機器構成データの変更に応じて、実機器構成データ保持部が保持する実機器構成データを速やかに書き換える必要がある。このために、実機器構成データ収集部304は、実機器構成データの変更を監視し、変更内容を検知した場合には実機器構成データ保持部が保持する実機器構成データを更新する。更に、実機器構成データ通知部306が、実機器構成データ保持部に対して実機器構成データを要求して取得するようにしてもよい。
【0139】
また、図3に示す機能ブロック図において、テナント識別子保持部305は、補助記憶装置204Aにテナント識別子を記憶するが、本発明が他の構成をとることもできる。例えば、ユーザが入力装置206Aを用いてテナント識別子を毎回入力するようにしてもよい。テナント識別子を入力するタイミングは、画像形成装置の起動時であってもよいし、起動時とは異なる他のタイミングであってもよい。ユーザが入力装置206Aを用いてテナント識別子を毎回入力する場合、テナント識別子は揮発性メモリ203Aに記憶される。
【0140】
また、図3に示す機能ブロック図において、実機器構成データ通知部306は、画像形成装置が電源ONになったことを検知して処理を行うが、本発明が他の構成をとることもできる。例えば、ユーザが入力装置206Aを用いて仮想コンフィグデータの取得を指示するようにしてもよい。本発明が、ユーザが入力装置206Aを用いて仮想コンフィグデータの取得を指示する構成をとる場合、図10のステップ1001において、実機器構成データ通知部306が、当該ユーザの指示を検知した上で、ステップ1002以降の処理が実行される。
【0141】
また、図3に示す機能ブロック図において、仮想コンフィグデータ生成部316は機種別設定値スキーマ、テナント用コンフィグデータ、仮想機器構成データに基づいて仮想コンフィグデータを生成するが、本発明が他の構成をとることもできる。例えば、仮想コンフィグデータ生成部316が、機種別設定値スキーマとテナント用コンフィグデータとに基づいて、機種に応じた仮想コンフィグデータを生成するようにしてもよい。仮想コンフィグデータ生成部316が、機種に応じた仮想コンフィグデータを生成する場合には、画像形成装置は、当該仮想コンフィグデータで実コンフィグデータを更新する際に、機器構成に応じた実コンフィグデータを参照する構成をとる。
【0142】
また、仮想コンフィグデータ生成部316が、ライセンスデータを用いて仮想コンフィグデータを生成するようにしてもよい。仮想コンフィグデータ生成部316が、ライセンスデータを用いて仮想コンフィグデータを生成する場合、画像形成装置が備えるオプション機能に合わせた仮想コンフィグデータが生成される。
【0143】
また、図3に示す機能ブロック図においては、画像形成装置101が設定値管理サービスアドレス応答部308を備えるが、本発明が他の構成をとることもできる。例えば、端末装置102が設定値管理サービスアドレス応答部308を備えるようにしてもよい。そして、この設定値管理サービスアドレス応答部308が、画像形成装置101の設定値管理サービスアドレス設定部307からの問い合わせに応答するようにしてもよい。この場合、図11のステップ1150乃至ステップ1153の処理は、端末装置102によって実行される。
【0144】
また、図6に示す仮想デバイスのデータ項目である仮想機器構成データ804は、仮想機器構成データの識別情報を有しているが、仮想機器構成データ804が、データの実体を有するようにしてもよい。また、当該仮想デバイスのデータ項目である仮想コンフィグデータ805は、仮想コンフィグデータの識別情報を有しているが、仮想コンフィグデータ805が、データの実体を有するようにしてもよい。
【0145】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【0146】
101 画像形成装置
102 端末装置
105A サーバコンピュータ群
【特許請求の範囲】
【請求項1】
画像形成装置の動作を切り替える動作設定情報を管理する管理装置と、予め設定された管理単位で前記管理装置に管理される画像形成装置とを備える情報処理システムであって、
前記画像形成装置は、
前記画像形成装置が備える機器の構成情報の変更があるかを判断する構成変更判断手段と、
前記構成情報の変更があると判断された場合に、該変更があった構成情報と該画像形成装置に対応する管理単位に関する情報とを含む要求であって、該画像形成装置に対応する動作設定情報の生成を求める動作設定生成要求を、ネットワークを介して前記管理装置に対して送信する要求手段と、
前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が成功したと判断して動作設定情報を生成した管理装置から、前記画像形成装置に対応する動作設定情報を取得する取得手段と、
前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が失敗したと判断した管理装置からエラー通知を受けるエラー通知受信手段と、
前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、管理装置のアドレス情報を保持している画像形成装置を探索し、探索された画像形成装置から、該画像形成装置を管理している管理装置のアドレス情報を取得する探索手段とを備え、
前記要求手段は、前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、前記探索手段が取得したアドレス情報に対応する管理装置に対して前記動作設定生成要求を送信する
ことを特徴とする情報処理システム。
【請求項2】
前記管理装置は、
前記画像形成装置からの動作設定生成要求を受け付ける要求受け付け手段と、
前記受け付けられた動作設定生成要求が含む前記管理単位に関する情報と、予め記憶手段に記憶された管理単位に関する情報とに基づいて、前記動作設定生成要求が成功したかを判断する判断手段と、
前記動作設定生成要求が失敗したと判断された場合に、前記画像形成装置に対して前記エラー通知を行うエラー通知手段と、
前記動作設定生成要求が成功したと判断された場合に、前記動作設定生成要求が含む前記構成情報に基づいて前記画像形成装置に対応する動作設定情報を生成する生成手段と、
前記生成された動作設定情報を前記画像形成装置に対して送信する送信手段とを備える
ことを特徴とする請求項1に記載の情報処理システム。
【請求項3】
前記探索手段は、前記管理装置のアドレス情報を保持している画像形成装置を探索する探索パケットをネットワーク上にマルチキャストする
ことを特徴とする請求項1または請求項2に記載の情報処理システム。
【請求項4】
前記画像形成装置は、さらに、前記探索パケットを受信して、該探索パケットに対する応答として、該画像形成装置を管理している管理装置のアドレス情報を該探索パケットの送信元に対して送信する応答手段を備える
ことを特徴とする請求項3に記載の情報処理システム。
【請求項5】
前記探索手段は、さらに、前記探索パケットに対して複数の応答があった場合に、該複数の応答から一つの応答を選択し、
前記要求手段は、前記探索手段が選択した応答が含むアドレス情報に対応する管理装置に対して前記動作設定生成要求を送信する
ことを特徴とする請求項4に記載の情報処理システム。
【請求項6】
前記探索パケットに対する応答が、応答元が管理装置に対して直近にアクセスした時刻の情報であるアクセス時刻情報を含み、
前記探索手段は、さらに、前記探索パケットに対して複数の応答があった場合に、該複数の応答の各々に含まれる前記アクセス時刻情報に基づいて、前記一つのアドレス情報を選択する
ことを特徴とする請求項5に記載の情報処理システム。
【請求項7】
管理装置によって、予め設定された管理単位で、動作を切り替える動作設定情報を管理される画像形成装置であって、
前記画像形成装置は、
前記画像形成装置が備える機器の構成情報の変更があるかを判断する構成変更判断手段と、
前記構成情報の変更があると判断した場合に、該変更があった構成情報と該画像形成装置に対応する管理単位に関する情報とを含む要求であって、該画像形成装置に対応する動作設定情報の生成を求める動作設定生成要求を、ネットワークを介して前記管理装置に対して送信する要求手段と、
前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が成功したと判断して動作設定情報を生成した管理装置から、前記画像形成装置に対応する動作設定情報を取得する取得手段と、
前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が失敗したと判断した管理装置からエラー通知を受けるエラー通知受信手段と、
前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、管理装置のアドレス情報を保持している画像形成装置を探索し、探索された画像形成装置から、該画像形成装置を管理している管理装置のアドレス情報を取得する探索手段とを備え、
前記要求手段は、前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、前記探索手段が取得したアドレス情報に対応する管理装置に対して前記動作設定生成要求を送信する
ことを特徴とする画像形成装置。
【請求項8】
予め設定された管理単位で、画像形成装置の動作を切り替える動作設定情報を管理する管理装置であって、
前記管理装置は、前記画像形成装置から、該画像形成装置が備える機器の構成情報のうち、変更があった構成情報と、該画像形成装置に対応する管理単位に関する情報とを含む要求であって、該画像形成装置に対応する動作設定情報の生成を求める動作設定生成要求を、ネットワークを介して受け付ける要求受け付け手段と、
前記受け付けられた動作設定生成要求が含む前記管理単位に関する情報と、予め記憶手段に記憶された管理単位に関する情報とに基づいて、前記動作設定生成要求が成功したかを判断する判断手段と、
前記動作設定生成要求が失敗したと判断した場合に、前記画像形成装置に対して前記エラー通知を行うエラー通知手段と、
前記動作設定生成要求が成功したと判断した場合に、前記動作設定生成要求が含む前記構成情報に基づいて前記画像形成装置に対応する動作設定情報を生成する生成手段と、
前記生成された動作設定情報を前記画像形成装置に対して送信する送信手段とを備える
ことを特徴とする管理装置。
【請求項9】
画像形成装置の動作を切り替える動作設定情報を管理する管理装置と、予め設定された管理単位で前記管理装置に管理される画像形成装置とを備える情報処理システムにおける、前記動作設定情報の管理方法であって、
前記画像形成装置が、前記画像形成装置が備える機器の構成情報の変更があるかを判断する工程と、
前記画像形成装置が、前記構成情報の変更があると判断した場合に、該変更があった構成情報と該画像形成装置に対応する管理単位に関する情報とを含む要求であって、該画像形成装置に対応する動作設定情報の生成を求める動作設定生成要求を、ネットワークを介して前記管理装置に対して送信する工程と、
前記画像形成装置が、前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が成功したと判断して動作設定情報を生成した管理装置から、前記画像形成装置に対応する動作設定情報を取得する工程と、
前記画像形成装置が、前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が失敗したと判断した管理装置からエラー通知を受ける工程と、
前記画像形成装置が、管理装置からエラー通知を受けた場合に、管理装置のアドレス情報を保持している画像形成装置を探索し、探索された画像形成装置から、該画像形成装置を管理している管理装置のアドレス情報を取得する工程と、
前記画像形成装置が、前記管理装置からエラー通知を受けた場合に、前記探索により取得したアドレス情報に対応する管理装置に対して前記動作設定生成要求を送信する工程とを有する
ことを特徴とする管理方法。
【請求項10】
請求項9に記載の管理方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項1】
画像形成装置の動作を切り替える動作設定情報を管理する管理装置と、予め設定された管理単位で前記管理装置に管理される画像形成装置とを備える情報処理システムであって、
前記画像形成装置は、
前記画像形成装置が備える機器の構成情報の変更があるかを判断する構成変更判断手段と、
前記構成情報の変更があると判断された場合に、該変更があった構成情報と該画像形成装置に対応する管理単位に関する情報とを含む要求であって、該画像形成装置に対応する動作設定情報の生成を求める動作設定生成要求を、ネットワークを介して前記管理装置に対して送信する要求手段と、
前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が成功したと判断して動作設定情報を生成した管理装置から、前記画像形成装置に対応する動作設定情報を取得する取得手段と、
前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が失敗したと判断した管理装置からエラー通知を受けるエラー通知受信手段と、
前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、管理装置のアドレス情報を保持している画像形成装置を探索し、探索された画像形成装置から、該画像形成装置を管理している管理装置のアドレス情報を取得する探索手段とを備え、
前記要求手段は、前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、前記探索手段が取得したアドレス情報に対応する管理装置に対して前記動作設定生成要求を送信する
ことを特徴とする情報処理システム。
【請求項2】
前記管理装置は、
前記画像形成装置からの動作設定生成要求を受け付ける要求受け付け手段と、
前記受け付けられた動作設定生成要求が含む前記管理単位に関する情報と、予め記憶手段に記憶された管理単位に関する情報とに基づいて、前記動作設定生成要求が成功したかを判断する判断手段と、
前記動作設定生成要求が失敗したと判断された場合に、前記画像形成装置に対して前記エラー通知を行うエラー通知手段と、
前記動作設定生成要求が成功したと判断された場合に、前記動作設定生成要求が含む前記構成情報に基づいて前記画像形成装置に対応する動作設定情報を生成する生成手段と、
前記生成された動作設定情報を前記画像形成装置に対して送信する送信手段とを備える
ことを特徴とする請求項1に記載の情報処理システム。
【請求項3】
前記探索手段は、前記管理装置のアドレス情報を保持している画像形成装置を探索する探索パケットをネットワーク上にマルチキャストする
ことを特徴とする請求項1または請求項2に記載の情報処理システム。
【請求項4】
前記画像形成装置は、さらに、前記探索パケットを受信して、該探索パケットに対する応答として、該画像形成装置を管理している管理装置のアドレス情報を該探索パケットの送信元に対して送信する応答手段を備える
ことを特徴とする請求項3に記載の情報処理システム。
【請求項5】
前記探索手段は、さらに、前記探索パケットに対して複数の応答があった場合に、該複数の応答から一つの応答を選択し、
前記要求手段は、前記探索手段が選択した応答が含むアドレス情報に対応する管理装置に対して前記動作設定生成要求を送信する
ことを特徴とする請求項4に記載の情報処理システム。
【請求項6】
前記探索パケットに対する応答が、応答元が管理装置に対して直近にアクセスした時刻の情報であるアクセス時刻情報を含み、
前記探索手段は、さらに、前記探索パケットに対して複数の応答があった場合に、該複数の応答の各々に含まれる前記アクセス時刻情報に基づいて、前記一つのアドレス情報を選択する
ことを特徴とする請求項5に記載の情報処理システム。
【請求項7】
管理装置によって、予め設定された管理単位で、動作を切り替える動作設定情報を管理される画像形成装置であって、
前記画像形成装置は、
前記画像形成装置が備える機器の構成情報の変更があるかを判断する構成変更判断手段と、
前記構成情報の変更があると判断した場合に、該変更があった構成情報と該画像形成装置に対応する管理単位に関する情報とを含む要求であって、該画像形成装置に対応する動作設定情報の生成を求める動作設定生成要求を、ネットワークを介して前記管理装置に対して送信する要求手段と、
前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が成功したと判断して動作設定情報を生成した管理装置から、前記画像形成装置に対応する動作設定情報を取得する取得手段と、
前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が失敗したと判断した管理装置からエラー通知を受けるエラー通知受信手段と、
前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、管理装置のアドレス情報を保持している画像形成装置を探索し、探索された画像形成装置から、該画像形成装置を管理している管理装置のアドレス情報を取得する探索手段とを備え、
前記要求手段は、前記エラー通知受信手段が管理装置からエラー通知を受けた場合に、前記探索手段が取得したアドレス情報に対応する管理装置に対して前記動作設定生成要求を送信する
ことを特徴とする画像形成装置。
【請求項8】
予め設定された管理単位で、画像形成装置の動作を切り替える動作設定情報を管理する管理装置であって、
前記管理装置は、前記画像形成装置から、該画像形成装置が備える機器の構成情報のうち、変更があった構成情報と、該画像形成装置に対応する管理単位に関する情報とを含む要求であって、該画像形成装置に対応する動作設定情報の生成を求める動作設定生成要求を、ネットワークを介して受け付ける要求受け付け手段と、
前記受け付けられた動作設定生成要求が含む前記管理単位に関する情報と、予め記憶手段に記憶された管理単位に関する情報とに基づいて、前記動作設定生成要求が成功したかを判断する判断手段と、
前記動作設定生成要求が失敗したと判断した場合に、前記画像形成装置に対して前記エラー通知を行うエラー通知手段と、
前記動作設定生成要求が成功したと判断した場合に、前記動作設定生成要求が含む前記構成情報に基づいて前記画像形成装置に対応する動作設定情報を生成する生成手段と、
前記生成された動作設定情報を前記画像形成装置に対して送信する送信手段とを備える
ことを特徴とする管理装置。
【請求項9】
画像形成装置の動作を切り替える動作設定情報を管理する管理装置と、予め設定された管理単位で前記管理装置に管理される画像形成装置とを備える情報処理システムにおける、前記動作設定情報の管理方法であって、
前記画像形成装置が、前記画像形成装置が備える機器の構成情報の変更があるかを判断する工程と、
前記画像形成装置が、前記構成情報の変更があると判断した場合に、該変更があった構成情報と該画像形成装置に対応する管理単位に関する情報とを含む要求であって、該画像形成装置に対応する動作設定情報の生成を求める動作設定生成要求を、ネットワークを介して前記管理装置に対して送信する工程と、
前記画像形成装置が、前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が成功したと判断して動作設定情報を生成した管理装置から、前記画像形成装置に対応する動作設定情報を取得する工程と、
前記画像形成装置が、前記動作設定生成要求の送信先の管理装置であって、該動作設定生成要求が失敗したと判断した管理装置からエラー通知を受ける工程と、
前記画像形成装置が、管理装置からエラー通知を受けた場合に、管理装置のアドレス情報を保持している画像形成装置を探索し、探索された画像形成装置から、該画像形成装置を管理している管理装置のアドレス情報を取得する工程と、
前記画像形成装置が、前記管理装置からエラー通知を受けた場合に、前記探索により取得したアドレス情報に対応する管理装置に対して前記動作設定生成要求を送信する工程とを有する
ことを特徴とする管理方法。
【請求項10】
請求項9に記載の管理方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2013−20380(P2013−20380A)
【公開日】平成25年1月31日(2013.1.31)
【国際特許分類】
【出願番号】特願2011−152180(P2011−152180)
【出願日】平成23年7月8日(2011.7.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成25年1月31日(2013.1.31)
【国際特許分類】
【出願日】平成23年7月8日(2011.7.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]