説明

複合機、プログラムおよび記録媒体

【課題】機種によらず容易に機能を追加することができる複合機を提供する。
【解決手段】複合機101において、ウェブブラウザ部202は、ウェブサーバ部205から取得した画面データで示される操作画面を操作部203に表示し、当該操作画面に対して入力された、アプリケーションの実行指示をウェブサーバ部205に通知する。そして、ウェブサーバ部205がアプリケーションの実行指示を受けると、コンテンツ部207は、当該実行指示に対するアプリケーションを実行し、当該アプリケーションに従って、上記機器制御部209に対して、上記複数の機能の少なくとも一つの機能を制御するための制御コマンドを送る。そして、機器制御部209は、機能公開部208により変換された制御コマンドに従った制御を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機能の追加が可能な複合機に関するものである。
【背景技術】
【0002】
従来、コピー機能、スキャン機能、印刷機能及びFAX送受信機能などの複数の機能を併せ持つ複合機が知られている。しかしながら、オフィス環境などにおいて、その環境で行う独自の作業や特定の定型業務等がある場合、複合機が標準的に持つ機能だけでは円滑に作業を行うことができないため、複合機に対して機能追加できるプラットフォームを搭載し、その環境に適したカスタムアプリケーションを追加する技術が提案されている。
【0003】
複合機に機能を追加する技術として、複合機上で動作するプログラム(NativeFunction)を複合機内部に追加する方法がある。その他、複合機とネットワーク的に接続されたカスタムアプリケーションとを連携させ、カスタムアプリケーションが提供する画面を複合機に操作パネルに表示したり、カスタムアプリケーションに対して公開した機能により、複合機での処理を実行したりする方法も知られている。例えば、特許文献1には、カスタムアプリケーションより取得したHTMLデータで示される操作画面をブラウザが表示し、当該操作画面に入力された特定の書式に従い画像処理を実行することが記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2005−149320号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、プログラムを複合機内部に単に追加する場合、そのプログラムの作成するための実装が複雑である。また、複合機の機種に応じてプログラムの内容を変更する必要があり、同一のプログラムを多くの機種に対して適用することが困難である。
【0006】
また、特許文献1に記載のように、外部のカスタムアプリケーションと複合機とを連携させる場合は、標準的なブラウザの機能だけでは実現できる機能が限られてしまう。そこで、特許文献1では、複合機に固有のアイコン等を表示するために、ウェブブラウザに対して、当該複合機に特化した独自拡張が行われている。そのため、汎用のウェブブラウザを用いている場合、当該汎用のウェブブラウザのバージョンがアップされたり、不具合等の修正が行われるたびに、上記の独自拡張を適用しなければならない。そのため、メンテナンスにおいて非常に効率が悪くなる。
【0007】
さらに、上記のような独自拡張の結果表示されるアイコン等を含む操作画面のカスタマイズを行う必要が生じた場合、複合機ごとに、ウェブブラウザを含むプログラムの修正、もしくは、ウェブブラウザとは別のインターフェイスを併用することが必要となり、非常に手間がかかる。
【0008】
さらに、複合機の設置環境によっては、カスタムアプリケーションを動作させるサーバの導入が困難である場合もあり、複合機の機能を容易に拡張することは困難であった。
【0009】
また、複合機が有するウェブブラウザの独自拡張を行わずに、外部のカスタムアプリケーションから複合機に対して、当該複合機の各種機能(スキャン機能や印刷機能など)を制御する制御コマンドを送信することも考えられるが、この場合、複合機と外部のカスタムアプリケーションとの間にファイアーウォールが構築されている場合、制御コマンドが遮断されてしまう。
【0010】
本発明は、前記の課題に鑑みてなされたものであり、機種によらず容易に機能を追加することができる複合機を提供することを目的としている。
【課題を解決するための手段】
【0011】
上記の課題を解決するために、本発明は、表示手段と、ウェブブラウザのソフトウェアに従って動作するウェブブラウザ部と、ウェブサーバのソフトウェアに従って動作するウェブサーバ部と、上記ウェブサーバ上で実行される少なくとも一つのアプリケーションに従って動作するアプリ実行部と、スキャン機能、印刷機能および画像データの通信機能を含む複数の機能を制御する機器制御部とを備えた複合機であって、上記ウェブブラウザ部は、上記ウェブサーバ部から取得した画面データで示される操作画面を上記表示部に表示し、当該操作画面に対して入力された、上記アプリケーションの実行指示を上記ウェブサーバ部に通知し、上記ウェブサーバ部が上記実行指示を受けると、上記アプリ実行部は、当該実行指示に対するアプリケーションを実行し、当該アプリケーションに従って、上記機器制御部に対して、上記複数の機能の少なくとも一つの機能を制御するための制御コマンドを送り、上記機器制御部は、上記制御コマンドに従った制御を行うことを特徴とする。
【0012】
上記の構成によれば、同一の複合機の内部において、ウェブブラウザ部は、ウェブサーバ部から操作画面を示す画面データを受信する。そして、ウェブブラウザ部が、操作画面に対して入力された、上記アプリケーションの実行指示をウェブサーバ部に通知し、アプリ実行部が、実行指示に対応するアプリケーションを実行し、当該アプリケーションに従って、複合機の機能を制御する制御コマンドを機器制御部に送る。これにより、機器制御部は、複合機の各種の機能を制御することができる。例えば、機器制御部は、スキャン機能や印刷機能を実行することができる。
【0013】
ここで、ウェブブラウザ部は、ウェブサーバ部から取得した画面データで示される操作画面を表示手段に表示し、操作画面に対して入力された、上記アプリケーションの実行指示をウェブサーバ部に通知するだけである。そのため、ウェブブラウザ部を動作させるソフトウェアとしては、汎用されているウェブブラウザを用いることができ、汎用されているウェブブラウザに対して独自拡張を行う必要がない。また、汎用のウェブブラウザのバージョンアップや変更が行われたとしても、当該バージョンアップや変更のみを行えばよく、これ以外のメンテナンスを必要としない。
【0014】
また、ウェブサーバ部は、アプリケーションの実行指示を受けると、アプリ実行部に対して当該アプリケーションを実行させる。このような処理は、汎用のウェブサーバのソフトウェアで実現することができる。そのため、ウェブサーバ部を動作させるソフトウェアとしては、汎用されているウェブサーバを用いることができ、汎用されているウェブサーバに対して独自拡張を行う必要がない。また、汎用のウェブサーバのバージョンアップや変更が行われたとしても、当該バージョンアップや変更のみを行えばよく、これ以外のメンテナンスを必要としない。
【0015】
また、複合機に新たなアプリケーションをインストールすることにより、上記ウェブブラウザ部およびウェブサーバ部を用いて、当該新たなアプリケーションを実行することができる。このアプリケーションは、ウェブサーバ上で実行されるものである。そして、上述したように、各複合機が有するウェブサーバ部は、汎用されているウェブサーバのソフトウェアを用いることができる。よって、各複合機の機種によらず、同一のアプリケーションをインストールするだけでよい。その結果、各複合機に対して、容易にアプリケーションによる機能の追加を実施することができる。
【0016】
以上から、機種によらず容易に機能を追加することができる複合機を提供することができる。
【0017】
さらに、本発明の複合機において、上記ウェブブラウザ部と上記ウェブサーバ部とはHTTPを用いて通信し、上記ウェブブラウザ部は、ループバックアドレスを用いたHTTPリクエストにより、上記実行指示を上記ウェブサーバ部に通知することが好ましい。
【0018】
上記の構成によれば、汎用されているプロトコルを用いているため、ウェブブラウザ部やウェブサーバ部を容易に構築することができる。
【0019】
また、複合機において何等かのトラブル(紙詰まりなど)が発生したり、多数のジョブが処理中である場合、ループバックアドレスを外部の複合機のアドレスに変更することにより、容易に外部の複合機に対してジョブを実行させることも可能である。
【0020】
さらに、本発明の複合機において、上記ウェブブラウザ部は、ループバックアドレスと上記アプリケーションを特定するためのアプリ特定情報とを含むURLに従って、当該アプリケーションの実行指示を上記ウェブサーバ部に通知することが好ましい。
【0021】
これにより、実行すべきアプリケーションを容易に指定することができる。
【0022】
さらに、本発明の複合機は、複合機の性能を示す固有情報を記憶する記憶部を備えており、上記ウェブサーバ部が上記ウェブブラウザ部から上記操作画面の送信要求を受けたとき、上記アプリ実行部は、上記記憶部から上記固有情報を取得し、取得した固有情報に基づいた操作画面を示す画面データを生成し、上記ウェブサーバ部が上記アプリ実行部が生成した画面データを上記ウェブブラウザ部に送ることにより、上記ウェブブラウザ部は上記画面表示処理を行ってもよい。
【0023】
上記の構成によれば、アプリ実行部は、読み取り解像度などの固有情報を取得して画面データを生成する。そのため、アプリ実行部を動作させるアプリケーションを、複合機の機種によらない汎用性のある設計にできる。さらに、固有情報を基に操作画面を作成するため、複合機の機種に応じた操作画面を容易に複合機に表示させることができる。
【0024】
また、本発明の複合機は、原稿から画像を読み取る画像読取部を備え、上記ウェブブラウザ部は、上記操作画面として、上記画像読取部による読み取り動作の開始指示を受け付けるためのスキャン開始操作画面を上記表示手段に表示し、上記実行指示として、上記画像読取部による読み取り動作の開始指示を上記ウェブサーバ部に通知し、上記ウェブサーバ部が上記読み取り動作の開始指示を受けると、上記アプリ実行部は、画像読取部の読み取り動作を開始させる制御コマンドを機器制御部に送ってもよい。これにより、複合機にスキャンを実行させることができる。
【0025】
また、本発明の複合機は、原稿から画像を読み取る画像読取部と、入力画像データで示される画像を記録シートに印刷する画像形成部とを備え、上記ウェブブラウザ部は、上記操作画面として、ユーザ認証を行うための認証情報の入力を促す認証情報入力画面を上記表示手段に表示し、さらに、上記ウェブブラウザ部は、当該認証情報入力画面に認証情報が入力されると、当該認証情報で示されるユーザに対応する、上記画像読取部および画像形成部の少なくとも一方の機能を制限する制限指示を上記実行指示として上記ウェブサーバ部に送り、上記ウェブサーバ部が上記制限指示を受けると、上記アプリ実行部は、予め登録されている、認証情報と上記画像読取部および画像形成部の少なくとも一方の機能の制限方法を示す制限情報とが対応付けられた対応情報の中から、上記制限指示の認証情報に対応する制限情報を特定し、当該制限情報で示される制限方法に従って上記画像読取部および画像形成部の少なくとも一方を制限するための制御コマンドを機器制御部に送ってもよい。
【0026】
上記の構成によれば、例えば、ユーザに応じて、カラーコピーを禁止したり、コピー枚数を100枚に制限することができる。
【0027】
また、本発明の複合機は、入力画像データで示される画像を記録シートに印刷する画像形成部を備え、上記ウェブブラウザ部は、上記操作画面として、印刷対象となる画像データを特定するための画像データ選択画面を上記表示手段に表示し、さらに、上記ウェブブラウザ部は、当該画像データ選択画面に画像データを特定するための特定情報が入力されると、当該特定情報で示される特定画像データで示される画像の印刷指示を上記実行指示として上記ウェブサーバ部に送り、上記ウェブサーバ部が上記印刷指示を受けると、上記アプリ実行部は、特定画像データを取得し、当該特定画像データで示される画像を印刷させるための制御コマンドを機器制御部に送ってもよい。
【0028】
上記の構成によれば、所定のフォルダに予め特定画像データを格納しておくだけで、複数の複合機から、当該特定画像データで示される画像が印刷された記録シートを取得することができる。
【0029】
さらに、本発明の複合機において、上記アプリケーションは、Java(登録商標)Scriptで記載されたものであることが好ましい。
【0030】
上記の構成によれば、汎用されている言語によりアプリケーションを作成することができるため、アプリケーションの開発が容易となる。
【0031】
なお、上記複合機は、コンピュータによって実現してもよく、この場合には、コンピュータを上記各部として動作させることにより複合機をコンピュータにて実現させるプログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【発明の効果】
【0032】
本発明によれば、機種によらず容易に機能を追加することができる複合機を提供することができる。
【図面の簡単な説明】
【0033】
【図1】図1は、本実施形態に係る複合機の内部構成を示すブロック図である。
【図2】図2は、本実施形態に係る複合機を含むネットワークシステムの構成を示す図である。
【図3】図3は、複合機の処理の流れを示すフローチャートである。
【図4】スキャンされた画像データをファイルサーバに格納する帳票処理の流れを示すフローチャートである。
【図5】帳票処理におけるデータの送受信の時系列を示す図である。
【図6】操作画面の例を示す図であり、(a)は、帳票処理の開始画面、(b)は、原稿がない場合のエラー表示画面、(c)は、処理中であることを示す状態表示画面、(d)は、処理終了を示す終了画面、(e)は、処理中にエラーが発生したことを示すエラー画面を示している。
【図7】固有情報に応じた操作画面を表示させる処理におけるデータの送受信の時系列を示す図である。
【図8】複合機の機能を制限させる具体例におけるデータの送受信の時系列を示す図である。
【図9】複合機の印刷機能を実行させる具体例におけるデータの送受信の時系列を示す図である。
【図10】本実施形態の複合機の応用例を示す図である。
【発明を実施するための形態】
【0034】
本発明の一実施形態について図1から図7に基づいて説明すると以下の通りである。
【0035】
(システム構成)
図2は、本実施形態に係る複合機101を含むネットワークシステムの構成を示す図である。図2に示されるように、複合機101は、通信ネットワーク102を介して、ファイルサーバ103と通信可能である。通信ネットワーク102としては、インターネット、電話線、シリアルケーブル、または、他の有線回線もしくは無線回線などの通信回線が利用できる。
【0036】
例えば、複合機101は、スキャンすることで読み取られた画像データをファイルサーバ103に送信し、当該ファイルサーバ103に画像データを格納させる画像データファイリング処理や、ファイルサーバ103から画像データを取得し、取得した画像データで示される画像を用紙上に印刷するプリント処理などを実行することができる。
【0037】
(複合機の構成)
次に、複合機101の構成について説明する。複合機101は、スキャン機能、印刷機能、ファクシミリの送受信機能、画像データの送受信(通信)機能などの複数の機能を実行することが可能な装置であり、これらの機能を適宜組み合わせることで、様々な機能を実行することができる。例えば、スキャン機能と印刷機能とを組み合わせことでコピー機能を実現することができ、スキャン機能と画像データの送信機能とを組み合わせことで、スキャンされた画像データを外部の記憶装置に格納する機能を実現することができる。なお、ここでは、複合機101の主たる機能である、スキャン機能および印刷機能などについてのみ説明し、他の機能の説明については省略する。
【0038】
図1に示されるように、複合機101は、UI部201と、組込みサーバ部204と、機能公開部208と、機器制御部209と、画像形成部210と、ネットワークスキャナ部211と、通信制御部215とを備えている。
【0039】
UI部201は、ユーザインターフェイスとして機能するものである。UI部201は、ウェブブラウザ部202と操作部203とを備える。
【0040】
ウェブブラウザ部202は、汎用されているウェブブラウザのソフトウェアに従った動作を行うものである。ウェブブラウザ部202は、通信制御部215を介して、ウェブサーバに対して要求を行い、当該要求に対する応答を受信するものである。なお、本実施形態では、ウェブブラウザ部202は、主にループバックアドレスを用いて、複合機101内部に設けられた組込みサーバ部204との間でデータの送受信を行うが、外部のウェブサーバ装置との間でデータの送受信を行ってもよい。
【0041】
ウェブブラウザ部202は、ループバックアドレスと組込みサーバ部204に組み込まれたアプリケーションを特定するためのアプリ特定情報(パラメータ)とを含むURL(Uniform Resource Locator)により、通信制御部215にHTTPリクエスト(ループバックコール)を送る。なお、アプリケーションでの処理に必要な処理条件を示す情報をアプリ特定情報の中に含めてもよい。
【0042】
操作部203は、ユーザに対して情報を通知するとともに、ユーザからの入力を受け付けるものである。操作部203は、液晶ディスプレイなどの表示部と、各種の入力キーを含む入力部とを独立して有していてもよいし、表示部と入力部とが一体として構成されたタッチパネルであってもよい。
【0043】
組込みサーバ部204は、インターネット上の情報システムであるWWW(World Wide Web)を構成するサーバの機能を提供するためのソフトウェアであるウェブサーバと、当該ウェブサーバ上で動作する各種のアプリケーションとに従って動作するブロックである。組込みサーバ部204は、図2に示されるように、ウェブサーバ部205と、コンテンツ管理部206と、コンテンツ部207(第1コンテンツ部207−1から第nコンテンツ部207−n)とを備えている。
【0044】
ウェブサーバ部205は、汎用されているウェブサーバのソフトウェアに従った動作を行うものである。ウェブサーバ部205は、通信制御部215を介して、ウェブブラウザ部からの要求(HTTPリクエスト)を受信し、当該要求に応じたアプリケーションを実行させ、ウェブブラウザ部202に対して応答(HTTPレスポンス)を行うものである。
【0045】
なお、ウェブサーバ部205は、通信制御部215への通信開始指示をモニタリングしておき、ループバックアドレスおよびアプリ特定情報(リクエストの内容を示すパラメータ)で構成されるHTTPリクエスト(ループバックアドレスを宛先とするループバックコール)が通信制御部215に入力されたときに、自身への通信であると認識し、当該アプリ特定情報を取得する。また、ウェブサーバ部205は、ループバックアドレスを用いたHTTPリクエストに対する応答により、当該リクエストを行ったウェブブラウザ部に対する応答が可能である。
【0046】
コンテンツ部207は、ウェブサーバ部205が受信したHTTPリクエストの内容に応じたアプリケーションに従って、所定の処理を実行するものである。このアプリケーションは、例えば、Java(登録商標)Scriptで記載されたカスタムアプリケーションであり、ウェブサーバ上に設けられたJava(登録商標)script実行環境で動作するアプリケーションである。コンテンツ部207は、各アプリケーションに従って動作する第1コンテンツ部207−1から第nコンテンツ部207−nからなる。ウェブサーバ部205は、HTTPリクエストの内容を解析して、当該内容の処理を実行するアプリケーションを選択し、当該アプリケーションに対応するコンテンツ部207を起動させる。具体的には、ウェブサーバ部205は、HTTPリクエストに含まれるアプリ特定情報に基づいて、アプリケーションを選択すればよい。
【0047】
そして、コンテンツ部207は、HTTPリクエストに応じた処理を実行し、当該HTTPリクエストに対応するHTTPレスポンスを生成し、ウェブサーバ部205を介して、ウェブブラウザ部に当該レスポンスを送る。
【0048】
コンテンツ管理部206は、ユーザからの入力に従って、コンテンツ部207の追加または削除を行うものである。例えば、コンテンツ管理部206は、新しいアプリケーションをインストールすることで、当該アプリケーションに従って動作する新たなコンテンツ部207を組込みサーバ部204内に構築することができる。また、コンテンツ管理部206は、不要になったアプリケーションケーのアンインストールを行うことで、当該アプリケーションに従って動作していたコンテンツ部207を組込みサーバ部204から削除することができる。
【0049】
コンテンツ管理部206は、組込みサーバ部204に登録されている各コンテンツ部207について、当該コンテンツ部207を動作させるためのアプリケーションを識別するためのアプリ識別情報と、当該コンテンツ部207を起動させるためのURLとを対応付けた対応情報を記憶している。そして、コンテンツ管理部206は、コンテンツ部207の追加または削除を行うと同時に、対応情報も更新する。
【0050】
コンテンツ管理部206は、ウェブブラウザ部202から拡張機能一覧の要求を受けると、記憶している対応情報を読み出し、当該対応情報の中のアプリ識別情報の一覧を示す操作画面のHTMLデータを生成し、応答する。なお、当該HTMLデータでは、各アプリ識別情報に対応するURLも含み、アプリ識別情報が選択された際に、対応するURLに従った処理をウェブブラウザ部202に実行させる指示が含まれている。
【0051】
画像形成部210は、用紙などの記録シートに対して、入力された画像データに対応する画像(文字/写真/グラフィック)を印刷するためのものであり、感光体ドラム、帯電装置、露光装置、現像装置、転写装置、定着装置、および用紙トレイなどを含む。
【0052】
ネットワークスキャナ部211は、スキャン機能と、スキャンされた画像データを外部のファイルサーバ103に送信する機能とを実行するものである。なお、ネットワークスキャナ部211は、単にスキャナ機能だけを実行してもよい。ネットワークスキャナ部211は、図1に示されるように、画像読取部212と、データ変換部213と、データ通信部214とを備えている。
【0053】
画像読取部212は、スキャナと、原稿をスキャナの位置まで搬送する原稿搬送部とを含んでおり、原稿に印刷された文字や画像などを画像データとして読み取るものである。
【0054】
データ変換部213は、画像読取部212により読み取られた画像データを所定の形式(例えば、PDFやTIFFなど)の画像データに変換するものである。
【0055】
データ通信部214は、通信制御部215を介して、データ変換部213により変換された画像データを指定された記憶装置(ファイルサーバ103など)に送信し、指定されたフォルダ内に格納するものである。
【0056】
機能公開部208は、複合機101の各種機能を制御するための制御コマンドをコンテンツ部207に公開しており、コンテンツ部207から制御コマンドを受け付けるとともに、受け付けた制御コマンドを、機器制御部209で認識可能なコマンドに変換するものである。
【0057】
機能公開部208は、外部に公開している制御コマンドと、機器制御部209で認識可能なコマンドとを対応付けた変換テーブルを記憶する変換テーブル記憶部(図示せず)を備えており、当該変換テーブルに従って、コマンドの変換処理を行う。
【0058】
このように、機能公開部208は、複合機101の機種によらない共通の制御コマンドを受け付け可能である。これにより、各コンテンツ部207を動作させるためのアプリケーションは、複合機101によらず共通のものを用いることができる。そのため、コンテンツ管理部206が新たなアプリケーションに従って動作するコンテンツ部207を組込みサーバ部204に追加する場合、各複合機101に対して同じアプリケーションをインストールするだけでよく、複合機101ごとにアプリケーションの変更を行う必要がなくなる。これにより、コンテンツ部207を動作させるためのアプリケーションの開発を容易に行うことができる。
【0059】
機器制御部209は、複合機101の各種機能を制御するものである。具体的には、機器制御部209は、ネットワークスキャナ部211、画像形成部210、通信制御部215、操作部203等の各部の動作を制御する。
【0060】
例えば、機器制御部209は、画像読取部212の動作を制御して、スキャン画像のデータを取得する。また、機器制御部209は、ネットワークスキャナ部211および通信制御部215を制御して、スキャンされた画像データを所定の形式に変換し、変換後の画像データをファイルサーバ103の指定フォルダに格納する。さらに、機器制御部209は、画像形成部210の動作を制御して、入力された画像データで示される画像を用紙上に形成し、出力する。さらに、機器制御部209は、通信制御部215を用いて、画像データを電子メールに添付して、指定されたアドレスに送信する。
【0061】
機器制御部209は、固有操作モードと、カスタム操作モードとを備えている。固有操作モードとは、機器制御部209が、複合機101に固有であり、予め複合機101内で記憶している操作画面を操作部203に表示させ、当該操作画面に対して入力された指示に従って上記のような制御を行うものである。この固有操作モードは、従来の複合機101で行われている一般的なモードであるため、ここでは詳細な説明を省略する。
【0062】
一方、カスタム操作モードとは、ウェブブラウザ部202が組込みサーバ部204から受け取った操作画面を操作部203に表示させ、当該操作画面に対して入力された指示に基づいて、組込みサーバ部204が制御コマンドを機器制御部209に送り、機器制御部209が当該制御コマンドに従った制御を行うモードである。カスタム操作モードでは、組込みサーバ部204を用いるため、当該組込みサーバ部204に対して様々なウェブアプリケーションをインストールして、新たなコンテンツ部207を追加することにより、様々な機能を追加することができる。また、操作画面も組込みサーバ部204から提供されるため、ユーザにとってより利便性の高い操作画面を新たに開発された場合、当該操作画面を示すデータを組込みサーバ部204にインストールすることで、操作画面を容易に変更することができる。
【0063】
カスタム操作モードの実行指示が入力された場合、機器制御部209は、ウェブブラウザ部202を起動させ、予め設定されたURL(本実施形態では、ループバックアドレスを含み、初期操作画面の送信を要求するURLである)に従った処理を実行させる。そして、カスタム操作モードでは、機器制御部209は、機能公開部208を介して、コンテンツ部207から制御コマンドを受けつけ、当該制御コマンドに従った制御を行う。
【0064】
通信制御部215は、NIC(Network Interface Card)で構成されるものであり、通信制御を行うものである。なお、通信制御部215は、ウェブブラウザ部202とウェブサーバ部205との間の通信として、汎用のウェブブラウザおよびウェブサーバで用いられているプロトコル(HTTP:HyperText Transfer Protocol)を用いるものとする。
【0065】
(カスタム操作モードの処理フロー)
次に、カスタム操作モードの処理の流れについて説明する。図3は、カスタム操作モードにおける複合機101の処理の流れを示すフローチャートである。
【0066】
まず、操作部203にカスタム操作モードの起動指示が入力されると、機器制御部209は、ウェブブラウザ部202を起動させ、拡張機能の一覧を要求するURLに従った処理を実行させる。具体的には、ウェブブラウザ部202は、拡張機能の一覧を要求するHTTPリクエストを生成し、ループバックアドレスを用いて、ウェブサーバ部205に送る。そして、コンテンツ管理部206は、当該HTTPリクエストを受けると、記憶している対応情報の中のアプリ識別情報の一覧を示す操作画面のHTMLデータを応答する。これにより、ウェブブラウザ部202は、組込みサーバ部204に登録されているアプリケーションの一覧を示す操作画面を操作部203に表示する。
【0067】
そして、ウェブブラウザ部202は、アプリ識別情報の一つを選択する旨の選択指示が入力されると、選択されたアプリ識別情報に対応するURLをHTMLデータから特定し、当該URLに従った処理を実行する。
【0068】
ここでは、アプリ識別情報に対応するURLの全ては、ループバックアドレス(127.0.0.1)をアクセス先のアドレスとして含み、対応するコンテンツ部207の実行指示を含んでいる。そのため、ウェブブラウザ部202は、通信制御部215を介して、ウェブサーバ部205に対して、URLで指定されるアプリケーションの実行を要求する、HTTPリクエストを送信することとなる。
【0069】
そして、当該HTTPリクエストをウェブサーバ部205が受信すると、当該HTTPリクエストのアプリ特定情報で特定されるコンテンツ部207が、当該リクエストに対する応答として、操作画面を示すHTMLデータを生成し、通信制御部215を介して、ウェブブラウザ部に応答する。そして、ウェブブラウザ部202は、受信したHTMLデータで示される操作画面を、操作部203に表示させる(S1)。
【0070】
次に、操作部203は、表示された操作画面に対するユーザからの入力を受け付ける(S2)。
【0071】
その後、ユーザからの入力が、次の操作画面を要求する指示であり、かつ、複合機101の各種機能の制御を指示するものではない場合(S3でNo)、S1およびS2の処理が繰り返される。
【0072】
一方、ユーザからの入力が複合機101の各種機能を制御する指示である場合(S3でYes)、ウェブブラウザ部202は、ループバックアドレスを用いて、ウェブサーバ部205に対してその旨の通知が行われる(S4)。
【0073】
具体的には、コンテンツ部207は、S1で応答する操作画面のHTMLデータにおいて、複合機101の各種機能の制御を指示するボタンが押下されたときのアクセス先のアドレスをループバックアドレスに設定しておく。これにより、ウェブブラウザ部202は、操作画面において各種機能の制御を指示するボタンが押下されたとき、ループバックアドレスに従って、ウェブサーバ部205にアクセスし、各種機能の制御指示をウェブサーバ部205に通知することができる。
【0074】
その後、コンテンツ部207は、ウェブブラウザ部202から受けた制御指示の内容を解析する(S5)。
【0075】
そして、コンテンツ部207は、解析結果に基づいて、複合機101の機能を制御するための制御コマンドを生成し、機能公開部208に送る。制御コマンドを受信した機能公開部208は、当該制御コマンドを機器制御部209が認識可能なコマンドに変換する。その後、機器制御部209は、変換されたコマンドに従って、各種の機能を制御する(S6)。
【0076】
このように、複合機101は、操作部(表示手段)203と、ウェブブラウザのソフトウェアに従って動作するウェブブラウザ部202と、ウェブサーバのソフトウェアに従って動作するウェブサーバ部205と、上記ウェブサーバ上で実行される少なくとも一つのアプリケーションに従って動作するコンテンツ部(アプリ実行部)207と、スキャン機能、印刷機能および画像データの通信機能を含む複数の機能を制御する機器制御部209とを備えている。
【0077】
そして、ウェブブラウザ部202は、ウェブサーバ部205から取得した画面データで示される操作画面を操作部203に表示し、当該操作画面に対して入力された、アプリケーションの実行指示をウェブサーバ部205に通知する。そして、ウェブサーバ部205がアプリケーションの実行指示を受けると、コンテンツ部207は、当該実行指示に対するアプリケーションを実行し、当該アプリケーションに従って、上記機器制御部209に対して、上記複数の機能の少なくとも一つの機能を制御するための制御コマンドを送る。そして、機器制御部209は、機能公開部208により変換された制御コマンドに従った制御を行う。これにより、機器制御部209は、複合機101の各種の機能を制御することができる。例えば、機器制御部209は、スキャン機能や印刷機能を実行することができる。
【0078】
そして、ウェブブラウザ部202およびウェブサーバ部205は、ウェブブラウザおよびウェブサーバのソフトウェアに従った動作を行うものであればよい。そのため、汎用されているウェブブラウザやウェブサーバを用いることができ、汎用されているウェブブラウザに対して独自拡張を行う必要がない。また、汎用のウェブサーバおよびウェブブラウザのバージョンアップや変更が行われたとしても、当該バージョンアップや変更のみを行えばよく、これ以外のメンテナンスを必要としない。
【0079】
また、複合機101に新たなアプリケーションをインストールすることにより、ウェブブラウザ部202およびウェブサーバ部205を用いて、当該新たなアプリケーションを実行することができる。このアプリケーションは、ウェブサーバ上で実行されるものである。そして、上述したように、各複合機101が有するウェブサーバ部205は、汎用されているウェブサーバのソフトウェアを用いることができる。よって、各複合機101の機種によらず、同一のアプリケーションをインストールするだけでよい。その結果、各複合機101に対して、容易にアプリケーションによる機能の追加を実施することができる。
【0080】
(具体的な処理例1:帳票処理)
次に、具体的な処理例の流れについて説明する。本具体例では、複合機101のスキャン機能および画像データの通信機能を制御して、スキャンされた画像データをファイルサーバ103に格納する処理をカスタム操作モードを用いて実行する例について説明する。なお、通常のネットワークスキャナ機能では、ジョブを実行するために各種パラメータを設定する必要があるが、帳票等の定型的な処理を行う場合は、それらの手順を省くような単純な操作形態であることが望まれる。そこで、そのような操作形態を提供するアプリケーション(機能拡張コンテンツ「帳票処理」)に従って動作するコンテンツ部207が予め組込みサーバ部204に登録されている場合を例として説明する。ここで、「帳票処理」のアプリケーションでは、複合機101の原稿読取部の原稿トレイに載置した定型帳票の原稿を読み込んでファイルサーバ103に送信し格納させるためのものである。
【0081】
図4は、カスタム操作モードを用いた帳票処理の流れを示すフローチャートである。図5は、図4に対応するものであり、データの送受信の時系列を示す図(シーケンス図)である。図6は、操作画面の例を示す図である。
【0082】
まず、操作部203にカスタム操作モードの起動指示が入力されると(S301)、ウェブブラウザ部202は、組込みサーバ部204に対して、登録されているアプリケーションの一覧を示す操作画面を要求し、当該操作画面を操作部203に表示する(S302)。
【0083】
そして、「帳票処理」が選択されたものとする。このとき、ウェブブラウザ部は、S302において組込みサーバ部204から受けたHTMLデータに基づいて、「帳票処理」に対応するURL(例えば、http://127.0.0.1/scan/scanexe)を特定し、当該URLに従った処理を実行する(S303)。ここで、当該URLは、アクセス先のアドレスとしてループバックアドレスを含み、かつ、「帳票処理」に対応するアプリケーションを特定するアプリ特定情報を含む。
【0084】
その後、ウェブブラウザ部202は、設定されたURLに従って、アクセス先をループバックアドレスとし、アプリ特定情報を含むHTTPリクエストを通信制御部215に送る。通信制御部215に対するHTTPリクエストをモニタリングしているウェブサーバ部205は、ウェブブラウザ部202からのHTTPリクエストがループバックアドレスを含むものであることを認識すると、当該HTTPリクエストを受け取る(S304)。
【0085】
ウェブサーバ部205は、ウェブブラウザ部202からのHTTPリクエストに従って、アプリ特定情報で示されるアプリケーションを特定する。具体的には、ウェブサーバ部205は、URLに基づいてアプリケーションを特定する(S305)。例えば、URLがhttp://127.0.0.1/scan/scanexeである場合、「scanexe」で示されるアプリケーションが、実行要求されているアプリケーションであると特定すればよい。
【0086】
そして、ウェブサーバ部205は、特定したアプリケーションに従って動作するコンテンツ部207を呼び出す(S306)。
【0087】
呼び出されたコンテンツ部207は、ウェブブラウザ部202からのHTTPリクエストに対する応答として、帳票処理を開始する旨の操作画面を示すHTMLデータを生成し、ウェブサーバ部205に送る(S307)。その後、ウェブサーバ部205は、当該HTMLデータを含むHTTPレスポンスをウェブブラウザ部202に送る。ウェブブラウザ部202では、当該HTMLデータを受信すると、当該HTMLデータで示される操作画面を操作部203に表示する(S308)。図6(a)は、S308で表示される操作画面の一例を示す図である。
【0088】
ここで、S307で応答されるHTMLデータでは、図6(a)で示される画面上の「スタート」ボタンが押下されたときのURLとして、アクセス先のアドレスがループバックアドレスであり、かつ、スキャン機能の実行要求を含むURLが設定されている。
【0089】
そのため、操作部203において「スタート」ボタンが押下されたとき(S309でYes)、ウェブブラウザ部202は、上記のURLに従って、通信制御部215を介して、ウェブサーバ部205に対してスキャン機能の実行要求を含むHTTPリクエストを送る。このとき、ウェブブラウザ部は、操作画面においてユーザにより指定された読み取り解像度と、送信先として指定されたファイルサーバ103のアドレスと、ファイル名の指定方法(例えば、日付と時刻等によりファイル名を付ける方法)とを含むジョブ条件をHTTPリクエストに含める。
【0090】
そして、ウェブサーバ部205は、S306と同様にしてURLに従ってコンテンツ部207を呼び出し、当該コンテンツ部207にスキャン機能の実行要求を通知する。スキャン機能の実行要求を受けたコンテンツ部207は、原稿の存在を確認するとともに、原稿が存在する場合には原稿の読取を開始する制御コマンドを機能公開部208に送る(S310)。
【0091】
機能公開部208は、受信した制御コマンドを機器制御部209が認識可能なコマンドに変換して、機器制御部209に送る。そして、機器制御部209は、制御コマンドの種類を判別して、ネットワークスキャナ部211を起動させる。具体的には、画像読取部212は、原稿検出センサにより、原稿台の上に原稿が載置されているか否かを判断する(S311)。
【0092】
原稿が載置されていない場合(S311でNo)、画像読取部212は、機能公開部208を介して、原稿がない旨のエラー通知をコンテンツ部207に行う(S312)。原稿がない旨のエラー通知を受けたコンテンツ部207は、原稿を載置することを促す操作画面を示すHTMLデータを生成し、ウェブサーバ部205を介して、ウェブブラウザに応答する(S313)。そして、ウェブブラウザ部202は、当該HTMLデータに基づいて操作画面を操作部203に表示する(S314)。図6(b)は、S314で表示される操作画面の一例を示す図である。
【0093】
一方、原稿が載置されている場合(S311でYES)、画像読取部212は、原稿の読取動作を開始するとともに、機能公開部208を介して、読取開始通知をコンテンツ部207に行う(S315)。このとき、画像読取部212は、ジョブを識別するためのユニークなジョブIDを新規に取得し、読取開始通知に含める。
【0094】
読取開始通知を受けたコンテンツ部207は、読取処理中であることを示す操作画面を示すHTMLデータを含むHTTPレスポンスを、ウェブサーバ部205を介してウェブブラウザ部202に送る(S316)。そして、ウェブブラウザ部202は、当該HTMLデータに基づいて操作画面を操作部203に表示する(S317)。図6(c)は、S317で表示される操作画面の一例を示す図である。
【0095】
なお、コンテンツ部207は、S316のHTTPレスポンスの中に、一定時間後に再度「ステータス状況の確認要求」を繰り返す指示を含めておく。
【0096】
具体的には、汎用されているウェブブラウザとウェブサーバの機能の中には、HTTPのコマンドにより「x秒後に指定したURLへのコールを実行する」機能があるので、この機能を用いてコンテンツ部207からウェブブラウザ部202に対して、実行中のジョブの進捗状況画面の取得要求を行うよう指示することができる。そして、ウェブブラウザ部202からのステータス状況の確認要求に対するコンテンツ部207からのHTML画面データの応答によって、ウェブブラウザ部202は、「処理中です」の画面表示から「完了しました」の画面表示に切り換えることができる。なお、複数のジョブが並行して実施されていても、ジョブIDから区別できるので、ウェブブラウザ部202からのステータス状況の確認要求におけるURLのクエリ部分にジョブIDを記載することにより、当該ジョブIDによりジョブを区別し、ジョブごとに処理が完了したか未完了かを区別して応答できる。
【0097】
なお、このときネットワークスキャナ部211は、バックグラウンドとして、指定されたジョブ条件で原稿を読み取り、データ変換を行い、指定されたファイル名でデータを送信する。また、ネットワークスキャナ部211は、実行要求の応答として返したジョブIDを用いた、現在のジョブの状況を問い合わせを受け付ける機能も公開し、機能公開部208を介して、指定されたジョブIDのジョブの状態が処理中、完了、エラー終了のいずれであるかを応答することができる。
【0098】
これにより、一定時間経過後に、ウェブブラウザ部202は、ループバックアドレスを用いて、ジョブのステータス状況の確認要求を含むHTTPリクエストをウェブサーバ部205に送る(S318)。そして、S306と同様にウェブサーバ部205により呼び出されたコンテンツ部207は、機能公開部208に対して、ジョブIDを指定してジョブ状況の問い合わせを行う(S319)。
【0099】
上述したように、ネットワークスキャナ部211は、ジョブの状況を問い合わせを受け付ける機能を公開している。そのため、機能公開部208は、指定されたジョブIDのジョブの状態が処理中、完了、エラー終了のいずれであるかを応答する(S320、S321)。
【0100】
処理中である場合(S320でYes)、S316の処理に戻る。また、エラー終了である場合(S320でNo、S321でNo)、コンテンツ部207は、エラー画面を示すHTMLデータを生成し、ウェブサーバ部205を介して、ウェブブラウザ部に応答する(S324)。これにより、ウェブブラウザ部202は、例えば図6(e)に示されるようなエラー画面を操作部203に表示する(S325)。
【0101】
また、ジョブが完了している場合(S320でNo、S321でYes)、コンテンツ部207は、正常にジョブが完了したことを示す完了通知画面を示すHTMLデータを生成し、ウェブサーバ部205を介して、ウェブブラウザ部に応答する(S322)。これにより、ウェブブラウザ部202は、例えば図6(d)に示されるよう完了通知画面を操作部203に表示する(S323)。
【0102】
以上のように、本具体例では、ウェブブラウザ部202は、画像読取部212による読み取り動作の開始指示を受け付けるためのスキャン開始操作画面を操作部203に表示する。そして、ウェブブラウザ部202は、ユーザによって入力された、画像読取部212による読み取り動作の開始指示をウェブサーバ部205に通知する。ウェブサーバ部205が読み取り動作の開始指示を受けると、コンテンツ部207は、機能公開部208を介して、画像読取部212の読み取り動作を開始させる制御コマンドを機器制御部209に送る。これにより、複合機にスキャンを実行させることができる。
【0103】
(具体的な処理例2:具体例1の変形例)
本具体例は、上記具体例1の変形例である。複合機の性能は、複合機の機種の機種によって様々である。そのため、上記具体例1では、複合機の機種に依存した操作画面を複合機に表示させるためには、コンテンツ部207が複合機の機種に対応した操作画面のHTMLデータを記憶しておく必要がある。もしくは、コンテンツ部207が複合機の全ての機種に応じた操作画面のHTMLデータを記憶しておき、ウェブブラウザ部202は、自身の複合機101の機種に対応する初期操作画面を要求する、HTTP Getコマンドを送信する必要がある。この場合、コンテンツ部207を動作させるためのアプリケーションを作成する際、複合機の機種ごとの操作画面に対応するプログラムを作成する必要があり、手間がかかる。本具体例は、コンテンツ部207を動作させるためのアプリケーションを作成する際に、複合機の機種を考慮する必要のない例である。
【0104】
本具体例では、機能公開部208が、複合機101の性能を示す固有情報(例えば、画像読取部の読み取り解像度のパラメータリストなど)をコンテンツ部207に公開しておき、コンテンツ部207からの要求に応じて、当該固有情報をコンテンツ部207に渡すものとする。コンテンツ部207は、ウェブブラウザ部202から操作画面の送信要求を受けた場合、複合機101の性能を示す固有情報を機能公開部208から受け取り、当該固有情報を基に操作画面のHTMLデータを生成すればよい。これにより、複合機の機種によらず、コンテンツ部207を動作させるためのアプリケーションを共通にすることができる。その結果、機種の異なる複合機の各々に対して、コンテンツ部207を動作させるためのアプリケーションを同一のものにすることができ、アプリケーションの作成が容易となる。以下、具体例1で示した帳票処理のときに当該固有情報を適用したときに具体例を説明する。
【0105】
本具体例は、図4に示す具体例1において、S306〜S307の間の処理に特徴があり、それ以外は具体例1と同じである。そのため、具体例1と異なる処理のみ説明する。図7は、本具体例の特徴的な部分の処理の流れを示す図である。
【0106】
ウェブサーバ部205によって呼び出されたコンテンツ部207は、機能公開部208に対して、固有情報(ここでは、読み取り解像度を示すパラメータリスト)を要求する(S331)。そして、コンテンツ部207は、当該固有情報を機能公開部208から取得する(S332)。
【0107】
その後、コンテンツ部207は、固有情報に基づいた操作画面を示すHTMLデータを生成する(S333)。例えば、コンテンツ部207は、固有情報に含まれる複数の読み取り解像度のうちのいずれかを選択するための操作画面を示すHTMLデータを生成することができる。そして、コンテンツ部207は、ウェブサーバ部205を介して、生成した操作画面を含むHTTPレスポンスをウェブブラウザ部202に送信すればよい(S307)。その結果、ウェブブラウザ部202は、複合機の機種に対応した操作画面を表示部に表示することができる。
【0108】
なお、コンテンツ部207が予め固有情報(本具体例では、読み取り解像度のパラメータリスト)を記憶しておいてもよい。
【0109】
以上のように、本具体例では、機能公開部(記憶部)208が複合機101の性能を示す固有情報を記憶している。そして、ウェブサーバ部205がウェブブラウザ部205から初期操作画面の送信要求を受けたとき、コンテンツ部(アプリ実行部)207は、機能公開部208から固有情報を取得し、取得した固有情報に基づいた操作画面を示す画面データを生成する。その後、ウェブサーバ部205が当該画面データをウェブブラウザ部202に送る。これにより、ウェブブラウザ部205は、固有情報に基づいた操作画面を表示することができる。
【0110】
このように、コンテンツ部207が読み取り解像度などの固有情報を機能公開部208から取得することで、操作画面の作成を行うアプリケーションを、複合機の機種によらない汎用性のある設計にできる。さらに、コンテンツ部207は、固有情報を基に操作画面を作成するため、複合機の機種に応じた操作画面を容易に複合機に表示させることができる。
【0111】
(具体的な処理例3:認証アプリ)
本具体例は、認証情報による認証処理の結果に応じて、複合機101の各種機能の制限を行うものである。複合機101の各種機能の制限とは、例えば、カラーコピーを禁止し、モノクロコピーのみを実行可能とする場合や、コピー枚数を所定数(例えば100枚)に制限する場合などが考えられる。
【0112】
制限処理のアプリケーションに従って動作するコンテンツ部207は、ユーザ名と複合機101の各種機能の制限を示す制限情報とが対応付けられた制限テーブルを予め記憶しておく。例えば、コンテンツ部207は、ユーザ名「AAA」とカラーコピーの禁止を示す制限情報とが対応付けられており、ユーザ名「BBB」とコピー枚数の上限が100枚であることを示す制限情報とが対応付けられた制限テーブルを記憶している。
【0113】
コンテンツ部207は、認証成功した場合、ユーザ名に対応する制限情報を制限テーブルから読み出す。そして、コンテンツ部207は、読み出した制限情報で示される制限の実行を指示する制御コマンドを機能公開部208に送る。以下に、本具体例の処理の流れについて、図8を参照しながら説明する。
【0114】
まず、操作部203にカスタム操作モードの起動指示が入力され、ウェブブラウザ部202は、機能制限のためのログイン画面データのHTTP Getコマンドをウェブサーバ部205に送信する(S401)。
【0115】
Getコマンドを受けたウェブサーバ部205は、制限処理のアプリケーションに対応するコンテンツ部207を起動させる(S402)。そして、コンテンツ部207は、当該Getコマンドに対応する、機能制限のためのログイン画面に対応するHTMLデータを、ウェブサーバ部205を介して、ウェブブラウザ部202に返信する(S403、S404)。ウェブブザウザ部202は、受信したHTMLデータに基づいて、機能制限のためのログイン画面を操作部203に表示する(S405)。
【0116】
当該ログイン画面とは、例えば、ユーザ名およびパスワードの入力欄、および、ログインを開始するための「ログイン」ボタンを含む画面である。
【0117】
ログイン画面上にユーザ名およびパスワードが入力され、「ログイン」ボタンが押下されると(S406)、ウェブブラウザ部202は、S404で受信したHTMLデータに記載されたURLに従って、入力された認証情報(ここでは、ユーザ名およびパスワード)をウェブサーバ部205に送信する(S407)。後述するように、当該認証情報は、複合機101の機能を制限するためのものであるため、複合機101の機能を制限する制限指示であるといえる。
【0118】
ウェブサーバ部は、受信した認証情報を、S402で起動させた(呼び出した)コンテンツ部207に送る(S408)。認証情報を受信したコンテンツ部207は、当該認証情報と、予め登録されているユーザ名およびパスワードとの照合を行い、一致する場合には認証成功と判断し、不一致の場合に認証失敗と判断する認証処理を行う(S409)。そして、認証成功の場合、コンテンツ部207は、認証情報で示されるユーザ名に対応する制限情報を、予め記憶している制限テーブルの中から読み出す。
【0119】
次に、コンテンツ部207は、制限テーブルから読み出した制限情報に従った機能制限の実行と、当該制限情報に応じた操作画面への変更とを指示する制御コマンドを生成して、機能公開部208に送る(S410)。そして、機能公開部208は、受信した制御コマンドを機器制御部209が認識可能なコマンドに変換した後、機器制御部209に送る。
【0120】
機器制御部209は、制御コマンドに従った機能制限を設定する(S411)。さらに、機器制御部209は、制限情報と、当該制限情報に応じた操作画面を示すHTML形式の画面データとが対応付けられた画面テーブルを予め記憶しておく。そして、機器制御部209は、制御コマンドで示される制限情報に対応する画面データを画面テーブルから読み出し、コンテンツ部207に送る(S412)。
【0121】
例えば、制御コマンドがカラーコピーを禁止することを示す場合、機器制御部209は、S411において、カラーコピーの実行指示を受け付けない。もしくは、機器制御部209は、S411において、カラーコピーの実行指示を受け付けた場合にモノクロコピーを実行させるように画像読取部212および画像形成部210を制御する。さらに、機器制御部209は、S412において、画面テーブルの中から、モノクロコピーの実行指示のみを受け付け可能な操作画面を示すHTML形式の画面データを読み出し、コンテンツ部207に送る。
【0122】
また、制御コマンドがコピー枚数の上限が100枚であることを示す場合、機器制御部209は、S411において、画像形成部210で印刷された用紙の枚数をカウントしておき、100枚になった時点で、それ以上の印刷処理を実行させないように画像形成部210を制御する。さらに、機器制御部209は、S412において、画面テーブルの中から、コピー枚数の上限が100枚である旨のメッセージを含む操作画面を示すHTML形式の画面データを読み出し、コンテンツ部207に送る。
【0123】
そして、コンテンツ部207は、S407のHTTPリクエストに対応するHTTPレスポンスとして、機器制御部209から受けた画面データを、ウェブサーバ部205を介してウェブブラウザ部202に送る(S413、S414)。その結果、ウェブブラウザ部202は、当該画面データで示される操作画面を操作部203に表示することとなる(S415)。
【0124】
以上のように、本具体例では、ウェブブラウザ部202は、ユーザ認証を行うための認証情報の入力を促すログイン画面(認証情報入力画面)を操作部203に表示する。さらに、ウェブブラウザ部202は、ログイン画面に認証情報が入力されると、当該認証情報で示されるユーザに対応する、画像読取部212および画像形成部210の少なくとも一方の機能を制限する制限指示をウェブサーバ部205に送る。ウェブサーバ部205が認証情報を受けると、コンテンツ部207は、予め登録されている、認証情報と複合機101の機能の制限方法を示す制限情報とが対応付けられた制限テーブル(対応情報)の中から、受信した認証情報に対応する制限情報を特定し、当該制限情報で示される制限方法に従って画像読取部212および画像形成部210の少なくとも一方を制限するための制御コマンドを機能公開部208を介して機器制御部209に送る。
【0125】
上記の構成によれば、例えば、ユーザに応じて、カラーコピーを禁止したり、コピー枚数を100枚に制限することができる。
【0126】
(具体的な処理例4:認証印刷アプリ)
本具体例は、ファイルサーバ103に予め印刷対象となる印刷データを格納しておき、ユーザが複合機101を操作して、当該印刷データの印刷処理を実行させる例である。このような処理が実行可能であることにより、例えば、会議中に印刷物が急に必要になった場合、対象となる印刷データを予めファイルサーバ103に格納しておけば、会議室に設置された複合機101を操作することで、その場で印刷物をすぐに取得することができる。そこで、そのような操作形態を提供するアプリケーション(機能拡張コンテンツ「認証印刷アプリ」)に従って動作するコンテンツ部207が予め組込みサーバ部204に登録されている場合を例として説明する。ここで、「認証印刷アプリ」のアプリケーションは、ファイルサーバ103から指定された印刷データを取得し、取得した印刷データで示される画像を用紙に印刷するためのものである。
【0127】
以下、本具体例の処理の流れについて、図9を参照しながら説明する。なお、本具体例の処理の前に、ユーザは、ファイルサーバ103の記憶部に印刷データを予め格納しておく。
【0128】
まず、操作部203にカスタム操作モードの起動指示が入力され、ウェブブラウザ部202は、組込みサーバ部204に対して、登録されているアプリケーションの一覧を示す操作画面を要求し、当該操作画面を操作部203に表示する。そして、「認証印刷アプリ」が選択されたものとする。このとき、ウェブブラウザ部202は、この入力を受けて、印刷データを指定するための操作画面(画像データ選択画面)を要求するHTTP Getコマンドをウェブサーバ部205に送る(S501)。
【0129】
ウェブサーバ部205は、HTTP Getコマンドを受けると、当該Getコマンドを解析し、認証印刷アプリに対応するコンテンツ部207を起動させる(S502)。そして、コンテンツ部207は、要求されている画像データ選択画面を示すHTMLデータをHTTPレスポンスとして、ウェブサーバ部205を介してウェブブラウザ部202に送る(S503、S504)。
【0130】
ウェブブラウザ部202は、受信したHTMLデータに基づいて、印刷データを指定するための画像データ選択画面を操作部203に表示する(S505)。ユーザは、画像データ選択画面上において、印刷対象となる画像データ(印刷データまたは特定画像データともいう)が格納されているファイルサーバ103のアドレス、フォルダ名、および、当該印刷データのファイル名を入力する(S506)。ウェブブラウザ部202は、入力されたファイルサーバ名、フォルダ名およびファイル名を含み、印刷データの印刷を要求する旨のHTTP Getコマンド(印刷指示)をウェブサーバ部205に送る(S507)。
【0131】
ウェブサーバ部205は、S502で起動させたコンテンツ部207に対して、ファイルサーバ名、フォルダ名およびファイル名を通知する(S508)。コンテンツ部207は、通知された情報に基づいて、要求されている印刷データをファイルサーバ103から読み出す(S509)。そして、コンテンツ部207は、読み出された印刷データと、当該印刷データの印刷を実行する指示とを含む制御コマンドを生成し、機能公開部208に送る(S510)。機能公開部208は、機器制御部209が認識可能なコマンドに変換した後、当該制御コマンドを機器制御部209に送る。
【0132】
そして、機器制御部209は、制御コマンドに従った印刷処理を実行する(S512)。具体的には、機器制御部209は、画像形成部210に印刷データを送り、当該印刷データで示される画像を用紙に形成するように画像形成部210を制御する。
【0133】
機器制御部209は、画像形成部210から印刷終了の通知を受けると(S512)、コンテンツ部207に終了通知を送る(S513)。終了通知を受けたコンテンツ部207は、上記S507のHTTPリクエストに対する応答として、終了画面を示すHTMLデータを生成し、ウェブサーバ部205を介してウェブブラウザ部202に送る(S514、S515)。これにより、ウェブブラウザ部202は、操作部203に終了画面を表示することができる(S516)。
【0134】
以上のように、本具体例では、ウェブブラウザ部202は、印刷対象となる画像データを特定するための画像データ選択画面を操作部203に表示する。そして、ウェブブラウザ部202は、当該画像データ選択画面に画像データを特定するための特定情報が入力されると、当該特定情報で示される印刷データで示される画像の印刷指示をウェブサーバ部205に送る。ウェブサーバ部205が印刷指示を受けると、コンテンツ部207は、印刷データを取得し、当該印刷データで示される画像を印刷させるための制御コマンドを機能公開部208を介して機器制御部209に送る。
【0135】
これにより、ファイルサーバ103に予め印刷データを格納しておくだけで、複数の複合機101から、当該印刷データで示される画像が印刷された用紙(記録シート)を取得することができる。
【0136】
(応用例)
上記の説明では、複合機101内部に設置されたウェブブラウザ部202とウェブサーバ部205とが通信を行う構成として説明した。しかしながら、ウェブブラウザ部202およびウェブサーバ部205は、他の複合機や外部の情報処理装置に設置されたウェブサーバ部205またはウェブブラウザ部202と通信を行ってもよい。上述したように、ウェブブラウザ部202およびウェブサーバ部205は、汎用のウェブブラウザおよびウェブサーバのソフトウェアに従った動作を行うものであり、当該汎用のウェブブラウザで用いられる通信プロトコルであるHTTPを用いている。そのため、URLに含まれるアクセス先のアドレスを変更するだけで、インターネット回線を介して、外部の複合機や情報処理装置と通信を行うことができる。
【0137】
図10は、外部の複合機や情報処理装置400と通信を行う場合のシステム構成を示す図である。図において、第1複合機101aおよび第2複合機101bは、図1に示す複合機101と同じ構成を有している。そして、第1複合機101a、第2複合機101b、および、WebサーバやクライアントPCのような外部の情報処理装置400は、インターネットを介して相互に通信可能である。
【0138】
そして、第1複合機101aのUI部201は、URLにおいて設定されていたループバックアドレスを第2複合機101bのアドレスに変更することにより、インターネットを介して、第2複合機101bのウェブサーバ部205に対してジョブの実行指示を通知し、第2複合機101bのコンテンツ部207を起動させることができる。逆に、第2複合機101bのUI部201は、URLにおいて設定されていたループバックアドレスを第1複合機101aのアドレスに変更することにより、インターネットを介して、第2複合機101bのウェブサーバ部205に対してジョブの実行指示を通知し、第2複合機101bのコンテンツ部207を起動させることができる。
【0139】
また、情報処理装置400がウェブブラウザ部202およびウェブサーバ部205を備えていてもよい。そして、情報処理装置400のウェブブラウザ部202は、第1複合機101aまたは第2複合機101bのアドレスをアクセス先のアドレスとして含み、起動するコンテンツ部207を指定したURLが設定されることにより、インターネットを介して、情報処理装置400のウェブサーバ部205に対してジョブの実行指示を通知し、第1複合機101aまたは第2複合機101bのコンテンツ部207を起動させることができる。
【0140】
このように、URLのアドレスを外部の第1複合機101aまたは第2複合機101bのアドレスに変更するだけで、外部の複合機と連携した動作を実行することができる。そして、上記のような例では、第1複合機101a、第2複合機101bおよび情報処理装置400間の通信は、HTTPを用いた、ウェブブラウザ部とウェブサーバ部205との間の通信だけであり、制御コマンドの通信が行わない。制御コマンドの通信は、各複合機101の内部におけるコンテンツ部207と機能公開部208との間だけで行われる。そのため、制御コマンドの通信を遮断するようなファイアーウォールが各装置間において構築されていたとしても、外部の複合機101の機能を容易に制御することができる。
【0141】
例えば、第1複合機101aのジョブがビジー状態であり、第1複合機101aから第2複合機101b内部のコンテンツ部207を実行させたい場合、第1複合機101aにおいて、ユーザは、URLのループバックコールアドレスを第2複合機101bのグローバルIPアドレス(168.168.x.x)に書き換えればよい。これにより、第1複合機101aのウェブブラウザ部202は、URL(168.168.x.x/scan/scanexeなど)により、第2複合機101bをコールして、第2複合機101bのスキャン機能や印刷機能を利用することができる。
【0142】
また、第2複合機101bや情報処理装置400から第1複合機101a内部のコンテンツ部207を実行させる場合も、第2複合機101bや情報処理装置400において、ユーザは、第1複合機101aのグローバルIPアドレス(200.200.x.x)を含むURLを設定すればよい。これにより、第2複合機101bや情報処理装置400のウェブブラウザ部202は、URL(200.200.x.x/scan/scanexeなど)により、第1複合機101aをコールして、第1複合機101aのスキャン機能や印刷機能を利用することができる。
【0143】
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【0144】
最後に、複合機101の各ブロックは、ハードウェアロジックによって構成してもよいし、次のようにCPUを用いてソフトウェアによって実現してもよい。
【0145】
すなわち、複合機101は、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアであるプリンタドライバ部6の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記複合機101に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【0146】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
【0147】
また、複合機101を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【産業上の利用可能性】
【0148】
本発明は、複写、スキャン、FAXなどの複数の機能を実現する複合機に適用できる。
【符号の説明】
【0149】
101 複合機
101a 第1複合機
101b 第2複合機
102 通信ネットワーク
103 ファイルサーバ
201 UI部
202 ウェブブラウザ部
203 操作部(表示手段)
204 組込みサーバ部
205 ウェブサーバ部
206 コンテンツ管理部
207 コンテンツ部(アプリ実行部)
208 機能公開部(記憶部)
209 機器制御部
210 画像形成部
211 ネットワークスキャナ部
212 画像読取部
213 データ変換部
214 データ通信部
215 通信制御部

【特許請求の範囲】
【請求項1】
表示手段と、
ウェブブラウザのソフトウェアに従って動作するウェブブラウザ部と、
ウェブサーバのソフトウェアに従って動作するウェブサーバ部と、
上記ウェブサーバ上で実行される少なくとも一つのアプリケーションに従って動作するアプリ実行部と、
スキャン機能、印刷機能および画像データの通信機能を含む複数の機能を制御する機器制御部とを備えた複合機であって、
上記ウェブブラウザ部は、上記ウェブサーバ部から取得した画面データで示される操作画面を上記表示手段に表示する画面表示処理を行い、当該操作画面に対して入力された、上記アプリケーションの実行指示を上記ウェブサーバ部に通知し、
上記ウェブサーバ部が上記実行指示を受けると、上記アプリ実行部は、当該実行指示に対するアプリケーションを実行し、当該アプリケーションに従って、上記機器制御部に対して、上記複数の機能の少なくとも一つの機能を制御するための制御コマンドを送り、
上記機器制御部は、上記制御コマンドに従った制御を行うことを特徴とする複合機。
【請求項2】
上記ウェブブラウザ部と上記ウェブサーバ部とはHTTPを用いて通信し、
上記ウェブブラウザ部は、ループバックアドレスを用いたHTTPリクエストにより、上記実行指示を上記ウェブサーバ部に通知することを特徴とする請求項1に記載の複合機。
【請求項3】
上記ウェブブラウザ部は、ループバックアドレスと上記アプリケーションを特定するためのアプリ特定情報とを含むURLに従って、当該アプリケーションの実行指示を上記ウェブサーバ部に通知することを特徴とする請求項2に記載の複合機。
【請求項4】
複合機の性能を示す固有情報を記憶する記憶部を備えており、
上記ウェブサーバ部が上記ウェブブラウザ部から上記操作画面の送信要求を受けたとき、上記アプリ実行部は、上記記憶部から上記固有情報を取得し、取得した固有情報に基づいた操作画面を示す画面データを生成し、
上記ウェブサーバ部が上記アプリ実行部が生成した画面データを上記ウェブブラウザ部に送ることにより、上記ウェブブラウザ部は上記画面表示処理を行うことを特徴とする請求項1から3の何れか1項に記載の複合機。
【請求項5】
原稿から画像を読み取る画像読取部を備え、
上記ウェブブラウザ部は、上記操作画面として、上記画像読取部による読み取り動作の開始指示を受け付けるためのスキャン開始操作画面を上記表示手段に表示し、上記実行指示として、上記画像読取部による読み取り動作の開始指示を上記ウェブサーバ部に通知し、
上記ウェブサーバ部が上記読み取り動作の開始指示を受けると、上記アプリ実行部は、画像読取部の読み取り動作を開始させる制御コマンドを機器制御部に送ることを特徴とする請求項1から4の何れか1項に記載の複合機。
【請求項6】
原稿から画像を読み取る画像読取部と、
入力画像データで示される画像を記録シートに印刷する画像形成部とを備え、
上記ウェブブラウザ部は、上記操作画面として、ユーザ認証を行うための認証情報の入力を促す認証情報入力画面を上記表示手段に表示し、
さらに、上記ウェブブラウザ部は、当該認証情報入力画面に認証情報が入力されると、当該認証情報で示されるユーザに対応する、上記画像読取部および画像形成部の少なくとも一方の機能を制限する制限指示を上記実行指示として上記ウェブサーバ部に送り、
上記ウェブサーバ部が上記制限指示を受けると、上記アプリ実行部は、予め登録されている、認証情報と上記画像読取部および画像形成部の少なくとも一方の機能の制限方法を示す制限情報とが対応付けられた対応情報の中から、上記制限指示の認証情報に対応する制限情報を特定し、当該制限情報で示される制限方法に従って上記画像読取部および画像形成部の少なくとも一方を制限するための制御コマンドを機器制御部に送ることを特徴とする請求項1から3の何れか1項に記載の複合機。
【請求項7】
入力画像データで示される画像を記録シートに印刷する画像形成部を備え、
上記ウェブブラウザ部は、上記操作画面として、印刷対象となる画像データを特定するための画像データ選択画面を上記表示手段に表示し、
さらに、上記ウェブブラウザ部は、当該画像データ選択画面に画像データを特定するための特定情報が入力されると、当該特定情報で示される特定画像データで示される画像の印刷指示を上記実行指示として上記ウェブサーバ部に送り、
上記ウェブサーバ部が上記印刷指示を受けると、上記アプリ実行部は、特定画像データを取得し、当該特定画像データで示される画像を印刷させるための制御コマンドを機器制御部に送ることを特徴とする請求項1から3の何れか1項に記載の複合機。
【請求項8】
上記アプリケーションは、Java(登録商標)Scriptで記載されたものであることを特徴とする請求項1から7の何れか1項に記載の複合機。
【請求項9】
請求項1から8のいずれか1項に記載の複合機が備える上記の各部としてコンピュータを機能させるためのプログラム。
【請求項10】
請求項9に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2011−124721(P2011−124721A)
【公開日】平成23年6月23日(2011.6.23)
【国際特許分類】
【出願番号】特願2009−279777(P2009−279777)
【出願日】平成21年12月9日(2009.12.9)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】