(57)【要約】【課題】  従来、ネットワーク機器の初期設置時のサービスエンジニアによるＦＷの適用ミスを防止するための適切な仕組みが提供されていない。【解決手段】  そこで、本発明における配信システムは、ファームウェアに関するダウンロードリクエストを受信した場合に、該リクエストを行った機器が、ネットワーク機器ではなく、クライアント端末と判断された場合に、該リクエストのパラメータとして含まれる認証情報を用いて認証した上で、ファームウェアの配信の対象となるネットワーク機器に対応するネットワーク機器のためのファームウェアを特定して、該ファームウェアに関する情報を、前記ダウンロードリクエストの応答として、クライアント端末に送信することを特徴とする。【選択図】  図４
2015230709.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク機器のためのファームウェアを管理する配信システムを含む管理システムであって、
前記配信システムは、
ファームウェアに関するダウンロードリクエストを受信した場合に、当該ダウンロードリクエストのパラメータとして含まれる認証用の識別情報に従い、当該ダウンロードリクエストを行った機器を判断する判断手段と、
前記ダウンロードリクエストを行った機器がクライアント端末と判断された場合に、当該ダウンロードリクエストのパラメータとして含まれる認証用の識別情報を用いた認証処理を行う認証手段と、
前記認証処理に成功した場合、ファームウェアの配信の対象となるネットワーク機器の特定情報に従い、当該特定情報に対応するネットワーク機器のためのファームウェアを特定する特定手段と、
前記特定されたファームウェアに関する情報を、前記ダウンロードリクエストの応答として、クライアント端末に送信する応答手段と、有し、
前記クライアント端末は、
前記配信システムに対して、ファームウェアに関するダウンロードリクエストを行う第１の要求手段と、
前記ダウンロードリクエストの応答に含まれるファームウェアに関する情報を、ネットワーク機器の初期設置に用いる構成ファイルとして、可搬性のあるメモリに書きこむ書き込み手段と、を有し、
前記ネットワーク機器は、
初期設置に際して、接続された前記の構成ファイルのファームウェアに関する情報に従い、ファームウェアを適用する適用手段を有することを特徴とする管理システム。
【請求項２】
前記ネットワーク機器は、さらに、現在、適用されているファームウェアの更新を行うためにファームウェアに関するダウンロードリクエストを行う第２の要求手段を有し、
前記配信システムでは、さらに、
前記特定手段が、前記ダウンロードリクエストを行った機器が前記ネットワーク機器と判断された場合に、当該ダウンロードリクエストを行ったネットワーク機器の特定情報と、当該ダウンロードリクエストのパラメータとして含まれる前記ネットワーク機器に適用されているファームウェアのバージョン情報と、に従い、前記ネットワーク機器のためのファームウェアを特定し、
前記応答手段が、前記特定されたファームウェアに関する情報を、前記ダウンロードリクエストの応答として、前記ネットワーク機器に送信し、
前記ネットワーク機器の前記適用手段は、前記応答に含まれるファームウェアに関する情報に従い、ファームウェアの更新を行うことを特徴とする請求項１に記載の管理システム。
【請求項３】
前記適用手段は、前記ファームウェアに関する情報に従い、前記配信システムから適用すべきファームウェアをダウンロードすることを特徴とする請求項１または２に記載の管理システム。
【請求項４】
前記ネットワーク機器の特定情報は、シリアル番号または商品名を示すことを特徴とする請求項１乃至３のいずれか１項に記載の管理システム。
【請求項５】
前記ネットワーク機器は、複合機であることを特徴とする請求項１乃至４のいずれか１項に記載の管理システム。
【請求項６】
ネットワーク機器のためのファームウェアを管理する配信システムを含む管理システムにおける方法であって、
前記配信システムは、
ファームウェアに関するダウンロードリクエストを受信した場合に、当該ダウンロードリクエストのパラメータとして含まれる認証用の識別情報に従い、当該ダウンロードリクエストを行った機器を判断する判断工程と、
前記ダウンロードリクエストを行った機器がクライアント端末と判断された場合に、当該ダウンロードリクエストのパラメータとして含まれる認証用の識別情報を用いた認証処理を行う認証工程と、
前記認証処理に成功した場合、ファームウェアの配信の対象となるネットワーク機器の特定情報に従い、当該特定情報に対応するネットワーク機器のためのファームウェアを特定する特定工程と、
前記特定されたファームウェアに関する情報を、前記ダウンロードリクエストの応答として、クライアント端末に送信する応答工程と、有し、
前記クライアント端末は、
前記配信システムに対して、ファームウェアに関するダウンロードリクエストを行う第１の要求工程と、
前記ダウンロードリクエストの応答に含まれるファームウェアに関する情報を、ネットワーク機器の初期設置に用いる構成ファイルとして、可搬性のあるメモリに書きこむ書き込み工程と、を有し、
前記ネットワーク機器は、
初期設置に際して、接続された前記の構成ファイルのファームウェアに関する情報に従い、ファームウェアを適用する適用工程を有することを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイスのファームウェア（以下、「ＦＷ」）を更新するシステムに関する。特に、インターネットなどのネットワークを介して、配信サーバーを含む配信システムからＦＷをダウンロードし、ネットワーク機器（複合機など）のＦＷ更新を行うための管理システムに関する。
【背景技術】
【０００２】
ネットワーク機器の一例である複合機（以下、「ＭＦＰ」）には、配信サーバーからＦＷをダウンロードして、自身のＦＷを更新する組込アプリケーションが配置されている。組込アプリケーションは、配信サーバーにＦＷ更新確認のリクエストを送信し、レスポンスとして、適用可能なＦＷの情報を受け取る。この情報に基づき、組込アプリケーションは、ＦＷ更新の制御を行う。
【０００３】
配信サーバーが、組込アプリケーションに通知する適用可能なＦＷのリストの中には、一般的に利用可能な最新のバージョンのＦＷもあれば、商談用にカスタマイズされた特別なＦＷも存在する。サービスエンジニアには、顧客や設置状況に応じた最適なＦＷを選択する必要があるため、どのＦＷを選択すればよいかの判断スキルが必要となる。しかしながら、多くの種類、組み合わせが存在するＦＷの選択の判断スキルを持つ、経験を積んだサービスエンジニアの要員数は、国毎および地域毎に差がある。そのため、経験の浅いサービスエンジニアでも確実に配信サーバーを用いてＭＦＰのＦＷ更新が行えるようなシステムが求められている。
【０００４】
そこで、従来技術である特許文献１では、配信サーバーを使用したＦＷ更新における、サービスエンジニアの適用ミスを防ぐ方法が開示されている。特許文献１によれば、サービスエンジニアが配信サーバーを使用してＭＦＰのＦＷ更新を行う際、配信サーバーがＦＷの種別を加味して、ＭＦＰに適用可能なＦＷのリストを生成し、組込アプリケーションに返す。そのため、経験の浅いサービスエンジニアが、商談用の特別なＦＷが適用されたＭＦＰに、誤って非商談用の通常のＦＷを適用するような適用ミスを防止することが出来る。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−０４９０８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１では、ＭＦＰなどのネットワーク機器の初期設置時のサービスエンジニアによるＦＷの適用ミスを防止するための仕組みについては想定されていない。ネットワーク機器は、顧客のオフィスなどに、設置され、各種設定が行われた上で、ユーザーに利用されるようになる。このようなネットワーク機器の初期設置時には、工場から出荷された通常のＦＷを持つＭＦＰに対して、顧客に応じた商談用の特別なＦＷを適用する場合がある。その際、どの商談用のＦＷを適用するかを配信サーバーから受信した適用可能なＦＷのリストの中から選択する必要がある。そのＦＷ選択をサービスエンジニアが間違えると、ＦＷ適用ミスが発生したまま、顧客でのＭＦＰの運用が始まってしまう。
【０００７】
そこで、本発明は、初期設置時におけるＦＷの適用ミスを抑制するための仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は、ネットワーク機器のためのファームウェアを管理する配信システムを含む管理システムであって、
前記配信システムは、ファームウェアに関するダウンロードリクエストを受信した場合に、当該ダウンロードリクエストのパラメータとして含まれる認証用の識別情報に従い、当該ダウンロードリクエストを行った機器を判断する判断手段と、前記ダウンロードリクエストを行った機器がクライアント端末と判断された場合に、当該ダウンロードリクエストのパラメータとして含まれる認証用の識別情報を用いた認証処理を行う認証手段と、前記認証処理に成功した場合、ファームウェアの配信の対象となるネットワーク機器の特定情報に従い、当該特定情報に対応するネットワーク機器のためのファームウェアを特定する特定手段と、
前記特定されたファームウェアに関する情報を、前記ダウンロードリクエストの応答として、クライアント端末に送信する応答手段と、有し、
前記クライアント端末は、前記配信システムに対して、ファームウェアに関するダウンロードリクエストを行う第１の要求手段と、前記ダウンロードリクエストの応答に含まれるファームウェアに関する情報を、ネットワーク機器の初期設置に用いる構成ファイルとして、可搬性のあるメモリに書きこむ書き込み手段と、を有し、
前記ネットワーク機器は、初期設置に際して、接続された前記の構成ファイルのファームウェアに関する情報に従い、ファームウェアを適用する適用手段を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、初期設置時におけるＦＷの適用ミスを抑制するための仕組みを提供することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明のＦＷ更新システムの全体構成を示す図である。
【図２】本発明のサーバーコンピュータおよびクライアント端末のハードウェア構成図である。
【図３】本発明のＭＦＰのハードウェア構成図である。
【図４】クライアント端末で動作する初期設定用アプリケーションのＦＷ構成の設定画面の構成例である。
【図５】ＭＦＰのＦＷ更新に関わるソフトウェアモジュール構成を示すブロック図である。
【図６】ＭＦＰのアップデーターのユーザー操作によるＦＷ更新指示を受けた際の処理を説明するためのフローチャートである。
【図７】ＭＦＰの構成アプリケーションによるＦＷ初期構成の処理を説明するためのフローチャートである。
【図８】ＭＦＰのアップデーターの構成アプリケーションによりＦＷ更新指示を受けた際の処理を説明するためのフローチャートである。
【図９】配信サーバーのソフトウェアモジュールの構成を示すブロック図である。
【図１０】配信サーバーのＦＷ情報保持領域のデータ構造を示す模式図である。
【図１１】配信サーバーのデバイス商品情報保持領域のデータ構造を示す模式図である。
【図１２】配信サーバーの一括ダウンロードリクエスト受信時の処理を説明するためのフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面を用いて説明する。
【００１２】
（実施例１）
［システムの全体構成］
図１は、ネットワーク機器のＦＷの更新などを制御するための管理システムの全体構成を示す模式図である。
【００１３】
図１において、１０１は、配信サーバーやＦＷのストレージサービスサーバーなどを含む配信システムである。１１１は、ネットワーク機器の一例である複合機（ＭＦＰ）である。１２１、１２２は、クライアント端末である。１３１〜１３３は、ネットワークである。図において、ＭＦＰ１１１、クライアント端末１２１、１２２は、ネットワーク１３１〜１３４に複数台接続されていることを想定している。
【００１４】
配信システム１０１は、配信サーバーとしてのサーバーコンピュータを含む。配信システム１０１は、ネットワーク機器向けのＦＷのバージョン管理や、配信指示などを行う。ＭＦＰ１１１は、Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｒｉｎｔｅｒである。ＭＦＰ１１１は、顧客のオフィス等に設置されている。
【００１５】
クライアント端末１２１、１２２は、例えば、デスクトップパソコン、ノートパソコンであり、Ｗｅｂブラウザを実行する環境が内蔵されている。クライアント端末１２１は、ＭＦＰのメーカーの機器管理の部門のクライアント端末を示しており、配信システム１０１に新しいＦＷの登録などを行うための端末である。クライアント端末１２２は、ＭＦＰの販売会社に所属するオペレータが利用するクライアント端末を示しており、ＭＦＰ初期設置用のアプリケーションが内蔵されている。
【００１６】
ネットワーク１３１〜１３４は、インターネット等のＬＡＮ、ＷＡＮ、電話回線、専用デジタル回線、ＡＴＭ、フレームリレー回線、ケーブルテレビ回線、データ放送用無線回線などのいずれかである。またこれらの組み合わせにより実現される、いわゆる通信ネットワークである。
【００１７】
［サーバーコンピュータおよびクライアント端末のハードウェア構成］
図２は、本発明の実施形態に係る配信システム１０１内の配信サーバー、クライアント端末１２１、１２２のハードウェア構成例を示している。本実施形態のサーバーコンピュータおよびクライアント端末は、図２に示すような一般的なコンピュータのハードウェア構成を適用できる。
【００１８】
図２は、一般的なコンピュータのハードウェア構成図である。ＣＰＵ２０１は、メモリ（ＲＯＭ２０３やＲＡＭ２０２）にロードされたＯＳやアプリケーション等のプログラムを実行する。ここで、ＯＳとはコンピュータ上で稼働するオペレーティングシステムの略語である。後述する各フローチャートの処理は、このＣＰＵ２０１により実行されるプログラムによって実現される。すなわち、該プログラムは、コンピュータを、後述するフローチャートの各処理を実行する各処理部として機能させる。ＲＡＭ２０２は、ＣＰＵ２０１の主メモリであり、ワークエリア等として機能する。キーボードコントローラ２０４は、キーボード２０８や図示しないマウスなどのポインティングデバイスからのキー入力やポイント入力などを制御する。ディスプレイコントローラ２０５は、表示用デバイスであるディスプレイ２０９の表示を制御する。ディスクコントローラ２０６は、各種データを記憶する外部記憶装置であるハードディスク（ＨＤ）２１０へのデータアクセスを制御する。ＮＩＣ２０７は、ネットワークインターフェース（以下、インタフェースを「ＩＦ」と略す）であり、ネットワーク１３１、１３３、１３４を介して接続された他の機器との通信制御処理を実行する。ハードディスク（ＨＤ）２１０には、ＯＳ、アプリケーション、サービス群のプログラム等が格納されると共に、ＯＳによりファイルシステムが構築され、ＯＳの管理下で各種ファイルが格納される。２１１は、相互接続バスであり、ＣＰＵ２０１により各ブロック間の通信を仲介する。
【００１９】
［ＭＦＰのハードウェア構成］
図３は、ＭＦＰ１１１のハードウェア構成例である。
【００２０】
ＭＦＰ１１１は、コントローラ３１０と、プリンタ３０１、スキャナ３０２、操作部３０３から構成される。コントローラ３１０は、ＣＰＵ３１１、ＲＡＭ３１２、ＨＤＤ３１３、ネットワークＩＦ３１４、プリンタＩＦ３１５、スキャナＩＦ３１６、ＦＡＸＩＦ３１９、操作部ＩＦ３１７、拡張ＩＦ３１８から構成される。ＣＰＵ３１１は、ＲＡＭ３１２、ＨＤＤ３１３、ネットワークＩＦ３１４、プリンタＩＦ３１５、スキャナＩＦ３１６、ＦＡＸＩＦ３１９、操作部ＩＦ３１７、拡張ＩＦ３１８との間で、データを授受することが可能である。また、ＣＰＵ３１１は、ＨＤＤ３１３から読みだしたＭＦＰのＦＷのプログラムをＲＡＭ３１２に展開し、展開したＲＡＭ３１２に記憶されたプログラムを実行する。
【００２１】
ＨＤＤ３１３には、ＣＰＵ３１１で実行可能なＭＦＰのＦＷのプログラムや、デバイスで使用する設定値、ユーザーから依頼された処理に関するデータ等を記憶しておくことが可能である。ＲＡＭ３１２は、ＨＤＤ３１３に記憶されたＭＦＰのＦＷのプログラムを展開してＣＰＵ３１１から読みだし可能とし、プログラムの実行に必要な各種のデータを記憶しておくことが可能である。
【００２２】
ネットワークインターフェース３１４は、ネットワーク１３２を通じて、ＭＦＰとネットワーク通信を行うためのインターフェース（以降、ＩＦ）である。データ受信を行ったことをＣＰＵ３１１に伝達すると共に、ＣＰＵ３１１からの指示に基づき、ＲＡＭ３１２上のデータをネットワーク１３２に送信する。プリンタＩＦ３１５は、ＣＰＵ３１１から送信された画像データをプリンタ３０１に送信するＩＦである。また、プリンタ３０１から受信したプリンタの状態をＣＰＵ３１１に伝達する。スキャナＩＦ３１６は、ＣＰＵ３１１から送信された画像読み取り指示をスキャナ３０２に送信するＩＦである。また、スキャナ３０２から受信した画像データをＣＰＵ３１１に通知する。ＦＡＸＩＦ３１９は、ＣＰＵ３１１から送信された画像データを、電話番号などのＦＡＸ送信先の情報と共に、ＦＡＸ３０４に送信するＩＦである。また、ＦＡＸ３０４から受信した画像データを、電話番号などのＦＡＸ送信元の情報と共に、ＣＰＵ３１１に伝達する。操作部ＩＦ３１７は、操作部３０３から入力されたユーザーからの指示をＣＰＵ３１１に伝達するＩＦである。また、ユーザーが操作するための画面情報を操作部３０３に伝達する。
【００２３】
プリンタ３０１は、プリンタＩＦ３１５から受信した画像データを用紙に印刷する。また、プリンタの状態をプリンタＩＦ３１５に伝達する。スキャナ３０２は、スキャナＩＦ３１６から受信した画像読み取り指示に従って、スキャナに置かれた用紙を読み取りデジタルデータ化してスキャナＩＦ３１６に伝達する。また、スキャナの状態をスキャナＩＦ３１６に伝達する。ＦＡＸ３０４は、図示しない電話通信網やＦＡＸ通信網と接続されている。ＦＡＸ３０４は、ＦＡＸＩＦ３１９から受信した画像データを同じく受信したＦＡＸ送信先の情報に基づき、ＦＡＸ送信する。また、ＦＡＸ受信した画像データを、その送信元の情報と共に、ＦＡＸＩＦ３１９に伝達する。更に、ＦＡＸの状態を、ＦＡＸＩＦ３１９に伝達する。操作部３０３は、ＭＦＰ１１１をユーザーから操作することを可能にする。例えばタッチパネルを有する液晶画面を具備し、ユーザーに操作画面を提供すると共に、ユーザーからの操作を受け付ける。拡張ＩＦ３１８は、画像形成装置１０１に外部機器を接続することを可能とするＩＦである。例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）形式のＩＦを具備し、ＵＳＢメモリなどの可搬性のある外部記憶装置を接続してデータの読み取り、書き込みを行うことが可能である。
【００２４】
［初期設定用アプリケーションのＦＷ構成設定ユーザーインターフェース］
図４は、本発明のクライアント端末１２２で動作する初期設定用アプリケーションのＦＷ構成の設定を行うためのユーザーインターフェース（以降、ＵＩ）の一例である。
【００２５】
初期設定用アプリケーションは、ＭＦＰの初期設置の際に必要な各種パラメータを、オペレータにより指定された設定値に基づき、初期設置用の構成ファイルに出力するアプリケーションである。出力された初期設置用の構成ファイルは、ＵＳＢメモリなどの外部記憶装置に保存される。初期設定用アプリケーションは、ＲＡＭ２０２にロードされ、ＣＰＵ２０１により実行される。初期設定用アプリケーションのオペレータは、ＭＦＰの初期設置を行うサービスエンジニア、または、初期設置設定を専業とするバックオフィスメンバーなどである。オペレータは、初期設定用アプリケーションのＵＩで設置先の顧客に合わせた設定パラメータを入力する。設定パラメータは、事前に準備されたパラメータシートに記載されており、オペレータは、その記載に基づいて入力を行う。設置先の顧客に合わせたパラメータシートの事前作成は、設置ミスが発生しないよう、作成担当者により慎重に行われる。
【００２６】
ＦＷ構成設定ＵＩは、特にＦＷ構成の設定パラメータを入力するＵＩである。ＦＷ構成設定ＵＩ４０１において、オペレータは、ＭＦＰに設定するＦＷを指定し、そのＦＷを事前ダウンロードするか、設置時にダウンロードするかを選択する。ＭＦＰに設定するＦＷを指定するために、オペレータは、配信サーバーにアカウントを有する必要がある。
【００２７】
４１２〜４１５は、配信サーバーに登録されているＦＷグループを指定するＵＩである。ＦＷグループとは、ＭＦＰのＦＷを構成するＦＷコンポーネントの集合である。ＦＷコンポーネント毎に、一つのコンテンツファイルが存在する。ＭＦＰの機種、かつ、ＦＷバージョン毎にユニークなＦＷグループが、配信サーバーに登録される。デバイス商品名、デバイスシリアル番号のいずれかを指定し、ファームウェアグループを指定することで、配信サーバーからダウンロードするＦＷグループを一意に特定できる。かつ、販売地域コードを指定することにより、該当のＦＷグループが、その販売地域に対して公開されているＦＷグループであり、ダウンロード可能か否かを判別できる。
【００２８】
４１１は、配信サーバーのログインを行うアカウントを指定するグループボックスである。グループボックス４１１は、ログインＩＤを入力するエディットボックス４２１と、ログインパスワードを入力するエディットボックス４２２、および、ログインボタン４２３を持つ。ログインボタン４２３が押下された際、初期設定用アプリケーションは、ログインＩＤエディットボックス４２１、ログインパスワードエディットボックス４２２にそれぞれ入力されたＩＤ、パスワードをリクエストパラメータに設定して、配信システム１０１に認証リクエストを送信する。配信システム１０１は、受信した認証リクエストのリクエストパラメータに設定されたＩＤ、パスワードを基にユーザーアカウントの認証を行う。認証成功の場合、認証ＩＤと、該当のユーザーアカウントに割り当てられた販売地域コードをレスポンスとして返す。初期設定用アプリケーションは、配信システム１０１からレスポンスとして受け取った認証ＩＤと販売地域コードを保持すると共に、受け取った販売地域コードの値を４１２の販売地域コードテキストボックスに表示する。
【００２９】
４１２は、配信システム１０１からレスポンスとして受け取った販売地域コードを表示するテキストボックスである。配信システム１０１からレスポンスとして受け取った販売地域コードは、ユーザーアカウントに割り当てられた販売地域コードである。ユーザーアカウントに割り当てられた販売地域コードとは、そのユーザーアカウントが属する販売地域の地域コードである。販売地域毎に、公開されているＦＷグループが異なる。
【００３０】
４１３、４１４は、デバイス商品名、デバイスシリアル番号のいずれかを指定するラジオボタンである。デバイス商品名のラジオボタン４１３が選択された際、エディットボックス４２４に入力されたデバイス商品名の文字列が、配信システム１０１でのＦＷグループの特定に利用される。デバイス商品名は、エディットボックス４２４に直接入力するか、検索ボタン４２６を押下した際に別途表示されるデバイス商品名検索ボックスで検索した結果から選択する。デバイス商品名検索ボックスでの検索は、ユーザーアカウントの情報に基づき、配信システム１０１により実行される。初期設定用アプリケーションは、デバイス商品名検索のリクエストを配信システム１０１に送信する際、認証ＩＤを共に送出する。配信システム１０１は、認証ＩＤを基に、該当のユーザーアカウントで参照可能なデバイス商品名の一覧を初期設定用アプリケーションにデバイス商品名検索のレスポンスとして返す。デバイス商品名は、ＦＷグループとは別に、デバイス商品登録として、デバイスシリアル番号と紐付けられて配信システム１０１に登録されている。
【００３１】
デバイスシリアル番号のラジオボタン４１４が選択された際には、エディットボックス４２５に入力されたデバイスシリアル番号の文字列が、配信システム１０１でのＦＷグループの特定に利用される。デバイスシリアル番号は、エディットボックス４２５に直接入力する。
【００３２】
４１５は、ＦＷグループのバージョンを指定するエディットボックスである。ＦＷグループのバージョンは、直接入力するか、検索ボタン４２７を押下した際に別途表示されるＦＷグループバージョン検索ボックスで検索した結果から選択する。ＦＷグループバージョン検索ボックスでの検索は、ユーザーアカウントの情報に基づき、ＦＷ配信システム１０１により実行される。配信システム１０１は、初期設定用アプリケーションからＦＷグループバージョン検索のリクエストと共に受け取った認証ＩＤに割り当てられたユーザーアカウントでダウンロード可能なＦＷグループバージョンの一覧を初期設定用アプリケーションにレスポンスとして返す。
【００３３】
４１６は、ＦＷのダウンロードタイミングを選択するラジオボタンである。ＦＷのダウンロードタイミングとして、事前ダウンロードか、設置時ダウンロードのいずれかを選択することが出来る。事前ダウンロードは、初期設定用アプリケーションで配信システム１０１からＦＷグループをダウンロードする。設置時ダウンロードは、ＭＦＰ１１１の顧客のオフィス環境などへの初期設置時に、ＭＦＰ１１１で配信システム１０１からＦＷグループをダウンロードする。
【００３４】
事前ダウンロード４２８が選択されている場合、次へボタン４３２が押下された段階で、初期設定用アプリケーションは、４１３〜４１５で指定された値と認証ＩＤをリクエストパラメータに設定し、配信システム１０１に、ＦＷグループおよびＦＷ管理ファイルの一括ダウンロードリクエストを行う。この際の配信システム１０１における処理については、図１２を用いて後述する。配信システム１０１から一括ダウンロードされるＦＷグループのファイルとは、そのＦＷグループを構成する各ＦＷコンポーネントのファイルをＺＩＰ形式などでアーカイブしたファイルである。また、一括ダウンロードされるＦＷ管理ファイルとは、ＦＷグループを構成する各ＦＷコンポーネントの情報を記載したファイルである。ＦＷ登録者が、ＦＷ登録の際に、規定のフォーマットに従って記述し、ＦＷグループと共に登録したファイルである。更にまた、ＦＷコンポーネントの情報とは、タイプ名、バージョン、コンポーネントのファイル名など、ＦＷコンポーネント毎に一意な情報である。ＦＷコンポーネントのタイプ名は、ＦＷコンポーネントを識別する略称であり、ＦＷグループ内で一意の情報である。
【００３５】
一方、設置時ダウンロード４２９が選択されている場合、次へボタン４３２が押下された段階で、初期設定用アプリケーションは、４１３〜４１５で指定された値と認証ＩＤをリクエストパラメータに設定し、配信システム１０１に、ＦＷグループ存在確認のリクエストを行う。ＦＷグループ存在確認のリクエストを受けた配信システム１０１は、４１３〜４１５で指定された値に該当するＦＷグループが存在し、かつ、該当のＦＷグループが、該当の認証ＩＤのユーザーアカウントに紐付けられた販売地域コードの地域からダウンロード可能かを判定する。その判定結果を、ＯＫ／ＮＧのレスポンスとして返す。
【００３６】
４３１は、戻るボタンであり、初期設定用アプリケーションのＦＷ構成設定ＵＩの前の初期設置設定画面に遷移する。例えば、ＭＦＰのアップデーターのスケジュール設定を行うアップデーター設定ＵＩなどに遷移する。
【００３７】
４３２は、次へボタンであり、事前ダウンロード４２８が選択されている場合、配信システム１０１のレスポンスとして受け取ったＦＷグループのアーカイブファイル、および、ＦＷ管理ファイルを、ＵＳＢメモリに書きこむ。また、それらＦＷグループのアーカイブファイル、および、ＦＷ管理ファイルのＵＳＢメモリ上のパスを、初期設置用の構成ファイルに書き込む。例えば、以下のようなＦＷ初期構成セクションの情報を、初期設定用アプリケーションは、構成ファイルに書き込む。
［ＦＷ＿ＩＮＩＴＩＡＬ＿ＣＯＮＦＩＧＵＲＡＴＩＯＮ］
ＦＷ＿ＡＵＴＯ＿ＣＯＮＦＩＧＵＲＡＴＩＯＮ＝ＹＥＳ
ＦＷ＿ＰＲＩＯＲ＿ＤＯＷＮＬＯＡＤ＝ＹＥＳ
ＦＷ＿ＡＲＣＨＩＶＥ＿ＦＩＬＥ＝｛ＵＳＢメモリ上のＦＷグループのアーカイブファイルのパス｝
ＦＷ＿ＭＡＮＡＧＥＭＥＮＴ＿ＦＩＬＥ＝｛ＵＳＢメモリ上のＦＷ管理ファイルのパス｝
一方、設置時ダウンロード４２９が選択されている場合、配信システム１０１から受け取ったＦＷグループ存在確認のリクエストの結果がＯＫであれば、４１５に設定されているＦＷグループのバージョンの情報を構成ファイルに書き込む。例えば、以下のようなＦＷ初期構成セクションの情報を、初期設定用アプリケーションは、構成ファイルに書き込む。
［ＦＷ＿ＩＮＩＴＩＡＬ＿ＣＯＮＦＩＧＵＲＡＴＩＯＮ］
ＦＷ＿ＡＵＴＯ＿ＣＯＮＦＩＧＵＲＡＴＩＯＮ＝ＹＥＳ
ＦＷ＿ＰＲＩＯＲ＿ＤＯＷＮＬＯＡＤ＝ＮＯ
ＦＷ＿ＧＲＯＵＰ＿ＶＥＲＳＩＯＮ＝２．０
また、ＦＷグループ存在確認のリクエストの結果がＮＧであれば、初期設定用アプリケーションは、エラー表示を行い、ＦＷ構成設定ＵＩ４０１の画面に留まる。
【００３８】
４３３は、スキップボタンであり、ＦＷ構成設定ＵＩでＦＷ構成設定をせず、初期設定用アプリケーションの次の初期設置設定画面に進む。例えば、ＭＦＰで有効にする組み込みアプリを設定する組み込みアプリ設定Ｕなどに遷移する。ＦＷ構成設定をスキップする場合、初期設定用アプリケーションは、構成ファイルに、以下のようなＦＷ初期構成セクションの情報を書き込む。
［ＦＷ＿ＩＮＩＴＩＡＬ＿ＣＯＮＦＩＧＵＲＡＴＩＯＮ］
ＦＷ＿ＡＵＴＯ＿ＣＯＮＦＩＧＵＲＡＴＩＯＮ＝ＮＯ
［ＭＦＰのＦＷ更新ソフトウエア構成］
図５は、本発明のＭＦＰ１１１のＦＷ更新に関わるソフトウェアモジュール構成を示すブロック図である。
【００３９】
図５において、５０１はアップデーター、５５１は構成アプリケーションである。アップデーター５０１は、ＭＦＰ１１１のＦＷを更新するソフトウェアモジュールである。構成アプリケーション５５１は、構成ファイルに基づき、ＭＦＰ１１１のＦＷを更新するソフトウェアモジュールである。
【００４０】
５９１は、デバイス情報保持領域である。デバイス情報保持領域５９１は、ＭＦＰ１１１の基本デバイス情報を保持する。基本デバイス情報とは、デバイスシリアル番号、デバイス地域コードなどデバイス固有の情報である。デバイス地域コードとは、ＭＦＰ１１１の販売地域毎に固有に設定される地域コードである。「ＪＰ」「ＵＳ」など、前述の配信システム１０１のユーザーアカウントが属する販売地域の販売地域コードと同一の識別子が用いられる。５９２は、一時作業領域である。アップデーター５０１、構成アプリケーション５５１などのＭＦＰ１１１の各モジュールが一時的な作業領域として使用する領域である。デバイス情報保持領域５９１、および、一時作業領域５９２は、ＭＦＰ１１１のハードディスク３１３上に確保されたＭＦＰ１１１の共通データを保存するための領域である。デバイス情報保持領域５９１は、ＤＢテーブルとしてハードディスク３１３上に構築され、一時作業領域５９２は、ファイルシステムのディレクトリとしてハードディスク３１３上に構築される。
【００４１】
アップデーター５０１において、５０２は、メイン制御部である。メイン制御部５０２は、ＭＦＰ１１１のアップデーターにおける中心的な処理部である。図５に示す他のアップデーター関連のソフトウェアモジュールと連携して、ＦＷ更新に関わる各種処理を実行する。
【００４２】
５０３は、通信部である。通信部５０３は、ＮＩＣ２０７を介して、配信システム１０１とＨＴＴＰによる通信を行う。５０４は、ＵＩ部である。操作部３０３に、ＦＷ更新用のＵＩを表示し、サービスエンジニアまたはエンドユーザーからのＦＷ更新の要求を、操作部ＩＦ３１７を介して、受け取る。または、定期的にＦＷの自動更新を実行するスケジュール設定の要求を受け取る。５１１は、ＭＦＰ１１１の各モジュールのＦＷ更新を実行する更新部である。５１３は、ＩＦ部である。メイン制御部５０２に制御される更新部５１１は、ＩＦ部５１３を介して、ＭＦＰ１１１の各モジュールのＦＷ更新を行う。また、ＩＦ部５１３は、後述の構成アプリケーション５５１からのＦＷ更新の依頼を受け取り、メイン制御部５０２に伝える。また、デバイス情報保持領域５９１、一時作業領域５９２などのＭＦＰ１１１の共通データ領域へのアクセスを行う。
【００４３】
５２１は、現在ＦＷ情報保持領域である。現在のＦＷグループの情報として、ＭＦＰ１１１のＦＷコンポーネントの構成情報を一纏めにして保持する。メイン制御部５０２が、ＭＦＰ１１１のＦＷコンポーネントの構成情報を取得して、それらの情報を一纏めに、現在ＦＷグループの情報として格納する。メイン制御部５０２は、更新部５１１により新しいＦＷに更新した際にも、現在ＦＷ情報保持領域５２１の情報を更新する。すなわち、メイン制御部５０２が、更新部５１１により新しいＦＷに更新した後、ＩＦ部５１３を介して、最新のＦＷコンポーネントの構成情報をＭＦＰ１１１の各モジュールから再取得し、その情報に基づき、現在ＦＷ情報保持領域５２１の情報を再設定する。
【００４４】
現在ＦＷ情報保持領域５２１に格納される各ＦＷコンポーネントの構成情報は、ＦＷコンポーネントのタイプ名、バージョン、コンポーネントのファイル名である。これは、後述の配信システム１０１のＦＷコンポーネント情報テーブル８０２に格納される値と類似である。すなわち、ＭＦＰ１１１の現在ＦＷ情報保持領域５２１は、配信システム１０１のＦＷコンポーネント情報テーブル８０２と類似のテーブルから構成される。
【００４５】
５２２は、更新ＦＷ情報保持領域である。メイン制御部５０２が、通信部５０３を介して、配信システム１０１から受信した更新ＦＷのＦＷコンポーネント情報を一時的に保持する。現在ＦＷ情報保持領域５２１、更新ＦＷ情報保持領域５２２は、いずれもＤＢテーブルとしてハードディスク３１３上に構築される。
【００４６】
次に、構成アプリケーション５５１に関して説明する。構成アプリケーション５５１において、５５１は、メイン制御部である。メイン制御部５５２は、ＭＦＰ１１１の構成アプリケーションにおける中心的な処理部である。図５に示す他の初期構成関連のソフトウェアモジュールと連携して、ＦＷ更新を含む各種設定処理を実行する。
【００４７】
５５３は、通信部である。通信部５５３は、ＮＩＣ２０７を介して、配信システム１０１とＨＴＴＰによる通信を行う。５５４は、ＵＩ部である。操作部３０３に、初期構成用のＵＩを表示し、サービスエンジニアからの要求を、操作部ＩＦ３１７を介して、受け取る。また、初期構成の進行状況をＵＩに表示する。
【００４８】
５５５は、構成ファイル読込部である。拡張ＩＦ３１８に接続されたＵＳＢメモリに保存された構成ファイルを読み込み、そのデータをメイン制御部５５２に伝える。５６１は、構成ファイルのデータを解釈し、その解釈した設定値に基づき、ＭＦＰ１１１の各モジュールの初期構成を実行する初期構成部である。メイン制御部５５２に制御される初期構成部５６１は、構成ファイルの設定値に基づき、ＩＦ部５６３を介して、ＭＦＰ１１１の各モジュールの初期構成を行う。ＦＷの初期構成を行う場合には、ＩＦ部５６３を介して、アップデーター５０１のＩＦ部５１３を呼び出し、ＦＷの更新をメイン制御部５０２に依頼する。また、アップデーター５０１からＦＷの更新結果を受け取る。更に、また、デバイス情報保持領域５９１、一時作業領域５９２などのＭＦＰ１１１の共通データ領域へのアクセスを行う。
【００４９】
５７１は、設定結果保持領域である。初期構成の実行結果が保存される。初期構成部５６１は、メイン制御部５５２による制御の元、ＭＦＰ１１１の各モジュールの初期構成を行った際、その結果を設定結果保持領域５７１に保存する。初期設定の成功、失敗、設定内容、エラー内容などが保存される。
設定結果保持領域５７１は、ＤＢテーブルとしてハードディスク３１３上に構築される。
【００５０】
［ＭＦＰのアップデーターへの操作に応じたＦＷの更新処理］
図６は、ＭＦＰ１１１のアップデーター５０１による、ユーザー操作によるＦＷ更新指示を受けた際の動作を示すフローチャートである。本処理は、ＭＦＰの初期設置後に、顧客環境でＭＦＰが運用されているときに行われるエンドユーザーまたはサービスエンジニアの操作で実行されるアップデーター５０１によるＦＷ更新の処理を示す。
【００５１】
なお、本処理は、ＣＰＵ３１１によりアプリケーションプログラムであるアップデーター５０１を実行することで実現される処理である。ここでは、アップデーター５０１を処理の主体として説明する。
【００５２】
本発明のＭＦＰ１１１のアップデーター５０１によるＦＷ更新は、次の３ステップで行われる。
１．配信サーバーへの適用可能ＦＷ確認
２．配信サーバーからのＦＷダウンロード
３．ダウンロードＦＷ適用
以下、上記ＦＷ更新ステップ１〜３に関して、順に説明する。
【００５３】
図６（ａ）は、ＦＷ更新のステップ１に係る動作を示すフローチャートである。
【００５４】
Ｓ６０１において、ＭＦＰ１１１のアップデーター５０１のメイン制御部５０２は、ＵＩ部５０４を介して、ユーザー操作によるＦＷ更新の要求を検知した際、以下を実施する。
【００５５】
Ｓ６０２において、メイン制御部５０２は、ＦＷ更新の要求を行ったオペレータ区分を特定する。オペレータ区分の特定とは、操作を行ったユーザーが、エンドユーザーなのか、サービスエンジニアなのかを特定することである。オペレータ区分は、ＵＩ部５０４が操作部３０３に表示中のＵＩが、エンドユーザー向けのＵＩなのか、サービスエンジニア向けのＵＩなのかで判定される。メイン制御部５０２は、エンドユーザー向けのＵＩでＦＷ更新の要求が行われた際、オペレータは、エンドユーザーであると判定する。同様に、サービスエンジニア向けのＵＩでＦＷ更新の要求が行われた際、オペレータは、サービスエンジニア向けであると判定する。
【００５６】
Ｓ６０３において、メイン制御部５０２は、ＩＦ部５１３を介して、デバイス情報保持領域５９１からＭＦＰ１１１のデバイスシリアル番号の情報を取得する。Ｓ６０４において、メイン制御部５０２は、現在ＦＷ情報保持領域５２１から、現在のＦＷグループの情報を取得する。現在ＦＷグループの情報として、ＭＦＰ１１１のＦＷコンポーネントの現在の構成情報を取得する。ＦＷコンポーネントの構成情報とは、タイプ名、バージョン、コンポーネントのファイル名の情報である。
【００５７】
Ｓ６０５において、メイン制御部５０２は、適用可能ＦＷリクエストを、通信部５０３を介して、配信システム１０１に送信する。適用可能ＦＷリクエストのリクエストパラメータとして、オペレータ区分、デバイスシリアル番号、現在ＦＷグループの情報を設定する。Ｓ６０６において、メイン制御部５０２は、適用可能ＦＷリクエストに対する配信システム１０１のレスポンスを待つ。Ｓ６０６で適用可能ＦＷリクエストに対する配信システム１０１のレスポンスを受け取った際、メイン制御部５０２は、Ｓ６０７の処理に進む。
【００５８】
Ｓ６０７において、メイン制御部５０２は、配信システム１０１のレスポンスパラメータに、適用可能なＦＷグループバージョンの情報が一つ以上存在するか否かを確認する。配信システム１０１のレスポンスパラメータに、適用可能なＦＷグループバージョンの情報が一つ以上存在する場合、メイン制御部５０２は、Ｓ６０８の処理に進む。Ｓ６０８において、メイン制御部５０２は、ＵＩ部５０４を介して、配信システム１０１から受け取った適用可能なＦＷグループバージョンから適用するＦＷグループバージョンをユーザーに選択させるＵＩを、操作部３０３に表示する。
【００５９】
一方、Ｓ６０７において、配信システム１０１のレスポンスパラメータに、適用可能なＦＷグループバージョンの情報が一つも存在しない場合、メイン制御部５０２は、Ｓ６０９の処理に進む。Ｓ６０９において、メイン制御部５０２は、配信システム１０１のレスポンスパラメータに含まれるエラーコードに基づき、エラーメッセージを生成し、ＵＩ部５０４を介して、操作部３０３にエラー表示を行う。
【００６０】
図６（ｂ）は、ＦＷ更新のステップ２及び３に係る動作を示すフローチャートである。
【００６１】
ＭＦＰ１１１のアップデーター５０１のメイン制御部５０２は、図６（ａ）のフローチャートＳ６０８で操作部３０３に表示した適用可能なＦＷグループバージョンの選択ＵＩにおいて、ユーザー操作によるＦＷグループバージョンの選択が行われた際、以下を実行する。
【００６２】
図６（ｂ）のＳ６１１において、メイン制御部５０２は、ＵＩ部５０４を介して、適用可能なＦＷグループバージョンの選択操作を検知する。
【００６３】
Ｓ６１２において、メイン制御部５０２は、選択されたＦＷグループバージョンに基づき、配信システム１０１にＦＷグループに対するＦＷ情報取得リクエストを行う。ＦＷ情報取得リクエストのリクエストパラメータには、デバイスシリアル番号と、ＦＷグループバージョンをセットする。Ｓ６１３において、メイン制御部５０２は、配信システム１０１からのＦＷ情報取得リクエストに対するレスポンスを待つ。Ｓ６１３において、配信システム１０１からのレスポンスを受け取った際、メイン制御部５０２は、Ｓ６１４に進む。Ｓ６１４において、メイン制御部５０２は、ＦＷ情報取得リクエストのレスポンスとして受け取ったＦＷグループのＦＷコンポーネントの情報、および、各ＦＷコンポーネントのダウンロード情報を更新ＦＷ情報保持領域５２２に保存する。ＦＷコンポーネントの情報とは、前述の通り、タイプ名、バージョン、コンポーネントのファイル名である。ＦＷコンポーネントのダウンロード情報とは、ＦＷコンポーネントのファイルをダウンロードするためのＵＲＬの情報である。Ｓ６１５において、メイン制御部５０２は、更新ＦＷ情報保持領域５２２に保存されるＦＷコンポーネントの情報と、現在ＦＷ情報保持領域５２１に保存される現在ＦＷグループの情報とを突き合わせ、更新対象の現在ＦＷのＦＷコンポーネントを特定する。
【００６４】
更新対象のＦＷコンポーネントの特定は、メイン制御部５０２により、以下のように行われる。
１．更新ＦＷ情報保持領域５２２に保存されるＦＷコンポーネントのタイプ名に一致するタイプ名が、現在ＦＷ情報保持領域５２１に存在するか否かを確認する。
２．一致するタイプ名が現在ＦＷ情報保持領域５２１に存在する場合、該当のＦＷコンポーネントのバージョン情報の突き合わせを行う。
３．更新ＦＷ情報保持領域５２２に保存されるＦＷコンポーネントのバージョンが、現在ＦＷ情報保持領域５２１に存在するＦＷコンポーネントのバージョンより高い場合、該当のタイプ名を更新対象のＦＷコンポーネントと判断する。
４．更新ＦＷ情報保持領域５２２に保存される全てのＦＷコンポーネントの情報に関して、上記１〜３を行い、更新対象の現在ＦＷのＦＷコンポーネントのタイプ名を特定する。
【００６５】
Ｓ６１６において、メイン制御部５０２は、更新対象として特定したＦＷコンポーネントに関し、そのコンテンツのダウンロードリクエストを配信システム１０１に送信する。メイン制御部５０２によるＦＷダウンロードリクエストは、更新ＦＷ情報保持領域５２２に保存される、各ＦＷコンポーネントのダウンロード情報に従い、行われる。Ｓ６１７において、メイン制御部５０２は、配信システム１０１からのＦＷダウンロードリクエストに対するレスポンスを待つ。Ｓ６１７において、配信システム１０１からのレスポンスを受け取った際、メイン制御部５０２は、Ｓ６１８に進む。Ｓ６１８において、メイン制御部５０２は、ＦＷダウンロードリクエストのレスポンスとして受け取った各ＦＷコンポーネントのコンテンツをファイル化して、一時作業領域５９２に格納する。
【００６６】
Ｓ６１９において、メイン制御部５０２は、ＭＦＰ１１１の各モジュールのＦＷ更新処理を行う。メイン制御部５０２は、更新部５１１にＦＷの更新指示を行うことにより、ＭＦＰ１１１の各モジュールのＦＷ更新処理を行う。メイン制御部５０２は、更新部５１１に更新対象のＦＷコンポーネントのタイプ名のリストと、更新ＦＷ情報保持領域５２２に保存した各ＦＷコンポーネントの情報、および、一時作業領域５９２に格納した各ＦＷコンポーネントのファイル情報を、更新指示のパラメータとして渡す。
【００６７】
ＦＷの更新指示を受けた更新部５１１は、以下のように、ＭＦＰ１１１の各モジュールのＦＷ更新を行う。
１．更新対象のＦＷコンポーネントのタイプ名のファイル名の情報を更新ＦＷ情報保持領域５２２から取得する。
２．取得したファイル名のファイルを一時作業領域５９２から取得する。
３．一時作業領域５９２から取得したダウンロードファイルで、ＭＦＰ１１１の各モジュールのＦＷコンポーネントを置き換える。
４．ＦＷコンポーネントのファイル置き換えによるＦＷの更新が正常終了、または、エラー終了したことを、個々のＦＷコンポーネント単位で、メイン制御部５０２に通知する。
５．更新指示のパラメータとして渡されたタイプ名のリストに載ったすべてのタイプ名に関し、上記１〜４を実施する。
【００６８】
Ｓ６２０において、メイン制御部５０２は、ＦＷ更新処理結果の成功／失敗と、更新後の現在ＦＷグループの情報を、デバイスシリアル番号の情報と共に、ＦＷ更新結果通知リクエストとして、配信システム１０１に送信する。尚、更新部５１１によるＭＦＰ１１１のＦＷコンポーネントのファイル置き換えが一つでも失敗した場合、メイン制御部５０２は、ＦＷ更新処理結果に失敗したと見なす。Ｓ６２１において、メイン制御部５０２は、配信システム１０１からのＦＷ更新結果通知リクエストに対するレスポンスを待って、処理を終了する。
【００６９】
以上が、ＭＦＰの初期設置後に、顧客環境でＭＦＰが運用されているときに行われるエンドユーザーまたはサービスエンジニアの操作で実行されるアップデーター５０１によるＦＷ更新の処理である。
【００７０】
［ＭＦＰのＦＷの初期構成実行時の処理］
次に、ＭＦＰの初期設置時の構成アプリケーション５５１によるＦＷ更新の処理について説明する。
【００７１】
図７は、ＭＦＰ１１１の構成アプリケーション５５１による、ＦＷの初期構成の動作を示すフローチャートである。構成アプリケーション５５１は、拡張Ｉ／Ｆ３１８にＵＳＢメモリが接続された際に、ＣＰＵ３１１により実行され、起動される。
【００７２】
ここで、図７（ａ）は、起動された構成アプリケーション５５１（のメイン制御部５５２）を処理の主体として説明する。
【００７３】
Ｓ７０１において、構成アプリケーション５５１のメイン制御部５５２は、構成ファイル読込部５５５を介して、接続されたＵＳＢメモリのファイル情報を読み取る。そして、ＵＳＢメモリ内に、初期設置用の構成ファイルが格納されているか否かを確認する。Ｓ７０２において、メイン制御部５５２は、ＵＳＢメモリ内に、構成ファイルが格納されていないと判定した場合、処理を終了する。同じく、Ｓ７０２において、メイン制御部５５２は、ＵＳＢメモリ内に、構成ファイルが格納されていると判定した場合、Ｓ７０３に進む。Ｓ７０３において、メイン制御部５５２は、構成ファイル読込部５５５を介して、ＵＳＢメモリから構成ファイルのデータを読み込む。
【００７４】
Ｓ７０４において、メイン制御部５５２は、読み込んだ構成ファイルのデータを順に初期構成部５６１に渡し、その構成ファイルの設定値に基づき、ＭＦＰ１１１の各モジュールの初期構成を行う。
【００７５】
具体的には、メイン制御部５５２は、以下のように、ＭＦＰ１１１の各モジュールの初期構成を行う。
（７Ａ−１）メイン制御部５５２は読み込んだ構成ファイルのデータを順次、初期構成部５６１に渡していく。
（７Ａ−２）初期構成部５６１は、メイン制御部５５２から渡された構成ファイルのデータを基に、設定値を解釈する。
（７Ａ−３）初期構成部５６１は、その解釈した設定値に基づき、構成アプリケーション５５１のＩＦ部５６３を介して、ＭＦＰ１１１の各モジュールの初期構成を行う。
（７Ａ−４）初期構成部５６１は、構成アプリケーション５５１のＩＦ部５６３を介して行った、ＭＦＰ１１１の各モジュールの初期構成の実行結果を、順次、設定結果保持領域５７１に保存する。
【００７６】
メイン制御部５５２は、構成ファイルの設定値に基づく、ＭＦＰ１１１の各モジュールの初期構成の終了後、Ｓ７０５に進む。Ｓ７０５において、メイン制御部５５２は、ＭＦＰ１１１の各モジュールの初期構成の実行結果を設定結果保持領域５７１から取得し、ログファイルとして、拡張ＩＦ３１８を介して、ＵＳＢメモリに書き込み、処理を終了する。
【００７７】
図７（ｂ）は、本発明のＭＦＰ１１１の構成アプリケーション５５１によるＦＷ更新の動作を示すフローチャートである。
【００７８】
具体的には、Ｓ７０４の（７Ａ−３）において、構成ファイルのＦＷ構成設定のデータに基づき、初期構成部５６１がＭＦＰ１１１のＦＷの初期構成を行う際の動作を示すフローチャートである。更に具体的には、前述の構成ファイルの例で言うと、ＦＷ初期構成セクション（［ＦＷ＿ＩＮＩＴＩＡＬ＿ＣＯＮＦＩＧＵＲＡＴＩＯＮ］）のデータを解釈して、ＭＦＰ１１１の初期構成を行う際のフローチャートである。
【００７９】
Ｓ７５１において、初期構成部５６１は、構成ファイルのＦＷ自動構成の設定値を基に、処理を分岐する。具体的には、Ｓ７５１において、ＦＷ初期構成セクションにＦＷ自動構成の実行を示す設定がある場合、Ｓ７５２に進む。前述の構成ファイルの例で言うと、以下のエントリがＦＷ初期構成セクションにある場合、Ｓ７５２に進む。
・ＦＷ＿ＡＵＴＯ＿ＣＯＮＦＩＧＵＲＡＴＩＯＮ＝ＹＥＳ
同様に、Ｓ７５１において、ＦＷ初期構成セクションにＦＷ自動構成を実行しないことを示す設定がある場合、Ｓ７７１に進む。前述の構成ファイルの例で言うと、以下のエントリがＦＷ初期構成セクションにある場合、Ｓ７７１に進む。
・ＦＷ＿ＡＵＴＯ＿ＣＯＮＦＩＧＵＲＡＴＩＯＮ＝ＮＯ
Ｓ７５２において、初期構成部５６１は、構成ファイルのＦＷ事前ダウンロードの設定値を基に、更に処理を分岐する。具体的には、Ｓ７５２において、ＦＷ初期構成セクションにＦＷ事前ダウンロード実行済みを示す設定がある場合、Ｓ７５３に進む。前述の構成ファイルの例で言うと、以下のエントリがＦＷ初期構成セクションにある場合、Ｓ７５３に進む。
・ＦＷ＿ＰＲＩＯＲ＿ＤＯＷＮＬＯＡＤ＝ＹＥＳ
同様に、Ｓ７５２において、ＦＷ初期構成セクションに設置時ダウンロードの設定がある場合、初期構成部５６１は、Ｓ７６１に進む。前述の構成ファイルの例で言うと、以下のエントリがＦＷ初期構成セクションにある場合、Ｓ７６１に進む。
・ＦＷ＿ＰＲＩＯＲ＿ＤＯＷＮＬＯＡＤ＝ＮＯ
Ｓ７５３において、初期構成部５６１は、ＦＷグループのアーカイブファイル、および、ＦＷ管理ファイルのＵＳＢメモリ上のパスを、ＦＷ初期構成セクションから読み取る。前述の構成ファイルの例で言うと、ＦＷ初期構成セクションの以下のエントリから該当の値を読み取る。
・ＦＷ＿ＡＲＣＨＩＶＥ＿ＦＩＬＥ＝｛ＵＳＢメモリ上のＦＷグループのアーカイブファイルのパス｝
・ＦＷ＿ＭＡＮＡＧＥＭＥＮＴ＿ＦＩＬＥ＝｛ＵＳＢメモリ上のＦＷ管理ファイルのパス｝
Ｓ７５４において、初期構成部５６１は、ＦＷ初期構成セクションから読み取ったＦＷグループのアーカイブファイルのパス情報を基に、構成ファイル読込部５５５を介して、ＵＳＢメモリからＦＷグループのアーカイブファイルを読み込む。Ｓ７５５において、初期構成部５６１は、ＵＳＢメモリから読み込んだＦＷグループのアーカイブデータを展開し、個々のＦＷコンポーネントのコンテンツ毎にファイル化する。初期構成部５６１は、ファイル化したＦＷコンポーネントを、ＩＦ部５６３を介して、一時作業領域５９２に格納する。Ｓ７５６において、初期構成部５６１は、ＦＷ初期構成セクションから読み取ったＦＷ管理ファイルのパス情報を基に、ＵＳＢメモリからＦＷ管理ファイルを読み込み、一時作業領域５９２にコピーする。
【００８０】
Ｓ７５７において、初期構成部５６１は、アップデーター５０１のＩＦ部５１３を呼び出し、一時作業領域５９２に格納したＦＷ管理ファイルのパス情報をパラメータに指定して、ＦＷ更新の依頼を行う。
【００８１】
Ｓ７５８において、初期構成部５６１は、アップデーター５０１からのＦＷ更新結果の通知を待つ。初期構成部５６１は、構成アプリケーション５５１のＩＦ部５６３を介して、アップデーター５０１から、ＦＷ更新結果の通知を受け取った際、ＭＦＰ１１１のＦＷの初期構成のフローチャートの処理を終了する。処理終了後、初期構成部５６１は、前記（７Ａ−４）を実行する。すなわち、ＦＷ初期構成の実行結果を、設定結果保持領域５７１に保存する。
【００８２】
Ｓ７６１において、初期構成部５６１は、ＦＷグループのバージョンを、ＦＷ初期構成セクションから読み取る。前述の構成ファイルの例で言うと、ＦＷ初期構成セクションの以下のエントリから該当の値を読み取る。
・ＦＷ＿ＧＲＯＵＰ＿ＶＥＲＳＩＯＮ＝２．０
Ｓ７６２において、初期構成部５６１は、ＩＦ部を介して、ＭＦＰ１１１のデバイス情報保持領域５９１から、デバイスシリアル番号、および、デバイス地域コードの値を取得する。Ｓ７６３において、初期構成部５６１は、配信システム１０１に、ＦＷグループおよびＦＷ管理ファイルの一括ダウンロードリクエストを行う。リクエストパラメータには、構成ファイルから読み込んだＦＷグループのバージョンと、デバイス情報保持領域５９１から取得したＭＦＰのデバイスシリアル番号、ＭＦＰのデバイス地域コードの値を設定して、リクエストを行う。
【００８３】
Ｓ７６４において、初期構成部５６１は、ＦＷ一括ダウンロードリクエストに対する配信システム１０１からのレスポンスを待つ。初期構成部５６１は、配信システム１０１からＦＷ一括ダウンロードリクエストに対するレスポンスを受け取った際、Ｓ７６５に進む。Ｓ７６５において、初期構成部５６１は、配信システム１０１からＦＷ一括ダウンロードリクエストのレスポンスとして受け取ったＦＷグループのアーカイブファイル、および、ＦＷ管理ファイルを、一時作業領域５９２に格納する。Ｓ７６６において、初期構成部５６１は、ＦＷグループのアーカイブデータに関しては、アーカイブデータを展開し、個々のＦＷコンポーネントのコンテンツ毎にファイル化した上で、一時作業領域５９２に格納する。Ｓ７６６の実行後、初期構成部５６１は、Ｓ７５７の処理に進む。
【００８４】
Ｓ７７１において、初期構成部５６１は、ＭＦＰのアップデーターによるＦＷ更新を行うか否かの問い合わせを、ＵＩ部５５４を介して、ＭＦＰ１１１の操作部３０３に表示する。Ｓ７７２において、初期構成部５６１は、ＭＦＰ１１１の操作部３０３での入力を待つ。Ｓ７７２において、初期構成部５６１は、ＵＩ部５５４を介して、操作部３０３での入力を受け取った際、入力結果が、ＭＦＰのアップデーターによるＦＷ更新の指示であれば、Ｓ７７３に進む。一方、Ｓ７７２において、操作部３０３での入力結果が、ＭＦＰのアップデーターによるＦＷ更新を行わない指示であれば、初期構成部５６１は、ＭＦＰ１１１のＦＷの初期構成のフローチャートの処理を終了する。処理終了後、初期構成部５６１は、前記（７Ａ−４）を実行する。
【００８５】
Ｓ７７３において、初期構成部５６１は、アップデーター５０１のＩＦ部５１３を呼び出し、ＦＷ管理ファイルのパラメータ指定なしで、ＦＷ更新の依頼を行う。Ｓ７７３の実行後、初期構成部５６１は、Ｓ７５８の処理に進む。
【００８６】
以上が、図７（ｂ）の本発明のＭＦＰ１１１の構成アプリケーション５５１によるＦＷ更新の動作を示すフローチャートである。
【００８７】
［構成アプリケーションによりＦＷ更新指示を受けた際のアップデーターの処理］
次に、ＭＦＰ１１１で、構成アプリケーション５５１からの呼び出しに応じたアップデーター５０１によるＦＷ更新の処理について説明する。
【００８８】
図８は、ＭＦＰ１１１のアップデーター５０１が、ＩＦ部５１３を介してＦＷ更新の依頼を受け取った際の動作を示すフローチャートである。アップデーター５０１のメイン制御部５０２は、ＩＦ部５１３を介して、ＦＷ更新の要求を受信した際、以下の処理を実施する。
【００８９】
Ｓ８０１において、メイン制御部５０２は、ＩＦ部５１３を介して受信したＦＷ更新の要求パラメータに、ＦＷ管理ファイルのパス情報が指定されているか否かを判断する。Ｓ８０１において、ＦＷ更新の要求パラメータに、ＦＷ管理ファイルのパス情報が指定されていれば、メイン制御部５０２は、Ｓ８０２に進む。
【００９０】
Ｓ８０２において、メイン制御部５０２は、ＦＷ更新の要求パラメータで指定されたＦＷ管理ファイルのパス情報を基に、一時作業領域５９２から、ＦＷ管理ファイルを読み込む。Ｓ８０３において、メイン制御部５０２は、読み込んだＦＷ管理ファイルの情報を基に、ＭＦＰ１１１の各モジュールのＦＷ更新をバージョン条件なしで行う。メイン制御部５０２は、更新部５１１にバージョン条件なしでのＦＷ更新の指示を行うことにより、ＭＦＰ１１１の各モジュールのＦＷをバージョン条件なしで更新する。メイン制御部５０２は、更新部５１１に、読み込んだＦＷ管理ファイルの情報を、バージョン条件なしでのＦＷ更新処理のパラメータとして渡す。
【００９１】
ＦＷ管理ファイルの情報と共にバージョン条件なしでのＦＷの更新指示を受けた更新部５１１は、以下のように、ＭＦＰ１１１の各モジュールのＦＷ更新を行う。
１．ＭＦＰ１１１のＦＷコンポーネントの現在の構成情報を、現在ＦＷ情報保持領域５２１から取得する。
２．ＦＷ管理ファイルのＦＷコンポーネント情報のタイプ名と一致するタイプ名を持つ現在ＦＷのＦＷコンポーネントを更新対象としてリストアップする。
３．更新対象としてリストアップしたＦＷコンポーネントのファイル名の情報をＦＷ管理ファイルから取得する。
４．取得したファイル名のファイルの実体を、一時作業領域５９２から取得する。ファイルの実体は、前記図７（ｂ）の構成アプリケーション５５１によるフローチャートＳ７５５、または、Ｓ７６６の処理で一時作業領域５９２に格納されている。
５．一時作業領域５９２から取得したファイルで、ＭＦＰ１１１の各モジュールのＦＷコンポーネントを置き換える。尚、ＦＷコンポーネントのファイルの置き換えの際、ＦＷコンポーネントの現在のバージョン情報に関する比較は行わない。
６．ＦＷコンポーネントのファイル置き換えによるＦＷの更新が正常終了、または、エラー終了したことを、個々のＦＷコンポーネント単位で、メイン制御部５０２に通知する。
【００９２】
Ｓ８０３の実行後、本処理を終了する。
【００９３】
一方、Ｓ８０１において、ＦＷ更新の要求パラメータにＦＷ管理ファイルのパス情報が指定されていなければ、メイン制御部５０２は、前記図６（ａ）のＳ６０３から処理を開始する。
【００９４】
上記の通り、ＦＷ初期構成セクションにＦＷ自動構成を実行することを示す設定がある場合、構成アプリケーション５５１により呼び出されたアップデーター５０１のＦＷ更新は、非常に単純な処理で行われる。すなわち、配信サーバーとの間の頻繁なリクエスト、レスポンスは必要なく、また、サービスエンジニアなどによる操作部３０３でのＵＩ操作の手間も必要ない。そのため、サービスエンジニアの力量が低い場合であっても、初期設置時に適切にＦＷの更新を行うことが出来る。また、サービスエンジニアによる初期設置時のＦＷ適用ミスを抑制することが出来る。
【００９５】
また、初期設置時においても、配信サーバーから受け取った適用可能なＦＷのリストの中から、適宜、ＦＷを選択して適用することが出来る。そのため、サービスエンジニアに力量を考慮して、ＦＷ自動構成を実行することを示す事前設定を省略したうえで、初期設置の作業も行うことが出来る。
【００９６】
［配信システムのソフトウエア構成］
図９は、本発明の配信システム１０１のソフトウェアモジュールの構成を示すブロック図である。
【００９７】
図９において、メイン制御部９０２は、配信システム１０１の配信サーバー上のモジュールであって、配信システム１０１における中心的な処理部である。図９に示す他のソフトウェアモジュールと連携して、ＦＷ登録、および、ＦＷ配信に関わる各種処理を実行する。図９で示す各保持領域については、配信システム１０１内の配信サーバー、そのほかのストレージサーバーのいずれかにより提供される。
【００９８】
例えば、前述のクライアント端末１２２、ＭＦＰ１１１からの以下のリクエストを処理する。
【００９９】
（１）クライアント端末１２２の初期設定用アプリケーションからの以下のリクエスト
・認証リクエスト
・デバイス商品名検索のリクエスト
・ＦＷグループバージョン検索のリクエスト
・ＦＷグループおよびＦＷ管理ファイルの一括ダウンロードリクエスト
・ＦＷグループ存在確認のリクエスト
（２）ＭＦＰ１１１のアップデーター５０１からの以下のリクエスト
・適用可能ＦＷリクエスト
・ＦＷ情報取得リクエスト
・ＦＷダウンロードリクエスト
・ＦＷ更新結果通知リクエスト
（３）ＭＦＰ１１１の構成アプリケーション５５１からの以下のリクエスト
・ＦＷグループおよびＦＷ管理ファイルの一括ダウンロードリクエスト
通信部９０３は、ＮＩＣ２０７を介して、ＭＦＰデバイス１１１、クライアント端末１２１のＷｅｂブラウザ、および、クライアント端末１２２の初期設定用アプリケーションとＨＴＴＰによる通信を行う。９０４は、クライアントＵＩ生成部であり、クライアント端末１２１のＷｅｂブラウザからのリクエストに応じて、ＵＩ表示用のＨＴＭＬデータを生成する。ＦＷ登録ＵＩなどを生成する。メイン制御部９０２は、通信部９０３を介して、クライアント端末１２１のＷｅｂブラウザからリクエストを受けた際、リクエストの内容に応じて、クライアントＵＩ生成部９０４を用いてＵＩを生成する。
【０１００】
９３２は、ＦＷ情報保持領域である。ＦＷ情報保持領域９３２には、ＦＷ登録ＵＩで登録されたＦＷグループに関するＦＷ種別、ＦＷグループ名、ＦＷグループバージョン、デバイス商品名、アップデート対象バージョン、ＦＷ公開地域コードの情報が保持される。
【０１０１】
メイン制御部９０２は、通信部９０３を介して、クライアント端末１２１のＷｅｂブラウザからＦＷグループ名、ＦＷグループバージョン、デバイス商品名、アップデート対象バージョンの検索リクエストを受けた際、該当の情報をＦＷ情報保持領域９３２から検索して、クライアント端末１２１に返す。
【０１０２】
また、メイン制御部９０２は、通信部９０３を介して、クライアント端末１２１のＷｅｂブラウザからＦＷ登録リクエストを受けた際、リクエストパラメータに設定されたＦＷ種別、ＦＷグループ名、ＦＷグループバージョン、デバイス商品名、アップデート対象バージョン、ＦＷ公開地域コードの情報をＦＷ情報保持領域９３２に格納する。更に、また、メイン制御部９０２は、ＦＷ登録リクエストのリクエストパラメータに含まれるＦＷ管理ファイルのコンテンツを分解し、ＦＷコンポーネント情報として、同じくＦＷ情報保持領域９３２に格納する。
【０１０３】
９３４は、ＦＷ実体保持領域である。ＦＷ実体保持領域９３４には、ＦＷ登録ＵＩからアップロードされたＦＷコンポーネントのコンテンツがファイル単位で保持される。メイン制御部９０２は、通信部９０３を介して、クライアント端末１２１のＷｅｂブラウザからＦＷ登録リクエストを受けた際、リクエストパラメータに含まれる各ＦＷコンポーネントのコンテンツをファイル化して、ＦＷ実体保持領域９３４に格納する。メイン制御部９０２は、リクエストパラメータに含まれるＦＷコンポーネントがアーカイブファイルのデータであった場合、アーカイブデータを展開し、個々のＦＷコンポーネントのコンテンツにファイル化して、ＦＷ実体保持領域９３４に格納する。
【０１０４】
９３１は、デバイス商品情報保持領域である。デバイス商品情報保持領域９３１には、デバイス商品名と、それに対応するデバイスシリアル番号の範囲（以下、「機番データバンド」と呼ぶ）、および、デバイス商品種別が保持される。メイン制御部９０２は、通信部９０３を介して、クライアント端末１２１のＷｅｂブラウザからデバイス商品情報登録リクエストを受けた際、リクエストパラメータに設定されたデバイス商品種別、デバイス商品情報名、機番データバンドの情報をデバイス商品情報保持領域９３１に格納する。
【０１０５】
９３５は、ＦＷ更新結果保持領域である。ＦＷ更新結果保持領域９３５には、ＭＦＰ１１１でのＦＷ更新処理結果の成功／失敗と、更新後の現在ＦＷグループの情報が、デバイスシリアル番号と紐付けて保持される。ＭＦＰ１１１のアップデーター５０１からのＦＷ更新結果通知リクエストにより受信した情報が保持される。
【０１０６】
９３３は、アカウント情報保持領域である。アカウント情報保持領域９３３には、配信サーバーを利用可能なユーザーアカウントの情報が登録されている。ユーザーアカウントの情報とは、ユーザーＩＤ、パスワード、該当のユーザーが属する販売地域の販売地域コードの情報である。認証リクエストを受信した際、メイン制御部９０２は、アカウント情報保持領域９３３の情報に基づいて、ユーザーアカウントの認証を行う。９３６は、認証ＩＤ保持領域である。認証ＩＤ保持領域９３６には、ユーザーアカウントの認証に成功した際に、メイン制御部９０２が発行する認証ＩＤが保持される。認証ＩＤには、認証に成功したユーザーアカウントの情報が紐付けられて保持される。また、認証ＩＤは、一定期間有効な情報として、メイン制御部９０２により保持される。
【０１０７】
デバイス商品情報保持領域９３１、ＦＷ情報保持領域９３２、アカウント情報保持領域９３３、ＦＷ実体保持領域９３４、ＦＷ更新結果保持領域９３５、認証ＩＤ保持領域９３６は、配信システム１０１のハードディスク２１０上に確保された永続的なデータを保存するための領域であり、メイン制御部９０２よって管理される。デバイス商品情報保持領域９３１、ＦＷ情報保持領域９３２、アカウント情報保持領域９３３、ＦＷ更新結果保持領域９３５、認証ＩＤ保持領域９３６は、ＤＢテーブルとして構築され、ＦＷ実体保持領域９３４は、ファイルシステム上のディレクトリとして構築される。
【０１０８】
［配信サーバーのＦＷ情報保持領域のデータ構造］
図１０は、配信システム１０１のＦＷ情報保持領域９３２のデータ構造を示す模式図である。ＦＷ情報保持領域９３２は、図１０に示すように、２つのテーブルから構成される。図１０（ａ）の１００１は、ＦＷグループ情報テーブルである。図１０（ｂ）の１００２は、ＦＷコンポーネント情報テーブルである。
【０１０９】
図１０（ａ）において、ＦＷグループ情報テーブル１００１は、主に、ＦＷ種別、ＦＷグループ名、ＦＷグループバージョン、デバイス商品名、アップデート対象バージョンの情報を保持する。
【０１１０】
ＦＷグループ情報テーブル１００１において、１０１１は、ＦＷグループＩＤの値を格納する列である。ＦＷグループＩＤ列１０１１に格納されるＦＷグループＩＤは、メイン制御部９０２が新規ＦＷグループを登録する際、ＦＷグループ毎に一意に付与する値である。
【０１１１】
１０１２は、ＦＷ種別を格納する列である。値として、１または２が格納される。値１は、ＦＷ種別がＭＦＰであることを示す。値２は、ＦＷ種別がアクセサリーであることを示す。１０１３は、ＦＷグループ名の値を格納する列である。ＦＷグループ名は、ＦＷグループバージョンが異なる前提で重複する。１０１４は、ＦＷグループバージョンの値を格納する列である。
【０１１２】
ＦＷグループ名列１０１３とＦＷグループバージョン列１０１４の組み合わせは、ＦＷグループ情報テーブルで一意であり、ＦＷグループ情報テーブルの主キーとなる。
【０１１３】
１０１５は、デバイス商品名の値を格納する列である。カンマ区切りで複数のデバイス商品名の値が保持される。一つのＦＷグループに複数のデバイス商品名が対応付け可能なデータ構造となっている。
【０１１４】
１０１６は、アップデート対象バージョンの値を格納する列である。セミコロン区切りでアップデート対象のＦＷグループが複数保持される。また、セミコロンで区切られたＦＷグループ毎に、カンマ区切りで複数のアップデート対象バージョンが保持される。例えば、「ＭＦＰ  ＡＢＣ１２３  Ｓｅｒｉｅｓ、１．０、１．１、１．２、１．３；ＭＦＰ  ＤＥＦ４５６  Ｓｅｒｉｅｓ、１．０、１．１」の値を該当の列に持つＦＷグループの場合、次のようになる。ＦＷグループ「ＭＦＰ  ＡＢＣ１２３  Ｓｅｒｉｅｓ」のバージョン「１．０」、「１．１」、「１．２」、「１．３」からアップデート可能である。また、ＦＷグループ「ＭＦＰ  ＤＥＦ４５６  Ｓｅｒｉｅｓ」のバージョン「１．０」、「１．１」からアップデート可能である。
【０１１５】
１０１７は、登録日の値を格納する列である。メイン制御部９０２が該当の行のＦＷグループを登録した日時を設定する。
【０１１６】
１０１８は、ＦＷ公開地域コードの値を格納する列である。ＦＷ公開地域コードとは、該当のＦＷグループを公開するＭＦＰの販売地域を示す販売地域コードのことである。「ＪＰ」「ＵＳ」など、本発明のＦＷ更新システムであらかじめ決められた販売地域コードの識別子が決められている。ＦＷ公開地域コード列１０１８には、カンマ区切りで複数の販売地域コードの値が保持される。
【０１１７】
図１０（ｂ）において、ＦＷコンポーネント情報テーブル１００２は、主に、ＦＷ管理ファイルのデータに基づく、ＦＷコンポーネント情報を保持する。
【０１１８】
ＦＷコンポーネント情報テーブル１００２において、１０５１は、ＦＷコンポーネントＩＤの値を格納する列である。ＦＷコンポーネントＩＤは、メイン制御部９０２が新規ＦＷコンポーネントを登録する際、ＦＷコンポーネント毎に一意に付与する値である。１０５２は、ＦＷグループＩＤの値を格納する列である。ＦＷコンポーネントが属するＦＷグループのＦＷグループＩＤが格納される。ＦＷグループ情報テーブル１００１のＦＷグループＩＤ列１０１１に格納される値と同一の値が格納される。
【０１１９】
１０５３は、ＦＷのタイプ名の値を格納する列である。タイプ名は、ＦＷコンポーネントを識別する略称である。タイプ名は、ＦＷグループ内で一意である。メイン制御部９０２が、ＦＷグループ間でコンポーネント毎のバージョンを比較する際には、タイプ名毎に、バージョンの比較を行う。１０５４は、ＦＷコンポーネントのバージョンの値を格納する列である。ＦＷコンポーネントのバージョンは、大小比較が可能なよう、数値で設定される。
【０１２０】
１０５５は、ＦＷコンポーネントのファイル名の値を格納する列である。ＦＷコンポーネントの実体となるＦＷコンポーネントファイルは、ＦＷ実体保持領域９３４に保持される。ＦＷコンポーネントファイルは、コンポーネント毎、および、コンポーネントのバージョン毎に一意な名前が付与される。各ＦＷコンポーネントファイルは、メイン制御部９０２よって、ＦＷ実体保持領域９３４において管理される。
【０１２１】
［配信サーバーのデバイス商品情報保持領域のデータ構造］
図１１は、配信システム１０１のデバイス商品情報保持領域９３１のデータ構造を示す模式図である。デバイス商品情報保持領域９３１は、図１１に示すように、デバイス商品情報テーブル１１０１から構成される。デバイス商品情報テーブル１１０１は、デバイス商品種別、デバイス商品情報名、機番データバンドの情報を保持する。
【０１２２】
図１１において、１１１１は、デバイス商品ＩＤの値を格納する列である。デバイス商品ＩＤ列１１１１に格納されるデバイス商品ＩＤは、メイン制御部９０２が新規デバイス商品を登録する際、デバイス商品毎に一意に付与する値である。１１１２は、デバイス商品種別の値を格納する列である。値として、１または２が格納される。値１は、デバイス商品種別がＭＦＰであることを示す。値２は、デバイス商品種別がアクセサリーであることを示す。１１１３は、デバイス商品情報名の値を格納する列である。１１１４は、機番データバンドを格納する列である。カンマ区切りで機番データバンドの型式、開始値、終了値の３つの値を格納する。例えば、型式が「ＭＦＰＡＡＡ」、開始値が「０００００」、終了値が「４９９９９」の場合、機番データバンドは、「ＭＦＰＡＡＡ０００００〜ＭＦＰＡＡＡ４９９９９」となる。機番データバンドの範囲内のデバイスシリアル番号を持つデバイスは、該当のデバイス商品情報のデバイス商品であることを表す。１１１５は、登録日の値を格納する列である。メイン制御部９０２が該当の行のデバイス商品を登録した日時を設定する。
【０１２３】
［配信システム１０１の一括ダウンロードリクエスト受信時の処理］
図１２は、配信システム１０１の一括ダウンロードリクエスト受信時の動作を示すフローチャートである。配信システム１０１は、一括ダウンロードリクエストを、クライアント端末１２２の初期設定用アプリケーション、または、ＭＦＰ１１１の構成アプリケーション５５１から受け取ることになる。配信システム１０１のメイン制御部９０２は、通信部９０３を介して、一括ダウンロードリクエストを受けた際、以下を実行する。
【０１２４】
Ｓ１２０１において、メイン制御部９０２は、リクエストパラメータに認証用の識別情報である認証ＩＤが含まれているか否かを判定する。Ｓ１２０１において、認証ＩＤが含まれている場合、Ｓ１２０２に進む。一方、Ｓ１２０１において、認証ＩＤが含まれていない場合は、Ｓ１２５２に進む。
【０１２５】
Ｓ１２０２において、メイン制御部９０２は、リクエストパラメータに認証ＩＤが含まれている場合、クライアント端末１２２の初期設定用アプリケーションからの一括ダウンロードリクエストであると判断する。Ｓ１２５２において、メイン制御部９０２は、リクエストパラメータに認証ＩＤが含まれていない場合、ＭＦＰ１１１の構成アプリケーション５５１からの一括ダウンロードリクエストであると判断する。メイン制御部９０２は、Ｓ１２０２、Ｓ１２５２での判断後、それぞれ、Ｓ１２０３、Ｓ１２５３に進む。
【０１２６】
Ｓ１２０３において、メイン制御部９０２は、認証処理として、リクエストパラメータに含まれている認証ＩＤが適切な認証ＩＤか否かを判定する。適切な認証ＩＤか否かの判定は、認証ＩＤ保持領域９３６に、該当の認証ＩＤが保持されているか否かで判定する。Ｓ１２０３において、リクエストパラメータに含まれている認証ＩＤが適切であると判定した場合、認証に成功したとして、メイン制御部９０２は、Ｓ１２０４に進む。Ｓ１２０３において、リクエストパラメータに含まれている認証ＩＤが適切な認証ＩＤではないと判定した場合、メイン制御部９０２は、Ｓ１２２１に進む。Ｓ１２２１において、メイン制御部９０２は、一括ダウンロードリクエストのレスポンスとして、認証エラーを返して、処理を終了する。
【０１２７】
Ｓ１２０４において、メイン制御部９０２は、認証ＩＤから販売地域コードを特定する。販売地域コードの特定は、認証ＩＤ保持領域９３６から該当の認証ＩＤに紐付けられたユーザーアカウントの情報を取得し、そのユーザーアカウントが属する販売地域の販売地域コードの情報をアカウント情報保持領域９３３から取得することによって行う。
【０１２８】
Ｓ１２０５において、メイン制御部９０２は、リクエストパラメータに、デバイスシリアル番号の情報が含まれているか否かを判定する。Ｓ１２０５において、リクエストパラメータにデバイスシリアル番号の情報が含まれていると判定した場合、メイン制御部９０２は、Ｓ１２０６に進む。Ｓ１２０６において、メイン制御部９０２は、リクエストパラメータに含まれるデバイスシリアル番号からデバイス商品名を特定する。デバイス商品名の特定は、デバイス商品情報保持領域９３１のデバイス商品情報テーブル１１０１から、機番データバンド列１１１４の値の機番データバンド範囲に、該当のデバイスシリアル番号を包含する行を検索することによって行う。該当のデバイスシリアル番号を包含する行のデバイス商品名列１１１３の値が特定されるデバイス商品名である。一方、Ｓ１２０５において、リクエストパラメータにデバイスシリアル番号の情報が含まれていないと判定した場合、メイン制御部９０２は、Ｓ１２３１に進む。
【０１２９】
Ｓ１２３１において、メイン制御部９０２は、リクエストパラメータにデバイス商品名の情報が含まれているか否かを判定する。Ｓ１２３１において、リクエストパラメータにデバイス商品名の情報が含まれていると判定した場合、メイン制御部９０２は、Ｓ１２０７に進む。一方、Ｓ１２３１において、リクエストパラメータにデバイス商品名の情報が含まれていないと判定した場合、メイン制御部９０２は、Ｓ１２３２に進む。
【０１３０】
Ｓ１２３２において、メイン制御部９０２は、一括ダウンロードリクエストのレスポンスとして、パラメータ不正のエラーを返して、処理を終了する。
【０１３１】
Ｓ１２０７において、メイン制御部９０２は、リクエストパラメータにＦＷグループバージョンの情報が含まれているか否かを判定する。Ｓ１２０７において、リクエストパラメータにＦＷグループバージョンの情報が含まれていると判定した場合、メイン制御部９０２は、Ｓ１２０８に進む。
【０１３２】
Ｓ１２０８において、メイン制御部９０２は、Ｓ１２０６またはＳ１２３１で特定したデバイス商品名と、リクエストパラメータに含まれるＦＷグループバージョン、および、Ｓ１２０４または後述のＳ１２５４で特定した販売地域コードの情報からＦＷグループを特定する。ＦＷグループの特定は、ＦＷグループ情報テーブル１００１のデバイス商品名列１０１５、ＦＷグループバージョン列１０１４、および、ＦＷ公開地域コード列１０１８に、該当のデバイス商品名と、該当のＦＷグループバージョン、および、該当の販売地域コードをそれぞれ持つ行を検索することによって行う。該当のデバイス商品名、該当のＦＷグループバージョン、および、該当の販売地域コードを持つ行のＦＷグループＩＤ列１０１１の値が特定されたＦＷグループとなる。一方、Ｓ１２０７において、リクエストパラメータにＦＷグループバージョンの情報が含まれていないと判定した場合、メイン制御部９０２は、Ｓ１２４１に進む。
【０１３３】
Ｓ１２４１において、メイン制御部９０２は、リクエストパラメータにＦＷグループバージョンの情報が含まれていない場合、Ｓ１２０６またはＳ１２３１で特定したデバイス商品名のデバイスに適用可能な最新のＦＷグループを特定する。デバイス商品名のデバイスに適用可能な最新のＦＷグループの特定は、ＦＷグループ情報テーブル１００１から、Ｓ１２０６またはＳ１２３１で特定したデバイス商品名と、Ｓ１２０４または後述のＳ１２５４で特定した販売地域コードを持つ行を検索することによって行う。該当のデバイス商品名と、該当の販売地域コードをＦＷグループ情報テーブル１００１のデバイス商品名列１０１５、ＦＷ公開地域コード列１０１８に持つ行の中で、ＦＷグループバージョン列１０１４の値が最も高いものが最新のＦＷグループである。該当の行のＦＷグループＩＤ列１０１１の値を、Ｓ１２０６またはＳ１２３１で特定したデバイス商品名のデバイスに適用可能な最新のＦＷグループとして特定する。Ｓ１２４１の実行後、メイン制御部９０２は、Ｓ１２０９に進む。
【０１３４】
Ｓ１２０９において、メイン制御部９０２は、ＦＷグループの特定に成功したか否かを判定する。必要な条件に該当する行が、ＦＷグループ情報テーブル１００１に見当たらない場合、ＦＷグループの特定に失敗となる。Ｓ１２０９において、ＦＷグループの特定に成功した場合、メイン制御部９０２は、Ｓ１２１０に進む。Ｓ１２０９において、ＦＷグループの特定に失敗した場合、メイン制御部９０２は、Ｓ１２６１に進む。Ｓ１２６１において、メイン制御部９０２は、一括ダウンロードリクエストのレスポンスとして、ＦＷグループ未検出エラーを返して、処理を終了する。尚、リクエストパラメータにデバイス地域コードが設定されている場合、そのデバイス地域コードが不正の場合にも、ＦＷグループ未検出エラーとなる。
【０１３５】
Ｓ１２１０において、メイン制御部９０２は、Ｓ１２０８またはＳ１２４１で特定したＦＷグループに関し、そのＦＷグループを構成するＦＷコンポーネントの情報をリストアップする。ＦＷグループを構成するＦＷコンポーネントの情報は、ＦＷコンポーネント情報テーブル１００２から取得し、リストアップする。メイン制御部９０２は、ＦＷコンポーネント情報テーブル１００２において、ＦＷグループＩＤ列１０５２に、Ｓ１２０８またはＳ１２４１で特定したＦＷグループＩＤ値を持つ行を検索する。検索にヒットした行のＦＷコンポーネントＩＤ列１０５１の値が、ＦＷグループを構成するＦＷコンポーネントの情報である。
【０１３６】
Ｓ１２１１において、メイン制御部９０２は、ＦＷグループを構成するＦＷコンポーネントのファイルをアーカイブし、ＦＷグループのアーカイブファイルを作成する。メイン制御部９０２は、ＦＷグループのアーカイブファイルの作成は、以下のように行う。すなわち、Ｓ１２１０でリストアップしたＦＷグループを構成するＦＷコンポーネントに関し、ＦＷコンポーネント情報テーブル１００２のＦＷコンポーネントファイル名列１０５５の値を参照する。そのファイル名に合致するＦＷコンポーネントファイルを、ＦＷ実体保持領域９３４から収集する。その収集したＦＷコンポーネントファイルを、一つのＦＷグループのファイルとして、アーカイブしていく。
【０１３７】
Ｓ１２１２において、メイン制御部９０２は、ＦＷグループのＦＷ管理ファイルを生成する。ＦＷ管理ファイルは、前述の通り、ＦＷ登録リクエストの際にリクエストパラメータで指定されるファイルである。その情報は、ＦＷ登録の際に、配信システム１０１により、ＦＷグループ情報テーブル１００１、および、ＦＷコンポーネント情報テーブル１００２に分解されて保持されている。メイン制御部９０２は、それらの情報を該当のＦＷグループに関して再構成することによって、そのＦＷグループのＦＷ登録の際に受け取ったＦＷ管理ファイルを再生する。
【０１３８】
Ｓ１２１３において、メイン制御部９０２は、Ｓ１２１１で作成したアーカイブファイルおよび、Ｓ１２１２で生成したＦＷ管理ファイルをレスポンスパラメータに設定して、リクエスト先にレスポンスを返す。その後、配信システム１０１は、処理を終了する。前述した通り、ここでの処理で、初期設定用アプリケーションに対して応答されたＦＷ管理ファイルなどの情報は、ＵＳＢメモリ上の初期設置用の構成ファイルとして、書き込まれることになる。
【０１３９】
Ｓ１２５３において、メイン制御部９０２は、リクエストパラメータに、デバイス地域コードの情報、および、デバイスシリアル番号の情報が含まれているか否かを判定する。Ｓ１２５３において、リクエストパラメータにデバイス地域コードの情報、および、デバイスシリアル番号の情報が含まれていると判定した場合、メイン制御部９０２は、Ｓ１２５４に進む。Ｓ１２５４において、メイン制御部９０２は、リクエストパラメータに含まれるデバイス地域コードの値を、デバイスの販売地域コードとして特定する。その後、メイン制御部９０２は、Ｓ１２０６に進む。一方、Ｓ１２５３において、リクエストパラメータにデバイス地域コードの情報、または、デバイスシリアル番号の情報が含まれていないと判定した場合、メイン制御部９０２は、Ｓ１２３２に進む。すなわち、パラメータ不正のエラーをレスポンスとして返して、処理を終了する。
【０１４０】
上記の通り、配信システム１０１のメイン制御部９０２は、一括ダウンロードリクエストのリクエストパラメータに認証ＩＤが含まれているか否かにより、リクエスト元が、クライアント端末と、ＦＷの適用対象となるネットワーク機器（ＭＦＰ）とのどちらかであるかを判断する。配信システム１０１のメイン制御部９０２は、この判断結果を、例えば、一括ダウンロードリクエストのリクエスト先としてレポート情報に出力したり、実行ログファイルに書き込んだりする。レポート情報は、例えば、一括ダウンロードリクエストのクライアント種別の集計に利用される。また、実行ログファイルは、例えば、一括ダウンロードに伴うサーバーまたはクライアント側のトラブル発生時に、障害状況の分析のために利用される。
【０１４１】
（他の実施例）
本発明は、上述した実施形態を適宜組み合わせることにより構成された装置あるいはシステムやその方法も含まれるものとする。
【０１４２】
ここで、本発明は、上述した実施形態の機能を実現する１以上のソフトウェア（プログラム）を実行する主体となる装置あるいはシステムである。また、その装置あるいはシステムで実行される上述した実施形態を実現するための方法も本発明の一つである。また、そのプログラムは、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給され、そのシステム或いは装置の１以上のコンピュータ（ＣＰＵやＭＰＵ等）によりそのプログラムが読み出され、実行される。つまり、本発明の一つとして、さらにそのプログラム自体、あるいは該プログラムを格納したコンピュータにより読み取り可能な各種記憶媒体も含むものとする。また、上述した実施形態の機能を実現する回路（例えば、ＡＳＩＣ）によっても、本発明は実現可能である。
【符号の説明】
【０１４３】
１０１  配信システム
１１１  ＭＦＰ
１２２  クライアント端末
５０１  アップデーター
５５１  構成アプリケーション
【図１】
2015230709.tif 000003
【図２】
2015230709.tif 000004
【図３】
2015230709.tif 000005
【図４】
2015230709.tif 000006
【図５】
2015230709.tif 000007
【図６】
2015230709.tif 000008
【図７】
2015230709.tif 000009
【図８】
2015230709.tif 000010
【図９】
2015230709.tif 000011
【図１０】
2015230709.tif 000012
【図１１】
2015230709.tif 000013
【図１２】
2015230709.tif 000014