(57)【要約】【課題】クラウド印刷環境においてロック印刷機能を提供することを目的とする。【解決手段】クラウド印刷環境においてロック印刷要求を管理する手法が提供される。クラウド印刷環境において、クラウド印刷サービスプロバイダは、インターネットのようなネットワーク上でクラウド印刷サービスプロバイダと通信するように構成されたいずれかの印刷デバイスによる処理のために、クライアントデバイスが印刷要求を送信することを可能にするプラットフォームを提供する。印刷デバイスは、クラウド印刷プラットフォームを介してクライアントデバイスから受信したロック印刷要求を管理するように構成されたクラウド印刷エージェントを有する。クラウド印刷エージェントは、ユーザにより送出された印刷ジョブの印刷ジョブデータが期限近くになっている場合にユーザに通知するように更に構成されてもよい。【選択図】図１
2015165394.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のプロセッサと、命令を格納するメモリとを有する印刷デバイスであって、
前記命令は、前記１つ以上のプロセッサにより処理された場合、
クラウド印刷サービスプロバイダから、ロック印刷ジョブの印刷ジョブ設定データを受信させ、ただし、前記印刷ジョブ設定データは、ユーザを識別するデータと、前記ロック印刷ジョブに関連する印刷データの前記クラウド印刷サービスプロバイダにおける格納位置とを含み、前記印刷データは、前記印刷デバイスにより処理された場合、前記印刷データに表された電子ドキュメントの印刷したものを生成させ、
前記印刷ジョブ設定データに少なくとも部分的に基づいて、前記印刷データの期限の推定時刻を決定させ、
前記印刷データの前記期限の推定時刻が現在時刻の指定期間内にあることを決定することにより、前記期限の推定時刻に基づいて、前記印刷データが期限近くになっていることを検出させ、
前記印刷データが期限近くになっていることを検出したことに応じて、前記印刷データが期限近くになっていることを示す警告を前記ユーザに送信させる印刷デバイス。
【請求項２】
前記メモリは、前記１つ以上のプロセッサにより処理された場合、
前記印刷デバイスにおいて前記ユーザを認証するユーザ入力を受け付けさせ、
前記印刷デバイスにおいて前記ユーザを認証する前記ユーザ入力を受け付けたことに応じて、前記ロック印刷ジョブが前記印刷デバイスで処理されることを可能にさせる命令を更に有する、請求項１に記載の印刷デバイス。
【請求項３】
前記印刷データは、前記クラウド印刷サービスプロバイダに格納される、請求項１に記載の印刷デバイス。
【請求項４】
前記メモリは、前記１つ以上のプロセッサにより処理された場合、
前記印刷データを格納する時間の長さを指定するユーザ入力を受け付けさせ、
前記クラウド印刷サービスプロバイダに対して前記指定された時間の長さの間、前記印刷データを格納させるコマンドを、前記クラウド印刷サービスプロバイダに送信させる命令を更に有する、請求項３に記載の印刷デバイス。
【請求項５】
前記印刷データは、前記印刷デバイスに格納される、請求項１に記載の印刷デバイス。
【請求項６】
前記メモリは、前記１つ以上のプロセッサにより処理された場合、
前記印刷デバイスに前記印刷データを格納する時間の長さを指定するユーザ入力を受け付けさせ、
前記指定された時間の長さの間、前記印刷データを格納するように前記印刷デバイスを構成させる命令を更に有する、請求項５に記載の印刷デバイス。
【請求項７】
前記メモリは、前記１つ以上のプロセッサにより処理された場合、
前記印刷データが期限近くになっていることを検出したことに応じて、前記クラウド印刷サービスプロバイダから前記印刷データを取得させ、前記印刷データを前記印刷デバイスに格納させる命令を更に有する、請求項２に記載の印刷デバイス。
【請求項８】
前記メモリは、前記１つ以上のプロセッサにより処理された場合、
前記印刷データが期限近くになっていることを検出したことに応じて、前記クラウド印刷サービスプロバイダから前記印刷データを取得させ、前記印刷データを前記印刷デバイスと同じローカルネットワークにあるサーバに格納させる命令を更に有する、請求項１に記載の印刷デバイス。
【請求項９】
前記警告は、電子メール、インスタントメッセージ及びテキストメッセージのうち１つ以上を含む、請求項１に記載の印刷デバイス。
【請求項１０】
１つ以上の命令を格納した１つ以上のコンピュータ読み取り可能媒体であって、
前記１つ以上の命令は、１つ以上のプロセッサにより処理された場合、
クラウド印刷サービスプロバイダから、ロック印刷ジョブの印刷ジョブ設定データを受信させ、ただし、前記印刷ジョブ設定データは、ユーザを識別するデータと、前記ロック印刷ジョブに関連する印刷データの前記クラウド印刷サービスプロバイダにおける格納位置とを含み、前記印刷データは、印刷デバイスにより処理された場合、前記印刷データに表された電子ドキュメントの印刷したものを生成させ、
前記印刷ジョブ設定データに少なくとも部分的に基づいて、前記印刷データの期限の推定時刻を決定させ、
前記印刷データの前記期限の推定時刻が現在時刻の指定期間内にあることを決定することにより、前記期限の推定時刻に基づいて、前記印刷データが期限近くになっていることを検出させ、
前記印刷データが期限近くになっていることを検出したことに応じて、前記印刷データが期限近くになっていることを示す警告を前記ユーザに送信させる１つ以上のコンピュータ読み取り可能媒体。
【請求項１１】
前記１つ以上のプロセッサにより処理された場合、
前記印刷デバイスにおいて前記ユーザを認証するユーザ入力を受け付けさせ、
前記印刷デバイスにおいて前記ユーザを認証する前記ユーザ入力を受け付けたことに応じて、前記ロック印刷ジョブが前記印刷デバイスで処理されることを可能にさせる更なる命令を更に有する、請求項１０に記載の１つ以上のコンピュータ読み取り可能媒体。
【請求項１２】
前記印刷データは、前記クラウド印刷サービスプロバイダに格納される、請求項１０に記載の１つ以上のコンピュータ読み取り可能媒体。
【請求項１３】
前記１つ以上のプロセッサにより処理された場合、
前記印刷データを格納する時間の長さを指定するユーザ入力を受け付けさせ、
前記クラウド印刷サービスプロバイダに対して前記指定された時間の長さの間、前記印刷データを格納させるコマンドを、前記クラウド印刷サービスプロバイダに送信させる更なる命令を更に有する、請求項１２に記載の１つ以上のコンピュータ読み取り可能媒体。
【請求項１４】
前記印刷データは、前記印刷デバイスに格納される、請求項１０に記載の１つ以上のコンピュータ読み取り可能媒体。
【請求項１５】
前記１つ以上のプロセッサにより処理された場合、
前記印刷デバイスに前記印刷データを格納する時間の長さを指定するユーザ入力を受け付けさせ、
前記指定された時間の長さの間、前記印刷データを格納するように前記印刷デバイスを構成させる更なる命令を更に有する、請求項１４に記載の１つ以上のコンピュータ読み取り可能媒体。
【請求項１６】
前記１つ以上のプロセッサにより処理された場合、
前記印刷データが期限近くになっていることを検出したことに応じて、前記クラウド印刷サービスプロバイダから前記印刷データを取得させ、前記印刷データを前記印刷デバイスに格納させる更なる命令を更に有する、請求項１０に記載の１つ以上のコンピュータ読み取り可能媒体。
【請求項１７】
前記１つ以上のプロセッサにより処理された場合、
前記印刷データが期限近くになっていることを検出したことに応じて、前記クラウド印刷サービスプロバイダから前記印刷データを取得させ、前記印刷データを前記印刷デバイスと同じローカルネットワークにあるサーバに格納させる更なる命令を更に有する、請求項１０に記載の１つ以上のコンピュータ読み取り可能媒体。
【請求項１８】
前記警告は、電子メール、インスタントメッセージ及びテキストメッセージのうち１つ以上を含む、請求項１０に記載の１つ以上のコンピュータ読み取り可能媒体。
【請求項１９】
コンピュータにより実施される方法であって、
クラウド印刷サービスプロバイダから、ロック印刷ジョブの印刷ジョブ設定データを受信するステップであり、ただし、前記印刷ジョブ設定データは、ユーザを識別するデータと、前記ロック印刷ジョブに関連する印刷データの前記クラウド印刷サービスプロバイダにおける格納位置とを含み、前記印刷データは、印刷デバイスにより処理された場合、前記印刷データに表された電子ドキュメントの印刷したものを生成させるステップと、
前記印刷ジョブ設定データに少なくとも部分的に基づいて、前記印刷データの期限の推定時刻を決定するステップと、
前記印刷データの前記期限の推定時刻が現在時刻の指定期間内にあることを決定することにより、前記期限の推定時刻に基づいて、前記印刷データが期限近くになっていることを検出するステップと、
前記印刷データが期限近くになっていることを検出したことに応じて、前記印刷データが期限近くになっていることを示す警告を前記ユーザに送信するステップと
を有するコンピュータにより実施される方法。
【請求項２０】
前記印刷デバイスにおいて前記ユーザを認証するユーザ入力を受け付けるステップと、
前記印刷デバイスにおいて前記ユーザを認証する前記ユーザ入力を受け付けたことに応じて、前記ロック印刷ジョブが前記印刷デバイスで処理されることを可能にするステップと
を更に有する、請求項１９に記載のコンピュータにより実施される方法。
【発明の詳細な説明】
【技術分野】
【０００１】
実施例は、概してクラウド印刷環境においてロック印刷要求を管理することに関する。
【背景技術】
【０００２】
この部分に記載の手法は、遂行され得る手法であるが、必ずしも以前に考慮又は遂行された手法であるとは限らない。従って、特に言及しない限り、この部分に記載の手法は、本願の請求項に対する従来技術にはならず、この部分に含まれることにより、従来技術であると認められるものではない。
【０００３】
概して、クラウド印刷サービスは、エンドユーザがインターネットのようなネットワーク上でクライアントデバイスから印刷デバイスにアクセスすることを可能にする。クラウド印刷サービスプロバイダを使用して、エンドユーザは、１つ以上のユーザアカウントについて１つ以上の印刷デバイスをクラウド印刷サービスプロバイダに登録することができる。印刷デバイスを登録した後に、ユーザは、ラップトップ又はモバイルデバイスのようなクライアントデバイスを使用し、クラウド印刷サービスプロバイダを介して処理するために印刷デバイスに送信される印刷ジョブを送出する。クラウド印刷サービスを使用してクライアントデバイスから受信した印刷ジョブを処理するように印刷デバイスを構成することにより、ユーザのクライアントデバイスは、特定のプリンタドライバをインストールする必要はない。また、印刷要求を送出するために印刷デバイスと直接通信することができる必要もない。
【０００４】
典型的には、クラウド印刷サービスは、印刷ジョブを送出直後に印刷デバイスにプッシュするため、エンドユーザが印刷要求を送出することと、選択された印刷デバイスが印刷ジョブの電子ドキュメントの印刷出力を生成することとの間の遅延は短くなる可能性がある。印刷出力が準備できたときにユーザがプリンタの近くに物理的に存在しない場合、他人が印刷出力への無許可のアクセスを得る可能性がある。
【０００５】
クラウドでない印刷環境では、印刷デバイスは、印刷出力へのアクセスに対する制御を提供するために、「ロック印刷（locked  printing）」として知られる機能で構成されることがある。ロック印刷機能が有効になっており、印刷ジョブが印刷デバイスに送信されると、ユーザが印刷デバイスで認証データを入力して認証データが確認されるまで、印刷ジョブの処理が延期される。認証データの確認が成功すると、印刷デバイスは、印刷ジョブが処理されるのを可能にする、すなわち、印刷ジョブの電子ドキュメントの印刷出力が生成されるのを可能にする。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ロック印刷機能を有する印刷デバイスはクラウドでない印刷環境では有用であるが、現在のクラウド印刷サービスは、ユーザがロック印刷ジョブを登録された印刷デバイスに送出することを可能にする機能をサポートしない。前述のことに基づいて、クラウド印刷環境においてロック印刷機能を提供する手法の必要性が存在する。
【課題を解決するための手段】
【０００７】
クラウド印刷環境においてロック印刷要求を管理する手法が提供される。印刷デバイスは、クラウド印刷サービスプロバイダから、ロック印刷ジョブの印刷ジョブ設定を受信するように構成される。印刷ジョブ設定データは、ユーザを識別するデータと、ロック印刷ジョブに関連する印刷データのクラウド印刷サービスプロバイダの格納位置とを含む。印刷データは、印刷デバイスにより処理された場合、印刷データにより表される電子ドキュメントの印刷したものを生成させる。印刷ジョブ設定データに少なくとも部分的に基づいて、印刷データの期限の推定時刻が決定される。期限の推定時刻に基づいて、印刷データが期限近くになっているかが検出される。印刷データが期限近くになっていることを検出することは、印刷データの期限の推定時刻が現在時刻の指定期間内であることを決定することを含んでもよい。印刷データが期限近くになっていることを検出したことに応じて、印刷データが期限近くになっていることを示す警告がユーザに送信される。
【図面の簡単な説明】
【０００８】
【図１】クラウド印刷環境においてロック印刷要求を処理するシステムの構成を示すブロック図
【図２Ａ】例示的な印刷方法選択画面を示す図
【図２Ｂ】例示的なクラウド印刷デバイス選択画面を示す図
【図２Ｃ】例示的なロック印刷要求設定画面を示す図
【図３】クラウド印刷環境においてロック印刷ジョブを受信するフローチャート
【図４Ａ】印刷データの期限が近づいていることをユーザに通知するフローチャート
【図４Ｂ】ロック印刷ジョブを処理するフローチャート
【図５】クラウド印刷環境においてロック印刷要求を処理する手法において、クライアントデバイスと、クラウド印刷サービスプロバイダと、印刷デバイスとの間でのメッセージの交換を示す第１のシーケンス図
【図６】クラウド印刷環境においてロック印刷要求を処理する手法において、クライアントデバイスと、クラウド印刷サービスプロバイダと、印刷デバイスとの間でのメッセージの交換を示す第２のシーケンス図
【図７】実施例が実現され得る例示的なコンピュータシステムを示すブロック図
【発明を実施するための形態】
【０００９】
添付図面において、同様の参照符号は同様の要素を示す。
【００１０】
以下の説明では、説明の目的で、本発明の完全な理解を提供するために複数の特定の詳細が示されている。しかし、実施例がこれらの特定の詳細なしに実施されてもよいことは、当業者に明らかである。他にも、実施例を不要に曖昧にすることを回避するため、周知の構造及びデバイスはブロック図形式で示されていない。
【００１１】
I.概要
II.システムアーキテクチャ
A.クライアントデバイス
B.印刷デバイス
C.クラウド印刷サービスプロバイダ
III.ロック印刷要求の受信
IV.印刷データの期限のユーザへの通知
V.ロック印刷要求の処理
VI.例示的な通信の交換
VII.実現機構
＜I.概要＞
クラウド印刷環境においてロック印刷要求を管理する手法が提供される。クラウド印刷環境では、クラウド印刷サービスプロバイダは、インターネットのようなネットワーク上でクラウド印刷サービスプロバイダと通信するように構成されたいずれかの印刷デバイスによる処理のため、クライアントデバイスが印刷要求を送信することを可能にするプラットフォームを提供する。一実施例によれば、印刷デバイスは、クラウド印刷プラットフォームを介してクライアントデバイスから受信したロック印刷要求を管理するように構成されたクラウド印刷エージェントを有する。これに関して、ロック印刷要求は、印刷ジョブに関連するユーザが印刷デバイスにより認証されるまで、印刷ジョブの処理が延期される印刷ジョブを示す要求である。
【００１２】
ユーザがクライアントデバイスでロック印刷ジョブを生成することと、宛先の印刷デバイスがユーザ認証データを確認してロック印刷ジョブを処理することとの間の時間の間に、印刷ジョブに関連するデータ（例えば、印刷ジョブ設定及び印刷データ）は、クラウドサービスプロバイダ及び印刷デバイスのうち１つ以上により格納されてもよい。しかし、クラウド印刷サービスプロバイダ又は印刷デバイスがいつまでも印刷ジョブを格納することは望ましくないことがあるため、クラウド印刷サービスプロバイダ及び／又は印刷デバイスは、格納された印刷ジョブデータをある期間（ここでは、印刷ジョブデータの「期限」と呼ばれる）の後に利用不可能にさせてもよい。印刷ジョブデータの期限の正確な時刻は、ロック印刷要求を送出したユーザには概して未知でもよく、或いは、ユーザは最初に期限の時刻を認識するが、後で忘れてもよい。従って、実施例によれば、クラウド印刷エージェントは、ユーザにより送出された印刷ジョブの印刷データが期限近くになっている場合にユーザに通知するように構成される。他の実施例によれば、クラウド印刷サービスプロバイダにより格納された印刷データが期限近くになっていることを検出したことに応じて、クラウド印刷エージェントは、印刷データの有効性を延期する１つ以上の動作を実行してもよい。例えば、クラウド印刷エージェントは、印刷データが期限近くになっていることを検出したことに応じて、印刷データを取得して印刷デバイス又は他のローカル記憶デバイスに格納してもよい。これらの手法は、ユーザが印刷要求について印刷データの有効性をうまく管理することを支援することにより、クラウド印刷環境においてロック印刷機能を送出するユーザにとって、ユーザフレンドリーな経験を提供する。
【００１３】
＜II.システムアーキテクチャ＞
図１は、クラウド印刷環境におけるロック印刷のためのシステムの構成100を示すブロック図である。構成100は、ネットワーク108を介して通信可能に結合されたクライアントデバイス102と、印刷デバイス106と、クラウド印刷サービスプロバイダ104とを含む。ネットワーク108は、特定の実装に応じて変化してもよい広範囲の通信リンクを使用して実現されてもよい。ネットワーク108は、１つ以上のローカルエリアネットワーク（LAN）、広域ネットワーク（WAN）、インターネットのようなパケット交換ネットワーク、地上又は衛星リンク、又は他の種類の無線リンクを含んでもよい。LANはLocal  Area  Networkの略称である。WANはWide  Area  Networkの略称である。図１に示す要素はまた、相互に１つ以上の直接の通信リンクを有してもよい。
【００１４】
＜A.クライアントデバイス＞
クライアントデバイス102は、概して如何なる種類のコンピュータデバイスでもよい。クライアントデバイス102の例は、非限定的に、パーソナルコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、パーソナルデジタルアシスタント（PDA）及びスマートフォンを含む。PDAはpersonal  digital  assistantの略称である。クライアントデバイス102は、ここに記載の機能を実行するために、コンピュータハードウェア、コンピュータソフトウェア、又はコンピュータハードウェアとコンピュータソフトウェアとのいずれかの組み合わせで構成されてもよい。
【００１５】
図１のクライアントデバイス102の例示的な実現は、アプリケーション110と印刷クライアント112とで構成される。アプリケーション110は、概して如何なる種類のアプリケーションプロセスでもよい。アプリケーション110の例は、非限定的に、ワードプロセッサ、スプレッドシート・プログラム、電子メールクライアント、ウェブブラウザ等を含む。アプリケーション110及び印刷クライアント112は、クライアントデバイス102のユーザがクラウド印刷プラットフォームを介した印刷デバイス106による印刷のために、ロック印刷ジョブを生成することを可能にするプラットフォームを提供するように一緒に動作してもよい。一実施例では、アプリケーション110は、電子ドキュメント（例えば、テキストドキュメント、ウェブページ、画像）を表示するように構成され、印刷クライアント112は、印刷ドキュメントを印刷するためのグラフィカルユーザインタフェース（GUI）を提供するように構成される。GUIはgraphical  user  interfaceの略称である。印刷クライアント112により提供されるGUIを使用して、ユーザは、特定の印刷デバイスによる印刷ドキュメントのロック印刷を要求してもよく、印刷ジョブの他の印刷オプションを指定してもよい。印刷クライアント112は、アプリケーション110の統合された構成要素（すなわち、同じアプリケーションプロセスの一部）でもよく、プラグイン、アプリケーション拡張又はドライバのような別のアプリケーションプロセスでもよい。
【００１６】
図２Ａ〜２Ｃは、ユーザがクライアントデバイスにおいてロック印刷要求を生成することを可能にする例示的なGUIを示している。例えば、図２Ａ〜２Ｃに示す例示的なGUIは、ユーザがアプリケーション110により表示される電子ドキュメントを印刷することを要求したことに応じて、アプリケーション110及び／又は印刷クライアント112により生成されてもよい。図２Ａにおいて、GUI200Aは、印刷ジョブ設定202と、印刷方法オプション204とを含む。印刷ジョブ設定202は、ユーザが印刷する電子ドキュメントの特定のページ、コピー数、印刷方向等のような様々な印刷ジョブ設定を指定することを可能にするインタフェース要素を含む。印刷ジョブ設定202を使用して、ユーザは、印刷要求の一部として送信される印刷設定データに含まれ得る様々なプレファレンスを指定してもよい。
【００１７】
印刷方法オプション204は、ユーザが電子ドキュメントを印刷すする特定の方法を選択することを可能にする１つ以上のインタフェース要素を含む。この例では、ユーザは、システムダイアログを使用したドキュメントの印刷により、クライアントデバイス102にインストールされた印刷ドライバを使用して印刷要求を構成された印刷デバイスに送信すること、又はクラウド印刷サービスダイアログを使用してクラウド印刷サービスプロバイダに登録した印刷デバイスを選択することを選択してもよい。
【００１８】
図２Ｂは、ユーザがGUI200Aにおいてクラウド印刷サービスダイアログのオプションを選択したことに応じて生成され得る例示的なクラウド印刷デバイス選択画面を示している。図２Ｂにおいて、GUI200Bは、印刷デバイス選択リスト206と、クラウド印刷デバイス管理ボタン208とを含む。印刷デバイス選択リスト206は、選択された電子ドキュメントを印刷するための１つ以上の利用可能な宛先の印刷デバイスをリスト表示する。例えば、印刷デバイス選択リスト206に表示された印刷デバイスは、クラウド印刷サービスプロバイダに登録された印刷デバイスを含んでもよい。クラウド印刷サービスプロバイダに登録された印刷デバイスは、印刷デバイス管理ボタン208を選択することにより更に構成されてもよい。印刷デバイス管理ボタン208を選択することにより、ユーザがユーザのアカウントについて登録された印刷デバイスに関する設定を変更すること又は新たな印刷デバイスを登録することを可能にするユーザインタフェース画面が表示されてもよい。
【００１９】
図２Ｃは、ユーザがGUI200Bにおいて１つ以上の印刷デバイスを選択したことに応じて生成され得る例示的なクラウド印刷ジョブ設定インタフェースを示している。図２Ｃにおいて、GUI200Cは、ロック印刷設定210を含み、更なる印刷ジョブ設定を構成するための複数のインタフェース要素を含む。この例では、ロック印刷設定210は、ユーザがロック印刷要求に関連するユーザID及びパスワードを与えるのを可能にする２つのテキストフィールドを含む。例えば、ユーザID及びパスワードは、選択された印刷デバイスに送信されてもよく、選択された印刷デバイスは、以下に更に詳細に説明するように、選択された印刷デバイスにおいてユーザを認証するためにユーザID及びパスワードを使用してもよい。ユーザID及びパスワードのフィールドが図２Ｃの例に示されているが、実装に応じて如何なる種類の認証データがロック印刷設定210において指定されてもよい。指定され得る認証データの例は、非限定的に、パスワード、リリースコード、バイオメトリック認証、及びこれらの組み合わせを含む。一実施例では、ロック印刷設定210は、管理者又は他のユーザがGUI200Bによる表示のために構成した、カスタマイズされたフィールドを表してもよい。例えば、カスタマイズされたフィールドは、既存のクラウド印刷サービスプラットフォームへの拡張として実現されてもよい。他の実施例では、ロック印刷設定210は、クラウド印刷サービスプロバイダにより提供されるプラットフォームの一部として実現されてもよい。
【００２０】
＜B.印刷デバイス＞
印刷デバイス106は、印刷ジョブに表された電子ドキュメントの印刷したものを生成するように印刷ジョブを処理することができる如何なる種類のデバイスにより実現されてもよい。印刷デバイス106の例は、非限定的に、プリンタ、コピー機及び複合機（MFP）を含む。MFPはmulti-function  peripheralの略称である。例示的な印刷デバイス106は、ユーザインタフェース114と、クラウド印刷エージェント116と、印刷プロセス118とを含む。
【００２１】
ユーザインタフェース114は、ユーザが印刷デバイス106と相互作用することを可能にする如何なる種類のユーザインタフェースでもよく、特定の実装によって変化してもよい。ここに記載の実施例は、いずれか特定の種類のユーザインタフェース200に限定されない。ユーザインタフェース114の例は、非限定的に、英数字キー、ボタン、タッチスクリーンディスプレイ、液晶ディスプレイ（LCD）、発光ダイオード（LED）ディスプレイ、及びユーザ入力を受け付けてユーザに出力を表示する他の機構を含む。LCDはliquid  crystal  displayの略称である。LEDはlight  emitting  diodeの略称である。
【００２２】
クラウド印刷エージェント116は、クラウド印刷サービスプロバイダ104を発見して通信するように構成された１つ以上のプロセスにより実現されてもよい。クラウド印刷エージェントはまた、電子ドキュメントについて印刷データを生成するように及び／又は印刷データを取り出すように構成されてもよい。印刷プロセス118は、クラウド印刷サービスプロバイダ104から受信した印刷データ及び／又はクラウド印刷エージェント116により生成された印刷データを処理し、印刷データに表された電子ドキュメントの印刷したものを生成する１つ以上のプロセスにより実現されてもよい。ここで使用される「印刷データ」という用語は、概して、印刷デバイスにより処理された場合、印刷デバイスに対して印刷データに表された電子ドキュメントの印刷したものを生成させるいずれかのデータを示す。印刷データの例は、非限定的に、PDFデータ、PostScriptデータ、ページ記述言語（PDL）データ、プリンタコマンド言語（PCL）データ、及びPWG-rasterデータを含んでもよい。PDFはPortable  Document  Formatの略称である。PDLはpage  description  languageの略称である。PCLはprinter  command  languageの略称である。
【００２３】
クラウド印刷エージェント116及び印刷プロセス118は、印刷デバイス106の常駐プロセスとして実現されてもよい。或いは、これらのサービスの１つ以上は、取り外し可能媒体で印刷デバイス106に利用可能にされてもよく、印刷デバイス106に関して遠隔位置で実現されてもよい。クラウド印刷エージェント116及び印刷プロセス118は、特定の実装に応じてハードウェア、ソフトウェア、又はハードウェアとソフトウェアとのいずれかの組み合わせで実現されてもよい。
【００２４】
メッセージングクライアント120は、概して印刷デバイス106が電子メール、インスタントメッセージ、SMSテキストメッセージ又は他の種類の電子メッセージのようなメッセージを送信及び／又は受信することを可能にするように構成される。メッセージングクライアント120の例は、非限定的に、電子メールクライアント、インスタントメッセージングクライアント、SMSクライアント又はこれらの組み合わせを含む。
【００２５】
記憶装置122は、非限定的に、特定の実装に応じて印刷ジョブ設定データ、印刷データ、印刷デバイス構成データ及び他の種類のデータを格納するための、ランダムアクセスメモリ（RAM）、１つ以上のディスク、又はRAMと１つ以上のディスクとの組み合わせを含む如何なる種類の揮発性又は不揮発性記憶装置を含んでもよい。RAMはrandom  access  memoryの略称である。
【００２６】
＜C.クラウド印刷サービスプロバイダ＞
クラウド印刷サービスプロバイダ104は、ネットワーク108上でクライアントデバイス102及び印刷デバイス106と通信することができる１つ以上のコンピュータデバイス及び／又はサービスにより実現されてもよい。クラウド印刷サービスプロバイダ104は、単一のブロックとして示されているが、クラウド印刷サービスプロバイダ104は、ネットワーク108を介して通信可能に結合された複数のデバイスの間に分散されてもよい。クラウド印刷サービスプロバイダ104は、概して、クライアントデバイス102から受信した印刷要求を処理し、印刷デバイス106に対して印刷要求に基づいて電子ドキュメントを印刷させるように構成される。クラウド印刷サービスプロバイダ104の１つの例示的な実現は、Google,  Inc.によるGoogle  Cloud  Print（登録商標）印刷サービスであるが、ここに記載の実施例は、Google  Cloud  Print（登録商標）又は他の特定のクラウド印刷サービスプロバイダに限定されない。
【００２７】
クラウド印刷サービスプロバイダ104の例示的な実現は、クラウド印刷サービスプロセス124と、記憶装置126とを含む。クラウド印刷サービスプロセス124は、クライアントデバイス102から受信した印刷要求を処理し、印刷デバイス106に対して印刷要求に基づいて電子ドキュメントを印刷させるように構成される。記憶装置126は、非限定的に、ランダムアクセスメモリ（RAM）、１つ以上のディスク、又はRAMと１つ以上のディスクとの組み合わせを含む如何なる種類の揮発性又は不揮発性記憶装置を含んでもよい。RAMはrandom  access  memoryの略称である。記憶装置126は、印刷ジョブ設定データ、印刷データ、ユーザアカウント情報、及びクライアントデバイス102により送出された印刷要求を処理するための他のデータを含むデータを格納してもよい。
【００２８】
クラウド印刷サービスプロバイダ104はまた、簡潔にするために図示されていない他の構成要素を含んでもよい。例えば、クラウド印刷サービスプロバイダ104は、１つ以上の印刷デバイスがユーザカウントに関連して登録されることを可能にするインタフェースを含んでもよい。クラウド印刷サービスプロバイダ104は、印刷デバイス106へのアクセスを可能にする前に、クライアントデバイス102の認証を要求してもよい。例えば、クライアントデバイス102のユーザは、クラウド印刷サービスを介して印刷デバイス106のようなユーザにより登録された印刷デバイスを閲覧してアクセスするために、ユーザ名及びパスワードを提供することを求められてもよい。
【００２９】
説明の目的で、１つのクライアントデバイス102及び１つの印刷デバイス106が図１に示されているが、クラウド印刷サービスプロバイダは、如何なる数のクライアントデバイス及び／又は印刷デバイスに通信可能に結合されてもよい。従って、クラウド印刷サービスプロバイダ104は、様々な印刷デバイスに印刷を要求する異なるクライアントデバイスから受信した複数の印刷要求を処理してもよい。クラウド印刷サービスプロバイダ104は、異なる印刷要求を処理するために、直列及び／又は並列処理技術を実現してもよい。クラウド印刷サービスプロバイダ104は、以下に詳細に説明するように、要求を区別して各印刷要求に関連するデータを見つけるのに役立てるために、各印刷要求に固有のジョブ識別子を割り当ててもよい。
【００３０】
＜III.ロック印刷要求の受信＞
ここに記載の実施例によれば、印刷デバイスは、クラウドサービスプロバイダを介してクライアントデバイスから受信したロック印刷要求を管理するためのサービスを提供する。例えば、クライアントデバイス102のユーザは、図２Ａ〜２Ｃに示すものと同様の１つ以上のユーザインタフェースを使用してロック印刷ジョブを生成してもよい。ユーザによるロック印刷ジョブの生成は、印刷ジョブを処理する１つ以上の宛先の印刷デバイスを指定してもよい。ユーザのクライアントデバイスは、ロック印刷ジョブをクラウドサービスプロバイダに送信し、次に、クラウドサービスプロバイダは、印刷ジョブを１つ以上の宛先の印刷デバイスに通知する。宛先の印刷デバイスは、ユーザ認証データが印刷デバイスにより受け付けられて確認されるまで、ロック印刷ジョブの処理を延期してもよい。図３は、実施例に従ってクラウド印刷環境において印刷デバイスのロック印刷ジョブを受信するフローチャートである。
【００３１】
ステップ302において、印刷ジョブの通知が受信される。例えば、印刷デバイス106のクラウド印刷エージェント116は、クラウド印刷サービスプロバイダ104から印刷ジョブの通知を受信してもよい。クラウド印刷サービスプロセス124は、クラウド印刷サービスプロセス124が宛先の印刷デバイスとしての印刷デバイス106を指定した１つ以上の印刷ジョブを受信したことを示すために、印刷ジョブの通知を印刷デバイス106に送信してもよい。印刷ジョブの通知、及びクライアントデバイス102とクラウド印刷サービスプロバイダ104と印刷デバイス106との間で交換される他のメッセージは、概して特定の実装に応じていずれか適切な通信プロトコルを使用して実現されてもよい。
【００３２】
一例の実施例では、クラウド印刷サービスプロバイダ104は、拡張マークアップ言語（XML）に基づく通信プロトコルを使用して、クライアントデバイス102及び／又は印刷デバイス106と通信する。XMLはExtensible  Markup  Languageの略称である。例示的なXMLに基づく通信プロトコルは、非限定的に、XMPP、SOAP、及び他のWSDLを含む。XMPPはExtensible  Messaging  and  Presence  Protocolの略称である。SOAPはSimple  Object  Access  Protocolの略称である。WSDLはWeb  Services  Description  Languageの略称である。１つの特定の例では、印刷デバイス106は、クラウド印刷サービスプロバイダ104と永続的なXMPP接続を確立するように構成されてもよく、デバイスは、XMPP接続を使用して通知及び他のメッセージを送信及び受信してもよい。他の実施例では、印刷デバイス106は、新たな印刷ジョブについてクラウド印刷サービスプロバイダ104に定期的にポーリングすることにより、印刷ジョブの通知を受信してもよい。
【００３３】
ステップ304において、印刷ジョブの通知を受信したことに応じて、ジョブ設定データが取得される。例えば、クラウド印刷エージェント116は、印刷デバイス106による処理のためにキューに入れられた印刷ジョブのジョブ設定データを取得するために、クラウド印刷サービスプロセス124に要求を送信してもよい。要求は、クラウド印刷サービスプロセス124が宛先の印刷デバイスとして印刷デバイス106を指定した印刷ジョブの印刷ジョブ設定データを選択して印刷デバイス106に送信することができるように、印刷デバイス106を識別するデバイス識別子又は他の情報を含んでもよい。キューに入れられた印刷ジョブについて受信した印刷ジョブ設定データは、概して、印刷ジョブ及び印刷ジョブを送出したユーザに関するいずれかの情報を含んでもよい。印刷ジョブ設定データの例は、非限定的に、印刷ジョブ識別子、印刷ジョブの記述、印刷ジョブに関連する印刷データの格納位置、ユーザ識別子、ユーザ連絡情報、及びロック印刷データを含む。
【００３４】
一実施例では、ロック印刷データは、概して、印刷ジョブの印刷したものがロックされてユーザが認証されるまで処理されるべきではないことをクラウド印刷エージェント116に示す如何なるデータを有してもよい。例えば、ユーザは、図２Ｃに示すGUI200Cのロック印刷設定210を使用してユーザID及びパスワードを提供することにより、クライアントデバイス102において特定の印刷ジョブがロック印刷ジョブであることを指定してもよい。その結果、クライアントデバイス102及び／又はクラウド印刷サービスプロバイダ104は、提供されたユーザID及びパスワードを含む印刷ジョブのジョブ設定データを生成してもよい。ロック印刷データは、ロック印刷データに含まれるユーザ名及び／又はパスワードがプレーンテキストとして送信されないように、暗号化されたデータを含んでもよい。１つの特定の実施例では、ロック印刷データは、OAuth又はOpenID認証標準のような認証標準に基づいてもよい。ここに記載の実施例は、概して、如何なる種類のロック印刷データを使用してもよく、ロック印刷データを表すいずれか特定のフォーマットに限定されない。クラウド印刷エージェント116は、後の取得のために、いずれかのロック印刷データを含む印刷データのジョブ設定データを取得して記憶装置122に格納してもよい。
【００３５】
ステップ306において、印刷ジョブがロック印刷ジョブであるか否かの決定が行われる。例えば、クラウド印刷エージェント116は、ロック印刷データが印刷ジョブのジョブ設定データに含まれていることを検出することにより、クラウド印刷サービスプロバイダ104から受信した印刷ジョブがロック印刷ジョブであるか否かを決定してもよい。例えば、前述のように、ロック印刷データは、ユーザが印刷ジョブを生成したときにユーザがクライアントデバイス102においてロック印刷設定を提供することに応じて、印刷ジョブのジョブ設定データに含まれてもよい。
【００３６】
ステップ306において印刷ジョブがロック印刷ジョブでないという決定が行われた場合、ステップ308において、印刷ジョブの印刷データが取得されて処理される。例えば、印刷ジョブがロック印刷ジョブでないことをクラウド印刷エージェント116が決定した場合、例えば、クラウド印刷エージェントがロック印刷データを検出しなかった場合、クラウド印刷エージェント116は、印刷ジョブの印刷データを取得し、処理のために（すなわち、印刷出力を生成するために）印刷ジョブデータを印刷プロセス118に送信してもよい。印刷プロセス118による印刷出力の生成は、図４Ｂを参照して以下に詳細に説明する。
【００３７】
ステップ306において印刷ジョブがロック印刷ジョブであるという決定が行われた場合、ステップ310において、印刷ジョブが格納されるべきか否かの決定が行われる。例えば、ステップ306において印刷ジョブがロック印刷ジョブであることをクラウド印刷エージェント116が決定した場合、ステップ310において、クラウド印刷エージェント116は、印刷デバイス106において印刷ジョブの印刷データを格納するか否かを決定してもよい。ロック印刷ジョブの処理はユーザ認証が完了するまで印刷デバイス106により延期されるため、クラウド印刷エージェント116はまた、クラウド印刷サービスプロバイダ104から印刷ジョブの印刷データを取得することを延期してもよい。印刷データの取得を延期することにより、印刷デバイス106は、ユーザが印刷出力を取得する準備ができるようになる時間まで、比較的小さい印刷ジョブ設定データのみを格納すればよく、これにより、印刷デバイス106の記憶装置の要件を低減することができる。実施例では、ロック印刷ジョブの印刷データの取得を遅延するための印刷デバイス106のオプションは、印刷デバイスの管理者により構成可能でもよく、オプションは各印刷ジョブのユーザにより構成可能でもよい。
【００３８】
ステップ310において印刷データが格納されるべきであるという決定が行われた場合、ステップ312において、印刷データが取得される。例えば、ステップ310において印刷データが格納されるべきであることをクラウド印刷エージェント116が決定した場合、クラウド印刷エージェント116は、クラウド印刷サービスプロバイダ104から印刷データを取得する。印刷データは、印刷ジョブのジョブ設定情報で指定されたURL又は他の位置識別子からの印刷データを要求することにより、クラウド印刷サービスプロバイダ104から取得されてもよい。クラウド印刷エージェント116は、取得された印刷データを記憶装置126に格納してもよい。
【００３９】
ステップ314において、印刷ジョブの処理が延期される。例えば、クラウド印刷エージェント116が印刷デバイス106に印刷データを格納してもしていなくても、印刷ジョブを送出したユーザが印刷デバイス106において認証データを提供して認証データが確認されるまで、クラウド印刷エージェント116は印刷ジョブの処理を延期する。印刷ジョブの延期は、印刷デバイス106においてユーザ認証を待っているロック印刷ジョブのキューへの印刷ジョブの関連付けを含んでもよい。
【００４０】
＜IV.印刷データの期限のユーザへの通知＞
一実施例では、印刷デバイスがクラウドサービスプロバイダからロック印刷ジョブを受信したことに応じて、ユーザが印刷デバイスにより認証されるようになる時間まで、印刷ジョブの印刷データは、クラウド印刷サービスプロバイダ及び印刷デバイスのうち１つ以上により格納されてもよい。しかし、クラウド印刷サービスプロバイダ及び／又は印刷デバイスは、典型的には、決して完了しないロック印刷ジョブ（例えば、印刷ジョブに関連するユーザが印刷デバイスにおいて決して認証されない印刷ジョブ）が記憶空間を占めないように、限られた期間の間にのみ印刷データを格納するように構成されてもよい。実施例によれば、印刷デバイスは、ユーザにより送出された印刷ジョブの印刷データの近づいている期限をユーザに警告するように構成される。図４Ａは、ロック印刷ジョブの印刷データの近づいている期限をユーザに通知するフローチャートを示している。
【００４１】
ステップ402において、印刷ジョブの印刷データの期限の推定時刻が決定される。例えば、クラウド印刷エージェント116は、印刷デバイス106により受信した印刷ジョブに関連する印刷データの期限の推定時刻を決定してもよい。印刷データの期限の推定時刻の決定は、どのデバイスに印刷データが格納されるかに依存してもよい。例えば、図３のステップ310を参照して前述したように、クラウド印刷エージェント116がロック印刷要求の印刷データの取得を延期するように構成される場合、期限の推定時刻の決定は、印刷データがもはやクラウド印刷サービスプロバイダ104からの取得に利用可能でなくなるおおよその時刻の決定を含んでもよい。一実施例では、クラウド印刷サービスプロバイダ104は、印刷デバイス106に送信される印刷ジョブ設定データの一部として、期限の推定時刻を指定してもよい。他の実施例では、クラウド印刷サービスプロバイダ104が印刷データを格納する時間の長さは、サービスに関連する文書又は他の情報で提供されてもよい。クラウド印刷エージェント116は、期限の推定時刻を計算するために、クラウド印刷サービスプロバイダ104の文書化された格納時間を使用してもよい。例えば、クラウド印刷サービスプロバイダ104が文書において印刷要求を受信した後に印刷データを約24時間格納することを示す場合、クラウド印刷エージェント116は、印刷デバイス106が印刷ジョブの通知を受信した時刻から24時間である期限の推定時刻を計算してもよい。
【００４２】
同様に、印刷ジョブの通知が受信された時刻にクラウド印刷エージェント116が印刷デバイス106において印刷データを取得して格納するように構成される場合、期限の推定時刻の決定は、印刷データがもはや印刷デバイス106において利用可能でなくなるおおよその時刻の決定を含んでもよい。印刷デバイス106がロック印刷ジョブの印刷データを格納する時間の長さは、印刷デバイス106により格納された構成可能又は構成不可能な期限設定で指定されてもよい。同様に、クラウド印刷エージェント116は、格納された期限設定を使用して、クラウド印刷エージェント116が印刷ジョブの印刷通知を受信して印刷ジョブの印刷データを格納した時刻の決定に基づいて、期限の推定時刻を計算してもよい。実施例では、クラウド印刷エージェント116は、印刷ジョブの印刷設定データの一部として、記憶装置122の別のデータとして、又は他のフォーマットで、特定の印刷ジョブの期限の推定時刻を格納してもよい。
【００４３】
一実施例では、印刷データがクラウド印刷サービスプロバイダ104及び／又は印刷デバイス106により格納される時間の長さは、印刷デバイス106の管理者又は他のユーザにより構成可能でもよい。例えば、クラウド印刷サービスプロバイダ104は、印刷データを格納する時間の長さ及びユーザに利用可能な記憶空間の量のように、管理者又は他のユーザがクラウド印刷サービスプロバイダ104に送出される印刷ジョブの様々な設定を構成することを可能にするインタフェースを提供してもよい。同様に、印刷デバイス106は、印刷デバイス106が受信したロック印刷ジョブの印刷データを格納する時間の長さをユーザが構成することを可能にするユーザインタフェース114を介して、１つ以上の構成画面を提供してもよい。
【００４４】
ステップ404において、印刷ジョブの印刷データが期限近くになっているか否かの決定が行われる。例えば、クラウド印刷エージェント116は、クラウド印刷サービスプロバイダ104から受信した印刷ジョブに関連する印刷データが期限近くになっているか否かを監視してもよい。クラウド印刷エージェント116による印刷データが期限近くになっているか否かの監視は、ステップ402において計算された印刷データの期限の推定時刻に対する現在時刻の比較を含んでもよい。印刷デバイス106は、期限の推定時刻が現在時刻の指定期間内であることを検出することにより、印刷データが期限近くになっていることを決定してもよい。指定期間は、印刷データの期限が近づいていることをユーザが通知されるべきであることを決定されるときの構成可能な閾値を表してもよい。例えば、指定の時間は、２時間、１日、又はユーザが警告を受信した後に、望む場合且つ可能である場合にはロック印刷ジョブの処理を完了するための他の適切な期間でもよい。印刷データが期限近く担っているか否かの決定のための指定の期間は、印刷デバイス106の格納された設定として管理者又は他のユーザにより構成可能でもよく、或いは、指定の時間は、印刷ジョブを生成したユーザにより指定されて印刷ジョブ設定データに含まれてもよい。ステップ404において印刷データが期限近くになってないことが決定された場合、印刷デバイスは、ステップ402、404において印刷データの期限が近づいていることを監視し続けてもよい。
【００４５】
ステップ404において印刷ジョブの印刷データが期限近くになっているという決定が行われた場合、ステップ406において、期限警告メッセージが印刷ジョブを生成したユーザに送信されてもよい。例えば、クラウド印刷エージェント116は、ユーザが適切な動作を行うことができるように、印刷データの近づいている期限をユーザに警告する情報を備えたメッセージを生成してもよい。例えば、ユーザは、クライアントデバイス102において印刷ジョブを生成しているが、まだ印刷出力を取得する時間がないこと又は完全にその存在を忘れていることがある。警告メッセージは、印刷ジョブが生成されたことをユーザに思い出させ、印刷ジョブが印刷デバイス106による処理に利用可能のままになっているおおよその期間をユーザに提供してもよい。印刷ジョブが利用可能のままになっているおおよその期間は、ステップ402において計算された期限の推定時刻及び現在時刻に基づいて計算されてもよい。
【００４６】
実施例では、クラウド印刷エージェント116は、メッセージングクライアント120を使用して１つ以上の警告メッセージをユーザに送信してもよい。印刷データの近づいている期限をユーザに警告するために送信され得るメッセージの種類の例は、非限定的に、電子メール、インスタントメッセージ、及びテキストメッセージを含んでもよい。クラウド印刷エージェント116は、印刷ジョブの印刷設定データに格納された連絡情報、又はユーザ識別子に関連して印刷デバイス106及び／クラウド印刷サービスプロバイダ104により格納された連絡情報に基づいて、警告メッセージの１つ以上の受信アドレスを決定してもよい。一実施例では、クラウド印刷エージェント116は、クラウド印刷サービスプロバイダ104に対して印刷デバイス106の代わりに警告メッセージを送信するように命令するコマンドをクラウド印刷サービスプロバイダ104に送信することにより、期限警告メッセージをユーザに送信させてもよい。
【００４７】
＜V.ロック印刷要求の処理＞
実施例によれば、印刷デバイスは、ロック印刷ジョブを選択するユーザ入力を受け付け、ロック印刷ジョブに関連するユーザの認証に応じてロック印刷ジョブを処理する。図４Ｂは、クラウド印刷サービスプロバイダから受信したロック印刷ジョブを処理するフローチャートである。
【００４８】
ステップ408において、印刷デバイスは、処理のためにロック印刷ジョブのユーザ選択を受け付ける。例えば、ユーザは、印刷デバイス106の操作パネルを使用し、印刷デバイス106による処理のためにキューに入れられた印刷ジョブのリストから特定のロック印刷ジョブを選択してもよい。操作パネルの表示画面は、キューに入れられた印刷ジョブのリストを提示し、印刷ジョブ毎に印刷ジョブ識別子、印刷ジョブの説明又は更なる処理のために特定のロック印刷ジョブを選択する際にユーザを支援することができる他の情報を含んでもよい。
【００４９】
ステップ410において、印刷デバイスは、ロック印刷ジョブのユーザ認証インタフェースを表示する。例えば、クラウド印刷エージェント116は、ユーザインタフェース114に対してユーザID及びパスワードについてユーザに促すユーザ認証インタフェースを表示させてもよい。クラウド印刷エージェント116は、印刷デバイス106の操作パネル表示画面にユーザ認証のプロンプトを表示してもよい。ユーザ認証のプロンプトは、クラウド印刷エージェント116がクラウド印刷サービスプロバイダ104からロック印刷ジョブの通知を受信したことに応じて、ユーザが印刷デバイス106でキューに入れられたロック印刷ジョブのリストから印刷ジョブを選択したことに応じて、又は他の時間において、ユーザインタフェース114に表示されてもよい。
【００５０】
ステップ412において、印刷ジョブに関連するユーザが認証されたか否かの決定が行われる。例えば、クラウド印刷エージェント116は、印刷ジョブのユーザ認証データが確認されたか否かを決定してもよい。クラウド印刷エージェント116は、ステップ410において表示されたユーザ認証プロンプトにおいてユーザにより提供された印刷ジョブのユーザID及びパスワード、リリースコード、又は他の認証データを受信してもよい。クラウド印刷エージェント116は、提供された認証データを印刷ジョブの印刷ジョブ設定データに格納された認証データに対して比較することにより、ユーザ認証データを確認してもよい。他の実施例では、印刷デバイス106は、提供された認証データをクラウド印刷サービスプロバイダ104に送信してもよく、クラウド印刷サービスプロバイダ104が、印刷ジョブが生成されたときにクライアントデバイス102においてユーザにより提供された認証データと、ユーザにより提供された認証データが一致するか否かを決定してもよい。
【００５１】
ステップ412において印刷ジョブに関連するユーザが認証されると、印刷デバイスは、印刷ジョブの処理を進めてもよい。ステップ416において、印刷ジョブの印刷データが取得される。一実施例では、印刷ジョブの画像データの取得は、印刷ジョブの印刷データが印刷デバイスに格納されているか、クラウドサービスプロバイダに格納されているかの決定を含んでもよい。例えば、図３のステップ310を参照して前述したように、印刷ジョブの印刷データの取得が印刷デバイスによりユーザ認証まで延期されている場合、印刷データはクラウドサービスプロバイダに格納されているが、印刷デバイスに格納されていなくてもよい。印刷データが印刷デバイスに格納されていることが決定された場合、印刷データは、印刷デバイスの記憶装置から取得されてもよい。例えば、クラウド印刷エージェント116は、記憶装置122から印刷データを取得してもよい。印刷データが現時点で印刷デバイスに格納されていないことが決定された場合、印刷データは、クラウド印刷サービスプロバイダから取得されてもよい。例えば、クラウド印刷エージェント116は、印刷データの記憶位置を識別するジョブ設定データで指定されたURL又は他の情報に基づいて、クラウド印刷サービスプロバイダ104から印刷データを取得してもよい。
【００５２】
ステップ416において印刷データを取得したことに応じて、ステップ418において、印刷デバイスは印刷ジョブを処理する。例えば、印刷デバイス106は、クラウド印刷エージェント116が印刷ジョブの電子ドキュメントデータをPDLデータ又はPCLデータに変換することを含んでもよい、印刷ジョブを処理してもよい。他の実施例では、クラウド印刷エージェント116は、電子ドキュメントのラスタ画像を生成するために、電子ドキュメントデータ、PDLデータ又はPCLデータでラスタ化（rasterization）を実行する。更に他の実施例では、クラウド印刷エージェント116は、印刷オプションデータに基づいて印刷データを生成する。例えば、クラウド印刷エージェント116は、印刷ジョブの印刷設定データを印刷プロセス118により処理され得るフォーマットに変換してもよい。
【００５３】
印刷プロセス118は、印刷データを処理し、印刷データに表された電子ドキュメントの印刷出力を生成する。印刷プロセス118は、印刷データを物理的な印刷出力に変換するいずれか適切な機構を実現してもよい。一実施例では、印刷プロセス118は、クラウド印刷エージェント116により生成されたPDLデータ又はPCLデータをラスタ化するラスタ画像プロセッサを有する。他の実施例では、非ラスタ化印刷が実現されてもよく、或いは、ラスタ化はクラウド印刷エージェント116により実行されてもよい。印刷プロセス118は、印刷設定データに表された印刷設定を更に適用してもよい。例えば、印刷プロセス118は、印刷ジョブの印刷設定データに基づいて、電子ドキュメントの複数のコピーの印刷、特定のトレイへの印刷、又は両面印刷を行ってもよい。
【００５４】
図３、図４Ａ及び図４Ｂに示すステップは、説明の目的を意図しており、いずれか特定の順序に限定されるべきではない。更に、図３、図４Ａ及び図４Ｂに示す１つ以上のステップは、特定の実装に応じて省略されてもよい。従って、図３、図４Ａ及び図４Ｂの処理は、限定的な意味ではなく例示的に考えられるべきである。
【００５５】
＜VI.例示的な通信の交換＞
図５及び図６は、クラウド印刷環境においてロック印刷要求を処理する手法におけるクライアントデバイス102とクラウド印刷サービスプロバイダ104と印刷デバイス106との間のメッセージの交換を示す例示的なシーケンス図である。図５及び図６の例示的なシーケンスの双方において、印刷デバイス106は、クラウド印刷サービスプロバイダ104を介して、クライアントデバイス102により生成されたロック印刷ジョブを受信する。図５に示す例では、クラウド印刷サービスプロバイダ104から印刷ジョブの通知を受信したことに応じて、印刷デバイス106は、印刷ジョブのジョブ設定データ及び印刷データの双方をクラウド印刷サービスプロバイダ104から取得し、ユーザが送出した印刷ジョブが印刷デバイス106において認証されるまで又は印刷データが期限切れになるまで、取得されたデータを格納する。図６に示す例では、クラウド印刷サービスプロバイダ104からの印刷ジョブの通知を受信したことに応じて、印刷デバイス106は、受信した印刷ジョブのジョブ設定データを取得するが、ユーザが送出した印刷ジョブが印刷デバイス106において認証されるまで、印刷ジョブの印刷データの取得を延期する。
【００５６】
図５を参照すると、ステップ502において、クライアントデバイス102は、ロック印刷ジョブをクラウド印刷サービスプロバイダ104に送信する。例えば、印刷ジョブは、前述のようにクライアントデバイス102のユーザにより生成されてもよく、ユーザは、印刷ジョブの宛先の印刷デバイスとして印刷デバイス106を指定してもよい。ユーザは、ユーザID及びパスワード又は他の種類の印刷ジョブの認証データを提供することにより、印刷ジョブがロック印刷ジョブであることを更に指定してもよい。
【００５７】
ステップ504において、クラウド印刷サービスプロバイダ104は、印刷ジョブ設定データと印刷データとを含む印刷ジョブの印刷ジョブデータを格納する。一実施例では、クラウド印刷サービスプロバイダ104は、クライアントデバイス102から受信した電子ドキュメントから印刷データを生成してもよい。例えば、クラウド印刷サービスプロバイダ104は、電子ドキュメントを受信し、電子ドキュメントをPDFに変換してもよい。他の例では、クラウド印刷サービスプロバイダ104は、電子ドキュメントをページ記述言語（PDL）データ、プリンタコマンド言語（PCL）データ、他の非ラスタ化印刷データ又はラスタ化印刷データに変換してもよい。電子ドキュメントは、ユーザによる印刷ジョブ要求の生成の一部として又は別のプロセスとして、ユーザによりクライアントデバイス102からクラウド印刷サービスプロバイダ104に送信されてもよい。他の実施例では、電子ドキュメントから印刷データへの変換は、クライアントデバイス102又は印刷デバイス106により実現されてもよい。ステップ506において、クラウド印刷サービスプロバイダ104は、印刷ジョブデータがクラウド印刷サービスプロバイダ104において取得に利用可能であるとを印刷デバイス106に通知する印刷ジョブの通知を印刷デバイス106に送信する。
【００５８】
ステップ508において、印刷ジョブの通知を受信したことに応じて、印刷デバイス106のクラウド印刷エージェント116は、ステップ502においてクライアントデバイス102により送出された印刷ジョブを含み、クラウド印刷サービスプロバイダ104において印刷デバイス106による処理のためにキューに入れられた１つ以上の印刷ジョブのジョブ設定データを取得する。ステップ510において、クラウド印刷エージェント116はまた、印刷ジョブの印刷データを取得する。例えば、クラウド印刷エージェント116は、ジョブ設定データで指定されて印刷データの格納位置を示すURLを使用して、又は印刷データを取得する他の機構を使用して、印刷データを取得してもよい。
【００５９】
ステップ512において、クラウド印刷エージェント116は、取得されたジョブ設定データ及び印刷データを印刷プロセス118に送信する。ステップ514において、印刷プロセス118は、印刷ジョブデータを、例えば記憶装置122に格納する。一実施例では、印刷プロセス118は、印刷ジョブデータを、印刷デバイス106とは別であり印刷デバイス106と同じローカルネットワークにある記憶デバイス（例えば、ネットワーク接続ストレージ（NAS）デバイス）に格納してもよい。NASはnetwork-attached  storageの略称である。
【００６０】
ステップ514において格納された印刷データが期限近くになっていることをクラウド印刷エージェント116が決定した場合、ステップ516において、クラウド印刷エージェント116は、期限警告メッセージをクライアントデバイス102又は他のデバイスに送信してもよい。クラウド印刷エージェント116による、格納された印刷データが期限近くになっているか否かの決定及び期限警告メッセージの送信は、図４Ａのステップ404及び406を参照して前述したものと同様の方法で実行されてもよい。
【００６１】
ステップ518において、クラウド印刷エージェント116は、印刷デバイス106において印刷要求を送出したユーザの認証データを受信して確認する。例えば、ユーザは、印刷デバイス106の操作パネルを使用してデータを入力することにより、クラウド印刷エージェントに対して認証を提供してもよい。ステップ520において、クラウド印刷エージェント116は、ユーザ認証データが確認されて印刷プロセス118が印刷ジョブの処理を進めてもよいことを示す通知を印刷プロセス118に送信する。ステップ522において、印刷プロセス118は、印刷ジョブを処理する。例えば、前述のように、印刷プロセス118による印刷ジョブの処理は、印刷プロセスが印刷データに表された電子ドキュメントの印刷出力を生成することを含んでもよい。
【００６２】
図６は、印刷デバイス106が印刷ジョブの通知を受信したことに応じて、印刷ジョブを生成したユーザのユーザ認証データが印刷デバイス106により受け付けられて確認されるまで、印刷デバイス106が印刷データの取得を延期する点を除き、図５に示す処理と同様の通信の交換シーケンスを示している。
【００６３】
ステップ602において、クライアントデバイス102は、ロック印刷ジョブをクラウド印刷サービスプロバイダ104に送信する。ステップ604及び606において、クラウド印刷サービスプロバイダ104は、送出された印刷ジョブの印刷ジョブデータを格納し、通知を印刷デバイス106に送信する。
【００６４】
ステップ608において、印刷ジョブの通知を受信したことに応じて、クラウド印刷エージェント116は、ジョブ設定データを取得するが、印刷ジョブの印刷データはまだ取得しない。ステップ610において、クラウド印刷エージェント116は、ジョブ設定データを印刷プロセス118に送信し、ステップ612において、印刷プロセス118はジョブ設定データを格納する。
【００６５】
ステップ614において、任意選択で、クラウド印刷エージェント116は、印刷ジョブの印刷データが期限近くになっていることを、印刷ジョブを送出したユーザに通知する。図６の例では、クラウド印刷エージェント116がクラウド印刷サービスプロバイダ104から印刷データの取得を延期しているため、クラウド印刷エージェント116は、クラウド印刷サービスプロバイダ104における印刷データの期限の推定時刻に基づいて、印刷データが期限近くになっていることをユーザに通知してもよい。一実施例では、任意選択で、クラウド印刷エージェント116は、ユーザが印刷デバイス106における印刷データにアクセスすることができることを延期するために、印刷データが期限近くになっていることを検出したことに応じて、クラウド印刷サービスプロバイダ104から印刷データを取得して格納してもよい。
【００６６】
ステップ616において、クラウド印刷エージェント116は、印刷デバイス106において印刷要求を送出したユーザを認証する。ユーザの認証に応じて、ステップ618において、クラウド印刷エージェント116は、クラウド印刷サービスプロバイダ104から印刷データを取得し、ステップ620において、処理のために印刷データを印刷プロセス118に送信する。ステップ622において、印刷プロセス118は、印刷ジョブを処理し、印刷出力を生成する。
【００６７】
＜VII.実現機構＞
一実施例によれば、ここに記載の技術は、１つ以上の特殊用途のコンピュータデバイスにより実現される。特殊用途のコンピュータデバイスは、この技術を実行するために配線結合されてもよい。また、特殊用途のコンピュータデバイスは、この技術を実行するように永続的にプログラミングされた１つ以上の特定用途向け集積回路（ASIC）又はフィールドプログラマブルゲートアレイ（FPGA）のようなデジタル電子デバイスを含んでもよい。ASICは、application-specific  integrated  circuitの略称であり、FPGAは、field  programmable  gate  arrayの略称である。また、特殊用途のコンピュータデバイスは、ファームウェア、メモリ、他の記憶装置又はこれらの組み合わせのプログラム命令に従ってこの技術を実行するようにプログラムされた１つ以上の汎用ハードウェアプロセッサを含んでもよい。このような特殊用途のコンピュータデバイスはまた、この技術を実現するために、カスタムの配線ロジック、ASIC又はFPGAと、カスタムプログラミングとを組み合わせてもよい。特殊用途のコンピュータデバイスは、デスクトップコンピュータシステム、ポータブルコンピュータシステム、ハンドヘルドデバイス、ネットワーキングデバイス又はこの技術を実現するために配線及び／又はプログラムロジックを組み込んだ他のデバイスでもよい。
【００６８】
図７は、本発明の実施例が実現され得る例示的なコンピュータシステム700を示すブロック図である。コンピュータシステム700は、情報を通信するためのバス702又は他の通信機構と、情報を処理するためのバス702に結合されたプロセッサ704とを含む。コンピュータシステム700はまた、プロセッサ704により実行される情報及び命令を格納するためのランダムアクセスメモリ（RAM）又は他の動的記憶デバイスのようなメインメモリ706を含む。RAMは、random  access  memoryの略称である。メインメモリ706はまた、プロセッサ704により実行される命令の実行中に一時変数又は他の中間情報を格納するために使用されてもよい。コンピュータシステム700は、プロセッサ704の静的な情報及び命令を格納するためのバス702に結合された読み取り専用メモリ（ROM）708又は他の静的記憶デバイスを更に含む。ROMは、read  only  memoryの略称である。磁気ディスク又は光ディスクのような記憶デバイス710は、情報及び命令を格納するために提供され、バス702に結合される。
【００６９】
コンピュータシステム700は、情報をコンピュータユーザに表示するために、バス702を介して陰極線管（CRT）のようなディスプレイ712に結合されてもよい。CRTは、cathode  ray  tubeの略称である。バス702は単一のバスとして示されているが、バス702は１つ以上のバスを有してもよい。例えば、バス702は、非限定的に、プロセッサ704がコンピュータシステム700内の他のデバイスを制御する制御バス、プロセッサ704が実行のために命令のメモリ位置を指定するアドレスバス、又はコンピュータシステム700の構成要素間でデータ又は信号を伝送する他の種類のバスを含んでもよい。
【００７０】
英数字及び他のキーを含む入力デバイス714は、情報及びコマンド選択をプロセッサ704に通信するためにバス702に結合される。他の種類のユーザ入力デバイスは、方向情報及びコマンド選択をプロセッサ704に通信し、ディスプレイ712上のカーソルの動きを制御するためのマウス、トラックボール又はカーソル方向キーのようなカーソル制御716である。典型的にはこの入力デバイスは、２つの軸（第１の軸（例えば、x）及び第２の軸（例えば、y））に２つの自由度を有し、デバイスが平面内で位置を指定することを可能にする。
【００７１】
コンピュータシステム700は、カスタマイズされた配線ロジック、１つ以上のASIC又はFPGA、ファームウェア及び／又はプログラムロジックを使用して、ここに記載の技術を実現してもよい。このようなプログラムロジック等は、コンピュータシステムと組み合わせて、コンピュータシステム700を特殊用途の機械にする或いは特殊用途の機械になるようにプログラミングする。一実施例によれば、ここの技術は、プロセッサ704がメインメモリ706に含まれる１つ以上の命令の１つ以上のシーケンスを実行することに応じて、コンピュータシステム700により実行される。このような命令は、記憶デバイス710のような他のコンピュータ読み取り可能記憶媒体からメインメモリ706に読み取られてもよい。メインメモリ706に含まれる命令のシーケンスの実行は、プロセッサ704に対してここに記載の処理ステップを実行させる。別の実施例では、実施例を実現するためにソフトウェア命令の代わりに又はソフトウェア命令と組み合わせて配線回路が使用されてもよい。従って、実施例はハードウェア回路及びソフトウェアのいずれか特定の組み合わせに限定されない。
【００７２】
ここで使用される「コンピュータ読み取り可能記憶媒体」という用語は、コンピュータを指定のように動作させるデータを提供することに関与するいずれかの媒体を示す。コンピュータシステム700を使用して実現された実施例では、例えば、実行のために命令をプロセッサ704に提供する際に、様々なコンピュータ読み取り可能媒体が関与する。このような媒体は、不揮発性媒体及び揮発性媒体を含むが、これらに限定されない多くの形式になってもよい。不揮発性媒体は、例えば、記憶デバイス710のような光又は磁気ディスクを含む。揮発性媒体は、メインメモリ706のような動的メモリを含む。コンピュータ読み取り可能記憶媒体の一般的な形式は、例えば、フロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、磁気テープ又は他の磁気媒体を含む。また、記憶媒体の一般的な形式は、例えば、CD-ROM、他の光データ記憶媒体、RAM、PROM、EPROM、FLASH-EPROM、NVRAM、いずれかの他のメモリチップ若しくはカートリッジ、又はコンピュータが読み取ることができる他の媒体を含む。
【００７３】
様々な形式のコンピュータ読み取り可能媒体が、実行のためにプロセッサ704に１つ以上の命令の１つ以上のシーケンスを伝達することに関与してもよい。例えば、命令は、当初は遠隔コンピュータの磁気ディスクに伝達されてもよい。遠隔コンピュータは、その動的メモリに命令をロードし、モデムを使用して電話回線で命令を送信する。コンピュータシステム700のローカルにあるモデムは、電話回線のデータを受信し、赤外線送信機を使用してデータを赤外線信号に変換してもよい。赤外線検出器は、赤外線信号で伝達されたデータを受信し、適切な回路は、データをバス702に配置してもよい。バス702は、データをメインメモリ706に伝達し、メインメモリ706から、プロセッサ704は命令を取得して実行する。メインメモリ706により受信された命令は、プロセッサ704による実行の前又は後に、任意選択で記憶デバイス710に格納されてもよい。
【００７４】
コンピュータシステム700はまた、バス702に結合された通信インタフェース718を含む。通信インタフェース718は、ローカルネットワーク722に接続されたネットワークリンク720への双方向データ通信結合を提供する。例えば、通信インタフェース718は、統合サービスデジタルネットワーク（ISDN）カード、又は対応する種類の電話回線にデータ通信接続を提供するモデムでもよい。ISDNは、integrated  services  digital  networkの略称である。他の例として、通信インタフェース718は、互換性のあるLANにデータ通信接続を提供するローカルネットワーク（LAN）カードでもよい。LANは、local  area  networkの略称である。無線リンクも実装されてもよい。いずれかのこのような実装では、通信インタフェース718は、様々な種類の情報を表すデジタルデータストリームを伝達する電気、電磁気又は光信号を送受信する。
【００７５】
典型的には、ネットワークリンク720は、１つ以上のネットワークを通じて他のデータデバイスにデータ通信を提供する。例えば、ネットワークリンク720は、ローカルネットワーク722を通じてホストコンピュータ724に接続を提供してもよく、インターネットサービスプロバイダ（ISP）726により運用されるデータ装置に接続を提供してもよい。ISPは、Internet  Service  Providerの略称である。次に、ISP726は、現在では一般的に“インターネット”728と呼ばれる世界規模のパケットデータ通信ネットワークを通じて、データ通信サービスを提供する。ローカルネットワーク722及びインターネット728の双方は、デジタルデータストリームを伝達する電気、電磁気又は光信号を使用する。
【００７６】
コンピュータシステム700は、ネットワーク、ネットワークリンク720及び通信インタフェース718を通じて、プログラムコードを含むメッセージを送信し、データを受信する。インターネットの例では、サーバ730は、インターネット728、ISP726、ローカルネットワーク722及び通信インタフェース718を通じてアプリケーションプログラムの要求されたコードを送信してもよい。受信したコードは、受信したときにプロセッサ704により実行されてもよく、及び／又は後の実行のために記憶デバイス710若しくは他の不揮発性記憶装置に格納されてもよい。
【００７７】
前述の明細書において、本発明の実施例について、実装によって変更し得る複数の特定の詳細を参照して説明した。従って、本発明の範囲の唯一の排他的な指標、及び出願人により本発明の範囲であると意図するものは、何らかの今後の訂正を含み、特許請求の範囲が発行した特定の形式における、この出願から発行された一式の特許請求の範囲である。従って、特許請求の範囲に明確に記載されていない限定、要素、特性、機能、利点又は属性は、決して特許請求の範囲を限定するべきものではない。従って、明細書及び図面は限定的な意味ではなく、例示的に考えられるべきである。
【符号の説明】
【００７８】
100  システム構成
102  クライアントデバイス
104  クラウド印刷サービスプロバイダ
106  印刷デバイス
108  ネットワーク
110  アプリケーション
112  印刷クライアント
114  ユーザインタフェース
116  クラウド印刷エージェント
118  印刷プロセス
120  メッセージングクライアント
122  記憶装置
124  クラウド印刷サービスプロセス
126  記憶装置
【図１】
2015165394.tif 000003
【図２Ａ】
2015165394.tif 000004
【図２Ｂ】
2015165394.tif 000005
【図２Ｃ】
2015165394.tif 000006
【図３】
2015165394.tif 000007
【図４Ａ】
2015165394.tif 000008
【図４Ｂ】
2015165394.tif 000009
【図５】
2015165394.tif 000010
【図６】
2015165394.tif 000011
【図７】
2015165394.tif 000012