以下に、図面を参照しつつ、サービス提供システムの実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらの説明は繰り返さない。
図1は、この発明の実施の形態におけるサービス提供システム1の概略を示す図である。図1を参照して、サービス提供システム1は、MFP200(図1においては、MFP200A,200B)と、通信サーバ300と、アプリケーションサーバ400と、中継装置100とを含む。通信サーバ300およびアプリケーションサーバ400は、それぞれ、単体のサーバに限定されず、サーバ群であってもよい。また、通信サーバ300およびアプリケーションサーバ400は1台のコンピュータで構成されてもよい。
通信サーバ300およびアプリケーションサーバ400は、サービスの提供者側に設置され、LAN(Local Area Network)やVPN(Virtual Private Network)などの同じプライベートネットワーク800に接続される。MFP200A,200Bおよび中継装置100は、ユーザ側(利用者側)に設置され、同じプライベートネットワーク900に接続される。中継装置100は、インターネットや公衆回線や公衆無線LANなどのパブリックネットワーク700を介して、通信サーバ300およびアプリケーションサーバ400などのサーバ側と接続される。なお、図1においては、サーバ側には、中継装置100のようなゲートウェイは記載されていないが備えられる。通信サーバ300がゲートウェイの機能を有するようにしてもよい。
MFP200は、コピー機能、スキャナ機能、プリンタ機能、ファックス機能、および、通信機能を有し、画像が表された読取対象から画像を画像データとして読取ったり、他のMFPなどの画像処理装置やコンピュータなどの他の装置から通信ネットワーク回線や電話回線などの通信回線を経由して画像データを受信したり、通信回線を経由して他の装置に画像データを送信したり、画像データに基づき画像を印刷したりする。画像とは、文書、線図、図面、イラスト、絵画および写真などである。画像データは、画像をデータとして表現したものであって、テキストデータもしくは文書データ、または、ベクトル形式もしくはビットマップ形式の画像データである。
アプリケーションサーバ400は、MFP200を用いてサービスを提供する。提供するサービスは、たとえば、文書や画像などをMFP200でスキャンした画像データをサーバ側のストレージに保存するサービス、ストレージに保存されている画像データを近くにあるサービス提供システム1内のMFP200に出力するサービス、MFP200以外の装置(たとえば、携帯端末500)からのプリント指示に応じてストレージに保存されている画像データなどを、サービス提供システム1内のMFP200に出力するサービス、および、MFP200以外の装置(たとえば、携帯端末500)からのファックス送信指示に応じて所定の画像データを、サービス提供システム1内のMFP200からファックスの送信先に送信するサービスである。アプリケーションサーバ400は、これらのようなサービスを提供するためのアプリケーションプログラムを実行する。なお、アプリケーションサーバ400は、通信サーバ300と異なるプライベートネットワークに接続されているサーバであってもよいし、異なるサービス提供者に設置されるサーバであってもよい。
通信サーバ300は、MFP200とアプリケーションサーバ400との通信を管理する。たとえば、通信サーバ300は、MFP200とアプリケーションサーバ400との通信を中継する中継装置100の管理や認証をする。
図2は、この実施の形態におけるMFP200の構成を示すブロック図である。図2を参照して、MFP200は、MFP200の全体を制御するための制御部210と、所定の情報を記憶するための記憶部220と、MFP200を操作するための操作部230と、MFP200の所定の情報を表示するための表示部240と、外部の装置とプライベートネットワーク900を介して通信するための通信部260と、所定の画像を読込むためのスキャナ部270と、所定の画像を印刷するためのプリンタ部280とを含む。
記憶部220は、制御部210でプログラムを実行するために必要な作業領域として用いられるRAM(Random Access Memory)と、制御部210で実行するためのプログラムを記憶するためのROM(Read Only Memory)とを含む。また、RAMには、所定の処理を実行するためのプログラムおよびデータが、操作部230、通信部260またはスキャナ部270から読込まれて記憶される。さらに、RAMの記憶領域を補助するための補助記憶装置として、ハードディスクドライブまたはメモリカードが用いられてもよい。
操作部230は、MFP200に所定の機能を実行させるための複数の操作ボタン、および、表示部240のディスプレイに構成されるタッチパネルを含む。操作部230の操作ボタンおよびタッチパネルが操作されることによってMFP200に入力された操作内容を示す操作信号は、制御部210に受け渡される。
表示部240は、ディスプレイにタッチパネルが構成された液晶表示装置(以下「LCD」(Liquid Crystal Display)という)を含む。表示部240のLCDは、制御部210から受けた画像であって、MFP200の状態およびタッチパネルの操作ボタンを示す画像を表示する。なお、表示部240は、LCDに替えて、EL(Electro-Luminescence)ディスプレイ、プラズマディスプレイ、SED(Surface-conduction Electron-emitter Display)など他のFPD(Flat Panel Display)を含むようにしてもよい。
通信部260は、外部の装置、たとえば、中継装置100などとの間でプライベートネットワーク900を介して、予め定められたプロトコルで、データを送受信する。通信部260は、制御部210から受けたデータを外部に送信したり、外部から受信したデータを制御部210に受け渡したりする。
スキャナ部270は、紙またはその他の物から、それらの表面の視覚可能な情報を、光学的に読取って、読取った画像を画像データに変換し、その画像データを制御部210に受け渡す。
プリンタ部280は、制御部210から受けた画像データを画像に変換し、その画像を印刷用紙に印刷する。印刷用紙には、普通紙、写真用紙およびOHP(Overhead projector)フィルムなどが含まれる。
制御部210は、MPU(Micro Processing Unit)およびその補助回路からなる。制御部210は、記憶部220、操作部230、表示部240、通信部260、スキャナ部270およびプリンタ部280を制御し、記憶部220に記憶されたプログラムおよびデータにしたがって所定の処理を実行し、操作部230、通信部260またはスキャナ部270から入力されたデータを処理し、処理されたデータを、記憶部220に記憶させたり、表示部240に表示させたり、通信部260から出力させたり、プリンタ部280で印刷させたりする。
MFP200のコピー機能、プリンタ機能、スキャナ機能、ファクシミリ機能および通信機能は、それぞれ、制御部210、記憶部220、操作部230、表示部240、通信部260、スキャナ部270およびプリンタ部280のMFP200の各部が協調することによって実現される。
図3は、この実施の形態における通信サーバ300の構成を示すブロック図である。図3を参照して、通信サーバ300は、通信サーバ300の全体を制御するための制御部310と、所定の情報を記憶するための記憶部320と、記憶部320を補助して所定の情報を記憶するための外部記憶装置350と、外部の装置とプライベートネットワーク800を介して通信するための通信部360とを含む。
記憶部320および通信部360は、それぞれ、図2で説明したMFP200の記憶部220および通信部260と同様であるので、重複する説明は繰返さない。
外部記憶装置350は、ハードディスクドライブ、フレキシブルディスクドライブ、MO(Magneto-Optical disk)ドライブ、CD(Compact Disc)ドライブ、DVD(Digital Versatile Disk)ドライブ、または、メモリカードリーダライタなどの記憶装置で構成される。外部記憶装置350は、制御部310から受けた所定のデータまたはプログラムを、記録媒体351に磁気的、光学的、または電気的に記録したり、記録媒体351から読出して制御部310に受け渡したりする。記録媒体351としては、ハードディスク,フレキシブルディスクなどの磁気ディスク、CD−ROM(Compact Disk Read Only Memory),CD−R(Compact Disk Recordable),CD−RW(Compact Disk ReWritable),DVD−ROM(Digital Versatile Disk Read Only Memory),DVD−R(Digital Versatile Disk Recordable),DVD−RW(Digital Versatile Disk Rerecordable Disc),DVD−RAM(Digital Versatile Disk Random Access Memory),DVD+R,DVD+RW(Digital Versatile Disk ReWritable)などの光ディスク、MO(Magneto-Optical disk)などの光磁気ディスク、メモリカード、または、USB(Universal Serial Bus)メモリなどがある。
制御部310は、図2で説明したMFP200の制御部210と同様の構成を有する。制御部310は、記憶部320、外部記憶装置350および通信部360を制御し、記憶部320に記憶されたプログラムおよびデータにしたがって所定の処理を実行し、外部記憶装置350または通信部360から入力されたデータを処理し、処理されたデータを、記憶部320または外部記憶装置350の記録媒体351に記憶させたり、通信部360から出力させたりする。
なお、この実施の形態においては、通信サーバ300は、操作部および表示部を含まず、外部の装置の操作部からの操作によって操作され、外部の装置の表示部に情報を出力するが、これに限定されず、操作部および表示部の構成を含むこととしてもよい。操作部は、キーボードおよびマウスを含み、操作部のキーボードおよびマウスが操作されることによって通信サーバ300に入力された操作内容を示す操作信号は、制御部310に受け渡される。表示部は、LCDを含み、LCDは、制御部310から受けた画像データに対応する画像を表示する。
アプリケーションサーバ400の構成は、通信サーバ300の構成と同様であるので、重複する説明は繰返さない。
図4は、この実施の形態における中継装置100の構成を示すブロック図である。図4を参照して、中継装置100は、中継装置100の全体を制御するための制御部110と、所定の情報を記憶するための記憶部120と、記憶部120を補助して所定の情報を記憶するための外部記憶装置150と、外部の装置とプライベートネットワーク900を介して通信するための第1通信部160と、外部の装置とパブリックネットワーク700を介して通信するための第2通信部170とを含む。
記憶部120は、図2で説明したMFP200の記憶部220と同様である。第1通信部160および第2通信部170は、図2で説明したMFP200の通信部260と同様である。このため、重複する説明は繰返さない。
外部記憶装置150は、メモリカードリーダライタで構成される。なお、外部記憶装置150は、通信サーバ300の外部記憶装置350と同様、ハードディスクドライブ、フレキシブルディスクドライブ、MOドライブ、CDドライブ、または、DVDドライブなどの記憶装置で構成されるようにしてもよい。外部記憶装置150は、制御部110から受けた所定のデータまたはプログラムを、メモリカードやUSB(Universal Serial Bus)メモリなどの記録媒体190に電気的に記録したり、記録媒体190から読出して制御部110に受け渡したりする。
図5は、この実施の形態におけるサービス提供システム1の機能の概略を示す機能ブロック図である。なお、この実施の形態においては、図5で説明するサービス提供システム1に含まれる通信サーバ300および中継装置100の各装置の複数の機能が、それぞれの制御部310,110によって、後述する図6および図7で説明するようなソフトウェアのプログラムが実行されることによって、各装置に構成される場合について説明する。しかし、これに限定されず、各装置の複数の機能の一部または全部がそれぞれ、専用のハードウェアで構成されるようにしてもよい。
図5を参照して、中継装置100は、第1判断部111と、第2判断部112と、データ量取得部113と、第3判断部114と、第4判断部115と、通信路確立部116と、中継部117と、第5判断部118と、通信路解放部119とを含む。通信サーバ300は、第1判断部311と、第2判断部312と、データ量取得部313とを含む。
第1判断部111およびデータ量取得部113は、制御部110および第1通信部160が協調して構成される。第2判断部112、第4判断部115、通信路確立部116、第5判断部118および通信路解放部119は、制御部110に構成される。第3判断部114および中継部117は、制御部110、第1通信部160および第2通信部170が協調して構成される。
第1判断部311およびデータ量取得部313は、制御部310および通信部360が協調して構成される。第2判断部312は、制御部310に構成される。
中継装置100において、第1判断部111は、MFP200からジョブが発生したことを示す信号を受信することで、MFP200がアプリケーションサーバ400と通信するジョブが発生したかを判断する。第2判断部112は、ジョブで通信するアプリケーションサーバ400とこのMFP200との間でデータを通信するための論理的な既存通信路が確立されているかを判断する。データ量取得部113は、MFP200からジョブで送信されるデータのサイズを推定可能なデータを取得する。
データのサイズを推定可能なデータは、たとえば、データがPJL(Print Job Language)の印刷データやスキャンデータである場合は、ヘッダ部に含まれるデータサイズを示すデータのようなデータのサイズを特定可能なデータである。しかし、データのサイズを推定可能であれば良く、たとえば、ジョブタイプを示すデータであってもよい。この場合、ジョブタイプが印刷ジョブやスキャンジョブであれば、大容量のデータと推定する。
通信サーバ300において、第1判断部311は、アプリケーションサーバ400からジョブが発生したことを示す信号を受信することで、アプリケーションサーバ400がMFP200と通信するジョブが発生したかを判断する。第2判断部312は、ジョブで通信するMPF200とこのアプリケーションサーバ400との間でデータを通信するための論理的な既存通信路が確立されているかを判断する。データ量取得部113は、アプリケーションサーバ400からジョブで送信されるデータのサイズを推定可能なデータを取得する。
中継装置100の第3判断部114は、中継装置100のデータ量取得部113または通信サーバ300のデータ量取得部313によって取得されたデータに基づいて、ジョブに伴なう通信データ量が多いと判断するための条件を満たすかを判断する。たとえば、取得されたデータがデータのサイズを特定可能なデータであれば、第3判断部114は、そのデータで特定されるデータ量が所定量以上であるとの条件を満たすかを判断する。取得されたデータがジョブタイプを示すデータであれば、第3判断部114は、そのデータで示されるジョブタイプが印刷ジョブまたはスキャンジョブであるとの条件を満たすかを判断する。
第4判断部115は、第2判断部112によって既存通信路が確立されていると判断された既存通信路に加えて、アプリケーションサーバ400とMFP200との間でデータを通信するための論理的な新規通信路を物理的通信路に確立することが可能な条件を満たすかを判断する。たとえば、第4判断部115は、現在のリソースの空き状況を確認し、空き状況が新たな論理的な通信路を確立するために必要なリソース以上であるかを判断する。リソースの空き状況は、たとえば、物理的通信路の帯域幅の使用率、通信を処理する制御部の使用率、通信のために用いられる記憶部の使用率、および、物理的通信路に確立されている論理的な通信路の数などから特定することができる。
通信路確立部116は、第1判断部111によってジョブが発生したと判断され、かつ、第2判断部112によって既存通信路が確立されていると判断され、かつ、第3判断部114によってジョブに伴なう通信データ量が多いと判断するための条件を満たすと判断され、かつ、第4判断部115によって新規通信路を確立することが可能であると判断された場合に、アプリケーションサーバ400とMFP200との間に新規通信路を確立する。
通信サーバ300および中継装置100の中継部314,117は、通信路確立部116によって新規通信路が確立されると、その新規通信路を用いてアプリケーションサーバ400とMFP200との通信を中継する。
中継装置100において、第5判断部118は、通信路確立部116によって確立された新規通信路での通信が終了したときに、当該通信のための新規通信路の他に同一のMFP200およびアプリケーションサーバ400のための論理的な通信路が存在するかを判断する。
通信路解放部119は、第5判断部118によって新規通信路の他に論理的な通信路があると判断された場合、新規通信路を解放する。つまり、他に通信路がある場合は、新規通信路を再利用しない。第5判断部118によって新規通信路の他に論理的な通信路がないと判断された場合、新規通信路を維持し、その後、所定時間、新規通信路が利用されなければ、新規通信路を解放する。
図6は、この実施の形態におけるサービス提供システム1で実行される第1の処理の流れを示すフローチャートである。図6を参照して、この処理は、アプリケーションサーバ400からの接続依頼をトリガとして実行される処理である。アプリケーションサーバ400において、制御部は、ジョブの発生に伴ないデバイス(ここでは、MFP200)への接続依頼を通信サーバ300に送信する(ステップS411)。
通信サーバ300において、制御部310は、接続依頼の受信に応じて、当該デバイスであるMFP200とアプリケーションサーバ400との間に既存のHTTPセッション(既存通信路)が有るかを判断する(ステップS311)。この判断は、図5の第2判断部312の判断と同様である。HTTPセッションが無い(ステップS311でNO)と判断した場合、制御部310は、新規HTTPセッションを確立し、アプリケーションサーバ400とMFP200との間の通信のデータを中継する(ステップS312)。一方、HTTPセッションが有る(ステップS311でYES)と判断した場合、制御部310は、セッション確立通知をアプリケーションサーバ400に送信する(ステップS313)。
アプリケーションサーバ400において、制御部は、通信サーバ300からセッション確立通知を受信したかを判断する(ステップS412)。受信した(ステップS412でYES)と判断した場合、制御部は、データの送信を開始する(ステップS413)。
通信サーバ300において、制御部310は、アプリケーションサーバ400から所定量のデータを受信したかを判断する(ステップS314)。受信した(ステップS314でYES)と判断した場合、制御部310は、受信したデータを優先度が高の状態で中継装置100に送信する(ステップS315)。このときに、アプリケーションサーバ400への肯定応答(Ack)はまだ送信しない。
中継装置100において、制御部110は、通信サーバ300から受信したデータに基づいて、アプリケーションサーバ400とMFP200との間で通信されるデータが大容量と推定されるかを判断する(ステップS111)。この判断は、図5の第3判断部114の判断と同様である。
通信されるデータが大容量である(ステップS111でYES)と判断した場合、制御部110は、アプリケーションサーバ400とMFP200との通信に用いられるリソースに余裕があるかを判断する(ステップS112)。この判断は、図5の第4判断部115の判断と同様である。
通信されるデータが大容量でない(ステップS111でNO)と判断した場合、または、リソースに余裕がない(ステップS112でNO)と判断した場合、制御部110は、既存のHTTPセッションを用いてアプリケーションサーバ400とMFP200との通信を継続するための処理を実行する(ステップS113)。
通信されるデータが大容量であり(ステップS111でYES)、かつ、リソースに余裕がある(ステップS112でYES)と判断した場合、制御部110は、新規のトンネルを識別するためのトンネルIDを含む新規セッションへの切替通知を通信サーバ300に送信する(ステップS114)。中継装置100からの切替通知に応じて、通信サーバ300において、制御部310は、アプリケーションサーバ400からMFP200へのストリームを切断する(ステップS316)。
次に、中継装置100において、制御部110は、新規HTTPセッション(トンネル)を確立する(ステップS115)。これに応じて、通信サーバ300において、制御部310は、肯定応答(Ack)をアプリケーションサーバ400に送信する(ステップS317)。アプリケーションサーバ400において、制御部は、通信サーバ300からAckを受信したかを判断する(ステップS414)。受信した(ステップS414でYES)と判断した場合、制御部は、MFP200へのデータの送信を再開する(ステップS415)。
通信サーバ300および中継装置100において、制御部310,110は、アプリケーションサーバ400からのデータを新規トンネルで中継する(ステップS318,ステップS116)。MFP200において、制御部210は、アプリケーションサーバ400から通信サーバ300および中継装置100で中継されたデータを受信する(ステップS211)。
図7は、この実施の形態におけるサービス提供システム1で実行される第2の処理の流れを示すフローチャートである。図7を参照して、この処理は、デバイス(ここではMFP200)からの接続依頼をトリガとして実行される処理である。MFP200において、制御部は、ジョブの発生に伴ないアプリケーションサーバ400への接続依頼を中継装置100に送信する(ステップS221)。
中継装置100において、制御部110は、接続依頼の受信に応じて、アプリケーションサーバ400とMFP200との間に既存のHTTPセッション(既存通信路)が有るかを判断する(ステップS121)。この判断は、図5の第2判断部112の判断と同様である。HTTPセッションが無い(ステップS121でNO)と判断した場合、制御部110は、実行する処理をステップS126に進める。一方、HTTPセッションが有る(ステップS121でYES)と判断した場合、制御部110は、セッション確立通知をMFP200に送信する(ステップS122)。
MFP200において、制御部210は、中継装置100からセッション確立通知を受信したかを判断する(ステップS222)。受信した(ステップS222でYES)と判断した場合、制御部210は、データの送信を開始する(ステップS223)。
中継装置100において、制御部110は、MFP200から所定量のデータを受信したかを判断する(ステップS123)。受信した(ステップS123でYES)と判断した場合、制御部110は、MFP200から受信したデータに基づいて、MFP200とアプリケーションサーバ400との間で通信されるデータが大容量と推定されるかを判断する(ステップS124)。この判断は、図5の第3判断部114の判断と同様である。
通信されるデータが大容量である(ステップS124でYES)と判断した場合、制御部110は、MFP200とアプリケーションサーバ400との通信に用いられるリソースに余裕があるかを判断する(ステップS125)。この判断は、図5の第4判断部115の判断と同様である。
通信されるデータが大容量でない(ステップS124でNO)と判断した場合、または、リソースに余裕がない(ステップS125でNO)と判断した場合、制御部110は、既存のHTTPセッションを用いる。
通信されるデータが大容量であり(ステップS124でYES)、かつ、リソースに余裕がある(ステップS125でYES)と判断した場合、制御部110は、新規HTTPセッション(トンネル)を確立する(ステップS126)。
中継装置100および通信サーバ300において、制御部110,310は、新規HTTPセッションを確立した場合は新規HTTPセッションで、新規HTTPセッションを確立していない場合は既存HTTPセッションで、MFP200のデータを中継する(ステップS127,ステップS321)。アプリケーションサーバ400において、制御部は、MFP200から中継装置100および通信サーバ300で中継されたデータを受信する(ステップS421)。
[効果]
(1) 以上説明したように、この実施の形態におけるサービス提供システム1は、図1で説明したように、アプリケーションサーバ400と少なくとも1つのMFP200との間で通信を行ない、アプリケーションサーバ400がMFP200に対して所定のサービスを提供するシステムである。サービス提供システム1は、アプリケーションサーバ400と、MFP200と、アプリケーションサーバ400がMFP200と通信を行なうための処理を実行する通信サーバ300と、MFP200と同じプライベートネットワークに接続され、MFP200がアプリケーションサーバ400と通信を行なうための処理を実行する中継装置100とを含む。
図5〜図7で説明したように、通信サーバ300および中継装置100の少なくとも一方は、物理的通信路にデータを送受信するための論理的な通信路を確立し、アプリケーションサーバ400とMFP200との間で通信が行なわれる特定ジョブが発生したかを判断し、当該アプリケーションサーバ400と当該MFP200との間でデータを通信するための論理的な既存通信路が確立されているかを判断し、特定ジョブに伴なう通信データ量が多いと判断するための第1所定条件を満たすかを判断し、確立されていると判断された既存通信路に加えて当該アプリケーションサーバ400と当該MFP200との間でデータを通信するための論理的な新規通信路を物理的通信路に確立することが可能な第2所定条件を満たすかを判断する。
図5〜図7で説明したように、通信サーバ300および中継装置100の少なくとも一方は、特定ジョブが発生したと判断され、かつ、既存通信路が確立されていると判断され、かつ、第1所定条件を満たすと判断され、かつ、第2所定条件を満たすと判断された場合に、新規通信路を確立する。
これにより、アプリケーションサーバ400とMFP200との間で通信が行なわれる特定ジョブが発生し、特定ジョブに伴なう通信データ量が多く、アプリケーションサーバ400とMFP200との間で既存通信路が確立されており、新規通信路を物理的通信路に確率可能であれば、新規通信路が確立され、通信データ量が多い通信が新規通信路で行なわれる。その結果、論理的な通信路が確立される物理的な通信路に制限がある場合でも、通信データ量が多いデータを効率的に送信することができる。
また、アプリケーションサーバ400およびMFP200には、特に変更を加えることなく、上述した効果を得ることができる。また、アプリケーションサーバ400とMFP200との間に1対1で通信路を確立するため、転送間違えなどの通信の信頼性の低減を防ぐことができる。
(2) 図5で説明したように、通信サーバ300および中継装置100の少なくとも一方は、通信データ量を特定可能なデータに基づいて第1所定条件を満たすか否かを判断する。
通信データ量を特定可能なデータでない場合は通信データ量を判断するためにデータを解析したり通信データ量を推定したりする処理が必要になる。しかし、これによれば、そのような処理が不要になるので、通信データ量に対する判断を効率良く行なうことができる。
(3) 通信サーバ300および中継装置100の少なくとも一方は、MFP200が複数ある場合、MFP200ごとに通信路を確立する。
従来、中継装置が複数のMFP200に通信を振分けていたため、中継装置に負荷が掛かると、誤ったMFP200に通信を振分けてしまうおそれがあった。しかし、これによれば、MFP200ごとに通信路を確立するので、中継装置に負荷が掛かっても、誤ったMFP200に通信を振分けてしまうことを防止することができる。
(4) 図5で説明したように、通信サーバ300または中継装置100は、さらに、特定ジョブに伴なう通信の終了時に、当該通信のための通信路の他に同一のMFP200のための通信路が存在するかを判断し、存在すると判断された場合、特定ジョブに伴なう通信のための通信路を解放する。
これにより、通信路の解放により、その通信路のためのリソースが解放される。その結果、不要な通信路を維持しておくことによる無駄なリソースの消費を抑えることができる。
[変形例]
(1) 前述した実施の形態においては、画像処理装置の具体例が、画像形成装置の1つであるMFP200であることとしたが、これに限定されず、複写機やプリンタなどの画像形成装置であってもよいし、スキャナであってもよいし、ファクシミリであってもよい。
(2) 前述した実施の形態においては、MFP200などの特定装置にサービスを提供するのがアプリケーションサーバ400であることとした。しかし、これに限定されず、特定装置にサービスを提供するのが、他のサーバであってもよく、たとえば、データを保存するためのストレージとしてのサーバであってもよい。
(3) 前述した実施の形態においては、中継装置100およびMFP200は分離した構成であることとした。しかし、これに限定されず、中継装置100は、MFP200に内蔵されるように構成されてもよい。
(4) 前述した実施の形態においては、通信サーバ300は、単体のサーバであることとした。しかし、これに限定されず、通信サーバ300は、たとえば、通信モジュールのような形でアプリケーションサーバ400などの他のサーバに内蔵されるように構成されてもよい。
(5) 前述した実施の形態においては、第3判断部114、第4判断部115、通信路確立部116、第5判断部118および通信路解放部119は、中継装置100に備えられるようにした。しかし、これに限定されず、これらの構成が、それぞれ、中継装置100に備えられるとともに通信サーバ300に備えられるようにしてもよいし、中継装置100には備えられずに通信サーバ300に備えられるようにしてもよい。
(6) 前述した実施の形態においては、サービス提供システム1として発明を説明した。しかし、これに限定されず、サービス提供システム1で実行されるサービス提供方法として発明を捉えることができる。また、サービス提供システム1に含まれる通信サーバ300または中継装置100の装置として発明を捉えることができる。また、サービス提供システム1に含まれる通信サーバ300または中継装置100で図5から図7で説明した処理を実行する方法またはプログラムとして発明を捉えることができる。
また、当該プログラムを記録したコンピュータ読取可能な記録媒体として発明を捉えることができる。この記録媒体は、磁気テープ、フレキシブルディスク,ハードディスクなどの磁気ディスク、CD−ROM,CD−R,CD−RW,DVD−ROM,DVD−R,DVD−RW,DVD−RAM,DVD+R,DVD+RWなどの光ディスク、MOなどの光磁気ディスク、メモリカード、または、USBメモリなどの固定的にプログラムを担持する媒体であってもよいし、ASP(Application Service Provider)などのサーバから通信ネットワークを介してプログラムをダウンロードするように流動的にプログラムを担持する媒体であってもよい。
(7) 実施の形態および各変形例において説明された技術は、可能な限り、単独でも、組合わせても、実施することが意図される。
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。