(57)【特許請求の範囲】
【請求項１】
画像処理装置と通信可能な情報処理装置であって、
前記画像処理装置が備えるＷｅｂブラウザに表示された画面に対するユーザからの入力に基づいた入力情報を受信する第１の受信手段と、
前記受信した入力情報に基づいて、前記画像処理装置に対して機能の実行指示を送信する第１の送信手段と、
前記画像処理装置が前記実行指示に応じた機能を実行中に表示する画面として前記情報処理装置が生成した画面情報に基づく画面と前記画像処理装置が生成した画面のどちらを用いるかを特定するための指定情報を前記画像処理装置に送信する第２の送信手段と、
前記画像処理装置が前記機能を実行中に当該画像処理装置の表示部に表示する画面として前記情報処理装置が生成した画面を用いる場合、前記画像処理装置が備えるＷｅｂブラウザに画面を表示させるための画面情報を送信する第３の送信手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記第１の送信手段及び前記第２の送信手段は、前記画像処理装置が備えるサービスアプリケーションのうち前記入力情報によって特定されるサービスアプリケーションに対して実行指示又は指定情報を送信し、前記第３の送信手段は、前記画像処理装置が備えるＷｅｂブラウザに対して画面情報を送信することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記第３の送信手段は、前記第１の受信手段によって受信された入力情報に対する応答として、前記画面情報を送信することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記実行指示に応じた機能の実行結果を前記画像処理装置から受信する第２の受信手段と、
前記第２の受信手段によって受信された実行結果に対応する画面を前記画像処理装置が備えるＷｅｂブラウザに表示させるための画面情報を送信する第４の送信手段と、
を有することを特徴とする請求項１乃至３の何れか一項に記載の情報処理装置。
【請求項５】
前記第１の送信手段によって送信される実行指示によって前記画像処理装置において実行される機能は、スキャン機能又はプリント機能であることを特徴とする請求項１乃至４の何れか一項に記載の情報処理装置。
【請求項６】
前記第３の送信手段によって送信される画面情報は、ＨＴＭＬファイルであることを特徴とする請求項１乃至５の何れか一項に記載の情報処理装置。
【請求項７】
Ｗｅｂブラウザを備えた画像処理装置であって、
前記Ｗｅｂブラウザに表示された画面に対するユーザからの入力に基づいた入力情報を情報処理装置に送信する送信手段と、
前記入力情報に基づいて前記情報処理装置から送信された機能の実行指示を受信する第１の受信手段と、
前記実行指示に応じた機能を実行する実行手段と、
前記実行手段による機能の実行中に前記画像処理装置が表示する画面として前記情報処理装置が生成した画面情報に基づく画面と前記画像処理装置が生成した画面のどちらを用いるかを特定するための指定情報を前記情報処理装置から受信する第２の受信手段と、
前記指定情報に基づいて、前記情報処理装置が生成した画面情報に基づく画面を用いる場合、当該情報処理装置から送信された画面情報から生成された画面を前記Ｗｅｂブラウザに表示させ、前記画像処理装置が生成した画面を用いる場合、当該画像処理装置が生成した画面を表示させる制御手段と、
を有することを特徴とする画像処理装置。
【請求項８】
画像処理装置と通信可能な情報処理装置の制御方法であって、
前記画像処理装置が備えるＷｅｂブラウザに表示された画面に対するユーザからの入力に基づいた入力情報を受信する第１の受信ステップと、
前記受信した入力情報に基づいて、前記画像処理装置に対して機能の実行指示を送信する第１の送信ステップと、
前記画像処理装置が前記実行指示に応じた機能を実行中に表示する画面として前記情報処理装置が生成した画面情報に基づく画面と前記画像処理装置が生成した画面のどちらを用いるかを特定するための指定情報を前記画像処理装置に送信する第２の送信ステップと、
前記画像処理装置が前記機能を実行中に当該画像処理装置の表示部に表示する画面として前記情報処理装置が生成した画面を用いる場合、前記画像処理装置が備えるＷｅｂブラウザに画面を表示させるための画面情報を送信する第３の送信ステップと、
を有することを特徴とする制御方法。
【請求項９】
Ｗｅｂブラウザを備えた画像処理装置の制御方法であって、
前記Ｗｅｂブラウザに表示された画面に対するユーザからの入力に基づいた入力情報を情報処理装置に送信する送信ステップと、
前記入力情報に基づいて前記情報処理装置から送信された機能の実行指示を受信する第１の受信ステップと、
前記実行指示に応じた機能を実行する実行ステップと、
前記実行ステップによる機能の実行中に前記画像処理装置が表示する画面として前記情報処理装置が生成した画面情報に基づく画面と前記画像処理装置が生成した画面のどちらを用いるかを特定するための指定情報を前記情報処理装置から受信する第２の受信ステップと、
前記指定情報に基づいて、前記情報処理装置が生成した画面情報に基づく画面を用いる場合、当該情報処理装置から送信された画面情報から生成された画面を前記Ｗｅｂブラウザに表示させ、前記画像処理装置が生成した画面を用いる場合、当該画像処理装置が生成した画面を表示させる制御ステップと、
を有することを特徴とする制御方法。
【請求項１０】
請求項８又は請求項９の制御方法の各ステップをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置と通信可能な情報処理装置、Ｗｅｂブラウザを備えた画像処理装置、これらの制御方法及びプログラムに関する。
【背景技術】
【０００２】
ＰＣなどの情報処理装置がネットワーク上のＷｅｂサーバと接続され、Ｗｅｂサーバにより提供される操作画面を、情報処理装置が備えるＷｅｂブラウザ上に表示することが知られている。この場合、情報処理装置のＷｅｂブラウザがＷｅｂサーバに対して操作画面を要求する。そしてＷｅｂサーバ上のＷｅｂアプリケーションが情報処理装置からの要求に応えて、Ｗｅｂブラウザに操作画面を表示させるためのＨＴＭＬファイルを情報処理装置に送信する。情報処理装置のＷｅｂブラウザは、受信したＨＴＭＬファイルを解析し、受信したＨＴＭＬファイルの記述に基づいた操作画面を表示する。更に、Ｗｅｂブラウザに表示された操作画面を用いてユーザが指示を入力すると、入力された指示をＷｅｂブラウザがＷｅｂサーバに対して通知する。そして、この通知を受けたＷｅｂサーバ上のＷｅｂアプリケーションは、その指示に従って処理を実行する。
【０００３】
ところで、最近ではスキャナやプリンタを備えたＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）の中にも、上述したようなＷｅｂブラウザを備えているものがある。そして、ＭＦＰは、上述した手順を用いてＷｅｂサーバにより提供される操作画面をＭＦＰのＷｅｂブラウザに表示し、ユーザからの各種指示を受け付ける。
【０００４】
また更には、特許文献１のような技術も考えられている。特許文献１の記載によれば、ＭＦＰが備えるスキャンやプリント等の各機能を利用するための指示を入力する操作画面を、Ｗｅｂサーバが提供する。即ち、ＭＦＰのユーザは、Ｗｅｂブラウザ上に表示された操作画面を用いて、ＭＦＰに対する指示を入力する。そして、入力された指示はＭＦＰのＷｅｂブラウザによってＷｅｂサーバに通知される。通知を受けたＷｅｂサーバは、ユーザから入力された指示に対応する機能の実行指示をＭＦＰに対して行う。そして、この実行指示を受けたＭＦＰは、指示された機能を実行する。この技術を用いることによって、ＭＦＰを操作するための全メニューデータをＭＦＰ内で保持しておく必要がなくなり、またメニューデータの変更もＷｅｂサーバ上で容易に行うことができるようになる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−０４２０９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述した技術におけるＭＦＰでは、Ｗｅｂサーバからの実行指示に応じた機能を実行中に表示部に表示する画面として、ＭＦＰ内部に保持しているプログラムを読み出して生成した画面を用いている。こうすることで、ＭＦＰが機能を実行中に表示する画面をＷｅｂサーバ側で生成する必要がなくなり、Ｗｅｂサーバ側の負荷を軽減することができる。
【０００７】
しかしながらこの場合、ＭＦＰの各機能を利用する指示を入力する操作画面をＷｅｂサーバが提供するにも関わらず、機能を実行中の画面に関してはＷｅｂサーバが生成した画面を利用できないことになる。Ｗｅｂサーバ上のＷｅｂアプリケーションによっては、機能を利用する指示を入力する操作画面のみならず機能を実行中の画面も提供することによってよりユーザの操作性が向上する場合もある。しかしながらそうした場合でも、ＭＦＰが機能を実行中に表示する画面として、Ｗｅｂサーバが生成した画面を用いることはできなかった。
【０００８】
本発明は、これらの問題点を鑑みてなされたものであり、画像処理装置の操作画面をＷｅｂサーバが提供する技術において、ユーザの操作性をより向上させることを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明の情報処理装置は、画像処理装置と通信可能な情報処理装置であって、前記画像処理装置が備えるＷｅｂブラウザに表示された画面に対するユーザからの入力に基づいた入力情報を受信する第１の受信手段と、前記受信した入力情報に基づいて、前記画像処理装置に対して機能の実行指示を送信する第１の送信手段と、前記画像処理装置が前記実行指示に応じた機能を実行中に表示する画面として前記情報処理装置が生成した画面情報に基づく画面と前記画像処理装置が生成した画面のどちらを用いるかを特定するための指定情報を前記画像処理装置に送信する第２の送信手段と、前記画像処理装置が前記機能を実行中に当該画像処理装置の表示部に表示する画面として前記情報処理装置が生成した画面を用いる場合、前記画像処理装置が備えるＷｅｂブラウザに画面を表示させるための画面情報を送信する第３の送信手段とを有することを特徴とする。
【００１０】
また上記目的を達成するために、本発明の画像処理装置は、Ｗｅｂブラウザを備えた画像処理装置であって、前記Ｗｅｂブラウザに表示された画面に対するユーザからの入力に基づいた入力情報を情報処理装置に送信する送信手段と、前記入力情報に基づいて前記情報処理装置から送信された機能の実行指示を受信する第１の受信手段と、前記実行指示に応じた機能を実行する実行手段と、前記実行手段による機能の実行中に前記画像処理装置が表示する画面として前記情報処理装置が生成した画面情報に基づく画面と前記画像処理装置が生成した画面のどちらを用いるかを特定するための指定情報を前記情報処理装置から受信する第２の受信手段と、前記指定情報に基づいて、前記情報処理装置が生成した画面情報に基づく画面を用いる場合、当該情報処理装置から送信された画面情報から生成された画面を前記Ｗｅｂブラウザに表示させ、前記画像処理装置が生成した画面を用いる場合、当該画像処理装置が生成した画面を表示させる制御手段とを有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、画像処理装置の操作画面をＷｅｂサーバが提供する技術において、ユーザの操作性をより向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】実施例における情報処理システムの構成図
【図２】実施例におけるＷｅｂサーバとＭＦＰのハードウェアブロック図
【図３】実施例におけるＷｅｂサーバとＭＦＰのソフトウェア構成図
【図４】実施例におけるＷｅｂブラウザの表示画面の例
【図５】実施例におけるＷｅｂサーバの動作を示すフローチャート
【図６】実施例におけるＭＦＰの動作を示すフローチャート
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【実施例１】
【００１４】
図１は、本実施例における情報処理システム１００の構成例を示す図である。情報処理システム１００は、Ｗｅｂブラウザ機能を有するＭＦＰ１０３、及びＷｅｂサーバ機能を有するＷｅｂサーバ１０２を備える。１０１はＬＡＮ（ＬｏｃａｌＡｒｅａＮｅｔｗｏｒｋ）であり、Ｗｅｂサーバ１０２、ＭＦＰ１０３間の接続機構であり、Ｗｅｂサーバ１０２とＭＦＰ１０３はＬＡＮを介して通信可能に構成されている。
【００１５】
Ｗｅｂサーバ１０２は、ＭＦＰ１０３が備えるＷｅｂブラウザ３０１からの要求を受けて、画面情報としてのＧＵＩ（ＧｒａｐｈｉｃＵｓｅｒＩｎｔｅｒｆａｃｅ）データを応答として返す処理を行う。ＧＵＩデータは例えばＨＴＭＬ形式のファイルであるが、ＨＴＭＬファイル以外の形式であってもよいし、スクリプト等のＷｅｂブラウザで実行されるプログラムを含む場合もある。また、Ｗｅｂサーバ１０２は、前記ＧＵＩデータに基づく画面を用いて入力された入力情報をＷｅｂブラウザ３０１から受信する。そして、ＭＦＰ１０３が備える複数のサービスアプリケーションの中から、入力情報に対応するサービスアプリケーションに対して機能の実行指示を送信する。その後、このサービスアプリケーションによる機能の実行結果を受けると、処理結果を示すＧＵＩデータを作成してＷｅｂブラウザ３０１に対して送信する処理を行う。
【００１６】
ＭＦＰ１０３は、Ｗｅｂブラウザ３０１と少なくとも一つのサービスアプリケーションを有しており、Ｗｅｂサーバ１０２へＧＵＩデータを要求し、Ｗｅｂサーバ１０２から送られたＧＵＩデータに基づいて生成された画面を表示部に表示する。また、このＧＵＩデータに基づく画面から入力された入力情報をＷｅｂサーバ１０２へ送信する。以降の説明では、Ｗｅｂサーバから送られたＧＵＩデータに基づいて生成された画面をＷｅｂＵＩと呼ぶ。一方、ＭＦＰ１０３は、自装置が保持するプログラムを読み出して生成した画面を表示することも可能であり、以降の説明では、ＭＦＰ１０３自身で生成した画面をＮａｔｉｖｅＵＩと呼ぶ。
【００１７】
尚、ＭＦＰ１０３は画像処理装置の一例であり、プリンタやスキャナ、ＦＡＸ、コピー機等、その他の画像処理装置であってもよい。また、Ｗｅｂサーバ１０２は、上記Ｗｅｂサーバの機能を備えるものであれば、ＰＣ等のコンピュータに限らず、プリンタ等を含むあらゆる情報処理装置によって実現可能である。またＬＡＮ１０１は、インターネットや無線通信等の通信手段であってもよい。
【００１８】
次に図２を用いて、本実施例の情報処理システム１００におけるＷｅｂサーバ１０２、ＭＦＰ１０３のハードウェア構成について説明する。
【００１９】
図において、ＣＰＵ２０２を含む制御部２０１はＭＦＰ１０３を統括的に制御する。ＣＰＵ２０２はＲＯＭ２０３又はＨＤＤ２０５に記憶された制御プログラムをＲＡＭ２０４上に読み出して各種制御処理を実行する。ＲＡＭ２０４はＣＰＵ２０２の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ２０５は画像データや各種プログラム、あるいは各種情報テーブルを記憶する。操作部Ｉ／Ｆ２０６は操作部２１１と制御部２０１とを接続する。
【００２０】
操作部２１１は表示部（タッチパネル機能を有する液晶表示部など）やキーボードが備えられている。プリンタＩ／Ｆ２０７は、プリンタ２１２と制御部２０１とを接続する。プリンタ２１２で印刷すべき画像データはプリンタＩ／Ｆ２０７を介して制御部２０１からプリンタ２１２に転送され、プリンタ２１２において記録媒体上に印刷される。
【００２１】
スキャナＩ／Ｆ２０８は、スキャナ２１３と制御部２０１とを接続する。スキャナ２１３は、原稿上の画像を読み取り画像データを生成して、スキャナＩ／Ｆ２０８を介して制御部２１０に生成した画像データを渡す。ネットワークＩ／Ｆ２０９は、ＬＡＮ１０１上のＷｅｂサーバ１０２等と各種情報の送受信を行う制御部である。ＭＦＰ１０３の上記構成において装置に電源を投入すると、ＣＰＵ２０２はＲＯＭ２０３のブートプログラムに従って装置を初期化し、ＨＤＤ２０５等にあるＯＳのロードを行い、その後で各種アプリケーション等を動作させる。
【００２２】
次にＷｅｂサーバ１０２のハードウェア構成について説明する。
ＣＰＵ２２３を含む制御部２１１はＷｅｂサーバ１０２を統括的に制御する。ＣＰＵ２２３はＲＯＭ２２４又はＨＤＤ２２６に記憶された制御プログラムをＲＡＭ２２５上に読み出して各種制御処理を実行する。ＲＡＭ２２５はＣＰＵ２２３の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ２２６は画像データや各種プログラム、あるいは各種情報テーブルを記憶する。ネットワークＩ／Ｆ２２２は、制御部２２１をＬＡＮ１０１に接続して、ＬＡＮ１０１上のＭＦＰ等と各種情報を送受信する制御部である。
【００２３】
Ｗｅｂサーバ１０２の上記構成において装置に電源を投入すると、ＣＰＵ２２３はＲＯＭ２２４のブートプログラムに従って装置を初期化し、ＨＤＤ２２６等にあるＯＳのロードを行い、その後で各種アプリケーション等を動作させる。
【００２４】
図３は、本実施例の情報処理システム１００におけるＷｅｂサーバ１０２、ＭＦＰ１０３のソフトウェア機能構成について説明する。
図３に示す各ソフトウェア機能は、ＭＦＰ１０３ではＲＯＭ２０３もしくはＨＤＤ２０５に保存され、ＣＰＵ２０２が実行することによって実現される。またＷｅｂサーバ１０２ではＲＯＭ２２４もしくはＨＤＤ２２６に保存され、ＣＰＵ２２３が実行することによって実現される。また、実行時に使用する各種情報はＭＦＰ１０３では、ＲＡＭ２０４もしくはＨＤＤ２０５に保持してソフトウェア機能間でのやりとりを行う。同様にＷｅｂサーバ１０２では、ＲＡＭ２２５もしくはＨＤＤ２２６に保持してソフトウェア機能間での各種情報のやりとりを行う。また、外部機器との通信は、ＭＦＰ１０３ではネットワークＩ／Ｆ２０９、Ｗｅｂサーバ１０２ではネットワークＩ／Ｆ２２２を用いる。
【００２５】
次に各ソフトウェア機能の説明を行う。
ＭＦＰ１０３は、Ｗｅｂブラウザ３０１、プリントサービスアプリケーション３０６、スキャンサービスアプリケーション３０７、プリント機能部３０８、スキャン機能部３０９、ＵＩ判定部３１０、ＮａｔｉｖｅＵＩ制御部３１１、ＵＩ制御部３１２を含む。
【００２６】
Ｗｅｂブラウザ３０１は、表示部３０２、指示部３０３、解析部３０４および通信部３０５を含む。
通信部３０５は、ＨＴＴＰプロトコルに従ってＷｅｂアプリケーション３２０のプレゼンテーション部３２１と通信を行う。具体的には、指示部３０３からの指示をＷｅｂアプリケーション３２０に送信し、プレゼンテーション部３２１からのＧＵＩデータを応答として受信する。そして受信したＧＵＩデータを解析部３０４に渡す処理を行う。
【００２７】
解析部３０４は、通信部３０５が受信したＧＵＩデータを解析して画面表示用の表示データを生成し、表示部３０２に渡す処理を行う。また、指示部３０３からの指示を解析してＨＴＴＰプロトコルに従った形式のデータを通信部３０５に渡す処理を行う。表示部３０２は、解析部３０４から受け取った表示データに基づいて画面を表示する。
【００２８】
指示部３０３は、表示部３０２に表示された画面に対してユーザから入力があった際に、その入力の内容を示す入力情報を、ＵＩ制御部３１２を介して受け付け、解析部３０４に渡す処理を行う。
【００２９】
以上説明したようにＷｅｂブラウザ３０１は、ＭＦＰ１０３における画面情報および画面操作に基づく入力情報を、Ｗｅｂアプリケーション３２０とやりとりするソフトウェア機能となる。
【００３０】
次に、プリントサービスアプリケーション３０６は、ＭＦＰ１０３のプリント機能部３０８を外部からの指示により動作させるサービスアプリケーションである。具体的には、まず、Ｗｅｂアプリケーション３１１は、Ｗｅｂブラウザ３０１からの入力情報を受信する。その後、ロジック部３１３は、ＭＦＰ１０３のプリント機能部３０８をプリントサービスアプリケーション３０６を介して利用する。また、プリントサービスアプリケーション３０６はＷｅｂアプリケーション３２０から要求されたプリント機能の処理状況を、要求元のＷｅｂサーバ１０２に通知する。
【００３１】
スキャンサービスアプリケーション３０７は、基本的にプリントサービスアプリケーション３０６と同様の処理を行うが、動作させる対象がプリント機能部ではなくスキャン機能部３０９である点が異なる。プリントサービスアプリケーション３０６とスキャンサービスアプリケーション３０７は、ＭＦＰ１０３が備えるサービスアプリケーションの一例であり、これ以外のサービスアプリケーションを備えていてもよい。
【００３２】
プリント機能部３０８は、プリンタＩ／Ｆ２０７を経由してプリンタ機能２１２を制御するソフトウェア機能である。また同様にスキャン機能部３０９はスキャナＩ／Ｆ２０８を経由してスキャナ機能２１３を制御するソフトウェア機能である。
【００３３】
ＮａｔｉｖｅＵＩ制御部３１１はプリント機能部３０８、スキャン機能部３０９の状態やＭＦＰ１０３の状態に応じて、表示データを生成しＵＩ制御部３１２に渡す処理を行う。また、操作部２１１からユーザによって入力された入力情報をＵＩ制御部３１２を介して受け付け、プリント機能部３０８やスキャン機能部３０９に渡す処理を行う。
【００３４】
ＵＩ判定部３１０はプリントサービスアプリケーション３０６やスキャンサービスアプリケーション３０７が受け取ったＷｅｂアプリケーション３２０からの指定情報を解析する。そしてその解析結果に基づいて、ＭＦＰ１０３が機能の実行中に表示部に表示する画面としてＷｅｂＵＩを使用するかＮａｔｉｖｅＵＩを使用するかを判定する。
【００３５】
ＵＩ制御部３１２はＵＩ判定部３１０の判定結果に基づいて、ＮａｔｉｖｅＵＩ制御部３１１または、Ｗｅｂブラウザ３０１から表示データを受け取り、操作部２１１に表示する。また、操作部２１１からの入力情報をＵＩ判定部３１０の判定結果に基づいて、ＮａｔｉｖｅＵＩ３１１、またはＷｅｂブラウザ３０１に通知する。
【００３６】
次にＷｅｂサーバ１０２のソフトウェア機能について説明する。
Ｗｅｂサーバ１０２は、Ｗｅｂアプリケーション３２０を備える。Ｗｅｂアプリケーション３２０には、プレゼンテーション部３２１、ロジック部３２２が含まれる。
【００３７】
プレゼンテーション部３２１は、通信部３０５と通信を行いＷｅｂブラウザ３０１からの要求に応じて、Ｗｅｂブラウザ３０１の表示用のＧＵＩデータを通信部３０５に送信する。また、Ｗｅｂブラウザ３０１の表示部３０２に表示された画面に対してユーザが入力した内容を示す入力情報を受信する。また受信した入力情報がＭＦＰ１０３が備える機能（例えばプリント機能やスキャン機能）の実行指示であった場合は、その情報をロジック部３２２に渡す。
【００３８】
ロジック部３２２は、プレゼンテーション部３２１からＭＦＰ１０３が備える機能の実行指示を受け取る。そして受け取った実行指示に従い、対象のＭＦＰ１０３におけるプリントサービスアプリケーション３０６やスキャンサービスアプリケーション３０７等の各種サービスアプリケーションに機能の実行を指示する。
【００３９】
本実施例では、ロジック部３２２がＭＦＰ１０３の各種サービスアプリケーションに送信する情報として２つの情報がある。一つは前述の機能実行指示であり、もう一つは、ＭＦＰ１０３が機能を実行中に操作部２１１上の表示部に表示する画面としてＷｅｂＵＩとＮａｔｉｖｅＵＩのどちらを用いるかを特定するための指定情報である。これらの情報はロジック部３２２から別々にＭＦＰ１０３に送られてもよいし、一つにまとめて送られてもよい。送信方法の例としては、Ｗｅｂサーバ１０２とＭＦＰ１０３のサービスアプリケーションとの通信がＷｅｂサービスのプロトコル（例えばＳＯＡＰ）である場合は、ＸＭＬデータ内にタグを挿入する方法がある。しかしこれに限らず、これらの情報をサービスアプリケーションに送信できるものであれば、その他の方法を用いても構わない。
【００４０】
図４は、ＭＦＰ１０３のＷｅｂブラウザ３０１の表示部３０２に表示される画面の例であり、ＭＦＰ１０３に実行させる機能をユーザが選択するためのメニュー画面を示している。この画面は、Ｗｅｂブラウザ３０１からの要求に応じてＷｅｂサーバ１０２のプレゼンテーション部３２１によって生成されたＧＵＩデータに基づいて生成された画面である。
【００４１】
図４の画面４０１は、表示部３０２に表示される画面全体を示し、メニュー４０２およびメニュー４０３を含んでいる。
【００４２】
メニュー４０２は、スキャンサービスアプリケーション３０７とプリントサービスアプリケーション３０６を組み合わせてコピー機能を実行するメニューの一例である。また、メニュー４０３は、スキャンサービスアプリケーション３０７とプリントサービスアプリケーション３０６を組み合わせて、読み取った画像から申請書を作成する申請書作成機能を実行するメニューの一例である。
【００４３】
本実施例では、メニュー４０２のコピー機能では、スキャンサービスアプリケーション実行中にＭＦＰ１０３に表示される画面としてＮａｔｉｖｅＵＩを用いるものとする。一方、メニュー４０３の申請書作成機能においては、スキャンサービスアプリケーション実行中にＭＦＰ１０３に表示される画面としてＷｅｂＵＩを用いるものとする。
【００４４】
図４の画面において、ユーザがメニュー４０２又は４０３を選択する（タッチパネル上の該当箇所を押下する）と、その入力の内容を示す入力情報がＷｅｂサーバ１０２のＷｅｂアプリケーション３２０へ送信される。Ｗｅｂアプリケーション３２０のプレゼンテーション部３２１は、この入力情報を受信し、入力情報に対応するＧＵＩデータを生成してＭＦＰ１０３のＷｅｂブラウザ３０１へ送信する。Ｗｅｂブラウザ３０１は、受信したＧＵＩデータに基づいて次の画面を表示する。例えば図４の画面においてメニュー４０２がユーザによって選択された場合には、コピー機能が選択されたことを示す入力情報がＷｅｂサーバ１０２へと送信される。そして、次に表示すべき画面（例えばコピー設定画面）のＧＵＩデータがＷｅｂサーバ１０２からＷｅｂブラウザ３０１へ送信される。また図４の画面においてメニュー４０３がユーザによって選択された場合には、申請書作成機能が選択されたことを示す入力情報がＷｅｂサーバ１０２へと送信される。そして、次に表示すべき画面（例えば申請書作成の詳細設定画面）のＧＵＩデータがＷｅｂサーバ１０２からＷｅｂブラウザ３０１へ送信される。
【００４５】
＜Ｗｅｂサーバの動作説明＞
図５は、Ｗｅｂサーバ１０２の動作を示すフローチャートである。以下、図５を用いて、本実施例におけるＷｅｂサーバ１０２の動作を説明する。本フローチャートの各ステップは、Ｗｅｂサーバ１０２が備えるＣＰＵ２２３が、ＲＯＭ２２４やＨＤＤ２２６に記憶されたプログラムをＲＡＭ２２５上に読み出して実行することによって処理される。
【００４６】
まずＳ５０１において、ＣＰＵ２２３はＭＦＰ１０３のＷｅｂブラウザ３０１から送信された入力情報を受信したかどうかを判断する。Ｗｅｂブラウザ３０１から送信される入力情報は、Ｗｅｂブラウザ３０１に表示された画面を用いた入力や、ＭＦＰ１０３の操作部２１１を用いた入力に基づいて送信される。Ｗｅｂアプリケーション３２０は、入力情報が受信されるまで待ち、入力情報が受信された場合（Ｓ５０１の判断でＹｅｓの場合）にＳ５０２へと進む。
【００４７】
Ｓ５０２において、ＣＰＵ２２３は受信した入力情報を解析する。そしてステップＳ５０３において、ＣＰＵ２２３は受信した入力情報が、ＭＦＰ１０３の機能を実行する指示であるか否かを判定する。機能実行の指示であった場合にはＳ５０４へ進み、機能実行の指示でない場合にはＳ５１１へと進む。機能実行の指示でない場合とは、例えば入力情報が、ＧＵＩデータの要求であった場合等である。
【００４８】
Ｓ５０４において、ＣＰＵ２２３はＳ５０２における解析結果をもとに、ＭＦＰ１０３のサービスアプリケーションへ送信すべき機能実行の指示を生成する。即ち、ＣＰＵ２２３はＳ５０２において、受信した入力情報がＭＦＰ１０３が備えるどの機能を実行する指示であるのかを解析し、解析結果をもとに、その機能に対応するサービスアプリケーションへの実行指示を生成する。尚、生成される実行指示には、実行すべき機能に関する各種の設定値が含まれていることもある。Ｓ５０５において、ＣＰＵ２２３は生成した実行指示を、実行すべき機能に対応するサービスアプリケーションへ送信する。例えば、図４のメニュー４０２が示すコピー機能を実行する旨の入力情報をＷｅｂサーバ１０２が受信した場合、ＣＰＵ２２３は、ＭＦＰ１０３のスキャンサービスアプリケーション３０７にスキャン機能３０９を動作させるための実行指示を生成する。この実行指示には、解像度や読み取りサイズといった、スキャン機能に関わる設定値が含まれている。ＣＰＵ２２３はこの実行指示をＭＦＰ１０３のスキャンサービスアプリケーション３０７宛てに送信する。
【００４９】
Ｓ５０６において、ＣＰＵ２２３は、Ｓ５０５で送信した実行指示が示す機能をＭＦＰ１０３が実行中にＭＦＰ１０３の表示部に表示する画面としてＮａｔｉｖｅＵＩとＷｅｂＵＩのどちらを用いるかを特定するための指定情報を送信する。送信先はＳ５０５の実行指示の送信先と同じである。尚、Ｓ５０５とＳ５０６とは別々のステップではなく、まとめて一つのステップとして処理してもよい。即ち、Ｓ５０５の実行指示とＳ５０６の指定情報とを含んだ情報をＭＦＰ１０３のサービスアプリケーションへ送信するようにしてもよい。ＭＦＰ１０３において機能を実行中にＭＦＰ１０３の表示部に表示する画面としてＮａｔｉｖｅＵＩとＷｅｂＵＩのどちらを用いるかは、Ｗｅｂアプリケーション３２０が提供するアプリケーション毎に決められるものとする。本実施例では、例えば図４のコピー機能（コピーアプリケーション）はＮａｔｉｖｅＵＩを用いるものであり、申請書作成機能（申請書作成アプリケーション）はＷｅｂＵＩを用いるものとする。これらは、Ｗｅｂサーバが提供するアプリケーションを開発する開発者が任意に決めることができるものである。
【００５０】
次にＳ５０７において、ＣＰＵ２２３はＷｅｂブラウザ３０１に送信すべきＧＵＩデータがあるか否かを判断する。Ｓ５０６においてＷｅｂＵＩを用いることを指定した場合には、Ｗｅｂブラウザ３０１へ送信すべきＧＵＩデータがあると判断されることになり、Ｓ５０８へと進む。一方、Ｓ５０６においてＮａｔｉｖｅＵＩを用いることを指定した場合には、Ｗｅｂブラウザ３０１へ送信すべきＧＵＩデータがないと判断され、Ｓ５１０へと進む。Ｓ５０８において、ＣＰＵ２２３はＧＵＩデータをＷｅｂブラウザ３０１へ送信する。この送信は、Ｓ５０１において受信したＷｅｂブラウザ３０１からの入力情報に対するレスポンスとしてＷｅｂブラウザ３０１へ送信される。ここで送信されるＧＵＩデータは、Ｗｅｂブラウザ３０１の表示部３０２において、ＭＦＰ１０３が機能を実行中に表示される画面に使われる。Ｗｅｂアプリケーションの開発者は自由にＧＵＩデータを生成することで機能実行中の表示画面をも自由にカスタマイズすることができ、ユーザにとってより分かり易い画面を提供することが可能となる。尚、Ｗｅｂブラウザ３０１に表示させるべき画面が複数ある場合や、ＭＦＰ１０３における処理の進捗状況によって画面表示を切り替える必要がある場合がある。その場合に備えて、Ｗｅｂサーバ１０２は、Ｗｅｂブラウザ３０１が定期的にあるいはあるタイミングでＷｅｂサーバ１０２から画面を取得するような指示を、Ｓ５０８によって送信するＧＵＩデータと共に送信してもよい。又は別の方法で、Ｗｅｂサーバ１０２が生成したＧＵＩデータを任意のタイミングでＷｅｂブラウザ３０１へ送信することができるようにしてもよい。Ｓ５０９において、ＣＰＵ２２３はＳ５０５において実行指示を送信したサービスアプリケーションから、実行結果を受信したか否かを判断する。実行結果を受信するまで待機し、実行結果を受信した場合には処理を終了する。ここで受信する実行結果は、処理の終了だけでなく、エラー通知等の場合もある。
【００５１】
Ｓ５０６においてＮａｔｉｖｅＵＩを用いることを指定した場合には、Ｗｅｂブラウザ３０１へ送信すべきＧＵＩデータがないと判断され、Ｓ５１０へと進む。Ｓ５１０において、ＣＰＵ２２３はＳ５０５において実行指示を送信したサービスアプリケーションから、実行結果を受信したか否かを判断する。実行結果を受信するまで待機し、実行結果を受信した場合にはＳ５１１へと進む。Ｓ５１１において、ＣＰＵ２２３は受信した実行結果に対応したＧＵＩデータを生成し、Ｗｅｂブラウザ３０１へ送信する。この送信は、Ｓ５０１において受信したＷｅｂブラウザ３０１からの入力情報に対するレスポンスとしてＷｅｂブラウザ３０１へ送信される。Ｓ５１０で受信する実行結果は、処理の終了だけでなく、エラー通知等が送信される場合もある。従ってＳ５１１では、処理の正常終了を示す実行結果を受信した場合にはそれに対応するＧＵＩデータを生成し、エラーを示す実行結果を受信した場合には例えばエラー解除画面等を示すＧＵＩデータを生成する。Ｓ５１１における送信が終了すると処理を終了する。
【００５２】
＜ＭＦＰの動作説明＞
図６は、ＭＦＰ１０３の動作を示すフローチャートである。以下、図６を用いて、本実施例におけるＭＦＰ１０３の動作を説明する。本フローチャートの各ステップは、ＭＦＰ１０３が備えるＣＰＵ２０２が、ＲＯＭ２０３やＨＤＤ２０５に記憶されたプログラムをＲＡＭ２０４上に読み出して実行することによって処理される。図６のフローチャートはＭＦＰ１０３の動作のうち、サービスアプリケーションがＷｅｂサーバ１０２から機能の実行指示や指定情報を受信した際の動作について説明する。これ以外に、上述したＷｅｂブラウザ３０１がＷｅｂサーバ１０２と通信を行う動作等も行われるが、図６の説明ではそれらの動作については説明を省略している。
【００５３】
まずＳ６０１において、ＣＰＵ２０２はＷｅｂサーバ１０２から送信された実行指示と指定情報を受信したかどうかを判断する。具体的には、Ｗｅｂサーバ１０２のロジック部３２２が、図５のＳ５０５とＳ５０６の処理によってＭＦＰ１０３のサービスアプリケーション宛てに送信した実行指示と指定情報とを受信したかどうかを判断する。このステップでは、これらの情報を受信するまで待機し、受信したと判断された場合にはＳ６０２へと進む。
【００５４】
Ｓ６０２において、ＣＰＵ２０２はＳ６０１で受信した指定情報を解析する。この解析の結果Ｓ６０３へ進み、ＣＰＵ２０２は、指定情報によって特定されるのがＷｅｂＵＩであるかＮａｔｉｖｅＵＩであるかを判断する。即ち、Ｓ６０１で受信した実行指示に基づく機能を実行中に、ＭＦＰ１０３の表示部に表示する画面として、ＷｅｂＵＩとＮａｔｉｖｅＵＩのどちらを用いる指定がされているのかを判断する。Ｓ６０３の判断の結果、ＷｅｂＵＩを用いると指定された場合にはＳ６０４へと進み、ＮａｔｉｖｅＵＩを用いると指定された場合にはＳ６０５へと進む。Ｓ６０４において、ＣＰＵ２０２はＷｅｂサーバ１０２から送信されたＧＵＩデータを受信するまで待ち、ＧＵＩデータを受信するとＳ６０６へと進む。この場合ＵＩ制御部３１２は、機能実行中の画面としてこのＧＵＩデータから生成された画面を用いる。一方、ＮａｔｉｖｅＵＩを用いる場合にはＳ６０５へと進み、ＣＰＵ２０２は、機能実行中に表示すべき画面を生成する。この場合ＵＩ制御部３１２は、機能実行中の画面としてＮａｔｉｖｅＵＩ制御部３１１によって生成された表示データに基づく画面を用いる。上述したように、ＮａｔｉｖｅＵＩ制御部３１１は、プリント機能部３０８、スキャン機能部３０９の状態やＭＦＰ１０３の状態に応じて、表示データを生成する。
【００５５】
Ｓ６０６において、ＣＰＵ２０２はＳ６０１で受信した実行指示に基づいて機能を実行する。例えば、スキャンサービスアプリケーション３０７が、受信した実行指示に含まれた各種設定値に基づいてスキャン機能部を動作させ、スキャン機能を実行させる。又は、プリントサービスアプリケーション３０６が、受信した実行指示に含まれた各種設定値に基づいてプリント機能部を動作させ、プリント機能を実行させる。Ｓ６０７では、Ｓ６０６の機能の実行に連動して、ＣＰＵ２０２は、操作部２１１の表示部に機能実行中の画面を表示させる。つまりＳ６０３における判断の結果に基づいて、ＵＩ制御部がＷｅｂＵＩ（Ｗｅｂサーバから受信したＧＵＩデータに基づく画面）かＮａｔｉｖｅＵＩ（ＮａｔｉｖｅＵＩ制御部で生成した表示データに基づく画面）を画面に表示する。その後Ｓ６０８において、ＣＰＵ２０２は機能の実行結果をＷｅｂサーバ１０２へ送信する。送信される実行結果には、機能の実行中にエラーが発生した場合にはエラー情報が含まれ、正常に終了した場合には終了通知情報が含まれる。尚、Ｓ６０８において機能の実行結果がＷｅｂサーバ１０２へ通知されると、Ｗｅｂサーバ１０２は、次にＭＦＰ１０３が表示するべき画面の画面情報をＭＦＰ１０３に送信する。この画面は機能の実行結果を示す画面であり、例えば「ジョブ終了」を示す画面である。Ｓ６０３の判断の結果に従って、もしＭＦＰ１０３がそれまでＷｅｂＵＩを表示していたのであれば、継続してこの実行結果画面をＷｅｂＵＩによって表示することになる。一方、もしＭＦＰ１０３がそれまでＮａｔｉｖｅＵＩを表示していたのであれば、実行結果画面を表示する場合にはＷｅｂＵＩに切り替わり、画面表示されることになる。即ち、Ｗｅｂブラウザの画面に戻ることになる。尚、Ｓ６０８において機能の実行結果がＷｅｂサーバ１０２へ通知された後にＷｅｂサーバ１０２がＭＦＰ１０３に送信する画面は、実行結果画面に限らず、初期画面（例えばメニュー画面等）であってもよい。
【００５６】
以上説明したように、本実施によれば、Ｗｅｂアプリケーションを作成して提供する開発者は、ＭＦＰが機能を実行中に表示する画面としてＷｅｂＵＩとＮａｔｉｖｅＵＩのどちらを用いるかをＷｅｂアプリケーション毎に決めることができる。ＭＦＰが機能を実行中に表示する画面としてＷｅｂＵＩを用いれば、ＮａｔｉｖｅＵＩによる固定的な画面ではなく、必要なガイダンス等を含んだユーザにとってより使い易い画面を提供することができる。一方で、ＮａｔｉｖｅＵＩで十分な表示が行われる場合にはそちらを用いることもできるので、その場合にはＷｅｂアプリケーションの開発者は画面情報の作成といった作業から解放される。
【００５７】
尚、上記図５や図６の各ステップは、第１の受信手段、第２の受信手段、第１の送信手段、第２の送信手段、第３の送信手段、第４の送信手段、及び制御手段の一例を示すもので、本発明はこれらのみに限定されるものではない。また、本実施例のＷｅｂサーバ１０２を、複数の装置によって構成し、各装置で分散して処理を行う構成にしたり、装置毎に異なるＷｅｂアプリケーションを保持するようにしてもよい。またこれらの装置をＬＡＮ上ではなく、インターネット上に配置してもよい。
【００５８】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００５９】
１０３  ＭＦＰ
３０１  Ｗｅｂブラウザ
３１２  ＵＩ制御部
３１１  ＮａｔｉｖｅＵＩ制御部
１０２  Ｗｅｂサーバ
３２０  Ｗｅｂアプリケーション
【図１】
0005645621.tif 000002
【図２】
0005645621.tif 000003
【図３】
0005645621.tif 000004
【図４】
0005645621.tif 000005
【図５】
0005645621.tif 000006
【図６】
0005645621.tif 000007