(57)【要約】【課題】Ｗｅｂページ内のスクリプトに基づいて他の画像形成装置を制御すること。【解決手段】プログラムを追加可能な他の画像形成装置とネットワークを介して接続される画像形成装置であって、Ｗｅｂページを表示手段に表示させる表示制御手段と、前記プログラムに対応する文字列群を記憶する記憶手段と、前記Ｗｅｂページに含まれているスクリプトについて、前記記憶手段が記憶する文字列を含む場合は、該文字列に対応した前記プログラムに関する処理要求を前記他の画像形成装置に送信する送信手段とを有する。【選択図】図３
2012135907.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを追加可能な他の画像形成装置とネットワークを介して接続される画像形成装置であって、
Ｗｅｂページを表示手段に表示させる表示制御手段と、
前記プログラムに対応する文字列群を記憶する記憶手段と、
前記Ｗｅｂページに含まれているスクリプトについて、前記記憶手段が記憶する文字列を含む場合は、該文字列に対応した前記プログラムに関する処理要求を前記他の画像形成装置に送信する送信手段とを有する画像形成装置。
【請求項２】
前記記憶手段には、前記文字列に関連付けられて前記他の画像形成装置の識別情報が記憶されており、
前記送信手段は、前記文字列に対応した前記プログラムに関する処理要求を、当該文字列に関連付けられて前記記憶手段に記憶されている前記識別情報に係る前記画像形成装置に送信する請求項１記載の画像形成装置。
【請求項３】
前記送信手段は、前記スクリプトに前記他の画像形成装置の識別情報が含まれている場合、前記文字列に対応した前記プログラムに関する処理要求を、前記スクリプトに含まれている前記識別情報に係る前記画像形成装置に送信する請求項１又は２記載の画像形成装置。
【請求項４】
プログラムを追加可能な他の画像形成装置とネットワークを介して接続される画像形成装置が、
Ｗｅｂページを表示手段に表示させる表示制御手順と、
前記Ｗｅｂページに含まれているスクリプトについて、前記プログラムに対応する文字列群を記憶する記憶手段が記憶する文字列を含む場合は、該文字列に対応した前記プログラムに関する処理要求を前記他の画像形成装置に送信する送信手順とを実行する情報処理方法。
【請求項５】
前記記憶手段には、前記文字列に関連付けられて前記他の画像形成装置の識別情報が記憶されており、
前記送信手順は、前記文字列に対応した前記プログラムに関する処理要求を、当該文字列に関連付けられて前記記憶手段に記憶されている前記識別情報に係る前記画像形成装置に送信する請求項４記載の情報処理方法。
【請求項６】
前記送信手順は、前記スクリプトに前記他の画像形成装置の識別情報が含まれている場合、前記文字列に対応した前記プログラムに関する処理要求を、前記スクリプトに含まれている前記識別情報に係る前記画像形成装置に送信する請求項４又は５記載の情報処理方法。
【請求項７】
プログラムを追加可能な他の画像形成装置とネットワークを介して接続される画像形成装置に、
Ｗｅｂページを表示手段に表示させる表示制御手順と、
前記Ｗｅｂページに含まれているスクリプトについて、前記プログラムに対応する文字列群を記憶する記憶手段が記憶する文字列を含む場合は、該文字列に対応した前記プログラムに関する処理要求を前記他の画像形成装置に送信する送信手順とを実行させる情報処理プログラム。
【請求項８】
前記記憶手段には、前記文字列に関連付けられて前記他の画像形成装置の識別情報が記憶されており、
前記送信手順は、前記文字列に対応した前記プログラムに関する処理要求を、当該文字列に関連付けられて前記記憶手段に記憶されている前記識別情報に係る前記画像形成装置に送信する請求項７記載の情報処理プログラム。
【請求項９】
前記送信手順は、前記スクリプトに前記他の画像形成装置の識別情報が含まれている場合、前記文字列に対応した前記プログラムに関する処理要求を、前記スクリプトに含まれている前記識別情報に係る前記画像形成装置に送信する請求項７又は８記載の情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、情報処理方法、及び情報処理プログラムに関し、特にＷｅｂブラウザを有する画像形成装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【０００２】
近年の画像形成装置は、汎用的なコンピュータと同様にＣＰＵ（Central Processing Unit）を備え、各機能は、アプリケーション（以下、「アプリ」ともいう）等のプログラムの制御によって実現されるようになっている。
【０００３】
このような画像形成装置の中には、アプリを実装するためのＡＰＩが公開され、ユーザ所望のアプリを搭載することにより、カスタマイズが可能とされているものもある。公開されているＡＰＩは、例えば、Ｃ言語やＪａｖａ（登録商標）言語等によるプログラムより呼び出し可能とされている。
【０００４】
また、ネットワーク上、又は機器内から取得したＨＴＭＬ（Hyper Text Markup Language）データを機器の画面として表示するブラウザソフトが搭載された画像形成装置も存在する。このようなブラウソフトの中には、画面を表示するだけでなく、機器制御用に拡張されたスクリプトを解釈して機器制御を実行することが可能なブラウザソフトも有る。このようなブラウザソフトによれば、スクリプト等のブラウザベースのＡＰＩをカスタマイズ用に提供することができる（例えば、特許文献１）。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載された技術において、スクリプトに応じて制御可能な画像形成装置は、当該スクリプトを含むＨＴＭＬデータを受信した画像形成装置に限定される。
【０００６】
本発明は、上記の点に鑑みてなされたものであって、Ｗｅｂページ内のスクリプトに基づいて他の画像形成装置を制御することのできる画像形成装置、情報処理方法、及び情報処理プログラムの提供を目的とする。
【課題を解決するための手段】
【０００７】
そこで上記課題を解決するため、本発明は、プログラムを追加可能な他の画像形成装置とネットワークを介して接続される画像形成装置であって、Ｗｅｂページを表示手段に表示させる表示制御手段と、前記プログラムに対応する文字列群を記憶する記憶手段と、前記Ｗｅｂページに含まれているスクリプトについて、前記記憶手段が記憶する文字列を含む場合は、該文字列に対応した前記プログラムに関する処理要求を前記他の画像形成装置に送信する送信手段とを有する。
【０００８】
このような画像形成装置では、Ｗｅｂページ内のスクリプトに基づいて他の画像形成装置を制御することができる。
【発明の効果】
【０００９】
本発明によれば、Ｗｅｂページ内のスクリプトに基づいて他の画像形成装置を制御することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態における情報処理システムの構成例を示す図である。
【図２】本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。
【図３】本発明の実施の形態における画像形成装置の機能構成例を示す図である。
【図４】本発明の実施の形態の装置間の関係を説明するための図である。
【図５】機器ブラウザの初期化時に実行される処理手順の一例を説明するためのフローチャートである。
【図６】拡張スクリプトに関する実行環境の生成処理の処理手順の一例を説明するためのフローチャートである。
【図７】キーワードファイルの構成例を示す図である。
【図８】キーワードファイルに基づいて生成される情報を示す図である。
【図９】監視状態の構築処理の処理手順の一例を説明するためのフローチャートである。
【図１０】監視設定ファイルの構成例を示す図である。
【図１１】監視設定ファイルに基づいて構築される状態監視部の状態の例を示す図である。
【図１２】アプリケーションの状態の監視処理の処理手順の一例を説明するためのフローチャートである。
【図１３】Ｗｅｂページに関して機器ブラウザが実行する処理手順の一例を説明するためのフローチャートである。
【図１４】Ｗｅｂページの定義例を示す図である。
【図１５】対象アプリケーションに関する処理要求の受信に応じて実行される処理手順の一例を説明するためのフローチャートである。
【図１６】画像形成装置間に形成される関係の一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態における情報処理システムの構成例を示す図である。同図の情報処理システム１において、画像形成装置１０ａ、１０ｂ、及び１０ｃ等の複数台の画像形成装置１０は、ＬＡＮ（Local Area Network）又はインターネット等のネットワーク４０（有線又は無線の別は問わない）を介して相互に通信可能に接続されている。また、一台以上のＷｅｂサーバ装置３０は、ネットワーク３０を介して各画像形成装置１０と接続されている。
【００１２】
画像形成装置１０は、印刷、スキャン、コピー、及びＦＡＸ送受信等のうちの二以上の機能を一台の筐体によって実現する複合機である。但し、いずれか一つの機能を単体で有する機器が画像形成装置１０として用いられてもよい。本実施の形態において、各画像形成装置１０は、操作パネル（後述される、操作パネル２０２）に操作画面の表示等を実行させるためのプログラムとしてＷｅｂブラウザを有する。Ｗｅｂブラウザは、画像形成装置１０用に機能拡張が図られている。そこで、以下、画像形成装置１０が有するＷｅｂブラウザを「機器ブラウザ」という。
【００１３】
Ｗｅｂサーバ装置３０は、ＨＴＴＰｄ（Hypertext Transfer Protocol daemon）等、Ｗｅｂサーバとしての機能が実装された汎用コンピュータである。Ｗｅｂサーバ装置３０は、クライアント（本実施の形態の画像形成装置１０の機器ブラウザ）からのＨＴＴＰリクエストに応じて、ＨＴＭＬ（HyperText Markup Language）データ等のＷｅｂページを返信する。なお、機器ブラウザによって処理されるＷｅｂページの一部又は全部は、画像形成装置１０内に保存されていてもよい。
【００１４】
図２は、本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。同図において、画像形成装置１０は、コントローラ２０１、操作パネル２０２、ファクシミリコントロールユニット（ＦＣＵ）２０３、撮像部１２１、及び印刷部１２２等を有する。
【００１５】
コントローラ２０１は、ＣＰＵ２１１、ＡＳＩＣ２１２、ＮＢ２２１、ＳＢ２２２、ＭＥＭ−Ｐ２３１、ＭＥＭ−Ｃ２３２、ＨＤＤ（ハードディスクドライブ）２３３、メモリカードスロット２３４、ＮＩＣ（ネットワークインタフェースコントローラ）２４１、ＵＳＢデバイス２４２、ＩＥＥＥ１３９４デバイス２４３、セントロニクスデバイス２４４、及び通信Ｉ／Ｆ２４５等を有する。
【００１６】
ＣＰＵ２１１は、種々の情報処理用のＩＣである。ＡＳＩＣ２１２は、種々の画像処理用のＩＣである。ＮＢ２２１は、コントローラ２０１のノースブリッジである。ＳＢ２２２は、コントローラ２０１のサウスブリッジである。ＭＥＭ−Ｐ２３１は、画像形成装置１０のシステムメモリである。ＭＥＭ−Ｃ２３２は、画像形成装置１０のローカルメモリである。ＨＤＤ２３３は、画像形成装置１０のストレージである。メモリカードスロット２３４は、メモリカード２３５をセットするためのスロットである。ＮＩＣ２４１は、ネットワークを介した通信用のインタフェースである。ＵＳＢデバイス２４２は、ＵＳＢ規格の接続端子を提供するためのデバイスである。ＩＥＥＥ１３９４デバイス２４３は、ＩＥＥＥ１３９４規格の接続端子を提供するためのデバイスである。セントロニクスデバイス２４４は、セントロニクス仕様の接続端子を提供するためのデバイスである。通信Ｉ／Ｆ２４５は、操作パネル２０２との通信用のインタフェースである。
【００１７】
ＣＰＵ２１１は、ＭＥＭ−Ｃ２３２（通常、ＲＡＭを使用）をワークメモリとして用いることにより、ＭＥＭ−Ｐ２３１（通常、フラッシュメモリを用いる）又はＨＤＤ２３３等に格納されたプログラムに基づく処理を実行する。
【００１８】
ＭＥＭ−Ｃ２３２、ＨＤＤ２３３等に対するデータの読み出しや書き込みは、メモリカードスロット２３４や後述されるＮＩＣ（ネットワークインタフェースコントローラ）２４７を介して行うことができる。例えば、メモリカード２３５に格納されたプログラムデータ又はネットワークを通して受信されるプログラムデータに関してインストール処理が実行されることにより、ＭＥＭ−Ｃ２３２又はＨＤＤ２３３にプログラムが書き込まれる。なお、メモリカード２３５以外の他の記録媒体（例えば、ＣＤ−ＲＯＭ又はＵＳＢ（Universal Serial Bus）メモリ等）によってメモリカード２３５が代替されてもよい。すなわち、メモリカード２３５の位置付けに相当する記録媒体の種類は、所定のものに限定されない。この場合、メモリカードスロット２３４は、記録媒体の種類に応じたハードウェアによって代替されればよい。
【００１９】
撮像部１２１は、読取原稿から画像（画像データ）を読み取るスキャナである。印刷部１２２は、画像（画像データ）を印刷用紙に印刷するプリンタである。
【００２０】
ＦＣＵ２０３は、ＦＡＸ通信を制御するハードウェアである。
【００２１】
操作パネル２０２は、操作者が画像形成装置１０に入力を行うためのハードウェア（操作部）であると共に、操作者が画像形成装置１０から出力を得るためのハードウェア（表示部）である。同図において、操作パネル２０２は、ＣＰＵ２５１、ＲＡＭ２５２、ＲＯＭ２５３、ＮＶＲＡＭ２５４、ＮＩＣ２５５、及び通信Ｉ／Ｆ２５６等を有する。
【００２２】
ＲＯＭ２５３及びＮＶＲＡＭ２５４等には、各種のプログラムやプログラムによって利用されるデータ等が記録されている。例えば、機器ブラウザのプログラムは、ＲＯＭ２５３又はＮＶＲＡＭ２５４に記録されている。ＲＡＭ２５２は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。ＣＰＵ２５１は、ＲＡＭ２５２にロードされたプログラムを処理することにより、各種の機能を実現する。ＮＩＣ２５５は、ネットワークを介した通信用のインタフェースである。通信Ｉ／Ｆ２５６は、コントローラ２０１との通信用のインタフェースである。すなわち、操作パネル２０２とコントローラ２０１とは、画像形成装置１０の筐体内においてネットワークを介して接続される。
【００２３】
図２より明らかなように、操作パネル２０２の制御機構は、コントローラ２０１による制御から独立している。すなわち、操作パネル２０２は、独立してＣＰＵ２５１を有する。但し、操作パネル２０２は、通信Ｉ／Ｆ２５６を介してコントローラ２０１と通信することで、コントローラ２０１と協調又は連携して動作することが可能である。
【００２４】
図３は、本発明の実施の形態における画像形成装置の機能構成例を示す図である。同図において、操作パネル２０２は、機器ブラウザ４０１、キーワードファイル記憶部４０２、監視設定ファイル記憶部４０３、及び通信制御部４０４等を有する。
【００２５】
機器ブラウザ４０１は、Ｗｅｂサーバ装置３０又は画像形成装置１０内に記憶されているＷｅｂページ（ＨＴＭＬデータ等）を取得し、Ｗｅｂページが示す画面の表示を操作パネル２０２に実行させる。また、機器ブラウザ４０１は、Ｗｅｂページに含まれているＪａｖａ（登録商標）スクリプト等のスクリプト言語によるプログラム（以下、単に「スクリプト」という。）に応じた処理を、操作パネル２０２又はコントローラ２０１等に実行させる。なお、機器ブラウザ４０１は、スクリプトに関して、標準のメソッド（関数）及びプロパティ（属性）のみならず、画像形成装置１０用に拡張された（追加された）メソッド及びプロパティ等を解釈することができる。標準のメソッド又はプロパティとは、例えば、Ｊａｖａ（登録商標）スクリプト等の仕様において定義されているメソッド又はプロパティをいう。
【００２６】
画像形成装置１０用に拡張されたメソッド又はプロパティとは、画像形成装置１０に随時インストールされるアプリケーション３０１に関するメソッド又はプロパティをいう。画像形成装置１０用に拡張されたメソッド（以下、「拡張メソッド」という。）の例として、例えば、画像形成装置１０にスキャンジョブ又は印刷ジョブ等を実行させるアプリケーション３０１を呼び出すメソッドが挙げられる。画像形成装置１０用に拡張されたプロパティ（以下、「拡張プロパティ」という。）の例として、画像形成装置１０にスキャンジョブ又は印刷ジョブ等を実行させるアプリケーション３０１に対する設定情報に対応するプロパティが挙げられる。なお、拡張メソッド及び拡張プロパティを総称して、「拡張スクリプト」という。
【００２７】
基本的に、標準のスクリプトに関する処理は、操作パネル２０２において実行される。一方、拡張スクリプトに関する処理は、コントローラ２０１において実行される。
【００２８】
同図において、機器ブラウザ４０１は、Ｗｅｂページ取得部４１１、パース部４１２、描画部４１３、スクリプト解釈部４１４、スクリプト実装部４１５、状態監視部４１６等を有する。
【００２９】
Ｗｅｂページ取得部４１１は、指定された識別情報（ＵＲＬ（Uniform Resource Locator））に係るＷｅｂページを、Ｗｅｂサーバ装置３０又は画像形成装置１０（自機又は他機を問わない。）より取得する。
【００３０】
パース部４１２は、Ｗｅｂページ取得部４１１によって取得されたＷｅｂページの定義内容を解析する、いわゆるＨＴＭＬパーサである。
【００３１】
描画部４１３は、パース部４１２によるパース結果（解析結果）に基づいてＷｅｂページが示す画面（操作画面）を操作パネル２０２（の液晶タッチパネル）に表示させる。スクリプト解釈部４１４は、Ｗｅｂページにスクリプトが含まれている場合に、スクリプトの解釈（又は解析）を行う。スクリプト解釈部４１４は、スクリプトの解釈に際し、キーワードファイル記憶部４０２が記憶するキーワードファイルを用いる。キーワードファイルとは、拡張メソッド又は拡張プロパティ等を示す文字列群（文字列の集合）が格納されたファイルである。本実施の形態において、当該文字列を、以下「キーワード」という。
【００３２】
すなわち、スクリプト内において、いずれが拡張メソッド又は拡張プロパティであるのかを示す情報は、機器ブラウザ４０１内のソースコードにコーディングされているのではなく、機器ブラウザ４０１の外部のキーワードファイル記憶部４０２において記憶されている。このことは、キーワードファイル記憶部４０２の記憶内容を変更することによって、拡張メソッド又は拡張プロパティとして判定される対象が動的に変化することを意味する。「動的に」とは、操作パネル２０１を機器ブラウザ４０１として機能させるためのプログラムのソースコードを変更すること無しに、ということを意味する。
【００３３】
キーワードファイル記憶部４０２は、例えば、ＮＶＲＡＭ２５４等を用いて実現可能である。
【００３４】
スクリプト実装部４１５は、スクリプトに応じた処理の実装である。より詳しくは、スクリプト実装部４１５は、スクリプトに応じた処理を実行するオブジェクト（Ｊａｖａ（登録商標）スクリプトオブジェクト等）の集合である。スクリプト実装部４１５は、標準のスクリプトオブジェクトだけでなく、拡張メソッド又は拡張プロパティに応じた処理を実行するスクリプトオブジェクト（以下、「拡張スクリプトオブジェクト」という。）をも含む。拡張スクリプトオブジェクトは、スクリプトに応じた処理の実行要求をコントローラ２０１（自機又は他機を問わない。）に送信する。
【００３５】
状態監視部４１６は、監視対象として指定されたアプリケーション３０１（自機のアプリケーション３０１又は他機のアプリケーション３０１を問わない。）の状態を定期的に監視する。アプリケーション３０１の状態の種類の一例として、起動中、停止中、ジョブの実行中、エラー発生中、及びジョブの未実行状態等が挙げられる。
【００３６】
監視対象とされるアプリケーション３０１を特定するための情報は、監視設定ファイル記憶部４０３に記憶されている。監視設定ファイル記憶部４０３は、例えば、ＮＶＲＡＭ２５４等を用いて実現可能である。
【００３７】
通信制御部４０４は、通信Ｉ／Ｆ２５６又はＮＩＣ２５５等を用いて、自機のコントローラ２０１又は他機のコントローラ２０１との通信を制御する。例えば、通信制御部４０４は、拡張スクリプトに応じた処理の実行要求又は状態情報の取得要求等を、コントローラ２０１に送信する。
【００３８】
一方、コントローラ２０１は、アプリケーション３０１、スクリプト処理実行部３０２、インストール制御部３０３、状態通知部３０４、及び通信制御部３０５等を有する。これら各部は、ＭＥＭ−Ｐ２３１又はＨＤＤ２３３に記録されたプログラムが、ＣＰＵ２１１に実行させる処理によって実現される。
【００３９】
アプリケーション３０１は、コントローラ２０１に各種のジョブ又は処理等を実行させるためのプログラムである。同図では、アプリケーション３０１の一例として、印刷アプリ３０１ａ及びスキャンアプリ３０１ｂ等が示されている。印刷アプリ３０１ａは、印刷ジョブをコントローラ２０１に実行させる。スキャンアプリ３０１ｂは、スキャンジョブをコントローラ２０１に実行させる。
【００４０】
スクリプト処理実行部３０２は、自機又は他機の操作パネル２０２より送信される、拡張スクリプトに応じた処理の実行要求に応じ、当該実行要求に対応するアプリケーション３０１に処理を実行させる。例えば、当該実行要求が印刷アプリ３０１ａに対する実行要求であれば、スクリプト処理実行部３０２は、印刷アプリ３０１ａに処理を実行させる。このように、拡張スクリプトとアプリケーション３０１とは対応関係を有する。すなわち、拡張スクリプトの特定のメソッド又は特定のプロパティは、特定のアプリケーション３０１に関する処理の実行要求又は設定情報に相当する。
【００４１】
インストール制御部３０３は、アプリケーション３０１のインストール（追加）を制御する。すなわち、画像形成装置１０には、アプリケーション３０１を随時インストール可能である。アプリケーション３０１のインストールによって、画像形成装置１０の機能拡張を図ることができる。
【００４２】
アプリケーション３０１のインストールパッケージファイルには、アプリケーション３０１に対応する拡張メソッド及び拡張プロパティ等を示すキーワードファイルが同梱されている。アプリケーション３０１がインストールされる際、当該アプリケーション３０１と共に、インストールパッケージに同梱されているキーワードファイルもコントローラ２０１にインストールされる。したがって、キーワードファイルは、アプリケーション３０１のインストールに応じて増加する。コントローラ２０１において、各キーワードファイルは、別個のファイルとして保管されてもよいし、一つのファイルに統合されて保管されてもよい。その後、操作パネル２０１の機器ブラウザ４０１は、コントローラ２０１で保管されているキーワードファイルを適当な時期に取得し、スクリプト解釈部４１４が利用可能なようにＮＶＲＡＭ２５４に記録する。但し、キーワードファイルは、Ｗｅｂサーバ装置３０等において、一元的に管理されていてもよい。この場合、キーワードファイルは、Ｗｅｂサーバ装置３０等より取得されればよい。
【００４３】
状態通知部３０４は、操作部２０１からの状態情報の取得要求に応じ、アプリケーション３０１の状態を示す情報（状態情報）を返信する。
【００４４】
通信制御部３０５は、通信Ｉ／Ｆ２４５又はＮＩＣ２４１等を用いて、自機の操作パネル２０２又は他機の操作パネル２０２との通信を制御する。例えば、通信制御部３０５は、拡張スクリプトに応じた処理の実行要求、又は状態情報の取得要求を、操作パネル２０２より受信する。
【００４５】
続いて、或る画像形成装置１０と他の画像形成装置１０及びＷｅｂサーバ装置３０との関係について説明する。図４は、本発明の実施の形態の装置間の関係を説明するための図である。同図では、画像形成装置１０ａと他の画像形成装置１０及びＷｅｂサーバ装置３０との関係が示されている。
【００４６】
画像形成装置１０ａの操作パネル２０２は、Ｗｅｂサーバ装置３０よりＷｅｂページを取得（ダウンロード）する（Ｓ１）。操作パネル２０２の機器ブラウザ４０１は、Ｗｅｂページに含まれている拡張スクリプトに応じた処理を、自機のコントローラ２０１、又は他機のコントローラ２０１に実行させる。すなわち、拡張スクリプトによって制御対象とされる画像形成装置１０は、自機に限定されない。
【００４７】
同図では、画像形成装置１０ａと他の装置との関係について示したが、画像形成装置１０ｂ又は画像形成装置１０ｃと他の装置との関係についても同様である。
【００４８】
以下、画像形成装置１０の処理手順について説明する。図５は、機器ブラウザの初期化時に実行される処理手順の一例を説明するためのフローチャートである。初期化時とは、例えば、画像形成装置１０の起動に応じて、機器ブラウザ４０１が起動されたときである。
【００４９】
ステップＳ１０１において、機器ブラウザ４０１のスクリプト解釈部４１４は、拡張スクリプトに関する実行環境の生成処理を実行する。実行環境の生成とは、拡張スクリプトに応じた処理を実行可能な状態を生成することをいう。続いて、機器ブラウザ４０１の状態監視部４１６は、監視状態の構築処理を実行する（Ｓ１０２）。監視状態の構築とは、コントローラ２０１（自機又は他機を問わない）の状態を監視可能な状態を構築することをいう。
【００５０】
なお、図５においては、一般的なＷｅｂブラウザによって実行される処理については、便宜上、省略されている。
【００５１】
続いて、ステップＳ１０１の詳細について説明する。図６は、拡張スクリプトに関する実行環境の生成処理の処理手順の一例を説明するためのフローチャートである。
【００５２】
ステップＳ２０１において、機器ブラウザ４０１のスクリプト解釈部４１４は、キーワードファイル記憶部４０２よりキーワードファイルを取得する。
【００５３】
図７は、キーワードファイルの構成例を示す図である。同図のキーワードファイルは、１つのアプリケーション３０１のインストールに伴って、キーワードファイル記憶部４０２に追加されるキーワードファイルを示す。同図では、ＸＭＬ（eXtensible Markup Language）形式によってキーワードファイルが定義されている例を示す。但し、キーワードファイルは、ＣＳＶ（Comma Separated Values）形式等、他の形式によって定義されてもよい。
【００５４】
同図において、キーワードファイルは、ＴａｒｇｅｔＦｕｎｃｔｉｏｎタグによって囲まれたＴａｒｇｅｔＦｕｎｃｔｉｏｎ要素ｅ１、及びＥｘｔｅｎｄｅｄＳｃｒｉｐｔタグによって囲まれたＥｘｔｅｎｄｅｄＳｃｒｉｐｔ要素ｅ２等を含む
ＴａｒｇｅｔＦｕｎｃｔｉｏｎ要素ｅ１は、主として、当該キーワードファイルが対象とするアプリケーション３０１（以下、「対象アプリケーション３０１」という。）を特定するための情報を含む。具体的には、ＴａｒｇｅｔＦｕｎｃｔｉｏｎ要素ｅ１は、ｓｅｒｖｅｒ要素ｅ１１、ｐｏｒｔ要素１２、ＵＲＩ要素ｅ１３、及びｍｅｔｈｏｄ要素ｅ１４等を子要素として含む。
【００５５】
ｓｅｒｖｅｒ要素ｅ１１の値は、対象アプリケーション３０１が所在する画像形成装置１０のＩＰアドレスである。ＩＰアドレスとしては、自機のＩＰアドレスのみならず、他機のＩＰアドレスも指定可能である。ｐｏｒｔ要素ｅ１２の値は、対象アプリケーション３０１に関する処理の実行要求の送信先のポート番号である。ＵＲＩ要素ｅ１３の値は、対象アプリケーション３０１に対する識別子としてのＵＲＩ（Uniform Resource Identifier））である。ｍｅｔｈｏｄ要素ｅ１４は、対象アプリケーション３０１に関する処理の実行要求を送信するためのＨＴＴＰ（HyperText Transfer Protocol）のメソッドである。
【００５６】
ＥｘｔｅｎｄｅｄＳｃｒｉｐｔ要素ｅ２は、拡張メソッド又は拡張プロパティを示す文字列が定義された要素である。ＥｘｔｅｎｄｅｄＳｃｒｉｐｔ要素ｅ２は、ｇｅｔ要素ｅ２１、ｓｅｔ要素ｅ２２、及びｄｏ要素ｅ２３等を子要素として含む。
【００５７】
ｇｅｔ要素２１の値は、対象アプリケーション３０１の設定情報の値を取得するための拡張メソッドを示す文字列（キーワード）である。ｓｅｔ要素２２の値は、対象アプリケーション３０１の設定情報の値を設定するための拡張メソッドを示す文字列（キーワード）である。ｄｏ要素ｅ２３の値は、対象アプリケーション３０１に処理の実行させるための拡張メソッドを示す文字列（キーワード）である。
【００５８】
このように、拡張メソッドを示すキーワードは、ｇｅｔ要素、ｓｅｔ要素、又はｄｏ要素に分類されて定義される。ｇｅｔ要素に係る拡張メソッドを、「設定値取得系メソッド」という。設定値取得系メソッドは、対象アプリケーション３０１の設定項目の設定値を取得するためのメソッドである。例えば、設定値取得系メソッドには、設定値の取得対象とする１以上の設定項目の名前（設定項目名）が引数に指定される。
【００５９】
また、ｓｅｔ要素に係る拡張メソッドを、「設定値設定系メソッド」という。設定値設定系メソッドは、対象アプリケーション３０１の設定項目の値を設定するためのメソッドである。例えば、設定値取得系メソッドには、「設定項目名＝設定値」といった形式の１以上の引数が設定される。
【００６０】
更に、ｄｏ要素に係る拡張メソッドを、「実行処理通知系メソッド」という。実行処理通知系メソッドは、アプリケーション３０１に処理（ジョブ）の実行を要求するためのメソッドである。
【００６１】
なお、ステップＳ２０１では、キーワードファイル記憶部４０２に記憶されている全てのキーワードファイルが取得される。
【００６２】
続いて、スクリプト解釈部４１４は、取得された各キーワードファイルを解析する（Ｓ２０２）。ここでいう解析は、キーワードファイルを構成する各要素について、そのタグ名が示す意味に関連付けて要素の値を取得することをいう。
【００６３】
続いて、スクリプト解釈部４１４は、キーワードファイルに含まれている拡張メソッド又は拡張プロパティごとに、対応するスクリプトオブジェクトをＲＡＭ２５２に生成（インスタンス化）する（Ｓ２０３）。
【００６４】
例えば、図７の例では、ｇｅｔＥｘＦｕｎｃＳｅｔｔｉｎｇ、ｓｅｔＥｘＦｕｎｃＳｅｔｔｉｎｇ、及びｄｏＥｘＦｕｎｃｔｉｏｎごとに、スクリプトオブジェクトがインスタンス化される。
【００６５】
なお、拡張スクリプトオブジェクトは、設定値取得系オブジェクト、設定値設定系オブジェクト、及び実行処理通知系オブジェクトに分類される。設定値取得系オブジェクトは、設定値取得系型（設定値取得系クラス）のインスタンスである。設定値設定系オブジェクトは、設定値設定系型（設定値設定系クラス）のインスタンスである。実行処理通知系オブジェクトは、実行処理通知系型（実行処理通知系クラス）のインスタンスである。
【００６６】
したがって、ステップＳ２０３では、各拡張メソッドに応じた型の拡張スクリプトオブジェクトがインスタンス化される。図７の例に基づけば、ｇｅｔ要素ｅ２１が一つ有ることに応じて、設定値取得系オブジェクトが一つ生成される。当該設定値取得系オブジェクトは、ｇｅｔ要素ｅ２１の値である、ｇｅｔＥｘＦｕｎｃＳｅｔｔｉｎｇに関連付けられる。また、ｓｅｔ要素ｅ２２が一つ有ることに応じて、設定値設定系オブジェクトが一つ生成される。当該設定値設定系オブジェクトは、ｓｅｔ要素ｅ２２の値である、ｓｅｔＥｘＦｕｎｃＳｅｔｔｉｎｇに関連付けられる。更に、ｄｏ要素ｅ２３が一つ有ることに応じて、実行処理通知系オブジェクトが一つ生成される。当該実行処理通知系オブジェクトは、ｄｏ要素ｅ２３の値である、ｄｏＥｘＦｕｎｃｔｉｏｎに関連付けられる。拡張メソッドと、生成された拡張スクリプトオブジェクトとの対応関係は、スクリプト解釈部４１４の知識としてＲＡＭ２５２等を用いて保持される。
【００６７】
ここで、設定値取得系型、設定値設定系型、及び実行処理通知系型は、対象アプリケーション３０１の種別に対して、共通化されている。例えば、対象アプリケーション３０１が、印刷アプリ３０１ａ、スキャンアプリ３０１ｂ、又はＩＣカードからの読み取り処理を実行する非図示のアプリケーション３０１等のいずれに関しても、それぞれのキーワードファイルに含まれているｄｏ要素に応じて生成される拡張スクリプトオブジェクトは、同じ実行処理通知系型のインスタンスである。
【００６８】
そうすると、各拡張スクリプトオブジェクトが、どのように対象アプリケーション３０１を識別するかが問題となる。そこで、各拡張スクリプトオブジェクトには、それぞれに対応するキーワードファイルのＴａｒｇｅｔＦｕｎｃｔｉｏｎ要素ｅ１に含まれる各要素の値が設定される。それにより、各拡張スクリプトオブジェクトは、自らに対応するアプリケーション３０１を識別することができる。
【００６９】
上記より、ステップＳ２０３では、例えば、図８に示されるような情報が、ＲＡＭ２５２に生成される。
【００７０】
図８は、キーワードファイルに基づいて生成される情報を示す図である。同図は、図７のキーワードファイルに対応する。同図において、コンテキストとは、拡張メソッド又は拡張プロパティとスクリプトオブジェクトとの対応情報を示す。
【００７１】
なお、同図では、設定値取得系オブジェクトに関して、ＩＰアドレス、ポート番号、ＵＲＩ、及びｍｅｔｈｏｄが設定された例が示されているが、設定値設定系オブジェクト及び実行処理通知系オブジェクトについても、同じ値が設定される。
【００７２】
但し、ＩＰアドレス、ポート番号、ＵＲＩ、及びｍｅｔｈｏｄは、必ずしもキーワードファイルにおいて、設定されていなくてもよい。Ｗｅｂページのスクリプト内において、拡張メソッドの引数の値としてこれらの値が設定されてもよい。この場合、拡張メソッドの実行時において、ＩＰアドレス、ポート番号、ＵＲＩ、又はｍｅｔｈｏｄ等の値が定まる。このことは、Ｗｅｂページごとに、対象アプリケーション等を変更可能であることを意味する。
【００７３】
ところで、図６では、標準のスクリプトに関する処理については便宜上省略されている。すなわち、標準のスクリプトについても、スクリプトオブジェクトの生成、及びメソッドとスクリプトオブジェクトとの対応付け等が行われる。但し、標準のスクリプトに関するメソッド等とスクリプトオブジェクトとの対応関係は、スクリプト解釈部４１４に予めハードコーディングされている。また、標準のスクリプトオブジェクトには、ＩＰアドレス、ポート番号、ＵＲＩ、及びｍｅｔｈｏｄ等は設定されない。
【００７４】
続いて、図５のステップＳ１０２の詳細について説明する。図９は、監視状態の構築処理の処理手順の一例を説明するためのフローチャートである。
【００７５】
ステップＳ３０１において、機器ブラウザ４０１の状態監視部４１６は、監視設定ファイル記憶部４０３より、監視設定ファイルを取得する。
【００７６】
図１０は、監視設定ファイルの構成例を示す図である。同図では、ＸＭＬ形式によって監視設定ファイルが定義されている例を示す。但し、監視設定ファイルは、ＣＳＶ形式等、他の形式によって定義されてもよい。
【００７７】
同図において、監視設定ファイルは、ＴａｒｇｅｔＦｕｎｃｔｉｏｎタグによって囲まれたＴａｒｇｅｔＦｕｎｃｔｉｏｎ要素ｅ３を含む。ＴａｒｇｅｔＦｕｎｃｔｉｏｎ要素ｅ３は、主として、監視対象とするアプリケーション３０１（以下、「対象アプリケーション３０１」という。）を特定するための情報を含む。具体的には、ＴａｒｇｅｔＦｕｎｃｔｉｏｎ要素ｅ３は、ｓｅｒｖｅｒ要素ｅ３１、ｐｏｒｔ要素１２、ＵＲＩ要素ｅ３３、及びｍｅｔｈｏｄ要素ｅ３４等を子要素として含む。
【００７８】
ｓｅｒｖｅｒ要素ｅ３１の値は、対象アプリケーション３０１が所在する画像形成装置１０のＩＰアドレスである。ＩＰアドレスとしては、自機のＩＰアドレスのみならず、他機のＩＰアドレスも指定可能である。ｐｏｒｔ要素ｅ３２の値は、状態情報の取得要求の送信先のポート番号である。ＵＲＩ要素ｅ３３の値は、対象アプリケーション３０１に対する識別子としてのＵＲＩである。ｍｅｔｈｏｄ要素ｅ３４の値は、対象アプリケーション３０１の状態情報の取得要求を送信するためのＨＴＴＰのメソッドである。
【００７９】
監視設定ファイルは、キーワードファイルと同様、対象アプリケーション３０１のインストールパッケージに同梱されていてもよい。但し、ＩＰアドレス等は、ユーザ環境に応じて異なるため、対象アプリケーション３０１のインストール後、ユーザ等によって適切な値に書き換えられればよい。
【００８０】
なお、同図は、一つのアプリケーション３０１に関する監視設定ファイルを示す。ステップＳ３０１では、監視設定ファイル記憶部４０３に記憶されている全ての監視設定ファイルが取得される。
【００８１】
続いて、状態監視部４１６は、取得された各監視設定ファイルの内容を解析する（Ｓ３０２）。ここでいう解析は、監視設定ファイルの内容を構成する各要素について、そのタグ名が示す意味に関連付けて要素の値を取得することをいう。
【００８２】
続いて、状態監視部４１６は、取得された各値を自らに設定する（Ｓ３０３）。その結果、状態監視部４１６は、図１１に示されるような状態となる。
【００８３】
図１１は、監視設定ファイルに基づいて構築される状態監視部の状態の例を示す図である。
【００８４】
同図では、状態監視部４１６は、ＩＰアドレス、ポート番号、ＵＲＩ、及びｍｅｔｈｏｄが設定された様子が示されている。すなわち、状態監視部４１６に、監視対象（ＩＰアドレス、ポート番号、ＵＲＩ）及び状態の取得方法（ｍｅｔｈｏｄ）が設定されたことになる。
【００８５】
続いて、状態監視部４１６は、設定された値によって識別されるアプリケーション３０１の状態の監視処理を実行する（Ｓ３０４）。
【００８６】
続いて、ステップＳ３０４の詳細について説明する。図１２は、アプリケーションの状態の監視処理の処理手順の一例を説明するためのフローチャートである。
【００８７】
定期的な監視時間が到来すると（すなわち、前回の監視時から所定時間が経過すると）（Ｓ４０１でＹｅｓ）、状態監視部４１６は、自らに設定された、ＩＰアドレス及びポート番号によって識別される画像形成装置１０の状態通知部３０４に対して、自らに設定されたＵＲＩを指定して、状態情報の取得要求を送信する（Ｓ４０２）。したがって、ＩＰアドレスが自機を示す場合、当該取得要求は、自機の状態通知部３０４に送信される。ＩＰアドレスが他機を示す場合、当該取得要求は他機の状態通知部３０４に送信される。
【００８８】
当該取得要求を受信した状態通知部３０４は、当該取得要求に指定されたＵＲＩに対応するアプリケーション３０１の状態を確認する。状態の確認方法は、実装に応じて適切な方法が選択されればよい。なお、ＵＲＩと各アプリケーション３０１との対応情報は、例えば、アプリケーション３０１のインストール時において、インストール制御部３０３によって、ＭＥＭ−Ｐ２３１又はＨＤＤ２３３に記録されている。状態通知部３０４は、確認された状態を示す情報（状態情報）を、状態情報の取得要求に対する応答に含めて、状態監視部４１６に返信する。
【００８９】
返信された状態情報が受信されると（Ｓ４０３でＹｅｓ）、状態監視部４１６は、受信された状態情報を、例えば、自らに設定されているＩＰアドレス及びＵＲＩに関連付けてＲＡＭ２５２に記録する（Ｓ４０４）。同一のＩＰアドレス及びＵＲＩに係る状態情報が既に記録されている場合、当該状態情報は、新たに取得された状態情報によって、更新されてもよい。すなわち、監視結果として取得される状態情報は、画像形成装置１０ごと、かつ、アプリケーション３０１ごとに記録される。
【００９０】
一方、状態情報が受信されない場合、すなわち、状態情報の取得要求に対する応答が無い場合（Ｓ４０３でＮｏ）、状態監視部４１６は、通信不能であることを示す状態情報を、例えば、自らに設定されているＩＰアドレス及びＵＲＩに関連付けてＲＡＭ２５２に記録する（Ｓ４０５）。
【００９１】
なお、二台以上の画像形成装置１０における複数のアプリケーション３０１の状態の監視対象とされてもよい。その場合、各アプリケーション３０１に関して、図１２の処理が実行される。
【００９２】
続いて、Ｗｅｂページに関して機器ブラウザ４０１が実行する処理を説明する。
【００９３】
図１３は、Ｗｅｂページに関して機器ブラウザが実行する処理手順の一例を説明するためのフローチャートである。例えば、操作パネル２０２において所定のボタンが押下されると、機器ブラウザ４０１は、ブラウザ画面を操作パネル２０２に表示させる。ブラウザ画面には、例えば、ＵＲＬの入力領域やＷｅｂページの表示領域等を有する。
【００９４】
ステップＳ４０１において、ＵＲＬが指定されると、機器ブラウザ４０１のＷｅｂページ取得部４１１は、当該ＵＲＬ宛にＷｅｂページの取得要求を送信して、当該Ｗｅｂページを取得（ダウンロード）する（Ｓ４０２）。なお、ＵＲＬの指定は、例えば、上記したＵＲＬの入力領域を介して行われてもよいし、予めＮＶＲＡＭ２５４等に記録されていてもよい。また、Ｗｅｂページの取得先は、ＵＲＬに応じて、Ｗｅｂサーバ装置１０又は画像形成装置１０（自機又は他機を問わない。）とされる。
【００９５】
図１４は、Ｗｅｂページの定義例を示す図である。同図に示されるＷｅｂページ（ＨＴＭＬデータ）の定義形式は、一般的なＷｅｂページのそれと同様である。但し、拡張スクリプトが含まれている点が、一般的なＷｅｂページと異なる。例えば、スクリプトｓｃ１に含まれている各メソッドは、拡張メソッドである。
【００９６】
続いて、機器ブラウザ４０１は、取得されたＷｅｂページが示す操作画面を操作パネル２０２（Ｗｅｂページ表示領域）に表示させる（Ｓ４０３）。より詳しくは、Ｗｅｂページは、パース部４１２によってパースされる。描画部４１３は、パース結果に基づいて、操作画面を描画（表示）する。例えば、ステップＳ５０１において指定されたＵＲＬが、スキャンジョブ用の操作画面を表示させるＷｅｂページに対するＵＲＬであれば、ステップＳ４０３では、スキャンジョブ用の操作画面が表示される。
【００９７】
続いて、機器ブラウザ４０１は、イベントの発生を待機する（Ｓ５０４）。例えば、Ｗｅｂページに基づいて表示された操作画面上の表示部品（ボタン等）が押下（又はタッチ）され、当該表示部品に関連付けられている情報がリンクであれば、リンク先のＵＲＬに関してステップＳ５０２移行が実行される。
【００９８】
一方、表示されているＷｅｂページのスクリプトに関連付けられているイベントが発生した場合、スクリプト解釈部４１４は、当該スクリプト内のメソッド等に対応するスクリプトオブジェクトを呼び出す（Ｓ５０５）。メソッド等に対応するスクリプトオブジェクトの呼び出しは、図８において説明したコンテキストに基づいて実行される。スクリプトオブジェクトには、対応するメソッドに指定された引数の値等が渡される。
【００９９】
なお、スクリプトに関連付けられているイベントとは、例えば、Ｗｅｂページに基づいて表示されている操作画面上の表示部品の操作や、操作パネル２０２上の所定のハードボタン（スタートボタン）の操作等が挙げられる。
【０１００】
呼び出されたスクリプトオブジェクトが、標準のスクリプトオブジェクトである場合（Ｓ５０６でＮｏ）、当該スクリプトオブジェクトは、スクリプトに応じた処理を操作パネル２０２に実行させる（Ｓ５０７）。
【０１０１】
一方、呼び出されたスクリプトオブジェクトが、拡張スクリプトオブジェクトである場合（Ｓ５０６でＹｅｓ）、当該拡張スクリプトオブジェクトは、自らに設定されているＩＰアドレス及びＵＲＩに係るアプリケーション３０１の状態情報を確認する（Ｓ５０８）。すなわち、状態監視部４１６によってＲＡＭ２５２に記録されている状態情報のうち、当該拡張スクリプトオブジェクトに設定されているＩＰアドレス及びＵＲＩに関連付けられている状態情報が参照される。
【０１０２】
当該状態情報に基づいて、対象アプリケーション３０１は正常に動作中であると判定される場合（Ｓ５０９でＹｅｓ）、当該拡張スクリプトオブジェクトは、自らに設定されている、ＩＰアドレス及びポート番号宛に、自らに設定されているＵＲＩ及びｍｅｔｈｏｄを指定して、ＨＴＴＰリクエスト（対象アプリケーション３０１に関する処理要求）を、通信制御部４０４を用いて送信する（Ｓ５１０）。例えば、当該拡張オブジェクトが設定値取得系オブジェクトである場合、当該設定値取得系オブジェクトに対応する設定値取得系メソッドの引数に指定されている設定項目名の設定値の取得要求が送信される。当該拡張オブジェクトが設定値設定系オブジェクトである場合、当該設定値設定系オブジェクトに対応する設定値設定系メソッドの引数に指定された設定項目名に対する設定値の設定要求が送信される。当該拡張オブジェクトが実行処理通知系オブジェクトである場合、対象アプリケーション３０１の処理の実行要求が送信される。
【０１０３】
ところで、図１４のスクリプトｓｃ１では、同じ拡張メソッド（ｄｏＥｘＦｕｎｃｔｉｏｎ）が３回呼び出されている。この場合、当該拡張メソッドに対応する同一の拡張スクリプトオブジェクトが３回呼び出される。但し、拡張メソッドｍｔ１には、引数は指定されていない。一方、メソッドｍｔ２及びｍｔ３には、それぞれ異なるＩＰアドレスが指定されている。メソッドｍｔ２及びｍｔ３に指定されたＩＰアドレスは、メソッドｍｔ２及びｍｔ３の実行時において、拡張スクリプトオブジェクトに通知される。拡張スクリプトオブジェクトは、当該ＩＰアドレスを、キーワードファイルに基づいて設定されたＩＰアドレスに対して優先させる。すなわち、メソッドｍｔ１に関しては、キーワードファイルの指定されたＩＰアドレスに係る画像形成装置１０が処理要求の送信先となる。メソッドｍｔ２及びｍｔ３に関しては、メソッドｍｔ２又はｍｔ３の引数に指定されたＩＰアドレスに係る画像形成装置１０が処理要求の送信先となる。
【０１０４】
拡張メソッドの引数の値が、キーワードファイルの値よりも優先されるのは、ポート番号、ＵＲＩ、及びｍｅｔｈｏｄ等についても同様である。
【０１０５】
なお、図１４では、第一引数はＩＰアドレスであるという規則が有ることが前提とされる。引数の並び順の柔軟性を確保するために、"ＩＰアドレス＝ｘｘｘ．ｘｘｘ．ｘｘｘ．ｘｘｘ"といった形式で、引数が指定されてもよい。
【０１０６】
続いて、ステップＳ５１０において送信された、対象アプリケーション３０１に関する処理要求を受信した画像形成装置１０が実行する処理手順について説明する。
【０１０７】
図１５は、対象アプリケーションに関する処理要求の受信に応じて実行される処理手順の一例を説明するためのフローチャートである。
【０１０８】
各画像形成装置１０のコントローラ２０１のスクリプト処理実行部３０２は、通信制御部３０５を介して、処理の実行要求に係るＨＴＴＰリクエストの受信を待機している（Ｓ６０１）。通信制御部３０５によってＨＴＴＰリクエストが受信されると（Ｓ６０１でＹｅｓ）、スクリプト処理実行部３０２は、当該ＨＴＴＰリクエストにおいて指定されているＵＲＩによって識別される対象アプリケーション３０１に対して、処理要求に応じた処理を実行する（Ｓ６０２）。例えば、設定値取得系の処理要求であれば、スクリプト処理実行部３０２は、設定値の取得要求を対象アプリケーション３０１に入力する。設定値設定系の処理要求であれば、スクリプト処理実行部３０２は、設定値の設定要求を対象アプリケーション３０１に入力する。実行処理通知系の処理要求であれば、スクリプト処理実行部３０２は、処理に実行要求を対象アプリケーション３０１に入力する。
【０１０９】
すなわち、スクリプト処理実行部３０２は、拡張スクリプトオブジェクトがどのような処理要求を送信するかを予め知っており、当該処理要求に応じて適切な処理が実行可能なように実装されている。
【０１１０】
スクリプト処理実行部３０２は、処理の実行結果を処理要求元の拡張スクリプトオブジェクトに返信する（Ｓ６０３）。例えば、設定値取得系あれば、取得された設定値が返信される。設定値設定系であれば、設定値の設定の成否を示す情報が返信される。実行処理通知系の処理要求であれば、対象アプリケーション３０１による処理の実行結果が返信される。
【０１１１】
上記において説明した処理を各画像形成装置１０が実行することによって、画像形成装置１０間に、例えば、図１６に示されるような関係が形成される。
【０１１２】
図１６は、画像形成装置間に形成される関係の一例を示す図である。同図では、画像形成装置１０ａが、画像形成装置１０ｂ及び１０ｃのアプリケーション３０１の状態を監視している例が示されている。また、画像形成装置１０ａが、Ｗｅｂページに含まれている拡張スクリプトに基づいて、画像形成装置１０ｂ及び１０ｃを制御している例が示されている。
【０１１３】
なお、図１６に示される関係は、画像形成装置１０ａからの一方向ではなく、各画像形成装置１０間の双方向に形成されてもよい。
【０１１４】
上述したように、本実施の形態によれば、画像形成装置１０は、Ｗｅｂページ内のスクリプトに基づいて、他の画像形成装置１０を制御する（他の画像形成装置１０に処理を実行させる）ことができる。
【０１１５】
また、拡張スクリプトは、キーワードファイルに基づいて判定される。すなわち、いずれが拡張スクリプトであるか否かは、機器ブラウザ４０１にハードコーディングされていない。したがって、画像形成装置１０に新たなアプリケーション３０１がインストール（追加）された場合、当該アプリケーション３０１（当該アプリケーション３０１に係るＵＲＩ）に対応する拡張スクリプトを、キーワードファイルによって容易に追加することができる。
【０１１６】
また、アプリケーション３０１の追加に応じた機器ブラウザ４０１のソースコードの改変の必要性は非常に低いため、機器ブラウザ４０１の品質を安定させることができる。
【０１１７】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【０１１８】
１            情報処理システム
１０ａ、１０ｂ、１０ｃ    画像形成装置
３０          Ｗｅｂサーバ装置
４０          ネットワーク
２０１        コントローラ
２０２        操作パネル
２０３        ファクシミリコントロールユニット
２１１        ＣＰＵ
２１２        ＡＳＩＣ
２２１        ＮＢ
２２２        ＳＢ
２３１        ＭＥＭ−Ｐ
２３２        ＭＥＭ−Ｃ
２３３        ＨＤＤ
２３４        メモリカードスロット
２３５        メモリカード
２４１        ＮＩＣ
２４２        ＵＳＢデバイス
２４３        ＩＥＥＥ１３９４デバイス
２４４        セントロニクスデバイス
２４５        通信Ｉ／Ｆ
２５１        ＣＰＵ
２５２        ＲＡＭ
２５３        ＲＯＭ
２５４        ＮＶＲＡＭ
２５５        ＮＩＣ
２５６        通信Ｉ／Ｆ
３０１        アプリケーション
３０１ａ      印刷アプリ
３０１ｂ      スキャンアプリ
３０２        スクリプト処理実行部
３０３        インストール制御部
３０４        状態通知部
３０５        通信制御部
４０１        機器ブラウザ
４０２        キーワードファイル記憶部
４０３        監視設定ファイル記憶部
４０４        通信制御部
４１１        Ｗｅｂページ取得部
４１２        パース部
４１３        描画部
４１４        スクリプト解釈部
４１５        スクリプト実装部
４１６        状態監視部
【先行技術文献】
【特許文献】
【０１１９】
【特許文献１】特開２００６−３５２８４５号公報
【図１】
2012135907.tif 000003
【図２】
2012135907.tif 000004
【図３】
2012135907.tif 000005
【図４】
2012135907.tif 000006
【図５】
2012135907.tif 000007
【図６】
2012135907.tif 000008
【図７】
2012135907.tif 000009
【図８】
2012135907.tif 000010
【図９】
2012135907.tif 000011
【図１０】
2012135907.tif 000012
【図１１】
2012135907.tif 000013
【図１２】
2012135907.tif 000014
【図１３】
2012135907.tif 000015
【図１４】
2012135907.tif 000016
【図１５】
2012135907.tif 000017
【図１６】
2012135907.tif 000018