以下、本発明の実施形態について添付図面を参照して説明する。
最初に、本実施形態に係る情報処理システム1の構成について図1を用いて説明する。図1は、本実施形態に係る情報処理システム1の概略的な構成を示すブロック図である。
図1に示すように、この情報処理システム1は、複数の画像形成装置2(図1の例では、3台)を備え、各画像形成装置2がLAN(Local Area Network)などのネットワークNを介して相互に通信可能に接続されている。
画像形成装置2は、記録紙などの記録媒体に画像を形成することが可能な装置であり、例えば、コピー機能、スキャナ機能、プリンタ機能およびファクシミリ(FAX)機能のうち少なくとも一つ以上の機能を実装する複合機(MFP:Multi Function Peripherals)などで実現される。
そして、この情報処理システム1においては、一の画像形成装置(例えば、画像形成装置(A))2において他の画像形成装置(例えば、画像形成装置(C))2の機能を利用する(機能を共有する)ことが可能となっている。
次に、画像形成装置2のハードウェア構成について図2を用いて説明する。図2は、画像形成装置2のハードウェア構成を示すブロック図である。
図2に示すように、画像形成装置2は、例えば、制御部21と、メモリ22と、ハードディスク装置(HDD:Hard Disk Drive)23と、操作パネル24と、画像入力装置25と、画像出力装置26と、外部通信装置27とを備えている。
制御部21は、画像形成装置2全体の制御、即ち、描画処理や、通信処理や、操作パネル24に対する操作入力及び表示処理などの各種処理を制御するものである。そして、この制御部21は、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)などを有して構成される。
メモリ22は、第1の記憶領域を提供する記憶装置であり、主に画像を展開するのに用いられる。HDD23は、第2の記憶領域を提供する記憶装置であり、主に画像を格納保持するのに用いられる。
操作パネル24は、画像形成装置2の各種機能を利用するための操作方法を表示するとともに、ユーザからの操作入力を受け付けるためのユーザインタフェースである。
画像入力装置25は、画像の入力を行う装置であり、例えば、スキャナとして構成されて、原稿台にセットされた原稿の画像を読み取って入力する。
画像出力装置26は、画像の出力を行う装置であり、画像入力装置25で入力された画像などによって生成された画像データ(印刷データ)に基づいて、画像を記録紙などの記録媒体に形成する。
外部通信装置27は、外部との通信を行う装置であり、IEEE1394や、USBや、LANなどの通信機能を有する。
次に、画像形成装置2が有するアプリケーションの一構成例について図3を用いて説明する。図3は、画像形成装置2が有するアプリケーションの一構成例を説明するためのブロック図である。
図3(a)に示す例は、図1の画像形成装置(A)2が有するアプリケーションの一構成例を示しており、画像形成装置(A)2は、例えば、連携アプリ201と、リソース管理アプリ202と、スキャナアプリ203と、コピーアプリ204とを有している。
ここで、連携アプリ201およびリソース管理アプリ202は、複数の画像形成装置2間で連携した処理を行うためのソフトウェアである。また、スキャナアプリ203は、スキャナ用のソフトウェアであり、スキャナなどを用いて画像を入力する処理を実行するためのソフトウェアである。コピーアプリ204は、コピー用のソフトウェアであり、入力された画像などに基づいて記録媒体に画像を形成する処理を実行するためのソフトウェアである。
図3(b)に示す例は、図1の画像形成装置(C)2が有するアプリケーションの一構成例を示しており、画像形成装置(C)2は、例えば、図3(a)に示した画像形成装置(A)2の有するアプリ(連携アプリ201、リソース管理アプリ202、スキャナアプリ203およびコピーアプリ204)に追加して、ファクシミリ(FAX)アプリ205と、プリンタアプリ206と、SDKアプリ207とを有している。
ここで、ファクシミリ(FAX)アプリ205は、ファクシミリ用のソフトウェアであり、入力された画像などに基づいてFAX送受信処理を実行するためのソフトウェアである。プリンタアプリ206は、入力された画像などに基づいて記録媒体に画像を形成する処理を実行するためのソフトウェアである。SDKアプリ207は、ソフトウェア開発キット(SDK:Software Development Kit)を使用して開発されたアプリケーションであり、標準的に画像形成装置2に搭載されているアプリケーション(例えば、符号203〜207で示すアプリケーション)とは別に、適宜インストールまたはアンインストールできるアプリケーションである。
次に、画像形成装置2の特徴的な機能構成について図4を用いて説明する。図4は、画像形成装置2の特徴的な機能構成を説明するためのブロック図である。
図4に示すように、画像形成装置2の制御部21(CPU)は、ROMやHDD23などに格納される所定の制御プログラムをRAMなどに展開して実行することにより、後述のフローチャートに示す処理手順を実行する、初期化処理部20aと、装置連携処理部20bとして機能する。
初期化処理部20aは、後述の初期化処理(図5のステップS1)を実行するものであり、具体的には、後述の装置連携処理部20bの処理で使用する各種の初期設定を行うものである。
装置連携処理部20bは、後述の装置連携処理(図5のステップS2)を実行するものであり、複数の画像形成装置2間で機能を共有するための装置連携処理を実行するものである。より具体的には、この装置連携処理部20bは、他の画像形成装置(要求先の画像形成装置)2が有する機能の利用(連携処理)を要求する要求元(連携元)の画像形成装置2に係る処理を実行するとともに、要求先(連携先)の画像形成装置2に係る処理(連携処理)を実行するものである。
次に、情報処理システム1における処理動作について図5〜図26を用いて説明する。
図5は、要求元(連携元)の画像形成装置(以下、単に「連携元」という。)2と要求先(連携先)の画像形成装置(以下、単に「連携先」という。)2との間で行われる処理動作の手順を示すフローチャートである。
図5に示すように、連携元2と連携先2とでは、まず、両者の初期化処理部20aが、装置連携動作に必要な各種の初期設定を行う初期化処理(図6参照)を実行する(ステップS1)。その後、連携元2と連携先2とでは、両者の装置連携処理部20bが、上記ステップS1の初期化処理で設定された各種の初期設定に基づいて装置連携動作(図20参照)を実行する(ステップS2)。
次に、上記図5のステップS1における初期化処理について説明する。
図6は、図5に示すステップS1の初期化処理を説明するためのフローチャートであり、この場合、連携元2と連携先2の両者の処理手順を含んだものとなっている。
図6に示すように、ステップS1の初期化処理では、連携元2は、装置連携要求時の初期設定処理(図7参照)を実行する(ステップS11)。そして、連携元2と連携先2とは、装置連携機能を持つ装置と通信を行う初期通信処理(図14参照)を実行する(ステップS12)。そして、連携先2は、装置連携要求受信時の設定処理(図15参照)を実行する(ステップS13)。そして、連携元2は、リソース確保時の表記切替処理(図18参照)を実行する(ステップS14)。
次に、上記図6のステップS11における装置連携要求時の初期設定処理について説明する。
図7は、図6に示すステップS11の装置連携要求時の初期設定処理を説明するためのフローチャートである。図7に示すように、ステップS11の装置連携要求時の初期設定処理では、まず、リソース量設定の初期設定処理(図8参照)を実行する(ステップS111)。続いて、リソース残量通知設定の初期設定処理(図12参照)を実行する(ステップS112)。
次に、上記図7のステップS111のリソース量設定の初期設定処理について説明する。
図8は、図7に示すステップS111のリソース量設定の初期設定処理の詳細を説明するためのフローチャートである。
図8に示すように、ステップS111のリソース量設定の初期設定処理では、まず、操作パネル24を介して、連携先2に対して利用要求対象となる要求機能で使用するリソースの確保を要求する/しないを、装置連携処理の要求時にユーザが選択する「ユーザ選択設定」のオン/オフを指定するユーザ操作の入力(ステップS111a)や、上記装置連携処理の要求時にリソースの確保を要求する/しないを、装置連携処理の要求時に自動設定する「自動設定」のオン/オフを指定するユーザ操作の入力(ステップS111b)を待機している。
そして、ステップS111aで「ユーザ選択設定」のオンを指定するユーザ操作の入力を判定した場合(ステップS111a:Yes)、装置連携処理の要求時における「ユーザ選択設定」がオンである設定を行う(ステップS111c)。即ち、ステップS111cにおいて、「ユーザ選択設定」がオン設定されていると、後述の図21のステップS213の処理において、操作パネル24にリソースを確保するかしないかをユーザに問いかけるメッセージが表示されるようになる。
また、ステップS111bで「自動設定」のオンを指定するユーザ操作の入力を判定した場合(ステップS111b:Yes)、装置連携処理の要求時における「自動設定」がオンである設定を行う(ステップS111d)。即ち、ステップS111dにおいて、「自動設定」がオン設定されていると、後述の図21のステップS215の処理において、リソース確保要求を行う旨の設定を行うようになる。
続いて、上記ステップS111cおよびステップS111dの処理後、操作パネル24を介して、装置連携要求時にリソース量を設定しないというユーザ操作が行われた場合(ステップS111e:No)、続いて、装置連携要求時には常に要求仕様最大のリソース量を確保する設定を行う(ステップS111f)。
一方、上記ステップS111eにおいて、操作パネル24を介して、装置連携要求時にリソース量を設定するというユーザ操作が行われた場合(ステップS111e:Yes)、続いて、操作パネル24を介して、ユーザによるリソース量の確保方法の指定操作の入力を待機する。
上記ステップS111gにおいて、ユーザにより装置連携要求時に計算された容量でリソース量を確保する旨の指定(計算設定の指定)が行われた場合、装置連携要求時に計算された容量でリソース量を確保するように設定する(ステップS111h)。なお、図9は、操作パネル24に表示される表示画面の一構成例を示す図であり、この場合、ユーザがリソース残量を見てから実行可否を決める設定を行うための表示画面S1の一構成例を示している。
一方、上記ステップS111gにおいて、ユーザによりユーザが指定した容量分のリソース量を確保する旨の指定(ユーザ設定の指定)が行われた場合、ユーザが指定した容量分のリソース量を確保するように設定する(ステップS111i)。なお、図10は、操作パネル24に表示される表示画面の一構成例を示す図であり、この場合、ユーザが確保するリソース量を設定するための表示画面S2の一構成例を示している。
また、一方ステップS111gにおいて、ユーザによりデフォルト設定された容量でリソース量を確保する旨の指定(デフォルト設定の指定)が行われた場合、デフォルト設定された容量分のリソース量を確保するように設定する(ステップS111j)。
続いて、上記ステップS111f、ステップS111hおよびステップS111iの処理後、操作パネル24を介してユーザによりデフォルト値の設定を行う/行わないの指定入力を待機する(ステップS111k)。ここで、デフォルト値の設定を行わないの指定入力があった場合(ステップS111k:No)、ここでの処理を終了する。
他方、ステップS111kにおいて、デフォルト値の設定を行うの指定入力があった場合(ステップS111k:Yes)、または、上記ステップS111jの処理後、各種装置連携のデフォルト値を設定する(ステップS111l)。図11は、操作パネル24に表示される表示画面の一構成例を示す図であり、この場合、ユーザが各装置連携処理(例えば、Fax装置連携処理、コピー装置連携処理、SDK装置連携処理など)で確保するリソース容量のデフォルト値を設定するための表示画面S3の一構成例を示している。
続いて、操作パネル24を介して、ユーザにより連携先2でデフォルト値の常時確保を行う/行わない(空いている時にデフォルト値のリソース量を確保する)の指定入力を待機する(ステップS111m)。ここで、常時確保を行わない指定入力があった場合(ステップS111m:確保しない)、空いている時に確保する設定をオンにし、その後、ここでの処理を終了する。一方、常時確保を行う指定入力があった場合(ステップS111m:確保する)、続いて、常時確保する設定をオンにし(ステップS111n)、その後、ここでの処理を終了する。
次に、上記図7のステップS112のリソース残量通知設定の初期設定処理について説明する。
図12は、図7に示すステップS112のリソース残量通知設定の初期設定処理の詳細を説明するためのフローチャートである。
図12に示すように、ステップS112のリソース残量通知設定の初期設定処理では、まず、操作パネル24を介してユーザにより、装置連携要求時に連携先2からリソース残量通知を受付ける設定をオンする/オフするの選択操作の入力を待機する(ステップS112a)。
ここで、装置連携要求時に連携先2からリソース残量通知を受付ける設定をオンする選択操作があった場合(ステップS112a:Yes)、装置連携要求時に連携先2からリソース残量通知を受付ける設定をオンにし、続いて、操作パネル24を介してユーザにより、リソース残量を見てから実行可否を決める設定をオンする/オフするの選択操作の入力を待機する(ステップS112b)。なお、図13は、操作パネル24に表示される表示画面の一構成例を示す図であり、この場合、ユーザがリソース残量を見てから実行可否を決める設定を行う表示画面S4の一構成例を示している。
ここで、リソース残量を見てから実行可否を決める設定をオンする選択操作があった場合(ステップS112b:Yes)、連携先2のリソース残量を見てから実行可否を決定する設定をオンする(ステップS112c)。
続いて、ユーザが確保するリソースの容量(確保量)の設定(サイズ設定)を行えるようになっているか否かを判定し(ステップS112d)、ここで、ユーザが確保量の設定を行えるようになっている場合(ステップS112d:Yes)、続いて、通知されるリソース残量を上限値として、ユーザが確保量を変更できるように設定し(ステップS112e)、ここでの処理を終了する。
一方、上記ステップS112aにおいて、装置連携要求時に連携先2からリソース残量通知を受付ける設定をオフする選択操作があった場合(ステップS112a:No)、または、上記ステップS112dにおいて、ユーザが確保量の設定を行えないようになっている場合(ステップS112d:No)、何の処理も実行せずにここでの処理を終了する。
次に、上記図6のステップS12の初期通信処理について説明する。
図14は、図6に示すステップS12の初期通信処理の詳細を説明するためのフローチャートであり、この場合、連携元2と連携先2では、共通の初期通信処理を行うようになっている。
図14に示すように、ステップS12の初期通信処理では、まず、連携元2および連携先2では、ネットワーク上で装置連携機能を持つ装置を検索する(ステップS121)。ここで、連携機能を持つ装置が検索された場合(ステップS122:Yes)、続いて、連携元2および連携先2では、連携機能のデフォルト設定情報を送受信する(ステップS123)。
次に、上記図6のステップS13の装置連携受信時の設定処理について説明する。
図15は、図6に示すステップS13の装置連携受信時の設定処理を説明するためのフローチャートである。
図15に示すように、ステップS13の装置連携受信時の設定処理では、まず、リソース残量の通知有無の設定を行う処理(図16参照)を実行する(ステップS131)。続いて、装置連携のデフォルト設定について、常時確保を行うかを設定するデフォルト確保設定処理(図17参照)を実行する(ステップS132)。
次に、上記図15のステップS131のリソース残量の通知有無の設定処理について説明する。
図16は、図15に示すステップS131のリソース残量の通知有無の設定処理では、まず、連携元2にリソース残量通知を行うかを選択する(ステップS131a)。
ここで、連携元2にリソース残量通知を行う選択があった場合(ステップS131a:Yes)、続いて、リソース残量を連携元2に通知を行う設定をオンにし(ステップS131b)、ここでの処理を終了する。
一方、ステップS131aにおいて、連携元2にリソース残量通知を行わない選択があった場合(ステップS131a:No)、何も処理せずにここでの処理を終了する。
次に、上記図15のステップS132のデフォルト確保設定処理について説明する。
図17は、図15に示すステップS132のデフォルト確保設定処理の詳細を説明するためのフローチャートである。
図17に示すように、図15に示すステップS132のデフォルト確保設定処理では、まず、連携元2から初期通信でデフォルト設定情報を受信しているか否かを判定する(ステップS132a)。
ここで、連携元2からデフォルト設定情報を受信していると判定した場合(ステップS132a:Yes)、続いて、受信したデフォルト設定情報に基づいて、設定されている各連携のデフォルト値は、常時確保設定になっているか否かを判定する(ステップS132b)。
ここで、常時確保設定になっていると判定した場合(ステップS132b:Yes)、続いて、指定されたデフォルト値に対応した容量分のリソースを常時確保する設定をオンにし(ステップS132c)、ここでの処理を終了する。
一方、上記ステップS132bにおいて、常時確保設定になっていないと判定した場合(ステップS132b:No)、続いて、指定されたデフォルト値に空きがある場合に常時確保する設定をオンにする選択があるか否かを判定する(ステップS132d)。
ここで、指定されたデフォルト値に空きがある場合に常時確保する設定をオンにする選択があった場合(ステップS132d:Yes)、続いて、指定されたデフォルト値に空きがある場合に常時確保する設定をオンにし(ステップS132e)、ここでの処理を終了する。
一方、上記ステップS132aにおいて、連携元2からデフォルト設定情報を受信していないと判定した場合(ステップS132a:No)や、上記ステップS132dにおいて、指定されたデフォルト値に空きがある場合に常時確保する設定をオンにする選択がなかった場合(ステップS132d:No)、即ち、容量指定がない場合は、装置連携の最大仕様のリソース量の確保を行う設定をオンにし(ステップS96)、ここでの処理を終了する。
次に、上記図6のステップS14の表記切替処理について説明する。
図18は、図6のステップS14の表記切替処理の詳細を説明するためのフローチャートである。
図18に示すように、ステップS14の表記切替処理では、まず、リソース量の表記ではなく、性能表記への切り替えを行う選択があるか否かを判定する(ステップS141)。ここで、性能表記への切り替えを行う選択があった場合(ステップS141:Yes)、表記方法を性能表記へ切り替える設定を行う(ステップS142)。なお、このステップS142で、性能表記へ切り替える設定が行われると、図19に示すような表示画面S5が操作パネル24に表示される。図19は、操作パネル24に表示される表示画面の一構成例を示す図であり、この場合、図13の表示画面S4に示すようなリソース量の表記を行うものではなく、性能表記(例えば、「50枚のFax送信が可能です。」)を行う表示画面S5の一構成例を示している。
次に、上記図5のステップS2の装置連携動作処理について説明する。
図20は、図5のステップS2の装置連携動作処理を説明するためのフローチャートである。
図20に示すように、ステップS2の装置連携動作処理では、連携元2においては、まず、装置連携要求送信処理(図21参照)を実行し(ステップS21)、続いて、リソース確保要求送信処理(図24参照)を実行し(ステップS22)、続いて、実行要求送信処理(図26参照)を実行する(ステップS23)。
一方、連携先2においては、まず、装置連携要求受信処理(図21参照)を実行し(ステップS24)、続いて、リソース確保要求受信処理(図24参照)を実行し(ステップS25)、続いて、実行要求受信処理(図26参照)を実行する(ステップS26)。
次に、上記図20のステップS21およびS24の装置連携要求送信処理および装置連携要求受信処理について説明する。
図21は、図20のステップS21およびS24の装置連携要求送信処理および装置連携要求受信処理の詳細を説明するためのフローチャートである。
図21に示すように、ステップS21およびS24の装置連携要求送信処理および装置連携要求受信処理では、まず、連携元2では、ユーザにより装置連携処理の要求操作が行われると(ステップS211:Yes)、装置連携処理の要求時における「ユーザ選択設定」がオン設定されているか否かを判定する(ステップS212)。
この判定の結果、装置連携処理の要求時における「ユーザ選択設定」がオン設定されていると判定した場合(ステップS212:Yes)、操作パネル24にリソースを確保するかしないかをユーザに問いかけるメッセージを表示し、ユーザによるリソースの確保をする/しないの選択操作を待機する(ステップS213)。
そして、上記ステップS213の待機において、ユーザによるリソースの確保をするの選択操作を受け付けた場合(ステップS213:Yes)、続いて、連携先2にリソース確保の要求を行う旨の設定を行う(ステップS215)。
その後、連携先2に対して、装置連携処理の実行が可能であるか否かを問い合わせる問合せ信号を送信し、連携先2からの問合せ結果、即ち、装置連携処理の実行の可否を示す判定結果の受信を待機する(ステップS216)。上記問合せ信号には、連携元2の識別情報や、利用要求対象の要求機能(例えば、FAX機能など)を示す情報などが含まれている。
ここで、上記ステップS212の判定の結果、装置連携処理の要求時における「ユーザ選択設定」がオン設定されていない、即ち、オフ設定されていると判定した場合には(ステップS212:No)、装置連携処理の要求時における「自動設定」がオン設定されているか否かを判定する(ステップS214)。
この判定の結果、装置連携処理の要求時における「自動設定」がオン設定されていると判定した場合(ステップS214:Yes)、上記ステップS215の処理に移行して、リソース確保の要求を行う旨の設定を行う。そして、ステップS214の判定の結果、装置連携処理の要求時における「自動設定」がオン設定されていない、即ち、オフ設定されていると判定した場合(ステップS214:No)には、上記ステップS216の処理に移行して、上記問合せ信号を送信する。
その後、連携先2から上記判定結果を受信すると(ステップS217)、その受信した判定結果に基づき装置連携処理の実行が可能であるか否かを判定する(ステップS218)。
そして、上記ステップS218の判定の結果、装置連携処理の実行が不可能であると判定した場合には(ステップS218:No)、処理をステップS211に戻す。
一方、上記ステップS218の判定の結果、装置連携処理の実行が可能であると判定した場合には(ステップS218:Yes)、連携先2から装置連携処理に使用するアプリ(即ち、ユーザが利用を要求する要求機能を実行するためのアプリ)を含むアプリデータの受信を待機して、連携先2から上記アプリデータを受信する(ステップS219)。
一方、連携先2においては、連携元2から上記問合せ信号を受信する連携先動作処理(図22参照)を実行し(ステップS241)、装置連携処理の実行可否を判定する連携可否判定処理(図23参照)を実行する(ステップS242)。
次に、上記図21のステップS241の連携先動作処理について説明する。
図22は、図21のステップS241の連携先動作処理の詳細を説明するためのフローチャートである。
図22に示すように、ステップS241の連携先動作処理では、連携先2においては、初期設定で行ったデフォルトのリソース容量を常時確保するか否かを判定する(ステップS241a)。
この判定の結果、デフォルトのリソース容量を常時確保すると判定された場合(ステップS241a:Yes)、続いて、デフォルト値分のリソースの確保(例えば、デフォルト設定された容量分のメモリの確保)を行う(ステップS241b)。
一方、上記ステップS241aにおいて、デフォルトのリソース容量を常時確保しないと判定された場合(ステップS241a:No)、続いて、リソースが空いているときにデフォルト値分のリソースの確保を行うか否かを判定する(ステップS241c)。
この判定の結果、リソースが空いているときにデフォルト値分のリソースの確保を行うと判定された場合(ステップS241c:Yes)、続いて、連携先2は、連携ではなく、単独動作中であるか否かを判定する(ステップS241d)。
この判定の結果、単独動作中でないと判定された場合(ステップS241d:No)、上記ステップS241bに移行する。一方、上記ステップS241dの判定の結果、単独動作中であると判定された場合(ステップS241d:Yes)、続いて、リソースを使用中においてデフォルト値分のリソースの確保を試みる(ステップS241e)。そして、リソースの確保が行えたか否かを判定する(ステップS241f)。
そして、上記ステップS241bの処理後、または、上記ステップS241fの判定により、リソースの確保が行えたと判定された場合(ステップS241f:Yes)、続いて、連携可能である旨の設定を行う(ステップS241g)。
上記ステップS241gの処理後、または、上記ステップS241cの判定により、リソースが空いているときにデフォルト値分のリソースの確保を行わないと判定された場合(ステップS241c:No)や、上記ステップS241fの判定により、リソースの確保が行えなかったと判定された場合(ステップS241f:No)、続いて、連携元2からの装置連携処理の実行の可否を問い合わせる問合せ信号の受信を待機して、問合せ信号を受信する(ステップS241h)。
問合せ信号を受信すると、続いて、連携可能の設定が済んでいるか否かを判定する(ステップS241i)。ここで、連携可能の設定が済んでいると判定した場合(ステップS241i:Yes)、ここでの処理を終了する。他方、上記ステップS241iの判定により、連携可能の設定が済んでいないと判定した場合(ステップS241i:No)、続いて、連携可否を調査する(ステップS241j)。なお、このステップS241jの処理においては、リソースが使用中か否かをチェックする。
次に、上記図21のステップS242の連携可否判定処理について説明する。
図23は、図21のステップS242の連携可否判定処理の詳細を説明するためのフローチャートである。
図23に示すように、ステップS242の連携可否判定処理では、連携先2においては、リソース確保済みであるか否かを判定する(ステップS242a)。そして、この判定の結果、リソース確保済みでないと判定された場合(ステップS242a:No)、続いて、連携可能か否かを判定する(ステップS242b)。
上記ステップS242bの判定において、連携可能であると判定された場合(ステップS242b:Yes)、続いて、連携可能の通知を設定する(ステップS242c)。その後、リソース残量通知設定がオンであるか否かを判定する(ステップS242d)。
この判定の結果、リソース残量通知設定がオンであると判定された場合(ステップS242d:Yes)、続いて、現在のリソース残量、即ち、連携先2で実行中処理で使用されるリソース以外の残りのリソース量を算出する(ステップS242e)。続いて、算出されたリソース残量と連携可能を示す連携可否結果を連携元2に送信する(ステップS242f)。これにより、連携元2が、連携可否結果を受信する(ステップS217)。
続いて、連携が可能であるので、連携元2に装置連携処理で使用するアプリデータを送信し(ステップS242g)、ここでの処理を終了する。これにより、連携元2が、装置連携処理で使用するアプリデータを受信する(ステップS217)。
一方、上記ステップS242aの判定により、リソース確保済みであると判定された場合(ステップS242a:Yes)、続いて、連携可能を示す連携可否結果を連携元2に送信する(ステップS242h)。これにより、連携元2が、連携可否結果を受信する(ステップS217)。なお、上記ステップS242hの処理後、処理を上記ステップS242gに移行する。
また、一方、上記ステップS242bの判定により、連携可能でないと判定された場合(ステップS242b:No)、続いて、連携が不可であることを示す連携可否結果を連携元2に送信する(ステップS242i)。これにより、連携元2が、連携可否結果を受信する(ステップS217)。そして、上記ステップS242iの処理後、ここでの処理を終了する。
次に、上記図20のステップS22およびS25のリソース確保要求送信処理およびリソース確保要求受信処理について説明する。
図24は、図20のステップS22およびS25のリソース確保要求送信処理およびリソース確保要求受信処理の詳細を説明するためのフローチャートである。
図24に示すように、ステップS22およびS25のリソース確保要求送信処理およびリソース確保要求受信処理では、まず、連携元2において、リソース確保要求の設定の有無を判定する(ステップS22a)。この判定の結果、リソース確保要求の設定が有ると判定された場合(ステップS22a:Yes)、続いて、リソース容量の設定の有無を判定する(ステップS22b)。この判定の結果、リソース容量の設定が有ると判定された場合(ステップS22b:Yes)、続いて、容量設定処理(図25参照)を実行する(ステップS22c)。
続いて、リソース確保容量を要求内に設定する(ステップS22d)。その後、リソース確保要求を連携先2に送信し(ステップS22e)、その後、連携先2から送信されるリソース確保結果の受信を待機する。
そして、連携先2からリソース確保結果を受信すると(ステップS22f)、続いて、該受信したリソース確保結果に基づき連携先2において要求機能で使用するリソースが確保されたか否かを判定する(ステップS22g)。ここで、リソースが確保された、即ち、リソースの確保に成功したと判定した場合には(ステップS22g:Yes)、続いて、当該要求機能に処理させるデータ(例えば、FAX送信用のデータ)を連携先2に送信し(ステップS22h)、連携先2からの上記データに係る処理の実行結果の受信を待機する。一方、リソースが確保されなかった、即ち、リソースの確保に失敗したと判定した場合には(ステップS22g:No)、ここでの処理を終了する。
一方、連携先2においては、まず、連携元2からのリソース確保要求を受信すると(ステップS25a)、続いて、デフォルト設定でリソースが既に確保されているか否かを判定する(ステップS25b)。この判定の結果、デフォルト設定でリソースが既に確保されていると判定した場合(ステップS25b:Yes)、続いて、リソース確保済みの設定を行う(ステップS25c)。
他方、上記ステップS25bの判定の結果、デフォルト設定でリソースが既に確保されていないと判定した場合(ステップS25b:No)、続いて、リソースが確保されていないので、要求されているリソース確保を行う容量が設定されていない場合は、仕様最大の容量の確保を試みる(ステップS25d)。
上記ステップS25dの処理により、リソースの確保に成功した場合(ステップS25e:Yes)、上記ステップS25cに移行する。他方、リソースの確保に失敗した場合(ステップS25e:No)、リソース確保不可を設定する(ステップS25f)。
そして、上記ステップS25cおよびステップS25fの処理後、リソース確保済みまたはリソース確保不可を示すリソース確保結果を連携元2に送信する(ステップS25g)。これにより、連携元2は、ステップS22fでリソース確保結果を受信する。
その後、リソース確保済みか否かを確認し(ステップS25h)、ここで、リソース確保済みでないと判定された場合(ステップS25h:No)、装置連携要求の仕様最大の容量の確保を試みる(ステップS25i)。
そして、上記ステップS25iの処理により、リソースの確保に成功した場合(ステップS25j:Yes)や、上記ステップS25hの判定により、リソース確保済みでないと判定した場合(ステップS25h:Yes)、続いて、連携元2から連携データを受信し(ステップS25k)、その後、ここでの処理を終了する。
一方、上記ステップS25jの判定により、リソースの確保に失敗した場合(ステップS25j:No)、続いて、容量確保は自動(Auto)モードか否かを判定する(ステップS25l)。そして、この判定の結果、容量確保が自動(Auto)モードであると判定された場合(ステップS25l:Yes)、続いて、デフォルト値の容量分のリソースの確保を再度試みる(ステップS25m)。この処理により、リソースの確保に成功した場合(ステップS25n:Yes)、処理を上記ステップS25kに移行する。一方、上記ステップS25mの処理により、リソースの確保に失敗した場合(ステップS25n:No)、続いて、連携データの受信が不可能である旨の設定を行い(ステップS25o)、その後、ここでの処理を終了する。
次に、上記図24のステップS22cの容量設定処理について説明する。
図25は、図24のステップS22cの容量設定処理の詳細を説明するためのフローチャートである。
図25に示すように、ステップS22cの容量設定処理では、まず、連携元2においては、まず、容量の設定方法を判別する(ステップS221)。
ここで、デフォルト値の設定であると判定された場合、デフォルトで設定された容量で確定し(ステップS222)、ここでの処理を終了する。
一方、ステップS221において、装置連携要求時に設定すると判定された場合、連携元2で可能な動作を全て実行してから必要容量を確定し(ステップS223)、ここでの処理を終了する。
また、一方、ステップS211において、ユーザが入力すると判定された場合、装置連携要求時にユーザにより入力された容量で確定する(ステップS224)。
その後、リソース残量通知を受けているか否かを判定する(ステップS225)。この判定により、リソース残量通知を受けていると判定した場合(ステップS225:Yes)、リソース残量を表示し、リソース残量をユーザが入力できる容量値の上限値に設定する(ステップS226)。即ち、このステップS226の処理では、通知されたリソース残量値以上の容量(確保量)を設定できないようにしている。
上記ステップS226の処理後、または、上記ステップS225の判定により、リソース残量通知を受けていないと判定された場合(ステップS225:No)、続いて、リソース残量を見て、ユーザが実行要求するか否かを判定する(ステップS227)。この判定の結果、実行要求すると判定された場合(ステップS227:Yes)、続いて、操作パネル24に要求容量を入力して容量確定を行い(ステップS228)、ここでの処理を終了する。一方、上記ステップS227において、実行要求をしないと判定された場合(ステップS227:No)、続いて、装置連携動作をキャンセルし(ステップS229)、ここでの処理を終了する。
次に、図20のステップS23およびS26の実行要求送信処理および実行要求受信処理について説明する。
図26は、図20のステップS23およびS26の実行要求送信処理および実行要求受信処理の詳細を説明するためのフローチャートである。
図26に示すように、ステップS23およびS26の実行要求送信処理および実行要求受信処理では、まず、連携元2においては、実行要求を送信し(ステップS23a)、その後、連携先2から送信される実行結果の受信を待機する。
そして、連携先2から実行結果を受信すると(ステップS23b)、該受信した実行結果に基づいて実行結果がOKであるか否かを判定する(ステップS23c)。この判定により、実行結果がOK、即ち、装置連携処理が正常に終了したと判定した場合(ステップS23c:Yes)、ここでの処理を終了する。他方、上記ステップS23cの判定により、実行結果がNG、即ち、装置連携処理が失敗したと判定した場合(ステップS23c:No)、続いて、装置連携処理が失敗したこと(エラーで終了したこと)をユーザに通知する情報を操作パネル24に表示し(ステップS23d)、ここでの処理を終了する。
一方、連携先2においては、連携元2から実行要求を受信すると(ステップS26a)、連携データを受信し、装置連携処理が正常に終了したか否かを判定する(ステップS26b)。この判定により、連携データを受信し、装置連携処理が正常に終了したと判定された場合(ステップS26b:Yes)、続いて、装置連携処理が正常に終了したことを示す実行結果を連携元2に送信し(ステップS26c)、ここでの処理を終了する。他方、上記ステップS26bの判定により、装置連携処理が正常に終了しない、即ち、エラーで終了したと判定された場合(ステップS26b:No)、装置連携処理が失敗したこと、即ち、エラーで終了したことを示す実行結果を連携元2に送信し(ステップS26d)、ここでの処理を終了する。
即ち、以上説明した実施形態によれば、連係先(要求先)2が、連係元(要求元)2からリソースの確保要求を受けた場合に、連係先2で実行中の処理で使用するリソースを確保しつつ、該確保したリソース以外の空きリソースの範囲内で連係元2が要求する要求機能で使用するリソースを確保するように構成したため、連係元2における処理を滞らせることなく、且つ、連係先2における実行中の処理を中止させずに済むという作用効果を奏する。
具体的には、図27に示すように、本実施形態の情報処理システムによれば、機能の利用を要求する要求元の画像形成装置Aが要求先の画像形成装置Bに対して要求機能(FAX機能)に処理させるデータを送信する前に、要求先の画像形成装置Bにおいて、当該要求先の画像形成装置Bで実行中の処理(コピー処理)で使用するリソースを確保しつつ、それ以外の空きリソースの範囲内で要求元の画像形成装置Aが要求する要求機能(FAX機能)で使用するリソースを確保するようにしたため、要求元の画像形成装置Aが要求する処理(FAX送信)を滞らせることなく、且つ、要求先の画像形成装置Bにおける実行中の処理(コピー処理)を中止させずに済む。
また、上記実施形態によれば、連係先2で確保するリソースの容量(確保量)を要求機能に処理させるデータ量に基づいて算出するようにしたため、連係先2のリソースを圧迫させずに済むという作用効果を奏する。
また、上記実施形態によれば、連係先2で確保するリソースの容量(確保量)を連係先2のリソース残量の範囲内でユーザにより設定されたリソース量とするようにしたため、ユーザの利便性を向上させることができる。
また、上記実施形態によれば、連係先2で確保するリソースの容量(確保量)をデフォルトで設定されるリソース量とするようにしたため、装置連係時のリソースの確保量を平均化させることができるとともに、連係先2が単独動作中でもリソースの空きがあれば装置連係要求前にリソースの確保を行うことができ、ユーザの利便性を向上させることができる。
また、上記実施形態によれば、通知されるリソース残量や要求した確保容量から、実行可能な性能処理内容を表示して、ユーザが装置連係要求を実行するか否かを選択することができるので、ユーザの利便性を向上させることができる。
また、上記実施形態によれば、リソースの確保を自動化して最大仕様の確保が不可であればデフォルト値の確保を行うようにしたため、ユーザの利便性を向上させることができる。
なお、前述した実施形態では、連携する装置として画像形成装置(複合機)2の場合について説明したが、これに限定されず、その他のネットワーク機器(情報処理装置)とすることも可能である。
また、前述した実施形態における処理手順を実行するプログラムは、画像形成装置のROMやHDDなどの記憶部に予め組み込んで提供することが可能である。また、前述のプログラムは、インストール可能な形式または実行可能な形式のファイルでコンピュータで読み取り可能な記憶媒体に記憶して提供することが可能である。更に、前述のプログラムは、インターネットなどのネットワーク経由で提供または配布したりすることも可能である。
また、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。