IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

<>
  • 特許-サーバ、制御方法、プログラム 図1
  • 特許-サーバ、制御方法、プログラム 図2
  • 特許-サーバ、制御方法、プログラム 図3
  • 特許-サーバ、制御方法、プログラム 図4
  • 特許-サーバ、制御方法、プログラム 図5
  • 特許-サーバ、制御方法、プログラム 図6
  • 特許-サーバ、制御方法、プログラム 図7
  • 特許-サーバ、制御方法、プログラム 図8
  • 特許-サーバ、制御方法、プログラム 図9
  • 特許-サーバ、制御方法、プログラム 図10
  • 特許-サーバ、制御方法、プログラム 図11
  • 特許-サーバ、制御方法、プログラム 図12
  • 特許-サーバ、制御方法、プログラム 図13
  • 特許-サーバ、制御方法、プログラム 図14
  • 特許-サーバ、制御方法、プログラム 図15
  • 特許-サーバ、制御方法、プログラム 図16
  • 特許-サーバ、制御方法、プログラム 図17
  • 特許-サーバ、制御方法、プログラム 図18
  • 特許-サーバ、制御方法、プログラム 図19
  • 特許-サーバ、制御方法、プログラム 図20
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-11
(45)【発行日】2024-10-22
(54)【発明の名称】サーバ、制御方法、プログラム
(51)【国際特許分類】
   G06F 3/12 20060101AFI20241015BHJP
   H04N 1/00 20060101ALI20241015BHJP
【FI】
G06F3/12 365
G06F3/12 303
G06F3/12 387
G06F3/12 367
H04N1/00 127A
【請求項の数】 9
(21)【出願番号】P 2023136039
(22)【出願日】2023-08-24
(62)【分割の表示】P 2023060596の分割
【原出願日】2019-05-17
(65)【公開番号】P2023158000
(43)【公開日】2023-10-26
【審査請求日】2023-09-15
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【弁理士】
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【弁理士】
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【弁理士】
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【弁理士】
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【弁理士】
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】井上 剛
【審査官】佐藤 実
(56)【参考文献】
【文献】特開2017-111799(JP,A)
【文献】特開2013-250915(JP,A)
【文献】特開2012-108676(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/09 - 3/12
H04N 1/00
B41J 29/00 -29/70
(57)【特許請求の範囲】
【請求項1】
外部から得られた印刷データをプリンタへ供給する第1のクラウドプリントサービスを提供する第1のクラウドプリントサーバーシステムと前記プリンタから構成されるシステムであって、
前記第1のクラウドプリントサービスとは異なる第2のクラウドプリントサービスに対して前記第1のクラウドプリントサービスを前記第2のクラウドプリントサービスにおける出力先プリンタとして登録する登録要求を送信する送信手段と、
前記登録要求に基づいて前記出力先プリンタの登録が完了した後に、前記第2のクラウドプリントサービスから印刷データを取得し、当該取得された印刷データを記憶部に記憶させる第1の格納手段と、
前記第2のクラウドプリントサービスを経由しない経路で、クライアント端末から受信した印刷データを前記記憶部に記憶させる第2の格納手段と、
前記記憶部に記憶された印刷データを前記プリンタへ供給する供給手段と、
供給された前記印刷データを印刷する印刷手段と、を有するシステム。
【請求項2】
前記第1のクラウドプリントサービスと、前記第2のクラウドプリントサービスは、異なる種類のクラウドプリントサービスであることを特徴とする請求項1に記載のシステム。
【請求項3】
前記登録要求は、前記第1のクラウドプリントサービスの出力先として登録済みのプリンタに対応する印刷能力を有するプリンタを前記第2のクラウドプリントサービスの出力先として登録する登録要求であることを特徴とする請求項1または2に記載のシステム。
【請求項4】
前記第2のクラウドプリントサービスの技術仕様に則って、前記第2のクラウドプリントサービスからの印刷データの取得が実行され、
前記記憶に記憶された印刷データは、前記第1のクラウドプリントサービスの技術仕様に則って前記プリンタに供給されることを特徴とする請求項1に記載のシステム。
【請求項5】
前記第1のクラウドプリントサーバーシステムは、前記送信手段と、前記第1の格納手段と、前記第2の格納手段と、前記供給手段を有し、
前記プリンタは、前記印刷手段を有することを特徴とする請求項1乃至4の何れか1項に記載のシステム。
【請求項6】
外部から得られた印刷データをプリンタへ供給する第1のクラウドプリントサービスを提供する第1のクラウドプリントサーバーシステムと前記プリンタから構成されるシステムの制御方法であって、
前記第1のクラウドプリントサービスとは異なる第2のクラウドプリントサービスに対して前記第1のクラウドプリントサービスを前記第2のクラウドプリントサービスにおける出力先プリンタとして登録する登録要求を送信させる送信ステップと、
前記登録要求に基づいて前記出力先プリンタの登録が完了した後に、前記第2のクラウドプリントサービスから印刷データを取得させ、当該取得された印刷データを記憶部に記憶させる第1の格納ステップと、
前記第2のクラウドプリントサービスを経由しない経路で、クライアント端末から受信した印刷データを前記記憶部に記憶させる第2の格納ステップと、
前記記憶部に記憶された印刷データを前記プリンタへ供給させる供給ステップと、
供給された前記印刷データを印刷させる印刷ステップと、を含むことを特徴とする制御方法。
【請求項7】
前記第1のクラウドプリントサービスと、前記第2のクラウドプリントサービスは、異なる種類のクラウドプリントサービスであることを特徴とする請求項6に記載の制御方法。
【請求項8】
前記登録要求は、前記第1のクラウドプリントサービスの出力先として登録済みのプリンタに対応する印刷能力を有するプリンタを前記第2のクラウドプリントサービスの出力先として登録する登録要求であることを特徴とする請求項6または7に記載の制御方法。
【請求項9】
前記第2のクラウドプリントサービスの技術仕様に則って、前記第2のクラウドプリントサービスからの印刷データの取得が実行され、
前記記憶部にて記憶された印刷データは、前記第1のクラウドプリントサービスの技術仕様に則って前記プリンタに供給されることを特徴とする請求項6に記載の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷データを管理するサーバ、制御方法、プログラムに関する。
【背景技術】
【0002】
近年、クラウド経由で印刷ジョブを投入し、印刷装置に印刷ジョブを送信するクラウドプリントサービスが普及し始めている(特許文献1)。このような印刷システムでは、まず管理者が印刷装置を、管理者が所属するクラウドプリントサービスへ登録する。続けて、管理者はどのユーザに、印刷装置の使用を許可させるかを設定する。
【0003】
印刷装置の使用を許可されたユーザは、クライアント端末からクラウドプリントサービスへ印刷ジョブを投入する。クラウドプリントサービスは受信した印刷ジョブをストレージに保存する。印刷装置はクラウドプリントサービスに保存された印刷ジョブを取得し、印刷する。
【0004】
クラウドプリントサービスの一例としては、GoogleCloudPrint(登録商標)、MicrosoftHybridCloudPrint(登録商標)、UniflowOnLine(登録商標)などがある。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2012-133489号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
エンタープライズ環境においては、複数のOSベンダーのクライアント端末(例えばWindows(登録商標)OS、macOS(登録商標)、Chrome(登録商標)OSなど)を使用される。また、近年クラウドプラットフォームの利用も普及してきており、1つの企業体が複数の異なるクラウドプラットフォーム(例えば、AWS、Azure、GoogleCloudPlatformなど)を併用するケースが増えている。また、各クラウドプラットフォームを利用するユーザが簡易に印刷を行えるよう、各プラットフォームがユーザにクラウドプリントサービスを提供するケースも増えてきている。
【0007】
この場合、図20に示すように複数のクラウドプリントサービス(例えば、クラウドプリントサービスA~C)が混在することとなる。
【0008】
これらの環境下において、印刷装置が複数のクラウドプリントサービスをサポートするには、各クラウドプリントサービスから印刷ジョブを適切に受信するための印刷機能を印刷装置へ組み込まなければならない。しかしながら、印刷装置の発売時期によっては特定のクラウドプリントサービスからの印刷機能をサポートしていない場合があり、そのような印刷装置は、特定のクラウドプリントサービスから利用できないといった問題点がある。
【0009】
また、複数のクラウドプリントサービスが混在する場合、管理者による複数のクラウドプリントサービスへの登録作業やメンテナンス作業に手間がかかるといった問題点がある。
【0010】
また、複数のクラウドプリントサービスが混在すると、アクセスコントロールや履歴情報を一元管理できないといった問題点がある。例えば、履歴情報や履歴情報に基づく統計データが複数のクラウドサービスで管理されると、管理者による確認が煩雑となる。また、アクセスコントロールの設定ミスなどにより、管理者の意図しない印刷が発生する可能性もある。
【0011】
本発明は上述の問題点の少なくとも1つを鑑みなされたものである。本発明の1つの側面としては、複数のクラウドプリントサービスを利用する場合における利便性を高めることを目的の1つとする。また、本発明の1つの側面としては、第1のクラウドプリントサービスに登録済みの印刷装置を、当該第1のクラウドプリントサービスとは異なるクラウドプリントサービスに簡単に登録するための仕組みを提供することを目的の1つとする。
【課題を解決するための手段】
【0012】
上記の少なくとも1つの目的を達成するためのシステムは、外部から得られた印刷データをプリンタへ供給する第1のクラウドプリントサービスを提供する第1のクラウドプリントサーバーシステムと前記プリンタから構成されるシステムであって、前記第1のクラウドプリントサービスとは異なる第2のクラウドプリントサービスに対して前記第1のクラウドプリントサービスを前記第2のクラウドプリントサービスにおける出力先プリンタとして登録する登録要求を送信する送信手段と、前記登録要求に基づいて前記出力先プリンタの登録が完了した後に、前記第2のクラウドプリントサービスから印刷データを取得し、当該取得された印刷データを記憶部に記憶させる第1の格納手段と、前記第2のクラウドプリントサービスを経由しない経路で、クライアント端末から受信した印刷データを前記記憶部に記憶させる第2の格納手段と、前記記憶部に記憶された印刷データを前記プリンタへ供給する供給手段と、供給された前記印刷データを印刷する印刷手段と、を有することを特徴とする。
【発明の効果】
【0013】
本発明の1つの側面によれば、複数のクラウドプリントサービスを利用する場合における利便性を高めることができる。また、本発明の1つの側面によれば、第1のクラウドプリントサービスに登録済みの印刷装置を、当該第1のクラウドプリントサービスとは異なるクラウドプリントサービスに簡単に登録できるようになる。
【図面の簡単な説明】
【0014】
図1】印刷システムの一例を示す図である。
図2】CPSを提供するサーバのハードウェア構成の一例を示す図である。
図3】CPSのソフトウェア構成の一例を示す図である。
図4】CPS104に対するプリンタ登録処理、印刷処理の一例を示すシーケンス図である。
図5】外部CPSへのプリンタ登録処理、連携処理の一例を示すシーケンス図である。
図6】CPS104を提供するサーバが実行する制御の一例を示すフローチャートである。
図7】クライアント端末の操作部に表示される画面の一例である。
図8】クライアント端末の操作部に表示される画面の一例である。
図9】CPS104を提供するサーバが取り扱う情報の一例である。
図10】CPS104を提供するサーバが記憶するユーザ情報の一例を説明するためのである。
図11】複数のCPSを経由する印刷処理の一例を示すシーケンス図である。
図12】印刷ジョブに含まれる属性情報の一例を説明するための図である。
図13】外部のCPSを経由しない印刷処理の一例を示すシーケンス図である。
図14】第2の実施形態における印刷システムの一例を示す図である。
図15】第2の実施形態におけるクライアント端末の操作部に表示される画面の一例である。
図16】第2の実施形態における印刷制御の一例を示すシーケンス図である。
図17】第3の実施形態におけるインポートデータの一例を示す図である。
図18】第3の実施形態における登録制御の一例を示すシーケンス図である。
図19】第3の実施形態におけるクライアント端末の操作部に表示される画面の一例である。
図20】クラウドプリントの従来技術を説明するための概略図である。
【発明を実施するための形態】
【0015】
以下、本発明を実施するための実施形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものではなく、また、実施の形態で説明されている特徴の組み合わせのすべてが発明の解決手段に必須のものとは限らない。
【0016】
<第1の実施形態>
まず、図1を用いて、本発明に係る印刷システムの構成を説明する。本実施形態に係る印刷システムは、MFP(Multi Function Peripheral)107、クライアント端末101~103、クラウドプリントサービス(以下、CPSとも呼ぶ)104~106を含む。
【0017】
MFP107は、スキャナを用いて読み取って得られた画像に基づくデータを外部に送信するスキャン機能や、外部装置から受信した印刷ジョブに基づき紙などのシートに画像を印刷する印刷機能、コピー機能を有する。また、MFP107はクラウドプリントサービスを経由して印刷ジョブを受信し、印刷を行うこともできる。本実施形態では、印刷装置の一例として複数の機能を有するMFPを例示しているがこれに限定されるものではない。例えば、印刷機能のみを有する単機能のSFP(Single Function Peripheral)などであってもよい。また、本実施形態では、一例として紙などのシートへの印刷を例示しているがこれに限定されるものではなく、3次元形状データに基づき立体物を成型する3Dプリントなどにおける印刷制御にも適用することができる。
【0018】
本実施形態の印刷システムでは、複数の異なるCPSから、MFP107を用いた印刷物の出力を可能とする運用形態を想定している。
【0019】
このような運用形態を実現するには、従来は図20で説明したように、印刷装置が複数のクラウドプリントサービスをサポートする必要がある。従来のように、印刷装置が各プリントサービスをサポートする形態では、古い印刷装置は新たなクラウドプリントサービスから利用することができないといった問題点がある。また、管理者の登録作業やメンテナンス作業に手間がかかるといった問題点や、一元管理できないといった問題点がある。例えば、コスト情報や、統計データが複数のクラウドサービスで管理されると、管理者による確認が煩雑となる。また、アクセスコントロールの設定ミスなどにより、管理者の意図しない印刷が発生する可能性もある。
【0020】
上述の問題点の少なくとも1つを鑑み、本実施形態の印刷システムでは、複数のCPSを利用する場合における、印刷システムの利便性を向上させる制御を提供する。具体的な仕組みについて説明する。
【0021】
図1の説明に戻り、CPS104はクライアント端末101から印刷ジョブを受信し、かつ、外部CPS105、106に保存された印刷ジョブを取得することが可能に構成されるクラウドプリントサービスである。
【0022】
CPS105、106は其々クライアント端末102、103から印刷ジョブを受信し、保存する外部CPSである。ここで、CPS104は「companyA.example0.jp」のテナントに所属するユーザに提供する第1の種類のクラウドプリントサービスを想定している。また、外部CPS105は「companyA.example1.jp」のテナントに所属するユーザに提供する第2の種類のクラウドプリントサービスを想定している。外部CPS106は「companyA.example2.jp」のテナントに所属するユーザに提供する第3の種類のクラウドプリントサービスを想定している。なお、本実施形態では、CPS104~CPS106は異なるサービス提供者により提供される異なる種類のクラウドプリントサービスであることを想定している。
【0023】
CPS104~CPS106は、それぞれ異なる通信プロトコルA~Cで印刷のためのやり取りを行う。MFP107はCPS104に保存された印刷ジョブを取得し印刷処理を実行する。
【0024】
各装置はネットワーク100により通信可能に接続されている。ネットワーク100は例えばLAN、WANなどの通信ネットワーク、公衆無線通信ネットワーク(例えば、LTEや5Gなど)、IEEE802.11に準拠する無線ネットワークなどを組み合わせて構成されてもよい。すなわち、ネットワーク100はデータの送受信が可能であればよく、物理レイヤの通信方式はいずれの方式を採用してもよい。
【0025】
<ハードウェア構成>
図2は、図1に示したテナント「companyA」に対するCPS104を提供する実リソースであるサーバ200のハードウェア構成を示すブロック図である。CPU(Central Processing Unit)201は、各部と協働しサーバの動作を制御する。CPU201は、ROM(Read Only Memory)202又はストレージ204に記憶されたOS(Operating System)や、制御プログラムを読み出して実行する。ROM202は、CPU201で実行可能な制御プログラムを格納する。RAM(Random Access Memory)203は、CPU201の主記憶メモリであり、ワークエリア又は各種制御プログラムを展開するための一時記憶領域として用いられる。ストレージ204は、印刷データ、画像データ、各種プログラム、及び各種設定情報を記憶する。本実施形態ではストレージ204としてHDD(Hard Disk Drive)等の補助記憶装置を想定しているが、HDDの代わりにSSD(Solid State Drive)などの不揮発性メモリを用いるようにしても良い。このように、CPU201、ROM202、RAM203等のハードウェアは、いわゆるコンピュータを構成している。なお、サーバ200は、印刷データのレンダリングを行うASICなどを更に備えていてもよい。本実施形態では、説明のため、1つのCPU201が1つのメモリ(RAM203)を用いて後述するフローチャートに示す各処理を実行する場合を例示するが、他の様態であっても構わない。例えば複数のプロセッサ、RAM、ROM、ストレージを協働させて後述するフローチャートに示す各処理を実行することもできる。また、複数のサーバコンピュータを用いて各処理を実行することもできる。サーバ200はコンテナ化や仮想化技術を用いることで、複数の異なるテナントに第1の種類のクラウドプリントサービスを提供することができる。
【0026】
ネットワークI/F(インタフェース)205は、外部とネットワーク通信するためのインタフェースである。サーバ200は、ネットワークI/Fを介してネットワーク100に接続される。入出力I/F206は、キーボード、マウス、ディスプレイなどの入出力デバイスを接続するインタフェースである。I/Fに接続された各入出力デバイスは、クラウドサービスを提供する実サーバのメンテナンスを行う場合などに使用される。
【0027】
<ソフトウェア構成>
図3は、CPS104上で動作するソフトウェアモジュールの構成図である。なお、各ソフトウェアモジュールは図2で示したストレージ204に記憶されており、CPU201によってRAM203にロードされ実行される。
【0028】
送受信部301は、ネットワークI/F205を介してクライアント端末101やMFP107のWebブラウザやプリントクライアントとの通信を行う。制御部302は送受信部301が受け付けたリクエストに従って処理を実行する。ページ生成部303はWebブラウザにレスポンスを返すためのWebページを生成する。設定管理部304は、CPS104に関する各種設定情報や連携する外部CPSの情報、CPS104に登録されているMFPの情報を設定DB307に保存し制御を行う。認証部305は、テナントに所属するユーザの情報が保存されている認証DB308を利用して、CPS104にログイン要求してきたユーザの認証処理や、外部CPSへのユーザ認証要求を行う。印刷管理部306は、クライアント端末101から受信した印刷ジョブまたは外部CPSから取得した印刷ジョブを印刷ジョブDB309に保存する制御や、印刷ジョブに対してレンダリングなどの画像処理を行う。レンダリングは、その他ハードウェアと協働して行われてもよい。更に、印刷管理部306は、ユーザの使用実績や月別の印刷枚数など印刷に関する利用状況を集計し、印刷履歴DB310に記憶する。
【0029】
なお、本実施形態はアプリケーションレイヤのモジュールは共通のモジュールで実行し、ユーザ固有のデータを管理するデータベースはテナント毎に分離して管理するマルチテナントアーキテクチャに対応するCPSを実装することを想定している。しかしながら、これに限定されない。マルチテナントアーキテクチャの実装方法は、いかなる方式を採用してもよい。
【0030】
<CPS104に対するプリンタ登録処理>
続けて、図4を用いてCPS104に対するプリンタ登録処理を説明する。図4は、CPS104にプリンタを登録するシーケンスの一例を示している。ここでは、MFP107をCPS104から利用可能に登録する場合について説明する。
【0031】
S401(シーケンス401)において、MFP107は、CPS104に登録要求を送信する。登録要求を受信したCPS104は、当該MFP107を第1の種類のクラウドプリントサービスで利用可能なプリンタとして登録する(S402)。MFP107の登録が完了すると、第1の種類のクラウドプリントサービスに対応するプリントクライアントがインストールされたクライアント端末からCPS104経由での印刷が行えるようになる。
【0032】
続けて印刷制御についてS403以降で説明する。S403において、クライアント端末は、CPS104に登録されたクラウドプリンタを用いて印刷するユーザ操作を受け付けたことに従って印刷ジョブを生成し、生成した印刷ジョブをCPS104に送信する。CPS104に送信される印刷ジョブには印刷データと、印刷設定(印刷属性)、ユーザ及びテナントを識別する情報が含まれている。
【0033】
印刷ジョブを受信したCPS104は、印刷ジョブを印刷ジョブDB309に保存する(S404)。MFP107は、CPS104へ印刷ジョブを取得する要求を送信する(S405)。要求を受信したCPS104は、MFP107へ印刷ジョブを送信する(S406)。印刷ジョブを受信したMFP107は印刷処理を実行して、印刷物を出力する(S407)。印刷ジョブの実行が完了すると、MFP107は、CPS104に印刷ジョブの取得が完了したことを示す通知を送信する(S408)。当該通知を受信したCPS104は、印刷ジョブを削除する(S409)。S410において、CPS104は印刷履歴DB310にアクセスしユーザの利用実績を更新する。具体的には、当該印刷ジョブを送信したユーザに対応付けてユーザの利用実績を更新する。また、ここではテナント全体の利用実績などもこのタイミングで更新されるものとする。また、印刷履歴情報なども更新されるものとする。以上の説明した一連の処理により、CPS104経由でMFP107を使用することができるようになる。
【0034】
<CPS104と外部CPSの連携>
続けて、CPS104と外部CPSとを連携させる制御について図5乃至図10を用いて説明する。図5(A)は、外部CPSへのプリンタ登録処理の一例を示すシーケンス図であり、図5(B)は、連携処理の一例を示すシーケンス図である。図6は、CPS104を提供するサーバ200において実行されるフローチャートの一例である。図7及び図8は当該制御に関連する操作画面の一例である。図9は登録処理に用いられる情報の一例を示し、図10は、認証DB308に記憶されるユーザ情報の一例を示している。
【0035】
図5(A)の登録シーケンスについて説明する。ユーザは、CPS104が提供するWebページにアクセスし、CPS104において、「companyA」のテナントの設定管理権限を有するユーザのアカウントを用いてCPS104にログインする(S501)。
【0036】
登録に関わる画面遷移について図7を用いて説明する。ユーザはWebブラウザを用いてCPS104にログインするためのWebページにアクセスする。その結果、Webブラウザには、ログイン画面701が表示される。より具体的には、アクセス要求を受信したCPS104の送受信部301は、受信データを制御部302へ転送する。制御部302はアクセス要求を解釈し、レスポンスデータをページ生成部303で生成し、送受信部301を介してクライアント端末へログイン画面701を送信する。
【0037】
ユーザは、ログイン画面701を介して、CPS104に予め登録されている管理者ユーザ名、パスワードを入力し、CPS104へのWebログインを試みる。Webログインに成功すると、図示省略のメインメニュー画面が表示される。「Tom@companyA.example0.jp」のアカウントに対応するユーザは、図10のユーザ認証DBに示されるようにテナントの管理者権限を有する。従って、入力されたパスワードが正当であればログインに成功する。
【0038】
ユーザは、メインメニュー画面から下位レイヤの画面に遷移するリンクを選択し、様々な設定を行うことができる。ここでは、クラウドプリントサービスの登録に関連する画面について説明する。
【0039】
Webブラウザを介したユーザ操作に基づき発生するプリンタ登録画面に遷移するためのHTTPリクエストを受信したCPS104は、リスト画面702を生成して、クライアント端末に送信する。クライアント端末上に表示された画面702を介して、管理者はCPS104の設定変更や外部CPSへの登録処理を操作できる。なお、画面702では図4で説明した登録制御により、CPS104で使用できるプリンタとして、MFP107の登録が完了している場合を例示している。
【0040】
「名称」はCPS104に登録されたMFP107のデバイス名称であり、プリンタを識別するための名称である。「外部CPS登録」欄は、そのMFPが外部CPSに登録済かどうかを示す領域である。ここでは、外部CPSに未登録である場合を例示している。「編集」は、登録済みのクラウドプリンタの設定を編集する場合に用いるキーであり、削除は、登録済みのクラウドプリンタを削除する場合に用いるキーである。「外部CPS連携」は、登録済みのクラウドプリンタと外部のクラウドプリントサービスを連携する設定を行う場合に用いるキーである。「ログアウト」はCPS104からログアウトする場合に用いるキーである。
【0041】
「編集」キーが選択されると、表示画面は画面703に遷移する。ユーザは、画面703を介して、登録済のデバイス情報を編集できる。例えばデバイス名称や設置場所、アクセス許可ユーザリストを編集できるものとする。「アクセス許可リスト」はこのデバイスへのアクセス可能なユーザアカウントあるいはグループやロールを設定するための表示アイテムである。例えばグループA、グループBのユーザがこのデバイスにアクセス可能な設定例である。図10に示すように、companyAのテナントに対応するユーザ認証DB308には、ユーザ名、所属グループ、ロール、外部CPSのアカウント名などが格納されている。画面703では、グループAとグループBがアクセス許可されている場合を例示している。この場合、Tom、Alice、Bobがこのデバイスの使用を許可されており、Smithは当該デバイスを使用できないよう設定されている。当該画面を介して設定された内容は設定DB307に保存される。なお、図10には、CPS104のユーザ情報だけでなく、CPS104のユーザアカウントと、外部CPSのユーザアカウントの対応関係を示す対応情報が記憶されている。当該対応情報は、予め管理者等のユーザにより設定されているものとする。
【0042】
画面702の説明に戻り、特定のデバイスを選択した状態で、「外部CPS連携」キーが選択されると、CPS104は、Webブラウザに表示する表示画面を画面707に遷移する。
【0043】
画面707において「登録」が選択されると、CPS104は、Webブラウザに表示する画面を図8に示す画面710へ遷移する。画面710では、CPS104をいずれの外部CPSへ登録するかを選択する画面の一例である。ここでは登録する外部CPSとしてCPS105が選択され、登録するデバイス名称として「カラーMFP107」が設定されている場合を例示している。登録先の外部CPSやデバイス名称は画面710を介したユーザ操作に基づき変更することができる。「登録実行」が選択されると、CPS104は登録処理を実行する。
【0044】
図5のシーケンスの説明に戻る。S502において、クライアント端末は、「登録実行」を選択するユーザ操作を受け付けたことに応じて、当該登録実行が選択されたことを示すデータをCPS104に送信する。
【0045】
登録実行を示すデータを受信したCPS104は、CPS105に登録要求を送信する(S503)。具体的には、CPS104の設定管理部304は、設定DB307に保存されている、外部CPS宛先URLリストを参照し、CPS105の登録宛先URLを確認する。図9(B)は設定DB307に保存されている外部CPS宛先URLリストの一例である。設定管理部304は、当該リストを参照し、CPS105の登録URLとして、「https://check.example1.jp」を取得する。CPS104は、この宛先URLへデバイス登録要求を送信する。
【0046】
デバイス登録要求を受信したCPS104は、認証情報を入力するURL(Uniform Resourse Locater)および認証の為の一時パスワード(本実施例ではPINコードとする)をCPS104に応答する(S504)。当該URLは、例えば、「https://tempcheck.example1.jp」である。
【0047】
CPS105からの応答を受信したCPS104は、当該情報に基づき図8に例示する画面711を生成し、当該生成した画面711をクライアント端末のWebブラウザへ送信する(S505)。
【0048】
画面711を確認した管理者は、Webブラウザを用いて表示されたURLにアクセスする。CPS105は、当該アクセスリクエストの応答として、画面712を提供する。
【0049】
ユーザは、画面712を介してCPS105のアカウント情報と、S504で発行されたPINコードを入力する。
【0050】
「OK」キーが選択されたことに従って、Webブラウザは、画面712を介して入力されたユーザ情報とPINコードを示すデータをCPS105に送信する(S506)。
【0051】
ユーザ情報とPINコードを示すデータを受信したCPS105は認証処理を実行する(S507)。認証成功と判断したらS503で受け付けた要求に基づきクラウドプリンタの登録処理を行う(S508)。
【0052】
そしてCPS105はCPS104に登録成功の応答と、その後の通信で使用するアクセストークン情報を送信する(S509)。
【0053】
登録成功の通知を受信したCPS104は、クライアント端末に完了画面データを送信する(S510)。当該完了画面を受信したクライアント端末のWebブラウザは当該受信した画面データに基づき完了画面を表示する。図8の画面713は完了画面の一例である。CPS104は、「OK」が選択されると、Webブラウザに表示する表示画面を、外部CPSへの登録情報が更新されたリスト画面714に遷移する。画面714には、CPS105に登録済みであることを示す情報が表示される。
【0054】
続けて、CPS104は外部CPSに対して詳細なデバイス情報を送信する(S511)。ここで、図9(B)の910に示されるようにCPS105はプロトコルとしてIPP(Internet Printing Protocol)を使用している。CPS104の設定管理部304は、MFP107に対応するクラウドプリンタの能力情報に基づき、図9(A)の900に示すIPPのフォーマット形式の能力情報を生成する。制御部302は、当該生成された能力情報を送信する。
【0055】
能力情報を受信したCPS105は、当該受信した能力情報に応じてCPS104を出力先とするクラウドプリンタの能力情報を更新する。
【0056】
以上説明した一連の処理により、外部CPS105をサポートするプリントクライアントから利用できる出力先デバイス(プリンタ)として、CPS104に登録済みのクラウドプリンタを登録することができる。
【0057】
<同期処理>
図5(A)で説明した登録済みプリンタは、図7の「削除」キーで削除されたり、「編集」キーで設置場所情報が変更されたりする。ここで、CPS104からプリンタが削除されると、CPS105から印刷ジョブを取得したとしても、実際の出力先となるプリンタが登録解除されているため、印刷エラーとなってしまう。そこで、登録済みプリンタをCPS104から削除する削除処理に連動して外部CPSに登録したプリンタも削除するよう制御する。
【0058】
また、MFP107のステータスが変動することもある。一例として、紙なし、色材(トナーやインク)なし、色材ローなどの変動がある。これらのステータスの変動や、設置場所情報などの変更も同期できるように制御する。
【0059】
具体的な処理について図5(B)のシーケンス図と図7の設定画面を用いて説明する。画面702を介して「削除」キーが選択されると、CPS104は、Webブラウザに表示する画面を画面704に遷移する。
【0060】
S551において、クライアント端末のWebブラウザは、「Yes」キーが選択されたことに従って、画面702を介して入力されたデータをCPS104に送信する。当該データを受信したCPS104は、削除対象のデバイスが外部CPSに登録済かどうかを判断する。ここでは外部CPS105に登録済であるものとする。
【0061】
削除対象のクラウドプリンタが外部CPSに登録済みであれば、CPS104は外部CPS(ここでは、CPS105)に対して登録したデバイス情報の削除要求を送信する(S552)。
【0062】
削除要求を受信したCPS105は、該当デバイスの削除処理を実行する(S553)。
【0063】
CPS105に削除要求を送信した後に、CPS104は、CPS104に登録済みのMFP197に対応するクラウドプリンタを削除する。具体的には、CPS104は設定DB307からMFP107に関連する情報を削除する(S554)。
【0064】
なお、外部CPSへ登録していなければ、S552、S553の処理はスキップされる。また、管理者が図7の画面708でCPS104からの登録は削除せず、外部CPSへの登録されたクラウドプリンタのみを削除する操作を行った場合、S554の処理をスキップする。例えば、画面707で「削除」が選択されたことに従って、表示される解除画面708を介して「削除実行」が選択された場合にS554の処理をスキップすればよい。
【0065】
続けて、同期処理について説明する。当該処理は、MFP107のステータスが変化した場合に行われる。MFP107は、状態変更の通知をCPS104に送信する(S561)。状態変更の通知を受信したCPS104は、MFP107から能力情報を取得し、クラウドプリンタの能力情報を更新する(S562)。
【0066】
続けて、CPS104は、外部CPS105に状態変更の要求を送信する(S563)。当該要求を受信したCPS105は、CPS104に詳細能力情報を問い合わせることで、CPS104から更新された能力情報を取得する。当該取得結果に基づきCPS105に登録されたクラウドプリンタの能力やステータスを更新する(S564)。
【0067】
以上図5(B)で説明した一連のシーケンスにより、CPS104と外部CPSを適切に連動させることができる。
【0068】
続けて、CPS104が実行する制御について図6のフローチャートを用いて説明する。図6のフローチャートに示す各動作(ステップ)は、CPU201がROM202またはストレージ204に記憶されたCPS104を提供する各制御モジュールに対応するプログラムをRAM203に呼び出し、実行することにより実現される。なお、複数テナントに対する適切な制御を実現するために仮想化やコンテナなどの技術が適宜使用されるものとする。
【0069】
ここでは「companyA」のテナントに所属するユーザに提供するサービス制御動作を例に説明する。なお、図6のフローチャートでは、説明の簡略化のため図4で説明したCPS104への新規プリンタ登録処理を省略している。
【0070】
S600において、制御部302は、クライアント端末から、外部CPSにCPS104に登録済みのプリンタを追加登録する要求をネットワークI/F及び送受信部301を介して受け付けたか否かを判断する。外部CPSにCPS104に登録済みのプリンタを追加登録する要求を受け付けた場合は処理をS601に進め、受け付けていない場合は処理をS605に進める。
【0071】
S601において、制御部302は、受け付けた登録要求に含まれるCPS名称をキーとして、設定DB307のリストを参照し、登録URLを取得する。制御部302は、送受信部301と協働して、当該取得されたURLで指定される宛先に対してデバイスの識別子を含む登録要求を送信する。当該要求の応答として認証情報を入力するURLおよび認証の為のPINコードが得られたことに従って、制御部302は処理をS602に進める。
【0072】
S602において、制御部302は、ページ生成部303と協働し、S601で取得されたURLとPINコードを示す情報を含む画面711を生成する。続けて制御部302は、送受信部301と協働して、要求の送信元のクライアント端末に生成した画面711を送信する。なお、本実施形態では、画面711を送信する場合を例示したがこれに限定されない。例えば、クライアント端末に表示される画面を外部CPSのWebページにリダイレクトすることもできる。この場合、リダイレクト先のURLとして「URL&PINコード」などの形式を用いることで、リダイレクト先の外部CPSにPINコードを通知することができる。
【0073】
S603において、制御部302は、外部CPSから登録完了通知を受信したかどうかを判断する。登録完了通知を受信した場合は処理をS604に進め、受信していない場合は当該通知を待つ。
【0074】
S604において、制御部302は、設定管理部304、送受信部301と協働して外部CPSへ詳細情報を送信する。設定管理部304は、自身が管理するクラウドプリンタの能力情報に基づき、外部CPSが用いる通信プロトコルや印刷プロトコルに合うフォーマット形式の能力情報を生成する。制御部302は、送受信部301と協働して設定管理部304が生成した能力情報を外部CPSに対して送信する。
【0075】
一方、S605において、制御部302は、CPS104に登録済みのクラウドプリンタを削除する要求を受け付けたか否かを判断する。CPS104に登録済みのクラウドプリンタを削除する要求を受け付けた場合は、処理をS606に進め、CPS104に登録済みのクラウドプリンタを削除する要求を受け付けていない場合は処理をS609に進める。具体的には、制御部302は、画面704のYesキーの選択に応じて送信されるHTTPリクエストを受信した場合当該要求を受け付けたと判断する。
【0076】
S606において、制御部302は、設定管理部304と協働して設定DB307を参照し、削除対象であるクラウドプリンタに対応付けて外部CPSが登録されているか否かを判断する。削除対象であるクラウドプリンタに対応付けて外部CPSが登録されている場合は、処理をS607に進め、削除対象であるクラウドプリンタに対応付けて外部CPSが登録されていない場合は、処理をS608に進める。
【0077】
S607において、制御部302は、外部CPSに削除対象プリンタの削除要求を送信し、処理をS608に進める。
【0078】
S608において、制御部302は、設定管理部304が管理するクラウドプリンタから削除対象のクラウドプリンタを削除する。制御部302は、削除が完了すると更なる要求を待ち受ける。なお、削除が完了すると、CPS104は、クライアント端末に表示する画面を画面705に遷移させるものとする。更に、画面705を介してOKが選択されたことに従って、CPS104は、クライアント端末に表示する画面をリスト画面706に遷移させる。
【0079】
S609において、制御部302は、外部CPSとの連携を解除する要求を受け付けたか否かを判断する。外部CPSとの連携を解除する要求を受け付けた場合は、処理をS610に進め、外部CPSとの連携を解除する要求を受け付けていない場合は、処理をS611に進める。制御部302は、画面708の削除実行キーの選択に応じて送信されるHTTPリクエストを受信した場合に当該要求を受け付けたと判断する。
【0080】
S610において、制御部302は、連携解除の対象となるプリンタを特定し、当該プリンタが登録されている外部CPSに削除要求を送信する。また、CPS104は、要求元のクライアント端末に表示する画面を、画面709に遷移させる。送信が完了すると、CPS104は更なる要求を待ち受ける。
【0081】
S611において、制御部302は、CPS104に登録されたプリンタのステータスが変更となったか否かを判断する。変更となった場合は、処理をS612に進め、変更となっていない場合は処理をS614に進める。制御部302は、画面703によるデバイス情報の変更処理が行われた場合、及び、登録済みプリンタからステータスの変更が通知された場合に、プリンタのステータスが変更になったと判断する。
【0082】
S612において、制御部302は、印刷管理部306が管理するクラウドプリンタの能力情報を更新する。S613において、制御部302は、能力を更新したクラウドプリンタに外部CPSが対応づけられているか否かを判断する。外部CPSが対応付けられている場合は、処理をS604に進め、外部CPSが対応付けられていない場合は、更なる要求の受付を待つ。なお、S604に進む場合、前述した更新処理が行われる。したがって、CPS104の管理するクラウドプリンタの能力やステータスの変化を外部CPSにも同期させることができる。
【0083】
S614において、制御部302は、印刷ジョブ関連の要求を受け付けたか否かを判断する。印刷ジョブ関連の要求を受け付けた場合は、処理をS615に進め、印刷ジョブ関連の要求を受け付けていない場合は処理をS616に進める。
【0084】
S615において、制御部302は、各部と協働して要求に基づく処理を実行する。例えば、外部からの印刷ジョブの受信、保存処理を行う。また例えば、保存した印刷ジョブをMFP107などの印刷装置に送信する送信処理、保存された印刷ジョブを削除する処理などを行う。また、印刷データに基づく印刷履歴の更新などの処理を行う。具体的な制御は後述する。処理が完了すると更なる処理の受け付けを待つ。
【0085】
S616において、制御部302は、クライアント端末から利用状況表示の要求を受け付けたか否かを判断する。利用状況表示の要求を受け付けた場合は、処理をS617に進め、利用状況表示の要求を受け付けていない場合は、処理をS618に進める。
【0086】
S617において、制御部302は、印刷管理部306と協働し、履歴DB310に集計されているユーザの使用実績や月別の印刷枚数など印刷に関する利用状況を取得する。続けて制御部302は、ページ生成部303と協働して当該取得した利用情報に基づき集計レポートを示す画面を生成する。また、制御部302は、送受信部301と協働して、要求の送信元であるクライアント端末に当該生成したレポート画面715を送信する。
【0087】
レポート画面715について図7を用いて説明する。ユーザは、クライアント端末のWebブラウザに表示される図示省略のメインメニュー画面から利用状況を確認するためのリンクを選択することができる。当該リンクが選択された場合、Webブラウザは、当該選択されたリンク先を示すHTTPリクエストデータをCPS104に送信する。S616では、当該HTTPリクエストを受信した場合に、利用状況表示の要求を受け付けたと判断する。
【0088】
画面715には、例えば、ユーザごとのプリントコストを示すグラフや、テナント内でのカラー印刷とモノクロ印刷の比率等、印刷に関するレポートが表示される。なお、これに限定されず、ユーザごとの印刷枚数や、コピーとプリントの比率などを表示することもできる。
【0089】
図6の説明に戻り、S618において、CPS104は、サービスのメンテナンス又はアップデートを行うタイミングか否かを判断する。メンテナンス又はアップデートを行う場合は、一連の要求待ち受け処理を終了する。メンテナンス又はアップデートを行うタイミングでないと判断すると更なる要求を待ち受ける。
【0090】
<印刷ジョブの受信>
最後に、印刷ジョブの受信処理について図11乃至図13を用いて説明する。図11及び図13は、CPS104が実行する印刷シーケンスの一例を示している。図12は、CPS105から投入された印刷ジョブ属性とMFP107に投入される印刷ジョブ属性の差を説明する図である
ここでは、ユーザAliceが、クライアント端末102を用いて印刷を行う場合を例に説明する。例えば、クライアント端末102はWindowsOS、CPS105はAzureが提供するクラウドプリントサービスである。また、例えば、CPS105が使用する通信プロトコルBはIPP(Internet Printing Protocol)であるものとする。
【0091】
まず、AliceはCPS105を提供するクラウドプラットフォームに紐づいたアカウント「aaaAlice@companyA.example1.jp」でクライアント端末102からCPS105へログインする(S1101)。次に、クライアント端末102は、CPS105上に登録されているプリンタを検索する(S1102)。
【0092】
CPS105には図5(A)で登録されたCPS104と連動するクラウドプリンタの情報が保存されている。従って、S1102の探索では、「カラーMFP107」のMFPが発見される。
【0093】
次に、Aliceは任意のコンテンツを選択し、「カラーMFP107」を印刷で使用するプリンタに設定して印刷開始を指示する。印刷開始の指示を受け付けたクライアント端末102は印刷ジョブをCPS105へ送信する(S1103)。印刷ジョブを受信したCPS105はその印刷ジョブをストレージに保存する(S1104)。
【0094】
続いて、CPS104はカラーMFP107に対応するクラウドプリンタ宛の印刷ジョブがCPS105に存在するかどうかを確認する(S1105)。本実施例では一定時間間隔でCPS104からCPS105へ印刷ジョブの確認の送信要求が行われるものとする。なお、このポーリング間隔はCPS105から指定された間隔でもよいし、CPS104に設定されている間隔でもよいものとする。また、ポーリングによる確認ではなく、CPS104からCPS105にPush通知を行って印刷ジョブの存在を通知してもよい。
【0095】
ポーリングやPush通知により外部CPSに自身が管理するクラウドプリンタ宛の印刷ジョブがあると判断すると、CPS104は印刷ジョブの取得要求をCPS105に対して行う(S1106)。この時、CPS104は、S509で取得したアクセストークンを用いて要求を出す。そしてCPS105は印刷ジョブをCPS104に対して送信する(S1107)。前述したように本実施形態は、CPS105が採用する通信プロトコルが、IPPである場合を想定している。従って、CPS105から送信される印刷ジョブは図12の1201に例示するようなIPPに準拠するフォーマット形式となる。後述するS1110もIPPのオペレーションで実行される。
【0096】
CPS105から印刷ジョブを取得したCPS104は、クラウドプリンタリソースへのアクセス権を有するユーザのジョブであるか否かを判断する(S1108)。まず、制御部302は、印刷ジョブがいずれのユーザのジョブかを判断する。制御部302は、IPPに準拠する印刷ジョブに含まれる「Requesting-user-name」のフィールド名を取得する。本実施形態では、「Requesting-user-name」の属性値にAliceのCPS105のアカウント名が格納されている場合を想定している。続いて、制御部302は、認証部305と協働して、当該取得した外部CPSのアカウント名を用いて、認証DB308に保存されている認証情報1000を参照し、AliceのCPS104のアカウントを特定する。続いて制御部302は、特定された「Alice」が所属するグループ情報を取得する。次に制御部302は、設定管理部304と協働して、設定DB307が記憶するアクセス許可リストを参照してAliceがMFP107を用いた印刷が許可されたグループに所属するユーザかどうかを判断する。ここで許可対象でなければ、取得した印刷ジョブは破棄して、CPS105に対してアクセスエラーを示す応答をする。一方、許可対象であれば、取得した印刷ジョブを印刷ジョブDB309に保存する(S1109)。
【0097】
保存が完了すると、CPS104は、CPS105に印刷ジョブの取得が完了したことを示す通知を行う(S1110)。当該通知を受信したCPS105は、送信済みの印刷ジョブを、出力先デバイスに対応するキューから削除する(S1111)。
【0098】
次に、CPS104は、CPS105の通信プロトコルフォーマット(例えばIPP)から、CPS104が採用する通信プロトコルフォーマット(例えばHTTP)に印刷ジョブのデータ属性を変換する(S1112)。CPS104は例えばHTTPベースの独自プロトコルを採用しているものとする。CPS104の印刷管理部306は、受信したIPPに準拠する印刷ジョブの印刷属性を図12の1202に例示する印刷ジョブ属性に変換する。この際に、印刷管理部306は、「Requesting-user-name」の属性値を、CPS104が解釈できる「Alice」あるいは「Alice@companyA.example1.jp」といった属性値に置き換える。
【0099】
続いて、MFP107がCPS104に記憶された印刷ジョブを取得して印刷する制御について説明する。
【0100】
MFP107は定期的にCPS104に対して自分宛の印刷ジョブがないかを一定時間間隔で確認する(S1113)。なお、このポーリング間隔はCPS104から指定された間隔でもよいし、MFP107に設定されている間隔でもよいものとする。また、ポーリングによる確認ではなく、Push通知で印刷ジョブの存在を確認するようにしてもよい。印刷ジョブの確認要求は、MFP107宛の全ての印刷ジョブを確認するオペレーションを示す「Which-jobs」属性にFalseを格納したジョブ確認要求を送信することで実現する。またはMFP107がログイン管理されているなら、特定のユーザがログインしたタイミングで印刷ジョブの確認要求を送信してもよい。この場合、印刷ジョブの確認要求は、ログインしたユーザのジョブのみの確認要求を送信する。この場合、例えば、「Which-jobs」属性をTrueにセットする。また、「Requesting-user-name」あるいは「Requesting-user-uri」などユーザを特定できる属性に、Aliceのユーザ名やアカウント情報を示す属性値を格納する。このオペレーションにより、CPS104からMFP107にログインしたユーザのジョブのみを取得することができる。なお、当該属性フィールドや属性値は一例であり、これに限定されるものではない。
【0101】
S1113より印刷ジョブがあると判断した場合、MFP107はCPS104が採用している通信プロトコル(例えばHTTP)に則って印刷ジョブ取得要求を行う(S1114)。S1116~S1119の処理は、図4のS407~S410と同様のため省略する。
【0102】
以上説明した処理により、CPS105に投入された印刷ジョブをCPS104が取得し、CPS104経由で印刷することができるようになる。また、当該印刷履歴をCPS104で管理できるようになる。
【0103】
<CPS104のクライアント端末からの印刷処理>
次にAliceがクライアント端末101を使用して、CPS104経由で印刷処理をするシーケンスを、図13を用いて説明する。ここでは、クライアント端末101にCPS104専用アプリケーションがインストールされている場合を想定している。まず、AliceはCPS104専用アプリケーションからCPS104にログインする(S1301)。ログイン情報には、「Alice@companyA.example0.jp」と対応するパスワードが用いられる。ユーザは、当該ログイン情報を専用アプリケーションに記憶させてもよいし、都度入力するようにしてもよい。
【0104】
そして、起動した専用アプリケーションは、CPS104に対して使用できるプリンタの探索を要求する(S1302)。当該要求には、CPS104のアカウント名又はユーザ名が含まれているものとする。要求を受信したCPS104は、Aliceが使用可能なクラウドプリンタを探索し、Aliceが使用可能なプリンタ情報を応答する(S1303)。ここではMFP107に対応するクラウドプリンタが探索結果として応答されるものとする。
【0105】
次にAliceは任意のコンテンツを選択し、「カラーMFP107」を印刷に使用するプリンタに設定して印刷開始を指示する。印刷開始の指示を受け付けた専用アプリケーションは印刷ジョブをCPS104へ送信する(S1304)。ここで、通信プロトコルはCPS104が採用している第1の通信プロトコル(例えばHTTP)を使用し、印刷ジョブデータの属性も図12に示す1202のようなフォーマットとする。この場合、MFP107に直接当該印刷ジョブを送ることができるため、変換処理は行わないものとする。
【0106】
専用アプリケーションから送信された印刷ジョブを受信したCPS104は、当該受信した印刷ジョブを印刷ジョブDB309に保存する(S1305)。このように、CPS104は、CPS105から取得した印刷ジョブ及びクライアント端末から受信した印刷ジョブの両方を記憶可能である。
【0107】
S1306~S1312の処理は、図11のS1113~S1119と同様であるため説明を省略する。
【0108】
以上説明した通り本実施形態では、CPS104に登録済みの印刷装置を、異なるクラウドプリントサービスに簡単に登録できるようになる。更に、当該異なるクラウドプリントサービス経由の印刷ジョブは、CPS104を経由して印刷されるため、1つのクラウドプリントサービスで使用実績やジョブ履歴を一元管理することができるようになる。更に、外部CPSのアカウントからCPS104のユーザを特定して履歴を集計できる。従って、複数のクラウドプリントサービスを併用する場合における管理業務を効率化できる。
【0109】
<第2の実施形態>
第1の実施形態では、クラウドプリンタと出力先のMFP107と一対一対応させる場合について説明した。第2の実施形態では、第1の実施形態の制御に加えて、複数台の印刷装置を1台の仮想的なクラウドプリンタ(以下、仮想クラウドプリンタとも呼ぶ)として登録し、当該仮想的なクラウドプリンタを外部CPSに登録できる仕組みを提供する。
【0110】
図14は第2の実施形態の印刷システムの一例である。第1の実施形態の構成に加えて、カラーMFP1401、1402、BW-MFP1403を更に含む。
【0111】
本実施形態では、MFP107、MFP1401~1403に対応するクラウドプリンタがCPS104に登録済みである場合を例に説明する。具体的には、CPS104には、「companyA.example0.jp」用のクラウドプリンタとしてMFP107、MFP1401~1403が登録されているものとする。
【0112】
なお、第2の実施形態におけるCPS104のソフトウェア構成やハードウェア構成は第1の実施形態と同様である。以下第1の実施形態との差分について説明する。
【0113】
図15はCPS104がクライアント端末に提供する画面の一例であり、画面1501は、図7の画面702に代えて表示される画面である。画面1502は、画面702で説明した各キーに加えて、「仮想プリンタ設定」のキーを含む。CPS104は、「仮想プリンタ設定」が選択されたことに従って、クライアント端末に表示する表示画面を仮想プリンタ設定画面1502に遷移させる。管理者等のユーザは、画面1502を介して類似した機能を有するMFPを1台の仮想クラウドプリンタとして再登録することができる。例えば、カラーMFPをひとまとめにした仮想クラウドプリンタを作成したいケースがある。この場合、管理者は、画面1502を介してカラーMFP107、1501、1502を選択し、「カラーMFPシリーズ」という仮想クラウドプリンタを設定することができる。CPS104は、再登録を完了する「OK」キーが選択されたことに従って、仮想クラウドプリンタのキューを生成する。CPS104は、生成が完了すると、クライアント端末上に表示する表示画面を画面1503に遷移させる。
【0114】
上述の処理で登録された仮想クラウドプリンタの能力情報は配下の各MFPの能力情報に基づいて決定される。例えば、A4プリンタとA3プリンタが混在する場合、いずれのプリンタでも確実に出力できるように、A3を非サポートとすることができる。
【0115】
この仮想クラウドプリンタを外部CPSへ登録する場合、プリンタ名称や、プリンタの能力情報が変わるだけで登録処理のシーケンスや同期のシーケンスは第1の実施形態と同様である。
【0116】
なお、仮想クラウドプリンタの配下となる印刷装置が再編集され、能力情報が更新された場合には、当該変更を外部CPSに伝えるべく同期処理が行われるものとする。仮想クラウドプリンタを使用するシーケンスについて図16を用いて説明する。
【0117】
図16は本実施例におけるCPS104を介した印刷シーケンス例である。CPS104は、外部CPS(例えばCPS105)やクライアント端末の専用アプリケーションから印刷ジョブを受信し印刷ジョブDB309に保存する(S1600a、S1600b、S1601)。当該制御は、第1の実施形態と同様のため詳細は省略する。
【0118】
第2の実施形態における仮想クラウドプリンタを用いた印刷では、いずれかの印刷装置にユーザがログインしたタイミングで当該ユーザがログインした印刷装置に印刷ジョブを送信するよう構成する。すなわち、CPS104に保存された印刷ジョブは仮想クラウドプリンタとしてまとめられているMFP107、1401、1402のいずれかから取得要求が来るまでは、出力されない。
【0119】
印刷ジョブを投入したユーザ、例えばAliceが、仮想クラウドプリンタ傘下のいずれかのMFPにログインする(S1602)。そして、Aliceのログインを受け付けたMFPはログイン情報に基づいて、ユーザ名「Alice」の印刷ジョブの取得要求をCPS104へ送信する(S1603)。
【0120】
CPS104の制御部302は、認証部305、印刷管理部306と協働し、Aliceの印刷ジョブがあるか否かを判断する。印刷ジョブがあれば問い合わせ元のMFPに当該印刷ジョブを送信する(S1604)。前述したように、外部CPSから受信した印刷ジョブのユーザ情報は、S1112のシーケンスでCPS104に対応するユーザ情報に書き換えられている。したがって、外部CPS経由で投入されたAliceの印刷ジョブ、CPS104の専用アプリケーション経由で投入されたAliceの印刷ジョブの両方を印刷装置に送信することができる。
【0121】
なお、印刷ジョブがない場合は、印刷ジョブがない旨を示す通知を送信する。S1605~S1608の印刷に関わる処理は、S407~S410と同様のため省略する。
【0122】
続けて仮想クラウドプリンタの編集に関わる処理について説明する。管理者などのユーザは、前述した画面1502を介して仮想クラウドプリンタの名称や傘下のプリンタを編集することができる。クライアント端末101のWebブラウザは画面1502の「OK」が選択されたことに従って、仮想クラウドプリンタの更新要求を示すHTTPリクエストをCPS104に送信する(S1611)。当該リクエストを受信したCPS104は、仮想クラウドプリンタの名称や傘下のMFPを更新する(S1612)。またCPS104は、仮想クラウドプリンタの能力情報も更新する。
【0123】
S1613において、CPS104は、CPS105にS1612で更新した情報に基づき、能力更新要求を送信する。CPS105は当該要求に基づきCPS104の仮想クラウドプリンタに対応するCPS105上のクラウドプリンタの能力情報を更新する。当該処理により仮想クラウドプリンタを使用する場合においても、適切に能力情報を同期することができるようになる。
【0124】
<第3の実施形態>
<設定インポート>
第1の実施形態及び第2の実施形態では、CPS104に登録済みの印刷装置を選択して、外部CPSへ登録する例を説明した。本実施例ではCPS104には印刷装置が登録されていない状態、かつ、外部CPSには、印刷装置が登録されている場合の同期処理について説明する。これは、例えばユーザが外部CPS105を導入済であり、その後、CPS104の導入を決定し統合管理したい場合を想定している。
【0125】
図19は本実施形態におけるCPS104へ設定インポートする操作画面例である。画面1901は、図7の画面702に代えて表示される画面であり、画面702の各コンポーネントに加えて「設定インポート」といった表示アイテムが追加されている。
【0126】
ここでは本実施形態に特有の設定インポート機能について説明する。「インポート」が選択されたことに従ってCPS104は、クライアント端末上の表示する表示画面を画面1902に遷移させる。
【0127】
ユーザは、画面1902を用いて、インポートファイルを指定することができる。クライアント端末のWebブラウザは、当該指定されたインポートファイルを、OKキーの選択に従ってCPS104にアップロードする。インポートファイルは、例えば、図17のようなフォーマットであり、登録すべきMFPの情報が格納されている。このインポートファイルは外部CPSあるいはMFPからエクスポート可能であるものとする。なお、インポートファイルには複数の印刷装置が列挙されていてもよい。また、当該ファイルには外部CPSに要求を行う際に要求とともに提示するアクセストークンが含まれている。
【0128】
図18を用いて当該インポート処理のシーケンスを説明する。図18(A)はインポート処理の一例であり、図18(B)は図19(A)の処理が行えない場合の代替シーケンスである。
【0129】
クライアント端末は、アップロード対象のファイルとして指定された、インポートファイルを、CPS104にインポートする要求を送信する(S1800)。
【0130】
インポートファイルを受信したCPS104はインポートファイルに格納されている情報に基づき印刷装置の登録処理を行う(S1801)。登録処理では、まず図4で説明したCPS104にクラウドプリンタを登録する処理が行われる。続けて、図5(A)で説明したCPS105で使用できる出力先デバイス(プリンタ)として、CPS104に登録済みのクラウドプリンタを登録する。最後に、CPS105に事前登録されていたMFP107に対応するクラウドプリンタ(MFP107に直接印刷ジョブを送信する際に用いられていたクラウドプリンタ)を削除する削除要求を行う。なお、削除を行うかどうかはユーザに問い合わせるようにしてもよい。
【0131】
そして、CPS105へ接続確認を行い(S1802)、問題ない事を確認する。通信確認が成功すると、CPS104は、クライアント端末上に表示する表示画面を画面1903に遷移させる。以上の処理により、外部CPS105へ登録済状態としてCPS104の登録が完了する。もしCPS105への通信確認が失敗すれば、図19の1903の外部CPS登録は「未」となるか、CPS104自体への登録も失敗させるかのいずれかとなる。
【0132】
また、セキュリティの事情によりアクセストークン等通信に係る情報をエクスポートできない場合がある。この場合の代替シーケンスについて説明する。
【0133】
管理者等のユーザは、クライアント端末のWebブラウザ経由でCPS105にログインし、登録済みクラウドプリンタの削除要求を送信する。クライアント端末のWebブラウザは、当該削除要求をCPS105に送信する(S1810)。当該要求を受け付けたCPS105は、対象の登録済みクラウドプリンタを削除する(S1811)。
【0134】
その後、管理者はWebブラウザからインポートファイルを指定し、CPS104へアップロードする(S1812)。インポートファイルを受信したCPS104はインポートファイルに格納されている情報に記載された印刷装置をCPS104が管理するクラウドプリンタとして登録する(S1814)。続いて、当該登録されたクラウドプリンタをCPS105に登録する登録要求を送信する(S1815)。
【0135】
登録要求を受信したCPS105は、当該要求に基づき登録処理を実行する(S1816)。この登録処理は図5(A)で説明したものと同様である。登録に成功すると、CPS105は、CPS104に登録完了を通知する(S1816)。成功通知を受信したCPS104はS1414の処理で登録したクラウドプリンタに対応する外部連携情報を更新する(S1818)。更新が完了すると、CPS104は、クライアント端末上に表示する表示画面を画面1903に遷移させ、インポート操作処理を完了する。
【0136】
この後の削除処理、更新処理、印刷処理は実施例1および2と同様である。これより、後からCPS104を導入するユーザ環境でも、手間が少なく外部CPSへの連携が実現できる。
【0137】
<変形例>
第1の実施形態及び、第2の実施形態では、実際の印刷装置に一対一対応するクラウドプリンタ又は複数台の印刷装置を傘下とする仮想クラウドプリンタを外部CPSに登録する場合を例示したがこれに限定されるものではない。CPS105が管理する各クラウドプリンタを、複数台を一度のユーザ操作で外部CPSに登録できるようにすることもできる。この場合、S503ではCPS104は、複数のプリンタの登録情報を送信する。S504~S507の認証処理は図5(A)と同様である。最後に、図5のS508~S511に示される登録処理、アクセストークンの発行処理、プリンタ能力の更新処理を登録すべき印刷装置の数だけ繰り返し行うようにすればよい。この場合、管理者等のユーザは、簡単な操作でCPS104と同様の環境を外部CPS105でも再現することができ、利便性が高い。
【0138】
更に、CPS104が管理する各テナントに外部CPS連携用の1台の仮想クラウドプリンタを設け、当該仮想クラウドプリンタを外部CPSに登録するようにしてもよい。この場合、CPS104は、画面707を介して「登録」キーが選択されたことに応じて、外部CPSから印刷ジョブを受信するための仮想クラウドプリンタを生成する。続いて当該生成した仮想クラウドプリンタを外部CPSに登録するための画面710を生成し、クライアント端末上に表示される表示画面を当該生成した画面710に遷移する。このときの登録デバイス名称は例えば「サービス名称でプリント」などを採用することができる。例えば、CPS104がUniflowOnLine(登録商標)である場合、「UniflowOnlineでプリント」などの名称を採用することができる。なお、名称にテナント名を含めてもよい。仮想クラウドプリンタが受信し、CPS104に保存された印刷ジョブは、例えば、第2の実施形態で説明したMFPに対するユーザログインをトリガーとして出力するようにすればよい。
【0139】
<その他の実施形態>
本発明は、上述の各実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASICやFPGA)によっても実現可能である。
【符号の説明】
【0140】
107 MFP
101 クライアント端末
104 クラウドプリントサービス
105 クラウドプリントサービス
106 クラウドプリントサービス
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20