以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
図1は、本発明の実施の形態の1つにおける画像形成システムの全体概要を示す図である。図1を参照して、画像形成システム1は、それぞれがネットワーク2に接続されたデータ処理装置として機能するMFP(Multi Function Peripheral)100,101,102と、サーバ200とを含む。
ネットワーク2は、ローカルエリアネットワーク(LAN)であり、インターネットにゲートウェイを介して接続されている。ネットワーク2の接続形態は有線または無線を問わない。またネットワーク2は、LANに限らず、公衆交換電話網(Public Switched Telephone Networks)を用いたネットワーク、ワイドエリアネットワーク(WAN)、インターネットであってもよい。
サーバ200は、一般的なコンピュータであり、Webサーバとして機能するアプリケーションプログラムがインストールされている。このため、サーバ200は、予め定められたWebサービスを提供する。このWebサービスを提供するためのアプリケーションプログラムは、MFP100,101,102のメーカが開示するAPI(Application Program Interface)に基づいて生成されている。このため、サーバ200は、例えばSOAP(Simple Object Access Protocol)の通信プロトコルでMFP100,101,102にコマンドを送信することにより、MFP100,101,102それぞれを制御する。
MFP100,101,102各々は、原稿を読取るためのスキャナ装置、画像データに基づいて紙などの記録媒体に画像を形成する画像形成装置およびファクシミリ装置を含み、画像読取機能、複写機能、ファクシミリ送受信機能を備えている。また、MFP100,101,102各々は、一般的なブラウジングプログラムがインストールされており、Webサーバとして機能するサーバ200からWebサービスの提供を受けることができる。
ここでは、サーバ200に記憶されているデータを、MFP100,101,102においてプリントするジョブを設定するためのWebサービスをサーバ200が提供する例を説明する。この場合、サーバ200は、Webページとしてパラメータ設定画面を送信する。
なお、本実施の形態においてはデータ処理装置の一例としてMFP100,101,102を例に説明するが、MFP100,101,102に代えて、画像を処理する機能を備えた装置、たとえば、プリンタ、ファクシミリ装置等であってもよい。また、MFP100,101,102それぞれを制御するためのプリンタドライバがインストールされたコンピュータであってもよい。また、MFP100,101,102は、機能が同じなので以下の説明では特に言及しない限りMFP100を例に説明する。
図2は、MFPの外観を示す斜視図である。図3は、MFPのハードウェア構成の一例を示すブロック図である。図2および図3を参照して、MFP100は、メイン回路110と、原稿を読み取るための原稿読取部130と、原稿を原稿読取部130に搬送するための自動原稿搬送装置120と、原稿読取部130が原稿を読み取って出力する画像を用紙等に形成するための画像形成部140と、画像形成部140に用紙を供給するための給紙部150と、ユーザインターフェースとしての操作パネル160と、を含む。メイン回路110は、CPU111と、通信インターフェース(I/F)部112と、ROM113と、RAM114と、EEPROM(Electronically Erasable and Programmable ROM)115と、大容量記憶装置としてのハードディスクドライブ(HDD)116と、ファクシミリ部117と、フラッシュメモリ118Aが装着されるカードインターフェース(I/F)118とを含む。CPU111は、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150および操作パネル160と接続され、MFP100の全体を制御する。
ROM113は、CPU111が実行するプログラム、またはそのプログラムを実行するために必要なデータを記憶する。RAM114は、CPU111がプログラムを実行する際の作業領域として用いられる。また、RAM114は、原稿読取部130から連続的に送られてくる画像を一時的に記憶する。
操作パネル160は、MFP100の上面に設けられ、表示部160Aと操作部160Bとを含む。表示部160Aは、液晶表示装置(LCD)、有機ELD(Electroluminescence Display)等の表示装置であり、ユーザに対する指示メニューや取得した画像データに関する情報等を表示する。操作部160Bは、複数のキーを備え、キーに対応するユーザの操作による各種の指示、文字、数字などのデータの入力を受付ける。操作部160Bは、表示部160A上に設けられたタッチパネルをさらに含む。
通信I/F部112は、MFP100をネットワーク2に接続するためのインターフェースである。CPU111は、通信I/F部112を介してMFP101,102またはサーバ200との間で通信し、データを送受信する。また、通信I/F部112は、ネットワーク2を介してインターネットに接続されたコンピュータと通信が可能である。
ファクシミリ部117は、公衆交換電話網(PSTN)に接続され、PSTNにファクシミリデータを送信する、またはPSTNからファクシミリデータを受信する。ファクシミリ部117は、受信したファクシミリデータを、HDD116に記憶する、または画像形成部140に出力する。画像形成部140は、ファクシミリ部117により受信されたファクシミリデータを用紙に印刷する。また、ファクシミリ部117は、原稿読取部130が原稿を読み取って出力する画像データ、またはHDD116に記憶されたデータをファクシミリデータに変換して、PSTNに接続されたファクシミリ装置に送信する。
カードI/F118は、フラッシュメモリ118Aが装着される。CPU111は、カードI/F118を介してフラッシュメモリ118Aにアクセス可能である。CPU111は、カードI/F118に装着されたフラッシュメモリ118Aに記録されたプログラムをRAM114にロードして実行する。なお、CPU111が実行するプログラムは、フラッシュメモリ118Aに記録されたプログラムに限られず、HDD116に記憶されたプログラムをRAM114にロードして実行するようにしてもよい。この場合、ネットワーク2に接続された他のコンピュータが、MFP100のHDD116に記憶されたプログラムを書換える、または、新たなプログラムを追加して書き込むようにしてもよい。さらに、MFP100が、ネットワーク2に接続された他のコンピュータからプログラムをダウンロードして、そのプログラムをHDD116に記憶するようにしてもよい。ここでいうプログラムは、CPU111が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
図4は、サーバのハードウェア構成の一例を示すブロック図である。図4を参照して、サーバ200は、それぞれがバス208に接続され、サーバ200の全体を制御するためのCPU201と、CPU201が実行するプログラム等を記憶するためのROM202と、CPU201の作業領域として用いられるRAM203と、サーバ200をネットワークに接続するためのネットワークI/F204と、大容量記憶装置としてのHDD205と、表示部206と、ユーザの操作の入力を受付ける操作部207と、外部記憶装置209と、を含む。
外部記憶装置209は、画像形成支援プログラムを記憶したCD−ROM209Aが装着される。CPU201は、外部記憶装置209を介してCD−ROM209Aに記憶された画像形成支援プログラムをRAM203にロードし、実行する。なお、画像形成支援プログラムを記憶する記録媒体としては、CD−ROM209Aに限られず、フレキシブルディスク、カセットテープ、光ディスク(CD−ROM(Compact Disc−ROM)/MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、ICカード、光カード、マスクROM、EPROM(Erasable Programmable ROM)、EEPROM(Electronically EPROM)などの半導体メモリ等でもよい。また、HDD205に記憶されたプログラムをRAM203にロードして実行するようにしてもよい。この場合、サーバ200が、ネットワーク2に接続された他のコンピュータからプログラムをダウンロードして、そのプログラムをHDD205に記憶するようにしてもよい。ここでいうプログラムは、CPU201が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
サーバ200は、MFP100,101,102それぞれが画像を形成する処理に対して課金し、使用料金を管理する。このため、HDD205に処理に対する料金を算出するための課金テーブルを記憶している。また、サーバ200は、Webサーバとして機能し、MFP100,101,102に対して、それらが画像を形成する処理を実行する際にその処理に対する料金を提示するサービスを提供する。
図5は、MFPが備えるCPUが有する機能の概要をEEPROMに記憶するデータとともに示す機能ブロック図である。図5を参照して、CPU111は、ブラウジングプログラムを実行することにより構成されるブラウジング部51と、サーバ200から受信されるコマンドに従って処理を実行する処理実行部71とを含む。
ブラウジング部51は、Webページを受信するためのWebページ受信部53と、受信されたWebページを表示するためのWebページ表示部55と、Webページに含まれるコマンドを実行するコマンド実行部61と、を含む。Webページ受信部53は、Webページの送信を要求する送信要求を通信I/F部112を介してサーバ200に送信する。送信要求を受信したサーバ200は、送信要求で特定されるWebページを送信するので、通信I/F部112がサーバ200からWebページを受信すると、Webページ受信部53は通信I/F部112からWebページを取得する。
ここでは、操作部160Bが有するボタンのいずれかに、サーバ200が提供するWebサービスを呼び出すためのコマンドが予め割り当てられている。このコマンドは、サーバ200にWebページの送信を要求するための送信要求を送信するためのコマンドであり、WebページのURLを含む。URLは、Webページのネットワーク上の位置を示す位置情報である。また、コマンドは、例えば、HTTPの通信プロトコルで送信されるGETコマンド、またはPOSTコマンドである。ユーザが、コマンドの割り当てられたボタンを指示する操作を入力すると、Webページ受信部53は、指示されたボタンに割り当てられたコマンドを実行することにより、通信I/F部112を介してWebページの送信を要求するための送信要求をサーバ200に送信し、通信I/F部112がサーバ200から受信するWebページを取得する。
Webページ受信部53は、受信されたWebページを、Webページ表示部55に出力する。Webページ表示部55は、Webページを表示部160Aに表示する。また、Webページ受信部53は、受信されたWebページがコマンドを含んでいる場合、Webページから抽出されたコマンドをコマンド実行部61に出力する。
コマンド実行部61は、Webページ受信部53から入力されるコマンドを実行する。ここでは、パラメータ設定画面を含むWebページが、印刷条件として設定されたパラメータをサーバ200に送信する第1コマンドと、プレビュー画面を含むWebページの送信をサーバ200に要求する第2コマンドと、を含む場合を例に説明する。また、プレビュー画面を含むWebページが、第1コマンドと、画像形成コマンドの送信をサーバ200に要求する第3コマンドを含む場合を例に説明する。
Webページ受信部53が、パラメータ設定画面を含むWebページを受信すると、コマンド実行部61には、第1および第2コマンドが入力される。これにより、コマンド実行部61に、第1コマンドを実行するためのパラメータ送信部63と、第2コマンドを実行するためのプレビュー画面要求部65と、が形成される。また、Webページ受信部53が、プレビュー画面を含むWebページを受信すると、コマンド実行部61には、第1および第3コマンドが入力される。これにより、コマンド実行部61に、第1コマンドを実行するためのパラメータ送信部63と、第3コマンドを実行するための画像形成指示要求部67と、が形成される。なお、ここでは、Webページ受信部53がパラメータ設定画面を含むWebページまたはプレビュー画面を含むWebページを受信する場合に、コマンド実行部61にそれぞれ形成される機能を説明するが、コマンド実行部61に形成される機能は、Webページ受信部53により受信されるWebページに含まれるコマンドによって異なる。
図6は、パラメータ設定画面の表示例の一例を示す図である。図6を参照して、パラメータ設定画面300は、画像を形成するために設定されているパラメータを表示するパラメータ設定領域301と、「設定」の文字が表された設定ボタン303と、「プレビュー」の文字が表されたプレビューボタン307と、を含む。
パラメータ設定領域301には、予め定められたデフォルトのパラメータが表示される。パラメータ設定領域301に表示されたパラメータは、変更可能であり、ユーザがパラメータを指示して、変更後のパラメータを入力すれば、変更後のパラメータが設定される。設定ボタン303は第1コマンドと関連付けられており、プレビューボタン307は第2コマンドと関連付けられている。
図5に戻って、CPU111は、パラメータ設定画面300の設定ボタン303が指示されると、第1コマンドを実行する。これにより、パラメータ送信部63は、サーバ200にパラメータ設定領域301に表示されているパラメータを送信する。プレビュー画面要求部65、および画像形成指示要求部67については後述する。
処理実行部71は、サーバ200からコマンドを受信するコマンド受信部73と、画像生成部75と、画像形成制御部77と、を含む。コマンド受信部73は、通信I/F部112がサーバから画像生成コマンドを受信すると、画像生成コマンドを画像生成部75に出力し、画像形成コマンドを受信すると、画像形成コマンドを画像形成制御部77に出力する。
画像生成部75は、画像生成コマンドが入力されると、画像生成コマンドに含まれるパラメータに従って、画像を形成するための画像データを生成し、予め定められたURLで特定される位置に、画像データを記憶する。ここでは、EEPROM115に画像データを記憶する。これにより、EEPROM115に画像データ115Aが記憶される。画像形成制御部77は、画像形成コマンドが入力されると、画像形成部140を制御して、画像形成コマンドに含まれるパラメータに従って画像を形成する。
ここで、サーバ200の機能を説明する。図7は、サーバが備えるCPU201が有する機能をHDDに記憶するデータとともに示す機能ブロック図である。図7を参照して、CPU201は、要求に応じてパラメータ設定画面を含むWebページを送信するパラメータ設定画面送信部211と、パラメータを受信するパラメータ受信部213と、パラメータに従って実行される処理に対する料金を算出する料金算出部215と、算出された料金を含むプレビュー画面を生成するプレビュー画面生成部219と、要求に応じてプレビュー画面を含むWebページを送信するプレビュー画面送信部223と、要求に応じて画像生成コマンドを送信する画像生成コマンド送信部217と、要求に応じて画像形成コマンドを送信する画像形成コマンド送信部219と、を含む。
パラメータ設定画面送信部211は、ネットワークI/F204がMFP100からパラメータ設定画面を含むWebページの送信を要求するための送信要求を受信すると、該送信要求に含まれるURLで特定されるパラメータ設定画面を含むWebページをHDD205から読出し、ネットワークI/F204を介してパラメータ設定画面を含むWebページを送信する。パラメータ設定画面送信部211は、パラメータ設定画面300を含むWebページをMFP100に送信すると、その旨をパラメータ受信部213に通知する。
上述したように、MFP100において、パラメータ設定画面300が表示部160Aに表示され、設定ボタン303が指示されると、パラメータ送信部63がパラメータを送信する。パラメータ受信部213は、ネットワークI/F204がMFP100からパラメータを受信すると、そのパラメータを、画像形成コマンド送信部219、プレビュー画面生成部221に出力する。また、パラメータ受信部213は、パラメータを送信してきたMFP100を識別するための装置識別情報を、パラメータとともに料金算出部215および画像生成コマンド送信部217に出力する。
さらに、パラメータ受信部213は、パラメータを受信する際に、MFP100との間で確立されている通信セッションを識別するためのセッション識別情報を取得する。そして、パラメータ受信部213は、取得されたセッション識別情報をプレビュー画面送信部223および画像形成コマンド送信部219に出力する。
料金算出部215は、HDD205に予め記憶されている課金テーブルを参照し、パラメータ受信部213から入力されるパラメータに基づいて、料金を算出する。図8は、課金テーブルの一例を示す図である。図8を参照して、課金テーブル231は、機能ごとに料金を関連付ける。機能は、単一のパラメータまたは複数のパラメータの組み合わせで定まる。印刷用紙のサイズを定めるパラメータと、印刷種別がモノクロおよびカラーの別を定めるパラメータとの組み合わせで定まる機能がある。たとえば、用紙のサイズを定めるパラメータ「A4」と、印刷種別のパラメータ「モノクロ」との組み合わせで定まる機能があり、その機能に対して1ページあたり10円の料金が関連付けられる。また、後処理を定めるパラメータ「両面印刷」に対して、合計料金を8割にする料金がの算出方法が関連付けられる。また、後処理を定めるパラメータ「ステープル」に対して、1点あたり10円の料金が関連付けられ、後処理を定めるパラメータ「パンチ」に対して、1ページあたり1円の単価が関連付けられる。
図7に戻って、料金算出部215は、装置識別情報で識別される装置ごとに、クレジットを管理しており、パラメータ受信部213から入力される装置識別情報に割り当てられているそのときのクレジット額と算出した料金とから残りのクレジット額を算出し、クレジット額と、算出した料金と、残クレジット額とをプレビュー画面生成部221に出力する。
画像生成コマンド送信部217は、パラメータ受信部213からパラメータと装置識別情報とが入力されると、パラメータを含む画像生成コマンドを装置識別情報で特定される装置、ここではMFP100にネットワークI/F204を介して送信する。画像生成コマンドを受信するMFP100においての処理は後述するが、画像生成コマンドに含まれるパラメータに従って、画像を形成するための画像データを生成し、予め定められた位置に記憶する。MFP100が画像データを記憶する位置は、予め定められているので、MFP100により生成される画像データは、予め定められたURLが付与されている。
プレビュー画面生成部221は、プレビュー画面を生成し、生成したプレビュー画面をプレビュー画面送信部223に出力する。プレビュー画面生成部221は、HDD205に予め記憶されているプレビュー画面を読み出す。プレビュー画面は、予め定められたURLを含み、そのURLで特定される画像データにリンクする記述を予め含む。
プレビュー画面生成部221は、料金算出部215から入力されるクレジット額と、料金と、残クレジット額とをプレビュー画面の所定の位置に貼り付ける。また、プレビュー画面生成部221は、パラメータ受信部213から入力されるパラメータを、プレビュー画面の所定の位置に貼り付ける。プレビュー画面生成部221は、プレビュー画面をプレビュー画面送信部223に出力する。
プレビュー画面送信部223は、ネットワークI/F204がMFP100からプレビュー画面を含むWebページの送信を要求するための送信要求を受信すると、送信要求を受信する際に、MFP100との間で確立されている通信セッションを識別するためのセッション識別情報を取得する。そして、プレビュー画面送信部223は、取得されたセッション識別情報をパラメータ受信部213から入力されるセッション識別情報と比較し、両セッション識別情報が一致することを条件に、プレビュー画面生成部221より入力されるプレビュー画面を含むWebページをネットワークI/F204を介してMFP100に送信する。プレビュー画面を含むWebページの送信を要求するための送信要求を受信する際にMFP100との間で確立されている通信セッションのセッション識別情報と、パラメータを受信する際にMFP100との間で確立されている通信セッションのセッション識別情報とが一致する場合に限って、プレビュー画面を含むWebページを送信するので、ユーザが設定したパラメータと、プレビュー画面とを一致させることができる。
画像形成コマンド送信部219は、ネットワークI/F204がMFP100から画像形成コマンドの送信を要求する画像形成指示要求を受信すると、画像形成指示要求を受信する際に、MFP100との間で確立されている通信セッションを識別するためのセッション識別情報を取得する。そして、画像形成コマンド送信部219は、取得されたセッション識別情報をパラメータ受信部213から入力されるセッション識別情報と比較し、両セッション識別情報が一致することを条件に、パラメータ受信部213から入力されるパラメータを含む画像形成コマンドをネットワークI/F204を介してMFP100に送信する。画像形成指示要求を受信する際にMFP100との間で確立されている通信セッションのセッション識別情報と、パラメータを受信する際にMFP100との間で確立されている通信セッションのセッション識別情報とが一致する場合に限って、画像形成コマンドを送信するので、ユーザが設定したパラメータと、出力結果とを一致させることができる。
図5に戻って、CPU111は、パラメータ設定画面300のプレビューボタン307がユーザにより指示されると、第2コマンドを実行する。これにより、プレビュー画面要求部65は、プレビュー画面を含むWebページの送信を要求するプレビュー画面送信要求をサーバ200に送信する。上述したように、プレビュー画面送信要求を受信するサーバ200は、プレビュー画面を含むWebページを送信するので、Webページ受信部53が、プレビュー画面を含むWebページを受信する。
図9は、プレビュー画面の一例を示す図である。図9を参照して、プレビュー画面310は、画像を形成するために設定されているパラメータを表示するパラメータ表示領域311と、「設定」の文字が表された設定ボタン313と、画像を形成する処理に対して課金される額等を表示するための料金表示領域315と、「プリント」の文字が表されたプリントボタン317と、プレビュー画像を表示するプレビュー領域319とを含む。
パラメータ表示領域311には、図6に示したパラメータ設定画面300のパラメータ設定領域301に設定されたパラメータが表示される。設定ボタン313は第1コマンドと関連付けられており、プリントボタン317は第3コマンドと関連付けられている。プレビュー画面を含むWebページは、画像データ115AのURLを含み、画像データ115Aにリンクする記述を含むので、プレビュー領域319に、EEPROM115に記憶されている画像データ115Aが表示される。画像データ115Aは、画像生成部75が、パラメータ設定画面300のパラメータ設定領域301に入力されたパラメータに従って生成したものなので、プレビュー画面310のパラメータ表示領域に表示されたパラメータで画像を生成する処理を実行した場合に用紙に形成される画像が、プレビュー領域319に表示される。
再び図5に戻って、CPU111は、プレビュー画面310のプリントボタン317が指示されると、第3コマンドを実行する。これにより、画像形成指示要求部67は、サーバ200に画像形成コマンドの送信を要求する画像形成要求を送信する。
なお、ここでは、パラメータ設定画面300のパラメータ設定領域301においてパラメータを設定する例を示したが、MFP100が有する設定画面でパラメータを設定するようにしてもよい。この場合、パラメータ送信部63は、パラメータ設定画面300の設定ボタン303が指示されると、サーバ200にパラメータの設定コマンドの送信を要求する送信要求を送信する。この送信要求に応じてサーバ200が設定コマンドを返信するようにして、MFP100が設定コマンドを受信すると、処理実行部71のコマンド受信部73により設定コマンドが受信される。そして、処理実行部71にも受けられる設定部が、表示部160Aに印刷条件を設定するための設定画面を表示し、ユーザが操作部160Bに入力するパラメータを受け付け、受け付けられたパラメータをサーバ200に送信する。
また、ここでは、MFP100の画像生成部75は、画像生成コマンドを受信すると、予め定められた位置に画像データを記憶するようにしたが、サーバ200の画像生成コマンド送信部217が送信する画像生成コマンドに、画像生成部75により生成される予定の画像データのURLを含めるようにしてもよい。この場合、MFP100の画像生成部75は、画像生成コマンドに含まれるURLで特定される位置に画像データを記憶する。さらに、サーバ200のプレビュー画面生成部221は、画像生成コマンド送信部217からMFP100に送信したURLを取得するようにし、そのURLを含み、そのURLで特定される画像データにリンクする記述をプレビュー画面を含むWebページに含めるようにする。
また、MFP100の画像生成部75が、画像データのURLをサーバ200に送信するようにしてもよい。この場合、サーバ200のプレビュー画面生成部221が、URLを受信するようにし、そのURLを含み、そのURLで特定される画像データにリンクする記述をプレビュー画面を含むWebページに含めるようにする。
また、プレビュー画面生成部221において、プレビュー画面を含むWebページに画像データにリンクする記述を含めることなく、MFP100において、プレビュー画面を受信した時点で、受信されたプレビュー画面の予め定められた位置に、画像生成部75により記憶された画像データをリンクする記述を含めるようにしてもよい。この場合、プレビュー画面に、MFP100に画像データをリンクする記述を含めさせるコマンドが埋め込まれる。
図10は、Webアプリケーション処理の流れの一例を示すフローチャートである。Webアプリケーション処理は、MFP100が備えるCPU111がブラウジングプログラムを実行することにより、CPU111により実行される処理である。図10を参照して、CPU111は、Webページの送信要求を受け付けたか否かを判断する。Webページの送信要求を受け付けるまで待機状態となり(ステップS01でNO)、Webページの送信要求を受け付けると(ステップS01でYES)、ブラウジングプログラムを実行し、処理をステップS02に進める。ここでは、ユーザが操作部160Bが有するボタンのうちパラメータ設定画面を含むWebページの送信を要求するためのコマンドが予め割り当てられたボタンを指示する操作を検出すると、Webページの送信要求を受け付ける。パラメータ設定画面を含むWebページの送信を要求するためのコマンドは、サーバ200に送信要求を送信するためのコマンドであり、パラメータ設定画面を含むWebページのURLを含み、HTTPの通信プロトコルで送信するためのGETコマンド、またはPOSTコマンドである。
ステップS02においては、パラメータ設定画面を含むWebページの送信を要求する送信要求をサーバ200に送信し、サーバ200からパラメータ設定画面を含むWebページを通信I/F部112で受信する。
ステップS03においては、受信されたWebページに含まれるパラメータ設定画面を表示部160Aに表示する。図6に示したパラメータ設定画面300が表示される。次のステップS04においては、パラメータが設定されたか否かを判断する。パラメータが設定されたならば処理をステップS05に進め、パラメータが設定されなければステップS05をスキップして処理をステップS06に進める。ステップS05においては、パラメータ設定画面300のパラメータ設定領域301に設定されているパラメータをステップS04において設定されたパラメータで変更し、処理をステップS06に進める。
ステップS06においては、パラメータ設定画面300の設定ボタン303が指示されたか否かを判断する。設定ボタン303が指示されたならば処理をステップS07に進めるが、そうでなければ処理をステップS09に進める。ステップS07においては、パラメータ設定画面のパラメータ設定領域301に設定されているパラメータをサーバ200に送信し、処理をステップS08に進める。ステップS08においては、エラー画面を含むWebページを受信したか否かを判断する。エラー画面を含むWebページを受信したならば処理をステップS17に進め、そうでなければ処理をステップS09に進める。ステップS01において送信要求を送信した際に、サーバ200との間で確立されている通信セッションと同じセッション識別情報の通信セッションでパラメータが送信されない場合、サーバ200からエラー画面を含むWebページが送信されてくる。サーバ200において、通信セッションでパラメータの同一性を確保しているからである。
ステップS09においては、パラメータ設定画面300のプレビューボタン307が指示されたか否かを判断する。プレビューボタン307が指示されたならば処理をステップS10に進めるが、そうでなければ処理をステップS04に戻す。なお、パラメータ設定画面を閉じる操作を検出した場合は、Webアプリケーション処理を終了する。
ステップS10においては、プレビュー画面送信要求を、サーバ200に送信する。プレビュー画面送信要求を受信したサーバ200は、プレビュー画面を含むWebページを返信するので、次のステップS11において、サーバ200からプレビュー画面を含むWebページを受信したか否かを判断する。通信I/F部112がサーバ200からプレビュー画面を含むWebページを受信したか否かを検出する。サーバ200からプレビュー画面を含むWebページを受信したならば処理をステップS12に進めるが、そうでなければ処理をステップS17に進める。
ステップS17においては、エラー画面を表示部160Aに表示し、処理をステップS01に戻す。ステップS07においてパラメータを送信する際にサーバ200との間で確立していた通信セッションと、ステップS09においてプレビュー画面送信要求を送信する際にサーバ200との間で確立していた通信セッションが異なる場合、サーバ200からプレビュー画面が送信されず、エラー画面が送信される。
ステップS12においては、ステップS10において受信されたWebページに含まれるプレビュー画面を表示部160Aに表示し、処理をステップS13に進める。ここでは、図9に示したプレビュー画面310が表示される。プレビュー画面310は、後述するジョブ実行処理が実行されて生成され、記憶される画像データへのリンクを含むので、その画像データがプレビュー領域319に表示される。
ステップS13においては、プレビュー画面310のプリントボタン317が指示されたか否かを判断する。プリントボタン317が指示されたならば処理をステップS14に進め、そうでなければ処理をステップS16に進める。ステップS14においては、サーバ200に画像形成要求を送信し、処理をステップS15に進める。ステップS15においては、エラー画面を含むWebページを受信したか否かを判断する。エラー画面を含むWebページを受信したならば処理をステップS17に進め、そうでなければ処理をステップS16に進める。ステップS07においてパラメータを送信する際にサーバ200との間で確立していた通信セッションと、ステップS14において画像形成要求を送信する際にサーバ200との間で確立していた通信セッションが異なる場合、サーバ200から画像形成コマンドが送信されず、エラー画面が送信される。画像形成コマンドは、後述するジョブ実行処理において受信される。
ステップS16においては、終了指示を受け付けたか否かを判断する。終了指示を受け付けたならば処理を終了し、そうでなければ処理をステップS13に戻す。ステップS12において表示部160Aに表示されたプレビュー画面310を閉じる操作を検出すると、終了指示を受け付ける。終了指示を受け付けた場合、サーバ200との間で確立されている通信セッションを切断する。
図11は、ジョブ実行処理の流れの一例を示すフローチャートである。ジョブ実行処理は、MFP100が備えるCPU111がデータ処理プログラムを実行することによりCPU111により実行され、上述したWebアプリケーション処理と並行して実行される処理である。図11を参照して、CPU111は、画像生成コマンドを受信したか否かを判断する(ステップS21)。通信I/F部112が、サーバ200から画像生成コマンドを受信したならば処理をステップS22に進め、そうでなければ処理をステップS25に進める。ステップS25においては、画像形成コマンドを受信したか否かを判断する。通信I/F部112が、サーバ200から画像形成コマンドを受信したならば処理をステップS26に進め、そうでなければ処理をステップS21に戻す。
ステップS22およびステップS23の処理は、画像生成コマンドを受信することにより実行される処理である。画像生成コマンドは、図10のステップS07において、パラメータがサーバ200に送信されることに応じて、そのパラメータを受信したサーバ200が送信するコマンドであり、ステップS07においてサーバ200に送信されたパラメータを含む。
ステップS22においては、画像生成コマンドに含まれるパラメータに従って画像を形成するための画像データを生成する。具体的には、パラメータに従って原稿読取部130に原稿を読み取らせ、原稿読取部130が出力するデータを、パラメータに従って画像形成部140にデータの画像を形成するための画像データを生成する。そして、生成された画像データを予め定められた位置に記憶し(ステップS23)、処理を終了する。
一方、ステップS26の処理は、画像形成コマンドを受信することにより実行される処理である。画像形成コマンドは、図10のステップS14において、画像形成要求がサーバ200に送信されることに応じて、その画像形成要求をを受信したサーバ200が送信するコマンドであり、ステップS07においてサーバ200に送信されたパラメータを含む。
ステップS26においては、ステップS25においてサーバ200から受信された画像形成コマンドに含まれるパラメータに従って画像を形成し、処理を終了する。
図12は、Webサービス提供処理の流れの一例を示すフローチャートである。Webサービス提供処理は、サーバ200が備えるCPU201が、画像形成支援プログラムを実行することによりCPU201により実行される処理である。
図12を参照して、CPU201は、Webページの送信要求を受信したか否かを判断する(ステップS101)。ネットワークI/F204が、MFP100,101,102のいずれかからWebページの送信要求を受信するまで待機状態となり(ステップS101でNO)、Webページの送信要求を受信したならば処理をステップS102に進める。すなわち、ステップS102以降の処理は、MFP100,101,102のいずれかからWebページの送信要求を受信することを条件に、実行される処理である。ここでは、MFP100からWebページの送信要求を受信した場合を例に説明する。
ステップS102においては、Webページ送信要求を送信してきたMFP100との間で確立された通信セッションを識別するためのセッション識別情報を取得し、一時記憶する。セッション識別情報は、サーバ200が付与するものであっても良い。
そして、ステップS103においては、図6に示したパラメータ設定画面300を含むWebページをMFP100に送信する。そして、パラメータを受信したか否かを判断する(ステップS104)。パラメータを受信したならば処理をステップS105に進めるが、そうでなければ処理をステップS109に進める。パラメータを受信する際に、パラメータを送信してきたMFP100の装置識別情報を取得する。装置識別情報は、ここではIP(Internet Protocol)アドレスとしている。
ステップS105においては、パラメータを送信してきたMFP100との間で確立されている通信セッションを識別するためのセッション識別情報を取得し、ステップS102で取得されたセッション識別情報と一致するか否かを判断する。両セッション識別情報が一致すれば、処理をステップS106に進め、一致しなければ処理をステップS116に進める。ステップS116においては、エラー画面を含むWebページを送信し、処理をステップS101に戻す。エラー画面を含むWebページを送信した後、MFP100との間で確立されていた通信セッションを切断する。
ステップS106においては、ステップS104において受信されたパラメータに基づいて料金を算出する。パラメータを用いて画像を形成した場合に課金される料金を、HDD205に記憶されている課金テーブル231を用いて算出する。
次に、プレビュー画面を生成する(ステップS107)。プレビュー画面の予め定められた位置に、ステップS104で受信されたパラメータと、ステップS106において算出した料金を貼り付け、プレビュー画面の予め定められた位置に、予め定められたURLを含み、そのURLで特定される画像データにリンクする記述をする。生成されたプレビュー画面は、RAM203に一時記憶される。
次のステップS108においては、パラメータを送信してきたMFP10に、そのパラメータを含む画像生成コマンドを送信する。ステップS104において取得された装置識別情報で送信先のMFP100を特定する。画像生成コマンドを受信するMFP100は、上述したように、画像生成コマンドに含まれるパラメータに従って画像データを生成し、予め定められたURLで特定される位置に画像データを記憶する。この画像データに付されるURLは、先のステップS107において、プレビュー画面に記述したリンクに含まれるURLと同じである。このように、プレビュー画面は、MFP100がパラメータに従って生成した画像データのURLがリンクされているので、プレビュー画面を含むWebページをブラウザで表示した場合には、画像データの画像がプレビュー画面の所定の位置に表示される。
なお、ステップS107において生成したプレビュー画面に記述したリンクに含まれるURLを画像生成コマンドとともに送信するようにしてもよい。この場合、画像生成コマンドを受信するMFP100においては、生成した画像データを画像生成コマンドとともに受信するURLで特定される位置に記憶することになる。このため、サーバ200が画像データを記憶するURLを定めることができる。
ステップS109においては、プレビュー画面を含むWebページの送信要求を受信したか否かを判断する。ネットワークI/F204が、MFP100からプレビュー画面を含むWebページの送信要求を受信すると、処理をステップS110に進めるが、そうでなければ処理をステップS112に進める。
ステップS110においては、プレビュー画面を含むWebページ送信要求を送信してきたMFP100との間で確立された通信セッションを識別するためのセッション識別情報が、ステップS102で取得されたセッション識別情報と一致するか否かを判断する。両セッション識別情報が一致すれば、処理をステップS111に進め、一致しなければ処理をステップS116に進める。ステップS111においては、RAM203に一時記憶されたプレビュー画面を読み出し、そのプレビュー画面を含むWebページを、MFP100に送信し、処理をステップS112に進める。
ステップS116においては、エラー画面を含むWebページを送信し、処理をステップS101に戻す。ステップS105においても、パラメータを受信する際に確立されていたセッションと、ステップS102で取得されたセッション識別情報との同一性を判断しているため、パラメータが受信される際のセッションと、プレビュー画面を含むWebページ送信要求が受信される際のセッションとの同一性が判断される。このため、ステップS104において受信されたパラメータに基づいて生成されたプレビュー画面を含むWebページを送信することができる。セッションが同一でない場合は、エラー画面が送信されるので、ステップS104において受信されたパラメータとは異なるパラメータに基づいて生成されたプレビュー画面が誤って送信されることがない。
ステップS112においては、画像形成指示要求を受信したか否かを判断する。ネットワークI/F204が、MFP100から画像形成指示要求を受信すると、処理をステップS113に進めるが、そうでなければ処理をステップS115に進める。
ステップS113においては、画像形成指示要求を送信してきたMFP100との間で確立された通信セッションを識別するためのセッション識別情報が、ステップS102で取得されたセッション識別情報と一致するか否かを判断する。両セッション識別情報が一致すれば、処理をステップS114に進め、一致しなければ処理をステップS116に進める。ステップS114においては、画像形成コマンドを、MFP100に送信し、処理をステップS112に進める。画像形成コマンドは、ステップS104において受信されたパラメータを含む。
ステップS116においては、エラー画面を含むWebページを送信し、処理をステップS101に戻す。ステップS105においても、パラメータを受信する際に確立されていたセッションと、ステップS102で取得されたセッション識別情報との同一性を判断しているため、パラメータが受信される際のセッションと、画像形成指示要求が受信される際のセッションとの同一性が判断される。このため、ステップS104において受信されたパラメータを含む画像形成コマンドを送信することができる。セッションが同一でない場合は、エラー画面が送信されるので、MFP100において、ステップS104において受信されたパラメータとは異なるパラメータに基づいて、画像が形成されることがない。
ステップS115においては、終了指示を検出したか否かを判断する。ステップS101において受信されたWebページの送信要求を送信してきたMFP100との間で確立されていた通信セッションが切断されたことを検出すると、終了指示を検出する。終了指示を検出したならば処理を終了するが、そうでなければ処理をステップS104に戻す。
以上説明したように本実施の形態における画像形成システム1は、サーバ200と、MFP100,101,102とを備え、MFP100,101,102それぞれにおいてにおいて受け付けられたパラメータを用いて画像を形成する処理に対する料金が、サーバ200において算出され、算出された料金を含むプレビュー画面が生成される一方、MFP100,101,102それぞれにおいてサーバ200からパラメータが受信されると、受信されたパラメータを用いて画像を形成するための画像データが生成され、サーバ200から画像データにリンクする記述と料金とを含むプレビュー画面が受信される。このため、サーバにおいて生成されたプレビュー画面にMFP100,101,102それぞれで生成された画像データがリンクされるので、プレビュー画面は、料金と画像データの画像とが表示される。その結果、サーバ200において算出された料金と画像データの画像とを1つのプレビュー画面で表示することができる。
また、サーバ200において、MFP100,101,102いずれかからURLが受信され、受信されたURLがプレビュー画面にリンクされるので、MFP100,101,102とサーバ200との間で画像データが送受信されない。このため、データを送受信するための負荷を低減することができる。
さらに、MFP100,101,102それぞれは、サーバ200から受信されるURLで特定される位置に生成した画像データを記憶し、サーバ200はMFP100,101,102に送信したURLをプレビュー画面にリンクするので、MFP100,101,102とサーバ200との間で画像データが送受信されない。このため、データを送受信するための負荷を低減することができる。
さらに、MFP100,101,102は、予め定められたURLで特定される位置に生成した画像データを記憶し、サーバ200は、予め定められた位置に記憶された画像データのURLを含み、画像データにリンクする記述をプレビュー画面に含めるので、MFP100,101,102とサーバ200との間で画像データが送受信されない。このため、データを送受信するための負荷を低減することができる。
さらに、MFP100,101,102それぞれにおいて、サーバ200から受信されたプレビュー画面の予め定められた位置に、画像データをリンクするので、MFP100,101,102とサーバ200との間で画像データが送受信されない。このため、データを送受信するための負荷を低減することができる。
さらに、MFP100,101,102においてブラウジングプログラムを実行することにより、プレビュー画面をサーバ200から受信し、表示するので、新たにプログラムを開発する必要がない。
さらに、サーバ200は、MFP100,101,102のいずれかからプレビュー画面送信要求を受信することに応じて、プレビュー画面送信要求を受信したときに確立されていた通信セッションとセッション識別情報が同じ通信セッションが確立されているときにMFP100,101,102のいずれかから受信されたパラメータを用いて算出された料金を含むプレビュー画面を送信するので、パラメータとプレビュー画面とを整合させることができる。
なお、上述した実施の形態においては、画像形成システム1について説明したが、図12に示したWebサービス提供処理を実行するための画像形成支援方法または画像形成支援方法をコンピュータに実行させるための画像形成支援プログラムとして発明を捉えることができるのはいうまでもない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 画像形成システム、2 ネットワーク、51 ブラウジング部、53 ページ受信部、55 ページ表示部、61 コマンド実行部、63 パラメータ送信部、65 プレビュー画面要求部、67 画像形成指示要求部、71 処理実行部、73 コマンド受信部、75 画像生成部、77 画像形成制御部、100,101,102 MFP、110 メイン回路、111 CPU、112 通信I/F部、113 ROM、114 RAM、115 EEPROM、116 HDD、117 ファクシミリ部、118 カードI/F、118A フラッシュメモリ、120 自動原稿搬送装置、130 原稿読取部、140 画像形成部、150 給紙部、160 操作パネル、200 サーバ、201 CPU、202 ROM、203 RAM、204 ネットワークI/F、205 HDD、206 表示部、207 操作部、208 バス、209 外部記憶装置、209A CD−ROM、211 パラメータ設定画面送信部、213 パラメータ受信部、215 料金算出部、217 画像生成コマンド送信部、219 画像形成コマンド送信部、221 プレビュー画面生成部、223 プレビュー画面送信部、231 課金テーブル、307 プレビューボタン、310 プレビュー画面。