(57)【要約】【課題】外部サービスに応じて印刷設定の変更を禁止する。【解決手段】外部サービスにより所定の処理が行われた電子データに対して印刷処理を実行するための印刷ジョブが記憶された情報処理装置とネットワークを介して接続される画像処理装置であって、前記電子データに対して前記印刷処理が実行される場合において変更を制限する印刷設定を示す禁則情報が含まれる前記印刷ジョブを前記情報処理装置から取得する取得部と、前記取得部が取得した前記印刷ジョブにより実行される印刷処理の印刷設定を変更するための画面の表示操作の入力を受け付ける受付部と、前記受付部が前記表示操作の入力を受け付けると、前記印刷ジョブにより実行される印刷処理の印刷設定のうち、前記禁則情報が示す印刷設定のユーザによる変更を制限する表示態様で前記画面を表示する表示部と、を有する。【選択図】図４
2018196990.tif 000002
【特許請求の範囲】
【請求項１】
外部サービスにより所定の処理が行われた電子データに対して印刷処理を実行するための印刷ジョブが記憶された情報処理装置とネットワークを介して接続される画像処理装置であって、
前記電子データに対して前記印刷処理が実行される場合において変更を制限する印刷設定を示す禁則情報が含まれる前記印刷ジョブを前記情報処理装置から取得する取得部と、
前記取得部が取得した前記印刷ジョブにより実行される印刷処理の印刷設定を変更するための画面の表示操作の入力を受け付ける受付部と、
前記受付部が前記表示操作の入力を受け付けると、前記印刷ジョブにより実行される印刷処理の印刷設定のうち、前記禁則情報が示す印刷設定のユーザによる変更を制限する表示態様で前記画面を表示する表示部と、
を有する画像処理装置。
【請求項２】
外部サービスにより所定の処理が行われた電子データに対して印刷処理を実行するための印刷ジョブが記憶された情報処理装置とネットワークを介して接続されるコンピュータに、
前記電子データに対して前記印刷処理が実行される場合において変更を制限する印刷設定を示す禁則情報が含まれる前記印刷ジョブを前記情報処理装置から取得する取得手順と、
前記取得手順が取得した前記印刷ジョブにより実行される印刷処理の印刷設定を変更するための画面の表示操作の入力を受け付ける受付手順と、
前記受付手順が前記表示操作の入力を受け付けると、前記印刷ジョブにより実行される印刷処理の印刷設定のうち、前記禁則情報が示す印刷設定のユーザによる変更を制限する表示態様で前記画面を表示する表示手順と、
を実行させるためのプログラム。
【請求項３】
ユーザが利用する端末装置と、印刷ジョブが記憶される情報処理装置と、少なくとも印刷処理を実行可能な画像処理装置とが含まれる情報処理システムであって、
前記端末装置は、
印刷対象が指定された印刷開始操作を受け付ける受付部と、
前記受付部が前記印刷開始操作を受け付けると、前記印刷対象を示す印刷対象データを所定のデータ形式に変換した第１の電子データを作成する作成部と、
前記作成部が作成した前記第１の電子データを前記情報処理装置に送信する送信部と、を有し、
前記情報処理装置は、
前記第１の電子データを受信すると、該情報処理装置とネットワークを介して接続される外部サービス装置に対して、前記第１の電子データに対する所定の処理の実行を要求する要求部と、
前記要求部による要求に応じて前記外部サービス装置で前記所定の処理が実行された後の前記第１の電子データを示す第２の電子データを受信すると、該第２の電子データを印刷データに変換する変換部と、
前記変換部により変換された前記印刷データを示す情報と、該印刷データに対して印刷処理が実行される場合において変更を制限する印刷設定を示す禁則情報とが含まれる印刷ジョブを記憶する第１の記憶部と、を有し、
前記画像処理装置は、
前記印刷ジョブを前記情報処理装置から取得する取得部と、
前記取得部が取得した前記印刷ジョブにより実行される印刷処理の印刷設定を変更するための画面の表示操作の入力を受け付ける受付部と、
前記受付部が前記表示操作の入力を受け付けると、前記印刷ジョブにより実行される印刷処理の印刷設定のうち、前記禁則情報が示す印刷設定のユーザによる変更を制限する表示態様で前記画面を表示する表示部と、
を有する情報処理システム。
【請求項４】
前記端末装置には、所定のプリンタドライバがインストールされており、
前記送信部は、
前記作成部が作成した前記第１の電子データを、前記プリンタドライバに設定された第１のＵＲＬを送信先として、前記情報処理装置に送信し、
前記要求部は、
前記第１の電子データを受信すると、該第１の電子データの送信先の前記第１のＵＲＬから前記外部サービス装置を特定し、特定した前記外部サービス装置に対して、前記第１の電子データに対する所定の処理の実行を要求する、ことを特徴とする請求項３に記載の情報処理システム。
【請求項５】
前記禁則情報は、特定した前記外部サービス装置に対応する印刷設定の変更を制限する情報である、ことを特徴とする請求項４に記載の情報処理システム。
【請求項６】
前記送信部は、
前記作成部が作成した前記第１の電子データを、前記プリンタドライバに設定された第１のＵＲＬを送信先として、ＩＰＰポートにより前記情報処理装置に送信する、ことを特徴とする請求項４又は５に記載の情報処理システム。
【請求項７】
前記情報処理装置は、
前記外部サービス装置に対して所定の処理の実行を要求するためのＷｅｂＡＰＩのエンドポイントを示す第２のＵＲＬが含まれる接続情報を記憶する第２の記憶部を有し、
前記要求部は、
前記第２の記憶部に記憶されている接続情報を参照して、前記第２のＵＲＬを送信先として、前記第１の電子データを前記外部サービス装置に送信することで、前記所定の処理の実行を要求する、ことを特徴とする請求項４乃至６の何れか一項に記載の情報処理システム。
【請求項８】
前記作成部は、
前記受付部が前記印刷開始操作を受け付けると、前記印刷対象データを、前記外部サービス装置が前記所定の処理を実行可能なデータ形式に変換した第１の電子データを作成する、ことを特徴とする請求項４乃至７の何れか一項に記載の情報処理システム。
【請求項９】
ユーザが利用する端末装置と、印刷ジョブが記憶される情報処理装置と、少なくとも印刷処理を実行可能な画像処理装置とが含まれる情報処理システムに用いられる情報処理方法であって、
前記端末装置は、
印刷対象が指定された印刷開始操作を受け付ける受付手順と、
前記受付手順が前記印刷開始操作を受け付けると、前記印刷対象を示す印刷対象データを所定のデータ形式に変換した第１の電子データを作成する作成手順と、
前記作成手順が作成した前記第１の電子データを前記情報処理装置に送信する送信手順と、を実行し、
前記情報処理装置は、
前記第１の電子データを受信すると、該情報処理装置とネットワークを介して接続される外部サービス装置に対して、前記第１の電子データに対する所定の処理の実行を要求する要求手順と、
前記要求手順による要求に応じて前記外部サービス装置で前記所定の処理が実行された後の前記第１の電子データを示す第２の電子データを受信すると、該第２の電子データを印刷データに変換する変換手順と、
前記変換手順により変換された前記印刷データを示す情報と、該印刷データに対して印刷処理が実行される場合において変更を制限する印刷設定を示す禁則情報とが含まれる印刷ジョブを記憶させる記憶制御手順と、を実行し、
前記画像処理装置は、
前記印刷ジョブを前記情報処理装置から取得する取得手順と、
前記取得手順が取得した前記印刷ジョブにより実行される印刷処理の印刷設定を変更するための画面の表示操作の入力を受け付ける受付手順と、
前記受付手順が前記表示操作の入力を受け付けると、前記印刷ジョブにより実行される印刷処理の印刷設定のうち、前記禁則情報が示す印刷設定のユーザによる変更を制限する表示態様で前記画面を表示する表示手順と、
を実行する情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、プログラム、情報処理システム、及び情報処理方法に関する。
【背景技術】
【０００２】
近年、クラウドコンピューティング等の技術の進歩により多種多様な外部サービスが提供されるようになった。これにより、例えば、文書データに対して所定の加工や変換等の処理を行う外部サービスと連携して、当該処理後の文書データを画像形成装置で印刷することが行われている。
【０００３】
また、印刷データに対する加工処理を外部装置が行う場合に、外部装置による加工処理の遅延を回避する技術が知られている（例えば特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、外部サービスにより加工や変換等の処理が行われた文書データは、特定の印刷設定で印刷を行うことができない場合がある。例えば、文書データの裏面に画像を付加する処理が行われた文書データでは、片面設定で印刷する必要がある。
【０００５】
このため、画像形成装置と連携する外部サービスによっては、特定の印刷設定をユーザが変更できないようにすることが好ましい。
【０００６】
本発明の一実施形態は、上記の点に鑑みてなされたもので、外部サービスに応じて印刷設定の変更を禁止することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の一実施形態は、外部サービスにより所定の処理が行われた電子データに対して印刷処理を実行するための印刷ジョブが記憶された情報処理装置とネットワークを介して接続される画像処理装置であって、前記電子データに対して前記印刷処理が実行される場合において変更を制限する印刷設定を示す禁則情報が含まれる前記印刷ジョブを前記情報処理装置から取得する取得部と、前記取得部が取得した前記印刷ジョブにより実行される印刷処理の印刷設定を変更するための画面の表示操作の入力を受け付ける受付部と、前記受付部が前記表示操作の入力を受け付けると、前記印刷ジョブにより実行される印刷処理の印刷設定のうち、前記禁則情報が示す印刷設定のユーザによる変更を制限する表示態様で前記画面を表示する表示部と、を有する。
【発明の効果】
【０００８】
外部サービスに応じて印刷設定の変更を禁止する。
【図面の簡単な説明】
【０００９】
【図１】第一の実施形態に係る印刷サービス提供システムの全体構成の一例を示す図である。
【図２】コンピュータのハードウェア構成の一例を示す図である。
【図３】第一の実施形態に係る画像形成装置のハードウェア構成の一例を示す図である。
【図４】第一の実施形態に係る印刷サービス提供システムの機能構成の一例を示す図である。
【図５】ＩＰＰ接続情報の一例を示す図である。
【図６】ＩＰＰ接続情報の他の例を示す図である。
【図７】ジョブ情報の一例を示す図である。
【図８】第一の実施形態に係るプリンタドライバのインストール処理の一例を示すシーケンス図である。
【図９】プリンタドライバのインストール処理における画面遷移の一例を示す図である。
【図１０】プリンタドライバのインストールパッケージの一例を説明する図である。
【図１１】第一の実施形態に係る印刷データの蓄積処理（印刷開始から文書データの送信まで）の一例を示すシーケンス図である。
【図１２】印刷設定画面の一例を示す図である。
【図１３】第一の実施形態に係る印刷データの蓄積処理（文書データの送信後から印刷データの保存まで）の一例を示すシーケンス図である。
【図１４】フックメッセージの一例を示す図である。
【図１５】第一の実施形態に係る印刷実行処理の一例を示すシーケンス図である。
【図１６】印刷実行処理における画面遷移の一例を示す図である。
【図１７】禁則設定が含まれないＩＰＰ接続情報の一例を示す図である。
【図１８】第二の実施形態に係るプリンタドライバのインストール処理の一例を示すシーケンス図である。
【図１９】禁則設定が含まれないカスタマイズ設定ファイルの一例を示す図である。
【図２０】第三の実施形態に係る印刷サービス提供システムの機能構成の一例を示す図である。
【図２１】グループ情報の一例を示す図である。
【図２２】フック情報の一例を示す図である。
【図２３】第三の実施形態に係るフック登録処理の一例を示すシーケンス図である。
【図２４】第三の実施形態に係る印刷データの蓄積処理の一例を示すシーケンス図である。
【図２５】第四の実施形態に係る印刷サービス提供システムの全体構成の一例を示す図である。
【図２６】第四の実施形態に係る印刷サービス提供システムの機能構成の一例を示す図である。
【図２７】外部印刷システム接続情報の一例を示す図である。
【図２８】第四の実施形態に係る外部印刷システム接続情報の登録処理の一例を示すシーケンス図である。
【図２９】プリンタ登録画面の一例を示す図である。
【図３０】第四の実施形態に係る印刷データの蓄積処理（印刷開始から新規ジョブ通知まで）の一例を示すシーケンス図である。
【図３１】第四の実施形態に係る印刷データの蓄積処理（新規ジョブ通知後から印刷データの保存まで）の一例を示すシーケンス図である。
【図３２】画像形成装置でスキャンジョブを実行する場合における処理の一例を示す図である。
【図３３】第五の実施形態に係る外部印刷システム接続情報の登録処理の一例を示すシーケンス図である。
【図３４】第五の実施形態に係る印刷データの蓄積処理（印刷開始から新規ジョブ通知まで）の一例を示すシーケンス図である。
【図３５】第五の実施形態に係る印刷データの蓄積処理（新規ジョブ通知後から印刷データの保存まで）の一例を示すシーケンス図である。
【図３６】第五の実施形態に係る印刷実行処理の一例を示すシーケンス図である。
【図３７】印刷設定画面の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
【００１１】
［第一の実施形態］
＜全体構成＞
まず、本実施形態に係る印刷サービス提供システム１の全体構成について、図１を参照しながら説明する。図１は、本実施形態に係る印刷サービス提供システム１の全体構成の一例を示す図である。
【００１２】
図１に示す印刷サービス提供システム１は、印刷サービス提供環境Ｅ１と、ユーザ環境Ｅ２と、１以上の外部サービスシステム４０とを有し、例えばインターネット等の広域的なネットワークＮ１を介して通信可能に接続される。
【００１３】
印刷サービス提供環境Ｅ１は、ネットワークＮ１を介して、外部サービスシステム４０が提供するサービス（外部サービス）と連携した印刷サービスを提供するシステム環境である。本実施形態では、外部サービスの具体例としてクラウドサービスを採用して説明するが、これに限られない。本実施形態は、例えば、ＡＳＰ（Application Service Provider）によって提供されるサービスやＷｅｂサービス等のネットワークを介して提供される各種のサービスに関して適用されても良い。
【００１４】
印刷サービス提供環境Ｅ１には、一台以上の情報処理装置で実現されるクラウド印刷システム１０が含まれる。クラウド印刷システム１０は、ネットワークＮ１を介して、外部サービスと連携した印刷サービスを提供する。
【００１５】
クラウド印刷システム１０が提供する印刷サービスでは、印刷対象の文書データに対して、外部サービスにより所定の処理を行った上で、当該処理後の文書データを印刷データに変換して、当該クラウド印刷システム１０に蓄積する。このとき、本実施形態に係るクラウド印刷システム１０は、外部サービスにフックさせることで、所定の処理が行われた文書データを得ることができる。
【００１６】
ここで、フックとは、クラウド印刷システム１０が文書データを外部サービスシステム４０に渡し、当該文書データに対して所定の処理を行ってもらった上で、当該処理後の文書データを返却してもらうことを意味する。
【００１７】
そして、クラウド印刷システム１０に蓄積されている印刷データを、ユーザ環境Ｅ２に設置されている画像形成装置２０で印刷する。これにより、クラウド印刷システム１０が提供する印刷サービスでは、外部サービスにより所定の処理が行われた文書データを、ユーザ環境Ｅ２の任意の場所に設置されている画像形成装置２０で印刷することができる。
【００１８】
外部サービスによる所定の処理としては、例えば、文書データに対して画像を付与する処理、文書データに対してＱＲコード（登録商標）等を埋め込む処理、文書データを所定のデータ形式に変換する処理等が挙げられる。また、外部サービスによる所定の処理には、例えば、印刷ジョブが投入されたことを示すログ等を収集する処理が含まれても良い。
【００１９】
なお、クラウド印刷システム１０の全部又は一部は、ユーザ環境Ｅ２に設置されていても良い。すなわち、クラウド印刷システム１０を実現する情報処理装置の全部又は一部は、ユーザ環境Ｅ２に設置されていても良い。
【００２０】
ユーザ環境Ｅ２は、例えば、画像形成装置２０を使用するユーザである企業等のシステム環境である。ユーザ環境Ｅ２には、一台以上の画像形成装置２０と、一台以上の端末装置３０とが、例えばＬＡＮ（Local Area Network）等のネットワークＮ２を介して通信可能に接続されている。
【００２１】
画像形成装置２０は、少なくともプリント機能（印刷機能）を有する装置である。画像形成装置２０は、プリント機能以外に、例えば、コピー機能やスキャン機能、ファクス（ＦＡＸ）通信機能等の各種機能を有するＭＦＰ（Multifunction Peripheral）等の複合機であっても良い。
【００２２】
端末装置３０は、ユーザによる印刷開始操作に応じて、印刷対象の文書データをクラウド印刷システム１０に送信する情報処理装置である。端末装置３０としては、例えば、ＰＣ（パーソナルコンピュータ）やスマートフォン、タブレット端末等を用いることができる。
【００２３】
外部サービスシステム４０は、ネットワークＮ１を介して、外部サービスを提供するコンピュータシステムである。外部サービスとしては、上述したように、例えば、文書データに対して画像を付与する処理を行うサービス、文書データに対してＱＲコード等を埋め込む処理を行うサービス、文書データを所定のデータ形式に変換する処理を行うサービス等が挙げられる。
【００２４】
なお、図１に示す印刷サービス提供システム１の構成は一例であって、他の構成であっても良い。例えば、端末装置３０がユーザ環境Ｅ２に含まれずに、ネットワークＮ１に接続されていても良い。
【００２５】
＜ハードウェア構成＞
≪クラウド印刷システム１０及び端末装置３０のハードウェア構成≫
次に、本実施形態に係るクラウド印刷システム１０及び端末装置３０のハードウェア構成について、図２を参照しながら説明する。図２は、コンピュータ５００のハードウェア構成の一例を示す図である。
【００２６】
本実施形態に係るクラウド印刷システム１０を実現する一台以上の情報処理装置は、図２に示すコンピュータ５００により実現される。同様に、本実施形態に係る端末装置３０は、図２に示すコンピュータ５００により実現される。
【００２７】
図２に示すコンピュータ５００は、入力装置５０１と、表示装置５０２と、外部Ｉ／Ｆ５０３と、ＲＡＭ（Random Access Memory）５０４とを有する。また、コンピュータ５００は、ＲＯＭ（Read Only Memory）５０５と、ＣＰＵ（Central Processing Unit）５０６と、通信Ｉ／Ｆ５０７と、補助記憶装置５０８とを有する。これらの各ハードウェアは、それぞれがバスＢで接続されている。
【００２８】
入力装置５０１は、キーボードやマウス、タッチパネル等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置５０２は、ディスプレイ等を含み、コンピュータ５００による処理結果を表示する。なお、入力装置５０１及び表示装置５０２の少なくとも一方は、必要なときにバスＢに接続して利用する形態であっても良い。
【００２９】
通信Ｉ／Ｆ５０７は、コンピュータ５００をネットワークＮ１やネットワークＮ２に接続するインタフェースである。コンピュータ５００は、通信Ｉ／Ｆ５０７を介してデータ通信を行うことができる。
【００３０】
外部Ｉ／Ｆ５０３は、外部装置とのインタフェースである。外部装置には、記録媒体５０３ａ等がある。コンピュータ５００は、外部Ｉ／Ｆ５０３を介して、記録媒体５０３ａの読み取りや書き込みを行うことができる。記録媒体５０３ａには、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００３１】
ＲＯＭ５０５は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ＲＯＭ５０５には、コンピュータ５００の起動時に実行されるＢＩＯＳ（Basic Input/Output System）、ＯＳ（Operating System）設定、及びネットワーク設定等のプログラムやデータが格納されている。ＲＡＭ５０４は、プログラムやデータを一時保持する揮発性の半導体メモリである。
【００３２】
ＣＰＵ５０６は、ＲＯＭ５０５や補助記憶装置５０８等の記憶装置からプログラムやデータをＲＡＭ５０４上に読み出し、処理を実行することで、コンピュータ５００全体の制御や機能を実現する演算装置である。
【００３３】
補助記憶装置５０８は、例えばＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）等であり、プログラムやデータを格納している不揮発性の記憶装置である。補助記憶装置５０８に格納されるプログラムやデータには、コンピュータ５００全体を制御する基本ソフトウェアであるＯＳ、ＯＳ上において各種機能を提供するアプリケーションソフトウェア等がある。補助記憶装置５０８は、格納しているプログラムやデータを所定のファイルシステムやＤＢ（データベース）により管理している。
【００３４】
本実施形態に係るクラウド印刷システム１０を実現する一台以上の情報処理装置は、図２に示すコンピュータ５００のハードウェア構成を有することにより、後述するような各種処理を実現できる。同様に、本実施形態に係る端末装置３０は、図２に示すコンピュータ５００のハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００３５】
≪画像形成装置２０のハードウェア構成≫
次に、本実施形態に係る画像形成装置２０のハードウェア構成について、図３を参照しながら説明する。図３は、本実施形態に係る画像形成装置２０のハードウェア構成の一例を示す図である。
【００３６】
図３に示す画像形成装置２０は、コントローラ２１と、操作パネル２２と、外部Ｉ／Ｆ２３と、通信Ｉ／Ｆ２４と、プロッタ２５と、スキャナ２６とを有する。また、コントローラ２１は、ＣＰＵ３１と、ＲＡＭ３２と、ＲＯＭ３３と、ＮＶＲＡＭ３４と、補助記憶装置３５とを有する。
【００３７】
ＲＯＭ３３は、各種プログラムやデータを格納している。ＲＡＭ３２は、プログラムやデータを一時保持する。ＮＶＲＡＭ３４は、例えば設定情報等を格納している。また、補助記憶装置３５は、各種プログラムやデータを格納している。
【００３８】
ＣＰＵ３１は、ＲＯＭ３３やＮＶＲＡＭ３４、補助記憶装置３５等からプログラムやデータ、設定情報等をＲＡＭ３２上に読み出し、処理を実行することで、画像形成装置２０全体の制御や機能を実現する。
【００３９】
操作パネル２２は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部Ｉ／Ｆ２３は、外部装置とのインタフェースである。外部装置には、記録媒体２３ａ等がある。画像形成装置２０は、外部Ｉ／Ｆ２３を介して、記録媒体２３ａの読み取りや書き込みを行うことができる。記録媒体２３ａには、例えば、ＩＣカード、フレキシブルディスク、ＣＤ、ＤＶＤ、ＳＤメモリカード、ＵＳＢメモリ等がある。
【００４０】
通信Ｉ／Ｆ２４は、画像形成装置２０をネットワークＮ２に接続するインタフェースである。画像形成装置２０は、通信Ｉ／Ｆ２４を介してデータ通信を行うことができる。
【００４１】
プロッタ２５は、印刷データを被印刷媒体に印刷するための印刷装置である。なお、被印刷媒体は、紙に限られない。被印刷媒体は、例えば、ＯＨＰシートやプラスチックフィルム、銅箔等であっても良い。スキャナ２６は、原稿を読み取って、画像データを作成する読取装置である。
【００４２】
本実施形態に係る画像形成装置２０は、図３に示すハードウェア構成を有することにより、後述するような各種処理を実現できる。
【００４３】
＜機能構成＞
次に、本実施形態に係る印刷サービス提供システム１の機能構成について、図４を参照しながら説明する。図４は、本実施形態に係る印刷サービス提供システム１の機能構成の一例を示す図である。
【００４４】
図４に示す端末装置３０は、Ｗｅｂブラウザ３０１と、印刷アプリケーション３０２と、印刷システム３０３と、プリンタドライバ３０４と、ＩＰＰポート３０５とを有する。これらは、ＣＰＵ５０６により実行されるプログラム（モジュールも含む）である。
【００４５】
Ｗｅｂブラウザ３０１は、外部サービスシステム４０が提供するＷｅｂページ等を利用するための各種処理を行う。ユーザは、Ｗｅｂブラウザ３０１を用いて、クラウド印刷システム１０が提供するプリンタドライバ３０４を端末装置３０にインストールすることができる。
【００４６】
印刷アプリケーション３０２は、ユーザが印刷開始操作を行うことができる各種アプリケーションプログラムである。印刷アプリケーション３０２は、ユーザによる印刷開始操作に応じて、例えば文書や画像等の印刷対象データを描画データに変換する。
【００４７】
印刷アプリケーション３０２には、例えば、文書作成アプリケーションや画像編集アプリケーション等が挙げられる。印刷アプリケーション３０２は、Ｗｅｂブラウザ３０１であっても良い。
【００４８】
印刷システム３０３は、端末装置３０に搭載されているＯＳにより提供され、印刷に関する各種処理を行うプログラム群である。印刷システム３０３は、印刷アプリケーション３０２が利用可能な印刷ＡＰＩ（Application Program Interface）を提供する。印刷アプリケーション３０２は、印刷システム３０３が提供する印刷ＡＰＩを用いることで、プリンタドライバ３０４により、例えばＰＤＦ（Portable Document Format）形式等に変換された印刷対象の文書データを作成することができる。
【００４９】
プリンタドライバ３０４は、印刷設定を変更するための印刷設定画面を表示するＵＩ制御部３１１と、印刷アプリケーション３０２により作成された描画データをＰＤＦ形式等の文書データに変換する変換部３１２とを有する。プリンタドライバ３０４は、クラウド印刷システム１０により提供され、端末装置３０にインストールされる。
【００５０】
なお、文書データは、ＰＤＦ形式に限られず、後述する外部サービスシステム４０のサービス処理部４０２が解釈可能なデータ形式であれば良い。
【００５１】
ＩＰＰポート３０５は、ＩＰＰ（Internet Printing Protocol）により、プリンタドライバ３０４により指定されたＵＲＬ（Uniform Resource Locator）に対して文書データを送信するポートである。
【００５２】
図４に示すクラウド印刷システム１０は、アカウント管理部１０１と、ドライバ提供部１０２と、ＩＰＰ管理部１０３と、ジョブ管理部１０４と、フック管理部１０５とを有する。これら各部は、クラウド印刷システム１０を実現する一台以上の情報処理装置にインストールされた１以上のプログラムが、ＣＰＵ５０６に実行させる処理により実現される。
【００５３】
また、図４に示すクラウド印刷システム１０は、ＩＰＰ接続情報記憶部１１０と、ジョブ情報記憶部１２０と、データ記憶部１３０とを有する。これら各部は、クラウド印刷システム１０を実現する一台以上の情報処理装置の補助記憶装置５０８を用いて実現可能である。なお、これら各部の少なくとも１つが、クラウド印刷システム１０とネットワークＮ１を介して接続される記憶装置等を用いて実現されていても良い。
【００５４】
アカウント管理部１０１は、クラウド印刷システム１０に対する認証や認可に関する処理を行う。
【００５５】
ドライバ提供部１０２は、端末装置３０にプリンタドライバ３０４をインストールするためのインストールパッケージを作成する。このとき、ドライバ提供部１０２は、ＩＰＰ管理部１０３が作成したＩＰＰ  ＵＲＬを、インストールパッケージに含まれるカスタマイズ設定ファイルのポート名に反映する。これにより、当該インストールパッケージによりインストールされたプリンタドライバ３０４では、文書データの出力先（すなわち、ＩＰＰポート３０５に指定されたＵＲＬ）がＩＰＰ  ＵＲＬとなる。
【００５６】
ＩＰＰ管理部１０３は、ＩＰＰ接続情報記憶部１１０に記憶されているＩＰＰ接続情報１１１を管理する。ＩＰＰ管理部１０３は、ドライバ提供部１０２からの要求に応じて、ＩＰＰ接続ＩＤを作成した上で、当該ＩＰＰ接続ＩＤが含まれるＩＰＰ接続情報１１１と、当該ＩＰＰ接続ＩＤが含まれるＩＰＰ  ＵＲＬとを作成する。また、ＩＰＰ管理部１０３は、ＩＰＰに対応したＷｅｂＡＰＩを提供する。
【００５７】
ジョブ管理部１０４は、ジョブ情報記憶部１２０に記憶されているジョブ情報１２１を管理する。また、ジョブ管理部１０４は、ＩＰＰ管理部１０３からの要求に応じて、印刷ジョブを示すジョブ情報１２１を作成して、ジョブ情報記憶部１２０に記憶させる。更に、ジョブ管理部１０４は、後述する外部サービスシステム４０のサービス処理部４０２による処理後の文書データ（以降、「加工済み文書データ」と表す。）を、画像形成装置２０が解釈可能な形式の印刷データに変換する。
【００５８】
フック管理部１０５は、ジョブ管理部１０４からの要求に応じて、フックに関する処理を行う。すなわち、フック管理部１０５は、フック先の外部サービスを提供する外部サービスシステム４０に対して、当該外部サービスシステム４０が文書データを取得可能なＵＲＬを含まれるフックメッセージを送信する。そして、フック管理部１０５は、外部サービスシステム４０により返却された加工済み文書データを取得する。
【００５９】
フックとは、上述したように、クラウド印刷システム１０が文書データを外部サービスシステム４０に渡し、当該文書データに対して所定の処理を行ってもらった上で、処理後の文書データ（すなわち、加工済み文書データ）を返却してもらうことを意味する。
【００６０】
ＩＰＰ接続情報記憶部１１０は、ＩＰＰ接続情報１１１を記憶する。ＩＰＰ接続情報１１１の詳細については後述する。
【００６１】
ジョブ情報記憶部１２０は、ジョブ情報１２１を記憶する。ジョブ情報１２１の詳細については後述する。
【００６２】
データ記憶部１３０は、各種データを記憶する。すなわち、データ記憶部１３０は、端末装置３０が受信した文書データと、当該文書データを外部サービスシステム４０で加工した加工済み文書データと、当該加工済み文書データを変換した印刷データとを記憶する。
【００６３】
図４に示す画像形成装置２０は、ＵＩ制御部２０１と、ジョブ取得部２０２と、印刷制御部２０３とを有する。これら各部は、画像形成装置２０にインストールされた１以上のプログラムが、ＣＰＵ３１に実行させる処理により実現される。
【００６４】
ＵＩ制御部２０１は、各種画面を表示すると共に、ユーザによる各種入力操作を受け付ける。例えば、ＵＩ制御部２０１は。印刷ジョブの一覧を示す印刷ジョブリストやログイン画面等を表示する。また、例えば、ＵＩ制御部２０１は、ユーザによるログイン操作等を受け付ける。
【００６５】
ジョブ取得部２０２は、ＵＩ制御部２０１が受け付けたログイン操作に応じて、クラウド印刷システム１０からジョブ情報１２１を取得する。
【００６６】
印刷制御部２０３は、クラウド印刷システム１０から印刷データを受信した場合に、プロッタ２５を制御して、当該印刷データを印刷する。
【００６７】
図４に示す外部サービスシステム４０は、Ｗｅｂ処理部４０１と、サービス処理部４０２とを有する。Ｗｅｂ処理部４０１は、例えば、端末装置３０に対してＷｅｂページやＷｅｂアプリケーション等を提供するための各種処理を行う。サービス処理部４０２は、外部サービスシステム４０が提供する外部サービスに応じて、文書データに対して所定の処理（すなわち、文書データに対して画像を付与する処理や文書データに対してＱＲコードを埋め込む処理等）を行う。
【００６８】
次に、ＩＰＰ接続情報記憶部１１０に記憶されるＩＰＰ接続情報１１１について、図５を参照しながら説明する。図５は、ＩＰＰ接続情報１１１の一例を示す図である。
【００６９】
図５に示すＩＰＰ接続情報１１１には、ＩＰＰ接続ＩＤ１１１１と、所有者ユーザＩＤ１１１２と、フック設定１１１３と、禁則設定１１１４とが含まれる。
【００７０】
ＩＰＰ接続ＩＤ１１１１には、ＩＰＰ接続情報１１１を識別するＩＰＰ接続ＩＤが設定される。図５に示すＩＰＰ接続情報１１１のＩＰＰ接続ＩＤ１１１１には、ＩＰＰ接続ＩＤ「ｉｐｐ＿１２３４５」が設定されている。
【００７１】
所有者ユーザＩＤ１１１２には、ＩＰＰ接続ＩＤ１１１１の所有者（すなわち、ＩＰＰ接続情報１１１に対応するプリンタドライバ３０４の所有者）を識別するユーザＩＤが設定される。図５に示すＩＰＰ接続情報１１１の所有者ユーザＩＤ１１１２には、ユーザＩＤ「ｕｓｒ＿１２３４５」が設定されている。
【００７２】
フック設定１１１３には、フック先の外部サービスを利用するためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬが設定される。図５に示すＩＰＰ接続情報１１１のフック設定１１１３には、文書データに対してＱＲコードを埋め込むためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬ「ｈｔｔｐｓ：／／ｘｘｘｘｘｘｘ．ｃｏｍ／ｐｒｉｎｔ／ｈｏｏｋ／ｅｍｂｅｄ＿ｑｒ」が設定されている。フック設定１１１３に設定されるＵＲＬは、当該外部サービスを提供する外部サービスシステム４０により指定される。
【００７３】
禁則設定１１１４には、フック先の外部サービスを利用した場合において変更が禁止される印刷設定項目とその設定値（固定値）とが設定される（すなわち、印刷設定に関する禁則設定が設定される。）。禁則設定１１１４に設定された印刷設定項目は、ユーザによる変更が禁止される。図５に示すＩＰＰ接続情報１１１の禁則設定１１１４には、複数の印刷設定項目及びその設定値「ｃｏｌｏｒ＝ｍｏｎｏｃｈｒｏｍｅ，ｄｕｐｌｅｘ＝ｎｏ，ｐｕｎｃｈ＝ｎｏ，ｓｔａｐｌｅ＝ｎｏ」が設定されている。この場合、ユーザによる印刷設定項目「カラー／モノクロ」、「両面／片面」、「パンチ」及び「ステープル」の変更が禁止される。また、印刷設定項目「カラー／モノクロ」の設定値は「モノクロ」、印刷設定項目「両面／片面」の設定値は「片面」、印刷設定項目「パンチ」の設定値は「しない」、及び印刷設定項目「ステープル」の設定値は「しない」にそれぞれ固定される。
【００７４】
ここで、ＩＰＰ接続情報記憶部１１０に記憶されるＩＰＰ接続情報１１１の他の例について、図６を参照しながら説明する。図６は、ＩＰＰ接続情報１１１の他の例を示す図である。
【００７５】
図６に示すＩＰＰ接続情報１１１は、禁則設定１１１４の形式が図５と異なる。図６に示すＩＰＰ接続情報の禁則設定１１１４には、「ｃｏｐｉｅｓ：｛ｈｉｄｄｅｎ：ｆａｌｓｅ｝」が設定されている。これは、印刷設定項目「部数」の設定値の変更が禁止されていないことを示している。
【００７６】
一方で、図６に示すＩＰＰ接続情報１１１の禁則設定１１１４には、「ｃｏｌｏｒ：｛ｖａｌｕｅ：ｃｏｌｏｒ，ｈｉｄｄｅｎ：ｔｒｕｅ｝」が設定されている。これは、印刷設定項目「カラー／モノクロ」の設定値の変更が禁止されており、その設定値は「カラー」に固定されることを示している。
【００７７】
同様に、図６に示すＩＰＰ接続情報１１１の禁則設定１１１４には、「ｄｕｐｌｅｘ：｛ｖａｌｕｅ：ｎｏ，ｈｉｄｄｅｎ：ｔｒｕｅ｝」が設定されている。これは、印刷設定項目「両面／片面」の設定値の変更が禁止されており、その設定値は「片面」に固定されることを示している。
【００７８】
このように、ＩＰＰ接続情報１１１の禁則設定１１１１４は、様々な形式で印刷設定の禁則を設定することができる。
【００７９】
次に、ジョブ情報記憶部１２０に記憶されるジョブ情報１２１について、図７を参照しながら説明する。図７は、ジョブ情報１２１の一例を示す図である。
【００８０】
図７に示すジョブ情報１２１には、ジョブＩＤ１２１１と、所有者ユーザＩＤ１２１２と、文書データロケーション１２１３と、印刷データロケーション１２１４と、フック設定１２１５と、印刷設定値１２１６と、禁則設定１２１７とが含まれる。
【００８１】
ジョブＩＤ１２１１には、印刷ジョブを識別するジョブＩＤが設定される。図７に示すジョブ情報１２１のジョブＩＤ１２１１には、ジョブＩＤ「ｊｏｂ＿１２３４５」が設定されている。
【００８２】
所有者ユーザＩＤ１２１２には、印刷ジョブの所有者（すなわち、当該印刷ジョブを投入したユーザ）を識別するユーザＩＤである。図７に示すジョブ情報１２１の所有者ユーザＩＤ１２１２には、ユーザＩＤ「ｕｓｒ＿１２３４５」が設定されている。
【００８３】
文書データロケーション１２１３は、文書データ又は加工済み文書データの保存先を示す情報が設定される。データ記憶部１３０に文書データが保存されており、かつ、当該文書データの加工済み文書データが保存されていない場合には、文書データロケーション１２１３には、当該文書データの保存先を示す情報が設定される。一方で、データ記憶部１３０に加工済み文書データが保存されている場合には、文書データロケーション１２１３には、当該加工済み文書データの保存先を示す情報が設定される。
【００８４】
印刷データロケーション１２１４には、印刷データの保存先を示す情報が設定される。データ記憶部１３０に印刷データが保存されていない場合には、値が設定されない（又はＮＵＬＬ若しくはブランクが設定される。）。
【００８５】
フック設定１２１５には、ＩＰＰ接続情報１１１と同様に、フック先の外部サービスを利用するためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬが設定される。図７に示すジョブ情報１２１のフック設定１２１５には、文書データに対してＱＲコードを埋め込むためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬ「ｈｔｔｐｓ：／／ｘｘｘｘｘｘｘ．ｃｏｍ／ｐｒｉｎｔ／ｈｏｏｋ／ｅｍｂｅｄ＿ｑｒ」が設定されている。フック設定１２１５に指定されるＵＲＬは、当該外部サービスを提供する外部サービスシステム４０により指定される。
【００８６】
印刷設定値１２１６は、印刷ジョブにより印刷される印刷データの印刷設定項目及びその設定値が設定される。図７に示すジョブ情報１２１の印刷設定値１２１６には、印刷設定項目及びその設定値「ｓｉｚｅ＝Ａ４」等が設定されている。これは、印刷設定項目「原稿サイズ」の設定値が「Ａ４」であることを示している。なお、印刷設定値１２１６には、禁則設定１２１７に設定されている印刷設定項目及びその設定値も含まれる。
【００８７】
禁則設定１２１７は、ＩＰＰ接続情報１１１と同様に、フック先の外部サービスを利用した場合において変更が禁止される印刷設定項目及びその設定値（固定値）が設定される。禁則設定１２１７に設定された印刷設定は、ユーザによる変更が禁止される。図７に示すジョブ情報１２１の禁則設定１２１７には、複数の印刷設定項目及びその設定値「ｃｏｌｏｒ＝ｍｏｎｏｃｈｒｏｍｅ，ｄｕｐｌｅｘ＝ｎｏ，ｐｕｎｃｈ＝ｎｏ，ｓｔａｐｌｅ＝ｎｏ」が設定されている。この場合、ユーザによる印刷設定項目「カラー／モノクロ」、「両面／片面」、「パンチ」及び「ステープル」の変更が禁止される。また、印刷設定項目「カラー／モノクロ」の設定値は「モノクロ」、印刷設定項目「両面／片面」の設定値は「片面」、印刷設定項目「パンチ」の設定値は「しない」、及び印刷設定項目「ステープル」の設定値は「しない」にそれぞれ固定される。
【００８８】
なお、図７に示すジョブ情報１２１には、文書データ又は加工済み文書データの保存先を示す文書データロケーション１２１３が含まれるものとしたが、文書データの保存先と、加工済み文書データの保存先とが別々に含まれても良い。すなわち、図７に示すジョブ情報１２１には、文書データの保存先を示す文書データロケーション１２１３と、加工済み文書データの保存先を示す加工済み文書データロケーションとが含まれていても良い。
【００８９】
＜処理の詳細＞
次に、本実施形態に係る印刷サービス提供システム１の処理の詳細について説明する。
【００９０】
≪プリンタドライバ３０４のインストール≫
まず、ユーザが端末装置３０にプリンタドライバ３０４をインストールする処理について、図８を参照しながら説明する。図８は、本実施形態に係るプリンタドライバ３０４のインストール処理の一例を示すシーケンス図である。以降のステップＳ１０１〜ステップＳ１１０の処理は、既知のＯＡｕｔｈによる認証及び認可に関する処理であるため、適宜、その説明を簡略化する。なお、ステップＳ１０１〜ステップＳ１１０の処理は、ＯＡｕｔｈに限られず、例えば、ＯｐｅｎＩＤ等が用いられても良い。
【００９１】
まず、ユーザは、端末装置３０のＷｅｂブラウザ３０１を用いて、認可開始操作を行う（ステップＳ１０１）。ユーザは、Ｗｅｂブラウザ３０１を用いて、例えば、外部サービスシステム４０が提供するＷｅｂページにおいて、クラウド印刷システム１０への認可要求を行うためのリンクを押下することで、認可開始操作を行うことができる。
【００９２】
なお、ユーザは、複数の外部サービスシステム４０のうち、所望の外部サービスシステム４０を選択した上で、認可開始操作を行っても良い。また、１つの外部サービスシステム４０が複数の外部サービスを提供している場合は、ユーザは、これら複数の外部サービスのうち、所望の外部サービスを選択した上で、認可開始操作を行っても良い。
【００９３】
端末装置３０のＷｅｂブラウザ３０１は、ユーザによる認可開始操作を受け付けると、認可開始要求を外部サービスシステム４０に送信する（ステップＳ１０２）。外部サービスシステム４０のＷｅｂ処理部４０１は、認可開始要求を受信すると、クラウド印刷システム１０の認証画面へのリダイレクト要求を端末装置３０に送信する（ステップＳ１０３）。
【００９４】
端末装置３０のＷｅｂブラウザ３０１は、クラウド印刷システム１０の認証画面へのリダイレクト要求を受信すると、当該認証画面の表示要求をクラウド印刷システム１０に送信する（ステップＳ１０４）。すなわち、Ｗｅｂブラウザ３０１は、ＨＴＴＰ（Hypertext Transfer Protocol）リクエストをリダイレクト先ＵＲＬに送信する。
【００９５】
そして、クラウド印刷システム１０は、認証画面の表示要求を受信すると、当該認証画面を端末装置３０に返信する。これにより、端末装置３０のＷｅｂブラウザ３０１上には、例えば図９に示す認証画面Ｇ１００が表示される。
【００９６】
図９に示す認証画面Ｇ１００には、ユーザＩＤ入力欄Ｇ１０１と、パスワード入力欄Ｇ１０２と、ＯＫボタンＧ１０３とが含まれる。ユーザは、ユーザＩＤ入力欄Ｇ１０１及びパスワード入力欄Ｇ１０２にそれぞれユーザＩＤ及びパスワードを入力した上で、ＯＫボタンＧ１０３を押下することで、認証情報の入力操作を行うことができる。認証情報とは、ユーザＩＤ及びパスワードの組のことである。
【００９７】
ただし、認証情報は、これに限られない。認証情報としては、例えば、ユーザＩＤと、パスワードと、ユーザが所属する組織を示す組織コードとの組であっても良い。また、ユーザＩＤには、例えば、ユーザのメールアドレスや電話番号等が用いられても良い。
【００９８】
ユーザは、端末装置３０のＷｅｂブラウザ３０１を用いて、認証情報の入力操作を行う（ステップＳ１０５）。端末装置３０のＷｅｂブラウザ３０１は、認証情報の入力操作を受け付けると、認証要求をクラウド印刷システム１０に送信する（ステップＳ１０６）。当該認証要求には、ユーザにより入力された認証情報（すなわち、ユーザＩＤ及びパスワードの組）が含まれる。
【００９９】
クラウド印刷システム１０のアカウント管理部１０１は、認証要求を受信すると、当該認証要求に含まれる認証情報を認証する（ステップＳ１０７）。すなわち、アカウント管理部１０１は、当該認証情報が示すユーザＩＤ及びパスワードの組が、所定の記憶領域に記憶されているか否かを検証する。以降では、アカウント管理部１０１による認証が成功したものとして説明を続ける。
【０１００】
クラウド印刷システム１０のアカウント管理部１０１は、認証が成功すると、外部サービスのメニュー画面へのリダイレクト要求を端末装置３０に送信する（ステップＳ１０８）。当該リダイレクト要求には、認可コードが含まれる。認可コードは、アクセストークンを得るために用いられるトークンである。
【０１０１】
端末装置３０のＷｅｂブラウザ３０１は、外部サービスのメニュー画面へのリダイレクト要求を受信すると、当該メニュー画面の表示要求を外部サービスシステム４０に送信する（ステップＳ１０９）。当該メニュー画面の表示要求には、認可コードが含まれる。
【０１０２】
外部サービスシステム４０のＷｅｂ処理部４０１は、メニュー画面の表示要求を受信すると、アクセストークンの取得要求をクラウド印刷システム１０に送信する（ステップＳ１１０）。当該アクセストークンの取得要求には、認可コードが含まれる。
【０１０３】
そして、クラウド印刷システム１０のアカウント管理部１０１は、アクセストークンの取得要求に含まれる認可コードが正当である場合、アクセストークンを外部サービスシステム４０に返信する。その後、外部サービスシステム４０のＷｅｂ処理部４０１は、メニュー画面と、クラウド印刷システム１０から返信されたアクセストークンとを端末装置３０に返信する。これにより、端末装置３０のＷｅｂブラウザ３０１上には、例えば図９に示すメニュー画面Ｇ１１０が表示される。
【０１０４】
図９に示すメニュー画面Ｇ１１０には、プリンタドライバ３０４のインストール画面へのリンクＧ１１１が含まれる。なお、図９に示すメニュー画面Ｇ１１０には、リンクＧ１１１以外にも、例えば、外部サービスシステム４０のアカウントを設定するための画面へのリンク等が含まれる。
【０１０５】
ユーザは、リンクＧ１１１を押下することで、例えば図９に示すダウンロード開始画面Ｇ１２０への画面遷移操作を行うことができる。これにより、端末装置３０のＷｅｂブラウザ３０１上には、図９に示すダウンロード開始画面Ｇ１２０が表示される。
【０１０６】
図９に示すダウンロード開始画面Ｇ１２０には、プリンタドライバ３０４のインストールを開始するためのリンクＧ１２１が含まれる。ユーザは、リンクＧ１２１を押下することで、プリンタドライバ３０４のダウンロード開始操作を行うことができる。
【０１０７】
ユーザは、端末装置３０のＷｅｂブラウザ３０１を用いて、プリンタドライバ３０４のダウンロード開始操作を行う（ステップＳ１１１）。端末装置３０のＷｅｂブラウザ３０１は、プリンタドライバ３０４のダウンロード開始操作を受け付けると、プリンタドライバ３０４のインストールパッケージの取得要求を外部サービスシステム４０に送信する（ステップＳ１１２）。当該インストールパッケージの取得要求には、アクセストークンが含まれる。
【０１０８】
外部サービスシステム４０のＷｅｂ処理部４０１は、当該インストールパッケージの取得要求を受信すると、プリンタアイコン名と、フック設定と、禁則設定とを当該インストールパッケージの取得要求に含めた上で、クラウド印刷システム１０に送信する（ステップＳ１１３）。
【０１０９】
ここで、プリンタアイコン名は、端末装置３０にインストールされたプリンタドライバ３０４のアイコンの表示名である。プリンタアイコン名には、例えば、外部サービスシステム４０が提供するサービス名を表す名称が指定される。具体的には、例えば、外部サービスシステム４０が提供するサービス名が「画像付加サービス」である場合、プリンタアイコン名には、「画像付加プリンタ」等が指定される。
【０１１０】
また、フック設定は、クラウド印刷システム１０が外部サービスシステム４０にフックさせるためのＵＲＬ（すなわち、外部サービスシステム４０が提供する外部サービスを利用するためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬ）である。禁則設定は、当該外部サービスを利用した場合において変更が禁止される印刷設定である。
【０１１１】
クラウド印刷システム１０のドライバ提供部１０２は、インストールパッケージの取得要求を受信すると、アクセストークンの検証要求をアカウント管理部１０１に送信する（ステップＳ１１４）。当該検証要求には、アクセストークンが含まれる。
【０１１２】
クラウド印刷システム１０のアカウント管理部１０１は、アクセストークンの検証要求を受信すると、当該検証要求に含まれるアクセストークンの正当性を検証する（ステップＳ１１５）。そして、アクセストークンが正当なものであると検証された場合、アカウント管理部１０１は、当該アクセストークンに対応するユーザＩＤをドライバ提供部１０２に返信する。
【０１１３】
クラウド印刷システム１０のドライバ提供部１０２は、ユーザＩＤが返信されると、ＩＰＰ  ＵＲＬの取得要求をＩＰＰ管理部１０３に送信する（ステップＳ１１６）。当該ＩＰＰ  ＵＲＬの取得要求には、ユーザＩＤと、フック設定と、禁則設定とが含まれる。
【０１１４】
クラウド印刷システム１０のＩＰＰ管理部１０３は、ＩＰＰ  ＵＲＬの取得要求を受信すると、ＩＰＰ接続情報１１１を作成して、ＩＰＰ接続情報記憶部１１０に保存する（ステップＳ１１７）。すなわち、ＩＰＰ管理部１０３は、ＩＰＰ接続情報１１１を識別するＩＰＰ接続ＩＤを作成した上で、当該ＩＰＰ接続ＩＤと、ＩＰＰ  ＵＲＬの取得要求に含まれるユーザＩＤと、フック設定と、禁則設定とが設定されたＩＰＰ接続情報１１１を作成する。なお、これらＩＰＰ接続ＩＤ、ユーザＩＤ、フック設定、及び禁則設定は、それぞれＩＰＰ接続ＩＤ１１１１、所有者ユーザＩＤ１１１２、フック設定１１１３、及び禁則設定１１１４に設定される。
【０１１５】
そして、ＩＰＰ管理部１０３は、作成したＩＰＰ接続情報１１１をＩＰＰ接続情報記憶部１１０に保存する。
【０１１６】
次に、クラウド印刷システム１０のＩＰＰ管理部１０３は、上記のステップＳ１１７で保存したＩＰＰ接続情報１１１のＩＰＰ接続ＩＤを特定可能で、かつ、クラウド印刷システム１０に文書データを送信するためのＩＰＰ  ＵＲＬを作成する（ステップＳ１１８）。ＩＰＰ管理部１０３により作成されたＩＰＰ  ＵＲＬは、プリンタドライバ３０４が文書データをクラウド印刷システム１０に送信するためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬとなる。
【０１１７】
そして、ＩＰＰ管理部１０３は、作成したＩＰＰ  ＵＲＬをドライバ提供部１０２に返信する。
【０１１８】
例えば、上記のステップＳ１１７で保存したＩＰＰ接続情報１１１のＩＰＰ接続ＩＤが「ｉｐｐ＿ａｂｃｄｅ」であるとする。この場合、ＩＰＰ管理部１０３は、例えば、「ｈｔｔｐｓ：／／ｙｙｙｙｙｙｙ．ｃｏｍ／ｉｐｐ／ｌｉｎｋｓ／ｉｐｐ＿ａｂｃｄｅ／．ｐｒｉｎｔｅｒ」等のように、ＩＰＰ接続ＩＤが含まれるＵＲＬをＩＰＰ  ＵＲＬとすれば良い。
【０１１９】
ただし、ＩＰＰ  ＵＲＬは、ＩＰＰ接続ＩＤが含まれるＵＲＬに限られない。ＩＰＰ  ＵＲＬは、ＩＰＰ管理部１０３がＩＰＰ接続ＩＤを特定することが可能なＵＲＬであれば良い。例えば、ＵＲＬに含まれる所定の文字列からＬＵＴ（ルックアップテーブル）等によりＩＰＰ接続ＩＤを特定することが可能であれば、このような所定の文字列が含まれるＵＲＬをＩＰＰ  ＵＲＬとしても良い。
【０１２０】
クラウド印刷システム１０のドライバ提供部１０２は、ＩＰＰ管理部１０３からＩＰＰ  ＵＲＬが返信されると、プリンタドライバ３０４のインストールパッケージ６００を作成する（ステップＳ１１９）。
【０１２１】
ここで、ドライバ提供部１０２により作成されるインストールパッケージ６００について、図１０を参照しながら説明する。図１０は、プリンタドライバ３０４のインストールパッケージ６００の一例を説明する図である。
【０１２２】
図１０に示すインストールパッケージ６００には、インストーラ６０１と、プリンタドライバ構成ファイル群６０２と、カスタマイズ設定ファイル６０３とが含まれる。インストーラ６０１は、プリンタドライバ３０４のインストール処理を実行する実行ファイルである。プリンタドライバ構成ファイル群６０２は、プリンタドライバ３０４を構成するモジュールのファイル群である。カスタマイズ設定ファイル６０３は、プリンタドライバ３０４のカスタマイズ可能な設定が含まれるファイルである。
【０１２３】
カスタマイズ設定ファイル６０３には、プリンタアイコン名６０３１と、ポート種別６０３２と、ポート名６０３３と、禁則設定６０３４とが含まれる。
【０１２４】
プリンタアイコン名６０３１には、上記のステップＳ１１３で外部サービスシステム４０により指定されたプリンタアイコン名が設定される。ポート種別６０３２には、ＩＰＰにより文書データを送信することを示すＩＰＰが設定される。ポート名６０３３には、ＩＰＰ管理部１０３から返信されたＩＰＰ  ＵＲＬが設定される。禁則設定６０３４には、上記のステップＳ１１３で外部サービスシステム４０により指定された禁則設定が設定される。
【０１２５】
図１０に示すインストールパッケージ６００のインストーラ６０１が端末装置３０で実行されることにより、プリンタドライバ構成ファイル群６０２が端末装置３０にコピーされ、プリンタドライバ３０４がインストールされる。また、このとき、カスタマイズ設定ファイル６０３に含まれる各設定が反映されたプリンタアイコンが作成される。
【０１２６】
次に、クラウド印刷システム１０のドライバ提供部１０２は、上記のステップＳ１１９で作成したインストールパッケージ６００を外部サービスシステム４０に送信する（ステップＳ１２０）。
【０１２７】
外部サービスシステム４０のＷｅｂ処理部４０１は、クラウド印刷システム１０からインストールパッケージ６００を受信すると、当該インストールパッケージ６００を端末装置３０に送信する（ステップＳ１２１）。
【０１２８】
これにより、インストールパッケージ６００に含まれるインストーラ６０１が端末装置３０で実行され、プリンタドライバ３０４がインストールされると共に、カスタマイズ設定ファイル６０３に含まれる各設定が反映されたプリンタアイコンが作成される。
【０１２９】
≪印刷データの蓄積（印刷開始から文書データの送信まで）≫
次に、ユーザがプリンタドライバ３０４を用いて、印刷アプリケーション３０２から印刷を開始して、クラウド印刷システム１０に文書データを送信するまでの処理について、図１１を参照しながら説明する。図１１は、本実施形態に係る印刷データの蓄積処理（印刷開始から文書データの送信まで）の一例を示すシーケンス図である。
【０１３０】
ユーザは、印刷アプリケーション３０２で印刷する文書等の印刷設定を変更する場合、印刷設定画面の表示操作を行う（ステップＳ２０１）。ユーザは、例えば、印刷アプリケーション３０２により表示される所定の画面において、プリンタドライバ３０４の印刷設定画面を表示するためのボタン等を押下することで、印刷設定画面の表示操作を行うことができる。
【０１３１】
端末装置３０の印刷アプリケーション３０２は、印刷設定画面の表示操作を受け付けると、印刷設定画面の表示要求をプリンタドライバ３０４に送信する（ステップＳ２０２）。
【０１３２】
端末装置３０のプリンタドライバ３０４は、印刷設定画面の表示要求を受信すると、ＵＩ制御部３１１により、例えば図１２に示す印刷設定画面Ｇ２００を表示する（ステップＳ２０３）。
【０１３３】
図１２に示す印刷設定画面Ｇ２００には，印刷設定項目Ｇ２０１〜Ｇ２０５が含まれる。図１２に示す印刷設定画面Ｇ２００では、プリンタアイコンに反映された禁則設定６０３４に従って、印刷設定項目Ｇ２０１〜Ｇ２０５のうち、ユーザが変更可能な印刷設定項目が制御される。図１２に示す印刷設定画面Ｇ２００では、印刷設定項目Ｇ２０１はユーザが変更可能に表示されている一方で、印刷設定項目Ｇ２０２〜Ｇ２０５はユーザが変更できないように表示される。
【０１３４】
このように、プリンタドライバ３０４のＵＩ制御部３１１により表示される印刷設定画面では、カスタマイズ設定ファイル６０３の禁則設定６０３４に設定された印刷設定項目をユーザが変更することができないようになっている。
【０１３５】
これにより、外部サービスに応じた特定の印刷設定項目の値がユーザにより変更されてしまう事態を防止することができる。例えば、プリンタドライバ３０４のプリンタアイコンが、外部サービスＡと連携した印刷サービスを行うためのプリンタアイコンである場合、外部サービスＡが禁止している印刷設定値がユーザにより設定されてしまう事態を防止することができる。
【０１３６】
なお、図１２に示す印刷設定画面Ｇ２００では、ユーザが変更することができない印刷設定項目Ｇ２０２〜Ｇ２０５がグレーアウトされている例を示したが、表示態様はグレーアウトに限られない。ＵＩ制御部３１１は、例えば、ユーザが変更することができない印刷設定項目を非表示にしても良い。
【０１３７】
次に、ユーザは、印刷アプリケーション３０２が表示している文書等を印刷したい場合、印刷開始操作を行う（ステップＳ２０４）。ユーザは、印刷アプリケーション３０２により表示される所定の画面において、印刷開始ボタン等を押下することで、印刷開始操作を行うことができる。このとき、ユーザは、プリンタドライバ３０４のプリンタアイコン（すなわち、カスタマイズ設定ファイル６０３が反映されたプリンタアイコン）を選択した上で、印刷開始操作を行ったものとする。
【０１３８】
端末装置３０の印刷アプリケーション３０２は、ユーザによる印刷開始操作を受け付けると、当該印刷アプリケーション３０２が表示している文書等を、例えばラスタ形式に変換して、描画データを作成する（ステップＳ２０５）。
【０１３９】
次に、端末装置３０の印刷アプリケーション３０２は、上記のステップＳ２０５で作成された描画データと、ユーザによる印刷開始操作で指定された印刷設定値とを印刷システム３０３に送信する（ステップＳ２０６）。印刷アプリケーション３０２は、ＯＳが提供する印刷ＡＰＩを用いることで、描画データと印刷設定値とを印刷システム３０３に送信することができる。印刷設定値には、ユーザが変更可能な印刷設定項目（すなわち、禁則設定となっていない印刷設定項目）の設定値が含まれる。なお、印刷設定値には、禁則設定となっている印刷設定項目の固定値が含まれていても良い。
【０１４０】
次に、端末装置３０の印刷システム３０３は、上記のステップＳ２０４で選択されたプリンタアイコンのプリンタドライバ３０４に対して、描画データを送信する（ステップＳ２０７）。
【０１４１】
端末装置３０のプリンタドライバ３０４は、変換部３１２により、印刷システム３０３から受信した描画データを、例えばＰＤＦ形式等の文書データに変換する（ステップＳ２０８）。そして、プリンタドライバ３０４は、文書データを印刷システム３０３に返信する。
【０１４２】
端末装置３０の印刷システム３０３は、プリンタドライバ３０４から文書データを受信すると、当該文書データと、印刷設定値とを、上記のステップＳ２０４で選択されたプリンタアイコンが利用するポート（すなわち、ＩＰＰポート３０５）に送信する（ステップＳ２０９）。
【０１４３】
そして、端末装置３０のＩＰＰポート３０５は、印刷システム３０３から受信した文書データと、印刷設定値とをクラウド印刷システム１０に送信する（ステップＳ２１０）。このとき、ＩＰＰポート３０５は、カスタマイズ設定ファイル６０３により反映されたポート名６０３３（すなわち、ＩＰＰ  ＵＲＬ）宛に文書データと印刷設定値とを送信する。
【０１４４】
これにより、印刷対象の文書データがクラウド印刷システム１０のＩＰＰ  ＵＲＬ宛に送信される。
【０１４５】
≪印刷データの蓄積（文書データの送信後から印刷データの保存まで）≫
次に、ＩＰＰ  ＵＲＬ宛に送信された文書データをクラウド印刷システム１０が受信して、外部サービスにフックさせた後、印刷データを保存するまでの処理について、図１３を参照しながら説明する。図１３は、本実施形態に係る印刷データの蓄積処理（文書データの送信後から印刷データの保存まで）の一例を示すシーケンス図である。
【０１４６】
まず、クラウド印刷システム１０のＩＰＰ管理部１０３は、端末装置３０から文書データと印刷設定値とを受信すると、当該文書データの送信先ＵＲＬ（すなわち、ＩＰＰ  ＵＲＬ）からＩＰＰ接続ＩＤを特定する（ステップＳ３０１）。
【０１４７】
例えば、当該文書データの送信先ＵＲＬが「ｈｔｔｐｓ：／／ｙｙｙｙｙｙｙ．ｃｏｍ／ｉｐｐ／ｌｉｎｋｓ／ｉｐｐ＿ａｂｃｄｅ／．ｐｒｉｎｔｅｒ」であった場合、ＩＰＰ管理部１０３は、ＩＰＰ接続ＩＤ「ｉｐｐ＿ａｂｃｄｅ」を特定する。
【０１４８】
次に、クラウド印刷システム１０のＩＰＰ管理部１０３は、上記のステップＳ３０１で特定したＩＰＰ接続ＩＤに対応するＩＰＰ接続情報１１１をＩＰＰ接続情報記憶部１１０から取得する（ステップＳ３０２）。
【０１４９】
すなわち、例えば、ステップＳ３０１で特定したＩＰＰ接続ＩＤが「ｉｐｐ＿ａｂｃｄｅ」である場合、ＩＰＰ管理部１０３は、ＩＰＰ接続ＩＤ１１１１に「ｉｐｐ＿ａｂｃｄｅ」が設定されているＩＰＰ接続情報１１１をＩＰＰ接続情報記憶部１１０から取得する。
【０１５０】
次に、クラウド印刷システム１０のＩＰＰ管理部１０３は、ジョブ登録要求をジョブ管理部１０４に送信する（ステップＳ３０３）。当該ジョブ登録要求には、上記のステップＳ３０２で取得したＩＰＰ接続情報１１１の所有者ユーザＩＤ１１１２に設定されているユーザＩＤと、フック設定１１１３に設定されているフック設定と、禁則設定１１１４に設定されている禁則設定とが含まれる。また、当該ジョブ登録要求には、端末装置３０から受信した文書データと、印刷設定値とが含まれる。
【０１５１】
クラウド印刷システム１０のジョブ管理部１０４は、ジョブ登録要求を受信すると、当該ジョブ登録要求に含まれる文書データをデータ記憶部１３０に保存する（ステップＳ３０４）。
【０１５２】
次に、クラウド印刷システム１０のジョブ管理部１０４は、ジョブ情報１２１を作成して、ジョブ情報記憶部１２０に保存する（ステップＳ３０５）。すなわち、ジョブ管理部１０４は、ジョブ情報１２１を識別するジョブＩＤを作成した上で、ジョブ登録要求に含まれるユーザＩＤと、上記のステップＳ３０４で保存された文書データの保存先と、フック設定と、印刷設定値と、禁則設定とが設定されたジョブ情報１２１を作成する。
【０１５３】
なお、これらジョブＩＤ、ユーザＩＤ、及び文書データの保存先は、それぞれジョブＩＤ１２１１、所有者ユーザＩＤ１２１、及び文書データロケーション１２１３に設定される。同様に、フック設定、印刷設定、及び禁則設定は、それぞれフック設定１２１５、印刷設定値１２１６、及び禁則設定１２１７に設定される。一方で、印刷データロケーション１２１４には、値が設定されない。
【０１５４】
そして、ジョブ管理部１０４は、作成したジョブ情報１２１をジョブ情報記憶部１２０に保存する。ジョブ情報１２１がジョブ情報記憶部１２０に保存されることで、当該ジョブ情報１２１により実行される印刷ジョブがクラウド印刷システム１０に登録される。
【０１５５】
次に、クラウド印刷システム１０のジョブ管理部１０４は、フック要求をフック管理部１０５に送信する（ステップＳ３０６）。当該フック要求には、上記のステップＳ３０５で作成したジョブ情報１２１が含まれる。
【０１５６】
クラウド印刷システム１０のフック管理部１０５は、フック要求を受信すると、例えば図１４に示すフックメッセージ７００を作成する（ステップＳ３０７）。
【０１５７】
図１４に示すフックメッセージ７００には、フックアクセストークン７０１と、文書データＵＲＬ７０２と、フック完了通知ＵＲＬ７０３と、所有者ユーザＩＤ７０４とが含まれる。
【０１５８】
フックアクセストークン７０１には、外部サービスシステム４０が文書データの取得やフック完了通知を行うために必要なフックアクセストークンが設定される。フックアクセストークンにより、所定の外部サービスシステム４０以外からの不正な文書データの取得等を防止することができる。図１４に示すフックメッセージ７００のフックアクセストークン７０１には、フックアクセストークン「ａ７Ｊｇｄ２３ｊｍｌｔｑｂ３Ｌｈ」が設定されている。このようなフックアクセストークンは、フック管理部１０５により作成される。
【０１５９】
文書データＵＲＬ７０２には、外部サービスシステム４０が文書データを取得するためのＵＲＬが設定される。図１４に示すフックメッセージ７００の文書データＵＲＬ７０２には、文書データを取得するためのＵＲＬ「ｈｔｔｐｓ：／／ｙｙｙｙｙｙｙ．ｃｏｍ／ｄｏｃｓ／・・・」が設定されている。このようなＵＲＬは、例えば、フック要求に含まれるジョブ情報１２１の文書データロケーション１２１３に設定されている情報（文書データの保存先を示す情報）から作成される。
【０１６０】
例えば、当該ジョブ情報１２１の文書データロケーション１２１３に設定されている情報が文書データを識別する情報「ｂ８ａｄ７ｅｃｅ」であるとする。この場合、フック管理部１０５は、文書データＵＲＬ７０２に設定されるＵＲＬを、例えば「ｈｔｔｐｓ：／／ｙｙｙｙｙｙｙ．ｃｏｍ／ｄｏｃｓ／ｂ８ａｄ７ｅｃｅ」等とすれば良い。
【０１６１】
フック完了通知ＵＲＬ７０３には、外部サービスシステム４０がフック完了通知を送信するための送信先ＵＲＬが設定される。図１４に示すフックメッセージ７００のフック完了通知ＵＲＬ７０３には、フック完了通知の送信先ＵＲＬ「ｈｔｔｐｓ：／／ｙｙｙｙｙｙｙ．ｃｏｍ／ｊｏｂｓ／・・・」が設定されている。このようなＵＲＬは、例えば、フック要求に含まれるジョブ情報１２１のジョブＩＤ１２１１に設定されているジョブＩＤから作成される。
【０１６２】
例えば、当該ジョブ情報１２１のジョブＩＤ１２１１に設定されているジョブＩＤが「ｊｏｂ＿１２３４５」であるとする。この場合、フック管理部１０５は、フック完了通知ＵＲＬ７０３に設定されるＵＲＬを、例えば「ｈｔｔｐｓ：／／ｙｙｙｙｙｙｙ．ｃｏｍ／ｊｏｂｓ／ｊｏｂ＿１２３４５／ｈｏｏｋ＿ｒｅｐｌｙ」等とすれば良い。
【０１６３】
所有者ユーザＩＤ７０４には、印刷ジョブを登録したユーザを識別するユーザＩＤが設定される。図１７に示すフックメッセージ７００の所有者ユーザＩＤ７０４には、ユーザＩＤ「ｕｓｒ＿１２３４５」が設定されている。所有者ユーザＩＤ７０４に設定されるユーザＩＤは、フック要求に含まれるジョブ情報１２１の所有者ユーザＩＤ１２１２に設定されているユーザＩＤとすれば良い。
【０１６４】
次に、クラウド印刷システム１０のフック管理部１０５は、フック実行要求を外部サービスシステム４０に送信する（ステップＳ３０８）。当該フック実行要求には、上記のステップＳ３０７で作成されたフックメッセージ７００が含まれる。
【０１６５】
ここで、フック管理部１０５は、フック要求に含まれるジョブ情報１２１のフック設定１２１５に設定されているＵＲＬ（すなわち、外部サービスを利用するためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬ）宛にフック実行要求を送信する。
【０１６６】
外部サービスシステム４０のサービス処理部４０２は、フック実行要求を受信すると、文書データの取得要求をクラウド印刷システム１０に送信する（ステップＳ３０９）。このとき、サービス処理部４０２は、クラウド印刷システム１０から受信したフック実行要求に含まれるフックメッセージ７００の文書データＵＲＬ７０２に設定されているＵＲＬを送信先として、文書データの取得要求を送信する。また、当該文書データの取得要求には、当該フックメッセージ７００のフックアクセストークン７０１に設定されているフックアクセストークンが含まれる。
【０１６７】
クラウド印刷システム１０のフック管理部１０５は、文書データの取得要求を受信すると、当該文書データの取得要求に含まれるフックアクセストークンの正当性を検証する（ステップＳ３１０）。
【０１６８】
次に、クラウド印刷システム１０のフック管理部１０５は、フックトークンが正当なものであると検証された場合、当該文書データの取得要求の送信先ＵＲＬが示す文書データをデータ記憶部１３０から取得する（ステップＳ３１１）。例えば、文書データの取得要求の送信先ＵＲＬが「ｈｔｔｐｓ：／／ｙｙｙｙｙｙｙ．ｃｏｍ／ｄｏｃｓ／ｂ８ａｄ７ｅｃｅ」である場合、フック管理部１０５は、「ｂ８ａｄ７ｅｃｅ」で識別される文書データをデータ記憶部１３０から取得する。
【０１６９】
そして、フック管理部１０５は、取得した文書データを外部サービスシステム４０に返信する。
【０１７０】
外部サービスシステム４０のサービス処理部４０２は、クラウド印刷システム１０から文書データが返信されると、当該文書データに対して所定の処理を行って、当該文書データを加工する（ステップＳ３１２）。すなわち、サービス処理部４０２は、例えば、文書データに対してＱＲコードを埋め込む処理等を行って、当該文書データを加工する。これにより、加工済み文書データが作成される。
【０１７１】
次に、外部サービスシステム４０のサービス処理部４０２は、フック完了通知をクラウド印刷システム１０に送信する（ステップＳ３１３）。このとき、サービス処理部４０２は、上記のステップＳ３０８でクラウド印刷システム１０から受信したフック実行要求に含まれるフックメッセージ７００のフック完了通知ＵＲＬ７０３に設定されているＵＲＬを送信先として、フック完了通知を送信する。また、フック完了通知には、当該フックメッセージ７００のフックアクセストークン７０１に設定されているフックアクセストークンと、上記のステップＳ３１２で作成された加工済み文書データとが含まれる。
【０１７２】
クラウド印刷システム１０のフック管理部１０５は、フック完了通知を受信すると、当該フック完了通知に含まれるフックアクセストークンの正当性を検証する（ステップＳ３１４）。
【０１７３】
次に、クラウド印刷システム１０のフック管理部１０５は、フックトークンが正当なものであると検証された場合、フック完了応答をジョブ管理部１０４に送信する（ステップＳ３１５）。当該フック完了応答には、上記のステップＳ３０６で受信したフック要求に含まれるジョブ情報１２１のジョブＩＤと、加工済み文書データとが含まれる。
【０１７４】
クラウド印刷システム１０のジョブ管理部１０４は、フック完了応答を受信すると、当該フック完了応答に含まれる加工済み文書データをデータ記憶部１３０に保存する（ステップＳ３１６）。このとき、ジョブ管理部１０４は、ジョブ情報記憶部１２０に記憶されているジョブ情報１２１のうち、当該フック完了応答に含まれるジョブＩＤに対応するジョブ情報１２１の文書データロケーション１２１３を、加工済み文書データの保存先を示す情報に更新する。
【０１７５】
次に、クラウド印刷システム１０のジョブ管理部１０４は、当該フック完了応答に含まれる加工済み文書データを、画像形成装置２０が解釈可能な形式の印刷データに変換する（ステップＳ３１７）。
【０１７６】
次に、クラウド印刷システム１０のジョブ管理部１０４は、印刷データをデータ記憶部１３０に保存する（ステップＳ３１８）。このとき、ジョブ管理部１０４は、ジョブ情報記憶部１２０に記憶されているジョブ情報１２１のうち、当該フック完了応答に含まれるジョブＩＤに対応するジョブ情報１２１の印刷データロケーション１２１４に、印刷データの保存先を示す情報を設定する。
【０１７７】
これにより、外部サービスシステム４０により加工された文書データを画像形成装置２０が解釈可能な形式に変換した印刷データが、クラウド印刷システム１０のデータ記憶部１３０に蓄積される。
【０１７８】
≪印刷実行≫
次に、クラウド印刷システム１０に蓄積されている印刷データを画像形成装置２０で印刷する処理について、図１５を参照しながら説明する。図１５は、本実施形態に係る印刷実行処理の一例を示すシーケンス図である。
【０１７９】
まず、ユーザは、画像形成装置２０の利用開始操作を行う（ステップＳ４０１）。ユーザは、例えば、画像形成装置２０の電源をＯＮすること等により利用開始操作を行うことができる。
【０１８０】
画像形成装置２０のＵＩ制御部２０１は、ユーザによる利用開始操作を受け付けると、例えば図１６に示すログイン画面Ｇ３００を表示する（ステップＳ４０２）。
【０１８１】
図１６に示すログイン画面Ｇ３００には、ユーザＩＤ入力欄Ｇ３０１と、パスワード入力欄Ｇ３０２と、ログインボタンＧ３０３とが含まれる。ユーザは、ユーザＩＤ入力欄Ｇ３０１及びパスワード入力欄Ｇ３０２にそれぞれユーザＩＤ及びパスワードを入力した上で、ログインボタンＧ３０３を押下することで、認証情報の入力操作を行うことができる。
【０１８２】
なお、ユーザは、例えば、認証情報が記録されたＩＣカード等を画像形成装置２０の所定の箇所にかざすことで認証情報の入力操作を行っても良い。
【０１８３】
ユーザは、認証情報の入力操作を行う（ステップＳ４０３）。画像形成装置２０のＵＩ制御部２０１は、認証情報の入力操作を受け付けると、アクセストークンの取得要求をクラウド印刷システム１０に送信する（ステップＳ４０４）。当該アクセストークンの取得要求には、ユーザにより入力された認証情報（すなわち、ユーザＩＤ及びパスワードの組）が含まれる。
【０１８４】
クラウド印刷システム１０のアカウント管理部１０１は、アクセストークンの取得要求を受信すると、当該アクセストークンの取得要求に含まれる認証情報を認証する（ステップＳ４０５）。すなわち、アカウント管理部１０１は、当該認証情報が示すユーザＩＤ及びパスワードの組が、所定の記憶領域に記憶されているか否かを検証する。以降では、アカウント管理部１０１による認証が成功したものとして説明を続ける。
【０１８５】
アカウント管理部１０１は、認証情報の認証に成功した場合、アクセストークンを画像形成装置２０に返信する。
【０１８６】
画像形成装置２０のＵＩ制御部２０１は、クラウド印刷システム１０からアクセストークンが返信されると、ジョブ一覧の表示要求をジョブ取得部２０２に送信する（ステップＳ４０６）。当該ジョブ一覧の表示要求には、クラウド印刷システム１０から返信されたアクセストークンが含まれる。
【０１８７】
画像形成装置２０のジョブ取得部２０２は、ジョブ一覧の表示要求を受信すると、ジョブ情報の取得要求をクラウド印刷システム１０に送信する（ステップＳ４０７）。当該ジョブ情報の取得要求には、アクセストークンが含まれる。
【０１８８】
クラウド印刷システム１０のジョブ管理部１０４は、ジョブ情報の取得要求を受信すると、アクセストークンの検証要求をアカウント管理部１０１に送信する（ステップＳ４０８）。当該検証要求には、アクセストークンが含まれる。
【０１８９】
クラウド印刷システム１０のアカウント管理部１０１は、アクセストークンの検証要求を受信すると、当該検証要求に含まれるアクセストークンの正当性を検証する（ステップＳ４０９）。そして、アクセストークンが正当なものであると検証された場合、アカウント管理部１０１は、当該アクセストークンに対応するユーザＩＤをジョブ管理部１０４に返信する。
【０１９０】
クラウド印刷システム１０のジョブ管理部１０４は、ユーザＩＤが返信されると、当該ユーザＩＤが所有者ユーザＩＤ１２１２に設定されているジョブ情報１２１をジョブ情報記憶部１２０から取得する（ステップＳ４１０）。
【０１９１】
次に、クラウド印刷システム１０のジョブ管理部１０４は、上記のステップＳ４１０で取得したジョブ情報１２１を画像形成装置２０に送信する（ステップＳ４１１）。
【０１９２】
画像形成装置２０のジョブ取得部２０２は、クラウド印刷システム１０からジョブ情報１２１を受信すると、これらジョブ情報１２１の一覧をＵＩ制御部２０１に送信する（ステップＳ４１２）。
【０１９３】
画像形成装置２０のＵＩ制御部２０１は、ジョブ情報１２１の一覧を受信すると、例えば図１６に示す印刷ジョブ一覧画面Ｇ３１０を表示する（ステップＳ４１３）。
【０１９４】
図１６に示す印刷ジョブ一覧画面Ｇ３１０には、ジョブ一覧Ｇ３１１と、設定変更ボタンＧ３１２と、印刷ボタンＧ３１３とが含まれる。ユーザは、ジョブ一覧Ｇ３１１の中から所望の印刷ジョブを選択した上で、設定変更ボタンＧ３１２を押下することで、印刷設定画面の表示操作を行うことができる。また、ユーザは、ジョブ一覧Ｇ３１１の中から所望の印刷ジョブを選択した上で、印刷ボタンＧ３１３を押下することで、印刷実行操作を行うことができる。
【０１９５】
ユーザが印刷設定画面の表示操作を行った場合（ステップＳ４１４）、画像形成装置２０のＵＩ制御部２０１は、当該表示操作を受け付けて、例えば図１６に示す印刷設定画面Ｇ３２０を表示する（ステップＳ４１５）。
【０１９６】
図１６に示す印刷設定画面Ｇ３２０には、ユーザが設定値を変更することが可能な印刷設定項目Ｇ３２１が含まれる。図１６に示す印刷設定画面Ｇ３２０では、「原稿サイズ」や「部数」等が変更可能な印刷設定項目Ｇ３２１として表示されている。一方で、図１６に示す印刷設定画面Ｇ３２０には、上記のジョブ一覧Ｇ３１１の中からユーザにより選択された印刷ジョブに対応するジョブ情報１２１の禁則設定１２１７に設定されている印刷設定項目は表示されない。
【０１９７】
このように、画像形成装置２０のＵＩ制御部２０１は、ユーザにより選択された印刷ジョブに対応するジョブ情報１２１の禁則設定１２１７に設定されている印刷設定項目を非表示にする。これにより、外部サービスに応じた特定の印刷設定のユーザによる変更を制限することができる。このため、外部サービスに応じた特定の印刷設定項目の値がユーザにより変更されてしまう事態を防止することができる。
【０１９８】
なお、図１６に示す印刷設定画面Ｇ３２０では、ユーザが変更することができない印刷設定項目が非表示となっている例を示したが、例えば、ユーザが変更することができない印刷設定項目がグレーアウトされていても良い。すなわち、ユーザが変更することができない印刷設定項目は、ユーザによる変更が禁止される表示態様となっていれば良い。
【０１９９】
ユーザが印刷実行操作を行った場合（ステップＳ４１６）、画像形成装置２０のＵＩ制御部２０１は、当該印刷実行操作を付け付けて、ジョブ実行要求をジョブ取得部２０２に送信する（ステップＳ４１７）。当該ジョブ実行要求には、上記のジョブ一覧Ｇ３１１の中からユーザにより選択された印刷ジョブに対応するジョブ情報１２１と、アクセストークンとが含まれる。
【０２００】
画像形成装置２０のジョブ取得部２０２は、ジョブ実行要求を受信すると、印刷データの取得要求をクラウド印刷システム１０に送信する（ステップＳ４１８）。当該印刷データの取得要求には、アクセストークンと、ユーザにより選択された印刷ジョブに対応するジョブ情報１２１の印刷データロケーション１２１４に設定されている情報（印刷データロケーション）とが含まれる。
【０２０１】
クラウド印刷システム１０のジョブ管理部１０４は、印刷データの取得要求を受信すると、アクセストークンの検証要求をアカウント管理部１０１に送信する（ステップＳ４１９）。当該検証要求には、アクセストークンが含まれる。
【０２０２】
クラウド印刷システム１０のアカウント管理部１０１は、アクセストークンの検証要求を受信すると、当該検証要求に含まれるアクセストークンの正当性を検証する（ステップＳ４２０）。そして、アクセストークンが正当なものであると検証された場合、アカウント管理部１０１は、当該アクセストークンが正当なものであることを示す検証結果をジョブ管理部１０４に返信する。
【０２０３】
クラウド印刷システム１０のジョブ管理部１０４は、アクセストークンが正当なものであることを示す検証結果が返信されると、印刷データロケーションで識別される印刷データをデータ記憶部１３０から取得する（ステップＳ４２１）。
【０２０４】
次に、クラウド印刷システム１０のジョブ管理部１０４は、上記のスッテプＳ４２１で取得した印刷データを画像形成装置２０に送信する（ステップＳ４２２）。
【０２０５】
次に、画像形成装置２０のジョブ取得部２０２は、クラウド印刷システム１０から印刷データを受信すると、印刷実行要求を印刷制御部２０３に送信する（ステップＳ４２３）。当該印刷実行要求には、印刷データと、ユーザにより選択された印刷ジョブに対応するジョブ情報１２１の印刷設定値１２１６に設定されている印刷設定項目及びその設定値（印刷設定値）とが含まれる。
【０２０６】
画像形成装置２０の印刷制御部２０３は、印刷実行要求を受信すると、プロッタ２５を制御して印刷を実行する（ステップＳ４２４）。すなわち、印刷制御部２０３は、印刷実行要求に含まれる印刷設定値に従って、印刷データを被印刷媒体に印刷する。これにより、印刷データが被印刷媒体に印刷され、印刷物が出力される。
【０２０７】
以上のように、本実施形態に係る印刷サービス提供システム１では、クラウド印刷システム１０が、外部サービスを提供する外部サービスシステム４０にフックさせることで、当該外部サービスに応じた処理を文書データに施すことができる。また、本実施形態に係る印刷サービス提供システム１では、外部サービスシステム４０により指定された禁則設定に従って、画像形成装置２０や端末装置３０に表示される印刷設定画面でユーザが特定の印刷設定項目を変更できないように制御する。このため、本実施形態に係る印刷サービス提供システム１によれば、外部サービスにより設定値の変更が禁止されている印刷設定項目をユーザが誤って変更してしまうような事態を防止することができる。
【０２０８】
［第二の実施形態］
次に、第二の実施形態について説明する。第一の実施形態では、ＩＰＰ接続情報１１１に禁則設定１１１４が含まれる場合について説明したが、必ずしも禁則設定１１１４が含まれていなくても良い。すなわち、図１７に示すＩＰＰ接続情報１１１のように、禁則設定１１１４が含まれていなくても良い。この場合、ユーザに対して特定の印刷設定項目の変更を禁止することはできないものの、外部サービスと連携した印刷サービスを提供することは可能である。
【０２０９】
そこで、第二の実施形態では、ＩＰＰ接続情報１１１に禁則設定１１１４が含まれない場合（すなわち、外部サービスシステム４０が禁則設定を指定しない場合）に、外部サービスと連携した印刷サービスを提供する場合について説明する。
【０２１０】
なお、第二の実施形態では、主に、第一の実施形態との相違点について説明し、第一の実施形態と同様の構成要素については、適宜、その説明を省略又は簡略化するものとする。
【０２１１】
＜処理の詳細＞
次に、本実施形態に係る印刷サービス提供システム１の処理の詳細について説明する。
【０２１２】
≪プリンタドライバ３０４のインストール≫
以降では、ユーザが端末装置３０にプリンタドライバ３０４をインストールする処理について、図１８を参照しながら説明する。図１８は、本実施形態に係るプリンタドライバ３０４のインストール処理の一例を示すシーケンス図である。なお、図１８のステップＳ１０１〜ステップＳ１１２、ステップＳ１１４〜ステップＳ１１５、ステップＳ１１８、及びステップＳ１２０〜ステップＳ１２１の処理は、図８と同様であるため、その説明を省略する。
【０２１３】
ステップＳ１１２に続いて、外部サービスシステム４０のＷｅｂ処理部４０１は、インストールパッケージの取得要求を受信すると、プリンタアイコン名と、フック設定とを当該インストールパッケージの取得要求に含めた上で、クラウド印刷システム１０に送信する（ステップＳ５０１）。このように、本実施形態では、外部サービスシステム４０は、禁則設定を指定しないものとする。
【０２１４】
ステップＳ１１５に続いて、クラウド印刷システム１０のドライバ提供部１０２は、アカウント管理部１０１からユーザＩＤが返信されると、ＩＰＰ  ＵＲＬの取得要求をＩＰＰ管理部１０３に送信する（ステップＳ５０２）。当該ＩＰＰ  ＵＲＬの取得要求には、ユーザＩＤと、フック設定とが含まれる。
【０２１５】
クラウド印刷システム１０のＩＰＰ管理部１０３は、ＩＰＰ  ＵＲＬの取得要求を受信すると、ＩＰＰ接続情報１１１を作成して、ＩＰＰ接続情報記憶部１１０に保存する（ステップＳ５０３）。すなわち、ＩＰＰ管理部１０３は、ＩＰＰ接続情報１１１を識別するＩＰＰ接続ＩＤを作成した上で、当該ＩＰＰ接続ＩＤと、ＩＰＰ  ＵＲＬの取得要求に含まれるユーザＩＤと、フック設定とが設定されたＩＰＰ接続情報１１１を作成する。なお、これらＩＰＰ接続ＩＤ、ユーザＩＤ、及びフック設定は、それぞれＩＰＰ接続ＩＤ１１１１、所有者ユーザＩＤ１１１２、及びフック設定１１１３に設定される。
【０２１６】
そして、ＩＰＰ管理部１０３は、作成したＩＰＰ接続情報１１１をＩＰＰ接続情報記憶部１１０に保存する。
【０２１７】
ステップＳ１１８に続いて、クラウド印刷システム１０のドライバ提供部１０２は、ＩＰＰ管理部１０３からＩＰＰ  ＵＲＬが返信されると、プリンタドライバ３０４のインストールパッケージ６００を作成する（ステップＳ５０４）。
【０２１８】
ここで、ドライバ提供部１０２により作成されるインストールパッケージ６００のカスタマイズ設定ファイル６０３には、図１９に示すように、禁則設定が含まれない。すなわち、本実施形態に係るカスタマイズ設定ファイル６０３には、プリンタアイコン名６０３１と、ポート種別６０３２と、ポート名６０３３とが含まれる一方で、禁則設定６０３４は含まれない。
【０２１９】
これにより、上記のステップＳ５０４で作成されたインストールパッケージ６００によりプリンタドライバ３０４がインストールされた場合、禁則設定６０３４が含まれないカスタマイズ設定ファイル６０３が反映されたプリンタアイコンが作成される。
【０２２０】
このため、本実施形態では、第一の実施形態と異なり、図１１のステップＳ２０３で表示される印刷設定画面においてユーザは、印刷設定画面上で変更可能な全ての印刷設定項目の設定値を変更することができる。同様に、本実施形態では、第一の実施形態と異なり、図１５のステップＳ４１５で表示される印刷設定画面においてユーザは、印刷設定画面上で変更可能な全ての印刷設定項目の設定値を変更することができる。
【０２２１】
以上のように、本実施形態に係る印刷サービス提供システム１では、第一の実施形態と異なり、外部サービスにより禁則設定が指定されない場合には、ユーザは、印刷設定画面上で変更可能な全ての印刷設定項目を変更することができる。このため、本実施形態に係る印刷サービス提供システム１によれば、例えば、外部サービスにより禁則設定が指定されない場合や外部サービスに応じた禁則設定が存在しない場合等には、より簡易に外部サービスと連携した印刷サービスを提供することができる。
【０２２２】
［第三の実施形態］
次に、第三の実施形態について説明する。第一の実施形態では、プリンタドライバ３０４のプリンタアイコンに対して、禁則設定と、外部サービスへのフック設定とを設定することで、印刷設定値の変更の禁止と、外部サービスへのフックとを実現する場合について説明した。
【０２２３】
第三の実施形態では、プリンタドライバ３０４を用いずに、ユーザが参加しているグループに対して、禁則設定と、外部サービスへのフック設定とを設定して、印刷設定値の変更の禁止と、外部サービスへのフックとを実現する場合について説明する。なお、グループとは、ユーザの集合のことである。グループには、例えば、ある会社に勤務するユーザのグループ、ある会社における特定の部に属するユーザのグループ、特定の課に属するユーザのグループ等が挙げられる。
【０２２４】
これにより、ユーザは、プリンタドライバ３０４を端末装置３０にインストールすることなく、ある特定のグループに属しているだけで、外部サービスと連携した印刷サービスを利用することができるようになる。
【０２２５】
なお、第三の実施形態では、主に、第一の実施形態との相違点について説明し、第一の実施形態と同様の構成要素については、適宜、その説明を省略又は簡略化するものとする。
【０２２６】
＜機能構成＞
まず、本実施形態に係る印刷サービス提供システム１の機能構成について、図２０を参照しながら説明する。図２０は、本実施形態に係る印刷サービス提供システム１の機能構成の一例を示す図である。
【０２２７】
図２０に示す端末装置３０は、第一の実施形態と異なり、印刷システム３０３と、プリンタドライバ３０４と、ＩＰＰポート３０５とを有していなくても良い。
【０２２８】
図２０に示すクラウド印刷システム１０は、第一の実施形態と異なり、変換部１０６と、グループ情報記憶部１４０と、フック情報記憶部１５０とを有する。また、図２０に示すクラウド印刷システム１０は、ドライバ提供部１０２と、ＩＰＰ管理部１０３と、ＩＰＰ接続情報記憶部１１０とを有していなくても良い。
【０２２９】
変換部１０６は、端末装置３０の印刷アプリケーション３０２の文書等を示す印刷対象データを、例えばＰＤＦ形式等の文書データに変換する。
【０２３０】
グループ情報記憶部１４０は、グループ情報１４１を記憶する。ここで、グループ情報１４１について、図２１を参照しながら説明する。図２１は、グループ情報１４１の一例を示す図である。
【０２３１】
図２１に示すように、グループ情報記憶部１４０には、１以上のグループ情報１４１が記憶されている。また、各グループ情報１４１は、グループ名と、グループＩＤと、ユーザＩＤとが関連付けられている。
【０２３２】
例えば、グループ名「グループ１」のグループ情報１４１には、グループＩＤ「ｇｒｏｕｐ＿１」と、ユーザＩＤ「ｕｓｒ＿１２３４５，ｕｓｒ＿６７８９０，ｕｓｒ＿０００００」とが関連付けられている。これは、グループ名が「グループ１」であるグループのグループＩＤは「ｇｒｏｕｐ＿１」であることを示している。また、当該グループには、ユーザＩＤ「ｕｓｒ＿１２３４５」のユーザと、ユーザＩＤ「ｕｓｒ＿６７８９０」のユーザと、ユーザＩＤ「ｕｓｒ＿０００００」のユーザとが含まれることを示している。
【０２３３】
このように、グループ情報１４１には、グループ名と、グループを識別するグループＩＤと、当該グループに含まれるユーザのユーザＩＤとが関連付けられている。
【０２３４】
フック情報記憶部１５０は、フック情報１５１を記憶する。ここで、フック情報１５１について、図２２を参照しながら説明する。図２２は、フック情報１５１の一例を示す図である。
【０２３５】
図２２に示すフック情報１５１には、フックＩＤ１５１１と、グループＩＤ１５１２と、フック設定１５１３と、禁則設定１５１４とが含まれる。
【０２３６】
フックＩＤ１５１１には、フック情報１５１を識別するフックＩＤが設定される。図２２に示すフック情報１５１のフックＩＤ１５１１には、フックＩＤ「ｈｏｏｋ＿１２３４５」が設定されている。
【０２３７】
グループＩＤ１５１２には、フック設定１５１３に設定されているフック設定を利用するグループのグループＩＤが設定される。図２２に示すフック情報１５１のグループＩＤ１５１２には、グループＩＤ「ｇｒｏｕｐ＿１」が設定されている。
【０２３８】
フック設定１５１３には、フック先の外部サービスを利用するためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬが設定される。図２２に示すフック情報１５１のフック設定１５１３には、文書データに対してＱＲコードを埋め込むためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬ「ｈｔｔｐｓ：／／ｘｘｘｘｘｘｘ．ｃｏｍ／ｐｒｉｎｔ／ｈｏｏｋ／ｅｍｂｅｄ＿ｑｒ」が設定されている。フック設定１５１３に設定されるＵＲＬは、当該外部サービスを提供する外部サービスシステム４０により指定される。
【０２３９】
禁則設定１５１４には、フック先の外部サービスを利用した場合において変更が禁止される印刷設定項目とその設定値（固定値）とが設定される。禁則設定１５１４に設定された印刷設定項目は、ユーザによる変更が禁止される。図２２に示すフック情報１５１の禁則設定１５１４には、複数の印刷設定項目及びその設定値「ｃｏｌｏｒ＝ｍｏｎｏｃｈｒｏｍｅ，ｄｕｐｌｅｘ＝ｎｏ，ｐｕｎｃｈ＝ｎｏ，ｓｔａｐｌｅ＝ｎｏ」が設定されている。この場合、ユーザによる印刷設定項目「カラー／モノクロ」、「両面／片面」、「パンチ」及び「ステープル」の変更が禁止される。また、印刷設定項目「カラー／モノクロ」の設定値は「モノクロ」、印刷設定項目「両面／片面」の設定値は「片面」、印刷設定項目「パンチ」の設定値は「しない」、及び印刷設定項目「ステープル」の設定値は「しない」にそれぞれ固定される。
【０２４０】
＜処理の詳細＞
次に、本実施形態に係る印刷サービス提供システム１の処理の詳細について説明する。
【０２４１】
≪フック登録≫
まず、管理者権限を有するユーザがグループを作成した上で、当該グループに参加しているユーザが利用するフック設定が設定されたフック情報１５１を登録する処理について、図２３を参照しながら説明する。２３は、本実施形態に係るフック登録処理の一例を示すシーケンス図である。なお、図２３のステップＳ１０１〜ステップＳ１１０の処理は、図８と同様であるため、その説明を省略する。
【０２４２】
まず、ユーザは、グループ名を指定した上で、グループの作成操作を行う（ステップＳ６０１）。ユーザは、例えば、Ｗｅｂブラウザ３０１により表示される所定の画面において、所望のグループ名を指定した上で、新規グループを作成するためのボタン等を押下することで、グループの作成操作を行うことができる。
【０２４３】
端末装置３０のＷｅｂブラウザ３０１は、グループの作成操作を受け付けると、グループの作成要求を外部サービスシステム４０に送信する（ステップＳ６０２）。当該グループの作成要求には、ユーザにより指定されたグループ名と、アクセストークンとが含まれる。
【０２４４】
外部サービスシステム４０のＷｅｂ処理部４０１は、端末装置３０から受信したグループの作成要求をクラウド印刷システム１０に送信する（ステップＳ６０３）。
【０２４５】
クラウド印刷システム１０のアカウント管理部１０１は、グループの作成要求を受信すると、当該作成要求に含まれるアクセストークンの正当性を検証する（ステップＳ６０４）。アクセストークンが正当なものであると検証された場合、クラウド印刷システム１０のアカウント管理部１０１は、グループ情報１４１を作成して、グループ情報記憶部１４０に保存する（ステップＳ６０５）。このとき、アカウント管理部１０１は、グループＩＤを作成した上で、当該作成要求に含まれるグループ名と、作成したグループＩＤとを関連付けることで、グループ情報１４１を作成する。
【０２４６】
そして、アカウント管理部１０１は、作成したグループ情報１４１のグループＩＤを、外部サービスシステム４０を介して、端末装置３０に返信する。
【０２４７】
ユーザは、作成したグループに招待するユーザのユーザＩＤを指定した上で、ユーザ招待操作を行う（ステップＳ６０６）。ユーザは、Ｗｅｂブラウザ３０１により表示される所定の画面において、上記で作成したグループと、当該グループに招待する他のユーザのユーザＩＤとを指定した上で、他のユーザを招待するためのボタン等を押下することで、ユーザ招待操作を行うことができる。
【０２４８】
端末装置３０のＷｅｂブラウザ３０１は、ユーザ招待操作を受け付けると、ユーザの招待要求を外部サービスシステム４０に送信する（ステップＳ６０７）。当該招待要求には、グループに招待する他のユーザのユーザＩＤと、当該グループのグループＩＤと、アクセストークンとが含まれる。
【０２４９】
外部サービスシステム４０のＷｅｂ処理部４０１は、端末装置３０から受信したユーザの招待要求をクラウド印刷システム１０に送信する（ステップＳ６０８）。
【０２５０】
クラウド印刷システム１０のアカウント管理部１０１は、ユーザの招待要求を受信すると、当該招待要求に含まれるアクセストークンの正当性を検証する（ステップＳ６０９）。アクセストークンが正当なものであると検証された場合、クラウド印刷システム１０のアカウント管理部１０１は、当該招待要求に含まれるユーザＩＤのユーザに対して招待メールを送信する（ステップＳ６１０）。
【０２５１】
招待メールを受信したユーザは、例えば、当該招待メール内のリンクを押下することで、招待を受けたグループに参加することができる。ユーザがグループに参加した場合、アカウント管理部１０１は、当該グループに対応するグループ情報１４１に対して、新たに参加したユーザのユーザＩＤを追加する。これにより、グループに参加しているユーザが管理される。
【０２５２】
ユーザは、グループに対してフックを設定するためのフック登録操作を行う（ステップＳ６１１）。ユーザは、Ｗｅｂブラウザ３０１により表示される所定の画面において、上記で作成したグループを指定した上で、フックを登録するためのボタン等を押下することで、フック登録操作を行うことができる。なお、ユーザは、例えば、外部サービスシステム４０が複数の外部サービスを提供している場合等には、フックさせる外部サービスを選択した上で、フック登録操作を行っても良い。
【０２５３】
端末装置３０のＷｅｂブラウザ３０１は、フック登録操作を受け付けると、フック登録要求を外部サービスシステム４０に送信する（ステップＳ６１２）。当該フック登録要求には、上記で作成したグループのグループＩＤと、アクセストークンとが含まれる。
【０２５４】
外部サービスシステム４０のＷｅｂ処理部４０１は、フック登録要求を受信すると、フック設定と、禁則設定とを当該フック登録要求に含めた上で、クラウド印刷システム１０に送信する（ステップＳ６１３）。
【０２５５】
フック設定は、クラウド印刷システム１０が外部サービスシステム４０にフックさせるためのＵＲＬ（すなわち、外部サービスシステム４０が提供する外部サービスを利用するためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬ）である。禁則設定は、当該外部サービスを利用した場合において変更が禁止される印刷設定である。
【０２５６】
クラウド印刷システム１０のフック管理部１０５は、フック登録要求を受信すると、アクセストークンの検証要求をアカウント管理部１０１に送信する（ステップＳ６１４）。当該検証要求には、アクセストークンが含まれる。
【０２５７】
クラウド印刷システム１０のアカウント管理部１０１は、アクセストークンの検証要求を受信すると、当該検証要求に含まれるアクセストークンの正当性を検証する（ステップＳ６１５）。そして、アクセストークンが正当なものであると検証された場合、アカウント管理部１０１は、当該アクセストークンが正当なものであることを示す検証結果をフック管理部１０５に返信する。
【０２５８】
クラウド印刷システム１０のフック管理部１０５は、アクセストークンが正当なものであることを示す検証結果が返信されると、フック情報１５１を作成して、フック情報記憶部１５０に保存する（ステップＳ６１６）。すなわち、フック管理部１０５は、フック情報１５１を識別するフックＩＤを作成した上で、当該フックＩＤと、フック登録要求に含まれるグループＩＤと、フック設定と、禁則設定とが設定されたフック情報１５１を作成する。なお、これらフックＩＤ、グループＩＤ、フック設定、及び禁則設定は、それぞれフックＩＤ１５１１、グループＩＤ１５１２、フック設定１５１３、及び禁則設定１５１４に設定される。
【０２５９】
そして、フック管理部１０５は、作成したフック情報１５１をフック情報記憶部１５０に保存する。
【０２６０】
これにより、グループが作成されると共に、当該グループに参加しているユーザが利用可能なフック設定が含まれるフック情報１５１が登録される。
【０２６１】
≪印刷データの蓄積≫
次に、あるグループに参加しているユーザがＷｅｂブラウザ３０１又は印刷アプリケーション３０２から印刷を開始して、クラウド印刷システム１０に印刷データを蓄積する処理について、図２４を参照しながら説明する。図２４は、本実施形態に係る印刷データの蓄積処理の一例を示すシーケンス図である。なお、以降では、一例として、ユーザがＷｅｂブラウザ３０１から印刷を開始する場合について説明する。また、図２４のステップＳ１０１〜ステップＳ１１０の処理は、図８と同様であるため、その説明を省略する。更に、図２４のステップＳ３０６〜ステップＳ３１８の処理は、図１３と同様であるため、その説明を省略する。
【０２６２】
まず、ユーザは、Ｗｅｂブラウザ３０１が表示している文書やＷｅｂページ等の印刷対象データを印刷したい場合、印刷開始操作を行う（ステップＳ７０１）。ユーザは、Ｗｅｂブラウザ３０１により表示される所定の画面において、印刷開始ボタン等を押下することで、印刷開始操作を行うことができる。また、このとき、ユーザは、各印刷設定項目の設定値（印刷設定値）を指定することができる。
【０２６３】
端末装置３０のＷｅｂブラウザ３０１は、ユーザによる印刷開始操作を受け付けると、ジョブ登録要求を外部サービスシステム４０に送信する（ステップＳ７０２）。当該ジョブ登録要求には、印刷対象データと、印刷設定値と、アクセストークンとが含まれる。
【０２６４】
外部サービスシステム４０のＷｅｂ処理部４０１は、端末装置３０から受信したジョブ登録要求をクラウド印刷システム１０に送信する（ステップＳ７０３）。
【０２６５】
クラウド印刷システム１０のジョブ管理部１０４は、ジョブ登録要求を受信すると、アクセストークンの検証要求をアカウント管理部１０１に送信する（ステップＳ７０４）。当該検証要求には、アクセストークンが含まれる。
【０２６６】
クラウド印刷システム１０のアカウント管理部１０１は、アクセストークンの検証要求を受信すると、当該検証要求に含まれるアクセストークンの正当性を検証する（ステップＳ７０５）。そして、アクセストークンが正当なものであると検証された場合、アカウント管理部１０１は、当該アクセストークンに対応するユーザＩＤと、当該ユーザＩＤのユーザが参加しているグループを示すグループＩＤとを返信する。
【０２６７】
クラウド印刷システム１０のジョブ管理部１０４は、ユーザＩＤとグループＩＤとが返信されると、フック情報の取得要求をフック管理部１０５に送信する（ステップＳ７０６）。当該取得要求には、アカウント管理部１０１から返信されたグループＩＤが含まれる。
【０２６８】
クラウド印刷システム１０のフック管理部１０５は、フック情報の取得要求を受信すると、フック情報記憶部１５０からフック情報１５１を取得する（ステップＳ７０７）。すなわち、フック管理部１０５は、フック情報記憶部１５０に記憶されているフック情報１５１のうち、当該取得要求に含まれるグループＩＤがフックＩＤ１５１１に設定されているフック情報１５１を取得する。
【０２６９】
そして、フック管理部１０５は、フック情報記憶部１５０から取得したフック情報１５１をジョブ管理部１０４に返信する。
【０２７０】
クラウド印刷システム１０のジョブ管理部１０４は、フック情報１５１を受信すると、当該フック情報１５１の禁則設定１５１４に設定されている禁則設定を、端末装置３０から受信したジョブ登録要求に含まれる印刷設定値に適用する（ステップＳ７０８）。
【０２７１】
すなわち、例えば、フック情報１５１の禁則設定１５１４に設定されている禁則設定が「ｄｕｐｌｅｘ＝ｎｏ」であり、ジョブ登録要求に含まれる印刷設定値に「ｄｕｐｌｅｘ＝ｙｅｓ」が含まれていたものとする。この場合、ジョブ管理部１０４は、ジョブ登録要求に含まれる印刷設定値を「ｄｕｐｌｅｘ＝ｎｏ」と変更する。
【０２７２】
このように、ジョブ管理部１０４は、ジョブ登録要求に含まれる印刷設定値（すなわち、ユーザにより設定された印刷設定値）が禁則設定の固定値と異なる場合には、当該印刷設定値を、禁則設定の固定値に変更する。これにより、例えば、ユーザが、禁則設定の固定値と異なる値に印刷設定値を指定したような場合であっても、当該印刷設定値を、禁則設定の固定値に変更することができるようになる。
【０２７３】
次に、クラウド印刷システム１０のジョブ管理部１０４は、印刷対象データを文書データに変換するための変換要求を変換部１０６に送信する（ステップＳ７０９）。当該変換要求には、印刷対象データが含まれる。
【０２７４】
クラウド印刷システム１０の変換部１０６は、変換要求を受信すると、当該変換要求に含まれる印刷対象データを文書データに変換する（ステップＳ７１０）。そして、変換部１０６は、文書データをジョブ管理部１０４に返信する。
【０２７５】
クラウド印刷システム１０のジョブ管理部１０４は、文書データが返信されると、当該文書データをデータ記憶部１３０に保存する（ステップＳ７１１）。
【０２７６】
次に、クラウド印刷システム１０のジョブ管理部１０４は、ジョブ情報１２１を作成して、ジョブ情報記憶部１２０に保存する（ステップＳ７１２）。すなわち、ジョブ管理部１０４は、ジョブ情報１２１を識別するジョブＩＤを作成した上で、ユーザＩＤと、上記のステップＳ７１１で保存された文書データの保存先と、フック設定と、印刷設定値と、禁則設定とが設定されたジョブ情報１２１を作成する。
【０２７７】
なお、これらジョブＩＤ、ユーザＩＤ、及び文書データの保存先は、それぞれジョブＩＤ１２１１、所有者ユーザＩＤ１２１、及び文書データロケーション１２１３に設定される。同様に、フック設定、印刷設定、及び禁則設定は、それぞれフック設定１２１５、印刷設定値１２１６、及び禁則設定１２１７に設定される。一方で、印刷データロケーション１２１４には、値が設定されない。
【０２７８】
そして、ジョブ管理部１０４は、作成したジョブ情報１２１をジョブ情報記憶部１２０に保存する。ジョブ情報１２１がジョブ情報記憶部１２０に保存されることで、当該ジョブ情報１２１により実行される印刷ジョブがクラウド印刷システム１０に登録される。
【０２７９】
以上のように、本実施形態に係る印刷サービス提供システム１では、ユーザが参加しているグループに対してフック情報１５１が作成及び保存される。これにより、ユーザは、自身が参加しているグループに応じた外部サービスと連携する印刷サービスを利用することができるようになる。
【０２８０】
また、本実施形態に係る印刷サービス提供システム１では、ユーザが参加しているグループに対してフック情報１５１が作成及び保存されるため、ユーザが利用する端末装置３０には、必ずしもプリンタドライバ３０４がインストールされている必要はない。このため、ユーザは、プリンタドライバ３０４がインストールされていない端末装置３０を用いて、外部サービスと連携した印刷サービスを利用することができるようになる。
【０２８１】
［第四の実施形態］
次に、第四の実施形態について説明する。例えば、外部のサービス提供者により提供される印刷サービス（外部印刷サービス）をユーザが既に利用している場合がある。そこで、第四の実施形態では、ユーザが既に利用している外部印刷サービスとも連携した印刷サービスを提供する場合について説明する。
【０２８２】
なお、第四の実施形態では、主に、第一の実施形態との相違点について説明し、第一の実施形態と同様の構成要素については、適宜、その説明を省略又は簡略化するものとする。
【０２８３】
＜全体構成＞
まず、本実施形態に係る印刷サービス提供システム１の全体構成について、図２５を参照しながら説明する。図２５は、本実施形態に係る印刷サービス提供システム１の全体構成の一例を示す図である。
【０２８４】
図２５に示す印刷サービス提供システム１は、更に、外部印刷システム５０を有する。外部印刷システム５０は、外部印刷サービスを提供するコンピュータシステムである。外部印刷システム５０は、ネットワークＮ１を介して、外部印刷サービスを提供する。ユーザは、外部印刷サービスにおける印刷ジョブの出力先のプリンタを外部印刷システム５０に登録することで、外部印刷サービスを利用することができる。本実施形態では、ユーザは、出力先のプリンタとしてクラウド印刷システム１０を登録する（すなわち、クラウド印刷システム１０を仮想的なプリンタ（仮想プリンタ）として登録する）ことで、外部印刷サービスとも連携した印刷サービスを利用することができる。以降では、外部印刷サービスにおける印刷ジョブを「外部印刷ジョブ」と表す。
【０２８５】
なお、外部印刷システム５０は、例えば、ユーザ環境Ｅ２に設置され、ネットワークＮ２を介して、外部印刷サービスを提供しても良い。すなわち、外部印刷システム５０は、ユーザがオンプレミス型で設置するコンピュータシステムであっても良い。
【０２８６】
＜機能構成＞
次に、本実施形態に係る印刷サービス提供システム１の機能構成について、図２６を参照しながら説明する。図２６は、本実施形態に係る印刷サービス提供システム１の機能構成の一例を示す図である。
【０２８７】
図２６に示す端末装置３０は、第一の実施形態と異なり、印刷システム３０３と、プリンタドライバ３０４と、ＩＰＰポート３０５とを有していなくても良い。なお、本実施形態に係る端末装置３０には、例えば、外部印刷システム５０により配布等され、外部印刷サービスを利用するためのプリンタドライバがインストールされていても良い。
【０２８８】
図２６に示すクラウド印刷システム１０は、第一の実施形態と異なり、外部印刷システム管理部１０７と、外部印刷システム接続情報記憶部１６０とを有する。また、図２６に示すクラウド印刷システム１０は、ドライバ提供部１０２と、ＩＰＰ管理部１０３と、ＩＰＰ接続情報記憶部１１０を有していなくても良い。
【０２８９】
外部印刷システム管理部１０７は、外部印刷システム接続情報記憶部１６０に記憶されている外部印刷システム接続情報１６１を管理する。外部印刷システム管理部１０７は、外部サービスシステム４０からの要求に応じて、外部印刷システム接続ＩＤを作成した上で、当該外部印刷システム接続ＩＤが含まれる外部印刷システム接続情報１６１を作成する。
【０２９０】
外部印刷システム接続情報記憶部１６０は、外部印刷システム接続情報１６１を記憶する。ここで、外部印刷システム接続情報１６１について、図２７を参照しながら説明する。図２７は、外部印刷システム接続情報１６１の一例を示す図である。
【０２９１】
図２７を示す外部印刷システム接続情報１６１には、外部印刷システム接続ＩＤ１６１１と、所有者ユーザＩＤ１６１２と、フック設定１６１３と、禁則設定１６１４とが含まれる。
【０２９２】
外部印刷システム接続ＩＤ１６１１には、外部印刷システム接続情報１６１を識別する外部印刷システム接続ＩＤが設定される。図２７に示す外部印刷システム接続情報１６１の外部印刷システム接続ＩＤ１６１１には、外部印刷システム接続ＩＤ「ｅｘｐｒｉｎｔ＿１２３４５」が設定されている。
【０２９３】
所有者ユーザＩＤ１６１２は、外部印刷システム接続情報１６１の所有者（すなわち、外部印刷システム５０に対して仮想プリンタを登録したユーザ）を識別するユーザＩＤが設定される。
【０２９４】
フック設定１６１３は、フック先の外部サービスを利用するためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬが設定される。図２７に示す外部印刷システム接続情報１６１のフック設定１６１３には、文書データに対してＱＲコードを埋め込むためのＷｅｂＡＰＩのエンドポイントを示すＵＲＬ「ｈｔｔｐｓ：／／ｘｘｘｘｘｘｘ．ｃｏｍ／ｐｒｉｎｔ／ｈｏｏｋ／ｅｍｂｅｄ＿ｑｒ」が設定されている。フック設定１５１３に設定されるＵＲＬは、当該外部サービスを提供する外部サービスシステム４０により指定される。
【０２９５】
禁則設定１６１４は、フック先の外部サービスを利用した場合において変更が禁止される印刷設定項目とその設定値（固定値）とが設定される。禁則設定１５１４に設定された印刷設定項目は、ユーザによる変更が禁止される。図２７に示す外部印刷システム接続情報１６１の禁則設定１６１４には、複数の印刷設定項目及びその設定値「ｃｏｌｏｒ＝ｍｏｎｏｃｈｒｏｍｅ，ｄｕｐｌｅｘ＝ｎｏ，ｐｕｎｃｈ＝ｎｏ，ｓｔａｐｌｅ＝ｎｏ」が設定されている。
【０２９６】
＜処理の詳細＞
次に、本実施形態に係る印刷サービス提供システム１の処理の詳細について説明する。
【０２９７】
≪外部印刷システム接続情報１６１の登録≫
まず、ユーザが外部印刷システム５０に対して仮想プリンタを登録して、外部印刷システム接続情報１６１をクラウド印刷システム１０に登録する処理について、図２８を参照しながら説明する。図２８は、本実施形態に係る外部印刷システム接続情報１６１の登録処理の一例を示すシーケンス図である。以降のステップＳ８０１〜ステップＳ８１５の処理は、既知のＯＡｕｔｈによる認証及び認可に関する処理であるため、適宜、その説明を簡略化する。なお、ステップＳ８０１〜ステップＳ８１５の処理は、ＯＡｕｔｈに限られず、例えば、ＯｐｅｎＩＤ等が用いられても良い。
【０２９８】
まず、ユーザは、端末装置３０のＷｅｂブラウザ３０１を用いて、認可開始操作を行う（ステップＳ８０１）。ユーザは、Ｗｅｂブラウザ３０１を用いて、例えば、外部サービスシステム４０が提供するＷｅｂページにおいて、クラウド印刷システム１０への認可要求を行うためのリンクを押下することで、認可開始操作を行うことができる。
【０２９９】
端末装置３０のＷｅｂブラウザ３０１は、ユーザによる認可開始操作を受け付けると、認可開始要求を外部サービスシステム４０に送信する（ステップＳ８０２）。外部サービスシステム４０のＷｅｂ処理部４０１は、当該認可開始要求を受信すると、クラウド印刷システム１０の認証画面へのリダイレクト要求を端末装置３０に送信する（ステップＳ８０３）。
【０３００】
端末装置３０のＷｅｂブラウザ３０１は、クラウド印刷システム１０の認証画面へのリダイレクト要求を受信すると、当該認証画面の表示要求をクラウド印刷システム１０に送信する（ステップＳ８０４）。すなわち、Ｗｅｂブラウザ３０１は、ＨＴＴＰリクエストをリダイレクト先ＵＲＬに送信する。
【０３０１】
そして、クラウド印刷システム１０は、当該認証画面の表示要求を受信すると、当該認証画面を端末装置３０に返信する。これにより、端末装置３０のＷｅｂブラウザ３０１上には、例えば図９に示す認証画面Ｇ１００が表示される。
【０３０２】
ユーザは、端末装置３０のＷｅｂブラウザ３０１を用いて、クラウド印刷システム１０の認証情報の入力操作を行う（ステップＳ８０５）。端末装置３０のＷｅｂブラウザ３０１は、クラウド印刷システム１０の認証情報の入力操作を受け付けると、認証要求をクラウド印刷システム１０に送信する（ステップＳ８０６）。当該認証要求には、ユーザにより入力された認証情報（すなわち、クラウド印刷システム１０のユーザＩＤ及びパスワードの組）が含まれる。
【０３０３】
クラウド印刷システム１０のアカウント管理部１０１は、端末装置３０から認証要求を受信すると、当該認証要求に含まれる認証情報を認証する（ステップＳ８０７）。以降では、アカウント管理部１０１による認証が成功したものとして説明を続ける。
【０３０４】
クラウド印刷システム１０のアカウント管理部１０１は、認証が成功すると、外部印刷システム５０の認証画面へのリダイレクト要求を端末装置３０に送信する（ステップＳ８０８）。当該リダイレクト要求には、クラウド印刷システム１０の認可コードが含まれる。
【０３０５】
端末装置３０のＷｅｂブラウザ３０１は、外部印刷システム５０の認証画面へのリダイレクト要求を受信すると、当該認証画面の表示要求を外部印刷システム５０に送信する（ステップＳ８０９）。すなわち、Ｗｅｂブラウザ３０１は、ＨＴＴＰリクエストをリダイレクト先ＵＲＬに送信する。
【０３０６】
そして、外部印刷システム５０は、認証画面の表示要求を受信すると、当該認証画面を端末装置３０に返信する。これにより、端末装置３０のＷｅｂブラウザ３０１上には、外部印刷システム５０の認証情報を入力するための認証画面が表示される。
【０３０７】
ユーザは、端末装置３０のＷｅｂブラウザ３０１を用いて、外部印刷システム５０の認証情報の入力操作を行う（ステップＳ８１０）。端末装置３０のＷｅｂブラウザ３０１は、外部印刷システム５０の認証情報の入力操作を受け付けると、認証要求を外部印刷システム５０に送信する（ステップＳ８１１）。当該認証要求には、ユーザにより入力された認証情報（すなわち、外部印刷システム５０のユーザＩＤ及びパスワードの組等）が含まれる。
【０３０８】
そして、外部印刷システム５０は、端末装置３０から受信した認証要求に対する認証に成功すると、クラウド印刷システム１０が外部印刷システム５０のアクセストークンを取得するためのＵＲＬへのリダイレクト要求を端末装置３０に返信する。当該リダイレクト要求には、外部印刷システム５０の認可コードが含まれる。
【０３０９】
端末装置３０のＷｅｂブラウザ３０１は、当該リダイレクト要求を受信すると、アクセストークンの取得指示をクラウド印刷システム１０に送信する（ステップＳ８１２）。当該取得指示には、外部印刷システム５０の認可コードが含まれる。
【０３１０】
クラウド印刷システム１０のアカウント管理部１０１は、当該アクセストークンの指示要求を受信すると、アクセストークンの取得要求を外部印刷システム５０に送信する（ステップＳ８１３）。当該取得要求には、外部印刷システム５０の認可コードが含まれる。
【０３１１】
そして、外部印刷システム５０は、アクセストークンの取得要求に含まれる認可コードが正当である場合、外部印刷システム５０のアクセストークンをクラウド印刷システム１０に返信する。その後、クラウド印刷システム１０のアカウント管理部１０１は、外部印刷システム５０のアクセストークンを所定の記憶領域に保存した上で、プリンタ登録画面へのリダイレクト要求を端末装置３０に返信する。
【０３１２】
端末装置３０のＷｅｂブラウザ３０１は、プリンタ登録画面へのリダイレクト要求を受信すると、プリンタ登録画面の表示要求を外部サービスシステム４０に送信する（ステップＳ８１４）。当該表示要求には、クラウド印刷システム１０の認可コードが含まれる。
【０３１３】
外部サービスシステム４０のＷｅｂ処理部４０１は、プリンタ登録画面の表示要求を受信すると、アクセストークンの取得要求をクラウド印刷システム１０に送信する（ステップＳ８１５）。
【０３１４】
そして、クラウド印刷システム１０のアカウント管理部１０１は、アクセストークンの取得要求に含まれる認可コードが正当である場合、クラウド印刷システム１０のアクセストークンを外部サービスシステム４０に返信する。その後、外部サービスシステム４０のＷｅｂ処理部４０１は、プリンタ登録画面と、クラウド印刷システム１０から返信されたアクセストークンとを端末装置３０に返信する。これにより、端末装置３０のＷｅｂブラウザ３０１上には、例えば図２９に示すプリンタ登録画面Ｇ４００が表示される。
【０３１５】
図２９に示すプリンタ登録画面Ｇ４００には、外部サービスと連携した印刷サービスを実現する仮想プリンタを外部印刷システム５０に登録するための「ドキュメントを加工するプリンタ」登録ボタンＧ４０１が含まれる。なお、図２９に示すプリンタ登録画面Ｇ４００には、外部サービスと連携しない印刷サービスを実現する仮想プリンタを外部印刷システム５０に登録するための「通常のプリンタ」登録ボタンも含まれる。
【０３１６】
ユーザは、「ドキュメントを加工するプリンタ」登録ボタンＧ４０１を押下することで、フックを利用するプリンタの登録操作を行うことができる。
【０３１７】
ユーザは、端末装置３０のＷｅｂブラウザ３０１を用いて、フックを利用するプリンタの登録操作を行う（ステップＳ８１６）。端末装置３０のＷｅｂブラウザ３０１は、フックを利用するプリンタの登録操作を受け付けると、プリンタ登録要求を外部サービスシステム４０に送信する（ステップＳ８１７）。当該プリンタ登録要求には、クラウド印刷システム１０のアクセストークンが含まれる。
【０３１８】
外部サービスシステム４０のＷｅｂ処理部４０１は、プリンタ登録要求を受信すると、プリンタアイコン名と、フック設定と、禁則設定とを当該プリンタ登録要求に含めた上で、クラウド印刷システム１０に送信する（ステップＳ８１８）。
【０３１９】
クラウド印刷システム１０の外部印刷システム管理部１０７は、プリンタ登録要求を受信すると、アクセストークンの検証要求をアカウント管理部１０１に送信する（ステップＳ８１９）。当該検証要求には、クラウド印刷システム１０のアクセストークンが含まれる。
【０３２０】
クラウド印刷システム１０のアカウント管理部１０１は、アクセストークンの検証要求を受信すると、当該検証要求に含まれるアクセストークンの正当性を検証する（ステップＳ８２０）。そして、アクセストークンが正当なものであると検証された場合、アカウント管理部１０１は、当該アクセストークンに対応するユーザＩＤを外部印刷システム管理部１０７に返信する。
【０３２１】
クラウド印刷システム１０の外部印刷システム管理部１０７は、アクセストークンが正当なものであることを示す検証結果が返信されると、外部印刷システム接続情報１６１を作成して、外部印刷システム接続情報記憶部１６０に保存する（ステップＳ８２１）。すなわち、外部印刷システム管理部１０７は、外部印刷システム接続情報１６１を識別する外部印刷システム接続ＩＤを作成した上で、当該外部印刷システム接続ＩＤと、ユーザＩＤと、フック設定と、禁則設定とが含まれる外部印刷システム接続情報１６１を作成する。なお、これら外部印刷システム接続ＩＤ、ユーザＩＤ、フック設定、及び禁則設定は、それぞれ外部印刷システム接続ＩＤ１６１１、所有者ユーザＩＤ１６１２、フック設定１６１３、及び禁則設定１６１４に設定される。
【０３２２】
そして、外部印刷システム管理部１０７は、作成した外部印刷システム接続情報１６１を外部印刷システム接続情報記憶部１６０に保存する。
【０３２３】
次に、クラウド印刷システム１０の外部印刷システム管理部１０７は、クラウド印刷システム接続ＵＲＬを作成する（ステップＳ８２２）。クラウド印刷システム接続ＵＲＬとは、上記のステップＳ８２１で保存した外部印刷システム接続情報１６１の外部印刷システム接続ＩＤを特定可能で、かつ、クラウド印刷システム１０に新規ジョブ通知を送信するためのＵＲＬである。また、新規ジョブ通知とは、外部印刷システム５０が印刷要求を受信して、当該印刷要求に対応する外部印刷ジョブが作成されたことを示す通知である。
【０３２４】
例えば、上記のステップＳ８２１で保存した外部印刷システム接続情報１６１の外部印刷システム接続ＩＤが「ｅｘｐｒｉｎｔ＿１２３４５」であるとする。この場合、外部印刷システム管理部１０７は、例えば、「ｈｔｔｐｓ：／／ｙｙｙｙｙｙｙ．ｃｏｍ／ｅｘｐｒｉｎｔ／ｌｉｎｋｓ／ｅｘｐｒｉｎｔ＿１２３４５／．ｐｒｉｎｔｅｒ」等のように、外部印刷システム接続ＩＤが含まれるＵＲＬをクラウド印刷システム接続ＵＲＬとすれば良い。
【０３２５】
次に、クラウド印刷システム１０の外部印刷システム管理部１０７は、プリンタ登録要求を外部印刷システム５０に送信する（ステップＳ８２３）。当該プリンタ登録要求には、外部印刷システム５０のアクセストークンと、クラウド印刷システム接続ＵＲＬとが含まれる。これにより、クラウド印刷システム接続ＵＲＬを新規ジョブ通知先としたプリンタ（すなわち、クラウド印刷システム１０を新規ジョブ通知先とした仮想プリンタ）が外部印刷システム５０に登録される。
【０３２６】
≪印刷データの蓄積（印刷開始から新規ジョブ通知まで）≫
次に、ユーザが印刷アプリケーション３０２から印刷を開始して、外部印刷システム５０に外部印刷ジョブを作成した上で、当該外部印刷ジョブが作成されたことをクラウド印刷システム１０に通知するまでの処理について、図３０を参照しながら説明する。図３０は、本実施形態に係る印刷データの蓄積処理（印刷開始から新規ジョブ通知まで）の一例を示すシーケンス図である。
【０３２７】
まず、ユーザは、外部印刷システム５０に対して印刷要求を送信する印刷アプリケーション３０２において、当該印刷アプリケーション３０２が表示している文書等の印刷対象データを印刷するための印刷開始操作を行う（ステップＳ９０１）。このとき、ユーザは、各印刷設定項目の設定値（印刷設定値）を指定することができる。
【０３２８】
なお、例えば、外部印刷システム５０が配布等しているプリンタドライバのプリンタアイコンを選択することで、ユーザは、任意の印刷アプリケーション３０２から印刷開始操作を行うことができる。
【０３２９】
端末装置３０の印刷アプリケーション３０２は、ユーザによる印刷開始操作を受け付けると、印刷要求を外部印刷システム５０に送信する（ステップＳ９０２）。当該印刷要求には、印刷対象データと、印刷設定値とが含まれる。
【０３３０】
外部印刷システム５０は、端末装置３０から印刷要求を受信すると、外部印刷ジョブを作成する（ステップＳ９０３）。すなわち、外部印刷システム５０は、印刷対象データを文書データに変換した上で、当該文書データと、印刷設定値とが含まれる外部印刷ジョブを作成する。
【０３３１】
次に、外部印刷システム５０は、新たな外部印刷ジョブが作成されたことを示す新規ジョブ通知をクラウド印刷システム１０に送信する（ステップＳ９０４）。このとき、外部印刷システム５０は、ユーザにより登録された仮想プリンタ（すなわち、クラウド印刷システム１０）を示すクラウド印刷システム接続ＵＲＬを送信先として新規ジョブ通知を送信する。
【０３３２】
これにより、ユーザは、外部印刷サービスを利用した印刷を行うことができる。このとき、クラウド印刷システム１０を仮想プリンタとして外部印刷システム５０に登録しておくことで、外部印刷システム５０が、新規ジョブ通知をクラウド印刷システム１０に送信するようにすることができる。
【０３３３】
≪印刷データの蓄積（新規ジョブ通知後から印刷データの保存まで）≫
次に、クラウド印刷システム１０が新規ジョブ通知を受信した後、印刷データを保存するまでの処理について、図３１を参照しながら説明する。図３１は、本実施形態に係る印刷データの蓄積処理（新規ジョブ通知後から印刷データの保存まで）の一例を示すシーケンス図である。
【０３３４】
クラウド印刷システム１０の外部印刷システム管理部１０７は、外部印刷システム５０から新規ジョブ通知を受信すると、ジョブ取得要求を外部印刷システム５０に送信する（ステップＳ１００１）。当該ジョブ取得要求には、新規ジョブ通知により通知された外部印刷ジョブを識別する情報（例えば、ジョブＩＤ等）が含まれる。
【０３３５】
外部印刷システム５０は、ジョブ取得要求を受信すると、当該ジョブ取得要求に係る外部印刷ジョブをクラウド印刷システム１０に送信する（ステップＳ１００２）。当該外部印刷ジョブには、文書データと、印刷設定値とが含まれる。
【０３３６】
クラウド印刷システム１０の外部印刷システム管理部１０７は、外部印刷ジョブを受信すると、新規ジョブ通知の送信先ＵＲＬ（すなわち、クラウド印刷システム接続ＵＲＬ）から外部印刷システム接続情報ＩＤを特定する（ステップＳ１００３）。
【０３３７】
例えば、当該新規ジョブ通知の送信先ＵＲＬが「ｈｔｔｐｓ：／／ｙｙｙｙｙｙｙ．ｃｏｍ／ｅｘｐｒｉｎｔ／ｌｉｎｋｓ／ｅｘｐｒｉｎｔ＿１２３４５／．ｐｒｉｎｔｅｒ」であったものとする。この場合、外部印刷システム管理部１０７は、外部印刷システム接続情報ＩＤ「ｅｘｐｒｉｎｔ＿１２３４５」を特定する。
【０３３８】
次に、クラウド印刷システム１０の外部印刷システム管理部１０７は、上記のステップＳ１００３で特定した外部印刷システム接続情報ＩＤに対応する外部印刷システム接続情報１６１を外部印刷システム接続情報記憶部１６０から取得する（ステップＳ１００４）。
【０３３９】
すなわち、例えば、ステップＳ１００３で特定した外部印刷システム接続情報ＩＤが「ｅｘｐｒｉｎｔ＿１２３４５」であるとする。この場合、外部印刷システム管理部１０７は、外部印刷システム接続ＩＤ１６１１に「ｅｘｐｒｉｎｔ＿１２３４５」が設定されている外部印刷システム接続情報１６１を外部印刷システム接続情報記憶部１６０から取得する。
【０３４０】
次に、クラウド印刷システム１０の外部印刷システム管理部１０７は、ジョブ登録要求をジョブ管理部１０４に送信する（ステップＳ１００５）。当該ジョブ登録要求には、上記のステップＳ１００４で取得した外部印刷システム接続情報１６１の所有者ユーザＩＤ１６１２に設定されているユーザＩＤと、フック設定１６１３に設定されているフック設定と、禁則設定１６１４に設定されている禁則設定とが含まれる。また、当該ジョブ登録要求には、外部印刷システム５０から取得した文書データと、印刷設定値とが含まれる。
【０３４１】
次に、クラウド印刷システム１０のジョブ管理部１０４は、ジョブ登録要求を受信すると、当該ジョブ登録要求に含まれる禁則設定を印刷設定値に適用する（ステップＳ１００６）。
【０３４２】
すなわち、例えば、ジョブ登録要求に含まれる禁則設定が「ｄｕｐｌｅｘ＝ｎｏ」であり、ジョブ登録要求に含まれる印刷設定値が「ｄｕｐｌｅｘ＝ｙｅｓ」であるものとする。この場合、ジョブ管理部１０４は、印刷設定値を「ｄｕｐｌｅｘ＝ｎｏ」と変更する。
【０３４３】
次に、クラウド印刷システム１０のジョブ管理部１０４は、当該ジョブ登録要求に含まれる文書データをデータ記憶部１３０に保存する（ステップＳ１００７）。
【０３４４】
次に、クラウド印刷システム１０のジョブ管理部１０４は、ジョブ情報１２１を作成して、ジョブ情報記憶部１２０に保存する（ステップＳ１００８）。すなわち、ジョブ管理部１０４は、ジョブ情報１２１を識別するジョブＩＤを作成した上で、ジョブ登録要求に含まれるユーザＩＤと、上記のステップＳ１００７で保存された文書データの保存先と、フック設定と、印刷設定値と、禁則設定とが設定されたジョブ情報１２１を作成する。
【０３４５】
そして、ジョブ管理部１０４は、作成したジョブ情報１２１をジョブ情報記憶部１２０に保存する。
【０３４６】
これにより、外部印刷システム５０から取得した文書データが外部サービスシステム４０により加工された上で、加工済み文書データを変換した印刷データが、クラウド印刷システム１０のデータ記憶部１３０に蓄積される。
【０３４７】
以上のように、本実施形態に係る印刷サービス提供システム１では、ユーザが既に利用している外部印刷サービスと更に連携した印刷サービスを提供することができる。これにより、ユーザが既に外部印刷サービスを利用している場合であっても、引き続き当該外部印刷サービスを利用しつつ、外部サービスと連携した印刷サービスを利用することができる。
【０３４８】
＜他の例＞
ここで、ＭＦＰ等の画像形成装置２０ではスキャン機能も備えている場合が多い。そこで、画像形成装置２０でスキャンジョブを実行する場合において、外部サービスと連携したスキャンサービスをユーザに提供する場合の例について、図３２を参照しながら説明する。図３２は、画像形成装置２０でスキャンジョブを実行する場合における処理の一例を示す図である。
【０３４９】
図３２（ａ）は、ユーザがスキャン設定画面を表示するまでの流れを示している。まず、ユーザは、画像形成装置２０でスキャン機能の利用を開始するためのスキャン選択操作を行う（Ｓ１−１）。画像形成装置２０は、ユーザによりスキャン選択操作が行われた場合、プリセット取得要求をクラウド印刷システム１０に送信する（Ｓ１−２）。
【０３５０】
ここで、プリセットとは、外部サービスシステム４０により指定されたフック設定、禁則設定、及び初期パラメータのことである。初期パラメータには、スキャンにおける読み取り解像度等の情報が含まれる。初期パラメータは、必ずしも外部サービスシステム４０が指定する必要はなく、画像形成装置２０に予め記憶されている初期パラメータが用いられても良い。
【０３５１】
クラウド印刷システム１０は、プリセット取得要求に応じて、プリセット一覧を画像形成装置２０に返信する（Ｓ１−３）。これにより、画像形成装置２０上には、プリセットの一覧が表示される。
【０３５２】
ユーザは、画像形成装置２０上に表示されたプリセットの一覧の中から所望のプリセットを選択する操作を行う（Ｓ１−４）。画像形成装置２０は、ユーザによりプリセットが選択されると、当該プリセットに含まれる禁則設定が反映されたスキャン設定画面を表示する（Ｓ１−５）。当該スキャン設定画面では、禁則設定で設定されているスキャン設定の設定項目をユーザが変更することができないようになっている。
【０３５３】
これにより、スキャン設定を行う場合においても、外部サービスシステム４０により指定された禁則設定に従って、ユーザが特定のスキャン設定項目を変更できないように制御することができる。このため、例えば、スキャンデータをメール送信する外部サービスがあり、当該外部サービスでは高解像度でのスキャンを禁止している場合には、ユーザが高解像度でスキャンすることを禁止することができる。
【０３５４】
図３２（ｂ）は、ユーザがプリセット選択及びスキャン設定を行った後に、スキャンを実行して、スキャンデータがフックされるまでの流れを示している。まず、ユーザは、画像形成装置２０でスキャン実行操作を行う（Ｓ２−１）。画像形成装置２０は、スキャン実行操作がなされると、クラウド印刷システム１０にスキャンジョブを登録する（Ｓ２−２）。スキャンジョブには、ユーザにより選択されたプリセットに含まれるフック設定と、ユーザにより指定されたスキャン設定値とが含まれる。
【０３５５】
次に、画像形成装置２０は、スキャンジョブをクラウド印刷システム１０に登録すると、スキャンジョブを実行する（Ｓ２−３）。これにより、画像形成装置２０で原稿が読み取られ、スキャンデータが作成される。
【０３５６】
次に、画像形成装置２０は、ジョブ実行結果をクラウド印刷システム１０に送信する（Ｓ２−４）。ジョブ実行結果には、スキャンデータが含まれる。
【０３５７】
クラウド印刷システム１０は、ジョブ実行結果を受信すると、登録されたスキャンジョブに含まれるフック設定に従って、外部サービスシステム４０にフックさせる（Ｓ２−５）。そして、スキャンデータが外部サービスシステム４０で加工され、フック処理後のスキャンデータがクラウド印刷システム１０に返信される（Ｓ２−６）。
【０３５８】
これにより、ユーザが画像形成装置２０で原稿をスキャンすることで作成したスキャンデータに対して、外部サービスシステム４０で所定の処理を行うことができるようになる。
【０３５９】
［第五の実施形態］
次に、第五の実施形態について説明する。外部印刷サービスによっては、仮想プリンタを登録する際に、印刷開始時（印刷アプリケーション３０２が表示している文書等の印刷対象データに対する印刷開始操作時）にユーザが変更可能な印刷設定を指定することができる場合がある。この場合、ユーザは、仮想プリンタの登録の際に指定された印刷設定のみを変更することができる。一方で、ユーザが画像形成装置２０等を用いてクラウド印刷システム１０に蓄積されているジョブ情報に基づく印刷を行う際にも印刷設定を変更することができる。
【０３６０】
そこで、第五の実施形態では、クラウド印刷システム１０に蓄積されているジョブ情報に基づく印刷を行う際に、仮想プリンタの登録の際に指定された印刷設定を考慮して、印刷設定の変更を行う場合について説明する。
【０３６１】
なお、第五の実施形態では、主に、第四の実施形態との相違点について説明し、第四の実施形態と同様の構成要素については、適宜、その説明を省略又は簡略化するものとする。
【０３６２】
＜処理の詳細＞
以降では、本実施形態に係る印刷サービス提供システム１の処理の詳細について説明する。
【０３６３】
≪外部印刷システム接続情報１６１の登録≫
まず、ユーザが外部印刷システム５０に対して仮想プリンタを登録して、外部印刷システム接続情報１６１をクラウド印刷システム１０に登録する処理について、図３３を参照しながら説明する。図３３は、本実施形態に係る外部印刷システム接続情報１６１の登録処理の一例を示すシーケンス図である。図３３のステップＳ８０１〜ステップＳ８２２の処理は、図２８と同様であるため、その説明を省略する。
【０３６４】
ステップＳ８２２に続いて、クラウド印刷システム１０の外部印刷システム管理部１０７は、プリンタ登録要求を外部印刷システム５０に送信する（ステップＳ１１０１）。本実施形態では、当該プリンタ登録要求には、外部印刷システム５０のアクセストークンと、クラウド印刷システム接続ＵＲＬと、設定可能パラメータ一覧とが含まれる。設定可能パラメータ一覧とは、印刷開始時にユーザが変更可能な印刷設定項目の一覧を示す情報である。設定可能パラメータ一覧は、外部印刷システム接続情報１６１に含まれる禁則設定１６１４から作成される。
【０３６５】
例えば、外部印刷サービスで設定可能な印刷設定項目が「部数」、「カラー／モノクロ」、及び「ステープル」であり、禁則設定１６１４に設定されている印刷設定項目及びその設定値が「ｓｔａｐｌｅ＝ｎｏ」であったとする。この場合、外部印刷システム管理部１０７により、印刷設定項目「部数」及び「カラー／モノクロ」が指定された設定可能パラメータ一覧が作成される。このように、外部印刷システム管理部１０７は、例えば、外部印刷サービスで設定可能な印刷設定項目のうち、禁則設定１６１４に設定されていない印刷設定項目を指定した設定可能パラメータ一覧を作成する。
【０３６６】
これにより、クラウド印刷システム接続ＵＲＬを新規ジョブ通知先とし、設定可能パラメータ一覧で指定された印刷設定項目を変更可能なプリンタ（仮想プリンタ）が外部印刷システム５０に登録される。
【０３６７】
≪印刷データの蓄積（印刷開始から新規ジョブ通知まで）≫
次に、ユーザが印刷アプリケーション３０２から印刷を開始して、外部印刷システム５０に外部印刷ジョブを作成した上で、当該外部印刷ジョブが作成されたことをクラウド印刷システム１０に通知するまでの処理について、図３４を参照しながら説明する。図３４は、本実施形態に係る印刷データの蓄積処理（印刷開始から新規ジョブ通知まで）の一例を示すシーケンス図である。図３４のステップＳ９０２〜ステップＳ９０４の処理は、図３０と同様であるため、その説明を省略する。
【０３６８】
まず、ユーザは、外部印刷システム５０に対して印刷要求を送信する印刷アプリケーション３０２において、当該印刷アプリケーション３０２が表示している文書等の印刷対象データを印刷するための印刷開始操作を行う（ステップＳ１２０１）。このとき、ユーザは、設定可能パラメータ一覧で指定された各印刷設定項目の設定値（印刷設定値）を指定することができる。言い換えれば、ユーザは、設定可能パラメータ一覧で指定されていない印刷設定項目（すなわち、禁則設定１６１４に設定されている印刷設定項目）の設定値を指定（変更）することはできない。このように、ユーザは、印刷開始操作時に、設定可能パラメータ一覧で指定されている印刷設定項目の設定値を指定（変更）することができる。
【０３６９】
≪印刷データの蓄積（新規ジョブ通知後から印刷データの保存まで）≫
次に、クラウド印刷システム１０が新規ジョブ通知を受信した後、印刷データを保存するまでの処理について、図３５を参照しながら説明する。図３５は、本実施形態に係る印刷データの蓄積処理（新規ジョブ通知後から印刷データの保存まで）の一例を示すシーケンス図である。図３５のステップＳ１００１〜ステップＳ１００４、ステップＳ１００７〜ステップＳ１００８、及びステップＳ３０６〜ステップＳ３１８の処理は、図３１と同様であるため、その説明を省略する。
【０３７０】
ステップＳ１００４に続いて、クラウド印刷システム１０の外部印刷システム管理部１０７は、ジョブ登録要求をジョブ管理部１０４に送信する（ステップＳ１３０１）。当該ジョブ登録要求には、第四の実施形態と異なり、禁則設定が含まれない。
【０３７１】
そして、図３５に示すように、本実施形態に係る印刷データの蓄積処理（新規ジョブ通知後から印刷データの保存まで）では、第四の実施形態と異なり、ステップＳ１００６の処理を実行しない。これは、ジョブ登録要求に含まれる印刷設定値は、設定可能パラメータ一覧で指定されている印刷設定項目に対する設定値であるため、禁則設定に反する印刷設定値は指定されないためである。
【０３７２】
≪印刷実行≫
次に、クラウド印刷システム１０に蓄積されている印刷データを画像形成装置２０で印刷する処理について、図３６を参照しながら説明する。図３６は、本実施形態に係る印刷実行処理の一例を示すシーケンス図である。図３６のステップＳ４０１〜ステップＳ４１４及びステップＳ４１６〜ステップＳ４２４の処理は、図１５と同様であるため、その説明を省略する。
【０３７３】
ステップＳ４１４に続いて、画像形成装置２０のＵＩ制御部２０１は、印刷設定画面の表示操作を受け付けて、設定可能パラメータ一覧の取得要求をジョブ取得部２０２に送信する（ステップＳ１４０１）。当該取得要求には、例えば、ユーザにより選択された印刷ジョブに対応するジョブ情報１２１のジョブＩＤ等が含まれる。
【０３７４】
画像形成装置２０のジョブ取得部２０２は、設定可能パラメータ一覧の取得要求を受信すると、設定可能パラメータ一覧を作成する（ステップＳ１４０２）。そして、ジョブ取得部２０２は、作成した設定可能パラメータ一覧をＵＩ制御部２０１に返信する。
【０３７５】
このとき、ジョブ取得部２０２は、ユーザにより選択された印刷ジョブに対応するジョブ情報１２１の禁則設定１２１７から設定可能パラメータ一覧を作成する。
【０３７６】
例えば、外部印刷サービスで設定可能な印刷設定項目が「部数」、「カラー／モノクロ」、及び「ステープル」であるものとする。また、当該ジョブ情報１２１の禁則設定１２１７には、「ｃｏｐｉｅｓ：｛ｈｉｄｄｅｎ：ｆａｌｓｅ｝」と、「ｃｏｌｏｒ：｛ｖａｌｕｅ：ｃｏｌｏｒ，ｈｉｄｄｅｎ：ｔｒｕｅ｝」と、「ｓｔａｐｌｅ：｛ｖａｌｕｅ：ｎｏ，ｈｉｄｄｅｎ：ｔｒｕｅ｝」とが設定されているものとする。これは、印刷設定項目「カラー／モノクロ」及び「ステープル」は設定値の変更が禁止されていることを示している。この場合、ジョブ取得部２０２は、印刷設定項目「部数」が指定された設定可能パラメータ一覧を作成する。
【０３７７】
このように、ジョブ取得部２０２は、例えば、外部印刷サービスで設定可能な印刷設定項目のうち、禁則設定１２１７に設定されていない印刷設定項目を指定した設定可能パラメータ一覧を作成する。なお、例えば、設定値の変更により外部印刷システム５０で加工済み文書データを印刷データに再変換する必要がある印刷設定項目については、設定可能パラメータ一覧に指定されないようにしても良い。設定値の変更により加工済み文書データを印刷データに再変換する必要がある印刷設定項目としては、例えば、「カラー／モノクロ」等が挙げられる。ただし、例えば、クラウド印刷システム１０でも当該変換を行う機能部（例えば、変換部１０６）を有している場合には、設定値の変更によって加工済み文書データの再変換が必要となる印刷設定項目であっても設定可能パラメータ一覧に指定されても良い。
【０３７８】
画像形成装置２０のＵＩ制御部２０１は、ジョブ取得部２０２から返信された設定可能パラメータ一覧に基づいて、印刷設定画面を表示する（ステップＳ１４０３）。このとき、ＵＩ制御部２０１は、設定可能パラメータ一覧に指定されている印刷設定項目の設定値が変更可能な印刷設定画面を表示する。
【０３７９】
例えば、印刷設定項目「部数」が指定された設定可能パラメータ一覧がジョブ取得部２０２から返信された場合、ＵＩ制御部２０１は、図３７（ａ）に示す印刷設定画面Ｇ３３０を表示する。図３７（ａ）に示す印刷設定画面Ｇ３３０では、ユーザが設定値を変更することが可能な印刷設定項目Ｇ３３１として、印刷設定項目「部数」が表示されている。
【０３８０】
同様に、例えば、印刷設定項目「部数」及び「ステープル」が指定された設定可能パラメータ一覧がジョブ取得部２０２から返信された場合、ＵＩ制御部２０１は、図３７（ｂ）に示す印刷設定画面Ｇ３４０を表示する。図３７（ｂ）に示す印刷設定画面Ｇ３４０では、ユーザが設定値を変更することが可能な印刷設定項目Ｇ３４１として、印刷設定項目「部数」及び「ステープル」が表示されている。
【０３８１】
同様に、例えば、印刷設定項目「部数」、「カラー／モノクロ」、及び「ステープル」が指定された設定可能パラメータ一覧がジョブ取得部２０２から返信された場合、ＵＩ制御部２０１は、図３７（ｃ）に示す印刷設定画面Ｇ３５０を表示する。図３７（ｃ）に示す印刷設定画面Ｇ３５０では、ユーザが設定値を変更することが可能な印刷設定項目Ｇ３５１として、印刷設定項目「部数」、「カラー／モノクロ」、及び「ステープル」が表示されている。
【０３８２】
ここで、ユーザが印刷設定の変更操作を行った場合（ステップＳ１４０４）、画像形成装置２０のＵＩ制御部２０１は、当該変更操作を受け付けて、印刷設定の変更要求をジョブ取得部２０２に送信する（ステップＳ１４０５）。当該変更要求には、例えば、ユーザにより変更操作が行われた印刷設定項目と、変更後の設定値とが含まれる。
【０３８３】
画像形成装置２０のジョブ取得部２０２は、印刷設定の変更要求を受信すると、ジョブ情報の更新要求をクラウド印刷システム１０に送信する（ステップＳ１４０６）。当該更新要求には、例えば、ユーザにより選択されたジョブ情報１２１のジョブＩＤと、ユーザにより変更操作が行われた印刷設定項目と、変更後の設定値とが含まれる。
【０３８４】
クラウド印刷システム１０のジョブ管理部１０４は、ジョブ情報の更新要求を受信すると、当該更新要求に対応するジョブ情報１２１の印刷設定値１２１６を、ユーザにより変更された設定値に更新する（ステップＳ１４０７）。そして、ジョブ管理部１０４は、更新後のジョブ情報１２１を画像形成装置２０に返信する。
【０３８５】
このように、画像形成装置２０のＵＩ制御部２０１は、外部印刷サービスが設定可能な印刷設定項目のうち、ユーザにより選択された印刷ジョブに対応するジョブ情報１２１の禁則設定１２１７に設定されている印刷設定項目が表示されない印刷設定画面を表示する。これにより、外部印刷サービスで設定することができない印刷設定項目と、禁則設定１２１７に設定されている印刷設定項目との値がユーザにより変更されてしまう事態を防止することができる。
【０３８６】
なお、図３７に示す印刷設定画面Ｇ３３０〜Ｇ３５０では、ユーザが変更することができない印刷設定項目が非表示となっている例を示したが、例えば、ユーザが変更することができない印刷設定項目がグレーアウトされていても良い。すなわち、ユーザが変更することができない印刷設定項目は、ユーザによる変更が禁止される表示態様となっていれば良い。
【０３８７】
以上、本発明の実施形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形や変更、各実施形態の組み合わせ等が可能である。
【符号の説明】
【０３８８】
１        印刷サービス提供システム
１０      クラウド印刷システム
２０      画像形成装置
３０      端末装置
４０      外部サービスシステム
１０１    アカウント管理部
１０２    ドライバ提供部
１０３    ＩＰＰ管理部
１０４    ジョブ管理部
１０５    フック管理部
１１０    ＩＰＰ接続情報記憶部
１２０    ジョブ情報記憶部
１３０    データ記憶部
２０１    ＵＩ制御部
２０２    ジョブ取得部
２０３    印刷制御部
３０１    Ｗｅｂブラウザ
３０２    印刷アプリケーション
３０３    印刷システム
３０４    プリンタドライバ
３０５    ＩＰＰポート
３１１    ＵＩ制御部
３１２    変換部
４０１    Ｗｅｂ処理部
４０２    サービス処理部
【先行技術文献】
【特許文献】
【０３８９】
【特許文献１】特開２０１３−７５３６５号公報
【図１】
2018196990.tif 000003
【図２】
2018196990.tif 000004
【図３】
2018196990.tif 000005
【図４】
2018196990.tif 000006
【図５】
2018196990.tif 000007
【図６】
2018196990.tif 000008
【図７】
2018196990.tif 000009
【図８】
2018196990.tif 000010
【図９】
2018196990.tif 000011
【図１０】
2018196990.tif 000012
【図１１】
2018196990.tif 000013
【図１２】
2018196990.tif 000014
【図１３】
2018196990.tif 000015
【図１４】
2018196990.tif 000016
【図１５】
2018196990.tif 000017
【図１６】
2018196990.tif 000018
【図１７】
2018196990.tif 000019
【図１８】
2018196990.tif 000020
【図１９】
2018196990.tif 000021
【図２０】
2018196990.tif 000022
【図２１】
2018196990.tif 000023
【図２２】
2018196990.tif 000024
【図２３】
2018196990.tif 000025
【図２４】
2018196990.tif 000026
【図２５】
2018196990.tif 000027
【図２６】
2018196990.tif 000028
【図２７】
2018196990.tif 000029
【図２８】
2018196990.tif 000030
【図２９】
2018196990.tif 000031
【図３０】
2018196990.tif 000032
【図３１】
2018196990.tif 000033
【図３２】
2018196990.tif 000034
【図３３】
2018196990.tif 000035
【図３４】
2018196990.tif 000036
【図３５】
2018196990.tif 000037
【図３６】
2018196990.tif 000038
【図３７】
2018196990.tif 000039