(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-28
(45)【発行日】2024-07-08
(54)【発明の名称】印刷システム、サーバシステム、及び印刷装置
(51)【国際特許分類】
G06F 3/12 20060101AFI20240701BHJP
H04N 1/00 20060101ALI20240701BHJP
B41J 29/38 20060101ALI20240701BHJP
【FI】
G06F3/12 339
G06F3/12 326
G06F3/12 318
G06F3/12 387
H04N1/00 838
H04N1/00 127Z
B41J29/38 203
(21)【出願番号】P 2020128625
(22)【出願日】2020-07-29
【審査請求日】2023-07-25
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】川嵜 敬二
【審査官】豊田 真弓
(56)【参考文献】
【文献】特開2003-303077(JP,A)
【文献】特開2017-174233(JP,A)
【文献】国際公開第2015/189930(WO,A1)
【文献】特開2020-074097(JP,A)
【文献】特開2015-111407(JP,A)
【文献】米国特許出願公開第2017/0068823(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/12
H04N 1/00
B41J 29/38
(57)【特許請求の範囲】
【請求項1】
印刷装置と、サーバシステムと、を備える印刷システムであって、
前記サーバシステムは、
第1権限を有するユーザからの入力に基づき、前記第1権限よりも制限された権限である第2権限のユーザからの登録依頼に基づく印刷装置の登録を許可するか否かを示す情報を設定する設定手段と、
印刷装置の登録依頼を受信した場合に、前記登録依頼に基づき、前記印刷装置の登録処理を行う登録処理手段と、
を備え、
前記登録処理手段は、前記登録依頼したユーザの権限が前記第2権限の場合、前記設定手段により前記第2権限のユーザからの登録依頼に基づく印刷装置の登録を許可することを示す情報が設定されている場合は、前記第2権限のユーザからの前記登録依頼に基づく印刷装置の登録を実行し、
前記印刷装置は、前記登録が実行されることにより、前記サーバシステムを介した前記第2権限のユーザからの印刷指示に基づく印刷ジョブを受信可能とな
り、
前記設定手段はさらに、前記第1権限を有するユーザからの入力に基づき、前記第2権限のユーザのうち印刷装置の登録を許可するユーザを示す許可ユーザ情報を設定し、
前記登録依頼したユーザの権限が前記第1権限よりも制限された権限である第2権限の場合、前記登録処理手段は、前記設定手段により前記第2権限のユーザからの登録依頼に基づく印刷装置の登録を許可することを示す情報が設定されている場合であり、且つ、前記登録依頼したユーザを示す情報が前記許可ユーザ情報に含まれている場合に、前記登録依頼した前記ユーザからの前記登録依頼に基づく印刷装置の登録を実行することを特徴とする印刷システム。
【請求項2】
前記登録処理手段は、前記登録依頼したユーザの権限が前記第1権限よりも制限された権限である第2権限の場合、前記設定手段により前記第2権限のユーザからの登録依頼に基づく印刷装置の登録を許可することを示す情報が設定されていない場合は、前記第2権限のユーザからの前記登録依頼に基づく登録は実行しないことを特徴とする請求項1に記載の印刷システム。
【請求項3】
前記登録依頼したユーザの権限が前記第1権限よりも制限された権限である第2権限の場合、前記登録処理手段は、前記設定手段により前記第2権限のユーザからの登録依頼に基づく印刷装置の登録を許可することを示す情報が設定されている場合であっても、前記登録依頼したユーザを示す情報が前記許可ユーザ情報に含まれていない場合は、前記登録依頼した前記ユーザからの前記登録依頼に基づく印刷装置の登録は実行しないことを特徴とする請求項2に記載の印刷システム。
【請求項4】
前記登録処理手段は、前記第2権限のユーザからの登録依頼に基づく登録を実行する前に、前記第1権限のユーザによる承認を得るための処理を実行することを特徴とする請求項1から3のいずれか1項に記載の印刷システム。
【請求項5】
前記印刷装置は、前記登録が実行された場合に、前記登録依頼をした前記第2権限のユーザからの印刷指示に基づく印刷ジョブを受信可能となることを特徴とする請求項1から4のいずれか1項に記載の印刷システム。
【請求項6】
前記印刷装置は、情報処理装置に格納されたアプリケーションに登録される仮想プリンタであることを特徴とする請求項1から5のいずれか1項に記載の印刷システム。
【請求項7】
前記印刷装置は、前記印刷ジョブに基づき印刷を実行可能な印刷装置であることを特徴とする請求項1から5のいずれか1項に記載の印刷システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷システム、サーバシステム、及び印刷装置に関する。
【背景技術】
【0002】
PC等の情報処理装置からクラウド上のサーバを経由して印刷を実行する構成が知られている。具体的には、情報処理装置からクラウド上に構成されたクラウド印刷サービスシステムに対して印刷要求を発行し、クラウド印刷サービスシステム上で関連付けられた印刷装置に対して印刷要求を送信する。複数のユーザで一つの印刷装置を共有利用する場合、クラウド印刷サービスシステム上に登録された印刷装置のユーザとして、複数のユーザを登録する必要がある。特許文献1では、印刷装置にあらかじめクラウド印刷サービスシステムを利用するための管理者用IDを保持しておくことで、クラウド印刷サービスシステム上の印刷装置のユーザを簡易に追加する構成が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1では、クラウド印刷サービスシステム上に既に登録されている印刷装置に、ユーザを簡易に追加可能な手法について言及している。しかしながら近年、在宅ワークニーズの増加等に伴い、仕事の資料を自宅で印刷するため、ユーザが自宅の印刷装置を新たにクラウド印刷サービスシステムに登録したい場合がある。なお、クラウド印刷に限らず、その他の印刷システムにおいても同様のケースがあり得る。そこで、本発明の一態様では、印刷装置の登録を簡易に行う技術を提供することを目的とする。
【課題を解決するための手段】
【0005】
上述のような課題を解決するため、本発明の印刷システムの一態様は、印刷装置と、サーバシステムと、を備える印刷システムであって、前記サーバシステムは、第1権限を有するユーザからの入力に基づき、前記第1権限よりも制限された権限である第2権限のユーザからの登録依頼に基づく印刷装置の登録を許可するか否かを示す情報を設定する設定手段と、印刷装置の登録依頼を受信した場合に、前記登録依頼に基づき、前記印刷装置の登録処理を行う登録処理手段と、を備え、前記登録処理手段は、前記登録依頼したユーザの権限が前記第2権限の場合、前記設定手段により前記第2権限のユーザからの登録依頼に基づく印刷装置の登録を許可することを示す情報が設定されている場合は、前記第2権限のユーザからの前記登録依頼に基づく印刷装置の登録を実行し、前記印刷装置は、前記登録が実行されることにより、前記サーバシステムを介した前記第2権限のユーザからの印刷指示に基づく印刷ジョブを受信可能となり、前記設定手段はさらに、前記第1権限を有するユーザからの入力に基づき、前記第2権限のユーザのうち印刷装置の登録を許可するユーザを示す許可ユーザ情報を設定し、前記登録依頼したユーザの権限が前記第1権限よりも制限された権限である第2権限の場合、前記登録処理手段は、前記設定手段により前記第2権限のユーザからの登録依頼に基づく印刷装置の登録を許可することを示す情報が設定されている場合であり、且つ、前記登録依頼したユーザを示す情報が前記許可ユーザ情報に含まれている場合に、前記登録依頼した前記ユーザからの前記登録依頼に基づく印刷装置の登録を実行する。
【発明の効果】
【0006】
本発明の一態様により、印刷装置の登録を簡易に実行することが可能となる。
【図面の簡単な説明】
【0007】
【
図2】情報処理装置及びクラウド印刷サービスシステムのハードウェア構成を示すブロック図。
【
図3】情報処理装置のソフトウェア構成を説明する機能ブロック図。
【
図4】クラウド印刷サービスが管理する各種設定情報の例。
【
図5】クラウド印刷サービスへの印刷装置の登録フローを説明するシーケンス図。
【
図6】
図5のデバイス登録処理の詳細な処理を説明するフローチャート。
【
図7】
図5のデバイス登録処理の詳細な処理を説明するフローチャート。
【
図8】クラウド印刷サービスのソフトウェア構成を説明する機能ブロック図。
【発明を実施するための形態】
【0008】
以下、図面を参照して本発明の実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
【0009】
<<実施形態1>>
<印刷システムの構成>
図1は、本発明の実施形態に係る印刷システムの構成を説明する図である。LAN(Local Area Network)102上には印刷装置111と情報処理装置140とが接続されている。情報処理装置140の一例としてはPCなどが挙げられる。また、情報処理装置140には、USBケーブル等を用いて印刷装置112が接続されている。なお、
図1では、印刷装置112はLAN102には接続されていないが、LAN102に接続されていてもよく、LAN102を介して情報処理装置140と通信可能に構成しても良い。
【0010】
なお、印刷装置111は、IPP(IPP:Internet Printing Protocol)仕様と、クラウド印刷の標準仕様と、に基づく印刷に対応(サポート)している印刷装置である。本実施形態では、印刷装置111は、クラウド印刷の標準仕様の一例として、IPP Shared Infrastructure Extensions(以下、IPP-Infraと呼ぶ)と称されるクラウド印刷を実行するための標準仕様に対応している。よって、印刷装置111は、このクラウド印刷の標準仕様に準じたクラウド印刷機能に基づく印刷を実行できる。一方、印刷装置112は、IPP仕様に基づく印刷には対応しているが、クラウド印刷の標準仕様に基づく印刷には対応していないものとする。以下では、印刷装置111と印刷装置112を総称して印刷装置110と呼ぶこともある。
【0011】
AP101が構築するLAN100には、タブレット131、スマートフォン132、PC133が接続されている。なお以下では、タブレット131、スマートフォン132、PC133などを総称して、情報処理装置130と呼ぶこともある。LAN100とLAN102はインターネット103に接続されている。インターネット103上には、クラウド上で印刷サービスを提供するクラウドサーバシステム(以下、クラウド印刷サービスシステム)120が接続されている。情報処理装置130、情報処理装置140、印刷装置111は、インターネット103を介して、クラウド印刷サービスシステム120と通信することができる。
【0012】
クラウド印刷サービスシステム120は、一例として、IPP-Infraに基づくクラウド印刷機能に対応している。クラウド印刷サービスシステム120は、IPP仕様に基づく印刷データを一次保存する。そして、IPP-Infraに基づくクラウド印刷仕様に対応している印刷装置111等からの要求に応じて、IPP-Infraの仕様に基づき、印刷装置に印刷データを送信することができる。
【0013】
情報処理装置130内のOS(オペレーティングシステム)には、IPP仕様(IPP:Internet Printing Protocol)に基づく印刷データを生成可能なIPP-Clientモジュールと呼ぶプログラムが標準搭載されている。情報処理装置130は、このIPP-Clientモジュールを利用し、IPP仕様に基づく印刷データを生成することができる。ユーザからの印刷指示に基づき情報処理装置130がクラウド印刷サービスシステム120に対して印刷ジョブを送信すると、クラウド印刷サービスシステム120は、クラウド上にその印刷ジョブを留め置く。
【0014】
IPP-Infra仕様に基づくクラウド印刷に対応した印刷装置である印刷装置111は、クラウド印刷サービスシステム120に印刷ジョブが保存されると、クラウド印刷サービスシステム120に印刷ジョブを要求する。印刷装置111は、クラウド印刷サービスシステム120に対して、印刷ジョブの取得を定期的に要求してもよい。もしくは、ユーザが、印刷装置111上で、印刷ジョブの取得を指示したことを受けて、印刷装置111は、クラウド印刷サービスシステム120に対して、印刷ジョブの取得を要求するよう構成してもよい。もしくは、クラウド印刷サービスシステム120は、クラウド印刷サービスシステム120に印刷ジョブが保存されると、印刷装置111に対して、クラウド印刷サービスシステム120に印刷ジョブが保存されたことを示す通知を発行するように構成してもよい。この場合、印刷装置111は、印刷ジョブが保存されたことを示す通知を受信すると、クラウド印刷サービスシステム120に対して印刷ジョブの取得を要求する。
【0015】
クラウド印刷サービスシステム120は、印刷装置111からの要求を受け、クラウド印刷サービスシステム120に留め置かれている印刷ジョブを印刷装置111に対して送信する。これにより印刷装置111は、印刷ジョブを取得して印刷を実行する。
【0016】
ここで、クラウド印刷サービスシステム120を利用するためには、クラウド印刷サービスシステム120上で管理者権限を持つユーザ(管理者)が、クラウド印刷サービスシステム120上に印刷装置を登録する必要がある。具体的には、事前にユーザが印刷装置111を操作して、クラウド印刷サービスシステム120に登録する処理を実行する。
【0017】
情報処理装置140には、情報処理装置130と同様にIPP-Clientモジュールがインストールされている。また、
図3にて後述するローカルIPPサービス300のプログラムがインストールされている。ローカルIPPサービス300は、クラウド印刷サービスシステム120から見た場合、IPP-Infra仕様に基づくクラウド印刷機能に対応する印刷装置と同等の振る舞いをするソフトウェア(アプリケーション)である。このソフトウェアがインストールされている情報処理装置140は、印刷装置111と同様にクラウド印刷サービスシステム120に印刷ジョブを要求することができる。ローカルIPPサービス300は、受信した印刷ジョブを後述するプリンタドライバ310が解釈可能な形式に変換し(スプールファイルを生成し)、プリンタドライバ310に渡す。プリンタドライバ310は、印刷装置112が解釈可能な印刷コマンドを生成する。
【0018】
印刷装置112は、情報処理装置140からUSBインタフェースやLANを介して受信した印刷コマンドに従って、印刷を実行する。このように、印刷装置に接続された情報処理装置140にインストールされたローカルIPPサービス300を利用することで、印刷装置112で、クラウド印刷サービスシステム120からの印刷ジョブを印刷することができる。つまり、情報処理装置130からの印刷指示に基づき、クラウド印刷サービスシステム120と情報処理装置140とを介して印刷ジョブが印刷装置112に出力される。このような構成により、クラウド印刷の標準仕様をサポートしていない印刷装置112に対しても、情報処理装置130から印刷を指示することが可能となる。
【0019】
なお、情報処理装置140が印刷指示する場合には、印刷装置112に対しては、通常通りUSBインタフェースやLANを介して印刷ジョブを送信するとよい。また、情報処理装置140にも、IPP-Clientモジュールがインストールされているため、クラウド印刷サービスシステム120を介して、印刷装置111に印刷を指示することもできる。
【0020】
また、本実施形態のクラウド印刷サービスシステム120は、1台のサーバにより構成されていてもよく、クラウド上の複数のサーバが連携して動作することで各機能を実行するよう構成されていてもよい。また、ローカルネットワーク上のサーバ装置であってもよい。また、本実施形態では、印刷システムの一例として上記の構成例で説明するが、本発明はこれに限定されるものではなく、情報処理装置130とクラウド印刷サービスシステム120と印刷装置110がネットワークを介して通信可能に接続されていればよい。またネットワークは無線であっても有線であっても良い。
【0021】
<情報処理装置及びクラウド印刷サービスのハードウェア構成>
図2は、情報処理装置140のハードウェア構成を示すブロック図である。本図における情報処理装置140は、一例としてPCであり、入力インタフェース210、CPU211、ROM212、RAM213、外部記憶装置214、出力インタフェース215、及び入出力インタフェース216を有する。また、入力インタフェース210には、キーボード218、ポインティングデバイス217などの入力デバイスが接続され、出力インタフェース215には、表示部219などの表示デバイスが接続されている。
【0022】
ROM212には、初期化プログラムが格納され、外部記憶装置214には、アプリケーションプログラム群、オペレーティングシステム(OS)、その他の各種のデータが格納されている。RAM213は、外部記憶装置214にストアされる各種のプログラムの実行の際のワークメモリ等として使用される。また情報処理装置140は、ネットワークI/F220を介してLAN102に接続されている。
【0023】
なお、本実施形態では、CPU211が、ROM212に格納されたプログラムの手順に従って処理を行うことによって、情報処理装置140における後述の機能及び後述するフローチャートに係る処理を実行する。デバイスである印刷装置110は、入出力インタフェース216を介して、情報処理装置140と接続されている。ここでは、情報処理装置140と印刷装置110が分かれて構成されているが、これらが一つの情報処理装置として構成されていても良い。なお、印刷装置は、インクを紙面上に吐出することで印刷するインクジェットプリンタを例に説明するが、他の方法(例えば電子写真方式)で印刷が実行されても良い。また、情報処理装置140は、サーバ装置でも、デスクトップパソコンでも、スマートフォンでも、ノートパソコンでも構わない。
【0024】
なお、情報処理装置130のハードウェア構成も、クラウド印刷サービスシステム120のハードウェア構成も、
図4に示すハードウェア構成と同じであるため説明を省略する。
【0025】
<情報処理装置のソフトウェア構成>
図3は、実施形態に係る情報処理装置140の印刷処理に係るソフトウェア構成を説明する機能ブロック図である。以降、各ソフトウェア及び機能ブロックを、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU211が実行することで、対応する機能が実現されることになる。
【0026】
ローカルIPPサービス300は、管理メッセージ処理部301、IPP通信メッセージ処理部302、制御API発行部303、認証処理部304、情報保存部305、仮想プリンタ管理部306、印刷ジョブ制御部307を有している。管理メッセージ処理部301は、クラウド印刷サービスシステム120の仕様に基づいた管理メッセージの受信と、生成と、送信を行う。IPP通信メッセージ処理部302は、IPP通信メッセージの受信と、生成と、送信を行う。制御API発行部303は、クラウド印刷サービスシステム120に対して、制御APIを発行する。制御APIとは、クラウド印刷サービスシステム120が保有する情報の取得の要求や、設定の変更などを指示可能なクラウド印刷サービスシステム120が提供するエンドポイントである。
【0027】
認証処理部304は、クラウド印刷サービスシステム120の仕様に従った認証要求などを行う。情報保存部305は、認証処理部304が認証により取得したトークンや、仮想プリンタ管理部306が生成する仮想プリンタに関する情報などを保存する。仮想プリンタ管理部306は、ローカルIPPサービス300上に登録する仮想プリンタに関する情報の生成や変更を行う。印刷ジョブ制御部307は、IPP通信メッセージ処理部302が受信した印刷ジョブを、プリンタドライバ310が解釈可能な形式に変換し、プリンタドライバ310に渡す。それぞれの処理部は相互に通信可能である。
【0028】
ユーザは、ローカルIPPサービス300の機能を利用し、情報処理装置140内に仮想的なプリンタを登録することができる。また、ユーザは、仮想的なプリンタと、プリンタドライバ310を関連付けすることができる。ローカルIPPサービス300の管理メッセージ処理部301と、IPP通信メッセージ処理部302は、クラウド印刷の標準仕様に対応している印刷装置と同様に印刷ジョブの受信や、クラウド印刷システムへの印刷装置の登録をすることができる。これにより、情報処理装置140は、ローカルIPPサービス300に登録された仮想的なプリンタをクラウド印刷サービスシステム120に登録し、IPP-Infraに基づき、クラウド印刷サービスシステム120から印刷ジョブを受信することができる。
【0029】
ローカルIPPサービス300は、受信した印刷ジョブをプリンタドライバ310が解釈可能な形式に変換し、プリンタドライバ310に渡す。プリンタドライバ310の処理により、情報処理装置140に接続された印刷装置112は印刷処理を実行する。
【0030】
このように、印刷装置112に接続された情報処理装置140にインストールされたローカルIPPサービス300を利用することで、クラウド印刷の標準仕様に対応していない印刷装置でも、クラウド印刷サービスシステム120からの印刷ジョブに従った印刷を実行することができる。
【0031】
<クラウド印刷サービスのソフトウェア構成>
図8は、実施形態に係るクラウド印刷サービスシステム120のソフトウェア構成を説明する機能ブロック図である。以降、各ソフトウェア及び機能ブロックを、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU211が実行することで、対応する機能が実現されることになる。
【0032】
クラウド印刷サービスシステム120は、アカウント管理部701と、クラウド印刷部702を有している。アカウント管理部701は、アカウント情報管理部703と認証処理部704を有している。アカウント情報管理部703は、クラウド印刷サービスシステム120を利用するユーザ情報の管理を行う。ユーザ情報は、情報保存部705に格納される。認証処理部704は、アカウントとパスワードの正当性の検証や、クラウド印刷サービスシステム120にアクセスするための権限情報を示すトークンの発行等を行う。
【0033】
クラウド印刷部702は、管理メッセージ処理部706、IPP通信メッセージ処理部707、制御API処理部708、プリンタ管理部709、印刷ジョブ処理部710を有している。管理メッセージ処理部は、クラウド印刷サービスシステム120の仕様に基づいた、管理メッセージの受信、生成、送信を行う。IPP通信メッセージ処理部707は、IPP通信メッセージの受信と、生成と、送信を行う。制御API処理部708は、制御APIを受信し、要求に従った処理の実行や、各種設定の変更を行う。プリンタ管理部709は、クラウド印刷サービスシステム120に登録されているプリンタの管理を行う。プリンタに関する各種情報は、情報保存部705に格納される。印刷ジョブ処理部710は、クラウド印刷サービスシステム120に対して発行されIPP通信メッセージ処理部707が受信した印刷ジョブの保存や編集を行う。また、印刷ジョブ処理部710は、IPP通信メッセージ処理部707が受信した印刷ジョブの取得要求に伴う依頼に応じて、印刷ジョブをIPP通信メッセージ処理部707に渡す。
【0034】
クラウド印刷サービスシステム120は、以上の構成により、IPP-Infra仕様に基づくクラウドプリントにおける、サーバとしての役割を担う。また、プリンタ管理部709により、複数のプリンタを登録することができる。また、クラウド印刷サービスシステム120は、アカウント管理部701を有しており、クラウドサービスのユーザを管理するディレクトリサービスとしても機能する。なお、アカウント管理部701とクラウド印刷部702は、別々のサービスとして構成しても良い。
【0035】
<クラウド印刷サービスが管理する情報>
図4は、本実施形態に係るクラウド印刷サービスシステム120が管理する各種設定情報のうち代表的な情報の例を模式的に示した表である。クラウド印刷サービスシステム120は、複数の会社等のグループごとに利用可能に構成され、ある会社は別の会社の情報を閲覧できないように管理される。1つのグループをテナント(ディレクトリ)と呼び、
図4は、XYCompanyという名称のテナントの設定情報を示す。設定401は管理者名であり、対応する値として、このテナントの各種設定の変更権限を持つ管理者権限のユーザIDが格納されている。管理者名の値に、複数のユーザIDを格納しても良い。なお、管理者権限は、クラウド印刷サービスシステム120において、印刷装置の登録に関する許可権限を与えるユーザを示し、管理者権限のユーザを管理者と呼ぶこともある。
【0036】
印刷情報に分類される設定402は、ユーザ権限のユーザIDによるプリンタ登録を許可しているか否かを示す情報が格納される。設定403は、登録許可ユーザ情報であり、対応する値として、プリンタ登録が許可されているユーザのユーザIDが格納される。設定403には、複数のユーザIDを登録することもできる。設定404には、ユーザ権限のユーザIDによるプリンタ登録要求(登録依頼)があった場合に、管理者による確認が必要か否かの情報が値として格納される。これらの設定値による振る舞いの違いについては
図6を用いて後述する。設定402、403、404の値は、管理者によって変更可能である。ユーザ権限は管理者権限よりも制限された権限であり、例えば、管理者権限が変更可能な設定402、403、404の値は、ユーザ権限では変更することはできない。
【0037】
図4に示すテナントには、プリンタ1というプリンタと、プリンタ2というプリンタの、2つのプリンタが登録されている。
図4のおけるプリンタとは、クラウド印刷サービスシステム120上に登録された論理的なプリンタである。この論理的なプリンタは、
図1の印刷装置111のような物理的な印刷装置(プリンタ)、もしくは情報処理装置140のローカルIPPサービス300に登録された仮想的な印刷装置(プリンタ)と紐づけられている。発行された印刷要求は対応する論理的なプリンタに蓄積され、関連付けて登録されている実際の物理的な印刷装置から印刷ジョブの取得要求があると、論理的なプリンタからは印刷ジョブは削除される。
【0038】
クラウド印刷サービスシステム120には3つ以上のプリンタを登録することも可能であり、その場合は、登録されているプリンタの数分の情報が格納される。設定405は、プリンタ名であり、対応する値として、そのプリンタの名称が格納される。設定406はデバイスIDであり、対応する値として、そのプリンタを一意に特定するIDが値として格納される。設定407は登録ステータスであり、このプリンタの登録状況を示す値が格納される。プリンタ1の登録ステータスは、「登録済み」となっており、このプリンタが利用可能な状態となっていることを示す。他方、プリンタ2の登録ステータスは「承認待ち」となっており、管理者による承認待ちであることを示す。クラウド印刷サービスシステム120の登録フローと、登録ステータス407との関係は
図6を用いて後述する。
【0039】
設定408は共有設定であり、プリンタが他のユーザが利用可能な共有状態であるか否かを示す値が設定される。設定409は初期設定であり、クラウド印刷サービスシステム120上のこのプリンタに対して印刷する際の、デフォルト状態における印刷設定を示す。設定410は、クラウド印刷サービスシステム120上の対応するプリンタを利用可能なユーザを示す。ここでは、User AとUser Bという二人のユーザが登録されているが、三人以上であっても構わない。
【0040】
設定408、409、410の値は、管理者によって変更可能である。設定411はプリンタ能力で、このプリンタで指定可能な印刷設定とその設定値が値として格納される。設定412はプリンタステータスであり、登録されている印刷装置の現在のステータスが値として格納される。このステータスは、関連付けられている実際の印刷装置の状態に従って変化する。
【0041】
以上のように、クラウド印刷サービスシステム120は、印刷装置を複数台登録することができる。また、それぞれの印刷装置に対して利用可能なユーザを設定することができる。
【0042】
<クラウド印刷サービスへの印刷装置の登録シーケンス>
図5は、実施形態に係るクラウド印刷サービスシステム120への印刷装置の登録フローを説明するシーケンス図である。以降、各ソフトウェア及び機能ブロックを、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU211が実行することで、対応する機能が実現されることになる。なお、以下では、管理者のユーザは
図1の情報処理装置130のいずれかを用い、クラウド印刷サービスシステム120に管理者権限のアカウントでログインしているものとする。
【0043】
管理者の情報処理装置130は、ステップS501で、クラウド印刷サービスシステム120の提供するフロントエンドにアクセスし、ユーザ権限による印刷装置登録に関する設定を指定する。この設定は、
図4の402,403,404の設定であり、これらの設定値に伴う動作の違いについては、
図6を用いて後述する。クラウド印刷サービスシステム120は、管理者の入力に基づき、指定された各設定値を設定(格納)する。
【0044】
ステップS502では、ユーザからの指示に基づき、情報処理装置140は、情報処理装置140に接続した印刷装置112に対応するプリンタドライバ310を情報処理装置140にインストールする。プリンタドライバ310がインストールされることにより、ユーザは情報処理装置140にインストールされている任意のアプリケーション(描画アプリケーション等)から、印刷装置112に対して印刷を指示することができる。
【0045】
ステップS503では、ユーザからの指示に基づき、情報処理装置140は、情報処理装置140にインストールされているローカルIPPサービス300を起動する。そして、ユーザにより情報処理装置140にインストールされたプリンタドライバ310が指定され登録が指示されると、ローカルIPPサービス300は、指定されたプリンタドライバ310に関連付けられる仮想プリンタの登録依頼として受け付ける。例えば、ローカルIPPサービスが提供する画面において、ユーザが印刷装置112のプリンタドライバ310を指定した場合、ローカルIPPサービスに印刷装置112に関連づいた仮想プリンタの登録依頼を受け付ける。
【0046】
S504では、情報処理装置140内のローカルIPPサービス300は、トークンの生成要求をクラウド印刷サービスシステム120に発行する。より具体的には、ローカルIPPサービス300の仮想プリンタ管理部306は、仮想プリンタの登録の依頼を受けると、認証処理部304に認証処理を依頼する。さらに、ローカルIPPサービス300の認証処理部304は、クラウド印刷サービスシステム120に対して、ユーザトークンの生成要求を発行する。ユーザトークンとは、クラウド印刷サービスシステム120への認証により得られるクラウド印刷サービスシステム120における操作権限を含む情報である。クラウド印刷サービスシステム120の提供する各種サービスを利用する場合、ユーザからの要求にはこのユーザトークンが付加される。クラウド印刷サービスシステム120は、渡されたユーザトークンを検証し、そのユーザトークンが要求のあった操作を実行可能な権限を有していると判断した場合、要求を受けた操作を実行する。
【0047】
ローカルIPPサービス300がクラウド印刷サービスシステム120に対してユーザトークンの生成要求を発行すると、クラウド印刷サービスシステム120の提供するログインページが情報処理装置140にインストールされたWebブラウザで表示される。
【0048】
ステップS505にて、クラウド印刷サービスシステム120は、Webブラウザ上に表示されたクラウド印刷サービスシステム120の提供するログインページにおいて、クラウド印刷サービスシステム120が管理するユーザIDとパスワードの入力をユーザから受け付ける。なお、ユーザIDとパスワードは、アカウント管理部701にアカウントの登録が要求された場合に、ユーザに対してその案内と仮パスワードがメールで通知される。その後、ユーザが希望するパスワードを変更するとよい。
【0049】
クラウド印刷サービスシステム120は、ステップS506にて、ユーザ入力されたユーザIDとパスワードを検証する。そして、クラウド印刷サービスシステム120が利用可能な登録済みのユーザIDとパスワードであることを確認(認証)できた場合は、入力されたユーザIDに与えられた権限情報を含むユーザトークン(認証情報)をローカルIPPサービス300に返答する。
【0050】
その後、ローカルIPPサービス300は、ステップS507にて、ユーザトークンを用いてクラウド印刷サービスシステム120に対し、デバイス(印刷装置)の登録を要求する。S507のデバイス登録処理については
図6を用いて後述する。
【0051】
なお、
図5では、クラウド印刷の標準仕様に対応していない印刷装置112を登録する例を説明したため、ユーザは情報処理装置140を操作してローカルIPPサービス300に各種処理を実行させる構成を説明した。しかしながら、クラウド印刷の標準仕様に対応している印刷装置111であれば、印刷装置111を登録するために、ユーザが印刷装置111を操作して各種処理を実行させることも可能である。
【0052】
つまり、
図5におけるローカルIPPサービス300の処理は、クラウド印刷の標準仕様に対応している印刷装置111においても実行可能である。ただし、印刷装置111が実行する場合、ユーザはS503においてプリンタドライバの指定は行わず、操作している印刷装置111の登録を指示し、印刷装置111はこの登録指示を受け付ける。
【0053】
印刷装置111がWebブラウザに相当する機能を有する場合、印刷装置111は、この登録指示に基づき、S504でトークンの生成をクラウド印刷サービスシステム120へ要求する。
【0054】
この要求を受け、S505にて、印刷装置111は、クラウド印刷サービスシステム120の提供するログインページを表示する。その後の処理は
図5の説明において、ローカルIPPサービス300を印刷装置111に置き換えることで実行可能である。
【0055】
印刷装置111がWebブラウザに相当する機能を有していない場合、印刷装置111は、RemoteUI上でS504以降の処理を実行する機能を提供し、管理者やユーザはRemoteUI上から登録処理を指示するよう構成しても良い。
【0056】
<クラウド印刷サービスへの印刷装置の登録フロー>
図6は、
図5のS507の処理の詳細な処理を説明するフローチャートである。以降、各ソフトウェア及び機能ブロックを、各処理の主体として説明することもあるが、実際には、対応するプログラムをCPU211が実行することで、対応する機能が実現されることになる。
【0057】
ローカルIPPサービス300は、
図5のS506にてユーザトークンを受けことに応答して、S601でクラウド印刷サービスシステム120に対してデバイス登録処理を依頼する。この時、ローカルIPPサービス300は、
図5のS506の処理で受信したトークンと、登録するデバイスに関する情報をクラウド印刷サービスシステム120に送信する。デバイスに関する情報として、例えば、
図4の設定405のプリンタ名等が含まれる。なお、登録するデバイスとは、
図5のS503において指定されたプリンタドライバに紐づいてローカルIPPサービス300に登録された仮想的なプリンタである。よって、S503でユーザが印刷装置112のプリンタドライバ310を指定した場合、S601では、デバイスに関連する情報として、ローカルIPPサービス300に登録された仮想的なプリンタの名称が送信される。
【0058】
次に、S602の処理で、クラウド印刷サービスシステム120は、ローカルIPPサービス300から受領したトークンを一時的に保存する。
【0059】
次に、S603の処理で、クラウド印刷サービスシステム120は、受領したトークンの検証を行う。受領したトークンがクラウド印刷サービスシステム120の利用権限を持たない不正なトークンであると判断した場合、クラウド印刷サービスシステム120はS611の処理に進む。S611の処理では、クラウド印刷サービスシステム120は、デバイスの登録が失敗したことを示す情報をローカルIPPサービス300に返却し、処理を終了する。
【0060】
S603の処理で、トークンが正常であると検証できた場合、クラウド印刷サービスシステム120は、S604の処理に進む。
【0061】
S604では、クラウド印刷サービスシステム120は、トークンに付与された権限が管理者権限であるか、ユーザ権限であるかを判定する。管理者権限であると判定した場合、クラウド印刷サービスシステム120は、S615に進む。
【0062】
S615では、クラウド印刷サービスシステム120は、登録要求のあったデバイスを「登録済み」のステータスで登録する。この登録とは、具体的には、
図4に示すプリンタ1のように、設定407を「登録済み」のステータスとし、プリンタ1の情報の各設定値を格納することを指す。これにより、クラウド印刷サービスシステム120上で登録されたプリンタに対して、印刷ジョブを送信できる状態になる。次に、クラウド印刷サービスシステム120は、S617の処理に進む。S617以降の処理については後述する。
【0063】
S604で、トークンに付与された権限がユーザ権限であると判定した場合、クラウド印刷サービスシステム120は、S605に進む。
【0064】
S605では、クラウド印刷サービスシステム120は、ユーザ権限のユーザIDからの登録依頼に基づく印刷装置の登録が許可されているかを判定する。これは、
図4の設定402に、許可を示す値が格納されているか否かによって判定される。S605で、ユーザ権限による登録が許可されていないと判定した場合、クラウド印刷サービスシステム120は、S611に進み処理を終了する。S605で、ユーザ権限による登録が許可されていると判定した場合、クラウド印刷サービスシステム120は、S606に進む。
【0065】
S606では、クラウド印刷サービスシステム120は、トークンに含まれる情報を元に、トークンを送信したユーザIDを特定し、そのユーザがプリンタ登録を許可されているユーザであるか否かを判定する。これは、
図4の設定403中に、トークンに基づき特定されたユーザIDが含まれるか否か(記述されているか否か)によって判定される。
【0066】
S606で許可されていないユーザであると判定した場合、S611に進み処理を終了する。S606で許可されているユーザであると判定した場合、クラウド印刷サービスシステム120は、S607に進む。
【0067】
S607で、クラウド印刷サービスシステム120は、ユーザ権限による印刷装置の登録のために、管理者による確認が必要か否かを判定する。これは、
図4の設定404に、必要であることを示す値が設定されているか否かによって判定する。S607で、管理者による確認が不要であると判定した場合、S615に進む。S607で、管理者による確認が必要であると判定した場合、クラウド印刷サービスシステム120は、S608に進む。
【0068】
S608では、クラウド印刷サービスシステム120は、登録ステータスを「承認待ち」とした上で、登録要求のあったデバイス(ここでは印刷装置112)を登録する。登録ステータスは、
図4の設定407に示される設定値であり、例えば、
図4のプリンタ2は、「承認待ち」の登録ステータスであることを示す。クラウド印刷サービスシステム120は、このような「承認待ち」の登録ステータスのプリンタに対しては印刷要求を受け付けないように構成する。すなわち、ユーザ権限では、「承認待ち」の登録ステータスのプリンタに対して、印刷指示を発行することはできない。
【0069】
S608の処理の後、S609でクラウド印刷サービスシステム120は、承認待ちのステータスであることを示す情報をローカルIPPサービス300に送信する。
【0070】
S612でローカルIPPサービス300は、デバイス登録処理依頼を定期的に発行し、クラウド印刷サービスシステム120において、管理者による承認が完了しているかを確認する。登録ステータスが「承認待ち」のままであった場合、クラウド印刷サービスシステム120は、S612の要求に対し、承認待ちのステータスであることを示す情報を継続して送信する。登録ステータスが「承認済み」となった後の処理は後述する。
【0071】
S612では、クラウド印刷サービスシステム120は、確認用URLを管理者にメールで送信する。なお、メール以外の方法で管理者に依頼するように構成しても良い。メールには、登録依頼のあった印刷装置の情報や、依頼を発行したユーザ情報等が含まれる。
【0072】
S610で送信されたメールを受信した管理者は、S613で確認用URLをブラウザで開いたものとする。
【0073】
続いて、S614で、起動されたブラウザ上に表示されたクラウド印刷サービスシステム120のフロントエンドに於いて、管理者が管理者権限を持つユーザIDとパスワードを入力したとする。つまり、ウェブブラウザで表示されたクラウド印刷サービスシステム120の提供する画面において、管理者権限のユーザIDとパスワードを入力する。
【0074】
この入力を受け付けると、クラウド印刷サービスシステム120は、S616にて、入力されたユーザIDとパスワードを検証し、管理者権限を持つユーザであると判定した場合、登録依頼のあったプリンタを「登録済み」のステータスに変更する。なお、クラウド印刷サービスシステム120は、管理者から登録許可を示す入力を受け付けるページを表示してもよい。この場合、このページにおける管理者の登録許可を示す入力を受け付けることで、登録依頼のあったプリンタを「登録済み」のステータスに変更する。以上の処理により、クラウド印刷サービスシステム120のユーザは、「登録済み」のステータスのプリンタに対して印刷要求を発行することができるようになる。
【0075】
クラウド印刷サービスシステム120においてプリンタが「登録済み」のステータスで登録されると、S617では、クラウド印刷サービスシステム120は、S612およびS615のデバイス登録処理依頼に対してデバイストークンを応答する。なお、このデバイストークンは、クラウド印刷サービスシステム120上において、論理的なプリンタに関連付けられている。従って、印刷装置111、もしくはローカルIPPサービス300に登録された仮想的なプリンタは、このデバイストークンをクラウド印刷サービスシステム120に渡して印刷データを要求する。これにより印刷装置111は、デバイストークンに関連付けられた論理的なプリンタから、その論理プリンタに対する印刷データを受信することができる。
【0076】
ローカルIPPサービス300は、S621の処理で、受信したデバイストークンを保存し、処理を終了する。本処理により、ローカルIPPサービス300には仮想プリンタが登録される。以降、ローカルIPPサービス300は、取得したデバイストークンを用いることで、クラウド印刷サービスシステム120上でデバイストークンに関連付けられたプリンタに対して発行された印刷ジョブを受信可能となる。
【0077】
S617の処理の後、S618でクラウド印刷サービスシステム120は、登録したプリンタ(ここでは印刷装置112)がユーザ権限のユーザIDからの登録依頼に基づく登録であったか否かを判定する。管理者権限のユーザからの登録依頼であった場合、クラウド印刷サービスシステム120は処理を終了する。
【0078】
ユーザ権限のユーザからの依頼であった場合、クラウド印刷サービスシステム120は、S619に進み、登録したプリンタの共有設定を、「共有」を示す値に変更する。具体的には、
図4における設定408に、「共有」を示す値が格納される。
【0079】
次に、クラウド印刷サービスシステム120は、S620に進み、デバイス登録処理依頼を発行したユーザIDを、S602で一時保存したトークンから特定し、そのユーザIDを、登録したプリンタユーザとして登録する。具体的には、
図4における設定410に、登録依頼を発行したユーザのユーザIDを設定値として格納する。
【0080】
なお、クラウド印刷サービスシステム120は、S619とS620の処理については、ローカルIPPサービス300の制御API発行部303から指示を受けてから実行するように構成しても良い。具体的には、ローカルIPPサービス300の制御API発行部303が、S621におけるデバイストークンの受信後、クラウド印刷サービスシステム120に対して、登録依頼したユーザIDを、登録した印刷装置のユーザとして登録(追加)するよう指示する。この指示を受け、クラウド印刷サービスシステム120は、S619及びS620を実行する。なお、この場合はS618は省略される。
【0081】
また、クラウド印刷サービスシステム120がプリンタ毎にそのプリンタの管理者を指定可能に構成してもよい。この場合は、S619とS620の処理の代わりに、プリンタの管理者の設定に、登録依頼を発行したユーザのユーザIDを格納するよう構成しても良い。以上でクラウド印刷サービスシステム120の処理を終了する。
【0082】
なお、
図6では、クラウド印刷の標準仕様に対応していない印刷装置112を登録する例を説明したため、ローカルIPPサービス300がクラウド印刷サービスシステム120に対して各種の処理を実行する構成を説明した。しかしながら、クラウド印刷の標準仕様に対応している印刷装置111であれば、印刷装置111を登録するために、印刷装置111がクラウド印刷サービスシステム120に対して各種の処理を実行することも可能である。
【0083】
図7に、印刷装置111が、実行する場合のシーケンスを示す。このシーケンスにおいては、
図6のローカルIPPサービス300の処理が印刷装置111に置き換えられており、さらに、S700が追加されている点とS618が削除されている点とが
図6とは異なる。それ以外は
図6と同様である。
【0084】
印刷装置111は、S621においてデバイストークンを受信した後、クラウド印刷サービスシステム120に対して、登録依頼したユーザIDを、登録した印刷装置のユーザとして登録(追加)するよう指示する。この指示を受け、クラウド印刷サービスシステム120は、S619及びS620を実行する。
【0085】
なお、この実施形態においても、
図6と同様、印刷装置111からS700の処理を実行することなく、クラウド印刷サービスシステム120は、S617の処理の後に、S618からS620の処理を実行するように構成してもよい。
【0086】
以上説明したとおり、本実施形態では、クラウド印刷サービスシステム120は、管理者権限を持つユーザだけでなく、ユーザ権限を持つユーザであっても印刷装置の登録が可能である。ローカルIPPサービス300は、ユーザ権限を持つユーザの登録をクラウド印刷サービスシステム120に行わせるため、S612の処理を実行する。それ以外の処理は、管理者権限を持つユーザが印刷装置をクラウド印刷サービスシステム120に登録する際のフローと基本的に同等である。よって、簡単な機能拡張でユーザ権限を持つユーザによる印刷登録を実現することができる。
【0087】
また、本印刷システムにおけるクラウド印刷サービスシステム120は、管理者からの指定に基づき、ユーザ権限による印刷装置の登録を許可するか否かを示す情報を設定することができる。これにより、管理者が必要ないと判断した場合は、ユーザ権限によるプリンタ登録を禁止することができ、セキュリティ性が向上する。
【0088】
また、クラウド印刷サービスシステム120は、管理者からの指定に基づき、ユーザ権限のユーザIDのうち、プリンタ登録を許可するユーザIDを設定することができる。これにより、例えば、在宅ワークを行う特定のユーザだけがプリンタ登録をできるように構成するといったことが可能となり、セキュリティ性が向上する。
【0089】
さらに、クラウド印刷サービスシステム120は、ユーザ権限によるプリンタ登録時における管理者による確認が必要か否かを設定しておくことができる。これにより、管理者は、利用形態に応じて、柔軟な運用が可能となる。例えば、在宅ワークをする多数のユーザがプリンタ登録を行うケースにおいて、管理者による確認を「不要」としておけば、管理者は多数の登録依頼の承認操作をする必要がない。また、プリンタを登録したユーザはすぐに登録を完了しプリンタを利用できる。逆に、登録許可ユーザに「すべてのユーザ」を指定し、管理者による確認を「必要」としておけば、管理者は、許可ユーザを事前に登録する必要がなく、逆に、登録依頼がきた場合は、逐一その登録依頼の内容を確認しながら承認できる。
【0090】
なお、
図6の登録が完了した場合、登録依頼をしたユーザID(仮に、UserAとする)のユーザは、登録した印刷装置112に対して印刷指示が可能となる。例えば、情報処理装置130もしくは情報処理装置140を用いてユーザがUserAでログインして印刷装置112を指定して印刷指示を行うことで、印刷装置112に印刷を実行させることが可能となる。UserAが、印刷装置111の登録を行った場合は、同様の処理により、印刷装置111に対して印刷を実行させることが可能となる。
【0091】
<<その他の実施形態>>
上述した実施形態は、以下の処理を実行することによっても実行される。すなわち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUまたはMPU)が記録媒体に格納されたプログラムコードを読み出し実行する。これによって、上述した目的を達成することができる。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0092】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
【0093】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでない。そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0094】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれてもよい。そして、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ってもよい。その処理によって前述した実施形態の機能が実現される。
【符号の説明】
【0095】
110 印刷装置
120 クラウド印刷サービス
130 情報処理装置
300 ローカルIPPサービス
310 プリンタドライバ