(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-28
(45)【発行日】2024-07-08
(54)【発明の名称】印刷システム
(51)【国際特許分類】
G06F 3/12 20060101AFI20240701BHJP
B41J 29/38 20060101ALI20240701BHJP
H04N 1/00 20060101ALI20240701BHJP
【FI】
G06F3/12 387
B41J29/38 201
G06F3/12 304
G06F3/12 336
G06F3/12 367
G06F3/12 371
H04N1/00 127A
H04N1/00 912
(21)【出願番号】P 2020098788
(22)【出願日】2020-06-05
【審査請求日】2023-05-23
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】山道 雅樹
【審査官】豊田 真弓
(56)【参考文献】
【文献】特開2013-186674(JP,A)
【文献】特開2019-144616(JP,A)
【文献】特開2019-134309(JP,A)
【文献】特開2015-054413(JP,A)
【文献】特開2016-068335(JP,A)
【文献】特開2015-108925(JP,A)
【文献】特開2018-024181(JP,A)
【文献】特開2019-079496(JP,A)
【文献】米国特許出願公開第2014/0368859(US,A1)
【文献】特開2021-086186(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/12
B41J 29/38
H04N 1/00
(57)【特許請求の範囲】
【請求項1】
画像形成装置と、画像形成装置が登録された第1のクラウドプリントサービスと
通信可能な第2のクラウドプリントサービスと、を含む印刷システムであって、
前記第2のクラウドプリントサービスは、
クライアント端末から受信した印刷ジョブを格納した前記第1のクラウドプリントサービスから当該印刷ジョブ
に関する情報を
受信し、受信した情報を基に前記画像形成装置に
情報を送信する
第1の送信手段を有し、
前記画像形成装置は、
前記
第1の送信手段により送信された情報を基に、印刷ジョブの印刷実行の指示を
ユーザーから受け付ける入力手段
を有し、
前記印刷実行の指示を受け付けたことに応じて、前記印刷ジョブを受信し、印刷処理を行い、
さらに、前記画像形成装置は、前記第2のクラウドプリントサービスを介さずに、前記第1のクラウドプリントサービスから印刷ジョブを受信し、印刷処理を行うことを特徴とする印刷システム。
【請求項2】
前記画像形成装置は、
前記画像形成装置が前記第1のクラウドプリントサービスに登録されている場合は、前記印刷ジョブを前記第1のクラウドサービスから受信し、前記印刷ジョブの印刷処理を行い、前記画像形成装置が前記第1のクラウドプリントサービスに登録されていない場合には、前記第1のクラウドプリントサービスから前記第2のクラウドプリントサービスに転送された印刷ジョブを前記第2のクラウドプリントサービスから受信し、前記印刷ジョブの印刷処理を行う印刷処理手段を有することを特徴とする請求項1に記載の印刷システム。
【請求項3】
前記第1のクラウドプリントサービスは、外部から完了通知を受信したことに従って、完了通知に対応する印刷ジョブを削除する削除手段を有し、
前記印刷処理手段は、前記印刷処理が完了すると、前記第2のクラウドプリントサービスに完了通知を送信し、
前記完了通知を受信した前記第2のクラウドプリントサービスは当該完了通知を第1のクラウドプリントサービスに送信することを特徴とする請求項2に記載の印刷システム。
【請求項4】
前記第1のクラウドプリントサービスは、
前記削除手段により前記印刷ジョブが削除された後に、前記印刷ジョブの完了を示す印刷ジョブ状況を前記クライアント端末に送信する第
2の送信手段を更に有し、
前記第1のクラウドプリントサービスは、前記印刷ジョブが格納された後であり、前記削除手段により前記印刷ジョブが削除される前には、前記印刷ジョブの未完了を示す印刷ジョブ状況を前記クライアント端末に送信することを特徴とする請求項3に記載の印刷システム。
【請求項5】
前記画像形成装置は、前記入力手段により前記印刷ジョブの印刷実行の指示を
受け付けると、前記印刷ジョブの印刷要求を前記第2のクラウドプリントサービスに送信する第
3の送信手段を有し、
前記第2のクラウドプリントサービスは、前記印刷ジョブの印刷要求を受信すると、前記画像形成装置が前記第1のクラウドプリントサービスに登録されている場合には、印刷ジョブ移動要求を前記第1のクラウドプリントサービスに送信する第
4の送信手段を有し、
前記第1のクラウドプリントサービスは、前記印刷ジョブ移動要求を受信すると、前記第2のクラウドプリントサービスを経由して印刷を行わせる印刷ジョブを格納する第1の
記憶領域に格納された前記印刷ジョブを前記第2のクラウドプリントサービスを経由せずに前記画像形成装置に印刷を行わせる印刷ジョブを格納する第2の記憶領域に移動させる移動手段を有することを特徴とする請求項1~4のいずれか1項に記載の印刷システム。
【請求項6】
前記第2のクラウドプリントサービスは、前記印刷ジョブの印刷要求を受信すると、前記画像形成装置が前記第1のクラウドプリントサービスに登録されている場合には、移動許可確認要求を前記第1のクラウドプリントサービスに送信する第
5の送信手段を有し、
前記第1のクラウドプリントサービスは、前記移動許可確認要求を受信すると、前記印刷ジョブを前記第2の記憶領域に移動させることが許可されていない場合には、不許可情報を前記第2のクラウドプリントサービスに送信する第
6の送信手段を有し、
前記第2のクラウドプリントサービスは、前記不許可情報を受信すると、移動許可要求を前記第1のクラウドプリントサービスに送信する第
7の送信手段を有し、
前記移動許可要求を受信し、当該要求に含まれる情報に基づき要求を許可すると判断した場合に、前記第1のクラウドプリントサービスの前記移動手段は、前記印刷ジョブを前記第2の記憶領域に移動させることを特徴とする請求項5に記載の印刷システム。
【請求項7】
前記画像形成装置は、登録要求を前記第1のクラウドプリントサービスに送信する第
8の送信手段を有し、
前記第1のクラウドプリントサービスは、前記登録要求を受信し、前記画像形成装置の識別子を前記画像形成装置に送信する第
9の送信手段を有し、
前記画像形成装置は、前記画像形成装置の識別子を受信し、前記画像形成装置の識別子を前記第2のクラウドプリントサービスに送信する第
10の送信手段を有することを特徴とする請求項1~6のいずれか1項に記載の印刷システム。
【請求項8】
前記画像形成装置は、登録要求を前記第1のクラウドプリントサービスに送信する第
8の送信手段を有し、
前記第1のクラウドプリントサービスは、前記登録要求を受信し、前記画像形成装置の識別子を前記画像形成装置に送信する第
9の送信手段を有し、
前記画像形成装置は、前記画像形成装置の識別子を受信し、前記画像形成装置の識別子を前記第2のクラウドプリントサービスに送信する第
10の送信手段を有し、
前記第2のクラウドプリントサービスは、前記画像形成装置の識別子を受信すると、移動許可確認要求を前記第1のクラウドプリントサービスに送信する第
11の送信手段を有し、
前記第1のクラウドプリントサービスは、前記移動許可確認要求を受信すると、前記印刷ジョブを前記第2の記憶領域に移動させることが許可されていない場合には、不許可情報を前記第2のクラウドプリントサービスに送信する第
12の送信手段を有し、
前記第2のクラウドプリントサービスは、前記不許可情報を受信すると、移動許可要求を前記第1のクラウドプリントサービスに送信する第
13の送信手段を有し、
前記第1のクラウドプリントサービスは、前記移動許可要求を受信すると、前記印刷ジョブを前記第2の記憶領域に移動させることを許可する第2の許可手段を有することを特徴とする請求項5または6に記載の印刷システム。
【請求項9】
クラウドプリントサービスを提供するサーバであって、
他のクラウドプリントサービスから印刷ジョブ
に関する情報を受信し、受信した情報を
基に画像形成装置に
情報を送信する第1の送信手段と、
前記印刷ジョブの印刷要求を前記画像形成装置から受信すると、前記画像形成装置が前記他のクラウドプリントサービスに登録されている場合には、前記他のクラウドプリントサービスから前記画像形成装置に、前記サーバが提供する前記クラウドプリントサービスを経由することなく前記印刷ジョブを送信させるための要求を前記他のクラウドプリントサービスに送信する第2の送信手段と、
前記画像形成装置が前記他のクラウドプリントサービスに登録されていない場合に、前記他のクラウドプリントサービスから前記印刷ジョブを受信し、前記受信した印刷ジョブを前記画像形成装置に送信する第3の送信手段と
を有することを特徴とするサーバ。
【請求項10】
クラウドプリントサービスを提供する方法であって、
前記クラウドプリントサービスとは異なる他のクラウドプリントサービスから印刷ジョブ
に関する情報を受信し、受信した情報を
基に画像形成装置に
情報を送信する第1の送信工程と、
前記印刷ジョブの印刷要求を前記画像形成装置から受信すると、前記画像形成装置が前記他のクラウドプリントサービスに登録されている場合には、前記他のクラウドプリントサービスから前記画像形成装置に対して、前記クラウドプリントサービスを経由することなく前記印刷ジョブを送信させるための要求を前記他のクラウドプリントサービスに送信する第2の送信工程と、
前記画像形成装置が前記他のクラウドプリントサービスに登録されていない場合には、前記他のクラウドプリントサービスから前記印刷ジョブを受信し、前記受信した印刷ジョブを前記画像形成装置に送信する第3の送信工程と
を有することを特徴とする方法。
【請求項11】
クラウドプリントサービスを提供する方法であって、
前記クラウドプリントサービスとは異なる他のクラウドプリントサービスが提供する仮想プリンタが宛先として指定された印刷ジョブを受信してスプール領域に格納する格納工程と、
前記格納工程での格納が行われた後に、前記他のクラウドプリントサービス宛に前記スプール領域の印刷ジョブを構成する印刷データを転送するか、前記仮想プリンタに対応する、物理リソースとして印刷手段を備える画像形成装置に対し、前記他のクラウドプリントサービスを経由することなく前記印刷ジョブを構成する印刷データを提供するかを異ならせる制御工程と、
を有することを特徴とする方法。
【請求項12】
前記制御工程では、前記他のクラウドプリントサービスから前記スプール領域に一時保存している印刷ジョブを取得する要求を受信したことに従って、前記異ならせる制御が実行されることを特徴とする請求項11に記載の方法。
【請求項13】
前記他のクラウドプリントサービスを経由することなく前記印刷ジョブを構成する印刷データを提供する場合に、所定の通知を前記他のクラウドプリントサービスに通知する通知工程を更に有することを特徴とする請求項11または12に記載の方法。
【請求項14】
請求項10~13のいずれか1項に記載の前記クラウドプリントサービスを提供する方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷システム、サーバ、クラウドプリントサービスを提供する方法、およびプログラムに関する。
【背景技術】
【0002】
近年、クラウド経由で印刷ジョブを投入し、画像形成装置に印刷ジョブを送信するクラウドプリントサービスが普及し始めている(例えば特許文献1を参照)。このような印刷システムでは、まず、管理者が画像形成装置を、管理者が所属するクラウドプリントサービスのテナントへ登録する。管理者は、テナントに所属するどのユーザに、画像形成装置の使用を許可させるかを設定する。ここで、テナントとは、クラウドプリントサービスの利用単位を示している。具体的には、クラウドプリントサービスの利用契約を結んだ組織ごと(例えば、企業ごとや組織ごと)に異なるテナントが割り当てられているものとする。
【0003】
画像形成装置の使用を許可されたユーザは、クライアント端末からクラウドプリントサービスへ印刷ジョブを投入する。クラウドプリントサービスは、受信した印刷ジョブをストレージに保存する。画像形成装置は、クラウドプリントサービスに保存された印刷ジョブを取得し、印刷する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
エンタープライズ環境においては、複数のOSベンダーのクライアント端末(例えばWindows(登録商標)OS、macOS(登録商標)、Chrome(登録商標)OSなど)を使用される。また、近年クラウドプラットフォームの利用も普及してきており、1つの企業体が複数の異なるクラウドプラットフォーム(例えば、AWS、Azure、GoogleCloudPlatformなど)を併用するケースが増えている。また、各クラウドプラットフォームを利用するユーザが簡易に印刷を行えるよう、各プラットフォームがユーザにクラウドプリントサービスを提供するケースも増えてきている。
【0006】
特許文献1は、画像形成装置が複数のクラウドプリントサービスを利用する印刷システムを開示していない。一方、ユーザの利便性を鑑みると、複数のクラウドプリントサービスから印刷装置が利用できると好ましい。また、複数のクラウドプリントサービスを経由して印刷装置にジョブを送信して印刷を行うことも考えられる。ここで、複数のクラウドプリントサービスがそれぞれ印刷ジョブを保存すると、重複してストレージリソースが消費されるといった課題が生じる。
【0007】
本発明の1つの側面としては、第2のクラウドプリントサービスに印刷ジョブを格納せず、第1のクラウドプリントサービスのみに印刷ジョブを格納し、画像形成装置で印刷ジョブの印刷処理を行うことを目的の1つとする。
【課題を解決するための手段】
【0008】
本発明の印刷システムは、画像形成装置と、画像形成装置が登録された第1のクラウドプリントサービスと通信可能な第2のクラウドプリントサービスと、を含む印刷システムであって、前記第2のクラウドプリントサービスは、クライアント端末から受信した印刷ジョブを格納した前記第1のクラウドプリントサービスから当該印刷ジョブに関する情報を受信し、受信した情報を基に前記画像形成装置に情報を送信する第1の送信手段を有し、前記画像形成装置は、前記第1の送信手段により送信された情報を基に、印刷ジョブの印刷実行の指示をユーザーから受け付ける入力手段を有し、前記印刷実行の指示を受け付けたことに応じて、前記印刷ジョブを受信し、印刷処理を行い、さらに、前記画像形成装置は、前記第2のクラウドプリントサービスを介さずに、前記第1のクラウドプリントサービスから印刷ジョブを受信し、印刷処理を行う。
【発明の効果】
【0009】
本発明の1つの側面によれば、第2のクラウドプリントサービスに印刷ジョブを格納せず、第1のクラウドプリントサービスのみに印刷ジョブを格納し、画像形成装置で印刷ジョブの印刷処理を行うことができる。
【図面の簡単な説明】
【0010】
【
図1】クラウドプリントの登録と印刷処理を示す図である。
【
図2】クラウドプリントのイベント通知(Pull方式)処理を示す図である。
【
図3】クラウドプリントのイベント通知(Push方式)処理を示す図である。
【
図5】クラウドプリントサービス間で連携する印刷処理を示す図である。
【
図6】クラウドプリントサービス間で連携する印刷処理を示す図である。
【
図7】クラウドプリントサービスのハードウェア構成例を示す図である。
【
図8】画像形成装置の操作部の画面例を示す図である。
【
図9】画像形成装置の登録シーケンスを示す図である。
【
図10】画像形成装置への印刷シーケンスを示す図である。
【
図11】ジョブ情報取得パケット例を示す図である。
【
図12】ジョブ情報取得パケット例を示す図である。
【
図14】クラウドプリントサービスの処理を示すフローチャートである。
【
図15】画像形成装置の登録シーケンスの一部を示す図である。
【
図16】画像形成装置への印刷シーケンスの一部を示す図である。
【発明を実施するための形態】
【0011】
図1は、クラウドプリントの登録と印刷処理を示すシーケンス図である。印刷システムは、クライアント端末100と、印刷装置101と、クラウドプリントサービス102とを有する。
【0012】
印刷装置101は、クラウドプリント機能と、印刷装置101を操作するためのWebUI機能をサポートしている。クライアント端末100は、クラウドプリントクライアント機能と、上記のWebUIを操作するためのWebUIクライアントをサポートしている。また、クラウドプリントサービス102は、インターネット上のクラウドプリントサービス装置である。
【0013】
ユーザは、まず、クライアント端末100のWebUIクライアントを利用して、印刷装置101にWebUI経由でクラウドプリントサービス登録要求111を送信する。印刷装置101は、クラウドプリントサービス登録要求111を受信すると、クラウドプリントサービス102にクラウドプリントサービス登録要求112を送信する。クラウドプリントサービス102は、クラウドプリントサービス登録要求112を受信すると、クラウドプリントサービス登録URL130を含むクラウドプリントサービス登録要求応答113を印刷装置101に送信する。印刷装置101は、クラウドプリントサービス登録要求応答113を受信すると、クライアント端末100にWebUI経由でクラウドプリントサービス登録URL130を含む登録URL表示画面情報114を送信する。
【0014】
クライアント端末100は、登録URL表示画面情報114を受信すると、WebUIクライアントに登録URL130を表示する。ユーザは、クライアント端末100のWebUIクライアントを操作し、表示された登録URL130にアクセスする。これにより、クライアント端末100は、クラウドプリントサービス102にクラウドアカウント131を含むクラウドプリントサービス登録承認要求115を送信する。クラウドプリントサービス102は、クラウドプリントサービス登録承認要求115を受信すると、クラウドプリントサービス登録承認応答116をクライアント端末100に送信する。
【0015】
印刷装置101は、クラウドプリントサービス102にクラウドプリントサービス登録確認要求117を送信する。クラウドプリントサービス102は、クラウドプリントサービス登録確認要求117を受信すると、印刷装置101にクラウドプリンタID132を含むクラウドプリントサービス登録確認応答118を送信する。この段階で、印刷装置101は、クラウドプリントサービス102に登録された状態となり、クラウドプリントサービスを利用可能な状態となる。
【0016】
クライアント端末100は、クラウドプリンタID132と印刷データ134とクラウドアカウント131を含む印刷要求119をクラウドプリントサービス102に送信する。印刷装置101は、クラウドプリントサービス102に印刷ジョブ要求120を送信する。クラウドプリントサービス102は、印刷データ134とクラウドアカウント131を含む印刷ジョブ応答121を印刷装置101に送信する。印刷装置101は、受信した印刷データ134を印刷する。
【0017】
図1のシーケンスにおける印刷ジョブ要求120は、印刷装置101がクラウドプリントサービス102に自分宛の印刷ジョブが送信されたことを検知して送信する。その検知の方法は、具体的には、印刷装置101がクラウドプリントサービス102からイベント通知を受けることにより実現される。このイベント通知には、Pull方式とPush方式の2つの方法がある。
【0018】
図2は、イベント通知(Pull方式)の処理シーケンスを説明するための図である。印刷装置101は、クラウドプリントサービス102にクラウドプリンタID132とクラウドアカウント131を含むイベント取得要求201を送信する。クラウドプリントサービス102は、イベント取得要求201を受信すると、印刷装置101にイベント種別230とポーリング間隔231を含むイベント応答202を送信する。イベント種別230には、発生したイベント情報がセットされている。例として、イベント情報には、印刷装置101宛の印刷ジョブを受信したことを表すジョブ受信イベントがある。イベントが発生していない場合、イベント情報は含まれない。ポーリング間隔231は、印刷装置101が次にイベント取得要求を送信するまでの間隔を、クラウドプリントサービス102が印刷装置101に指示するものである。
【0019】
印刷装置101は、イベント応答202を受信すると、イベント応答202に含まれているポーリング間隔231の時間経過後に、再度、クラウドプリントサービス102にイベント取得要求203を送信する。イベント取得要求203は、クラウドプリンタID132とクラウドアカウント131を含む。クラウドプリントサービス102は、前回と同様に、イベント取得要求203を受信すると、印刷装置101にイベント種別230とポーリング間隔231を含むイベント応答204を送信する。以降、ポーリング間隔231に従って、印刷装置101は、同様の処理を繰り返す。
【0020】
図3は、イベント通知(Push方式)の処理シーケンスを説明するための図である。印刷装置101は、クラウドプリントサービス102にクラウドプリンタID132とクラウドアカウント131を含むイベント取得要求301を送信する。クラウドプリントサービス102は、イベント取得要求301を受信すると、印刷装置101にイベント種別330を含むイベント応答302を送信する。イベント種別330には、発生したイベント情報がセットされている。例として、イベント情報には、印刷装置101宛の印刷ジョブを受信したことを表すジョブ受信イベントがある。イベントが発生していない場合、イベント情報は含まれない。
【0021】
印刷装置101は、イベント応答302を受信した後も、クラウドプリントサービス102とのネットワーク接続を維持し続ける。クラウドプリントサービス102は、イベントが発生すると、そのタイミングで、上記のネットワーク接続経由で、イベント種別330を含むイベント応答303を送信する。
【0022】
クラウドプリントサービスは、例えば、GoogleCloudPrint(登録商標)、MicrosoftHybridCloudPrint(登録商標)、またはUniflowOnLine(登録商標)などである。
【0023】
印刷装置101等の画像形成装置が上述したような複数のクラウドプリントサービスをサポートするような形態が普及し始めている。これらの複数のクラウドプリントサービス(以降、CPSと表現する)を連携させてクラウド印刷環境を実現することが考えられる。例えば、
図4に例示するように、クライアント端末401~403と、CPS404~406と、画像形成装置407~409が存在する。CPS404~406は、クラウドプリントサービス装置である。その場合、CPS405やCPS406を宛先として、ユーザが送信したデータを他のCPS404を経由して、実際に印刷を行う画像形成装置407、408、409まで転送する構成が考えられる。
【0024】
この場合、画像形成装置407~409は、最後に経由されるクラウドプリントサービスで利用される通信プロトコルだけサポートすればよく、連携時に経由するクラウドプリントサービスの通信プロトコルをサポートする必要がない。すなわち、最後に経由されるクラウドプリントサービスで各クラウドプリントサービス間の差異を吸収することができ、画像形成装置407~409の運用コストや保守コストを下げることができる。また、ユーザ認証機能や印刷レポート機能なども、最後に経由されるクラウドプリントサービスで集約して実施すればよく、効率的にクラウド印刷を実現することができる。
【0025】
このようなクラウドプリント連携を行う場合、例えば、
図5のようなシーケンスで印刷ジョブが送信され、印刷される。
【0026】
図5の具体的な説明を行う前に、連携のための事前準備について説明する。まず、
図1に例示した登録シーケンスにより、CPS404の配下の出力先プリンタとして画像形成装置407が事前登録される。この処理により、「クライアント端末-CPS404-画像形成装置」といった経路(経路1)を用いたクラウドプリントが実行できるようになる。
【0027】
また、CPS405には、配下の出力先プリンタとして、CPS404が提供する仮想的なプリンタ(以下仮想プリンタとも呼ぶ)が事前の登録処理により登録されているものとする。仮想プリンタとその登録処理について説明する。テナント管理者等のユーザは、CPS404上にCPS405から印刷ジョブを受信するための仮想プリンタオブジェクトを登録する。仮想プリンタオブジェクトは、外部から受信した印刷ジョブを一時的にスプールする機能と、スプールした印刷ジョブを物理リソースであるプリンタエンジンを備える画像形成装置(例えば、画像形成装置407)に転送する機能を有する。CPS404が提供する仮想プリンタオブジェクトは外部のクラウドプリントサービスやクライアントから見ると出力プリンタのように振る舞いつつ、外部から受信した印刷ジョブを実際に印刷能力を備える装置に中継するプロキシとして機能する。続けて、テナント管理者等のユーザは、CPS405の配下の出力先プリンタとしてCPS404の仮想プリンタオブジェクトを登録する。この処理により、「クライアント端末-CPS405-CPS404-画像形成装置」といった経路(経路2)を用いたクラウドプリントが実行できるようになる。
【0028】
図5を用いて経路2で印刷ジョブを送信してクラウドプリントを行う場合のデータのやり取りを説明する。まず、ステップS501では、クライアント端末402は、CPS405の配下のプリンタを探索する。続けて、ユーザは、探索で見つかった出力先プリンタの中から、所望のプリンタを選択する。ここでは、CPS404に印刷ジョブを送信する仮想プリンタが出力先プリンタとして選択されたものとして説明する。図示省略の印刷設定画面を介して印刷開始の指示を受け付けると、クライアント端末402は、CPS405に印刷ジョブを送信する。ステップS502では、CPS405は、その印刷ジョブをCPS404に転送すべきジョブを保存する第1の保存領域に保存する。第1の保存領域はCPS404がジョブを取得するまで印刷ジョブを一時保存するスプール領域である。
【0029】
続いて、ステップS503では、CPS404は、CPS405に仮想プリンタに対応する印刷ジョブを取得する取得要求を送信する。ステップS504では、CPS405は、CPS404に対して要求に対応する印刷ジョブを送信する。ステップS505では、CPS404は、その印刷ジョブを仮想プリンタオブジェクトに対応する保存領域に保存する。ステップS506では、CPS404は、CPS405に印刷ジョブ状況として、完了通知を送信する。
【0030】
ステップS507では、CPS405は、この完了通知を受信すると、保存していた印刷ジョブを第1の保存領域から削除する。この後、ステップS508では、クライアント端末402は、CPS405に印刷ジョブ状況問い合わせを送信する。ステップS509では、CPS405は、クライアント端末402に印刷ジョブ状況として、完了応答を送信する。
【0031】
ステップS510では、ユーザは、画像形成装置407に対して、ログインを行う。ステップS511では、画像形成装置407は、CPS404へ印刷ジョブ情報取得要求を送信する。ステップS512では、CPS404は、画像形成装置407が取得可能な印刷ジョブを特定し、当該特定した印刷ジョブの名称や設定情報などを含む印刷ジョブ情報を生成する。続けて、CPS404は、当該生成した印刷ジョブ情報を画像形成装置407に送信する。ステップS513では、画像形成装置407は、受信した印刷ジョブ情報に基づいてユーザに対して、印刷ジョブ一覧を表示する。
【0032】
ステップS514では、ユーザは、画像形成装置407を用いて、印刷ジョブ一覧の中から1以上の印刷ジョブを選択して、印刷実行を指示する。ステップS515では、画像形成装置407は、CPS404へ選択された印刷ジョブを取得するための取得要求を送信する。ステップS516では、CPS404は、取得要求に基づき取得が要求された印刷ジョブを特定し、当該特定した印刷ジョブを画像形成装置407へ送信する。ステップS517では、画像形成装置407は、CPS404から受信した印刷ジョブの印刷処理を実行する。画像形成装置407における印刷処理について具体的に説明する。画像形成装置407は、物理的に印刷を行う印刷手段としてのプリンタエンジンを備えている。印刷ジョブに基づく印刷を行う場合、画像形成装置407のコントローラは、受信した印刷ジョブに基づいて、プリンタエンジンに転送する印刷画像および印刷制御コマンドを生成する。生成した印刷画像および印刷制御コマンドはプリンタエンジンに転送される。印刷画像および印刷制御コマンドを受信したプリンタエンジンは、印刷画像や印刷制御コマンドに基づいて、不図示の給紙カセットから適切なサイズのシートを図示省略の搬送路に給送する。続けて、プリンタエンジンは搬送路上に給紙されたシートに画像を印刷する。印刷が完了したシート(印刷物)は、図示省略の排紙トレイに排出される。プリンタエンジンの印刷方式はトナーを紙に転写して定着させる電子写真方式であってもよいし、紙にインクを吐出して印刷するインクジェット方式であってもよい。
【0033】
図5の説明に戻り、ステップS518では、画像形成装置407は、CPS404へ印刷ジョブ状況として、完了通知を送信する。ステップS519では、CPS404は、この完了通知を受信すると、仮想プリンタに対応する保存領域に保存されている、完了通知に対応する印刷ジョブを、当該保存領域から削除する。
【0034】
ステップS509のタイミングでは、実際には、ユーザは、まだ印刷ジョブを印刷していないのに、クライアント端末402のスプーラでは、印刷ジョブ完了の状態となってしまい、ユーザ側からみると、正しいジョブ状態を管理できない。
【0035】
そこで、CPS404は、印刷ジョブを取得しても、完了通知ではなく、印刷ジョブ保存中を表すPendingあるいはPending-Heldなどの通知を行うようにしてもよい。
【0036】
この場合、例えば、
図6に示すように、
図5のステップS506に代えて、ステップS606では、CPS404は、CPS405へ印刷ジョブ状況として、印刷ジョブ保存中を表すPending通知を送信する。
図5のステップS507は、削除される。
図5のステップS509に代えて、ステップS609では、CPS405は、クライアント端末402へ印刷ジョブ状況として、Pending応答を送信する。
【0037】
ステップS519の後、ステップS620では、CPS404は、CPS405へ印刷ジョブ状況として、完了通知を送信する。ステップS621では、CPS405は、この完了通知を受信すると、第1の保存領域に保存していた印刷ジョブをストレージから削除する。ステップS622では、クライアント端末402は、CPS405へ印刷ジョブ状況問い合わせを送信する。ステップS623では、CPS405は、クライアント端末402へ印刷ジョブ状況として、完了応答を送信する。
【0038】
ユーザが印刷完了するまで、クライアント端末402は、ステップS609およびS623に示すように、正しいジョブ状況を管理できる。しかし、この方法では、ステップS505からS518まで印刷ジョブがCPS405とCPS404の両方のストレージに保存され、重複してリソースが消費される課題がある。
【0039】
また、ステップS504およびS516において、CPS405がCPS404を介して画像形成装置407へ印刷ジョブを送信するための通信が発生し、通信量が増大するという課題がある。ストレージ量や通信量によって従量課金されるクラウドシステムにおいては、重要な課題となる。以下、上記の課題を解決するための実施形態を説明する。
【0040】
(第1の実施形態)
<ネットワーク構成>
図4は、本発明の第1の実施形態により印刷システムの構成例を示すブロック図である。印刷システムは、クライアント端末401~403と、CPS404~406と、画像形成装置407~409を有する。CPS404~406は、クラウドプリントサービス装置である。
【0041】
クライアント端末401~403は、それぞれ、CPS404~406に対して、印刷ジョブを送信する。CPS404は、クライアント端末401から印刷ジョブを受信し、かつ、CPS405および406から印刷ジョブを受信するクラウドプリントサービス装置である。CPS405および406は、それぞれ、クライアント端末402および403から印刷ジョブを受信し、印刷ジョブを保存するクラウドプリントサービスである。CPS404~CPS406は各々異なる事業者が提供するクラウドプリントサービスである。画像形成装置407~409は、CPS404から印刷ジョブを受信し、印刷ジョブの印刷処理を実行する。
【0042】
上記の各構成要素は、ネットワークにより通信可能に接続されている。ネットワークは、例えばインターネット等のLAN、WAN、電話回線、専用デジタル回線、ATM等のいずれか、または、これらの組み合わせで実現される通信ネットワークである。ネットワークは、データの送受信が可能であればよい。
【0043】
<ハードウェア構成>
図7は、
図4のCPS404を提供する物理リソースとしてのサーバのハードウェア構成例を示すブロック図である。
図4のクライアント端末401~403およびCPS405~406も、CPS404と同様のハードウェア構成を有する。CPS404は、CPU701と、ROM702と、RAM703と、補助記憶装置704と、入力装置705と、出力装置706と、I/F707を有する。
【0044】
CPU701は、各構成要素(ROM702およびRAM703など)を直接あるいは間接的に制御し、ROM702、RAM703または補助記憶装置704に記憶されているプログラムを実行する。ROM702は、BIOSを格納する。RAM(主記憶装置)703は、CPU701のワーク領域として利用され、プログラムをロードするための一次記憶として利用される。補助記憶装置704は、基本ソフトウェアであるOSやプログラムを記憶するHDD(ハードディスクドライブ)、もしくはSSD(ソリッドステートドライブ)などである。入力装置705は、キーボードやポインティングデバイスなどである。出力装置706は、例えば、ディスプレイである。I/F707は、ネットワークに接続するためのインターフェースである。本実施形態では、説明のため、1つのCPU701が1つのメモリ(RAM703)を用いて後述するフローチャートに示す各処理を実行する場合を例示するが、他の様態であっても構わない。例えば複数のプロセッサ、RAM、ROM、ストレージを協働させて後述するフローチャートに示す各処理を実行することもできる。また、複数のサーバコンピュータを用いて各処理を実行することもできる。また、サーバはコンテナ化や仮想化技術を用いることで、複数の異なるテナントにクラウドプリントサービスを提供することができる。
【0045】
<設定画面>
図8は、ユーザが画像形成装置407にログインして、CPS404からの印刷ジョブを選択して印刷を実行する画像形成装置407の操作部の画面例を示す。画像形成装置407を例に説明するが、画像形成装置408および409も同様である。画像形成装置407は、ユーザ認証管理されている。コピーやプリントなどの画像形成装置407の機能を使うには、ユーザは、画像形成装置407にログインする必要がある。ログインの方法は、IDとパスワードによる認証、ICカードによる認証、生体認証による方法などである。ログインに成功したユーザが、画像形成装置407のプリント機能を選択すると、画像形成装置407は、
図8のように、そのユーザの印刷ジョブ一覧画面を表示する。
図8の画面では、画像形成装置407は、例えば、ジョブ名称、部数、色設定などを表示する。
図8の画面では、ユーザは、任意の1つの印刷ジョブを選択して、「印刷」を押下すると、画像形成装置407は、CPS404から該当の印刷ジョブを受信し、印刷を実行する。ユーザが「消去」を選択すると、画像形成装置407は、その印刷ジョブをCPS404に対して削除要求を送信し、CPS404のストレージから該当の印刷ジョブを削除する。また、画像形成装置407は、印刷中に「キャンセル」が選択されると、印刷中の印刷ジョブの印刷処理を停止してキャンセルする。
【0046】
<CPSへの画像形成装置の登録>
図9は、CPS405への画像形成装置407の登録とCPS404への情報登録処理を説明するためのシーケンス図である。なお、
図5で説明したクラウドプリント連携のための登録処理は事前に行われているものとする。即ち、「クライアント端末-CPS404-画像形成装置」といった経路(経路1)、および「クライアント端末-CPS405-CPS404-画像形成装置」といった経路(経路2)を用いたクラウドプリントが実行できる登録状態である。一方、「クライアント端末-CPS405-画像形成装置407」といった経路(経路3)で印刷を行うための事前準備は行われていない。
図9では、「クライアント端末-CPS405-画像形成装置407」といった経路で印刷を行うための登録処理を行う際に、経路3相当の出力先プリンタが追加されたことを、後段のCPS405に共有する。以下具体的に説明する。
【0047】
ステップS911では、ユーザの指示により、クライアント端末402は、WebUIクライアントを利用して、画像形成装置407にWebUI経由で、クラウドプリントサービス登録要求を送信する。ステップS912では、画像形成装置407は、クラウドプリントサービス登録要求を受信すると、CPS405にクラウドプリントサービス登録要求を送信する。ステップS913では、CPS405は、クラウドプリントサービス登録要求を受信すると、クラウドプリントサービス登録URL930を含むクラウドプリントサービス登録要求応答を画像形成装置407に送信する。ステップS914では、画像形成装置407は、クラウドプリントサービス登録要求応答を受信すると、クライアント端末402にWebUI経由で、クラウドプリントサービス登録URL930を含む登録URL表示画面情報を送信する。クライアント端末402は、登録URL表示画面情報を受信すると、WebUIクライアントに登録URL930を表示する。
【0048】
ユーザは、クライアント端末402のWebUIクライアントを操作し、表示された登録URL930にアクセスする。これにより、ステップS915では、クライアント端末402は、CPS405にクラウドアカウント931を含むクラウドプリントサービス登録承認要求を送信する。ステップS916では、CPS405は、クラウドプリントサービス登録承認要求を受信すると、クラウドプリントサービス登録承認応答をクライアント端末402に送信する。
【0049】
ステップS917では、画像形成装置407は、CPS405にクラウドプリントサービス登録確認要求を送信する。ステップS918では、CPS405は、クラウドプリントサービス登録確認要求を受信すると、画像形成装置407にクラウドプリンタID932を含むクラウドプリントサービス登録確認応答を送信する。クラウドプリンタID932は、画像形成装置407の登録のための識別子である。この段階で、画像形成装置407は、CPS405に登録された状態となり、クラウドプリントサービスを利用可能な状態となる。即ち、「クライアント端末-CPS405-画像形成装置407」といった経路で印刷を行うための登録処理が完了する。登録処理が完了すると、画像形成装置407が印刷ジョブを取得するまでの間、CPS405上で印刷ジョブを一時保存するスプール領域である第2の保存領域がCPS405上に生成される。この第2の保存領域や前述した第1の保存領域のことをクラウドプリントサービス上のプリントキューやクラウドプリントサービス上のスプール領域とも呼ぶ。
【0050】
続けて、CPS405とCPS404が連携するための処理を行う。具体的には、CPS405とCPS404に登録された画像形成装置407の同一性を確保するための処理を行う。まず、ステップS919では、画像形成装置407は、CPS404でプリンタの個体識別を行うために使用しているシリアルナンバー933を含む登録状況確認要求をCPS404に送信する。ステップS920では、CPS404は、登録状況確認要求を受信すると、画像形成装置407に画像形成装置407が登録済みか否かを示すプリンタ登録状況として、登録済みの応答を送信する。ステップS921では、画像形成装置407は、プリンタ登録状況を受信すると、登録済みの場合には、シリアルナンバー933とプリンタID932を含むCPS405の情報登録要求をCPS404に送信する。ステップS922では、CPS404は、情報登録要求を受信すると、シリアルナンバー933に該当する画像形成装置407の情報にプリンタID932の情報を付加し、プリンタ情報登録応答を画像形成装置407に送信する。これらの処理により、CPS404は、登録されている画像形成装置407のCPS405での個体を識別するためのプリンタID932を取得可能となる。この処理により、後述する経路2向けに投入された印刷ジョブを経路3に切り替えて印刷する連携処理が可能となる。なお、本実施形態では、CPS405の配下のプリンタとして画像形成装置407を登録する際に、CPS404に対する情報共有を行う場合を例示したがこれに限定されるものではない。例えば、CPS405がテナント管理者等に提供する設定画面を介して情報登録処理(紐づけ処理)を行うようにしてもよい。この場合、CPS405は、経路2で印刷するプリンタ(仮想プリンタ)と、経路3で印刷するプリンタの両方がCPS405の傘下のプリンタとして登録されている状態で、当該紐づけを行うかどうかをテナント管理者に問い合わせる。テナント管理者によって紐づけを行う操作が行われた場合に、CPS405はS919以降の処理を行えばよい。
【0051】
<CPSによる印刷制御>
図10は、印刷システムの印刷制御処理方法を示すシーケンス図である。ステップS1001では、クライアント端末402は、CPS405の配下のプリンタを探索する。続けて、ユーザは、探索で見つかった出力先プリンタの中から、所望のプリンタを選択する。ここでは、CPS404に印刷ジョブを送信する仮想プリンタが出力先プリンタとして選択されたものとして説明する。図示省略の印刷設定画面を介して印刷開始の指示を受け付けると、クライアント端末402は、CPS405に対して印刷ジョブを送信する。ステップS1002では、CPS405は、その印刷ジョブをCPS404が提供する仮想プリンタに転送すべきジョブを保存する第1の保存領域(スプール領域、第1の記憶領域)に保存(格納)する。第1の保存領域は、CPS405がCPS404を経由して画像形成装置407に印刷を行わせる印刷ジョブを保存領域である。
【0052】
ステップS1003では、クラウドプリントサービス連携しているCPS404は、CPS405に新規の印刷ジョブが保存されたことを検知し、印刷ジョブ情報取得要求をCPS405に送信する。当該要求には、仮想プリンタを一意に特定するためのIDが含まれる。検知方法は、前述した
図2と
図3のように、CPS404は、一定時間ごとにCPS405に対して印刷ジョブ情報取得要求を送信するポーリング形式でもよいし、CPS405からCPS404へプッシュ通知で通知してもよい。ステップS1004では、CPS405は、CPS404の傘下の仮想プリンタが取得可能な印刷ジョブを特定し、当該特定した印刷ジョブの名称や設定情報などを含む印刷ジョブ情報を生成する。続けて、CPS405は、当該生成した印刷ジョブ情報をCPS404に送信する。この処理で、第1記憶領域にスプールされている待ち状態の印刷ジョブの書誌情報がCPS404に通知される。
【0053】
図11は、ステップS1003の印刷ジョブ情報取得要求1101とステップS1004の印刷ジョブ情報取得応答1102のパケット例を示す図である。ここでは、通信プロトコルとしてIPPを用いて説明するが、他のプロトコルを用いてもよい。印刷ジョブ情報取得要求1101は、全ユーザの印刷ジョブを取得したいため、IPP属性のWhich-Job属性をFalseにし、取得したいジョブ属性情報を含め、Get-Jobsオペレーションを送信する。また、印刷ジョブ情報取得応答1102は、各印刷ジョブのID、名称、部数、色設定、印刷ジョブオーナー名などの要求された印刷ジョブの書誌情報を示す属性情報を含んだ応答である。
【0054】
ステップS1005では、クライアント端末402は、CPS405へユーザの印刷ジョブ状況問い合わせを送信する。この時点では、CPS405の印刷ジョブがまだ印刷されずに、CPS405のストレージに保存されている。そのため、ステップS1006では、CPS405は、クライアント端末402に印刷ジョブ状況として、保存中であることを示すPendingやPending-Heldの応答を送信する。CPS405は、ステップS1002で第1の保存領域に印刷ジョブが保存された後であり、ステップS1030で第1の保存領域から印刷ジョブが削除される前では、印刷ジョブの未完了を示す印刷ジョブ状況をクライアント端末402に送信する。これにより、クライアント端末402は、正しいジョブ状況を把握できる。
【0055】
その後、ステップS1007では、ユーザは、印刷を実行するため、画像形成装置407へログインする。ステップS1008では、画像形成装置407は、ログインを検知すると、ログインしたユーザの印刷ジョブ情報取得要求をCPS404へ送信する。ステップS1009では、CPS404は、印刷ジョブ情報取得要求を受信すると、そのユーザのみの印刷ジョブ情報を画像形成装置407に送信する。
【0056】
図12は、ステップS1008の印刷ジョブ情報取得要求1201とステップS1009の印刷ジョブ情報取得応答1202のパケット例を示す図である。印刷ジョブ情報取得要求1201は、特定ユーザのみの印刷ジョブ情報のみを要求するため、Which-Job属性をTrueにして、ユーザ名をRequesting-user-nameで指定している。ここで、ユーザ名は、Requesting-user-uriなどの一意に識別できるものであれば、他の属性を使用してもよい。これにより、ステップS1010では、画像形成装置407は、受信した印刷ジョブ情報の一覧を
図8のように画像形成装置407の操作部に表示する。
【0057】
ステップS1011では、ユーザは、
図8の印刷ジョブ情報の一覧から印刷したい任意の印刷ジョブを1つ選択する。すると、画像形成装置407は、印刷ジョブ情報を基に、選択された印刷ジョブの印刷実行の指示を入力する。ステップS1012では、画像形成装置407は、CPS404に対して、画像形成装置407のシリアルナンバー933および選択された印刷ジョブのジョブID1031とともに、選択された印刷ジョブの印刷要求を送信する。
【0058】
ここで、CPS404は、CPS405から印刷設定などの書誌情報を示す印刷ジョブ情報のみを取得している状態である。即ち、CPS404のストレージには実際の印刷ジョブ(実の印刷データ)を保存していない状態であり、この時点ではCPS405が印刷ジョブ(実の印刷データ)を保存している。ステップS1013では、CPS404は、選択された印刷ジョブの印刷要求を画像形成装置407から受信する。当該要求にはシリアルナンバー等の、画像形成装置407を一意に特定する情報が含まれている。すると、CPS404は、要求に含まれる画像形成装置407を一意に特定する情報を用いて、CPS405の傘下に登録されたCPS404を経由せずに画像形成装置407に印刷ジョブを転送できる出力先プリンタのID(出力プリンタID932)を取得する。
【0059】
ステップS1014では、CPS404は、CPS405に対して、出力プリンタID932とともに、プリンタ登録状況確認要求を送信する。S1015では、CPS405はCPS405の傘下のプリンタに出力プリンタID932の属性をもつ、CPS404を経由せずに画像形成装置407に印刷ジョブを転送できるプリンタが登録されているか否かを確認する。そして、CPS405は、CPS404に登録状況応答として、CPS404を経由せずに画像形成装置407に印刷ジョブを転送できるプリンタがCPS405に登録されているか否かを送信する。
【0060】
[登録済み]
ステップS1015で、CPS405がCPS404に登録状況応答として、CPS404を経由せずに画像形成装置407に印刷ジョブを転送できるプリンタがCPS405に登録されている旨を送信する場合を説明する。ステップS1016では、CPS404は、登録されている旨の応答を受信すると、出力対象の画像形成装置407の出力プリンタID932とユーザが指定した印刷ジョブのジョブID1031を含む、印刷ジョブ移動要求をCPS405に送信する。S1017では、CPS405は、印刷ジョブ移動要求を受信すると、S1002で第1の保存領域に保存されたジョブID1031の印刷ジョブを出力プリンタID932に合致する傘下のプリンタジョブ保存領域(第2の保存領域、第2の記憶領域)に移動させる。第2の保存領域は、CPS405がCPS404を経由せずに画像形成装置407に印刷を行わせる印刷ジョブを保存する領域である。ステップS1018では、CPS405は、印刷ジョブ移動要求に対して、成否を示す印刷ジョブ移動応答をCPS404に送信する。当該処理は、CPS404経由で印刷する仮想プリンタ用のプリントキューに記憶されている印刷ジョブを、CPS404を経由せずに画像形成装置407に印刷ジョブを転送できるプリンタ用のプリントキューに移動することを意味する。印刷ジョブ移動応答は、所定の通知である。
【0061】
図13は、ステップS1016の印刷ジョブ移動要求1301とステップS1018の印刷ジョブ移動応答1302のパケット例を示す図である。印刷ジョブ移動要求1301は、出力対象の特定の印刷ジョブと出力先の画像形成装置407を指定するためにjob-idとto-printer-idをそれぞれ指定している。ここで、to-printer-idは、一意に識別できるものであれば、出力対象の画像形成装置407の印刷ジョブの格納先のspool-uriなどでもよい。
【0062】
ステップS1019では、画像形成装置407は、
図2のポーリングまたは
図3のイベント形式でCPS405上で新規の印刷ジョブが発生したことを検知し、CPS405に対して、印刷ジョブ取得要求を送信する。ステップS1020では、CPS405は、印刷ジョブ取得要求を受信すると、CPS405の第2の保存領域に保存されている印刷ジョブ(実際のプリントデータ)を画像形成装置407へ送信する。S1002の処理により、経路2で印刷を予定されていた仮想プリンタのスプール領域である第1の保存領域に保存されていたジョブID1031の印刷ジョブは、経路3で印刷を行うために用意されたスプール領域である第2の保存領域に移動されている。従って、ここでは、ジョブID1031に対応する印刷ジョブは、CPS404を経由せず直接画像形成装置407に送信されることになる。
【0063】
ステップS1021では、画像形成装置407は、CPS405から印刷ジョブを受信すると、その受信した印刷ジョブの印刷処理を実行する。ステップS1022では、画像形成装置407は、印刷処理が完了すると、印刷ジョブ状況として、完了通知をCPS404へ送信する。ステップS1023では、CPS404は、印刷ジョブ状況の完了通知を受信すると、そのまま該当印刷ジョブの印刷ジョブ状況として、完了通知をCPS405へ送信する。
【0064】
[登録なし]
ステップS1015で、CPS405がCPS404に登録状況応答として、画像形成装置407がCPS405に登録されていない旨を送信する場合を説明する。ステップS1024では、CPS404は、登録されていない旨の応答を受信すると、CPS405に対して、印刷ジョブ取得要求を送信する。ステップS1025では、CPS405は、印刷ジョブ取得要求を受信すると、CPS405の第1の保存領域に保存されている印刷ジョブをCPS404へ送信する。すなわち、CPS405は、他のクラウドプリントサービス宛に印刷ジョブを転送する。ステップS1026では、CPS404は、CPS405から印刷ジョブ(実際のプリントデータ)を受信すると、その受信した印刷ジョブを画像形成装置407へ送信する。
【0065】
ステップS1027では、画像形成装置407は、CPS404から印刷ジョブを受信すると、その受信した印刷ジョブの印刷処理を実行する。ステップS1028では、画像形成装置407は、印刷処理が完了すると、印刷ジョブ状況として、完了通知をCPS404へ送信する。ステップS1029では、CPS404は、印刷ジョブ状況の完了通知を受信すると、該当印刷ジョブの印刷ジョブ状況として、完了通知をCPS405へ送信する。
【0066】
ステップS1030では、CPS405は、ステップS1023またはS1029の印刷ジョブ状況の完了通知を受信すると、ステップS1002で保存された印刷ジョブをCPS405のストレージから削除する。ステップS1031では、クライアント端末402は、CPS405へジョブ状況問い合わせを送信する。ステップS1032では、CPS405は、印刷ジョブが完了しているので、クライアント端末402へ印刷ジョブ状況として、完了応答を送信する。CPS405は、ステップS1030で印刷ジョブが削除された後では、印刷ジョブの完了を示す印刷ジョブ状況をクライアント端末402に送信する。
【0067】
これにより、クライアント端末402は、常に正しい印刷ジョブ状況の把握ができる。印刷ジョブは、CPS405のストレージにしか保存されず、CPS404に転送されないため、最小限のストレージ消費と通信量を実現できる。
【0068】
このように、ユーザにより、印刷実行要求が実施されても、CPS404は、印刷ジョブを保存しない。画像形成装置407に印刷ジョブ情報の一覧を表示させるだけなら、CPS404は、印刷ジョブを保存する必要がなく、印刷ジョブ情報だけ取得すれば、充分である。
【0069】
図14は、CPS404の処理方法を示すフローチャートである。ステップS1401では、CPU701は、イベントを受信するまで、待ち状態となっている。CPU701は、CPS405からプッシュ通知の印刷ジョブ保存通知を受信した場合、またはCPS405への定期送信のタイマー時間のイベントが発生した場合には、ステップS1402に進む。また、CPU701は、画像形成装置407から印刷ジョブ情報取得要求を受信した場合には、ステップS1405に進む。また、CPU701は、画像形成装置407から選択された印刷ジョブの印刷要求を受信した場合には、ステップS1406に進む。
【0070】
ステップS1402では、CPU701は、CPS405へ印刷ジョブ情報取得要求を送信する。当該要求にはCPS405の傘下の経路2で印刷を行う仮想プリンタを特定するための情報が含まれる。次に、ステップS1403では、CPU701は、CPS405から印刷ジョブ情報を受信する。次に、ステップS1404では、CPU701は、CPS404が保存している印刷ジョブ情報を更新し、ステップS1401に戻る。
【0071】
ステップS1405では、CPU701は、CPS404が保存している印刷ジョブ情報の中から、要求されたユーザの印刷ジョブ情報のみを抽出し、その抽出した印刷ジョブ情報を画像形成装置407に送信し、ステップS1401に戻る。
【0072】
ステップS1406では、CPU701は、CPS405へプリンタ登録状況確認要求を送信する。ステップS1407では、CPU701は、CPS405から登録状況応答を受信する。すると、CPU701は、画像形成装置407がCPS405に登録されていない場合には、ステップS1408に進み、画像形成装置407がCPS405に登録済みである場合には、ステップS1413に進む。
【0073】
ステップS1413では、CPU701は、CPS405に前述のシーケンスで説明した印刷ジョブ移動要求を送信し、ステップS1411へ進む。
【0074】
ステップS1408では、CPU701は、CPS405に印刷ジョブ取得要求を送信する。次に、ステップS1409では、CPU701は、CPS405から印刷ジョブを受信する。次に、ステップS1410では、CPU701は、受信した印刷ジョブをそのまま画像形成装置407へ送信し、ステップS1411へ進む。
【0075】
ステップS1411では、CPU701は、画像形成装置407から印刷ジョブ状況を受信する。次に、ステップS1412では、CPU701は、CPS405へ印刷ジョブ状況を送信し、ステップS1401に戻る。
【0076】
(第2の実施形態)
<CPS404がCPS405に存在する印刷ジョブの移動を可能にする処理>
本発明の第2の実施形態では、CPS404がCPS405に存在する印刷ジョブを実際の出力対象である画像形成装置407のジョブ保存領域へ移動を可能にするための設定更新処理について説明する。CPS405上のジョブ移動を行えるかどうかを画像形成装置毎に設定可能とすることで、クラウドプリントサービス毎や画像形成装置に応じてジョブ移動の可否を設定するという運用が可能となる。
【0077】
図15は、CPS405が画像形成装置407~409毎にジョブ保存領域へ移動を許可するか否かを設定可能な場合の、CPS405への画像形成装置407の登録およびCPS404への情報登録処理の一部を示すシーケンス図である。
図15は、
図9のステップS917~S922の処理の抜粋であり、同一のステップ番号は同一の処理を示している。
図15は、
図9に対して、ステップS1501~S1504を追加したものである。ステップS1501~S1504は、画像形成装置407のジョブ保存領域へCPS405が移動を可能にするための設定更新処理である。
【0078】
ステップS921では、画像形成装置407は、CPS405の情報登録要求をCPS404に送信する。ステップS1501では、CPS404のCPU701は、情報登録要求を受信し、CPS405の傘下に登録された、CPS404を経由せずに画像形成装置407に印刷ジョブを転送できるプリンタのプリンタID932を特定する。続けて、CPS404のCPU701は、当該特定したプリンタID932を含む共有状態確認要求をCPS405へ送信する。共有状態確認要求は、移動許可確認要求である。
【0079】
ステップS1502では、CPS405は、共有状態確認要求を受信し、プリンタID932を参照し、印刷ジョブをプリンタID932に対応するジョブ保存領域(スプール領域)に移動させることが許可されているか否かを判定する。CPS405は、許可されていない場合には、共有なしとして、プリンタ共有状態をCPS404に送信する。共有なしのプリンタ共有状態は、印刷ジョブを画像形成装置407のジョブ保存領域に移動させることの不許可情報である。
【0080】
ステップS1503では、CPS404のCPU701は、プリンタ共有状態として共有なしを受信すると、プリンタID932を含む共有追加要求をCPS405へ送信する。共有追加要求は、印刷ジョブを画像形成装置407のジョブ保存領域に移動させることの移動許可要求である。この要求は例えば、CPS405が提供するAPIに基づき行われる。
【0081】
ステップS1504では、CPS405は、共有追加要求を受信すると、印刷ジョブを画像形成装置407のジョブ保存領域に移動させることを許可するように設定を更新し、共有追加応答をCPS404へ送信する。なお、CPS404のテナント上のポリシにより、APIを用いた外部からの設定変更が禁止されている場合もある。この場合、当該要求は失敗することになる。追加要求に失敗した場合、CPS404を経由せずに画像形成装置407に印刷ジョブを転送できるプリンタがCPS404の傘下に登録されていない場合と同様の処理が行われる。すなわち、
図5や
図10の登録なしの代替シーケンスで例示した、CPS405からCPS404に印刷ジョブを構成するプリントデータを転送し、更に、当該プリントデータを画像形成装置407に転送するシーケンスが採用される。
【0082】
ステップS922では、CPS404のCPU701は、共有追加応答を受信すると、シリアルナンバー933に該当する画像形成装置407の情報にプリンタID932の情報を付加し、プリンタ情報登録応答を画像形成装置407に送信する。
【0083】
上記のように、印刷システムは、CPS405上のジョブ移動を行えるかどうかを画像形成装置407~409毎に設定可能である。その場合においても、ユーザがCPS405に対して画像形成装置407を登録するだけで、容易に、CPS404から実際に出力する画像形成装置407へのジョブ移動(
図10のステップS1016およびS1017)が可能となる。
【0084】
図16は、CPS405が画像形成装置407~409毎にジョブ保存領域へ移動を許可するか否かを設定可能な場合の、CPS404の印刷制御処理の一部を示すシーケンス図である。
図16は、
図10のステップS1011~S1016の処理の抜粋であり、同一のステップ番号は同一の処理を示している。
図16は、
図10に対して、ステップS1601~S1604を追加したものである。
【0085】
ステップS1014では、CPS404のCPU701は、CPS405にプリンタの登録状況確認要求を送信する。ステップS1015では、CPS405は、画像形成装置407の登録状況応答をCPS404に送信する。画像形成装置407の登録状況応答として登録済みの場合には、ステップS1016で、CPS404のCPU701は、印刷ジョブ移動要求をCPS405へ送信する。そのため、CPS404では、CPS405に存在する画像形成装置407のジョブ保存領域へのジョブの移動が許可されている必要がある。ステップS1601~S1604は、印刷制御処理フローの中で、画像形成装置407のジョブ保存領域へCPS404が移動を可能にするための設定更新処理である。
【0086】
ステップS1015の後、CPS404のCPU701は、画像形成装置407の登録状況応答として、登録済みを受信した場合には、ステップS1601に進む。ステップS1601では、CPS404のCPU701は、画像形成装置407のIDであるプリンタID932を含む共有状態確認要求をCPS405に送信する。共有状態確認要求は、移動許可確認要求である。
【0087】
ステップS1602では、CPS405は、共有状態確認要求を受信すると、プリンタID932を参照し、印刷ジョブを画像形成装置407のジョブ保存領域に移動させることが許可されているか否かを判定する。CPS405は、許可されていない場合には、共有なしとしてプリンタ共有状態をCPS404に送信する。共有なしのプリンタ共有状態は、印刷ジョブを画像形成装置407のジョブ保存領域に移動させることの不許可情報である。
【0088】
ステップS1603では、CPS404のCPU701は、共有状態として共有なしを受信した場合には、プリンタID932を含む共有追加要求をCPS405へ送信する。共有追加要求は、印刷ジョブを画像形成装置407のジョブ保存領域に移動させることの移動許可要求である。
【0089】
ステップS1604では、CPS405は、共有追加要求を受信すると、印刷ジョブを画像形成装置407のジョブ保存領域に移動させることを許可するように設定を更新し、共有追加応答をCPS404へ送信する。
【0090】
ステップS1016では、CPS404のCPU701は、共有追加応答を受信すると、出力対象の画像形成装置407の出力プリンタID932とユーザが指定した印刷ジョブのジョブID1031を含む、印刷ジョブ移動要求をCPS405に送信する。
【0091】
以上のように、印刷システムは、CPS405上のジョブ移動を行えるかどうかを画像形成装置407~409毎に設定可能である。その場合においても、ユーザが画像形成装置407から印刷指示を行う際に、ジョブ移動を許可するか否かの設定が更新され、CPS404から実際に出力する画像形成装置407へのジョブ移動(
図10のステップS1016およびS1017)が可能となる。
【0092】
印刷システムは、CPS405上のジョブ移動を行えるかどうかを画像形成装置407~409毎に設定可能である。その場合、印刷システムは、
図15の画像形成装置407の登録時または画像形成装置407での印刷時に自動的にジョブ移動を許可するか否かの設定を更新する。これにより、印刷システムは、画像形成装置407が追加されるたびに、追加で設定を行うことなく、容易に、CPS404から実際に出力する画像形成装置407へのジョブ移動(
図10のステップS1016およびS1017)が可能となる。
【0093】
なお、CPS404がCPS405へ共有追加要求(
図16のステップS1603)の権限を適切に管理するために、あらかじめ連携先のCPS404が共有追加を可能とするか否かを設定できるようにしてもよい。
【0094】
第1および第2の実施形態によれば、印刷システムは、CPS405に画像形成装置407を登録する際に、CPS405上で画像形成装置407を一意に識別するプリンタID932をCPS404にも登録する。これにより、CPS404は、CPS405上の画像形成装置407の特定が可能となる。
【0095】
CPS404は、画像形成装置407からの印刷要求を受信した際、印刷ジョブの保存先のCPS405から印刷ジョブを取得することなく、CPS405に保存されている印刷ジョブを画像形成装置407のジョブ保存領域へ移動させる要求を行う。これにより、画像形成装置407の登録をCPS405に行うだけで、印刷ジョブは、CPS405からCPS404に転送されることなく、画像形成装置407がCPS405のストレージに保存されている印刷ジョブを取得可能となる。印刷ジョブがCPS405のストレージのみに保存され、保存リソースの重複、および転送量の増大という課題を解決できる。
【0096】
(変形例)
第2の実施形態では、CPS404がCPS405に対してAPIを用いて許可要求を送信する場合を例示したが、これに限定されるものではない。例えば、CPS405のテナント管理者等がCPS404のデバイス管理画面等を介して、CPS404経由で印刷を実現する仮想プリンタと、CPS404を経由せずに画像形成装置407に印刷ジョブを転送できるプリンタの共有設定を行うようにしてもよい。
【0097】
また、第1の実施形態および第2の実施形態では、CPS404がジョブ移動の要求を行うことで、CPS405上でのジョブ移動を実現する場合を例示した。しかしながら、ジョブ移動を行うかどうかの判断は上述の方式に限定されるものではない。例えば、CPS405が自発的に、CPS404経由で印刷する仮想プリンタ用に設けられた第1の保存領域に保存された印刷ジョブを第2の保存領域に移動する移動処理を行うかどうかを判断するように構成することもできる。
【0098】
具体的に説明する。S1012で説明した選択ジョブ印刷要求を受信したCPS404は、当該要求をCPS405に転送する。CPS405は、他のCPSを経由することが分かっている仮想プリンタのジョブを印刷する印刷要求を受け付けた場合、更に以下の処理を実行する。
【0099】
まず、CPS405は、当該要求に含まれるシリアル番号に基づき印刷のための物理的なリソースを備える印刷装置が画像形成装置407であることを特定する。続けて、CPS405は、CPS405の配下に、CPS404を経由せずに画像形成装置407に印刷ジョブを転送できるプリンタが登録されているかどうかを判断する。登録されている場合、CPS405は、CPS404経由で印刷する仮想プリンタ用に設けられた第1領域に保存された印刷ジョブを、当該CPS404を経由せずに画像形成装置407に印刷ジョブを転送できるプリンタ用のスプール領域に移動する。
【0100】
そして、CPS405は、CPS404に対してコスト削減のために別経路(経路3)で印刷ジョブを画像形成装置407に送信することを示す応答を送信する。一方、CPS404を経由せずに画像形成装置407に印刷ジョブを転送できるプリンタが登録されていない場合、選択ジョブ印刷要求に対応する印刷ジョブ(実際のプリントデータ)をCPS404に送信するように制御する。以上説明した変形例により、CPS405側でジョブ移動を行うかどうか判断することが可能となる。
【0101】
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0102】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【0103】
401~403 クライアント端末、404~406 CPS、407~409 画像形成装置