以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における情報処理システムの構成例を示す図である。図1の情報処理システム1において、一台以上の画像形成装置10は、LAN(Local Area Network)又はインターネット等のネットワーク(有線又は無線の別は問わない。)を介して、整合性判定装置20及びWebサーバ装置30等と通信可能に接続されている。
画像形成装置10は、印刷、スキャン、コピー、及びFAX送受信等のうちの二以上の機能を一台の筐体によって実現する複合機である。但し、いずれか一つの機能を単体で有する機器が画像形成装置10として用いられてもよい。本実施の形態において、画像形成装置10は、操作パネル(後述される、操作パネル15)に、Webページの表示等を実行させるプログラムとしてWebブラウザを有する。Webブラウザは、画像形成装置10用に機能拡張が図られている。そこで、以下、画像形成装置10の固有の機能に合わせて機能拡張が図られているWebブラウザを「機器ブラウザ161」という。機器ブラウザ161は、例えば、印刷、スキャン、又はFAX送信等、画像形成処理の実行命令を示すスクリプトについて、処理制御が可能である。すなわち、機器ブラウザ161は、それぞれの画像形成装置10に固有な機能の実行命令を示すスクリプトを解釈可能である。画像形成装置10に固有な機能の実行命令を示すスクリプトは、標準のスクリプト(例えば、Java(登録商標)スクリプト等)には含まれていない。そこで、特に、画像形成装置10に固有な機能の実行命令を示すスクリプトに限定して言及する場合、「拡張スクリプト」という。
Webサーバ装置30は、画像形成装置10に対してWebページを提供するコンピュータである。本実施の形態において、Webページとは、HTML(HyperText Markup Language)等、所定の形式に基づいて定義された画面情報や、当該画面情報に基づいて表示される画面に対する操作等に応じて発行される処理命令を示すスクリプト等が定義又は記述されているデータをいう。各Webページには、相互に異なるURL(Uniform Resource Locator)が割り当てられている。なお、情報処理システム1は、複数のWebサーバ装置30を含んでもよい。
整合性判定装置20は、Webサーバ装置30から画像形成装置10に提供された(ダウンロードされた)Webページについて、当該画像形成装置10との整合性の有無の判定等を実行するコンピュータである。Webページと画像形成装置10との整合性とは、当該Webページを当該画像形成装置10が処理可能であることをいう。より詳しくは、Webページと画像形成装置10との整合性とは、当該Webページに含まれている拡張スクリプトが示す命令(処理命令又は制御命令)に応じた処理を、当該画像形成装置10が実行可能であることをいう。Webページに含まれている拡張スクリプトが示す命令に応じた処理を、画像形成装置10が実行可能であるためには、当該処理を画像形成装置10に実行させるプログラムがインストールされている必要が有る。又は、当該画像形成装置10のパラメータに対して、当該処理を画像形成装置10において実行可能となるような値が設定されている必要が有る。なお、情報処理システム1は、複数の整合性判定装置20を含んでもよい。
なお、本実施の形態では、便宜上、Webサーバ装置30及び整合性判定装置20は、別個のコンピュータであるが、各装置の機能が一つのコンピュータにおいて実現されてもよい。または、Webサーバ装置30及び整合性判定装置20のそれぞれは、分散された複数のコンピュータによって構成されてもよい。
図2は、本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。図2において、画像形成装置10は、コントローラ11、スキャナ12、プリンタ13、モデム14、操作パネル15、ネットワークインタフェース16、及びSDカードスロット17等のハードウェアを有する。
コントローラ11は、CPU111、RAM112、ROM113、HDD114、及びNVRAM115等を有する。ROM113には、各種のプログラムやプログラムによって利用されるデータ等が記憶されている。RAM112は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。CPU111は、RAM112にロードされたプログラムを処理することにより、各種の機能を実現する。HDD114には、プログラムやプログラムが利用する各種のデータ等が記憶される。NVRAM115には、各種の設定情報等が記憶される。
スキャナ12は、原稿より画像データを読み取るためのハードウェア(画像読取手段)である。プリンタ13は、印刷データを印刷用紙に印刷するためのハードウェア(印刷手段)である。モデム14は、電話回線に接続するためのハードウェアであり、FAX通信による画像データの送受信を実行するために用いられる。ネットワークインタフェース16は、LAN等のネットワーク(有線又は無線の別は問わない。)に接続するためのハードウェアである。SDカードスロット17は、SDカード80に記憶されたプログラムを読み取るために利用される。すなわち、画像形成装置10では、ROM113に記憶されたプログラムだけでなく、SDカード80に記憶されたプログラムもRAM112にロードされ、実行されうる。なお、他の記録媒体(例えば、CD−ROM又はUSB(Universal Serial Bus)メモリ等)によってSDカード80が代替されてもよい。すなわち、SDカード80の位置付けに相当する記録媒体の種類は、所定のものに限定されない。この場合、SDカードスロット17は、記録媒体の種類に応じたハードウェアによって代替されればよい。
操作パネル15は、画像形成装置10に対するユーザインタフェースを提供する装置である。本実施の形態において、操作パネル15は、タブレット型端末によって実現される。操作パネル15は、例えば、画像形成装置10の所定の位置に固定されて設置されてもよいし、画像形成装置10から取り外し可能(分離可能)であってもよい。
図2において、操作パネル15は、CPU151、メモリ152、補助記憶装置153、及びタッチパネル154等を有する。
補助記憶装置153は、操作パネル15にインストールされたプログラム等を記憶する。すなわち、操作パネル15には、コントローラ11とは別に、プログラムをインストール可能である。メモリ152は、プログラムの起動指示があった場合に、補助記憶装置153からプログラムを読み出して記憶する。CPU151は、メモリ152に記憶されたプログラムに係る処理を実行する。タッチパネル154は、入力機能と表示機能との双方を備えた電子部品であり、情報の表示や、ユーザからの入力の受け付け等を行う。
操作パネル15とコントローラ11との間には、例えば、近距離無線通信、有線LAN、又はUSB(Universal Serial Bus)等によって通信経路が確保される。なお、図2において、操作パネル15を除く部分を、以下「機器本体」という。
図3は、本発明の実施の形態における整合性判定装置のハードウェア構成例を示す図である。図3の整合性判定装置20は、それぞれバスBで相互に接続されているドライブ装置200、補助記憶装置202、メモリ装置203、CPU204、及びインタフェース装置205等を有する。
整合性判定装置20での処理を実現するプログラムは、CD−ROM等の記録媒体201によって提供される。プログラムを記憶した記録媒体201がドライブ装置200にセットされると、プログラムが記録媒体201からドライブ装置200を介して補助記憶装置202にインストールされる。但し、プログラムのインストールは必ずしも記録媒体201より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置202は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置203は、プログラムの起動指示があった場合に、補助記憶装置202からプログラムを読み出して格納する。CPU204は、メモリ装置203に格納されたプログラムに従って整合性判定装置20に係る機能を実行する。インタフェース装置205は、ネットワークに接続するためのインタフェースとして用いられる。
なお、Webサーバ装置30も、図3と同様のハードウェアを有してもよい。
図4は、本発明の実施の形態における画像形成装置及び整合性判定装置の機能構成例を示す図である。
図4において、操作パネル15は、上述した機器ブラウザ161を有する。機器ブラウザ161は、ユーザによって入力されたURLに係るWebページを、Webサーバ装置30から取得(ダウンロード)する。機器ブラウザ161は、取得されたWebページに関する整合性の判定を、エージェント部121に要求する。当該Webページいついて、整合性が有ることが判定された場合、又は整合性が確保された場合、機器ブラウザ161は、Webページに含まれている画面情報に基づく画面を表示させる。また、機器ブラウザ161は、当該画面の表示に応じ、又は当該画面に対するユーザによる操作等に応じ、当該Webページに含まれているスクリプトに応じた処理を制御する。Webページに拡張スクリプトが含まれている場合、機器ブラウザ161は、当該拡張スクリプトに応じた処理の実行命令を、コントローラ11に送信する。なお、機器ブラウザ161は、操作パネル15にインストールされたプログラムが、CPU151に実行させる処理により実現される。
コントローラ11は、エージェント部121及び機器制御部122等を有する。これら各部は、コントローラ11にインストールされたプログラムが、CPU111に実行させる処理により実現される。コントローラ11は、また、履歴記憶部123を利用する。履歴記憶部123は、HDD114、又は画像形成装置10にネットワークを介して接続される記憶装置等を用いて実現可能である。
エージェント部121は、整合性判定装置20のエージェントとして機能する。図4において、エージェント部121は、照会部121a及び変更部121bを含む。照会部121aは、機器ブラウザ161からの要求に応じ、機器ブラウザ161によって取得されたWebページの整合性の有無を、整合性判定装置20に照会する。具体的には、照会部は、整合性の判定要求を、整合性判定装置20に送信する。当該判定要求に応じ、整合性判定装置20からは、整合性の有無を示す情報が返信される。整合性の有無を示す情報は、画像形成装置10の機器構成の変更の要否を示す情報であるとも言える。
整合性が無い場合、整合性を確保するために実行されるべき画像形成装置10の機器構成の変更の内容を示す情報(以下、「変更情報」という。)も整合性判定装置20から返信される。機器構成とは、例えば、画像形成装置10にインストールされているプログラムの構成、及び画像形成装置10の各パラメータ(各設定項目)に対する設定値の構成等をいう。本実施の形態において、インストールは、新たなプログラムのインストールのみならず、既存のプログラムのバージョンアップをも意味する。
なお、照会部121aが整合性判定装置20に送信する整合性の判定要求は、機器ブラウザ161によって取得されたWebページに含まれる拡張スクリプトに応じた処理を実行するための、画像形成装置10の機器構成の要否の照会(問い合わせ)の一例である。なお、機器構成の変更とは、例えば、画像形成装置10が有するパラメータに対する値の設定や、画像形成装置10に対するプログラムのインストール等である。また、画像形成装置10のハードウェア構成の変更が、機器構成の変更に含まれてもよい。
変更部121bは、照会部121aによる照会に応じて、整合性判定装置20から変更情報が返信された場合に、当該変更情報に基づいて、機器構成の変更処理を実行する。例えば、変更部121bは、新たなプログラムを画像形成装置10にインストールしたり、画像形成装置10のパラメータの値を変更したりする。
機器制御部122は、画像形成装置10の動作を制御する。機器制御部122は、例えば、アプリケーションプラットフォームや、当該アプリケーションプラットフォーム上で動作するアプリケーションプログラム等を含む。機器制御部122は、Webページからの要求に応じた処理も実行する。なお、変更部121bによるプログラムのインストールによって、機器制御部122の構成が変更される。
履歴記憶部123は、照会部121aによって照会された整合性の判定結果の履歴を記憶する。具体的には、履歴記憶部123は、整合性の判定ごとに、判定対象とされたWebページの識別情報(以下、「アプリID」)という。)と、整合性の判定時の画像形成装置10の機器構成を示す情報(以下、「機器情報」という。)と、判定結果と等を対応付けて記憶する。また、当初整合性が無かったが、機器構成の変更により整合性が確保された場合には、機器構成の変更後の機器情報が、アプリIDに対応付けられて履歴情報に記憶される。
整合性判定装置20は、整合性判定部21及びプログラム提供部22等を有する。これら各部は、整合性判定装置20にインストールされたプログラムが、整合性判定装置20のCPU204に実行させる処理により実現される。整合性判定装置20は、また、条件情報記憶部23及びプログラム記憶部24等を利用する。これら各記憶部は、補助記憶装置202、又は整合性判定装置20にネットワークを介して接続される記憶装置等を用いて実現可能である。
整合性判定部21は、照会部121aからの整合性の判定要求に応じ、当該判定要求の対象とされたWebページと画像形成装置10との整合性の有無を判定する。整合性判定部21は、判定結果等を含む応答を照会部121aに返信する。条件情報記憶部23は、Webページごとに、当該Webページを含まれる命令に応じた処理を実行するために必要な機器構成を示す情報(以下、「条件情報」という。)を記憶する。条件情報記憶部23は、整合性判定部21による整合性の有無の判定に利用される。
プログラム提供部22は、プログラムの取得要求(ダウンロード要求)に応じ、取得要求に係るプログラムを返信する。当該プログラムは、プログラム記憶部24より取得される。プログラム記憶部24は、例えば、プログラムの識別情報とバージョン情報とに関連付けて、プログラムの実体を記憶する。
以下、情報処理システム1において実行される処理手順について説明する。図5は、Webページの表示処理の処理手順の第一の例を説明するための図である。図5では、アクティビティ図の形式で、当該処理手順が示されている。また、図5において、ユーザによって操作対象とされている画像形成装置10を、以下「対象機器」という。
ステップS101において、ユーザによって、Webページの表示指示が操作パネル15に対して入力される。当該表示指示では、表示対象のWebページのURLが指定される。URLの指定は、当該URLが直接入力されることにより行われてもよいし、操作パネル15に表示されている画面上のボタン等の選択によって行われてもよい。
続いて、機器ブラウザ161は、指定されたURL宛に、Webページの取得要求を送信する(S102)。当該取得要求は、Webサーバ装置30によって受信される。Webサーバ装置30は、取得要求に係るURLに対応したWebページを生成し、当該Webページを機器ブラウザ161に返信する(S103)。なお、各Webページには、当該Webページの識別情報である、アプリID及びバージョン情報が記述されている。また、整合性の判定が必要とされるWebページには、整合性の判定が必要であることを示す情報(以下、「整合性判定フラグ」という。)が記述されている。
機器ブラウザ161は、Webページ(以下、「対象ページ」という。)を受信すると、対象ページに関する整合性の判定の要否を判定する(S104)。すなわち、対象ページに整合性判定フラグが含まれているか否かが判定される。整合性の判定が不要な場合、機器ブラウザ161は、対象ページに含まれている画面情報に基づいて、画面を表示させる(S121)。
整合性の判定が必要な場合、機器ブラウザ161は、対象ページのアプリID及びバージョン情報を含む、整合性の判定要求を照会部121aに送信する。照会部121aは、当該判定要求の受信に応じ、当該判定要求に含まれているアプリID及びバージョン情報と、対象機器の現時点の機器構成を示す機器情報とを含む、整合性の判定要求を、整合性判定装置20に送信する(S105)。
図6は、機器情報の構成例を示す図である。図6において、機器情報は、本体情報及び操作部情報を含む。本体情報は、機器本体の構成に関する情報である。操作部情報は、操作パネル15の構成に関する情報である。
本体情報は、機体番号、機種ID、操作部サイズ、オブション情報、メモリ空き容量、ストレージ空き容量、プログラム情報、及び設定情報等を含む。機体番号は、画像形成装置10の機体(個体)ごとの識別情報である。機種IDは、画像形成装置10の機種の識別情報である。オプション情報は、ICカードリーダ、フィニッシャ等、オプションとして追加的に設置される装置(ハードウェア)の設置状況を示す情報である。メモリ空き容量は、RAM112の空き容量である。ストレージ空き容量は、HDD114の空き容量である。プログラム情報は、対象機器のコントローラ11にインストールされているプログラムの識別情報(以下、「プログラムID」という。)及びバージョン情報の一覧である。ここでいうプログラムは、例えば、機器制御部122等を構成するプログラムをいう。設定情報は、対象機器の機器本体に関するパラメータごとに、パラメータ名及び現在の設定値等を含む情報である。
操作部情報は、操作部サイズ、オプション情報、メモリ空き容量、プログラム情報、及び設定情報等を含む。操作部サイズは、操作パネル15におけるタッチパネル154のサイズである。オプション情報は、USBカメラ等、オプションとして追加的に設置される装置(ハードウェア)の設置状況を示す情報である。メモリ空き容量は、メモリ152の空き容量である。プログラム情報は、操作パネル15にインストールされているプログラムのプログラムID及びバージョン情報の一覧である。設定情報は、操作パネル15に関するパラメータごとに、パラメータ名及び現在の設定値等を含む情報である。
なお、本体情報は、例えば、照会部121aによって、コントローラ11における各記憶部から取得される。操作部情報は、例えば、機器ブラウザ161によって補助記憶装置153から取得され、整合性の判定要求に含められて、照会部121aに送信されてもよい。
整合性判定装置20において整合性の判定要求が受信されると、整合性判定部21は、当該判定要求に含まれている機器情報と、当該判定要求に含まれているアプリID及びバージョン情報に対応付けられて条件情報記憶部23に記憶されている条件情報との比較に基づいて、整合性の判定処理を実行する(S106)。
図7は、条件情報記憶部の構成例を示す図である。図7において、条件情報記憶部23は、アプリID及びバージョンによって識別されるWebページごとに、機体番号、機種ID、操作部サイズ、オプション情報、操作部サイズ、オプション情報、メモリ空き容量、同居不可プログラムID、同居不可プログラムバージョン、依存プログラムID、依存プログラムバージョン、設定情報、及びリブート要否等を含む条件情報を記憶する。
機体番号は、当該Webページの表示が許容される画像形成装置10の機体番号である。当該Webページの表示先が制限されない場合、機体番号の値は、空である。なお、他の項目についても、当該項目による制限が無い場合、当該項目の値は空となる。また、各項目には、複数の値が設定されてもよい。例えば、複数の機体番号が設定されてもよい。機種IDは、当該Webページの表示が許容される画像形成装置10の機種の機種IDである。操作部サイズは、当該Webページに必要とされるタッチパネルのサイズである。オプション情報は、当該Webページに必要とされるオプションを示す情報である。メモリ空き容量は、当該Webページに必要とされるメモリの空き容量である。ストレージ空き容量は、当該Webページに必要とされるストレージの空き容量である。
同居不可プログラムID及び同居不可プログラムバージョンは、当該Webページとの同居が不可能なプログラムのプログラムID及びバージョン情報である。当該Webページとの同居が不可能なプログラムとは、当該プログラムが画像形成装置10に実行させる処理によって、当該Webページに関する処理が正常に行われない可能性の有るプログラムをいう。なお、同居が不可能なプログラムの代わりに、又は同居が不可能なプログラムと共に、同居が可能なプログラムのプログラムID及びパージョン情報が、条件情報に含まれてもよい。すなわち、同居不可能なプログラムのプログラムID及びバージョン情報並びに同居が可能なプログラムのプログラムID及びバージョン情報のいずれか一方により、他方が特定されてもよい。
依存プログラムID及び依存プログラムバージョンは、当該Webページが依存するプログラムのプログラムID及びバージョン情報である。Webページが依存するプログラムとは、当該Webページの拡張スクリプトに応じた処理を実行するために利用されるプログラムである。すなわち、Webページが依存するプログラムとは、当該Webページが正常に処理されるために画像形成装置10にインストールされていることが必須であるプログラムをいう。設定情報は、当該Webページが正常に処理されるために、設定が必要なパラメータ及び当該パラメータに対して設定されるべき値である。図7の例では、「利用制限」というパラメータが、「ON」に設定されている必要が有ることが示されている。リブート要否は、設定情報に指定されているパラメータの設定に伴う画像形成装置10のリブート(再起動)の要否を示す情報である。「true」は、リブートが必要であることを示し、「false」は、リブートが不要であることを示す。
ステップS106において、整合性判定部21は、以下の(1)〜(8)の各条件の充足の有無を判定する。なお、以下の(1)〜(8)における「機器情報」は、対象機器の機器情報をいい、「条件情報」は、対象ページのアプリID及びバージョン情報に対応する条件情報をいう。但し、(1)〜(8)のうち、条件情報における該当項目の値が空の条件は、満たされていると判定される。
(1)機器情報の機体番号が、条件情報の機体番号に含まれていること。
(2)機器情報の機種IDが、条件情報の機種IDに含まれていること。
(3)機器情報の操作部サイズが、条件情報の操作部サイズに含まれていること。
(4)機器情報の本体情報又は操作部情報のメモリ空き容量が、条件情報のメモリ空き容量以上であること。
(5)機器情報のストレージ空き容量が、条件情報のストレージ空き容量以上であること。
(6)条件情報のいずれの同居不可プログラムID及び同居不可プログラムバージョンも、機器情報の本体情報又は操作部情報のプログラム情報に含まれていないこと。
(7)条件情報の全ての依存プログラムID及び依存プログラムバージョンが、機器情報の本体情報又は操作部情報のプログラム情報に含まれていること。
(8)条件情報の設定情報に指定されているパラメータについて、条件情報に指定されて値と、機器情報において示されている設定値とが一致すること。
(1)〜(8)の全てが満たされる場合、整合性判定部21は、整合性は有る(すなわち、機器構成の変更は不要である)と判定する。(1)〜(6)の少なくともいずれか一つが満たされない場合、整合性判定部21は、整合性は無いと判定する。(1)〜(6)が満たされるが、(7)及び(8)の少なくともいずれか一方が満たされていない場合、整合性判定部21は、機器構成の変更により整合性の確保は可能であると判定する。機器構成の変更により整合性の確保が可能であると判定される場合、整合性判定部21は、機器構成の変更内容を示す変更情報を、判定結果に含める。例えば、(7)が満たされない場合、条件情報の依存プログラムID及び依存プログラムバージョンのうち、機器情報の本体情報又は操作部情報のプログラム情報に含まれていない依存プログラムID及び依存プログラムバージョンが、インストール対象のプログラムを示す情報として変更情報に含められる。
(8)が満たされない場合、条件情報の設定情報において、機器情報の本体情報又は操作部情報の設定情報と相違するパラメータに関する情報が、変更対象のパラメータを示す情報として変更情報に含められる。また、当該パラメータに関して条件情報に含まれているリブート要否の値が、変更情報に含められる。
なお、(1)〜(5)が満たされるが、(6)が満たされない場合も、機器構成の変更により整合性の確保は可能であると判定されてもよい。この場合、条件情報の同居不可プログラムID及び同居不可プログラムバージョンのうち、機器情報に含まれるものが、アンインストール対象のプログラムを示す情報として変更情報に含められる。
整合性判定部21は、上記に基づく判定結果を、対象機器の照会部121aに返信する。対象機器の照会部121aは、当該判定結果を受信する。
対象機器の照会部121aは、受信された判定結果が、整合性の有ることを示す場合、整合性の判定要求に送信された機器情報と、対象ページのアプリID及びバージョン情報とを対応付けて履歴記憶部123に記憶する(S107)。
図8は、履歴記憶部の構成例を示す図である。図8において、履歴記憶部123の各レコードは、アプリID、バージョン情報、機器情報、整合性有無、及び日時等を含む。
アプリID及びバージョン情報は、整合性の判定対象とされたWebページのアプリID及びバージョン情報である。機器情報は、整合性の判定要求に含められた機器情報である。すなわち、機器情報は、整合性の判定要求時における対象機器の機器構成を示す情報である。整合性有無は、整合性の有無を示す情報である。「true」は、整合性が有ることを示す。「false」は、整合性が無いことを示す。すなわち、整合性有無は、整合性の判定結果を示す情報である。ステップS107では、整合性有無に、「true」が記憶される。日時は、当該レコードが記憶された日時である。したがって、日時は、整合性の判定が行われた日時としてみなすことができる。なお、ステップS107において、対象ページのアプリIDを含むレコードが、既に履歴記憶部123に記憶されている場合、本実施の形態では、当該レコードの内容が上書きされる。この点については、後述されるステップS110及びS117においても同様である。但し、新たなレコードが、別途追加されてもよい。
続いて、照会部121aは、整合性が有ることを示す応答を、機器ブラウザ161に返信する。機器ブラウザ161は、当該応答に応じ、対象ページに含まれている画面情報に基づいて、画面を表示させる(S121)。
一方、整合性の判定結果が、機器構成の変更により整合性の確保が可能であることを示す場合、照会部121aは、機器構成の変更の許否をユーザに問い合わせるための画面(以下、「機器構成変更照会画面」という。)を生成する(S108)。機器構成変更照会画面は、判定結果に含まれる変更情報に基づいて生成される。機器構成変更照会画面のデータは、操作パネル15に送信される。操作パネル15は、当該データに基づいて、機器構成変更照会画面を表示させる。
図9は、機器構成変更照会画面の一例を示す図である。図9において、機器構成変更照会画面530は、メッセージ531、OKボタン532、及びキャンセルボタン533等を含む。
メッセージ531は、対象ページの利用には、プログラムのインストールが必要であること、及び当該プログラムのインストールの許否の問い合わせを示す。メッセージ531において「xxxxx」の部分には、例えば、インストール対象のプログラムのプログラムID及びバージョン情報が表示される。複数のプログラムのインストールが必要である場合、複数のプログラムのプログラムID及びバージョン情報が列記されてもよい。
なお、パラメータの値の変更が必要な場合は、例えば、変更対象のパラメータ名及び設定されるべき値がメッセージ531に含まれる。
ユーザは、機器構成の変更を許可しない場合、キャンセルボタン533を押下する(S109)。キャンセルボタン533の押下に応じ、照会部121aは、整合性の判定要求に送信された機器情報と、対象ページのアプリID及びバージョン情報とを含むレコードを履歴記憶部123に記憶する(S110)。当該レコードの整合性有無には「false」が記憶される。
続いて、照会部121aは、整合性が無いことを示す応答を、機器ブラウザ161に返信する。機器ブラウザ161は、当該応答に応じ、対象ページの利用が出来ないことを示す画面を、タッチパネル154に表示させる(S111)。
なお、整合性の判定結果が、整合性が無いことを示す場合は、ステップS108及びS109は実行されずに、ステップS111が実行される。
一方、ユーザが、機器構成の変更を許可すべく、機器構成変更照会画面530のOKボタン532を押下すると(S109)、変更部121bは、インストールの要否を判定する(S112)。当該判定は、整合性の判定結果に含まれる変更情報に、インストール対象のプログラムID等が含まれているか否かに基づいて行われる。インストールが不要な場合、すなわち、当該変更情報にプログラムID等が含まれていない場合、ステップS116に進む。
インストールが必要な場合、すなわち、当該変更情報に、プログラムID等が含まれている場合、変更部121bは、当該プログラムID及びバージョン情報に係るプログラムの取得要求(ダウンロード要求)を、整合性判定装置20に送信する(S113)。整合性判定装置20においてプログラムの取得要求が受信されると、プログラム提供部22は、当該取得要求に指定されているプログラムID及びバージョン情報に関連付けられているプログラムをプログラム記憶部24より取得する。プログラム提供部22は、取得されたプログラムを変更部121bに返信する(S114)。変更部121bは、返信されたプログラムを受信すると、当該プログラムを対象機器にインストールする(S115)。
なお、プログラムの取得(ダウンロード)は、整合性判定装置20以外のコンピュータに対して要求されてもよい。例えば、整合性判定装置20とは別にダウンロードサーバが設置され、当該ダウンロードサーバが、プログラム提供部22及びプログラム記憶部24を有していてもよい。
続いて、変更部121bは、パラメータの設定変更の要否を判定する(S116)。当該判定は、整合性の判定結果に含まれる変更情報に、パラメータに関する情報が含まれているか否かに基づいて行われる。設定変更が不要な場合、すなわち、当該変更情報にパラメータに関する情報が含まれていない場合、ステップS118に進む。設定変更が必要な場合、すなわち、当該変更情報にパラメータに関する情報が含まれている場合、変更部121bは、対象機器の当該パラメータの設定値を、当該変更情報に含まれている値に変更し(S117)、ステップS118に進む。
ステップS118において、変更部121bは、リブートの要否を判定する(S118)。当該判定は、整合性の判定結果に含まれる変更情報にパラメータに関する情報が含まれている場合に、当該パラメータに関して当該変更情報に含まれているリブートの要否を示す情報に基づいて行われる。又は、ステップS113において取得されるプログラムに関して、リブートの要否を示す情報が、当該プログラムと共にプログラム提供部22から返信されてもよい。この場合、当該情報をも考慮して、リブートの要否が判定される。リブートが必要な場合、変更部121bは、対象機器のリブート処理を実行する(S119)。リブート処理の実行後、ステップS102以降が再実行される。
一方、リブートが不要な場合、変更部121bは、現時点の機器情報と対象ページのアプリIDとを含むレコードを、履歴記憶部123に記憶する(S120)。当該レコードの整合性有無には、「true」が記憶される。機器構成の変更により、整合性が確保されたからである。続いて、照会部121aは、整合性が有ることを示す応答を、機器ブラウザ161に返信する。機器ブラウザ161は、当該応答に応じ、対象ページに含まれている画面情報に基づいて、画面を表示させる(S121)。
その後、機器ブラウザ161に表示された画面に対する操作に応じ、機器ブラウザ161は、拡張スクリプトに応じた処理の実行命令を、機器制御部122に送信する。機器制御部122は、当該実行命令に応じた処理を実行する。
続いて、ステップS119の詳細について説明する。図10は、リブート処理の処理手順の一例を説明するための図である。
ステップS201において、変更部121bは、対象ページのURLを、HDD114又はNVRAM115等、不揮発性の記憶部に保存する。例えば、所定のフォルダに当該URLが保存される。続いて、変更部121bは、対象機器をリブートさせる(S202)。リブート後、変更部121bは、所定のフォルダにURLが保存されているか否かを確認する(S203)。
所定のフォルダにURLが保存されている場合、変更部121bは、当該URLを含む、Webページの表示要求を機器ブラウザ161に送信する(S204)。機器ブラウザ161は、当該表示要求に含まれているURL宛に、Webページの取得要求を送信する(S102)。なお、図10におけるステップS102は、図5におけるステップS102と同じである。したがって、この場合、対象ページに関して、ステップS102以降が再実行される。
一方、所定のフォルダにURLが保存されていない場合、変更部121bは、機器ブラウザ161に対してWebページの表示要求を送信しない。その結果、操作パネル15は、通常のトップ画面を表示させる(S205)。通常のトップ画面とは、対象機器の起動時に最初に表示される画面である。
続いて、表示対象とされたWebページに関する履歴情報が、履歴記憶部123に記憶されている場合のWebページの表示処理について説明する。
図11は、Webページの表示処理の処理手順の第二の例を説明するための図である。図11中、図5と同一ステップには、同一ステップ番号を付し、その説明は省略する。
図11では、ステップS105の代わりにステップS105aが実行される。ステップS105aにおいて、照会部121aは、整合性の判定要求に含まれているアプリIDを含むレコードが、履歴記憶部123に記憶されている場合、当該レコードを利用して、当該Webページの整合性の有無を判定する。すなわち、整合性判定装置20に対して整合性の判定要求は送信されない。したがって、この場合、整合性の判定処理の所要時間を削減することができ、Webページの応答性を向上させることができる。なお、図10の処理によって対象機器のリブートが実行され、改めて、ステップS102以降が再実行される場合、ステップS105aでは、照会部121aによって整合性の判定が行われる。
また、図11では、ステップS115の代わりにステップS115aが実行されるが、ステップS115aについては、図11において追加されているステップS131〜S135の説明の後に、説明する。
ステップS131〜S135について説明する。照会部121aは、例えば、周期的に、履歴記憶部123に記憶されている各レコードの機器情報と、現時点において対象機器から取得される機器情報とを比較する。比較される機器情報に相違が有る場合、照会部121aは、相違の有る機器情報を含むレコード(以下、「対象レコード」という。)のアプリID及びバージョン情報と、現時点の機器情報とを含む、整合性の判定要求を、整合性判定装置20に送信する(S131)。整合性判定装置20の整合性判定部21は、当該判定要求に応じ、図5のステップS106と同様に、整合性の判定処理を実行し、判定結果を返信する(S132)。
当該判定結果に基づいて、プログラムのインストールが必要であると判定される場合、変更部121bは、当該プログラムのプログラムID及びバージョン情報を含む、プログラムの取得要求を、整合性判定装置20に送信する(S133)。整合性判定装置20のプログラム提供部22は、図5のステップS114と同様に、当該プログラムを返信する(S134)。
変更部121bは、返信されたプログラムを、例えば、HDD114に保存する(S135)。この場合、変更部121bは、当該プログラムの保存先のパス名を、対象レコードに記憶してもよい。すなわち、履歴記憶部123のレコードは、周期的に実行される整合性の判定処理によって取得されたプログラムのパス名を格納する項目を有していてもよい。
図11のステップS115aでは、ステップS135において予め保存されているプログラムのインストールが実行される。したがって、図11では、ステップS113が省略されている。ユーザによる操作とは非同期に実行されるステップS135において予め保存されているプログラムがインストールされることで、ユーザによる操作時においてプログラムのダウンロードが実行される可能性を低減することができる。その結果、Webページの表示までの所要時間が短縮される可能性を高めることができる。
続いて、ステップS105aの詳細について説明する。図12は、照会部が実行する処理手順の一例を説明するためのフローチャートである。
ステップS301において、照会部121aは、履歴記憶部123に記憶されているレコード(以下、「履歴情報」という。)の中から、対象ページのアプリIDを含む履歴情報を取得する。該当する履歴情報が取得されなかった場合(S302でNo)、照会部121aは、整合性の判定要求を、整合性判定装置20に送信する(S303)。すなわち、この場合、図5において説明した処理手順が実行される。
該当する履歴情報が取得された場合(S302でYes)、照会部121aは、現時点の機器情報を対象機器から取得する(S303)。なお、機器情報のうち、操作部情報は、機器ブラウザ161からの整合性の判定要求に含まれているものが利用されてもよい。
続いて、照会部121aは、ステップ301において取得された履歴情報と、現時点の機器情報とが一致するか否かを判定する(S305)。ここで、機器情報と履歴情報との一致は、完全一致に限られない。例えば、メモリ空き容量やストレージ空き容量については、機器情報の値の方が大きくてもよい。また、機器情報のオプション情報が示すオプションの中で、履歴情報に含まれるオブション情報に含まれないものが有ってもよい。一方、プログラム情報及び設定情報は、完全一致が要求されるのが望ましい。
機器情報と履歴情報とが一致する場合(S305でYes)、照会部121aは、当該履歴情報の日時が、現在日時から所定時間内であるか否かを判定する(S306)。例えば、時間の経過に応じて、条件情報が更新され、過去の判定結果が有効でなくなる可能性も有るからである。なお、条件情報記憶部23における条件情報には、有効期限が設定されてもよい。ステップS306での所定期間は、当該有効期限に基づいて特定されてもよい。
当該履歴情報の日時が現在日時から所定時間内である場合(S306でYes)、照会部121aは、当該履歴情報の整合性有無の値を判定する(S307)。当該値が「true」である場合、照会部121aは、対象ページに関して整合性は有ると判定する(S308)。当該値が「false」である場合、照会部121aは、対象ページに関して整合性は無いと判定する(S309)。
なお、機器情報と履歴情報とが一致しない場合(S305でNo)、又は機器情報に一致する履歴情報の日時の値が、所定時間外である場合(S306でNo)、照会部121aは、整合性の判定要求を、整合性判定装置20に送信する(S303)。
なお、機器情報と履歴情報との一致の有無は判定されずに、整合性の有無が判定されてもよい。また、履歴情報の日時が所定時間内であるか否かは判定されずに、整合性の有無が判定されてもよい。すなわち、ステップS305及びS306は、実行されなくてもよい。但し、ステップS305及びS306が実行されることで、整合性判定装置20に対する照会を行わずに実行される、整合性の判定処理の精度を高めることができる。
上述したように、本実施の形態によれば、Webページのダウンロードに応じて、機器構成に関して必要な変更が自動的に行われる。その結果、拡張スクリプトを含むWebページの利用に要される作業負担を軽減することができる。
また、一度ダウンロードが行われたWebページに関しては、履歴情報が記憶される。当該Webページが再度ダウンロードされる際は、履歴情報に基づいて、画像形成装置10内において整合性の判定が行われる。その結果、整合性の判定に要される通信時間等を削減することができ、Webページが表示されるまでの所要時間を短縮することができる。
なお、本実施の形態では、画像形成装置10に関して説明を行ったが、プロジェクタや携帯端末等、他の機器に関して本実施の形態が実施されてもよい。また、デジタルカメラ等、非図示の機器に関して、本実施の形態が実施されてもよい。
性と各Webページの固有性とを両立させることができる。
また、Webページと異なる形式のデータであって、Webページにおけるスクリプトのような命令を記述可能であって、操作パネル15等の表示部に情報を表示させる表示データが、Webページの代わりに用いられてもよい。
なお、本実施の形態において、機器ブラウザ161は、制御部の一例である。整合性判定装置20は、情報処理装置の一例である。整合性判定部21は、生成部の一例である。Webページは、表示データの一例である。アプリID及びバージョン情報は、表示データの識別情報の一例である。履歴記憶部123は、記憶部の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。