(57)【要約】【課題】  管理装置から取得する指示書に記述される設置データの取得先を書き換えて取得作業を他の管理装置に代理させることで、設置データの取得および適用の処理を効率化する。【解決手段】    管理装置であって、情報処理装置が要求する第１の指示書を要求元の情報処理装置に応答した後、他の管理装置が情報処理装置から受け取る前記第１の指示書を解析して第１の設置データまたは第２の設置データの取得先を書き換えた第２の指示書を情報処理装置が前記他の管理装置から受け取り、当該第２の指示書に従い情報処理装置から取得要求される第１の設置データを要求元の情報処理装置に応答する。そして、情報処理装置が管理装置から第１の設置データを取得完了した通知を受けて、他の管理装置が書き換えた第２の指示書に従い取得要求される第２の設置データを他の管理装置に応答する構成を特徴とする。【選択図】  図７
2017158014.tif 000002
【特許請求の範囲】
【請求項１】
第１の管理装置と、第２の管理装置と、情報処理装置とが通信する自動設置システムであって、
前記情報処理装置は、
前記第１の管理装置から取得する第１の指示書を前記第２の管理装置に通知して、前記第２の管理装置が設置データの取得先を書き換えた第２の指示書を取得する取得手段と、
前記第２の指示書に従い前記第１の管理装置から取得する所定のファームウエアを取得して適用する第１の適用手段と、
前記所定のファームウエアの取得が完了したことを前記第２の管理装置に通知することで、前記第２の管理装置が第１の管理装置から取得した所定の設置データを、前記所定のファームウエアの適用の処理を完了した後に取得して適用する第２の適用手段と、
を備え、
前記第２の管理装置は、
前記情報処理装置から取得する前記第１の指示書に記述される第１の設置データまたは第２の設置データの取得先を書き換えた第２の指示書を作成する作成手段と、
前記作成手段が作成した前記第２の指示書を前記情報処理装置に応答する第１の応答手段と、
前記情報処理装置が前記第２の指示書に従い、前記第１の管理装置から前記第１の設置データを取得完了した通知を前記情報処理装置から受けた後、前記第１の管理装置から前記第２の設置データを取得する取得手段と、
前記情報処理装置が前記第１の設置データを前記ソフトウエアに適用し終えた通知を受けて、前記第１の管理装置から取得した前記第２の設定データを前記情報処理装置に応答する第２の応答手段と、
を備えることを特徴とする自動設置システム。
【請求項２】
前記第２の管理装置は、
前記情報処理装置から取得する第１の指示書を解析して、前記第１および第２の設置データを前記第２の管理装置から取得できるかどうかを判断する第１の判断手段を備え、
前記作成手段は、前記情報処理装置から取得する前記第１の指示書に記述される第１の設置データまたは第２の設置データの取得先を書き換えた第２の指示書を作成することを特徴とする請求項１に記載の自動設置システム。
【請求項３】
前記第２の管理装置は、
前記情報処理装置から取得する第１の指示書を解析して、前記第１および第２の設置データを前記第１の管理装置から取得する第１の取得時間と第２の取得時間とを算出する算出手段と、
前記算出手段が算出した第１の取得時間が第２の取得時間よりも長いかどうかを判断する第２の判断手段と、を備え、
前記作成手段は、前記第１の取得時間が第２の取得時間よりも長いと判断した場合、前記情報処理装置から取得する前記第１の指示書に記述される第１の設置データまたは第２の設置データの取得先を書き換えた第２の指示書を作成することを特徴とする請求項１に記載の自動設置システム。
【請求項４】
前記第１の設置データは、所定のファームウエアであり、前記第２の設置データは、所定のソフトウエアおよび、当該所定のファームウエアまたは所定のソフトウエアに対して前記情報処理装置に適応して設定すべきデバイス設定値であることを特徴とする請求項１乃至３のいずれか１項に記載の自動設置システム。
【請求項５】
前記第１の指示書は、第１または第２の設置データを取得する取得先が記述されていることを特徴とする請求項１に記載の自動設置システム。
【請求項６】
前記取得先は、所定のＩＰアドレスで特定されることを特徴とする請求項１に記載の自動設置システム。
【請求項７】
情報処理装置と、他の管理装置と通信する管理装置であって、
前記情報処理装置から取得する前記第１の指示書に記述される第１の設置データまたは第２の設置データの取得先を書き換えた第２の指示書を作成する作成手段と、
前記作成手段が作成した前記第２の指示書を前記情報処理装置に応答する第１の応答手段と、
前記情報処理装置が前記第２の指示書に従い、前記他の管理装置から前記第１の設置データを取得完了した通知を前記情報処理装置から受けた後、前記他の管理装置から前記第２の設置データを取得する取得手段と、
前記情報処理装置が前記第１の設置データを前記ソフトウエアに適用し終えた通知を受けて、前記他の管理装置から取得した前記第２の設定データを前記情報処理装置に応答する第２の応答手段と、
を備えることを特徴とする管理装置。
【請求項８】
第１の管理装置または第２の管理装置と通信する情報処理装置であって、
前記第１の管理装置から取得する第１の指示書を前記第２の管理装置に通知して、前記第２の管理装置が設置データの取得先を書き換えた第２の指示書を取得する取得手段と、
前記第２の指示書に従い前記第１の管理装置から取得する所定のファームウエアを取得して適用する第１の適用手段と、
前記所定のファームウエアの取得が完了したことを前記第２の管理装置に通知することで、前記第２の管理装置が第１の管理装置から取得した所定の設置データを、前記所定のファームウエアの適用の処理を完了した後に取得して適用する第２の適用手段と、
を備えることを特徴とする情報処理装置。
【請求項９】
情報処理装置と、他の管理装置と通信する管理装置の制御方法であって、
前記情報処理装置から取得する前記第１の指示書に記述される第１の設置データまたは第２の設置データの取得先を書き換えた第２の指示書を作成する作成工程と、
前記作成工程が作成した前記第２の指示書を前記情報処理装置に応答する第１の応答工程と、
前記情報処理装置が前記第２の指示書に従い、前記他の管理装置から前記第１の設置データを取得完了した通知を前記情報処理装置から受けた後、前記他の管理装置から前記第２の設置データを取得する取得工程と、
前記情報処理装置が前記第１の設置データを前記ソフトウエアに適用し終えた通知を受けて、前記他の管理装置から取得した前記第２の設定データを前記情報処理装置に応答する第２の応答工程と、
を備えることを特徴とする管理装置の制御方法。
【請求項１０】
第１の管理装置または第２の管理装置と通信する情報処理装置の制御方法であって、
前記第１の管理装置から取得する第１の指示書を前記第２の管理装置に送信する送信工程と、
前記第２の管理装置が前記第１の指示書から前記第１の設置データまたは第２の設置データの取得先を書き換えた第２の指示書に従い前記第１の設置データを前記第１の管理装置から取得する取得工程と、
前記取得工程が前記情報処理装置から前記第１の設置データを取得完了したことを前記第２の管理装置に通知する第１の通知工程と、
前記第１の管理装置から取得完了した前記第１の設置データを前記ソフトウエアに適用する第１の適用工程と、
前記第１の適用工程が前記第１の設置データを適用し終えた通知を前記第２の管理装置に行う第２の通知工程と、
前記第１の設置データを適用し終えた通知に応答して前記第２の管理装置から取得する前記第２の設置データを前記ソフトウエアに適用する第２の適用工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項１１】
請求項９に記載の管理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【請求項１２】
請求項１０に記載の情報処理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動設置システム、管理装置、情報処理装置、管理装置の制御方法、情報処理装置の制御方法、及びプログラムに関するものである。
【背景技術】
【０００２】
情報処理装置の一例である画像形成装置を新規導入するにあたり、顧客先での使用環境に応じた初期設置作業が必要である。画像形成装置の設置作業には多くの時間と手間が掛かる。そのため、設置作業に必要なファームウエアやソフトウエア、設定値データなど（以下、設置データとする）を予め用意しておき、画像形成装置が、用意したデータを作業指示情報（スクリプト）に従って自動的にかつ効率よく設置データを適用するシステムが提案されている。
このようなシステムの中には、インターネット上のサーバに作業指示情報や設置データを配置しておき、設置作業時に画像形成装置が取得するものがある。
【０００３】
一方で、タスク実行中に別のタスクを並行して実行するような技術がある。例えば、特開２００９−１６９７１３では、動作環境に応じてタスク実行中にコンテンツを再生する技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−６６５２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
情報処理装置がインターネットを介して設置データを取得するシステムは、外部ネットワークとの通信速度が遅い環境で使用されることがある。ここで、通信速度が遅い環境として、例えば、設置する環境で制限を掛けている場合や、そもそもネットワークの整備が遅れている場合、携帯端末の電話回線を介して取得する場合などが挙げられる。通信速度が遅い環境では設置データを取得するために多くの時間が掛かるため、設置作業全体の効率が悪くなってしまう。
【０００６】
このような設置作業の効率化のため、特許文献１に挙げるような並行処理技術を利用して設置データ適用中に別の設置データを取得する方法が考えられるが、システムの根幹を変更するような場合は、実行可能な処理が制限されるためシステム内の並行処理を実現できない等の課題が指摘されていた。
【０００７】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、管理装置から取得する指示書に記述される設置データの取得先を書き換えて取得作業を他の管理装置に代理させることで、設置データの取得および適用の処理を効率化できる仕組みを提供することである。
【課題を解決するための手段】
【０００８】
上記目的を達成する本発明の管理装置は以下に示す構成を備える。
第１の管理装置と、第２の管理装置と、情報処理装置とが通信する自動設置システムであって、前記情報処理装置は、前記第１の管理装置から取得する第１の指示書を前記第２の管理装置に通知して、前記第２の管理装置が設置データの取得先を書き換えた第２の指示書を取得する取得手段と、前記第２の指示書に従い前記第１の管理装置から取得する所定のファームウエアを取得して適用する第１の適用手段と、前記所定のファームウエアの取得が完了したことを前記第２の管理装置に通知することで、前記第２の管理装置が第１の管理装置から取得した所定の設置データを、前記所定のファームウエアの適用の処理を完了した後に取得して適用する第２の適用手段と、を備え、前記第２の管理装置は、前記情報処理装置から取得する前記第１の指示書に記述される第１の設置データまたは第２の設置データの取得先を書き換えた第２の指示書を作成する作成手段と、前記作成手段が作成した前記第２の指示書を前記情報処理装置に応答する第１の応答手段と、前記情報処理装置が前記第２の指示書に従い、前記第１の管理装置から前記第１の設置データを取得完了した通知を前記情報処理装置から受けた後、前記第１の管理装置から前記第２の設置データを取得する取得手段と、前記情報処理装置が前記第１の設置データを前記ソフトウエアに適用し終えた通知を受けて、前記第１の管理装置から取得した前記第２の設定データを前記情報処理装置に応答する第２の応答手段と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、管理装置から取得する指示書に記述される設置データの取得先を書き換えて取得作業を他の管理装置に代理させることで、設置データの取得および適用の処理を効率化できる。
【図面の簡単な説明】
【００１０】
【図１】自動設置システムの構成を示す図である。
【図２】画像形成装置の構成の例を示すブロック図である。
【図３】画像形成装置のソフトウエア構成の例を示す図である。
【図４】サーバ装置の構成を示すブロック図である。
【図５】サーバ装置のソフトウエア構成を示すブロック図である。
【図６】設置手順を記述した設置用のスクリプトの一例を示す図である。
【図７】情報処理装置の制御方法を説明するフローチャートである。
【図８】情報処理装置の制御方法を説明するフローチャートである。
【図９】サーバ装置の制御方法を説明するフローチャートである。
【図１０】サーバ装置の制御方法を説明するフローチャートである。
【図１１】設置手順を記述した設置用のスクリプトの他の例を示す図である。
【図１２】画像形成装置の制御方法を示すフローチャートである。
【発明を実施するための形態】
【００１１】
次に本発明を実施するための最良の形態について図面を参照して説明する。
＜システム構成の説明＞
〔第１実施形態〕
《システム全体構成》
図１は、本実施形態を示す自動設置システムの構成を示す図である。本例の自動設置システムは、ネットワーク１００に接続された情報処理装置である複数の画像形成装置１０１と、画像形成装置１０１が通信可能に接続されるインターネット上の第１の管理装置である設置管理サーバ１０２、第２の管理装置である代理サーバ１０３から構成される。
【００１２】
図１において、画像形成装置１０１Ａ、１０１Ｂ（以下、これらを総称する場合は、画像形成装置１０１とする）は、複写機能を実行するためのスキャナ、プリンタに対して、ファクシミリ、ファイル送信機能等複数の機能を統合した複合機である。また、画像形成装置１０１は、ネットワークに接続するインタフェースを有している。
【００１３】
設置管理サーバ１０２は、画像形成装置１０１の納品先、顧客、受注した商談などの単位で、複数の設置データや各設置データの容量、設置作業時間の履歴などのメタ情報を管理するためのサーバである。設置データには、ファームウエアやソフトウエア（以降、拡張プログラムとする）、設定値などの適用対象データに加え、設置データの取得先や適用順序などが記載された作業指示情報（以下、スクリプト）などが含まれる。尚、第１の指示書であるスクリプトは図６において後述する。なお、第１の指示書とは、情報処理装置の識別情報に対応づけて設置管理サーバ１０２が管理している。
【００１４】
代理サーバ１０３は、画像形成装置１０１に適用すべき設置データなどを代理で取得するサーバである。尚、本実施形態において代理サーバ１０３は、設置管理サーバ１０２で管理するスクリプトを生成するためのコンピュータとして記載する。しかしながら、これに限定されず、代理サーバ１０３は代理取得のみを行うサーバとして動作し、設置管理サーバ１０２や不図示のクライアントコンピュータでスクリプトを生成する構成でも良い。
【００１５】
《ハードウェア構成例−画像形成装置》
図２は、図１に示した画像形成装置１０１の構成の例を示すブロック図である。
図２において、画像形成装置１０１は、制御ユニット２００、操作部２０１、スキャナ２０２、プリンタ２０３を備える。制御ユニット２００は、操作部関連の処理部として、ＣＰＵ２１０、ＲＡＭ２１１、操作部Ｉ／Ｆ２１２、ネットワークＩ／Ｆ２１３、ＲＯＭ２１５、ＨＤＤ２１６、画像バスＩ／Ｆ２１７、システムバス２１８を備える。
ＣＰＵ２１０は、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略称である。ＲＡＭ２１１は、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの略称である。ＲＯＭ２１５は、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの略称である。ＨＤＤは、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅの略称である。
【００１６】
また、制御ユニット２００は、印刷、スキャン関連の処理部として、画像バス２１９、デバイスＩ／Ｆ２２０、スキャナ画像処理部２２１、プリンタ画像処理部２２２を備える。なお、スキャナ２０２、及びスキャナ画像処理部２２１については必要に応じて備えることになる。ＣＰＵ２１０は、制御ユニット２００全体を制御するためのコントローラである。ＲＡＭ２１１は、画像データやソフトウエアの動作に必要な処理を一時記憶するためのメモリである。
【００１７】
操作部Ｉ／Ｆ２１２は、操作部２０１とのインタフェースであり、操作部２０１で表示する画像データを操作部２０１に対して出力する。また、操作部Ｉ／Ｆ２１２は、ユーザが操作部２０１により入力した情報をＣＰＵ２１０へ伝達する。
【００１８】
ネットワークＩ／Ｆ２１３は、ネットワークと接続しており、ネットワーク１００を介して、外部の装置と情報のやり取りをするインタフェースである。外部の装置とは、例えば設置管理サーバ１０２を指す。ＲＯＭ２１５は、ブートＲＯＭであり、システムのブートプログラムが格納されている。ＨＤＤ２１６は、システムソフトウェア、画像データ、設定情報などを格納する。
【００１９】
画像バスＩ／Ｆ２１７は、システムバス２１８と画像バス２１９とを接続し、データ変換を行うバスブリッジである。システムバス２１８は、制御ユニット２００を構成する各コンポーネント同士の共通データ交換経路である。
【００２０】
画像バス２１９は、ＰＣＩバス、またはＩＥＥＥ１３９４で構成されており、画像データを高速に転送する経路である。デバイスＩ／Ｆ２２０は、画像入出力デバイスであるスキャナ２０２及びプリンタ２０３と制御ユニット２００とを接続し、画像データの同期系／非同期系の変換を行う。
【００２１】
スキャナ画像処理部２２１は、入力画像に対し、補正や加工、編集を行う。プリンタ画像処理部２２２は、プリント出力画像データに対して、プリンタ２０３の性能に応じた補正、解像度の変換などを行う。
【００２２】
《ソフトウエア構成例−画像形成装置》
図３は、図１に示した画像形成装置１０１のソフトウエア構成の例を示す図である。
図３の（Ａ）において、ＯＳ３００上では、ネイティブプログラム３０１と拡張プログラム実行プラットフォーム３０２が動作している。ネイティブプログラム３０１は、プリンタ２０３によるプリント機能やＦＡＸのＦＡＸ送受信機能、スキャナ２０２による読取機能などの、画像形成装置１０１Ａ、１０１Ｂに元々備わっている機能の制御用プログラムである。拡張プログラム実行プラットフォーム３０２は、画像形成装置１０１Ａ、１０１Ｂに機能を追加する拡張プログラムの実行プラットフォームである。
【００２３】
ネイティブプログラム３０１上では、ファームウエア更新サービス３０３、オプション有効化サービス３０４、設定管理サービス３０５が動作している。また、拡張プログラム実行プラットフォーム３０２上では、拡張プログラムシステムサービス３０６と拡張プログラム３０７とが動作している。
【００２４】
ファームウエア更新サービス３０３は、ファームウエアを更新するための各種機能を提供するサービスである。例えば、ファームウエア更新サービス３０３は、ユーザから指定されたファームウエアを参照し、該ファームウエアの更新が必要か否かを判断する。また、ファームウエア更新サービス３０３は、ネイティブプログラム３０１に対し、またはネイティブプログラム３０１を介して、画像形成装置１０１のファームウエアを更新する。
【００２５】
オプション有効化サービス３０４は、ネイティブプログラム３０１に予め組み込まれているオプション機能（以下、組み込みオプションプログラムとも表記する）を、有効化するためのプログラムである。オプション有効化サービス３０４は、ユーザから指定されたオプションライセンスファイルにより特定されるオプション機能を識別し有効化する。
【００２６】
設定管理サービス３０５は、プリンタ２０３やＦＡＸなどの各種設定情報を管理するためのプログラムである。設定管理サービス３０５は、例えば、ユーザから１つまたは複数の設定、または複数の設定情報を含むファイルを指定されると、ネイティブプログラム３０１の設定情報を書き換える機能を提供する。なお、設定管理サービス３０５は、ユーザインタフェース（以下、ＵＩと記述）を持っており、ユーザは画像形成装置１０１の操作部２０１に表示される設定メニュー画面（不図示）を介して設定変更の指示ができる。
【００２７】
拡張プログラムシステムサービス３０６は、拡張プログラム３０７に共通に有用なユーティリティライブラリーであり、システムから提供される。拡張プログラム３０７から拡張プログラムシステムサービス３０６の機能を呼び出すことにより、拡張プログラム３０７を開発する手間を省くことができる。
【００２８】
拡張プログラム３０７は、拡張プログラム実行プラットフォーム３０２または各サービス（３０３から３０６）を介してのみ、他の拡張プログラム３０７など、画像形成装置１０１の各モジュールへアクセスすることができる。また、ＵＩを持つ拡張プログラム３０７は、画像形成装置１０１の操作部２０１に表示されるメインメニュー画面（不図示）にアイコン等を表示することもできる。
【００２９】
なお、図２に示した操作部Ｉ／Ｆ２１２は、操作部２０１を通じて、メインメニュー画面上のアイコンがユーザによって選択されたことを検知すると、その選択を示す情報をＣＰＵ２１０に送信する。上記選択を示す情報を受け取ったＣＰＵ２１０が、ユーザに選択された拡張プログラム３０７のＵＩを操作部２０１に表示する。
【００３０】
なお、図３の（Ａ）に示すソフトウエア構成は、基本的な部分のみであり、実施環境によっては、画像形成装置１０１が他のサービス等を備えるようにしてもよい。また、設定を制限するなどの理由によって不要となるサービスについては、画像形成装置１０１が備えないようにしてもよい。
【００３１】
図３の（Ｂ）は、画像形成装置１０１で動作する自動設置サポート機能３５０（以下、サポート機能）の機能構成の例である。
図３の（Ｂ）において、本サポート機能３５０は、設置管理サーバ１０２から取得した設置データを、画像形成装置１０１のシステム構成に自動で適用する（以下、自動設置とする）。
【００３２】
本実施形態において、サポート機能３５０は、画像形成装置１０１の拡張プログラム３０７の一つとして実装されるものとする。サポート機能の各構成要素は、画像形成装置１０１のＲＯＭ２１５やＨＤＤ２１６に格納されており、ＣＰＵ２１０が各機能に応じたプログラムを実行することによりサポート機能を実現する。
サポート機能は、ＵＩ制御部３５１、通信部３５２、処理実行部３５３、及びスクリプト管理部３５４を有する。ＵＩ制御部３５１は、サポート機能を操作するためのＵＩを、操作部２０１を通じてユーザに提供し、ユーザの操作を受け付ける。
【００３３】
通信部３５２は、自動設置の際、ネットワークＩ／Ｆ２１３を介して設置管理サーバ１０２や代理サーバ１０３と通信を行い、設置に必要な各種データの取得などを行う。取得するデータは、例えば、設置データを画像形成装置１０１に適用するための設置の作業指示情報であるスクリプトやソフトウエアなどの設置データである。
処理実行部３５３は、ＵＩ制御部３５１、通信部３５２、スクリプト管理部３５４の指示に従い、各種処理を行う。スクリプト管理部３５４は、通信部３５２が取得した作業指示情報であるスクリプトを解析し、処理実行部３５３が実行すべき処理、順序を決定する。
【００３４】
《ハードウェア構成例−設置管理サーバ、代理サーバ》
図４は、図１に示した設置管理サーバ１０２、及び代理サーバ１０３の構成の例を示すブロック図である。
図４において、設置管理サーバ１０２は、制御ユニット４００、入力装置のマウス４０１、キーボード４０２、出力装置であるディスプレイ４０３を備える。制御ユニット４００は、設置管理サーバ１０２の全体の動作の制御部として、ＣＰＵ４１０、ＲＯＭ４１１、ＲＡＭ４１２、ＨＤＤ４１３、操作部Ｉ／Ｆ４１４、ディスプレイＩ／Ｆ４１５、ネットワークＩ／Ｆ４１６を備える。
【００３５】
ＣＰＵ４１０は、ＲＯＭ４１１に記憶された制御プログラムを読み出して各種制御処理を実行する。ＲＡＭ４１２は、ＣＰＵ４１０の主メモリであり、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ４１３は、画像データや各種プログラム、或いは後述する各種情報テーブルを記憶する。
【００３６】
操作部Ｉ／Ｆ４１４は、設置管理サーバ１０２で実行されるプログラムへの制御操作を入力するユーザインタフェース端末を接続するＩ／Ｆである。本実施形態では、マウス４０１やキーボード４０２で構成するが、その限りではない。また、設置管理サーバ１０２においては、操作部Ｉ／Ｆ４１４は必須ではなく、ネットワークＩ／Ｆ４１６を介して制御操作を行う構成でも良い。
【００３７】
ディスプレイＩ／Ｆ４１５は、設置管理サーバ１０２で実行されるプログラムのＵＩを表示するディスプレイ端末を接続するＩ／Ｆである。本実施形態ではディスプレイ４０３で構成するが、その限りではない。また、設置管理サーバ１０２においては、ディスプレイＩ／Ｆ４１５は必須ではなく、ネットワークＩ／Ｆ４１６を介してＵＩを表示する構成でも良い。ネットワークＩ／Ｆ４１６は、制御ユニット４００をネットワーク１００に接続する。ネットワークＩ／Ｆ４１６は、ネットワークを介して他の装置との間で各種情報を送受信する。
【００３８】
《ソフトウエア構成例−設置管理サーバ》
図５は、図１に示した設置管理サーバ１０２、代理サーバ１０３のソフトウエア構成を示すブロック図である。
図５の（Ａ）は、設置管理サーバ１０２で動作する、設置管理機能５００、および、データ格納部５０４のソフトウエア構成の例である。
図５の（Ａ）において、設置管理サーバ１０２のＣＰＵ４１０が設置管理機能５００を実行することにより、各機能が実現される。設置管理機能５００は、制御部５０１、設置データ管理部５０２、通信部５０３を有する。制御部５０１は、通信部５０３が受信する要求内容に従って、設置データ管理部５０２に対して設置データの格納、削除、更新、取得等の処理を指示する。
【００３９】
設置データ管理部５０２は、制御部５０１の指示に従い、後述するデータ格納部５０４に対して設置データの格納、削除、更新を行う。また、設置データ管理部５０２はデータ格納部５０４から設置データの取得などを行う。通信部５０３は、画像形成装置１０１などからの要求を受信して、制御部５０１に要求内容を送信する。更に、制御部５０１から要求に対する処理結果を受け取り、前記要求に対する応答データを作成し、要求元に応答データを送信する。
【００４０】
データ格納部５０４は、設置管理サーバ１０２で動作するデータベースである。尚、本実施形態では設置管理サーバ１０２にデータ格納部５０４が構成されているが、設置管理機能５００と連携できるようになっていれば別のサーバに配置されるような構成でも良い。データ格納部５０４で管理するデータの内容については表１乃至表３を用いて説明する。
尚、本実施形態において、設置管理機能５００は設置の作業指示書であるスクリプトを設置データとして管理しているが、これに限らず、サーバでスクリプトを生成するような構成としても良い。
【００４１】
《設置管理サーバが管理する設置データ》
表１乃至表３は本実施形態における、設置管理サーバ１０２のデータ格納部５０４で管理するデータテーブルの例を示す表である。
【表１】
2017158014.tif 000003
〔設置データ管理テーブル〕
ここで、S001とS004が第１の設置データに対応し、他のS002,S003,S005,S006は第２の設置データに対応する。
表１は、設置データ管理テーブルで、設置データＩＤ、設置データ名、容量のカラムで構成される。
【００４２】
設置データＩＤは、本テーブルにおけるユニークなＩＤで、画像形成装置１０１で使用する設置データを特定するための情報である。設置データＩＤは、作業者や営業担当者によって設置データが作成・登録されると、設置データ管理部５０２が本テーブルでユニークとなるように割り振る値である。尚、本表では説明の簡略化のため"Ｓ００１"といった４桁の文字列で記載しているが、例えば文字列の桁数を増やしたり、ＵＵＩＤ（Ｕｎｉｖｅｒｓａｌｌｙ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ）などを用いたりしても良い。
【００４３】
表１において、設置データ名は、作業者や営業担当者がどのような設置データを指すかを理解するための情報である。設置データ名は、作業者や営業担当者が情報を登録する際に任意の値を割り当てることができる。
同表１において、容量（ＭＢ）は、各々の設置データのファイル容量を示す情報である。容量は、作業者や営業担当者によって設置データが作成・登録されると、設置データ管理部５０２が登録対象のファイル容量を割り当てる。
例えば、表１の一行目は、設置データＩＤ"Ｓ００１"は、機種Ａ用のファームウエアＶ７３．５２であり、容量が２ＧＢのデータを指すことが分かる。
本表１において、設置データテーブルは、設置データの情報として容量のみ保持しているが、これに限らずカラムの増減があっても良い。
【表２】
2017158014.tif 000004
〔ログ管理テーブル〕
【００４４】
表２は、ログ管理テーブルで、画像形成装置１０１が表１の設置データを使って設置作業を行ったときのログを管理しており、ログＩＤ、処理名、処理日、設置データＩＤ、処理時間（ｓｅｃ）のカラムで構成される。
本表２は、サポート機能３５０が各処理を完了した際の適用完了通知（後述する図８のＳ８０４）を受けた際に新規ログとして追加される。しかしながらこれに限らず、サポート機能３５０がすべての処理を完了したときにまとめて追加しても良いし、設置作業者が設置管理サーバ１０２へアクセスし、ユーザ操作によって追加しても良い。
【００４５】
ログＩＤは、本テーブルにおけるユニークなＩＤで、画像形成装置１０１で使用する設置データを特定するための情報である。ログＩＤは、画像形成装置１０１から処理結果が通知されると、設置データ管理部５０２が本テーブルでユニークとなるように割り振る値である。
尚、本表では説明の簡略化のため"Ｌ００１"といった４桁の文字列で記載しているが、例えば文字列の桁数を増やしたり、ＵＵＩＤ（Ｕｎｉｖｅｒｓａｌｌｙ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ）などを用いたりしても良い。
【００４６】
表２において、処理名は、ログの対象となる処理の名称を示す情報である。例えば、図６に後述するスクリプトに記載されたコマンドと同じ名称を記載する。尚、本表２に記載すべき処理名は、実施した処理が特定できれば良く、別のテーブルで処理を定義し、その定義情報を識別する情報を記載しても良い。
処理日は、設置作業を実施した日を示す情報である。本表では処理を実施した日付のみを表現しているが、これに限らず、用途に合わせて時分秒の単位まで記載しても良い。
【００４７】
表２において、設置データＩＤは、設置作業実施時に使用した設置データを示す識別子である。設置データＩＤは、表１に定義された設置データＩＤが記載される。これにより本表と設置データテーブルの情報が関連付けられる。
表２において、処理時間は、処理名に記載された処理がどのくらいの時間を要するかを示す情報である。本表では秒単位で記載しているが、これに限らず、例えばミリ秒単位でも良い。
例えば、表２の一行目は、ログＩＤ"Ｌ００１"は、設置データＳ００１を使ったファームウエア更新処理を行い、その処理に２０分を要したことが示されている。
【００４８】
尚、本表のカラムで定義した情報は一例であり、カラムの増減があっても良い。例えばログＩＤを定義せず、複数のカラムの組み合わせをキーとしても良い。また処理を実施した画像形成装置１０１の情報を加えても良い。
【表３】
2017158014.tif 000005
〔処理時間管理テーブル〕
【００４９】
表３は、処理時間管理テーブルで、画像形成装置１０１が表２の処理時間のログ、及び表１の設置データの容量から、設置作業の各処理の適用に掛かった平均処理時間を計算、管理するためのテーブルである。処理時間管理テーブルは、処理名、平均処理時間のカラムで構成される。
【００５０】
表３において、処理名は、本テーブルにおけるユニークな値であり、表２の処理名と同じ値を使用する。平均処理時間は、表２における処理名ごとの平均の処理時間が記載される。本カラムの値は、表２にログが追加されると更新される。本表３では、１ＭＢあたりの処理時間を秒単位で記載しているが、これに限らず、１ＧＢあたりの処理時間でも良いし、分単位やミリ秒単位で記載しても良い。
例えば、表３の一行目は、ｕｐｄａｔｅＦｉｒｍｗａｒｅ処理が、平均０．６ｓｅｃ／ＭＢの処理速度で画像形成装置１０１へ適用されることが分かる。
尚、本表のカラムで定義した情報は一例であり、カラムの増減があっても良い。
【００５１】
《ソフトウエア構成例−代理サーバ》
図５の（Ｂ）は、代理サーバ１０３で動作する、設置管理機能５５０、データ格納部５５５のソフトウエア構成の例である。
図５の（Ｂ）において、代理サーバ１０３のＣＰＵ４１０が設置管理機能５５０を実行することにより、各機能が実現される。設置管理機能５５０は、制御部５５１、設置データ管理部５５２、通信部５５３、スクリプト管理部５５４を有する。
制御部５５１は、通信部５５３が受信する要求内容にしたがって、設置データ管理部５５２に対して設置データの格納、削除、更新、取得等の処理を指示する。また、スクリプト管理部５５４に対してスクリプトの生成、更新、解析等の処理を指示する。更に通信部５５３を介して設置管理サーバ１０２から設置データの取得を行う。
【００５２】
設置データ管理部５５２は、制御部５５１の指示に従い、後述するデータ格納部５５５に対して設置データの格納、削除、更新を行う。更に設置データ管理部５５２はデータ格納部５５５から設置データの取得などを行う。通信部５５３は、画像形成装置１０１などからの要求を受信して、制御部５５１に要求内容を送信する。また、制御部５５１から要求に対する処理結果を受け取り、要求元に応答データを送信する。
【００５３】
スクリプト管理部５５４は、制御部５５１の指示に従い、スクリプトの生成、更新、解析等の処理を行う。更にスクリプト管理部５５４は設置管理サーバ１０２からライセンス発行情報の取得などを行う。生成、更新、解析対象のスクリプトについては図６で後述する。
【００５４】
データ格納部５５５は代理サーバ１０３で動作するデータベースである。尚、本実施形態では代理サーバ１０３にデータ格納部５５５が構成されているが、設置管理機能５５０と連携できるようになっていれば別のサーバに配置されるような構成でも良い。
【００５５】
本実施形態において、代理サーバ１０３が設置の作業指示情報であるスクリプトを生成するという説明をしたが、これに限らず、設置管理サーバ１０２や不図示のクライアントコンピュータが生成しても良い。
【００５６】
《設置用スクリプト》
図６は、図１に示した画像形成装置１０１の構成変更を自動で実施するための設置手順を記述した設置用のスクリプトの一例を示す図である。本スクリプトは、第１の設置データであるファームウエアと、第２の設置データであるソフトウエアおよび設定データ等に関する取得先が記述されている。本スクリプトは、画像形成装置１０１から取得する第１の指示書に基づいて代理サーバ１０３により設置データの取得先が修正されたスクリプトとして作成される。
図６において、設置用のスクリプト６００は、自動設置サポート機能３５０の通信部３５２で受信され、スクリプト管理部３５４によって解析される。スクリプト管理部３５４によって解析された設置用のスクリプト６００は、その後、処理実行部３５３によって記載された処理が実行される。尚、本実施形態で示す設置用のスクリプト６００は、設置管理サーバ１０２の設置管理機能５００によって生成される。設置用のスクリプト６００は、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ Ｍａｒｋｕｐ Ｌａｎｇｕａｇｅ）で記載されており、代理取得識別部６０１と、画像形成装置識別部６０２と処理記載部６０３で構成されている。尚、本実施形態ではＸＭＬによりスクリプトを表現しているが、ＸＭＬに限定されず、シェルスクリプトなどで書かれていても良い。
【００５７】
代理取得識別部６０１は、画像形成装置１０１が、設置データ適用中に代理で設置データを取得させる対象を示す識別子が記載されており、＜Ｐｒｏｘｙ＞タグで構成されている。更に識別子として＜ＩＰ＞タグによって代理取得させる対象のＩＰアドレスが記載されている。本実施例においては代理サーバ１０３のＩＰアドレス（１９２．１６８．１００．１）が記載されている。
代理取得識別部６０１は、代理サーバ１０３がスクリプトを生成する際にスクリプト管理部５５４が記載する。尚、代理取得識別部６０１に記載する識別子は、ＩＰアドレスに限らず、ＭＡＣアドレス（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ ａｄｄｒｅｓｓ）などでも良い。また代理取得識別部６０１を使用せず、必要になったタイミングでイントラネット内の代理サーバ１０３の探索や特定をしても良い。
画像形成装置識別部６０２は、設置対象である画像形成装置１０１を識別するためのターゲット識別子"Ｄ１１１"が記載されており、＜ｄｅｖｉｃｅＩｄ＞タグで構成されている。
【００５８】
処理記載部６０３は、設置するために必要な処理群が記載される。処理記載部６０３は、ファームウエア更新処理部６０４、拡張プログラムインストール処理部６０５、拡張プログラム開始処理部６０６、オプションアクティベート処理部６０７、設定データインポート処理部６０８で構成されている。各処理を示すタグの中にはＯｒｄｅｒ属性が含まれており、本実施形態ではＯｒｄｅｒの値に応じて処理の順番が決定する。
【００５９】
ファームウエア更新処理部６０４は、ファームウエア更新サービス３０３を介して所定のファームウエアを更新する処理である。ファームウエア更新処理部６０４は、＜ｕｐｄａｔｅＦｉｒｍｗａｒｅＣｏｍｍａｎｄ＞タグを記載することで処理を定義している。具体的には、＜ｓｏｆｔｗａｒｅＵｒｌ＞タグと＜ｆｉｒｍｗａｒｅＭｏｄｅｌ＞タグ、＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグにより構成されている。＜ｓｏｆｔｗａｒｅＵｒｌ＞タグは、更新対象のファームウエアの取得先ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を指定している。
＜ｆｉｒｍｗａｒｅＭｏｄｅｌ＞タグは、取得するファームウエアの種類、＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグは、取得するファームウエアのバージョンを指定している。サポート機能３５０は、これらの情報を用いることで、取得先から必要なファームウエアを取得する。
【００６０】
拡張プログラムインストール処理部６０５は、＜ｉｎｓｔａｌｌＡｐｐｌｉｃａｔｉｏｎＣｏｍｍａｎｄ＞タグの記載により処理を定義し、＜ｓｏｆｔｗａｒｅＵｒｌ＞タグ、＜ａｐｐＮａｍｅ＞タグにより拡張プログラム３０７のバイナリデータを示している。また＜ｌｉｃｅｎｓｅＵｒｌ＞タグ、＜ｌｉｃｅｎｓｅＡｃｃｅｓｓＮｕｍｂｅｒ＞タグにより拡張プログラム３０７をアクティベートするためのライセンスを示している。
＜ｓｏｆｔｗａｒｅＵｒｌ＞タグは、インストールする拡張プログラムの取得先ＵＲＬを指定している。＜ａｐｐＮａｍｅ＞タグは、取得する拡張プログラムを指定している。＜ｌｉｃｅｎｓｅＵｒｌ＞タグは、拡張プログラムのアクティベートに必要なライセンスファイルの発行依頼先ＵＲＬを指定している。＜ｌｉｃｅｎｓｅＡｃｃｅｓｓＮｕｍｂｅｒ＞タグは、ライセンスファイルを取得するためのキーを示す。サポート機能３５０は、これらの情報を用いることで、インストール対象のライセンスファイルの取得を行い、拡張プログラムのアクティベート処理を実施する。
尚、ライセンスのアクティベートにライセンスファイルを必要とすることを記載したが、これに限らず、文字列で定義されるようなライセンスキーを取得しても良い。
【００６１】
拡張プログラム開始処理部６０６は、＜ｓｔａｒｔＡｐｐｌｉｃａｔｉｏｎＣｏｍｍａｎｄ＞タグの記載により処理を定義しており、＜ａｐｐＩｄ＞タグにより開始対象の拡張プログラムを指定している。＜ａｐｐＩｄ＞タグは、開始対象の拡張プログラムを唯一に識別するＩＤが指定されている。
【００６２】
オプションアクティベート処理部６０７は、＜ａｃｔｉｖａｔｅＯｐｔｉｏｎＣｏｍｍａｎｄ＞タグの記載により組み込みオプションプログラムをアクティベートするための処理を定義している。オプションアクティベート処理部６０７は、＜ｌｉｃｅｎｓｅＵｒｌ＞タグは、拡張プログラムのアクティベートに必要なライセンスファイルの発行依頼先ＵＲＬを指定している。＜ｌｉｃｅｎｓｅＡｃｃｅｓｓＮｕｍｂｅｒ＞タグは、表５のＬＡＮに該当するキーが指定している。サポート機能３５０は、以上の情報を用いることで、インストール対象の拡張プログラムの取得とライセンスファイルの取得を行い、拡張プログラムのインストール処理を実施する。尚、ライセンスのアクティベートにライセンスファイルを必要とすることを記載したが、これに限らず、文字列で定義されるようなライセンスキーを取得しても良い。
【００６３】
設定データインポート処理部６０８は、＜ｉｍｐｏｒｔＤｅｖｉｃｅＣｏｎｆｉｇＣｏｍｍａｎｄ＞タグの記載により処理を定義している。設定データインポート処理部６０８は、＜ｓｏｆｔｗａｒｅＵｒｌ＞タグ、＜ｃｏｎｆｉｇＮａｍｅ＞タグによりインポートする設定データを指定している。＜ｓｏｆｔｗａｒｅＵｒｌ＞タグは、インポートする設定データの取得先ＵＲＬを指定している。＜ｃｏｎｆｉｇＮａｍｅ＞タグは、画像形成装置１０１に対してインポートする設定データの名称が示されている。
【００６４】
本実施形態で示す設置用のスクリプト６００の記述は、画像形成装置１０１の設置に必要な処理を限定するものではなく、必要に応じて処理の重複、増減、別の処理があっても良い。例えば、ファームウエアの更新を二段階で行う場合は、ファームウエア更新処理が二つあっても良い。また再起動が必要であれば再起動処理の定義を追加しても良い。
【００６５】
《自動設置処理例−サポート機能》
図７は、本実施形態を示す情報処理装置の制御方法を説明するフローチャートである。本例は、図１に示した画像形成装置１０１Ａ、１０１Ｂに対する自動設置処理例である。以下の説明では画像形成装置１０１を代表として処理を説明する。なお、各ステップは、ＣＰＵ２１０が記憶された制御プログラム（図３の（Ａ）、（Ｂ）のソフトウエアを含む）を実行することで実現される。
図７の処理フローは、画像形成装置１０１の自動設置サポート機能３５０が、ユーザによって実行されることで処理を開始する。例えば、設置作業者が、不図示のユーザインタフェースにおいて実行ボタンを押下することで処理が開始される。なお、本処理では、適宜、画像形成装置１０１と通信するサーバ装置側の処理を含めて各ステップを説明する。
【００６６】
Ｓ７００は、自動設置サポート機能３５０の処理実行部３５３が、設置管理サーバ１０２に対して自装置用の作業指示書であるスクリプトの取得を要求する処理である。具体的には、処理実行部３５３が画像形成装置１０１に設定された装置ＩＤを取得する。装置ＩＤ取得後、処理実行部３５３は取得した装置ＩＤをパラメータとし、通信部３５２を介して設置管理サーバ１０２へスクリプト取得要求を送信する。
【００６７】
設置管理サーバ１０２の設置データ管理部５０２は、画像形成装置１０１からスクリプト取得要求を受信すると、データ格納部５０４に格納されたスクリプトの中から要求元の画像形成装置１０１の装置ＩＤと一致するスクリプト６００を取得する。そして、設置管理サーバ１０２は、取得したスクリプト６００を画像形成装置１０１へ応答する。
最後に処理実行部３５３は、スクリプト取得要求の応答を、通信部３５２を介して設置管理サーバ１０２から受信する。
尚、本実施形態において設置管理サーバ１０２がスクリプトを特定するために装置ＩＤを使用しているが、これに限らず、スクリプトを唯一に特定可能な識別子を用いても良い。
【００６８】
Ｓ７０１は、処理実行部３５３が、Ｓ７００で、設置管理サーバ１０２から取得したスクリプト６００をＲＡＭ２１１に読み込む処理である。ＲＡＭ２１１へ読み込みが完了すると処理実行部３５３は、スクリプト管理部３５４に解析を依頼する。解析が完了するとスクリプト管理部３５４は、処理実行部３５３へ解析結果を通知する。
【００６９】
Ｓ７０２は、処理実行部３５３が、スクリプト６００の代理取得識別部６０１に記載された代理サーバ１０３のＩＰアドレスと、画像形成装置１０１に設定されたＩＰアドレスのサブネットが同じであるかを判断する処理である。同じサブネット上に代理サーバ１０３があると処理実行部３５３が判断した場合はＳ７０３へ処理を移行する。一方、異なるサブネットであると処理実行部３５３が判断した場合は、Ｓ７０６へ処理を移行する。そして、Ｓ７０６でスクリプト６００を実行する。
【００７０】
Ｓ７０３は、処理実行部３５３が代理サーバ１０３に対して、Ｓ７００で取得したスクリプト６００を送信する処理である。代理サーバ１０３はスクリプト通知を受信すると、スクリプト６００の解析及び処理を行い、処理結果であるスクリプト１１００を画像形成装置１０１へ返す。尚、スクリプト通知受信時の処理は、図９において後述する。またスクリプト１１００については、図１１で後述する。
【００７１】
Ｓ７０４は、処理実行部３５３が通信部３５２を介して、代理サーバ１０３から処理結果であるスクリプト１１００を受信する処理である。受信したスクリプト１１００は、処理実行部３５３によってＨＤＤ２１６に保存される。
【００７２】
Ｓ７０５は、処理実行部３５３がスクリプト１１００をＲＡＭ２１１に読み込む処理である。ＲＡＭ２１１への読み込みが完了すると、処理実行部３５３は、スクリプト管理部３５４にスクリプト１１００の解析を依頼する。そして解析が完了するとスクリプト管理部３５４は、処理実行部３５３へ解析結果を通知する。Ｓ７０６は、処理実行部３５３が、スクリプト管理部３５４により解析したスクリプト６００、またはスクリプト１１００の内容に従い、設置作業を実行する処理である。そして、当該設置作業処理を実行したら、本処理を終了する。
【００７３】
図７に示した処理では、代理サーバ１０３を特定する方法として、スクリプトに記載された代理取得識別部６０１を利用しているが、これに限らず、別の方法を用いて代理サーバ１０３を特定しても良い。
例えば、イントラネット内をブロードキャスト探索し、代理サーバ１０３として動作するものを一つ選択する方法でも良い。またＳ７００のスクリプト取得の前にブロードキャスト探索により代理サーバ１０３を特定し、代理サーバ１０３を介してスクリプトを取得しても良い。
【００７４】
図８は、本実施形態を示す情報処理装置の制御方法を説明するフローチャートである。本例は、図７に示したＳ７０６の画像形成装置１０１の自動設置のスクリプト実行処理例である。
尚、図８の説明で記載するスクリプトとは、スクリプト６００、またはスクリプト１１００を指す。また図８では説明のため、スクリプトに記載された処理のことをコマンドと記載し、図８のフローチャートの各ステップのことを処理と記載する。なお、各ステップは、ＣＰＵ２１０が記憶された制御プログラム（図３の（Ａ）、（Ｂ）のソフトウエアを含む）を実行することで実現される。
【００７５】
Ｓ８００では、処理実行部３５３が、スクリプトに記載された最初のコマンドを読み込む処理である。例えばスクリプト６００の最初のコマンドは、ファームウエア更新処理部６０４に記載されたファームウエア更新のコマンドである。
Ｓ８０１では、処理実行部３５３が、前の処理で読み込んだコマンドに従い、設置データを取得する処理である。
【００７６】
Ｓ８０２は、Ｓ８０１の設置データ取得処理が完了した後に、処理実行部３５３が代理サーバ１０３へ設置データ取得完了の通知をする処理である。尚、Ｓ７０２で、スクリプトに記載された代理取得識別部６０１のＩＰアドレスと同じサブネットでないと判断した場合は、本処理をスキップする。
Ｓ８０３では、処理実行部３５３が、Ｓ８０１で取得した設置データを画像形成装置１０１へ適用する処理である。
【００７７】
Ｓ８０４では、設置データの適用処理が完了した後に、処理実行部３５３が代理サーバ１０３へ設置データ適用完了の通知をする処理である。尚、Ｓ７０２で、スクリプトに記載された代理取得識別部６０１のＩＰアドレスと同じサブネットでないと判断した場合は、本処理をスキップする。
【００７８】
Ｓ８０５は、処理実行部３５３が、スクリプト管理部３５４によって解析されたスクリプトのコマンドがすべて実行完了したかを判断する処理である。すべてのコマンドを実行したと処理実行部３５３が判断した場合は、スクリプト実行処理を終了する。一方、解析されたコマンドがすべて実行完了していないと処理実行部３５３が判断した場合はＳ８０６へ処理を移行する。
Ｓ８０６は、処理実行部３５３が、スクリプト管理部３５４によって解析されたスクリプトのコマンドのうち、次に実行すべきコマンドを読み込む処理である。なお、Ｓ８０５で、書き換えられたスクリプトに記述された設置データであって、代理サーバ１０３が設置管理サーバ１０２から取得して保持している設置データの適用状態も合わせて判断される。従って、修正されたスクリプトを実行すると、画像形成装置１０３は、ファームウエアを適用している間で代理サーバ１０３が取得しておいた設置データを取得して効率よく適用することができる。また、画像形成装置１０３は、ファームウエアの取得完了と、ファームウエアの適用完了とを代理サーバ１０３に通知しているため、代理サーバ１０３は、ファームウエアを適用中、ネットワーク上支障なく他の設置データを設置管理サーバ１０２から取得して保持する処理を実行できる。そして、画像形成装置１０１は、ファームウエアを適用完了した通知を代理サーバ１０３に行うことで、代理サーバ１０３からの応答で他の設置データを取得して適用することでスクリプトの実行処理が完了する。
【００７９】
図８の説明における設置作業には再起動するケースの例が説明されていないが、コマンド指定の再起動などが実行されても良い。再起動する場合は、どのコマンドが実行済みかをＨＤＤ２１６上に残し、残した記録を読み込んで処理を継続するなどの方法を実行しても良い。以上の処理により、サポート機能３５０は画像形成装置１０１に対し自動設置処理を行う。
【００８０】
《通知受信時の処理例−代理サーバ》
図９は、本実施形態を示すサーバ装置の制御方法を説明するフローチャートである。本例は、図１に示した代理サーバ１０３の通知受信時の処理例である。なお、各ステップは、代理サーバ１０３のＣＰＵ４１０が記憶された制御プログラム（設置管理機能５５０を含む）を実行することで実現される。
本処理は、制御部５５１が通信部５５３を介して、サポート機能３５０からスクリプト通知、または適用完了通知を受信することで開始する。
図９の（Ａ）に、制御部５５１が、図３に示した画像形成装置１０１にインストールされた自動設置サポート機能３５０からスクリプト通知を受信した際の処理例を示す。
【００８１】
Ｓ９００は、制御部５５１が画像形成装置１１０の自動設置サポート機能３５０からスクリプトを受信すると、スクリプト管理部５５４へスクリプトの解析と修正を依頼する処理である。尚、スクリプト解析処理の詳細は、図１０で後述する。
【００８２】
Ｓ９０１は、制御部５５１が、スクリプト管理部５５４から解析に応じて修正したスクリプト１１００を受け取り、通信部５５３を介して画像形成装置１０１へ修正したスクリプト１１００を送信する処理である。修正したスクリプト１１００を送信した後、制御部５５１は、スクリプト管理部５５４が修正したスクリプト１１００をＲＡＭ４１２に読み込む。
【００８３】
Ｓ９０２は、制御部５５１が、画像形成装置１０１のサポート機能３５０からの設置データの取得完了通知を受信したかを判断する処理である。取得完了通知を受信したと制御部５５１が判断した場合はＳ９０３へ処理を移行し、受信していないと制御部５５１が判断した場合はＳ９０２の判断処理にて処理を待機する。
尚、Ｓ９０２は通知を受信するまで待機するように記載しているが、これに限らず、イベント処理による処理フローの制御を行っても良い。
【００８４】
Ｓ９０３は、Ｓ９００でスクリプト管理部５５４が代理サーバ１０３で取得すべきと判断した設置データを、制御部５５１が設置管理サーバ１０２から取得する処理である。尚、Ｓ９０３の処理を実行している時、画像形成装置１０１のサポート機能３５０は設置データの適用処理を行っている。
つまり、画像形成装置１０１が外部ネットワークと通信していない、または通信できない間に、代理サーバ１０３が後々の処理で必要となる設置データの代理取得する処理を行う。
Ｓ９０４は、制御部５５１が、Ｓ９０３で取得したデバイス設定値である設置データを、設置データ管理部５５２を介してデータ格納部５５５へ保存する処理である。なお、デバイス設定値は、ファームウエア更新後、デバイス環境に適応して設定すべきデータである。
【００８５】
Ｓ９０５は、Ｓ９００でスクリプト管理部５５４が代理サーバ１０３で取得すべきと判断した設置データが、すべて取得できたかを判断する処理である。すべて取得できているとスクリプト管理部５５４が判断した場合は通知受信時の処理である代理取得処理を終了する。一方、設置データをすべて取得できていないとスクリプト管理部５５４が判断した場合は、Ｓ９０３へ処理を移行する。
【００８６】
図９の（Ｂ）に、制御部５５１が、画像形成装置１０１の自動設置サポート機能３５０から設置データ適用完了通知を受信した際の処理例を示す。図９の（Ｂ）の処理は、制御部５５１が設置管理サーバ１０２から設置データを取得している最中に、サポート機能３５０から通知が来た際に実行される。
【００８７】
Ｓ９０６は、制御部５５１が、Ｓ９０３の設置データの取得処理を中断する処理である。中断の際、例えば取得したモジュールまでの情報をＨＤＤ４１３へ格納することにより取得の再開を可能にする。
そして、本処理が完了すると、図９の（Ａ）のＳ９０２へ処理を移行する。制御部５５１は、Ｓ９０２で再度設置データ取得完了通知を受信すると、Ｓ９０３へ処理を移行し設置データの取得を再開する。
【００８８】
図１０は、本実施形態を示すサーバ装置の制御方法を説明するフローチャートである。本例は、図９に示したＳ９００における代理サーバ１０３の指示書解析処理例である。なお、各ステップは、代理サーバ１０３のＣＰＵ４１０が記憶された制御プログラムを実行することで実現される。
なお、図１０の処理フローは、スクリプト管理部５５４が制御部５５１からスクリプト解析の依頼を受けることで処理を開始する。本処理は、最終的に表４で示すテーブルを完成させることで、誰が、どの設置データを、いつ取得するかを判断する。なお、制御部５５１から取得するスクリプトは、画像形成装置１０１が設置管理サーバ１０２から取得したスクリプトである。
【００８９】
表４に、図１０の指示書解析処理フローで使用する処理表を示す。本表４は、指示書解析処理フローを実行することで完成させるものである。またスクリプト管理部５５４は、本表４を使用して誰が、どの設置データを、いつ取得するかを判断する。
【表４】
2017158014.tif 000006
〔処理データテーブル〕
表４は、順序、処理名、設置データＩＤ、容量、取得時間、適用時間、取得先のカラムで構成される。
表４において、順序、及び処理名は、スクリプト管理部５５４がスクリプトを読み込みと解析した結果の順序とその処理を示している。設置データＩＤは、スクリプトに記載された処理部で使用する設置データのＩＤを示している。
【００９０】
表４において、容量は、スクリプト管理部５５４が設置管理サーバ１０２から取得した、設置データの容量の情報を示している。スクリプト管理部５５４が設置管理サーバ１０２に対して容量の取得要求を出すと、設置管理サーバ１０２は、要求と一緒に通知される前述の設置データＩＤを使用し表１から容量を割り出す。そして設置管理サーバ１０２は、割り出した容量を代理サーバ１０３へ返す。これらの一連の処理によりスクリプト管理部５５４は本表の容量カラムに値を記載する。
【００９１】
表４において、取得時間は、スクリプト管理部５５４が、後述の回線速度と設置データの容量から計算した取得予想時間を示している。取得時間は、イントラネット内の機器が、インターネット上の設置管理サーバ１０２から設置データを取得する時間を指す。
例えば、後述の取得先が"管理"である場合は、画像形成装置１０１が設置管理サーバ１０２から取得する時間を指す。後述の取得先が"代理"である場合は、代理サーバ１０３が設置管理サーバ１０２から取得する時間を指す。これは、画像形成装置１０１が代理サーバ１０３から設置データを取得することを指しているので、代理サーバ１０３が設置管理サーバ１０２から設置データを事前に取得しておく必要があるためである。
【００９２】
表４において、適用時間は、スクリプト管理部５５４が設置管理サーバ１０２から取得した設置データの平均処理時間と、前述の設置データの容量から計算した適用予想時間を示している。本カラムの値は、画像形成装置１０１が設置対象のデータを適用するにあたり、必要と予想される時間を指す。
【００９３】
表４において、取得先は、スクリプトに記載された各処理における設置データの取得先を示す。つまり画像形成装置１０１がスクリプトを実行する際にどこから設置データを取得するかを示している。本表作成時の初期値は、スクリプトに記載された値である設置管理サーバ１０２である。解析処理の実施により、スクリプト管理部５５４が、本カラムの値を代理サーバ１０３（自分自身）へ変更することがある。
本実施形態においては、取得先として"管理"、及び"代理"の２種類で示しており、それぞれ"設置管理サーバ１０２"、"代理サーバ１０３"を指している。しかしながらこれに限らず、ソフトウエアを専門に管理するサーバ（不図示）を記載しても良い。
【００９４】
例えば、表４の一行目は、最初に実行する処理がｕｐｄａｔｅＦｉｒｍｗａｒｅであり、設置データとして２０００ＭＢのデータを使用することが分かる。更に画像形成装置１０１が設置管理サーバ１０２から設置データを取得する時間８７０秒、取得したデータを適用するのに１２００秒掛かることが分かる。
【００９５】
また表４の二行目は、２番目に実行する処理がｉｎｓｔａｌｌＡｐｐｌｉｃａｔｉｏｎであり、設置データとして２５ＭＢのデータを使用することが分かる。更に代理サーバ１０３が設置管理サーバ１０２から設置データを取得し、その取得時間として１１秒かかることが分かる。そして画像形成装置１０１は前述の設置データを代理サーバ１０３から取得し、取得したデータを適用するのに６０秒掛かることが分かる。以上が、表４の説明である。図１０の処理フローの説明に戻る。
【００９６】
Ｓ１０００は、スクリプト管理部５５４が、画像形成装置１０１の自動設置サポート機能３５０から受信したスクリプトをＲＡＭ４１２へ読み込む処理である。本処理により表４が生成され、順序、処理名、設置データＩＤ、取得先の値が更新される。
【００９７】
Ｓ１００１は、スクリプト管理部５５４が、インターネット上にある設置管理サーバ１０２と代理サーバ１０３との間の回線速度を計測する処理である。例えばＰＩＮＧコマンドを使用して、設置管理サーバ１０２との速度を計測しても良い。以降の説明では、回線速度の計測結果が１８．５Ｍｂｐｓであったことを前提とする（表５）。
【表５】
2017158014.tif 000007
〔回線速度テーブル〕
Ｓ１００２は、スクリプト管理部５５４が、設置管理サーバ１０２へ取得予定の設置データの容量を問い合わせる処理である。本処理により、表４の容量カラムが更新される。
【００９８】
Ｓ１００３は、スクリプト管理部５５４が、イントラネット内の機器が設置管理サーバ１０２から設置データを取得するために掛かる予想時間を算出する処理である。尚、算出には、Ｓ１００１で計測した回線速度と、Ｓ１００２で取得した容量を使用する。本処理により、表４の取得時間のカラムが更新される。
【００９９】
Ｓ１００４は、スクリプト管理部５５４が、設置管理サーバ１０２に対して設置予定の処理の平均処理時間を問い合わせる処理である。設置管理サーバ１０２は、平均処理時間の問い合わせを受信すると、表３で示す各処理の平均処理時間を返す。本処理により、表４の適用時間のカラムが更新される。
【０１００】
Ｓ１００５は、スクリプト管理部５５４が、設置データ管理部５５２に対して、スクリプト記載の設置データと同じ設置データを持っているかを確認する処理である。持っている場合は、表４の取得時間カラムを取得不要とし、取得先カラムの値を代理サーバ１０３から取得するように修正する。持っていない場合は何もせず次の処理へ移行する。
【０１０１】
Ｓ１００６は、表４の取得先カラムを除く情報をもとに、スクリプトを実行した画像形成装置１０１が、どこから設置データを取得するかを判断する処理である。本処理で行う判断は、画像形成装置１０１の適用処理時間内に、代理サーバ１０３が取得可能な設置データを算出することである。例えば、最初の処理は必ず設置管理サーバ１０２から取得させ、以降の処理を判断対象とする。
【０１０２】
そして、最初の処理における適用時間を基準とし、二番目以降の取得時間の総和が基準を超えないものを代理サーバ１０３が取得する設置データとする。表４を例にすると、最初の処理の適用時間の１２００Ｓｅｃを基準に、取得時間の総和が越えない範囲は、二番目の処理から最後の処理を指す。
【０１０３】
つまり表４の例では、画像形成装置１０１が最初の処理を適用している最中に、代理サーバ１０３が後続のすべての処理に関わる設置データを取得するように判断する。本処理における判断により、スクリプト管理部５５４が表４の取得先カラムを更新する。代理サーバ１０３は、本処理により取得先が"代理"となった設置データを、代理サーバ１０３が取得するデータと判断し、図９のＳ９０３において対象のデータを取得する。Ｓ１００７は、完成した表４の情報をもとにスクリプトを書き換える処理である。書き換えた後のスクリプトを後述の図１１に示す。なお、設置データの取得先を書き換えた修正後のスクリプトは、代理サーバ１０３が画像形成装置１０１に応答する。
【０１０４】
本実施形態において、順序判断として回線速度の測定や容量の問い合わせをすることで算出処理を行っているが、これに限らず、例えば設置管理サーバ１０２上に必要な情報を持たせたり、サーバ側で計算させ計算結果のみを使用したりしても良い。また算出せず、設置作業の過去の実績からある処理の間は複数のデータを取得させるような経験則を基にした判断をしても良い。またＳ１００６の判断では、適用時間内に取得可能な設置データの判断を行っているが、これに限らず、取得時間がある閾値を越えないものに関しては画像形成装置１０１が取得するといった判断をしても良い。
【０１０５】
《修正版の設置用スクリプト》
図１１に代理サーバ１０３がＳ１００７によって修正した第２の指示書である設置用のスクリプトの一例を示す。尚、図１１の６０１乃至６０４、６０６は、図６の６０１乃至６０４、６０６と同様のため、説明を省略する。修正された設置用のスクリプト１１００は、代理サーバ１０３がＳ１００７によって修正したスクリプトである。
【０１０６】
拡張プログラムインストール処理部１００１は、図６の処理部６０４と異なり、＜ｓｏｆｔｗａｒｅＵｒｌ＞で指定された取得先が代理サーバ１０３のＵＲＬ、かつ取得対象のファイルを指定している。＜ｌｉｃｅｎｓｅＵｒｌ＞も同様で取得先が代理サーバ１０３のＵＲＬ、かつ取得対象のライセンスファイルを指定している。
【０１０７】
組み込みオプションプログラムアクティベート処理部１００３は、図６の処理部６０７と異なり、＜ｌｉｃｅｎｓｅＵｒｌ＞の取得先が代理サーバ１０３のＵＲＬ、かつ取得対象のライセンスファイルを指定している。
【０１０８】
設定データインポート処理部１００４は、図６の処理部６０８と異なり、＜ｓｏｆｔｗａｒｅＵｒｌ＞の取得先が代理サーバ１０３のＵＲＬ、かつ取得対象のライセンスファイルを指定している。
【０１０９】
図１１に示す修正版の設置用スクリプトを、画像形成装置１０１のサポート機能３５０が実行することで、サポート機能３５０は設置管理サーバ１０２、または代理サーバ１０３のどちらかから設置データを取得するようになる。
以上、本実施形態によれば、画像形成装置が設置データ適用中に、代理サーバに設置データを代理取得させることで、ネットワーク回線の細い環境においても効率的にデータ取得が可能となる。
【０１１０】
〔第２実施形態〕
第１の実施形態では、代理サーバ１０３が指示書を解析し、画像形成装置が設置データの適用処理中に代理サーバ１０３に設置データの代理取得をさせる方法について述べた。第２実施形態では、画像形成装置１０１が指示書を解析し、スクリプトを書き換える方法について記載する。
尚、第２実施形態では、図１乃至図６及び図８、図１０乃至図１１は第１実施形態と同様であるため、各図に対する説明を省略する。以下、第１実施形態と異なる図１２について説明する。また、図８においては、処理の内容が第１の実施形態と異なるものについてのみ適宜説明するものとする。
【０１１１】
《自動設置処理例−サポート機能》
図１２に、本実施形態を示す画像形成装置の制御方法を示すフローチャートである。本例は、画像形成装置１０１の自動設置の処理例である。図１２の処理フローは、画像形成装置１０１のサポート機能３５０が、ユーザによって実行されることで処理を開始する。例えば、設置作業者が、不図示のユーザインタフェースにおいて実行ボタンを押下することで処理が開始される。尚、図１２のＳ７００、Ｓ７００乃至Ｓ７０２、Ｓ７０６は、図７のＳ７００、Ｓ７００乃至Ｓ７０２、Ｓ７０６と同様のため、説明を省略する。
【０１１２】
Ｓ７０７は、処理実行部３５３が、スクリプト管理部３５４へスクリプトの解析を依頼する処理である。尚、スクリプトの解析処理は、第一の実施形態で代理サーバが行っていた図１０と同様の処理を実施するため、説明を省略する。動作の主体が、画像形成装置１０１のスクリプト管理部３５４に変わっただけである。また本処理によって修正された設置用スクリプトも図１１のスクリプト１１００と同様であるため説明を省略する。
【０１１３】
Ｓ７０８は、Ｓ７０２の処理の判断の結果、スクリプト１１００に記載された代理サーバ１０３が存在する場合に、代理サーバに対して処理の通知をするかの設定を有効化する処理である。本処理により通知設定が有効化されると、Ｓ７０６のスクリプト実行における設置データ取得完了通知（Ｓ８０２）、設置データ適用完了通知（Ｓ８０４）を実施するようになる。
【０１１４】
ここで、図８の設置データ取得完了通知（Ｓ８０２）において、本実施形態では、完了通知とともに、画像形成装置１０１の適用処理中に、代理サーバ１０３に取得させる設置データの情報についても通知するものとする。取得対象の情報を通知することにより、代理サーバ１０３は、指定された設置データを設置管理サーバ１０２からの取得を開始する（処理フロー不図示）。
また設置データの適用完了通知（Ｓ８０４）により、代理サーバ１０３は、設置データの取得処理の場合でも処理を中断させる。図７（Ｂ）の説明に戻る。
【０１１５】
図７（Ｂ）では、代理サーバ１０３を特定する方法として、スクリプトに記載された代理取得識別部６０１を利用しているが、これに限らず、別の方法を用いて代理サーバ１０３を特定しても良い。例えば、イントラネット内をブロードキャスト探索し、代理サーバ１０３として動作するものを一つ選択する方法でも良い。またＳ７００のスクリプト取得の前にブロードキャスト探索により代理サーバ１０３を特定し、代理サーバ１０３を介してスクリプトを取得しても良い。
【０１１６】
以上、本実施形態によれば、画像形成装置が指示書を解析し、スクリプトを書き換えることにより、画像形成装置が設置データ適用中に代理サーバに設置データを代理取得させることで、ネットワーク回線の細い環境においても効率的にデータ取得が可能となる。
〔第３実施形態〕
上記実施形態では、取得した指示書に従い設置データのうち、データ量が多い第１の設置データを画像形成装置１０１が設置管理サーバ１０２からダウンロードして適用している間に、第２の設置データを代理サーバ１０３がダウンロードしておく制御例を説明した。
しかしながら、画像形成装置１０１が第２の設置データを設置管理サーバ１０２からダウンロードして適用している間に、代理サーバ１０３が設置データ１をダウンロードしておくように制御してもよい。
さらに、その際、複数の第２の設置データを設置管理サーバ１０２からダウンロードする必要がある場合、その間、代理サーバ１０３による第１の設置データのダウンロードを中断させ、第２の設置データを適用する間で、再度代理サーバ１０３が第１の設置データのダウンロードを再開するように制御する。
これにより、代理取得しなくても早く取得可能な第２の設置データを画像形成装置１０１が直接設置管理サーバ１０２からダウンロードすることで設置データの取得処理を効率化できる。
〔第４実施形態〕
上記実施形態では、画像形成装置１０１が設置管理サーバ１０２から取得した指示書に記述される設置データの取得先を書き換えて代理サーバ１０３から設置データを取得する例を説明した。
しかしながら、画像形成装置１０１が設置管理サーバ１０２から取得した指示書を解析して、第１の設置データと第２の設置データとの取得先を決定して、先に取得する第１の設置データを適用する間で、画像形成装置１０１が第２の設置データの取得を代理サーバ１０３に依頼して取得するように制御してもよい。
これにより、第１実施形態と同様に第２の設置データを代理サーバに取得させておき、第１の設置データの適用後、直ぐに代理サーバから第２の設置データを取得して適用することができる。
【０１１７】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステムまたは装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えばＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１１８】
１０１  画像形成装置
１０２  設置管理サーバ
１０３  代理サーバ
【図１】
2017158014.tif 000008
【図２】
2017158014.tif 000009
【図３】
2017158014.tif 000010
【図４】
2017158014.tif 000011
【図５】
2017158014.tif 000012
【図６】
2017158014.tif 000013
【図７】
2017158014.tif 000014
【図８】
2017158014.tif 000015
【図９】
2017158014.tif 000016
【図１０】
2017158014.tif 000017
【図１１】
2017158014.tif 000018
【図１２】
2017158014.tif 000019