(57)【要約】      （修正有）【課題】指示書において、コンテンツのバージョンを最新にするよう指示されている場合、複数のデバイス間でコンテンツのバージョンを統一する。【解決手段】設置対象となる複数のデバイス１０５にインストールすべきコンテンツを管理するコンテンツ管理装置１０２と、デバイス１０５がコンテンツ管理装置１０２からコンテンツを取得してインストールするためのスクリプトを作成する設置データ管理装置１０１とを含むデバイス設置システムにおいて、デバイス１０５は、設置データ管理装置１０１からスクリプトを取得し、設定されたコンテンツのバージョンと、バージョンを統一させる条件に合致するコンテンツ情報をコンテンツ管理装置１０２から取得する。取得したコンテンツ情報に従い、バージョンを統一させる条件に合致するバージョンを決定し、決定したバージョンに従う表示言語のコンテンツをコンテンツ管理装置１０１から取得して設定する。【選択図】図１４
2017049923.tif 000002
【特許請求の範囲】
【請求項１】
設置対象となる複数のデバイスにインストールすべきコンテンツを管理する第１の管理装置と、それぞれのデバイスが前記第１の管理装置からコンテンツを取得してインストールするための指示書を作成する第２の管理装置とを含むデバイス設置システムであって、
前記第１の管理装置は、
それぞれのデバイスに設定すべきコンテンツのバージョン情報を含むコンテンツ情報をデバイスＩＤに対応づけて管理するコンテンツ管理手段を備え、
前記第２の管理装置は、
前記デバイスのＩＤに対応づけた設置情報を管理する設置データ管理手段と、
前記設置情報に従ってそれぞれのデバイスの設置情報を管理するデバイス管理手段と、
それぞれのデバイスとの間でインストールすべきコンテンツに対して共通に設定する表示言語と、設定項目とを指定する指定手段と、
前記指定手段により指定された設定項目に前記コンテンツのバージョンと、当該バージョンを統一させる条件とを含む指示書を作成する作成手段と、
を備え、
それぞれのデバイスは、
前記第２の管理装置から前記指示書を取得することに応じて、当該指示書に設定された前記コンテンツのバージョンと、当該バージョンを統一させる条件に合致するコンテンツ情報を前記第１の管理装置から取得する取得手段と、
取得した前記コンテンツ情報に従い、前記コンテンツのバージョンと、当該バージョンを統一させる条件に合致するバージョンを決定する決定手段と、
決定したバージョンに従う表示言語のコンテンツを前記第１の管理装置から取得して設定する設定手段と、
を備えることを特徴とするデバイス設置システム。
【請求項２】
設置対象となる複数のデバイスにインストールすべきコンテンツを管理する第１の管理装置と、それぞれのデバイスが前記第１の管理装置からコンテンツを取得してインストールするための指示書を作成する第２の管理装置とを含むデバイス設置システムであって、
前記第１の管理装置は、
それぞれのデバイスに設定すべきコンテンツのバージョン情報、前記コンテンツの表示言語であって、追加される予定の追加表示言語の登録予定日と、追加される追加表示言語の登録日を含むコンテンツ情報をデバイスＩＤに対応づけて管理するコンテンツ管理手段を備え、
前記第２の管理装置は、
前記デバイスのＩＤに対応づけた設置情報を管理する設置データ管理手段と、
前記設置情報に従ってそれぞれのデバイスの設置情報を管理するデバイス管理手段と、
それぞれのデバイスとの間でインストールすべきコンテンツに対して共通に設定する表示言語と、設定項目とを指定する指定手段と、
前記指定手段により指定された設定項目に前記コンテンツのバージョンと、当該バージョンを統一させる条件と、前記デバイスの配送予定日とを含む指示書を作成する作成手段と、
を備え、
それぞれのデバイスは、
前記第２の管理装置から前記指示書を取得することに応じて、当該指示書に設定された前記デバイスの配送予定日と、前記コンテンツのバージョンと、当該バージョンを統一させる条件に合致するコンテンツ情報を前記第１の管理装置から取得する取得手段と、
取得した前記デバイスの配送予定日と前記コンテンツ情報に従い、前記コンテンツのバージョンと、当該バージョンを統一させる条件に合致するバージョンを決定する決定手段と、
決定したバージョンに従う表示言語のコンテンツを前記第１の管理装置から取得して設定する設定手段と、
を備え、
ることを特徴とするデバイス設置システム。
【請求項３】
複数のデバイスと通信する管理装置であって、
前記デバイスのＩＤに対応づけた設置情報を管理する設置データ管理手段と、
前記設置情報に従ってそれぞれのデバイスの設置情報を管理するデバイス管理手段と、
それぞれのデバイスとの間でインストールすべきコンテンツに対して共通に設定する表示言語と、設定項目とを指定する指定手段と、
前記指定手段により指定された設定項目に前記コンテンツのバージョンと、当該バージョンを統一させる条件とを含む指示書を作成する作成手段と、
を備えることを特徴とする管理装置。
【請求項４】
複数のデバイスと通信する管理装置であって、
前記デバイスのＩＤに対応づけた設置情報を管理する設置データ管理手段と、
前記設置情報に従ってそれぞれのデバイスの設置情報を管理するデバイス管理手段と、
それぞれのデバイスとの間でインストールすべきコンテンツに対して共通に設定する表示言語と、設定項目とを指定する指定手段と、
前記指定手段により指定された設定項目に前記コンテンツのバージョンと、当該バージョンを統一させる条件と、前記デバイスの配送予定日とを含む指示書を作成する作成手段と、
を備えることを特徴とする管理装置。
【請求項５】
前記決定手段は、取得するコンテンツ情報から使用できるすべての表示言語で、共通する最新のバージョンを取得すべきバージョンとして決定することを特徴とすることを特徴とする請求項１または２に記載のデバイス設置システム。
【請求項６】
前記デバイスは、プリンタ、スキャナ、ファクシミリ、複合機を含むことを特徴とする請求項１または２に記載のデバイス設置システム。
【請求項７】
前記デバイスは、プリンタ、スキャナ、ファクシミリ、複合機を含むことを特徴とする請求項３または４に記載の管理装置。
【請求項８】
複数のデバイスと通信する管理装置の制御方法であって、
前記デバイスのＩＤに対応づけた設置情報を登録手段に登録して管理する設置データ管理工程と、
前記設置情報に従ってそれぞれのデバイスの設置情報を登録手段に登録して管理するデバイス管理工程と、
それぞれのデバイスとの間でインストールすべきコンテンツに対して共通に設定する表示言語と、設定項目とを指定する指定工程と、
前記指定工程により指定された設定項目に前記コンテンツのバージョンと、当該バージョンを統一させる条件とを含む指示書を作成する作成工程と、
を備えることを特徴とする管理装置の制御方法。
【請求項９】
複数のデバイスと通信する管理装置の制御方法であって、
前記デバイスのＩＤに対応づけた設置情報を登録手段に登録して管理する設置データ管理工程と、
前記設置情報に従ってそれぞれのデバイスの設置情報を登録手段に登録して管理するデバイス管理工程と、
それぞれのデバイスとの間でインストールすべきコンテンツに対して共通に設定する表示言語と、設定項目とを指定する指定工程と、
前記指定工程により指定された設定項目に前記コンテンツのバージョンと、当該バージョンを統一させる条件と、前記デバイスの配送予定日とを含む指示書を作成する作成工程と、
を備えことを特徴とする管理装置の制御方法。
【請求項１０】
請求項８または９に記載の管理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイス設置システム、管理装置、管理装置の制御方法、及びプログラムに関するものである。
【背景技術】
【０００２】
一般に、複合機に代表されるデバイス（情報処理装置）は、新規に導入される際に、顧客環境に応じた設置作業が必要となる。デバイスの設置作業には多くの時間と手間がかかる。そのため、複数台のデバイスに対し、同様の設置作業を行う場合には、予め必要なファームウェアや拡張プログラムなどのコンテンツを用意しておく。そして、デバイスがそれらを作業指示情報に従って自動的に処理していくことで、作業者が効率良く設置作業を行えるシステムが提案されている。
このようなシステムの中には、インターネット上のサーバに、作業指示情報や各種コンテンツなどを配置しておき、設置作業時にデバイスが取得するものがある。
【０００３】
作業指示情報を管理する第１のサーバ（以下、設置データ管理装置と呼ぶ）は、顧客環境に設置するデバイスの機種、台数、適用するコンテンツの名称やバージョン、存在場所などの作業指示情報を保持し、デバイスへ配信する。
一方、各種コンテンツを管理する第２のサーバ（以下、コンテンツ管理装置と呼ぶ）は、コンテンツの登録やバージョン管理を行い、前記コンテンツをデバイスへ配信する。コンテンツの製造元は、新しいバージョンのコンテンツがリリースされると、これを第２のサーバに登録して、バージョン管理を行う。また、コンテンツの販売会社は、コンテンツに含まれる表示言語リソースを翻訳することによって自身の販売担当地域で必要な表示言語リソースを作成し、前記コンテンツと関連付けて第２のサーバに登録する。
【０００４】
第２のサーバで管理されるコンテンツは、機能追加や障害修正等の理由により度々バージョンアップされる。従って、作業者は、デバイスに適用するコンテンツのバージョンをデバイスの作業指示情報に直接指定するのではなく、「最新」などと指示した作業指示情報を作成する。このような指示が記載された作業指示情報を第１のサーバから取得したデバイスは、第２のサーバから最新バージョンのコンテンツを取得し、自身に適用する。その際、コンテンツ管理装置は、当該コンテンツとその追加コンテンツを組み合わせてデバイスに提供する（例えば、特許文献１参照）。ここで、追加コンテンツには、デバイスのＵＩ表示で用いる表示言語リソースなどが含まれる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１５−７９３７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
このようなデバイス環境において、多数のデバイスを複数の地域に設置するような大規模顧客に対応する場合、デバイスの運用局面における顧客のデバイス管理の手間を低減させるために、デバイス間のコンテンツのバージョンが統一されることが望ましい。
【０００７】
しかしながら、販売会社による表示言語リソースの準備状況によっては、コンテンツの最新バージョンが表示言語ごとに異なってしまい、複数の表示言語に対応する全デバイスのコンテンツのバージョンを統一するという顧客の要望を満たすことができなかった。
【０００８】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、それぞれのデバイスが取得する指示書において、コンテンツのバージョンを最新にするよう指示されている場合、複数のデバイス間でコンテンツのバージョンを統一することができる仕組みを提供することである。
【課題を解決するための手段】
【０００９】
上記目的を達成する本発明のデバイス設置システムは以下に示す構成を備える。
設置対象となる複数のデバイスにインストールすべきコンテンツを管理する第１の管理装置と、それぞれのデバイスが前記第１の管理装置からコンテンツを取得してインストールするための指示書を作成する第２の管理装置とを含むデバイス設置システムであって、前記第１の管理装置は、それぞれのデバイスに設定すべきコンテンツのバージョン情報を含むコンテンツ情報をデバイスＩＤに対応づけて管理するコンテンツ管理手段を備え、前記第２の管理装置は、  前記第１の管理装置は、
それぞれのデバイスに設定すべきコンテンツのバージョン情報を含むコンテンツ情報をデバイスＩＤに対応づけて管理するコンテンツ管理手段を備え、前記第２の管理装置は、前記デバイスのＩＤに対応づけた設置情報を管理する設置データ管理手段と、前記設置情報に従ってそれぞれのデバイスの設置情報を管理するデバイス管理手段と、それぞれのデバイスとの間でインストールすべきコンテンツに対して共通に設定する表示言語と、設定項目とを指定する指定手段と、前記指定手段により指定された設定項目に前記コンテンツのバージョンと、当該バージョンを統一させる条件とを含む指示書を作成する作成手段と、を備え、それぞれのデバイスは、前記第２の管理装置から前記指示書を取得することに応じて、当該指示書に設定された前記コンテンツのバージョンと、当該バージョンを統一させる条件に合致するコンテンツ情報を前記第１の管理装置から取得する取得手段と、
取得した前記コンテンツ情報に従い、前記コンテンツのバージョンと、当該バージョンを統一させる条件に合致するバージョンを決定する決定手段と、決定したバージョンに従う表示言語のコンテンツを前記第１の管理装置から取得して設定する設定手段と、を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、それぞれのデバイスが取得する指示書において、コンテンツのバージョンを最新にするよう指示されている場合、複数のデバイス間でコンテンツのバージョンを統一することができる。
【図面の簡単な説明】
【００１１】
【図１】デバイス設置システムの構成を説明する図である。
【図２】管理装置の構成を説明するブロック図である。
【図３】情報処理装置の構成を説明するブロック図である。
【図４】管理装置のモジュール構成を説明するブロック図である。
【図５】複合機のソフトウェア構成の例を示す図である。
【図６】設置データ格納部で管理するテーブルを示す図である。
【図７】コンテンツ情報格納部で管理するテーブルを示す図である。
【図８】ＵＩ制御部が提供するＵＩ画面を示す図である。
【図９】ＵＩ制御部が提供するＵＩ画面を示す図である。
【図１０】ＵＩ制御部が提供するＵＩ画面を示す図である。
【図１１】設置手順を記述したスクリプトの一例を示す図である。
【図１２】管理装置の制御方法を説明するフローチャートである。
【図１３】管理装置の制御方法を説明するフローチャートである。
【図１４】デバイス設置システムの制御方法を説明するフローチャートである。
【図１５】設置データ管理装置が管理するテーブルを示す図である。
【図１６】ＵＩ制御部が提供するＵＩ画面を示す図である。
【図１７】ＵＩ制御部が提供するＵＩ画面を示す図である。
【図１８】設置手順を記述したスクリプトの一例を示す図である。
【図１９】管理装置の制御方法を説明するフローチャートである。
【図２０】管理装置の制御方法を説明するフローチャートである。
【図２１】デバイス設置システムの制御方法を説明するフローチャートである。
【図２２】管理装置の制御方法を説明するフローチャートである。
【図２３】デバイス設置システムの制御方法を説明するフローチャートである。
【図２４】デバイス設置システムの制御方法を説明するフローチャートである。
【発明を実施するための形態】
【００１２】
次に本発明を実施するための最良の形態について図面を参照して説明する。
＜システム構成の説明＞
〔第１実施形態〕
【００１３】
本実施形態では、作業者が作成した作業指示情報を設置データ管理装置（管理装置）に登録し、情報処理装置（デバイス）が解析可能な「スクリプト」と呼ばれる作業指示書を作成する際のデバイス設置システム、管理装置、管理装置の制御方法、及びプログラム等について説明する。
また、作業者がスクリプトをデバイスに自動実行させ、前記各種コンテンツをデバイスに適用する際の動作についても説明する。なお、コンテンツには、ファームウェア（以下、図中でＦＷと省略表記する場合がある）や拡張プログラムなどが含まれる。なお、本実施形態では、コンテンツの例としてファームウェアを用いて説明するが、拡張プログラムであってもまったく同様に説明することができる。
【００１４】
図１は、本実施形態を示すデバイス設置システムの構成を説明する図である。
図１において、１０１は設置データ管理装置（第２の管理装置）である。作業者は、設置データ管理装置１０１上で、設定情報と、設定情報から生成される作業指示書を含む設置データを作成および管理する。１０２はコンテンツ管理装置（第１の管理装置）である。ファームウェア（ＦＷ）や拡張プログラムなどのコンテンツは、コンテンツ管理装置１０２上で管理される。
なお、本実施形態では、設置データ管理装置１０１とコンテンツ管理装置１０２が別装置で実現されているが、同一装置内で実現されていてもよい。
１０３はＬＡＮであり、設置データ管理装置１０１およびコンテンツ管理装置１０２が接続されている。
【００１５】
１０５、１０６は設置対象のデバイスである。本実施形態では、デバイス１０５、１０６の例として、ファクシミリ機能、印刷機能やスキャン機能、ネットワーク通信機能などを備える複合機を想定するが、これに限定されるものではない。これらの機器はすべてＬＡＮ１０７によりネットワークに接続されている。ＬＡＮ１０３とＬＡＮ１０７はインターネット１０４に接続されており、通信可能となっている。
【００１６】
なお、本実施形態では、設置データ管理装置１０１とコンテンツ管理装置１０２がＬＡＮ１０３を経由してインターネット１０４に接続されている構成を示したが、これらの機器がインターネット１０４と直接接続されている構成であってもよい。
【００１７】
図２は、本実施形態を示す管理装置の構成を説明するブロック図である。本例では、図１に示した設置データ管理装置１０１、コンテンツ管理装置１０２をＰＣ２００で構成した例である。
図２において、ハードディスク（ＨＤＤ）２１２には、後述のすべての説明で動作主体となる本実施形態に係る設置データ管理プログラム、コンテンツ管理プログラムのプログラムが格納される。２０１はＣＰＵで、後述のすべての説明において、特に断りのない限り、ハード上の実行の主体である。一方、ソフトウェア上の制御の主体は、ハードディスク（ＨＤＤ）２１２に格納された設置データ管理プログラム、コンテンツ管理プログラムである。
【００１８】
２０２はＲＯＭで、ＢＩＯＳやブートプログラムが格納されている。２０３はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。２０５はキーボードコントローラ（ＫＢＣ）で、キーボード（ＫＢ）２０９やポインティングデバイス（ＰＤ）２１０等からの指示入力を制御する。２０６はディスプレイコントローラ（ＤＳＰＣ）で、ディスプレイ（ＤＳＰ）２１１の表示を制御する。
２０７はディスクコントローラ（ＤＫＣ）で、ハードディスク（ＨＤＤ）２１２やＣＤ−ＲＯＭ（ＣＤ）２１３などの記憶装置へのアクセスを制御するものである。ハードディスク（ＨＤＤ）２１２およびＣＤ−ＲＯＭ（ＣＤ）２１３等には、ブートプログラム、オペレーティングシステム、データベース、設置データ管理プログラム、コンテンツ管理プログラムおよびそのデータ等が記憶されている。２０８はインタフェースコントローラ（ＩＦＣ）で、ＬＡＮを介して他のネットワーク機器と情報を送受信する。これらの各構成要素は、システムバス２０４上に配置される。
【００１９】
なお、本実施形態に係る設置データ管理プログラムやコンテンツ管理プログラムは、ＣＤ−ＲＯＭなどの記憶媒体に格納された形で供給されても良い。その場合には図２に示すＣＤ−ＲＯＭ（ＣＤ）２１３などによって記憶媒体からプログラムが読み取られ、ハードディスク（ＨＤＤ）２１２にインストールされる。
【００２０】
図３は、本実施形態を示す情報処理装置の構成を説明するブロック図である。本例は、図１に示したデバイス１０５、１０６を、複合機３００で構成した例である。
図３において、３０１は複合機全体の制御を司るＣＰＵであり、３０２はシリアル番号などを格納するＲＯＭである。３０３はＣＰＵ３０１のワークエリア、受信バッファ、画像描画に使用されるＲＡＭである。３０４は、ファームウェア、拡張プログラム、フォントデータ、などを記録するハードディスク（ＨＤＤ）である。３０５は各種スイッチやボタン、並びに、メッセージ表示用の液晶表示部で構成される操作部である。３０６はネットワークに接続するためのネットワークインタフェースで、ＬＡＮを介して他のネットワーク機器と情報を送受信する。３０７は記録紙に印刷を行うプリンタエンジン、３０８は原稿を読み取るためのスキャナ、３０９はファクシミリの送受信を行うためのファクシミリ通信部である。
これらの各構成要素は、システムバス３１０上に配置される。
【００２１】
図４は、本実施形態を示す管理装置のモジュール構成を説明するブロック図である。特に、図４の（Ａ）は、図１に示した設置データ管理装置１０１で動作する、設置データ管理プログラム４００の機能構成に対応する。なお、ＣＰＵ２０１が本プログラムを実行することにより、各機能が実現される。
【００２２】
図４の（Ａ）において、ＵＩ制御部４０１は、作業者が本プログラムを操作するためのグラフィカルユーザインタフェースを提供する。グラフィカルユーザインタフェース（ＧＵＩ）は、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ Ｔｒａｎｓｆｅｒ Ｐｒｏｔｏｃｏｌ）を用いて、他のＰＣで表示可能なＷｅｂページとして構成される。もしくは、設置データ管理装置１０１に備え付けられたディスプレイ２１１に表示されるよう、構成されてもよい。
制御部４０２は、ＵＩ制御部４０１の指示や通信部４０５が受信する要求に従って、設置データ管理プログラム４００内の各機能に対して後述する各種処理を指示する。設置データ作成部４０３は、ＵＩ制御部４０１からの入力情報を基に、制御部４０２の指示に従って設置データを生成する。
【００２３】
スクリプト作成部４０４は、制御部４０２の指示に従い、設置データ作成部４０３で生成された設置データを基に、図５の（Ｂ）に示す自動設置プログラム５５０が解析可能な設置作業用のスクリプトを生成する。
【００２４】
通信部４０５は、デバイス１０５、１０６からの要求を受信して、制御部４０２に要求内容を送信する。更に、制御部４０２から要求に対する処理結果を受け取り、前記要求に対する応答データを作成し、要求送信元に応答を送信する。設置データ管理部４０６は、制御部４０２の指示に従い、設置データ格納部４０７に対して設置データの格納、削除、更新、取得処理を指示する。
設置データ格納部４０７は設置データ管理装置１０１で動作するデータベースである。
【００２５】
図４の（Ｂ）は、図１に示したコンテンツ管理装置１０２で動作する、コンテンツ管理プログラム４５０の機能構成に対応する。なお、ＣＰＵ２０１がプログラムを実行することにより、各機能が実現される。
図４の（Ｂ）において、ＵＩ制御部４５１は、作業者が本プログラムを操作するためのグラフィカルユーザインタフェースを提供する。グラフィカルユーザインタフェースは、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ Ｔｒａｎｓｆｅｒ Ｐｒｏｔｏｃｏｌ）を用いて、他のＰＣで表示可能なＷｅｂページとして構成される。もしくは、コンテンツ管理装置１０２に備え付けられたディスプレイ２１１に表示されるよう、構成されてもよい。
制御部４５２は、ＵＩ制御部４５１の指示や通信部４５４が受信する要求に従って、コンテンツ管理プログラム４５０内の各機能に対して後述する各種処理を指示する。入出力部４５３は、制御部４５２の指示に従い、コンテンツの入出力を受け付ける。
【００２６】
通信部４５４は、デバイス１０５、１０６からの要求を受信して、制御部４５２に要求内容を送信する。更に、制御部４５２から要求に対する処理結果を受け取り、前記要求に対する応答データを作成し、要求送信元に応答を送信する。
コンテンツ情報管理部４５５は、制御部４５２の指示に従い、コンテンツ情報格納部４５６に対してコンテンツの格納、削除、更新、取得処理を指示する。
コンテンツ情報格納部４５６はコンテンツ管理装置１０２で動作するデータベースである。
【００２７】
本実施形態に示す管理装置では、ＣＰＵ２０１がプログラムを実行することにより、設置データ管理装置１０１、コンテンツ管理装置１０２の各機能が実現される。設置データ格納部４０７およびコンテンツ情報格納部４５６で管理するデータの内容については図６、図７を用いて説明する。
【００２８】
図５は、図１に示した複合機３００のソフトウェア構成の例を示す図である。
特に、図５の（Ａ）は、複合機３００上の複合機ソフトウェア５００に対応する。
図５の（Ａ）において、ＯＳ５１０上には、プリンタやＦＡＸ、スキャナなどの元々備わっている制御用プログラムのネイティブプログラム５０１が動作している。また、拡張プログラム実行プラットフォームである拡張プログラム実行プラットフォーム５０２も動作している。更に、ネイティブプログラム５０１上には、ファームウェア更新サービス５０３、ファンクション有効化サービス５０４、設定管理サービス５０５が動作している。また、拡張プログラム実行プラットフォーム５０２上には、拡張プログラムシステムサービス５０６と拡張プログラム５０７が動作している。
【００２９】
ファームウェア更新サービス５０３は、ファームウェアを更新するための各種機能を提供するサービスである。例えば、ファームウェア更新サービス５０３は、作業者から指定されたファームウェアを参照し、該デバイスのファームウェアの更新が必要か否かを判断する。また、ファームウェア更新サービス５０３は、ネイティブプログラム５０１を介して、ファームウェアを更新する。
【００３０】
ファンクション有効化サービス５０４は、ネイティブプログラム５０１に予め組み込まれているファンクションを、有効化するためのサービスである。ファンクション有効化サービス５０４は、作業者から指定されたファンクションライセンスファイルにより特定されるファンクションを識別し、有効化する。
【００３１】
設定管理サービス５０５は、プリンタやスキャナなどの各種設定情報を管理するためのサービスである。設定管理サービス５０５はＵＩを持っており、作業者は複合機３００の操作部３０５を介して設定変更を指示することができる。また、専用インタフェースを介して設定変更を指示することもできる。
【００３２】
拡張プログラムシステムサービス５０６は、拡張プログラム５０７をインストール、アンインストールする機能を提供する。さらに、拡張プログラム５０７に共通に有用なユーティリティライブラリも提供する。拡張プログラム５０７から拡張プログラムシステムサービス５０６の機能を呼び出すことにより、拡張プログラム５０７を開発する手間を省くことができる。
拡張プログラム５０７は、拡張プログラム実行プラットフォーム５０２または拡張プログラムシステムサービス５０６を介してのみ、他の拡張プログラム５０７など複合機３００の各モジュールへアクセスすることができる。また、ＵＩを持つ拡張プログラム５０７は、複合機３００の操作部３０５に表示されるメインメニュー画面にアイコンを表示することができる。
このアイコンを作業者が選択すると、操作部３０５はその旨をＣＰＵ３０１に送信する。その後、複合機３００のＣＰＵ３０１は作業者が選択した拡張プログラムのＵＩを操作部３０５に表示する。
なお、本ソフトウェア構成は基本的な部分のみ記載したものであり、実施環境によっては他のサービス等が含まれていても良いし、不要なサービスは無くても良い。
【００３３】
図５の（Ｂ）は、複合機３００で動作する、自動設置プログラムの機能構成に対応する。本実施形態において、自動設置プログラム５５０は、複合機３００の拡張プログラム５０７の一つとして実装されるものとする。複合機３００のＣＰＵ３０１が各機能に応じたプログラムを実行することにより、各機能は実現される。ＵＩ制御部５５１は、自動設置プログラム５５０を操作するためのＵＩを、操作部３０５を通じて作業者に提供し、作業者の操作を受け付ける。
【００３４】
通信部５５２は、拡張プログラムシステムサービス５０６、ネットワークＩ／Ｆ３０６を経由して設置データ管理装置１０１やコンテンツ管理装置１０２から各種データを取得する。取得するデータには、複合機３００に適用する設置データや各種コンテンツが含まれる。同様に、通信部５５２は、設置データ管理装置１０１やコンテンツ管理装置１０２に各種データを送信する。処理実行部５５３は、ＵＩ制御部５５１およびスクリプト解析部５５４の指示に従い、各種処理を行う。スクリプト解析部５５４は、通信部５５２が取得した設置データに含まれるスクリプトを解析し、処理実行部５５３が実行すべき処理、順序を決定する。
【００３５】
図６は、図４に示した設置データ格納部４０７で管理する設置データに対応付けられて管理されるテーブルの一例を示す図である。なお、図６のテーブル構成は一例であり、本例とは異なるテーブル構成であってもよい。
図６の（Ａ）の設置データ管理テーブル６００は、設置データの概要を格納しているテーブルであり、カラム６０１からカラム６０４で構成される。１レコードが１つの設置データを表している。カラム６０１は設置データＩＤを表している。設置データＩＤは設置データを一意に識別するための識別子である。
カラム６０２は設置データ名を表している。カラム６０３は設置データを適用するデバイスの機種名を表している。カラム６０４はコメントを表している。コメントは設置データの内容に関する補足説明である。
【００３６】
本実施形態では、１つの設置データに１種類の機種しか含まないように構成されている。従って、顧客環境に複数機種のデバイスを設置するような場合、作業者は、機種毎に複数個の設置データを作成することになる。
【００３７】
図６の（Ｂ）の共通設定項目管理テーブル６１０は、設置対象のデバイスに対して共通で設定するデータや設定項目を管理するテーブルであり、カラム６１１からカラム６１６で構成される。１レコードが１つの設置データの共通設定項目を表す。カラム６１１は共通ＩＤを表している。共通ＩＤは、共通設定項目を一意に識別するための識別子である。カラム６１２は設置データＩＤを表している。本カラムの値は、設置データ管理テーブル６００のカラム６０１「設置データＩＤ」のいずれかの値と同一となる。
【００３８】
カラム６１１とカラム６１２で各レコードの共通設定項目と設置データを関連付けている。例えば、最初のレコードであると、共通ＩＤ「Ｃ００１」である共通設定項目が、設置データＩＤが「１」である設置データで使用されることがわかる。
【００３９】
カラム６１３は、ファームウェアバージョンを表している。カラム６１３の各レコードには、コンテンツ管理装置１０２で管理されているファームウェアのバージョンが格納される。具体的なバージョン番号か、一番新しいファームウェアバージョンを意味する「最新」のいずれかが格納される。
【００４０】
カラム６１４は、機器間ファームウェア条件を表している。カラム６１３にて、ファームウェアバージョン「最新」が指定された場合、同一設置データを適用するデバイス間でファームウェアのバージョンを統一するか否かが格納される。具体的には「統一」または「非統一」が格納される。カラム６１３にて具体的なバージョン番号が指定された場合は、図示されるように本カラムは空欄となる。
【００４１】
カラム６１５以降は、その他の共通設定項目の例を列挙している。ここではカラム６１５としてスリープ設定、カラム６１６としてスリープモード移行時間を例示しているが、これに限定されるものではない。
【００４２】
図６の（Ｃ）の個別設定項目管理テーブル６２０は、設置対象のデバイスごとに設定する設定項目を管理するテーブルであり、カラム６２１からカラム６２５で構成される。１レコードが１台のデバイスの個別設定項目を表している。
カラム６２１は個別ＩＤを表している。個別ＩＤは、個別設定項目を一意に識別するための識別子である。カラム６２２は設置データＩＤを表している。本カラムの値は、設置データ管理テーブル６００のカラム６０１「設置データＩＤ」のいずれかの値と同一となる。
カラム６２３はデバイスＩＤを表している。一般的にはデバイスのシリアル番号が用いられるが、デバイスを一意に識別できればどのようなものであってもよい。
【００４３】
カラム６２１、カラム６２２およびカラム６２３で各レコードの個別設定項目、設置データ、デバイスを関連付けている。例えば、最初のレコードであると、個別ＩＤ「Ｘ００１」である個別設定項目が、設置データ「１」である設置データに含まれるデバイスＩＤ「Ｄ００１」のデバイスに設定されることがわかる。カラム６２４は表示言語を表している。設置作業が完了したデバイスは、本カラムで指定された表示言語に従って操作部３０５上に各種文字列を表示する。カラム６２５は、その他の個別設定項目の例として、デバイス名を示している。なお、これ以外の個別設定項目がカラム６２５以降に列挙されてもよい。
【００４４】
図６の（Ｄ）のデバイス管理テーブル６３０は、設置対象のデバイスに関する情報を格納しているテーブルであり、カラム６３１からカラム６３４で構成される。１レコードが１つの設置対象のデバイスを表している。カラム６３１はデバイスＩＤを表している。本カラムの値は、個別設定項目管理テーブル６２０のカラム６２３「デバイスＩＤ」のいずれかの値と同一となる。カラム６３２は設置データＩＤである。本カラムの値は、設置データ管理テーブル６００のカラム６０１「設置データＩＤ」のいずれかの値と同一となる。
【００４５】
カラム６３１とカラム６３２によって、設置対象のデバイスと設置データが関連付けられる。例えば、最初のレコードであると、デバイスＩＤ「Ｄ００１」であるデバイスは、設置データＩＤ「１」である設置データに含まれることが分かる。
【００４６】
カラム６３３はデバイスごとの設置状態を表している。設置状態は、個々のデバイスの設置処理の進行状態を示す。例えば、最初のレコードであると、「未」となっており、デバイスＩＤ「Ｄ００１」のデバイスの設置処理が開始されていないことが分かる。
【００４７】
カラム６３３の設置状態として取り得る値は「未」（設置作業開始前）、「済」（設置作業終了）、「作業中」（設置作業中）、「エラー」（失敗）を想定しているが、これ以外の値を設けてもよい。カラム６３４はスクリプトである。本カラムには、設置データ管理装置１０１によって作成されたスクリプトが格納される。本実施形態では、スクリプトの実体をカラム６３４に格納することを想定しているが、カラム６３４にはスクリプトの実体へのパスのみを格納してもよい。この場合、スクリプトの実体は別の場所にファイルとして置かれる構成となる。
【００４８】
図７は、図４に示したコンテンツ情報格納部４５６で管理するテーブルの一例を示す図である。なお、図７のテーブル構成は一例であり、本例とは異なるテーブル構成であってもよい。
【００４９】
図７において、ファームウェア管理テーブル７００は、ファームウェアに関する情報を格納しているテーブルであり、カラム７０１からカラム７０７で構成される。１レコードが１つのファームウェア情報を表している。カラム７０１は機種名を表している。本カラムには、ファームウェア管理テーブル７００に登録されているファームウェアを適用できる機種が指定される。
【００５０】
カラム７０２はファームウェアを表している。本カラムには、コンテンツ管理装置１０２に登録されたファームウェアの実体が格納される。本実施形態では、ファームウェアの実体をカラム７０２に格納することを想定しているが、カラム７０２にはファームウェアの実体へのパスのみを格納してもよい。この場合、ファームウェアの実体は別の場所にファイルとして置かれる構成となる。
カラム７０３はファームウェアバージョンを表している。カラム７０２に登録されたファームウェアのバージョン情報が格納される。カラム７０４は標準表示言語（ＪＰ／ＥＮ）を表している。カラム７０２に登録されたファームウェアに標準で含まれる表示言語情報が格納される。
【００５１】
カラム７０５は追加表示言語リソースを表している。本カラムには、コンテンツ管理装置１０２に登録された追加表示言語リソースの実体（例えばｆｒ．ｚｉｐ）が格納される。本実施形態では、追加表示言語リソースの実体をカラム７０５に格納することを想定しているが、カラム７０５には追加表示言語リソースの実体へのパスのみを格納してもよい。この場合、追加表示言語リソースの実体は別の場所にファイルとして置かれる構成となる。カラム７０６は追加表示言語を表している。カラム７０５に登録された追加表示言語リソースに含まれる表示言語情報が格納される。
【００５２】
カラム７０７は状態を表している。本カラムには、カラム７０２に登録されたファームウェアが外部に公開されているか否かが格納される。カラム７０７の状態として取り得る値は「公開」、「非公開」を想定しているが、これ以外の値を設けてもよい。
【００５３】
図８は、図４に示した設置データ管理プログラム４００が提供するＵＩ画面の一例を示す図である。本例は、設置データ管理プログラム４００のＵＩ制御部４０１が持つＵＩ画面の例である。
図８の（Ａ）の一覧画面８００において、８０１は設置データＩＤ、８０２は設置データ名、８０３は機種名、８０４はコメントで、それぞれ設置データ管理テーブル６００のカラム６０１、カラム６０２、カラム６０３、カラム６０４の値が表示される。８０５は新規作成ボタンである。作業者が本ボタンを押下すると、編集画面８２０が表示される。
【００５４】
８０６は編集ボタンである。作業者が設置データ一覧（８０１から８０４から成るリスト）の中の任意の行を選択し、本ボタンを押下すると、該当する設置データに関する編集画面８２０が表示される。８０７は削除ボタンである。作業者が設置データ一覧の中の任意の行を選択し、本ボタンを押下すると、設置データ格納部４０７の設置データ管理テーブル６００、６１０、６２０、６３０から、当該設置データＩＤに関連付けられるレコードが削除される。８０８は終了ボタンである。本ボタンが押下されると、ＵＩ制御部４０１は一覧画面８００を終了する。
【００５５】
図８の（Ｂ）の編集画面８２０において、８２１は設置データ名、８２２は機種名、８２３はコメントの入力領域である。８２４はファームウェアバージョン、８２５は機器間ファームウェア条件の入力領域である。８２６はデバイスＩＤ、８２７はデバイス名、８２８は表示言語である。８２９は新規作成ボタンである。作業者が本ボタンを押下すると、個別編集画面８５０が表示される。
８３０は編集ボタンである。作業者が個別設定項目一覧の中の任意の行を選択し、本ボタンを押下すると、該当する個別設定項目に関する個別編集画面８５０が表示される。８３１は削除ボタンである。作業者が個別設定項目一覧の中の任意の行を選択し、本ボタンを押下すると、個別設定項目管理テーブル６２０の該当するレコードのデータが削除される。
【００５６】
８３２はＯＫボタンである。本ボタンが押下されると、設置データ管理プログラム４００は編集結果から自動設置プログラム５５０が解析可能なスクリプトを生成し、編集結果と共に、設置データ格納部４０７の各テーブルに格納する。本動作の詳細は図１３にて説明する。その後、編集画面８２０を終了する。
８３３はキャンセルボタンである。本ボタンが押下されると編集画面８２０の編集結果を破棄し、編集画面８２０を終了する。
【００５７】
なお、ＵＩ制御部４０１は、編集ボタン８０６が押下された際に選択されていた設置データに該当するレコードの値を、設置データ格納部４０７の各テーブルから取得し表示する。編集画面８２０が新規作成ボタン８０５の押下によって表示された場合、ＵＩ制御部４０１は初期値を表示する。
【００５８】
図８の（Ｃ）の個別編集画面８５０において、８５１はデバイスＩＤ、８５２はデバイス名、８５３は表示言語の入力領域である。８５４はＯＫボタンである。本ボタンが押下されると、ＵＩ制御部４０１は編集結果を編集画面８２０の個別設定項目一覧に反映する。その後、個別編集画面８５０を終了する。８５５はキャンセルボタンである。本ボタンが押下されると個別編集画面８５０の編集結果を破棄し、個別編集画面８５０を終了する。
【００５９】
なお、ＵＩ制御部４０１は、編集ボタン８３０が押下された際に選択されていた個別設定項目に該当するレコードの値を、個別設定項目管理テーブル６２０から取得し表示する。個別編集画面８５０が新規作成ボタン８２９の押下によって表示された場合、ＵＩ制御部４０１は既定の初期値を表示する。
【００６０】
図９は、図４に示したコンテンツ管理プログラム４５０のＵＩ制御部４５１が提供するＵＩ画面の例を示す図である。
図９の（Ａ）のファームウェア一覧画面９００において、９０１は機種名、９０２はファームウェアバージョン、９０３は標準表示言語、９０４は追加表示言語、９０５は状態である。これらには、それぞれファームウェア管理テーブル７００のカラム７０１、カラム７０３、カラム７０４、カラム７０６、カラム７０７の値が表示される。９０６はファームウェア追加ボタンである。作業者が本ボタンを押下すると、図９の（Ｂ）に示す追加画面９２０が表示される。
【００６１】
９０７は編集ボタンである。作業者がファームウェア一覧（９０１から９０５から成るリスト）の中の任意の行を選択し、本ボタンを押下すると、該当するファームウェアに関する図９の（Ｃ）に示す編集画面９４０が表示される。９０８は削除ボタンである。作業者がファームウェア一覧の中の任意の行を選択し、本ボタンを押下すると、ファームウェア管理テーブル７００の該当するレコードのデータが削除される。９０９は終了ボタンである。本ボタンが押下されると、ＵＩ制御部４５１はファームウェア一覧画面９００を終了する。
【００６２】
図９の（Ｂ）の追加画面９２０において、９２１はファームウェアファイル指定領域である。作業者は、本領域にコンテンツ管理装置１０２に追加するファームウェアの実体のファイルパスを入力する。入力を容易にするためにファイル参照ダイアログ表示ボタン（不図示）のようなものを用意してもよい。
【００６３】
９２２はＯＫボタンである。本ボタンが押下されると、設置データ管理プログラム４００は９２１で指定されたファームウェアをファームウェア管理テーブル７００に追加する。その際、当該ファームウェアの属性情報などから、当該ファームウェアが対応する表示言語を特定し、カラム７０４「標準表示言語」に設定する。さらに、カラム７０７「状態」には初期値として「非公開」を設定する。その後、追加画面９２０を終了する。９２３はキャンセルボタンである。本ボタンが押下されると追加画面９２０の編集結果を破棄し、追加画面９２０を終了する。
【００６４】
図９の（Ｃ）の編集画面９４０において、９４１は追加表示言語ファイル指定領域である。作業者は、本領域にコンテンツ管理装置１０２に追加する表示言語リソースの実体のファイルパスを入力する。入力を容易にするためにファイル参照ダイアログ表示ボタン（不図示）のようなものを用意してもよい。
【００６５】
９４２は状態の入力領域である。ＵＩ制御部４０１は、編集ボタン９０７が押下された際に選択されていたファームウェア一覧に該当するレコードの値を、ファームウェア管理テーブル７００から取得し表示する。
【００６６】
９４３はＯＫボタンである。本ボタンが押下されると、コンテンツ管理プログラム４５０は９４１で指定された追加表示言語リソースと状態９４２の値をファームウェア管理テーブル７００に格納する。その際、当該追加表示言語リソースの属性情報などから、当該追加表示言語リソースが対応する表示言語を特定し、カラム７０６「追加表示言語」に設定する。その後、編集画面９４０を終了する。９４４はキャンセルボタンである。本ボタンが押下されると編集画面９４０の編集結果を破棄し、編集画面９４０を終了する。
【００６７】
図１０は、図５に示した自動設置プログラム５５０のＵＩ制御部５５１が持つＵＩ画面の例を示す図である。
図１０において、ＵＩ画面１０００は、作業者がデバイス上で自動設置プログラム５５０を起動し、必要に応じて認証処理を実行した後、最初に表示される画面である。
【００６８】
１００１はデバイスＩＤの入力領域である。デバイスＩＤ１００１の値は、設置データ管理装置１０１にて当該デバイスに適用するスクリプトを一意に識別するために用いられる。なお、デバイスＩＤとしてデバイスのシリアル番号を用いることも可能である。この場合、自動設置プログラム５５０は、ＭＦＰ３００のＲＯＭ３０２に格納されているシリアル番号を読み出し、デバイスＩＤ１００１の初期値として表示する。
【００６９】
１００２はＯＫボタンである。本ボタンが押下されると、自動設置プログラム５５０はデバイスＩＤ１００１の値を設置データ管理装置１０１に送付する。本動作の詳細は図１４にて説明する。１００３はキャンセルボタンである。本ボタンが押下されるとＵＩ画面１０００を終了する。
【００７０】
図１１は、図１に示したデバイス１０５の設置処理を自動で実行するための設置手順を記述したスクリプトの一例を示す図である。
図１１において、スクリプト１１００は、ＭＦＰ３００の自動設置プログラム５５０の通信部５５２によって取得され、処理実行部５５３を介しスクリプト解析部５５４によって解析される。
スクリプト解析部５５４によって解析されたスクリプト１１００は、その後、処理実行部５５３によって、記載された処理が実行される。なお、スクリプト１１００は、設置データに含まれるデバイスＩＤごとに生成される。また、スクリプト１１００はＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ Ｍａｒｋｕｐ Ｌａｎｇｕａｇｅ）で記載されており、設置データ識別部１１０１、機種識別部１１０２、デバイス識別部１１０３、処理記載部１１１０で構成されている。なお、本図ではＸＭＬによりスクリプトを表現しているが、ＸＭＬに限定されず、シェルスクリプトなどで書かれていても良い。
【００７１】
設置データ識別部１１０１は、設置データを識別するための設置データＩＤが記載されており、＜ｓｅｔｕｐＩｄ＞タグで構成されている。設置データＩＤは、設置データ管理プログラム４００によって設置データが生成される際に、設置データに対して付与される識別子で、全ての設置データに対して一意な値である。本例では分かり易く説明するため「１」といった単純な値で記載しているが、例えばＧＵＩＤ（Ｇｌｏｂａｌ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ）などを用いるのが望ましい。
機種識別部１１０２は、設置対象であるデバイス１０５や１０６の機種を識別するための機種名が記載されており、＜ｄｅｖｉｃｅＴｙｐｅ＞タグで構成されている。デバイス識別部１１０３は、設置対象であるデバイス１０５や１０６を識別するためのターゲット識別子が記載されており、＜ｄｅｖｉｃｅＩｄ＞タグで構成されている。
【００７２】
処理記載部１１１０は、設置処理のために必要な処理群が記載される。処理記載部１１１０は、ファームウェア更新処理部１１０４、拡張プログラムインストール処理部１１０５、ファンクションアクティベート処理部１１０６を含む。さらに処理記載部１１１０は、共通設定項目適用処理部１１０７、個別設定項目適用処理部１１０８、再起動処理部１１０９で構成されている。各処理を示すタグの中にはｏｒｄｅｒ属性が含まれている。ｏｒｄｅｒ属性は処理の順番を指定するものである。
【００７３】
ファームウェア更新処理部１１０４は、ファームウェア更新サービス５０３を介してファームウェアを更新する処理である。ファームウェア更新処理部１１０４は、＜ｕｐｄａｔｅＦｉｒｍｗａｒｅＣｏｍｍａｎｄ＞タグを記載することで処理を定義し、＜ｐａｔｈ＞タグによりファームウェアの実体が存在するサーバへのパスを指定している。さらに、＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグには、ファームウェアのバージョンが指定されている。ここでは、具体的なバージョン番号ではなく、「最新」を表す「ｌａｔｅｓｔ」という文字列が記載されている。最後に、＜ｌａｎｇ＞タグにはファームウェアに追加する表示言語が指定される。＜ｌａｎｇ＞タグのｔａｒｇｅｔ属性が「ｔｒｕｅ」である表示言語は、本スクリプトが実行されるデバイスに設定される表示言語を表す。ｔａｒｇｅｔ属性が「ｔｒｕｅ」である＜ｌａｎｇ＞タグの値は、個別設定項目適用処理部１１０８の＜ｖｉｅｗＬａｎｇｕａｇｅ＞タグの値と同一となる。
【００７４】
拡張プログラムインストール処理部１１０５は、拡張プログラムシステムサービス５０６を介して拡張プログラムをインストールする処理である。拡張プログラムインストール処理部１１０５は、＜ｉｎｓｔａｌｌＡｐｐｌｉｃａｔｉｏｎＣｏｍｍａｎｄ＞タグの記載により処理を定義し、＜ａｐｐＮａｍｅ＞タグによりインストールする拡張プログラムを指定している。＜ａｐｐＮａｍｅ＞タグには、インストール対象の拡張プログラムの実体が指定されている。本図においてはＪａｒファイル形式の拡張プログラムが指定されている。尚、本拡張プログラムの形式はＪａｒファイル形式に限定されない。
【００７５】
また、インストール対象の拡張プログラムに対するライセンスを＜ｌｉｃｅｎｓｅＦｉｌｅＮａｍｅ＞タグにより指定している。＜ｌｉｃｅｎｓｅＦｉｌｅＮａｍｅ＞タグは、拡張プログラムのライセンスの実体が指定されている。本図においては．ｌｉｃファイル形式のライセンスファイルが指定されているが、ライセンスのファイル形式についてはこれに限定されない。
【００７６】
ファンクションアクティベート処理部１１０６は、ファンクション有効化サービス５０４を介してファンクションを有効化する処理である。ファンクションアクティベート処理部１１０６は、＜ａｃｔｉｖａｔｅＦｕｎｃｔｉｏｎＣｏｍｍａｎｄ＞タグの記載により処理を定義し、＜ｌｉｃｅｎｓｅＦｉｌｅＮａｍｅ＞タグによりアクティベートするファンクションのライセンスファイルを指定している。本図においては、ｌｉｃ形式のライセンスファイルが指定されているが、ライセンスのファイル形式についてはこれに限定されない。
【００７７】
共通設定項目適用処理部１１０７と個別設定項目適用処理部１１０８は、設定管理サービス５０５を介してデバイスの設定情報を変更する処理である。共通設定項目適用処理部１１０７、１１０８はいずれも＜ｄｅｖｉｃｅＣｏｎｆｉｇＣｏｍｍａｎｄ＞タグという同一のタグにて処理を定義している。本例においては、例えば＜ｓｌｅｅｐＳｅｔｔｉｎｇ＞タグのように、デバイスに設定する設定項目をひとつひとつタグで指定している。なお、例示した＜ｖｉｅｗＬａｎｇｕａｇｅ＞タグの値には、個別設定項目管理テーブル６２０のカラム６２４「表示言語」の値が設定される。
【００７８】
これ以外に、例えば、設定項目を一纏めにしたファイルを生成し、＜ｃｏｎｆＦｉｌｅＮａｍｅ＞タグなどの中で当該ファイルを指定することによって、デバイスに適用する設定項目を一括で指定する方法などが考えられる。
【００７９】
再起動処理部１１０９は＜ｒｅｂｏｏｔＣｏｍｍａｎｄ＞タグのみで構成されており、一通りの設置処理が終了した後、デバイスを再起動させて、設定情報をデバイスに反映させるための処理である。なお、本図で示すスクリプトの記述は、デバイスの設置に必要な処理を限定するものではなく、必要に応じて処理の重複、増減があっても良い。
さて、作業者が設置データを作成し、設置データ管理装置１０１に登録する場合、設置データ管理装置１０１は図１２のフローチャートを実行する。
【００８０】
図１２は、本実施形態を示す管理装置の制御方法を説明するフローチャートである。本例は、作業者が設置データを作成して設置データ管理装置１０１に登録する処理例である。なお、各ステップは、設置データ管理装置１０１のＣＰＵ２０１が記憶された制御プログラムを実行することで実現される。以下、ＣＰＵ２０１が実行するモジュールを主体として説明する。
Ｓ１２０１では、設置データ管理プログラム４００は設置データを作成し、設置データ格納部４０７に格納する。具体的には、まず、ＵＩ制御部４０１が一覧画面８００を表示する。作業者によって一覧画面８００の新規作成ボタン８０５または編集ボタン８０６が押下されると、編集画面８２０が表示される。作業者によって編集画面８２０（および個別編集画面８５０）の各入力領域に値が入力され、ＯＫボタン８３２が押下されると、制御部４０２は、編集画面８２０の入力結果をＵＩ制御部４０１から受け取り、設置データ作成部４０３に渡す。
【００８１】
設置データ作成部４０３は、入力結果を設置データ格納部４０７の各テーブルで定められた形式に変換する。さらに、設置データ作成部４０３は設置データＩＤを生成し、前記変更結果と共に設置データ管理部４０６経由で設置データ格納部４０７に格納する。
【００８２】
Ｓ１２０２では、制御部４０２は、Ｓ１２０１で設置データ格納部４０７に格納された設置データのファームウェアのバージョン指定が「最新」であり、かつ、機器間ファームウェア条件が「統一」であるか否かを判別する。
【００８３】
具体的には、制御部４０２は共通設定項目管理テーブル６１０のカラム６１２「設置データＩＤ」の値としてＳ１２０１で生成された設置データＩＤを持つレコードを特定する。その後、本レコードにおいて、カラム６１３「ファームウェアバージョン」の値が「最新」であり、かつ、カラム６１４「機器間ファームウェア条件」の値が「統一」であるか否かを判別する。ファームウェアのバージョン指定が「最新」かつ機器間ファームウェア条件が「統一」であると制御部４０２が判断した場合は、Ｓ１２０３に進む。一方、ファームウェアのバージョン指定が「最新」かつ機器間ファームウェア条件が「統一」でないと制御部４０２が判断した場合は、Ｓ１２０４に進む。
【００８４】
Ｓ１２０３では、制御部４０２は個別設定項目管理テーブル６２０のカラム６２２「設置データＩＤ」の値としてＳ１２０１で生成された設置データＩＤを持つレコードを特定する。一つの設置データには複数の個別設定項目が設定され得るので、制御部４０２は複数のレコードを特定する可能性がある。その後、特定された全レコードにおけるカラム６２４「表示言語」の値を抽出する。
【００８５】
Ｓ１２０４では、制御部４０２はＳ１２０３と同様に、個別設定項目管理テーブル６２０の対象レコードを特定する。その後、特定されたレコードそれぞれにおけるカラム６２４「表示言語」の値をカラム６２３「デバイスＩＤ」の値と対応付けて抽出する。
【００８６】
Ｓ１２０５では、スクリプト作成部４０４はＳ１２０１にて設置データ格納部４０７に格納された値と、Ｓ１２０３またはＳ１２０４で抽出した表示言語の値とを用いて、図１１で示したような設置用のスクリプトを作成する。ここでは特に、ファームウェア更新処理部１１０４の＜ｌａｎｇ＞タグの作成方法について説明する。
【００８７】
まず、共通設定項目管理テーブル６１０のカラム６１３「ファームウェアバージョン」に「最新」が設定されており、かつ、カラム６１４「機器間ファームウェア条件」に「統一」が設定されている場合について述べる。この場合、スクリプト作成部４０４は、＜ｌａｎｇ＞タグに、当該設置データに含まれるデバイス毎の表示言語をすべて列挙する。また、スクリプト作成部４０４は、作成中のスクリプトが対象としているデバイスに適用される表示言語に、ｔａｒｇｅｔ属性「ｔｒｕｅ」を設定する。スクリプト１１００の例では、値が「ＦＲ」である＜ｌａｎｇ＞タグに「ｔａｒｇｅｔ＝"ｔｒｕｅ"」が設定されている。
【００８８】
次に、条件以外の場合について述べる。この場合、Ｓ１２０４で、スクリプト作成部４０４は、＜ｌａｎｇ＞タグに、作成中のスクリプトが対象としているデバイスに適用される表示言語のみを記載する。また、スクリプト作成部４０４は、ｔａｒｇｅｔ属性「ｔｒｕｅ」を設定する。
【００８９】
Ｓ１２０６では、スクリプト作成部４０４は、設置データ管理部４０６経由で、設置データ格納部４０７のデバイス管理テーブル６３０のカラム６３４「スクリプト」に、Ｓ１２０５で生成されたスクリプトを登録する。なお、Ｓ１２０５、Ｓ１２０６は、当該設置データに登録されているデバイスの台数分だけ繰り返される。
さて、作業者がファームウェアまたは追加表示言語リソースをコンテンツ管理装置１０２に追加する場合、コンテンツ管理装置１０２は図１３のフローチャートを実行する。
【００９０】
図１３は、本実施形態を示す管理装置の制御方法を説明するフローチャートである。本例は、作業者がファームウェアまたは追加表示言語リソースをコンテンツ管理装置１０２に追加する処理例である。なお、各ステップは、コンテンツ管理装置１０２のＣＰＵ２０１が記憶された制御プログラムを実行することで実現される。以下、ＣＰＵ２０１が実行するモジュールを主体として説明する。
Ｓ１３０１では、ファームウェアの追加が要求されたか否かを判別する。具体的には、まず、ＵＩ制御部４５１がファームウェア一覧画面９００を表示する。その後、作業者によってファームウェア一覧画面９００のファームウェア追加ボタン９０６が押下されたか否かを判別する。ファームウェア追加ボタン９０６が押下されたとＵＩ制御部４５１が判別された場合は、Ｓ１３０２に進む。一方、ファームウェア追加ボタン９０６が押下されていないとＵＩ制御部４５１が判別された場合は、Ｓ１３０３に進む。Ｓ１３０２では、コンテンツ管理プログラム４５０はファームウェアをコンテンツ情報格納部４５６に登録する。
【００９１】
具体的には、まず、ファームウェア追加ボタン９０６の押下によって追加画面９２０が表示される。作業者によって追加画面９２０のファームウェアファイル指定領域９２１にファームウェアが指定され、ＯＫボタン９２２が押下されると、制御部４５２は、追加画面９２０の入力結果をＵＩ制御部４５１から受け取る。
次いで、入出力部４５３経由でファームウェアの実体を受け取ると、制御部４５２はコンテンツ情報管理部４５５経由で前記入力結果と前記ファームウェアの実体をコンテンツ情報格納部４５６のファームウェア管理テーブル７００に格納する。その際、ファームウェアの実体から、ファームウェアバージョンおよび標準表示言語の情報を抽出し、カラム７０３「ファームウェアバージョン」およびカラム７０４「標準表示言語」に記載する。登録したファームウェアの状態を変更する場合は、編集ボタン９０７の押下によって編集画面９４０を表示し、状態９４２の値を「公開」または「非公開」に変更する。
【００９２】
その後、ＯＫボタン９４３が押下されると、制御部４５２は状態９４２の入力結果をＵＩ制御部４５１から受け取り、コンテンツ情報管理部４５５経由でコンテンツ情報格納部４５６のファームウェア管理テーブル７００のカラム７０７「状態」に記載する。
Ｓ１３０３では、ＵＩ制御部４５１が表示言語リソースの追加が要求されたか否かを判別する。具体的には、ＵＩ制御部４５１が、作業者によってファームウェア一覧画面９００の編集ボタン９０７が押下されたか否かを判別する。ここで、編集ボタン９０７が押下されたとＵＩ制御部４５１が判別した場合は、Ｓ１３０４に進む。
一方、編集ボタン９０７が押下されていないとＵＩ制御部４５１が判別した場合は、本フローチャートを終了する。
Ｓ１３０４では、コンテンツ管理プログラム４５０は追加表示言語リソースをコンテンツ情報格納部４５６に登録する。
【００９３】
具体的には、まず、編集ボタン９０７の押下によって編集画面９４０が表示される。作業者によって編集画面９４０の追加表示言語ファイル指定領域９４１に追加表示言語リソースが指定され、ＯＫボタン９４３が押下されると、制御部４５２は、編集画面９４０の入力結果をＵＩ制御部４５１から受け取る。次いで、入出力部４５３経由で追加表示言語リソースの実体を受け取ると、制御部４５２はコンテンツ情報管理部４５５経由で前記追加表示言語リソースの実体をコンテンツ情報格納部４５６のファームウェア管理テーブル７００に格納する。その際、追加表示言語リソースの実体から、追加表示言語の情報を抽出し、カラム７０６「追加表示言語」に記載する。
【００９４】
さて、作業者が設置データ管理装置１０１で作成した設置データを用いてデバイス１０５の設置処理を行う場合、デバイス１０５は、設置データ管理装置１０１、コンテンツ管理装置１０２と共に、図１４のフローチャートを実行する。なお、デバイス１０５ではなくデバイス１０６に図１４のフローチャートを適用してもまったく同様の効果を得ることができる。
【００９５】
図１４は、本実施形態を示すデバイス設置システムの制御方法を説明するフローチャートである。本例は、作業者が設置データ管理装置１０１で作成した設置データを用いてデバイス１０５の設置処理例である。なお、各ステップは、管理装置側はＣＰＵ２０１が記憶された制御プログラムを実行することで実現される。デバイス１０５側は、ＣＰＵ３０１が記憶された制御プログラムを実行することで実現される。以下、ＣＰＵ２０１、ＣＰＵ３０１が実行するモジュールを主体として説明する。
デバイス１０５上で自動設置プログラム５５０が起動されると、図１０に示したＵＩ制御部５５１によりＵＩ画面１０００が表示される。本画面上で、デバイスＩＤの入力領域１００１にデバイスＩＤが入力された状態で、ＯＫボタン１００２が押下されると、Ｓ１４０１が実行される。Ｓ１４０１では、処理実行部５５３がデバイスＩＤの値と共に通信部５５２経由で設置データ管理装置１０１に対してスクリプト取得要求を送信する。Ｓ１４０２では、設置データ管理装置１０１の通信部４０５が本要求を受信し、制御部４０２に受信したデバイスＩＤを渡す。
【００９６】
Ｓ１４０３では、設置データ管理装置１００の制御部４０２が取得したデバイスＩＤを用いて設置データ管理部４０６経由で設置データ格納部４０７のデバイス管理テーブル６３０のカラム６３４「スクリプト」から該当するスクリプトを取得する。また、カラム６３３「設置状態」を「作業中」に変更する。Ｓ１４０４では、制御部４０２は通信部４０５経由でデバイス１０５にカラム６３３「設置状態」が更新されたスクリプトを返信する。
Ｓ１４０５では、デバイス１０５の自動設置プログラム５５０の処理実行部５５３は、通信部５５２経由でスクリプトを設置データ管理装置１００から受信し、スクリプト解析部５５４に渡す。
【００９７】
Ｓ１４０６では、スクリプト解析部５５４は設置データ管理装置１００から取得したスクリプトを解析し、処理実行部５５３に渡す。なお、スクリプト１１００のファームウェア更新処理部１１０４の＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグに「ｌａｔｅｓｔ」以外の値が記載されている場合は、後述のＳ１４１４にて、その値を用いてファームウェア取得要求が送信される。また、＜ｌａｎｇ＞タグに「ｔａｒｇｅｔ属性＝"ｔｒｕｅ"」が指定されている表示言語が該デバイスに適用される表示言語となる。Ｓ１４０７では、処理実行部５５３は、該デバイスに適用するファームウェアのバージョン指定が「最新」であるか否かを判別する。
【００９８】
スクリプト１１００の例では、ファームウェア更新処理部１１０４の＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグに「ｌａｔｅｓｔ」と記載されているので、処理実行部５５３はファームウェアのバージョン指定が「最新」であると判断する。ファームウェアのバージョン指定が「最新」であると処理実行部５５３が判断した場合は、Ｓ１４０８に進む。一方、ファームウェアのバージョン指定が「最新」でないと処理実行部５５３が判断した場合は、Ｓ１４１４に進む。
【００９９】
Ｓ１４０８では、処理実行部５５３は、スクリプト解析部５５４の解析結果から機種名と表示言語すべてを列挙し、通信部５５２経由で列挙された表示言語ごとにコンテンツ管理装置１０２に対してファームウェア情報取得要求を送信する。
【０１００】
スクリプト１１００の例では、機種識別部１１０２の＜ｄｅｖｉｃｅＴｙｐｅ＞タグの値「機種１」が機種名となり、ファームウェア更新処理部１１０４の＜ｌａｎｇ＞タグの値「ＥＮ」と「ＦＲ」が表示言語の値となる。
Ｓ１４０９では、コンテンツ管理装置１０２の通信部４５４が本要求をデバイス１０５から受信し、コンテンツ管理装置１０２の制御部４５２に受信した機種名と表示言語を渡す。
【０１０１】
Ｓ１４１０では、制御部４５２は機種名と表示言語を用いてコンテンツ情報管理部４５５経由でコンテンツ情報格納部４５６から該当するファームウェアバージョンを取得する。
具体的には、制御部４５２は、ファームウェア管理テーブル７００の中から以下の３条件に合致するレコードを抽出し、カラム７０３「ファームウェアバージョン」の値を取得する。
受信した機種名がカラム７０１「機種名」の値と一致する。受信した表示言語がカラム７０４「標準表示言語」の値またはカラム７０６「追加表示言語」の値に含まれる。カラム７０７「状態」の値が「公開」である。
スクリプト１１００の例では、表示言語が「ＥＮ」のファームウェアバージョンは、「１．００」と「２．００」、表示言語が「ＦＲ」のファームウェアバージョンは「１．００」が取得される。
Ｓ１４１１では、制御部４５２は通信部４５４経由でデバイス１０５に前記ファームウェアバージョンの値を返信する。Ｓ１４１２では、デバイス１０５の自動設置プログラム５５０の処理実行部５５３は、通信部５５２経由で前記ファームウェアバージョンの値をコンテンツ管理装置１０２から受信する。
【０１０２】
Ｓ１４１３では、処理実行部５５３はデバイス１０５に適用するファームウェアバージョンを決定する。具体的には、Ｓ１４１２で受信したファームウェアバージョンの情報から、全表示言語を含み、かつ、最新のファームウェアバージョンを選択する。
スクリプト１１００の例では、Ｓ１４１０で記載した通り、表示言語が「ＥＮ」のファームウェアバージョンは「１．００」と「２．００」、表示言語が「ＦＲ」のファームウェアバージョンは「１．００」が取得されている。このうち、表示言語「ＥＮ」と「ＦＲ」の両方を含み、かつ、最新のファームウェアバージョンは「１．００」である。従って、本ステップの実行により、デバイス１０５に適用するファームウェアバージョンは「１．００」に決定される。
Ｓ１４１４では、処理実行部５５３は、Ｓ１４０６またはＳ１４１３で決定されたファームウェアバージョンおよび表示言語を用いて、通信部５５２経由でファームウェア取得要求をコンテンツ管理装置１０２に対して送信する。Ｓ１４１５では、コンテンツ管理装置１０２の通信部４５４が本要求をデバイス１０３から受信し、制御部４５２に受信した機種名、ファームウェアバージョンおよび表示言語を渡す。
Ｓ１４１６では、制御部４５２はコンテンツ情報管理部４５５経由でコンテンツ情報格納部４５６のファームウェア管理テーブル７００のカラム７０２から該当するファームウェア（ファームウェアバージョンは「１．００」）を取得する。また、表示言語がカラム７０６に含まれている場合は、カラム７０５から該当する追加表示言語リソースを取得する。
Ｓ１４１７では、制御部４５２は通信部４５４経由でデバイス１０５に前記ファームウェアおよび追加表示言語リソースを返信する。Ｓ１４１８では、デバイス１０５の自動設置プログラム５５０の処理実行部５５３は、通信部５５２経由で前記ファームウェアおよび追加表示言語リソースをコンテンツ管理装置１０２から受信する。
【０１０３】
Ｓ１４１９では、Ｓ１４０６でスクリプト解析部５５４がスクリプトを解析した結果を用いて、処理実行部５５３が実行対象の処理を実行する。
なお、スクリプト１１００の例では、処理実行部５５３はファームウェア更新処理部１１０４を最初に実行する。デバイス１０５に適用されるファームウェアはＳ１４１８で取得したファームウェアである。追加表示言語リソースが存在する場合は、追加表示言語リソースも適用される。
以下、同様にｏｒｄｅｒ属性で指定された順序で各処理が実行される。また、個別設定項目適用処理部１１０８の＜ｖｉｅｗＬａｎｇｕａｇｅ＞タグの値を用いて、設定管理サービス５０５経由でデバイス１０５の表示言語が設定される。
【０１０４】
Ｓ１４２０では、処理実行部５５３は、Ｓ１４１９のスクリプト処理結果を通信部５５２経由で設置データ管理装置１０１に送信する。スクリプト処理結果には、少なくとも、デバイス１０５へのスクリプトの適用結果とデバイス１０５へ適用したファームウェアバージョン（ファームウェアバージョンは「１．００」）が含まれる。Ｓ１４２１では、設置データ管理装置１０１の通信部４０５が本通知を受信し、制御部４０２に受信したスクリプト処理結果を渡す。
【０１０５】
Ｓ１４２２では、制御部４０２はＳ１４２１で受信したスクリプト処理結果を用いて設置データ格納部４０７のデバイス管理テーブル６３０のカラム６３３「設置状態」のデバイス１０５に対応するレコードに、「済」または「エラー」を記載する。
【０１０６】
Ｓ１４２３では、制御部４０２はデバイス管理テーブル６３０において、デバイス１０５と同一の設置データＩＤを持つデバイスにおいて、カラム６３３「設置状態」の値が「未」であるものを抽出する。さらに、その中から、カラム６３４「スクリプト」に格納されているスクリプトにおいて、＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグの値が「ｌａｔｅｓｔ」であるもののみを抽出し、Ｓ１４２４を実行する。Ｓ１４２４とＳ１４２５は、スクリプト再登録ループである。本ループはＳ１４２３で抽出されたデバイス台数分、繰り返される。
【０１０７】
Ｓ１４２４では、制御部４０２はＳ１４２１で受信したファームウェアバージョンをスクリプト作成部４０４に渡す。スクリプト作成部４０４は、デバイス管理テーブル６３０のカラム６３４「スクリプト」からＳ１４２２で抽出されたデバイスのスクリプトを取り出す。その後、スクリプト作成部４０４はスクリプト中のファームウェア更新処理部１１０４の＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグに前記ファームウェアバージョンを記載する。また、「ｔａｒｇｅｔ属性＝"ｔｒｕｅ"」が指定されている＜ｌａｎｇ＞タグのみを残し、それ以外の＜ｌａｎｇ＞タグを削除する。
【０１０８】
スクリプト作成部４０４がスクリプトの記載をこのように変更することによって、このデバイスでスクリプトが実行された際に適用されるファームウェアバージョンは、Ｓ１４２１で受信したファームウェアバージョン（ファームウェアバージョンは「１．００」）に統一される。Ｓ１４２５では、スクリプト作成部４０４はデバイス管理テーブル６３０のカラム６３４「スクリプト」に、Ｓ１４２４で変更したスクリプトを登録する。
【０１０９】
なお、Ｓ１４２４、Ｓ１４２５は、Ｓ１４２３で抽出されたデバイスの台数分だけ繰り返される。抽出されたデバイスの台数が０台である場合は、Ｓ１４２４、Ｓ１４２５の実行はスキップされる。Ｓ１４２６では、制御部４０２は通信部４０５経由でデバイス１０５に、本通知の処理結果を返信する。Ｓ１４２７では、自動設置プログラム５５０の処理実行部５５３は、通信部５５２経由で本通知の処理結果を受信する。
【０１１０】
本実施形態によれば、設置データに登録されている複数のデバイスに、異なる表示言語設定を行わなければならない場合であっても、コンテンツのバージョンを最新にし、かつ、デバイス間でコンテンツのバージョンを統一することができるようになる。このため、デバイスの運用局面における顧客のデバイス管理の手間を低減させることが可能となる。
【０１１１】
〔第２実施形態〕
第１実施形態では、ファームウェアのバージョンを統一するために、一部のデバイスにのみ適用できる最新ファームウェアは除外し、すべてのデバイスに適用できるファームウェアの中で最新のものを採用する例について説明した。
【０１１２】
一般に、顧客環境での作業を最少化するため、デバイスの設置作業は顧客環境では行わず、販売会社の前設置環境で行われる。事前に設置作業を完了させ、顧客の都合の良い時にデバイスを配送するため、設置作業が完了してから顧客環境にデバイスを配送するまで、数週間から数か月、期間が空いてしまう場合がある。
【０１１３】
この配送待ち期間中に、第１実施形態で除外したファームウェアに追加表示言語リソースが追加されると、顧客環境にデバイスを配送する時点で、より新しいファームウェアが存在することになる。しかし、既に設置作業が完了しているために、作業者はそのファームウェアをデバイスに適用することができない。
そこで、本実施形態では、このような状況に推移している場合に、作業者が顧客環境で簡単な処理を実行するだけで、全デバイスのファームウェアを最新にすることができる例を説明する。以下、第１実施形態と異なる部分を中心に説明する。
【０１１４】
図１５は、図４に示した設置データ格納部４０７およびコンテンツ情報格納部４５６で管理するテーブルの一例を示す図である。これらのテーブルが設置データを表現している。なお、図１５のテーブル構成は一例であり、本例とは異なるテーブル構成であってもよい。
図１５の（Ａ）の設置データ管理テーブル１５００は、設置データ管理テーブル６００にカラム１５０５を追加したものである。カラム１５０１からカラム１５０４は、設置データ管理テーブル６００のカラム６０１からカラム６０４と同様である。カラム１５０５は配送予定日を表している。配送予定日は、この設置データで設置作業を行ったデバイスを顧客環境に配送する日時を表している。ここで、設置データ管理テーブル１５００は、各デバイスを客先に設置するための設置情報を管理するテーブルである。
【０１１５】
図１５の（Ｂ）のデバイス管理テーブル１５３０は、デバイス管理テーブル６３０にカラム１５３５を追加したものである。カラム１５３１からカラム１５３４は、デバイス管理テーブル６３０のカラム６３１からカラム６３４と同様である。なお、本実施形態では、カラム１５３３「設置状態」の値として、「継続」が設定され得る。カラム１５３３の値が「継続」となる場合の例は、図２１の中で説明する。
【０１１６】
カラム１５３５は継続用スクリプトである。本カラムには、カラム１５３３の値が「継続」となった際に設置データ管理装置１０１によって再度作成されたスクリプトが格納される。本実施形態では、スクリプトの実体をカラム１５３５に格納することを想定しているが、カラム１５３５にはスクリプトの実体へのパスのみを格納してもよい。この場合、スクリプトの実体は別の場所にファイルとして置かれる構成となる。
【０１１７】
図１５の（Ｃ）のファームウェア管理テーブル１５５０は、ファームウェア管理テーブル７００にカラム１５５８およびカラム１５５９を追加したものである。カラム１５５１からカラム１５５７は、ファームウェア管理テーブル７００のカラム７０１からカラム７０７と同様である。カラム１５５８は追加表示言語登録予定日である。追加表示言語登録予定日は、販売会社によって用意される追加表示言語リソースが登録される予定の日時を表している。
カラム１５５９は追加表示言語登録日である。追加表示言語登録日は、販売会社によって用意される追加表示言語リソースが登録された日時を表している。追加表示言語登録日は実際に追加表示言語リソースが登録されるまで空欄となる。
【０１１８】
図１６は、図４に示した設置データ管理プログラム４００のＵＩ制御部４０１が提供するＵＩ画面の一例を示す図である。
図１６の（Ａ）に示す一覧画面１６００は、一覧画面８００に配送予定日を追加した画面である。一覧画面１６００の１６０１から１６０４、および、１６０６から１６０９は、一覧画面８００の８０１から８０４、および８０５から８０８と同様である。１６０５は配送予定日で、設置データ管理テーブル１５００のカラム１５０５の値が表示される。
図１６の（Ｂ）に示す編集画面１６２０は、編集画面８２０に配送予定日の入力領域を追加した画面である。編集画面１６２０の１６２１から１６２３、１６２５から１６３２、１６３４は、編集画面８２０の８２１から８２３、８２４から８３１、８３３と同様である。
【０１１９】
１６２４は配送予定日の入力領域である。ＵＩ制御部４０１は、編集ボタン１６０７が押下された際に選択されていた設置データに該当するレコードの値を、設置データ管理テーブル１５００から取得し表示する。編集画面１６２０が新規作成ボタン１６０６の押下によって表示された場合、ＵＩ制御部４０１は初期値を表示する。
【０１２０】
１６３３はＯＫボタンである。本ボタンが押下されると、設置データ管理プログラム４００は編集結果から自動設置プログラム５５０が解析可能なスクリプトを生成し、編集結果と共に、設置データ格納部４０７の各テーブルに格納する。編集結果には、配送予定日入力領域１６２４への入力された値も含まれる。その後、編集画面１６２０を終了する。なお、本実施形態における個別編集画面は、図８の（Ｃ）の個別編集画面８５０と同様であるため、図示および説明を省略する。
【０１２１】
図１７は、図４に示したコンテンツ管理プログラム４５０のＵＩ制御部４５１が提供するＵＩ画面の例を示す図である。
図１７の（Ａ）に示すファームウェア一覧画面１７００は、ファームウェア一覧画面９００に追加表示言語登録予定日と追加表示言語登録日を追加した画面である。
ファームウェア一覧画面１７００の１７０１から１７０５、および、１７０８から１７１１は、ファームウェア一覧画面９００の９０１から９０５、および９０６から９０９と同様である。１７０６は追加表示言語登録予定日、１７０７は追加表示言語登録日で、それぞれファームウェア管理テーブル１５５０のカラム１５５８、１５５９の値が表示される。
【０１２２】
図１７の（Ｂ）に示す編集画面１７４０は、編集画面９４０に追加表示言語登録予定日の入力領域を追加した画面である。編集画面１７４０の１７４１、１７４２、１７４５は、編集画面９４０の９４１、９４２、９４４と同様である。１７４３は追加表示言語登録予定日の入力領域である。ＵＩ制御部４５１は編集ボタン１７０９が押下された際に選択されていたファームウェア一覧に該当するレコードの値を、ファームウェア管理テーブル１５５０から取得し表示する。
【０１２３】
１７４４はＯＫボタンである。本ボタンが押下されると、コンテンツ管理プログラム４５０は１７４１で指定された追加表示言語リソース、状態１７４２の値、追加表示言語登録予定日１７４３の値をファームウェア管理テーブル１５５０に格納する。その後、編集画面１７４０を終了する。なお、本実施形態における追加画面は、図９の（Ｂ）の追加画面９２０と同様であるため、図示および説明を省略する。
【０１２４】
図１８は、図１に示したデバイス１０５の設置処理を自動で実行するための設置手順を記述したスクリプトの例を示す図である。
図１８の（Ａ）に示すスクリプト１８００は、スクリプト１１００に配送予定日指定部１８２１を追加したものである。
【０１２５】
配送予定日指定部１８２１は、顧客環境にデバイスを配送する日時が記載されており、＜ｄｅｌｉｖｅｒｙＤａｔｅ＞タグで構成されている。設置データ管理テーブル１５００のカラム１５０５「配送予定日」の値が格納される。
１８０４から１８１０は、１１０４から１１１０と同様である。
【０１２６】
図１８の（Ｂ）に示す継続用スクリプト１８５０は、後述の図２１にて生成される継続用スクリプトの例である。継続用スクリプト１８５０も、スクリプト１１００、スクリプト１８００と同様に、自動設置プログラム５５０によって記載された処理が実行される。継続用スクリプト１８５０の処理記載部１８６０は、ファームウェア更新処理部１８５４、個別設定項目適用処理部１８５５、再起動処理部１８５６のみを持つ。１８５１から１８５３、１８５６、１８７１は、１８０１から１８０３、１８０９、１８２１と同様である。
【０１２７】
ファームウェア更新処理部１８５４には、ファームウェア更新処理部１８０４とは異なり、＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグが指定されず、＜ｐａｔｈ＞タグおよびｔａｒｇｅｔ属性が「ｔｒｕｅ」である＜ｌａｎｇ＞タグのみが指定される。個別設定項目適用処理部１８５５には、＜ｖｉｅｗＬａｎｇｕａｇｅ＞タグのみが指定される。
【０１２８】
図１９は、本実施形態を示す管理装置の制御方法を説明するフローチャートである。本例は、作業者が設置データを作成し、設置データ管理装置１０１に登録する場合、設置データ管理装置１０１の処理例である。
なお、各ステップは、ＣＰＵ２０１が記憶された制御プログラムを実行することで実現される。以下、ＣＰＵ２０１が実行するモジュールを主体として説明する。
Ｓ１９０１では、設置データ管理プログラム４００はＳ１２０１と同様に設置データを作成し、設置データ格納部４０７に格納する。本設置データには、カラム１５０５「配送予定日」の値も含まれる。Ｓ１９０２からＳ１９０４は、Ｓ１２０２からＳ１２０４と同様であるため、説明を省略する。
【０１２９】
Ｓ１９０５では、スクリプト作成部４０４は図１８（Ａ）で示したような設置用のスクリプトを作成する。図１８（Ａ）のスクリプトには、＜ｄｅｌｉｖｅｒｙＤａｔｅ＞タグが含まれる。スクリプトの作成方法は、Ｓ１２０５と同様であるため、説明を省略する。Ｓ１９０６は、Ｓ１２０６と同様であるため、説明を省略する。なお、Ｓ１９０５、Ｓ１９０６は、当該設置データに登録されているデバイスの台数分だけ繰り返される。
【０１３０】
図２０は、本実施形態を示す管理装置の制御方法を説明するフローチャートである。本例は、作業者がファームウェアまたは追加表示言語リソースをコンテンツ管理装置１０２に追加する場合、コンテンツ管理装置１０２の処理例である。なお、各ステップは、ＣＰＵ２０１が記憶された制御プログラムを実行することで実現される。以下、ＣＰＵ２０１が実行するモジュールを主体として説明する。
Ｓ２００１は、Ｓ１３０１と同様であるため、説明を省略する。Ｓ２００２では、Ｓ１３０２と同様にファームウェアを登録した後、編集画面１７４０を表示する。必要に応じて状態１７４２の値を変更すると同時に、追加表示言語登録予定日１７４３に値を入力する。その後、ＯＫボタン１７４４が押下されると、Ｓ１３０２と同様にファームウェア管理テーブル１５５０を更新する。
Ｓ２００３は、Ｓ１３０３と同様であるため、説明を省略する。
【０１３１】
Ｓ２００４は、Ｓ１３０４と同様である。ただし、追加表示言語リソースの実体をコンテンツ情報格納部４５６のファームウェア管理テーブル１５５０に格納する際に、カラム１５５９「追加表示言語登録日」に追加表示言語リソースが登録された日時を記載する点が異なる。
【０１３２】
（前設置環境下におけるシステムの処理）
図２１は、本実施形態を示すデバイス設置システムの制御方法を説明するフローチャートである。本例は、作業者が設置データ管理装置１０１で作成した設置データを用いてデバイス１０５の設置処理例である。
なお、各ステップは、各管理装置１０１，１０２側はＣＰＵ２０１が記憶された制御プログラムを実行することで実現される。デバイス１０５側は、ＣＰＵ３０１が記憶された制御プログラムを実行することで実現される。以下、ＣＰＵ２０１、ＣＰＵ３０１が実行するモジュールを主体として説明する。
さて、作業者が設置データ管理装置１０１で作成した設置データを用いてデバイス１０５の設置処理を行う場合、デバイス１０５は、設置データ管理装置１０１、コンテンツ管理装置１０２と共に、図２１のフローチャートを実行する。なお、デバイス１０５ではなくデバイス１０６に図２１のフローチャートを適用してもまったく同様の効果を得ることができる。
Ｓ２１０１からＳ２１０９までは、Ｓ１４０１からＳ１４０９までと同様であるため、説明を省略する。
Ｓ２１１０では、制御部４５２は、本実施形態に対応するファームウェア情報生成処理を実行する。本処理の詳細を、図２２に示すフローチャートを用いて説明する。
【０１３３】
図２２は、本実施形態を示す管理装置の制御方法を説明するフローチャートである。特に、図２２の（Ａ）は、図４に示した制御部４５２によるファームウェア情報生成処理例である。なお、各ステップは、ＣＰＵ２０１が記憶された制御プログラムを実行することで実現される。以下、図４に示したモジュールを主体として説明する。
図２２の（Ａ）において、Ｓ２２０１では、制御部４５２は、ファームウェア管理テーブル１５５０のカラム１５５１「機種名」にＳ２１０９で受信した機種名を含み、かつ、カラム１５５７「状態」が「公開」であるレコードを抽出する。スクリプト１８００の例では、機種名は「機種１」であるので、ファームウェア管理テーブル１５５０の１番目と２番目のレコードが抽出される。
Ｓ２２０２からＳ２２０５は、ファームウェア情報取得ループである。本ループはＳ２２０１で抽出されたレコードの数、および、Ｓ２１０９で受信した表示言語の数だけ、繰り返される。
Ｓ２２０２では、制御部４５２は、Ｓ２１０９で受信した表示言語それぞれがＳ２２０１で抽出されたレコードに含まれているか否かを判別する。受信した表示言語それぞれがＳ２２０１で抽出されたレコードに含まれていると制御部４５２が判別した場合は、Ｓ２２０５に進む。一方、受信した表示言語それぞれがＳ２２０１で抽出されたレコードに含まれていないと制御部４５２が判別した場合は、Ｓ２２０３に進む。
【０１３４】
スクリプト１８００の例では、表示言語は「ＥＮ」と「ＦＲ」である。表示言語が「ＥＮ」である場合、１番目のレコード、２番目のレコードともに、カラム１５５４「標準表示言語」に「ＥＮ」が含まれているので、Ｓ２２０５に進む。
また、表示言語が「ＦＲ」である場合、１番目のレコードでは、カラム１５５６「追加表示言語」に「ＦＲ」が含まれるので、Ｓ２２０５に進む。
一方、２番目のレコードでは、カラム１５５４「標準表示言語」、カラム１５５６「追加表示言語」のいずれにも「ＦＲ」が含まれないので、Ｓ２２０３に進む。
Ｓ２２０３では、制御部４５２は、カラム１５５８「追加表示言語登録日」の対象レコードに値が格納されているか否かを判別する。カラム１５５８「追加表示言語登録日」の対象レコードに値が格納されていると制御部４５２が判別した場合は、Ｓ２２０４に進む。一方、カラム１５５８「追加表示言語登録日」の対象レコードに値が格納されていないと制御部４５２が判別した場合は、
本ループの終了条件を満たしていれば、制御部４５２はループを終了するが、満たしていなければ、Ｓ２２０２に戻ってループを繰り返す。
Ｓ２２０４では、制御部４５２は、カラム１５５８「追加表示言語登録日」の対象レコードの値を取得する。
スクリプト１８００の例では、２番目のレコードであり、かつ、表示言語が「ＦＲ」である場合、カラム１５５８「追加表示言語登録日」の値として「２０１５／６／１６」が取得される。
Ｓ２２０５では、制御部４５２は、カラム１５５３「ファームウェアバージョン」の対象レコードの値を取得する。
スクリプト１８００の例では、１番目のレコードであり、かつ、表示言語が「ＥＮ」である場合、カラム１５５３「ファームウェアバージョン」の値として「１．００」が取得される。
その後、本ループの終了条件を満たしていれば、制御部４５２はループを終了するが、満たしていなければ、Ｓ２２０２に戻ってループを繰り返す。
なお、スクリプト１８００の例では、本フローチャートによって、以下のファームウェア情報が生成される。
表示言語：ＥＮ、ファームウェアバージョン：１．００、
表示言語：ＥＮ、ファームウェアバージョン：２．００、
表示言語：ＦＲ、ファームウェアバージョン：１．００、
表示言語：ＦＲ、ファームウェアバージョン：２．００、追加表示言語登録日：２０１５／６／１６
ここで、図２１に戻ってデータ処理例の説明を続ける。
Ｓ２１１１では、制御部４５２は通信部４５４経由でデバイス１０５に、前記ファームウェア情報生成処理Ｓ２１１０で生成されたファームウェア情報を返信する。Ｓ２１１２では、自動設置プログラム５５０の処理実行部５５３は、通信部５５２経由で前記ファームウェア情報を受信する。
Ｓ２１１３では、処理実行部５５３は、図２２の（Ｂ）に示すファームウェアバージョン決定処理を実行する。
図２２の（Ｂ）において、Ｓ２２５１はファームウェアバージョン一覧生成ループである。本ループはＳ２１１２で受信した表示言語の数だけ、繰り返される。
【０１３５】
Ｓ２２５１では、処理実行部５５３は、Ｓ２１０６で解析したスクリプトの中の配送予定日指定部１８２１で示されている日時の時点における、コンテンツ管理装置１０２から取得されるファームウェアバージョン一覧を作成する。
スクリプト１８００の例では、配送予定日は「２０１５／７／１」である。
【０１３６】
Ｓ２１１２で受信したファームウェア情報において表示言語がＥＮの場合、配送予定日の「２０１５／７／１」時点のファームウェアバージョン一覧は「１．００」と「２．００」となる。
一方、表示言語がＦＲの場合、バージョンが「２．００」のファームウェアの追加表示言語登録日は「２０１５／６／１６」となっている。よって、配送予定日の「２０１５／７／１」時点では、「ＦＲ」の追加表示言語リソースが登録されているはずである。従って、表示言語がＦＲの場合のファームウェアバージョン一覧も「１．００」と「２．００」となる。
【０１３７】
Ｓ２２５２では、処理実行部５５３は、前記ファームウェアバージョン一覧生成ループで生成された、言語ごとのファームウェアバージョン一覧のすべてに含まれるファームウェアバージョンの内、最新のものを選択する。
【０１３８】
スクリプト１８００の例では、表示言語「ＥＮ」のファームウェアバージョン一覧は「１．００」と「２．００」、表示言語「ＦＲ」のファームウェアバージョン一覧も「１．００」と「２．００」である。よって、最新のファームウェアバージョンは「２．００」が選択される。
【０１３９】
ここで、図２１に戻ってデータ処理例の説明を続ける。
Ｓ２１１４では、Ｓ１４１４と同様に、処理実行部５５３は、Ｓ２１０６またはＳ２１１３で決定されたファームウェアバージョンおよび表示言語を用いて、コンテンツ管理装置１０２に対してファームウェア取得要求を送信する。
Ｓ２１１５は、Ｓ１４１５と同様であるため、説明を省略する。
【０１４０】
Ｓ２１１６では、Ｓ１４１６と同様に、制御部４５２は、該当するファームウェアと追加表示言語リソースを取得する。なお、実施形態１の場合と異なり、本実施形態では、カラム１５５５「追加表示言語リソース」に、Ｓ２１１４で要求された追加表示言語リソースがまだ登録されていない場合が存在する。その場合は、ファームウェアのみを返信する。
Ｓ２１１７では、制御部４５２は通信部４５４経由でデバイス１０５に前記ファームウェア、および、取得された場合は追加表示言語リソースを返信する。
Ｓ２１１８では、自動設置プログラム５５０の処理実行部５５３は、通信部５５２経由で前記ファームウェア、および、Ｓ２１１６で取得された場合は追加表示言語リソースを受信する。
Ｓ２１１９では、Ｓ１４１９と同様に、スクリプト解析部５５４がスクリプトを解析した結果を用いて、処理実行部５５３が実行対象の処理を実行する。
【０１４１】
なお、Ｓ２１１４にて処理実行部５５３が取得を要求したにもかかわらず、追加表示言語リソースが取得されなかった場合、処理実行部５５３は個別設定項目適用処理部１８０８の＜ｖｉｅｗＬａｎｇｕａｇｅ＞タグの処理をスキップする。何故なら、ファームウェア更新処理部１８０４にて必要な追加表示言語リソースが追加できなかったため、処理が必ず失敗するからである。
【０１４２】
Ｓ２１２０では、Ｓ１４２０と同様に、処理実行部５５３は、Ｓ２１１９のスクリプト処理結果を通信部５５２経由で設置データ管理装置１０１に送付する。スクリプト処理結果には、少なくとも、該デバイスへのスクリプトの適用結果と該デバイスへ適用したファームウェアバージョンが含まれる。なお、Ｓ２１１９にて、＜ｖｉｅｗＬａｎｇｕａｇｅ＞タグの処理をスキップして処理を完了した場合、処理実行部５５３はスクリプトの適用結果として「継続」を送付する。Ｓ２１２１は、Ｓ１４２１と同様であるため、説明を省略する。
Ｓ２１２２では、制御部４０２は、デバイス管理テーブル１５３０のカラム１５３３「設置状態」に、スクリプトの実行結果として「済」、「エラー」または「継続」を記載する。Ｓ２１２３では、制御部４０２は、Ｓ２１２２にてカラム１５３３「設置状態」に「継続」が記載されたか否かを判別する。ここで、
「継続」が記載されたと制御部４０２が判別した場合は、Ｓ２１２４に進む。
一方、「継続」が記載されていないと制御部４０２が判別した場合は、Ｓ２１２５に進む。
【０１４３】
Ｓ２１２４では、制御部４０２は、カラム１５３４「スクリプト」から該当するスクリプトを取り出し、スクリプト作成部４０４に引き渡す。スクリプト作成部４０４は継続用スクリプト１８５０を生成する。また、カラム１５３５「継続用スクリプト」に生成された継続用スクリプトを登録する。Ｓ２１２５からＳ２１２９まではＳ１４２３からＳ１４２７までと同様であるため、説明を省略する。
【０１４４】
（顧客環境下におけるシステムの処理）
図２３は、本実施形態を示すデバイス設置システムの制御方法を説明するフローチャートである。本例は、作業者が設置データ管理装置１０１で作成した設置データを用いてデバイス１０５の設置処理例である。なお、各ステップは、管理装置１０１，１０２側はＣＰＵ２０１が記憶された制御プログラムを実行することで実現される。デバイス１０５側は、ＣＰＵ３０１が記憶された制御プログラムを実行することで実現される。以下、ＣＰＵ２０１、ＣＰＵ３０１が実行するモジュールを主体として説明する。
さて、作業者が顧客環境においてデバイス１０５の自動設置プログラム５５０を起動すると、デバイス１０５は設置データ管理装置１０１、コンテンツ管理装置１０２と共に、本処理を開始する。
なお、デバイス１０５ではなくデバイス１０６に図２３のフローチャートを適用してもまったく同様の効果を得ることができる。
【０１４５】
自動設置プログラム５５０が起動されると、ＵＩ画面１０００が表示される。本画面上で、デバイスＩＤの入力領域１００１にデバイスＩＤが入力された状態で、ＯＫボタン１００２が押下されると、Ｓ２３０１が実行される。
Ｓ２３０１、Ｓ２３０２は、Ｓ２１０１、Ｓ２１０２と同様であるため、説明を省略する。
Ｓ２３０３では、制御部４０２はＳ２３０２で受信したデバイスＩＤを用いてデバイス管理テーブル１５３０のカラム１５３３「設置状態」の値が「継続」であるか否かを判断する。ここで、継続であると制御部４０２が判断した場合は、Ｓ２３０４に進む。一方、デバイス管理テーブル１５３０のカラム１５３３「設置状態」の値が「継続」でないと制御部４０２が判断した場合は、Ｓ２３３０に進む。
【０１４６】
Ｓ２３０４では、制御部４０２はカラム１５３５「継続用スクリプト」から該当する継続用スクリプトを取得する。継続用スクリプト１８５０はその一例である。また、カラム１５３３「設置状態」を「作業中」に変更する。
【０１４７】
Ｓ２３３０では、制御部４０２は通信部４０５経由でデバイス１０５に前記継続用スクリプトを返信する。なお、Ｓ２３０４が実行されなかった場合、制御部４０２は継続用スクリプトを取得しなかった旨をデバイス１０５に返信する。Ｓ２３０５は、Ｓ２１０５と同様であるため、説明を省略する。
Ｓ２３０６では、デバイス１０５の制御部４５２は、Ｓ２３０５で継続用スクリプトを設置データ管理装置１０１から受信したか否かを判別する。ここで、継続用スクリプトを受信したと制御部４０２が判別した場合は、Ｓ２３０７に進む。一方、継続用スクリプトを受信していないと制御部４０２が判別した場合は、本フローチャートを終了する。なお、Ｓ２３０７は、Ｓ２１０６と同様であるため、説明を省略する。
【０１４８】
Ｓ２３０８では、処理実行部５５３は、Ｓ２３０７の解析結果から機種名と表示言語を取得する。また、拡張プログラムシステムサービス５０６経由で該デバイスのファームウェアバージョンの値を取得する。その後、通信部５５２経由でコンテンツ管理装置１０２に対して表示言語の取得要求を送信する。
【０１４９】
継続用スクリプト１８５０の例では、機種識別部１８５２の＜ｄｅｖｉｃｅＴｙｐｅ＞タグの値「機種１」が前記機種名となり、ファームウェア更新処理部１８５４の＜ｌａｎｇ＞タグの値「ＦＲ」が前記表示言語の値となる。また、拡張プログラムシステムサービス５０６経由で該デバイスのファームウェアバージョンの値を取得する。図２１のフローチャートにてデバイス１０５にスクリプト１８００を適用した場合、拡張プログラムシステムサービス５０６経由で取得されるファームウェアバージョンの値は「２．００」である。なお、Ｓ２３０９は、Ｓ２１１５と同様であるため、説明を省略する。
Ｓ２３１０では、コンテンツ管理装置１０２の制御部４５２はファームウェア管理テーブル１５５０のカラム１５５５に該当する追加表示言語リソースが存在するか否かを判別する。ここで、追加表示言語リソースが存在すると制御部４５２が判断した場合は、Ｓ２３１１に進む。一方、追加表示言語リソースが存在しないと制御部４５２が判断した場合は、Ｓ２３１２に進む。
Ｓ２３１１では、制御部４５２はファームウェア管理テーブル１５５０のカラム１５５５から該当する追加表示言語リソースを取得する。
【０１５０】
Ｓ２３１２では、制御部４５２は通信部４５４経由でデバイス１０５にＳ２３１１で取得した追加表示言語リソースを返信する。なお、Ｓ２３１１が実行されなかった場合、制御部４５２は追加表示言語リソースを取得しなかった旨をデバイス１０５に返信する。
Ｓ２３１３では、デバイス１０５の自動設置プログラム５５０の処理実行部５５３は、通信部５５２経由でコンテンツ管理装置１０２からの結果を受信する。
Ｓ２３１４では、処理実行部５５３は、Ｓ２３１３で追加表示言語リソースが取得されたか否かを判別する。ここで、追加表示言語リソースが取得されたと処理実行部５５３が判別した場合は、Ｓ２３１５に進む。一方、追加表示言語リソースが取得されていないと処理実行部５５３が判別した場合は、Ｓ２３１６に進む。
【０１５１】
Ｓ２３１５では、Ｓ２３０７の結果を用いて、処理実行部５５３が実行対象の処理を実行する。継続用スクリプト１８５０の例では、処理実行部５５３はファームウェア更新処理部１８５４において、Ｓ２３１３で取得した追加表示言語リソースを適用する処理を実行する。
次に、個別設定項目適用処理部１８５５の＜ｖｉｅｗＬａｎｇｕａｇｅ＞タグの値を用いて設定管理サービス５０５経由で該デバイスの表示言語を設定する。最後に再起動処理部１８５６を実行し、変更された設定をデバイス１０５に反映する。Ｓ２３１６では、処理実行部５５３は、ＵＩ制御部５５１経由でＵＩ画面１０００上に、追加表示言語リソースが取得されなかった旨のエラーメッセージを表示する。
【０１５２】
Ｓ２３１７では、処理実行部５５３は、Ｓ２３１５を実行した場合はスクリプトの処理結果、Ｓ２３１６を実行した場合はスクリプト処理結果として「エラー」を通信部５５２経由で設置データ管理装置１０１に送信する。Ｓ２３１８からＳ２３２１までは、Ｓ２１２１、Ｓ２１２２、Ｓ２１２８、Ｓ２１２９と同一であるため、説明を省略する。
【０１５３】
本実施形態によれば、顧客環境で簡単な処理を実行するだけで、デバイス間のファームウェアバージョンを統一したまま、最新バージョンのファームウェアを全デバイスに適用することができるようになる。
【０１５４】
〔第３実施形態〕
第１実施形態、第２実施形態では、設置データに含まれる全デバイスの表示言語設定を満足させるファームウェアのバージョンを、自動設置プログラム５５０が決定する例について説明した。
本実施形態では、ファームウェアのバージョンを、設置データ管理装置１０１の設置データ管理プログラム４００が決定する例を説明する。このように構成することによって、自動設置プログラム５５０がスクリプトを実行する際の負荷を低減させることが可能となる。
【０１５５】
図２４は、本実施形態を示すデバイス設置システムの制御方法を説明するフローチャートである。本例は、作業者が設置データ管理装置１０１で作成した設置データを用いてデバイス１０５の設置処理例である。なお、各ステップは、管理装置１０１，１０２側はＣＰＵ２０１が記憶された制御プログラムを実行することで実現される。デバイス１０５側は、ＣＰＵ３０１が記憶された制御プログラムを実行することで実現される。以下、ＣＰＵ２０１、ＣＰＵ３０１が実行するモジュールを主体として説明する。
さて、作業者が設置データ管理装置１０１で作成した設置データを用いてデバイス１０５の設置処理を行う場合、デバイス１０５は、設置データ管理装置１０１、コンテンツ管理装置１０２と共に、図２４のフローチャートの処理を開始する。なお、デバイス１０５ではなくデバイス１０６に図２４のフローチャートを適用してもまったく同様の効果を得ることができる。
【０１５６】
図２４のフローチャートは、図１４のフローチャートにてデバイス１０５が実行するＳ１４０７からＳ１４１３を、Ｓ２４０４からＳ２４１０として、設置データ管理装置１０１が実行するよう変更したものである。
なお、Ｓ２４０１からＳ２４０３までは、Ｓ１４０１からＳ１４０３までと同様であるため、説明を省略する。
【０１５７】
Ｓ２４０４からＳ２４１０までは、Ｓ１４０７からＳ１４１３までと同様であるが、処理実行部５５３、スクリプト解析部５５４は制御部４０２に置き換えられる。さらに、通信部５５２は通信部４０５に置き換えられる。
【０１５８】
Ｓ２４１１は、Ｓ２４１０で決定されたファームウェアバージョンを用いて、Ｓ２４０３で取得したスクリプトを変更する。具体的なスクリプトの変更方法は、Ｓ１４２４に記載されている方法と同様である。すなわち、制御部４０２はＳ２４０３で取得したスクリプトの＜ｆｉｒｍｗａｒｅＶｅｒｓｉｏｎ＞タグに前記ファームウェアバージョンを記載する。また、「ｔａｒｇｅｔ属性＝"ｔｒｕｅ"」が指定されている＜ｌａｎｇ＞タグのみを残し、それ以外の＜ｌａｎｇ＞タグを削除する。
Ｓ２４１２では、制御部４０２は通信部４０５経由でデバイス１０５にＳ２４１１で変更したスクリプトを返信する。以降、Ｓ２４１３からＳ２４２８まではＳ１４０５、Ｓ１４０６、Ｓ１４１４からＳ１４２７までと同様であるため、説明を省略する。
Ｓ１４０９およびＳ１４１１では、コンテンツ管理装置１０２はデバイス１０５と通信していたが、Ｓ２４０６およびＳ２４０８では、設置データ管理装置１０１と通信する。
【０１５９】
なお、Ｓ２４２４からＳ２４２６までの処理は、Ｓ２４１１とＳ２４１２の間に挿入されてもよい。この場合、設置データに含まれ、かつ、設置状態が「未」であるデバイスのスクリプトの変更処理は、デバイス１０５の設置処理が完了する前に実行される。
【０１６０】
更に、Ｓ２４０４からＳ２４１０までの処理は、図１２のＳ１２０４とＳ１２０５の間に挿入されてもよい。この場合、Ｓ２４１１の処理は不要となるため、図２４のフローチャートから削除される必要がある。さらに、Ｓ２４２４からＳ２４２６までの処理も、Ｓ２４１０の処理に引き続いてＳ１２０４とＳ１２０５の間に挿入されてもよい。
この場合、設置データ管理装置１０１の設置データ管理プログラム４００がスクリプトを生成する時に、最新のファームウェアバージョンが決定される。
【０１６１】
本実施形態によれば、設置データ管理装置１０１の設置データ管理プログラム４００がファームウェアのバージョンを決定する。そのため、自動設置プログラム５５０がスクリプトを実行する際の負荷が低減し、設置作業の実行時間の短縮を図ることが可能となる。
なお、本実施形態では、第１実施形態のフローチャートと対比し、フローチャートを説明したが、第２実施形態のフローチャートにおいても同様である。
【０１６２】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステムまたは装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えばＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１６３】
１０１  設置データ管理装置
１０２  コンテンツ管理装置
１０５  デバイス
【図１】
2017049923.tif 000003
【図２】
2017049923.tif 000004
【図３】
2017049923.tif 000005
【図４】
2017049923.tif 000006
【図５】
2017049923.tif 000007
【図６】
2017049923.tif 000008
【図７】
2017049923.tif 000009
【図８】
2017049923.tif 000010
【図９】
2017049923.tif 000011
【図１０】
2017049923.tif 000012
【図１１】
2017049923.tif 000013
【図１２】
2017049923.tif 000014
【図１３】
2017049923.tif 000015
【図１４】
2017049923.tif 000016
【図１５】
2017049923.tif 000017
【図１６】
2017049923.tif 000018
【図１７】
2017049923.tif 000019
【図１８】
2017049923.tif 000020
【図１９】
2017049923.tif 000021
【図２０】
2017049923.tif 000022
【図２１】
2017049923.tif 000023
【図２２】
2017049923.tif 000024
【図２３】
2017049923.tif 000025
【図２４】
2017049923.tif 000026