(57)【特許請求の範囲】
【請求項１】
クライアント装置、印刷サーバ、印刷中継サーバ、画像形成装置から構成されるコンテンツ印刷システムで実行される印刷処理方法であって、
前記クライアント装置の表示手段は、Ｗｅｂアプリケーションサーバが有するＷｅｂアプリケーションサービスを利用しコンテンツを編集するための画面を表示し、
前記クライアント装置の指示手段は、前記画面の画面上で編集しているコンテンツに対応する印刷データを留め置く指示を前記印刷中継サーバへ指示し、前記コンテンツを印刷する指示を前記印刷サーバへ指示し、
前記印刷サーバの変換手段は、前記コンテンツを印刷する指示を前記指示手段から受けたことに応じて前記コンテンツを印刷データへ変換し、
前記印刷中継サーバの留め置き手段は、前記印刷データを留め置く指示を前記指示手段から受けたことに応じて前記変換手段により変換された印刷データを前記印刷サーバから受信し、受信した印刷データを留め置き、
前記画像形成装置の印刷手段は、ユーザから前記印刷データの印刷指示を受けたことに応じて前記留め置き手段により留め置かれた印刷データを受信し、受信した印刷データを基に印刷を行うことを特徴とする印刷処理方法。
【請求項２】
Ｗｅｂアプリケーションサーバが有するＷｅｂアプリケーションサービスを利用しコンテンツを編集するための画面を表示するクライアント装置から、前記画面の画面上で編集しているコンテンツに対応する印刷データを留め置く指示を受け付ける受付手段と、
前記コンテンツを基に変換された印刷データを画像形成装置で印刷する際に、前記受付手段により印刷データを留め置く指示を受け付けた場合は、前記コンテンツを基に印刷データ変換を行った印刷サーバから前記印刷データを受信し、受信した印刷データを留め置き印刷データとして保存手段に保存させ、
前記受付手段により印刷データを留め置く指示を受け付けなかった場合は、前記印刷データを前記印刷サーバから受信し前記印刷データを留め置かずに前記画像形成装置へ送信する、または前記印刷サーバの保存手段に保存された前記印刷データの保存場所に関する情報を前記印刷サーバから受信し、受信した前記保存場所に関する情報を前記画像形成装置へ送信する中継仮想プリンタと、を有する印刷中継サーバ。
【請求項３】
前記印刷データを留め置く指示を行うことで前記クライアントにおいてスクリプトが実行され、実行されることで送信される前記コンテンツを識別するためのコンテンツ識別情報は、前記印刷データを留め置く指示に含まれることを特徴とする請求項２に記載の印刷中継サーバ。
【請求項４】
前記印刷データを留め置く指示から前記コンテンツ識別情報を抽出する抽出手段を更に有し、
前記中継仮想プリンタは、前記抽出手段により抽出されたコンテンツ識別情報と、前記印刷サーバから受信した印刷データと共に受信したコンテンツ識別情報とが一致した場合に、前記印刷サーバから印刷データを受信し、受信した印刷データを留め置き印刷データとして前記保存手段に保存させ、
前記抽出手段により抽出されたコンテンツ識別情報と、前記印刷サーバから受信した印刷データと共に受信したコンテンツ識別情報とが一致しなかった場合には、前記印刷データを留め置き印刷データとして前記保存手段に保存させずに、前記印刷データを前記画像形成装置へ送信する、または前記印刷サーバの保存手段に保存された前記印刷データの保存場所に関する情報を前記印刷サーバから受信したことに応じて前記保存場所に関する情報を前記画像形成装置へ送信することを特徴とする請求項３に記載の印刷中継サーバ。
【請求項５】
前記中継仮想プリンタは、複数の画像形成装置の内の１つの画像形成装置と一対一対応しており、かつ前記印刷サーバから受信した印刷データ、または前記保存場所に関する情報を、一対一対応している画像形成装置へ送信する請求項２乃至４の何れか１項に記載の印刷中継サーバ。
【請求項６】
前記印刷データを留め置く指示を行ったユーザと紐づいて登録されているプリンタの一覧を、該プリンタの一覧を管理している前記印刷サーバから取得する取得手段と、
前記受付手段により印刷データを留め置く指示を受け付けた場合、前記取得手段により取得されたプリンタの一覧に含まれる各プリンタと紐づく前記中継仮想プリンタに対し、留め置き印刷データの対象となる印刷データを留め置くように指示する指示手段と、を更に有する請求項２乃至５の何れか１こうに記載の印刷中継サーバ。
【請求項７】
受付手段は、Ｗｅｂアプリケーションサーバが有するＷｅｂアプリケーションサービスを利用しコンテンツを編集するための画面を表示するクライアント装置から、前記画面の画面上で編集しているコンテンツに対応する印刷データを留め置く指示を受け付け、
中継仮想プリンタは、前記コンテンツを基に変換された印刷データを画像形成装置で印刷する際に、前記受付手段により印刷データを留め置く指示を受け付けた場合は、前記コンテンツを基に印刷データ変換を行った印刷サーバから前記印刷データを受信し、受信した印刷データを留め置き印刷データとして保存手段に保存させ、
前記受付手段により印刷データを留め置く指示を受け付けなかった場合は、前記印刷データを前記印刷サーバから受信し前記印刷データを留め置かずに前記画像形成装置へ送信する、または前記印刷サーバの保存手段に保存された前記印刷データの保存場所に関する情報を前記印刷サーバから受信し、受信した前記保存場所に関する情報を前記画像形成装置へ送信することを特徴とする印刷中継サーバの制御方法。
【請求項８】
請求項７に記載の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、留め置き印刷を実現するための印刷中継サーバ、印刷中継サーバを制御する制御方法、その制御方法のプログラム、および印刷処理方法に関するものである。
【背景技術】
【０００２】
サーバがクライアントにサービスを提供する形態は従来から存在する。一例として、クライアントからサーバに対して印刷指示を送信し、印刷指示を受信したサーバが印刷対象のコンテンツを印刷データに変換する技術がある。
【０００３】
近年、社内に設置したサーバやアプリケーションの管理／維持コストを削減するため、インターネット上のサーバコンピュータにて動作する各種アプリケーションを利用できるクラウドコンピューティングシステムが注目されている。
【０００４】
クラウドコンピューティングは、多くのコンピューティング・リソースを用いてデータ変換やデータ処理を分散実行し、多くのクライアントからの要求を同時に処理することが主な特徴である。現在、このクラウドコンピューティングを実現するクラウドコンピューティング環境上にＷｅｂサービスを実装し、多種多様なサービスを提供するベンダーが乱立しつつある。
【０００５】
中でも注目すべきベンダーはＧｏｏｇｌｅ（登録商標）である。Ｇｏｏｇｌｅ（登録商標）は、大規模なデータセンターを多数設立する他、デバイスと連携して提供するサービスを提案し、デバイスとサービス間のデータ通信の仕組みを開発する等の積極的な動きを見せている。
【０００６】
クラウドコンピューティングで提供される各種サービスと連携するデバイスとして、紙媒体をスキャンして電子化し、電子データを印刷する際に用いるプリンタ、デジタル複合機（総称して、画像形成装置とする）が想定される。画像形成装置は、社内（イントラネット）に設置されている場合が多い。イントラネット内に画像形成装置、及びアプリケーションが存在する場合に比べ、アプリケーションがインターネット上に存在する場合、両者を密に連携させるためにはファイアーウォールなどセキュリティを考慮した方法が必要となる。
【０００７】
そこで、Ｇｏｏｇｌｅ（登録商標）は画像形成装置と連携してサービスを提供するためのデータ通信の仕組みを開発し、画像形成装置がＧｏｏｇｌｅ（登録商標）により提供されるクラウドコンピューティング環境とデータ通信を行うためのインターフェースを公開した。このサービスを利用したいユーザは、画像形成装置の情報をクラウドコンピューティング環境、即ちサービスを提供するサービス環境に登録する必要がある。
【０００８】
一方、ユーザが画像形成装置にて印刷を行う際、印刷ジョブをプリントサーバに一旦留め置き、ユーザが画像形成装置の操作パネルを操作して、所望の印刷ジョブを出力する構成が特許文献１に開示されている。特許文献１によれば、秘匿性の高い文書を、複数のユーザやグループで共有するプリンタに印刷する際、ユーザ名を入力し、留め置き指示を行うと、ネットワーク上のプリントサーバに印刷ジョブとして管理することができる。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０００−２７６３１４
【発明の概要】
【発明が解決しようとする課題】
【００１０】
特許文献１は、印刷を指示する手段、プリントサーバ、およびプリンタなど発明に係る全ての要件を１つのベンダーでハンドリングしている構成が前提になっている。一方、クラウドコンピューティングにて提供されるサービスサーバと、デバイスベンダーが提供するデバイスが連携する場合、印刷ジョブの制御はクラウドコンピューティング側でハンドリングされる。そのため、上述のシステムにおいて留め置き印刷を実現する際に特許文献１の構成では留め置き印刷を実現できない可能性がある。
【００１１】
そこで、本発明はＷｅｂサービスを提供するベンダーの管理下にある印刷サービスサーバと、デバイスを提供するデバイスベンダーが生産したデバイスとが連携する場合において、印刷サービスを提供するベンダーの仕様に関わらず、印刷サービスを利用して生成された印刷データの留め置き印刷を実現する。
【課題を解決するための手段】
【００１２】
本発明の一実施系に係る印刷処理方法は、クライアント装置、印刷サーバ、印刷中継サーバ、画像形成装置から構成されるコンテンツ印刷システムで実行される印刷処理方法であって、前記クライアント装置の表示手段は、Ｗｅｂアプリケーションサーバが有するＷｅｂアプリケーションサービスを利用しコンテンツを編集するための画面を表示し、前記クライアント装置の指示手段は、前記画面の画面上で編集しているコンテンツに対応する印刷データを留め置く指示を前記印刷中継サーバへ指示し、前記コンテンツを印刷する指示を前記印刷サーバへ指示し、前記印刷サーバの変換手段は、前記コンテンツを印刷する指示を前記指示手段から受けたことに応じて前記コンテンツを印刷データへ変換し、前記印刷中継サーバの留め置き手段は、前記印刷データを留め置く指示を前記指示手段から受けたことに応じて前記変換手段により変換された印刷データを前記印刷サーバから受信し、受信した印刷データを留め置き、前記画像形成装置の印刷手段は、ユーザから前記印刷データの印刷指示を受けたことに応じて前記保存手段により保存された印刷データを受信し、受信した印刷データを基に印刷を行うことを特徴とする。
【発明の効果】
【００１３】
本発明の印刷中継サーバはユーザから事前に留め置きの指示を受け付けた場合、印刷サービスから提供される印刷ジョブの中で留め置き印刷の対象となる印刷ジョブを特定し留め置く。これにより、印刷サーバと、デバイスベンダーが提供する画像形成装置が連携する場合であっても、留め置き印刷を実現できる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施例１に係るコンテンツ印刷システムのシステム概念図である。
【図２】本発明の実施例１に係るコンテンツ印刷システムを構成する各装置、および各サーバ群のハードウェア構成図である。
【図３】本発明の実施例１に係るコンテンツ印刷システムの一例を示すソフトウェア構成概要図である。
【図４】本発明の実施例１に係るコンテンツ印刷システムの画像形成装置のソフトウェア構成図である。
【図５】（ａ）本発明の実施例１に係るコンテンツ印刷システムの印刷中継サーバ内の中継仮想プリンタ管理サービスのソフトウェア構成図である。（ｂ）本発明の実施例１に係るコンテンツ印刷システムの印刷中継サーバ内の中継仮想プリンタのソフトウェア構成図である。
【図６】本発明の実施例１に係るコンテンツ印刷システムの印刷サーバのソフトウェア構成図である。
【図７】本発明の実施例１に係るコンテンツ印刷システムにおいて、ユーザが画像形成装置内の印刷制御ソフトウェアにアクセスした際にＷｅｂブラウザ上に表示されるユーザインターフェースの一例である。
【図８】（ａ）本発明の実施例１に係るコンテンツ印刷システムにおいて、Ｗｅｂブラウザに表示されたＷｅｂアプリケーションが提供する文書作成サービスの画面の一例である。（ｂ）本発明の実施例１に係るコンテンツ印刷システムにおいて、Ｗｅｂブラウザに表示するユーザが選択した画像形成装置に対応する印刷設定画面の一例である。
【図９】（ａ）本発明の実施例１に係るコンテンツ印刷システムにおいて、ユーザが中継仮想プリンタ管理サービスにアクセスした際にＷｅｂブラウザ３０４に表示された画面の一例である。（ｂ）本発明の実施例１に係るコンテンツ印刷システムにおいて、Ｗｅｂブラウザに登録されたブックマークレットを構成するスクリプトの一例である。
【図１０】（ａ）（ｂ）（ｃ）本発明の実施例１に係るコンテンツ印刷システムにおいて、印刷制御ソフトウェアが生成する画像形成装置の登録情報の一例である。
【図１１】（ａ）本発明の実施例１に係るコンテンツ印刷システムにおいて、中継仮想プリンタ管理サービスが管理する印刷サービスに登録した画像形成装置の一覧情報である。（ｂ）本発明の実施例１に係るコンテンツ印刷システムにおいて、印刷制御ソフトウェアが管理する印刷サービスに登録した画像形成装置の一覧情報である。
【図１２】（ａ）本発明の実施例１に係るコンテンツ印刷システムにおいて、印刷サービスが管理する印刷サービスに登録されたユーザと、ユーザが利用可能な画像形成装置の情報の一例である。（ｂ）本発明の実施例１に係るコンテンツ印刷システムにおいて、印刷サービスが管理する印刷サービスに登録された画像形成装置のＩＤと、登録情報を管理する情報の一例である。
【図１３】本発明の実施例１に係るコンテンツ印刷システムにおいて、印刷サービスへ画像形成装置を登録する処理の流れの概要を示すシーケンス図である。
【図１４】本発明の実施例１に係るコンテンツ印刷システムにおいて、中継仮想プリンタ管理サービスに対する画像形成装置の登録依頼処理の流れを示すフローチャートである。
【図１５】本発明の実施例１に係るコンテンツ印刷システムにおいて、印刷サービスに対する画像形成装置の登録実行処理の流れを示すフローチャートである。
【図１６】本発明の実施例１に係るコンテンツ印刷システムにおいて、ユーザが印刷中継サーバに印刷ジョブの留め置きを指示するために利用する際に用いるブックマークレットをＷｅｂブラウザに登録する処理の流れを示すフローチャートである。
【図１７】本発明の実施例１に係るコンテンツ印刷システムにおいて、ユーザが印刷を指示した後、中継仮想プリンタが印刷サービスから印刷ジョブを取得する処理の流れの概要を示すシーケンス図である。
【図１８】本発明の実施例１に係るコンテンツ印刷システムにおいて、中継仮想プリンタ管理サービスが、中継仮想プリンタが留め置き対象であるコンテンツの印刷ジョブを留め置くように設定する処理の流れを示すフローチャートである。
【図１９】本発明の実施例１に係るコンテンツ印刷システムにおいて、ユーザが画像形成装置を操作して、中継仮想プリンタに留め置かれた印刷ジョブを出力する処理の流れを示すシーケンス図である。
【図２０】本発明の実施例１に係るコンテンツ印刷システムにおいて、中継仮想プリンタが印刷制御ソフトウェア制御部に送信する印刷ジョブの一例である。
【発明を実施するための形態】
【００１５】
特許文献１は、印刷を指示する手段、プリントサーバ、およびプリンタなど発明に係る全ての要件を１つのベンダーでハンドリングしている構成が前提になっている。一方、クラウドコンピューティングにて提供されるサービスサーバと、デバイスベンダーが提供するデバイスが連携する場合、印刷ジョブの制御はクラウドコンピューティング側でハンドリングされる。そのため、上述のシステムにおいて留め置き印刷を実現する際に特許文献１の構成では実現できない可能性がある。
【００１６】
理由として、クラウドコンピューティング側が留め置き印刷のサービスを用意していないからである。また、印刷ジョブをクラウドコンピューティング側から受信したとしても、その印刷ジョブに含まれる情報の中にユーザに関する情報が含まれていない場合もあり、必ずしも印刷ジョブを留め置けるとは限らない。留め置き印刷は、ユーザを特定し、特定されたユーザに対応するジョブを提供するのが特徴であり、上述のようにユーザを特定できる情報がない場合は留め置き印刷を実現することができない。
【００１７】
そこで、本発明は印刷サービスを提供するベンダーと、デバイスを提供するベンダーとが連携する場合において、印刷サービスを提供するベンダーの仕様に関わらず留め置き印刷を実現することを目的とする。より具体的には、ユーザが留め置きしたいジョブだけ中継サーバに留め置き、留め置いたジョブを留め置き印刷用のジョブとして管理する。以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１８】
始めに、本発明の各実施例で用いられる用語について説明する。留め置き印刷とは、記憶装置に印刷ジョブ（印刷データ、印刷設定を含む）を保存し、ユーザからの印刷指示に応じて保存された印刷ジョブを画像形成装置で印刷させる処理を指す。記憶装置は、画像形成装置内のメモリであってもよいし、画像形成装置に接続された外部装置のメモリであっても良い。印刷データを留め置く指示とは、印刷ジョブ、または印刷データに対し、ユーザが留め置き印刷の対象として指定することを指す。例えば、印刷指示の前にユーザインターフェースを介して指定することができる。
【実施例１】
【００１９】
本発明の第１実施形態を図１乃至２０に基づき説明する。
【００２０】
［システム構成］
本発明の実施例１におけるコンテンツ印刷システム１０００の構成について説明する。図１は、コンテンツ印刷システム１０００の構成を示す図である。コンテンツ印刷システム１０００は、クライアントコンピュータ１０４、画像形成装置１０１を含む。２つの装置はユーザ環境に配置された装置であり、ネットワーク１００を介して互いに接続されており、ネットワーク１００はインターネット１１０に接続されている。
【００２１】
また、コンテンツ印刷システム１０００は、Ｗｅｂアプリケーションサーバ群１０５、印刷サーバ群１０３を含む。２つのサーバ群は、同じベンダーから提供されたサーバ群であり、ネットワーク１００を介して互いに接続されており、ネットワーク１００はインターネット１１０に接続されている。
【００２２】
なお、実施例１において２つのサーバ群はネットワーク１００を介して接続されているが、インターネット１１０を介して接続されていても良い。また、コンテンツ印刷システム１０００は、印刷中継サーバ１０２を含む。印刷中継サーバ１０２はネットワーク１００に接続されており、ネットワーク１００はインターネット１１０に接続されている。コンテンツ印刷システム１０００を構成する各装置、および各サーバ群は、インターネット１１０を介して接続可能であり、互いにデータ通信することができる。なお、各装置は１台のみであるが複数台あっても良い。また、各サーバ群は複数台で構成されているが１台であっても良い。よって、本実施例では、複数のサーバから構成されるサーバ群を、単に“サーバ“と称する場合もある。Ｗｅｂアプリケーションサーバ群は、Ｗｅｂアプリケーションサーバとも称する。
【００２３】
［ハードウェア構成］
次に、コンテンツ印刷システム１０００を構成する各装置、および各サーバ群のハードウェア構成について説明する。図２は、コンテンツ印刷システム１０００を構成する各装置、および各サーバ群のハードウェア構成を示す図である。
【００２４】
２０１は、コンテンツ印刷システム１０００を構成する各装置、および各サーバ群である。２０２は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、各種プログラムを実行し、様々な機能を実現するユニットである。２０３は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）であり、各種プログラムを記憶するユニットである。２０４は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）であり、ＣＰＵ２０２は、ＲＯＭ２０３に記憶されているプログラムをＲＡＭ２０４にロードしプログラムを実行する。また、ＲＡＭ２０４は、ＣＰＵ２０２の一時的な作業記憶領域としても利用されるユニットである。Ｉｎｐｕｔ／Ｏｕｔｐｕｔインターフェース２０５は、各装置、および各サーバ群に接続されているディスプレイ（不図示）にデータを送信する他、ポインティングデバイス（不図示）からデータを受信するインターフェースユニットである。ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）２０６は、コンテンツ印刷システム１０００を構成する各装置、および各サーバ群をネットワーク１００に接続するためのユニットである。以上説明してきたユニットは、バス２０７介してデータの送受信を行うことが可能である。
【００２５】
また、画像形成装置１０１は、印刷ユニット（不図示）を搭載しており、印刷ユニットは、バス２０７を介して各ユニットとデータを送受信することが可能である。なお、印刷ユニットは、ラスタイメージを記録媒体に印刷することが可能なユニットである。
【００２６】
［ソフトウェア構成概要］
次に、コンテンツ印刷システム１０００を構成する各装置、および各サーバ群の機能概要について説明する。図３は、コンテンツ印刷システム１０００を構成する各装置、および各サーバ群のソフトウェア構成を示している。図３に示されている各ソフトウェア構成の機能を実現するプログラムは、各装置、および各サーバ群のＲＯＭ２０３に記憶されており、ＣＰＵ２０２がＲＡＭ２０４にプログラムをロードし実行することで、これらの機能は実現される。
【００２７】
各装置、および各サーバ群が有する機能概要について説明する。ここで説明される機能は、次の２つの系に分類される。１つ目が、画像形成装置１０１の情報を印刷中継サーバ１０２内の中継仮想プリンタ管理サービス３０２に送信し、中継仮想プリンタ管理サービス３０２は中継仮想プリンタ３１２を生成した後、印刷サーバ群１０３内の印刷サービス３０３に画像形成装置１０１を登録する機能である。ここで、画像形成装置１０１の印刷制御ソフトウェア３０１は、ユーザの権限を管理するユーザ権限管理ソフトウェア３１１よりユーザが利用可能な画像形成装置１０１の機能を基に、画像形成装置１０１の情報を中継仮想プリンタ管理サービス３０２に送信する。この処理を登録処理と称する。
【００２８】
２つ目が、Ｗｅｂアプリケーションサーバ群１０５で生成、保存されたコンテンツの印刷指示を印刷サーバ群１０３に送信し、印刷サーバ群１０３から取得した印刷データを画像形成装置１０１に印刷する機能である。ここで、印刷中継サーバ１０２が印刷サーバ群１０３から取得した印刷ジョブを取得した後、ユーザが指示した留め置き対象の印刷ジョブは留め置かれる。よって、ユーザが画像形成装置１０１を操作することで印刷サーバ群１０３から印刷中継サーバ１０２に印刷データが送信され留め置かれ、その後、画像形成装置１０１に印刷させることができる。留め置き対象外の印刷ジョブは、印刷サーバ群１０３から印刷データを取得し留め置かれずに、画像形成装置１０１に自動的に出力される。即ち、画像形成装置１０１のパネルを利用しユーザからの印刷指示がなかったとしても自動的に出力される。この処理を印刷処理と称する。
【００２９】
Ｗｅｂアプリケーションサーバ群１０５は、Ｗｅｂアプリケーション３０５を有する。Ｗｅｂアプリケーションサーバ群１０５は、複数台のサーバを仮想化して１台のサーバとみなし、その１台のサーバでＷｅｂアプリケーション３０５の機能を実現している。なお、Ｗｅｂアプリケーションサーバ群１０５は、その１台のサーバ内に複数のヴァーチャルマシンを起動し、夫々のヴァーチャルマシンに対してＷｅｂアプリケーション３０５の機能を実現させている。
【００３０】
Ｗｅｂアプリケーション３０５は、文書作成サービスを提供する。ユーザは、例えば、会社の会議で資料を配布したい場合に、その資料を作成するため文書作成サービスを利用する。クライアントコンピュータ１０４がＷｅｂアプリケーション３０５を利用する場合、クライアントコンピュータ１０４にそのアプリケーションをインストールする必要はなく、Ｗｅｂブラウザ３０４を利用する。Ｗｅｂアプリケーション３０５は、その資料を作成するための画面情報を、Ｗｅｂブラウザ３０４に送信する。なお、Ｗｅｂアプリケーション３０５は、Ｗｅｂブラウザ３０４を介してユーザが入力したユーザＩＤ、およびパスワードを含むユーザ情報を基に認証を行い、認証が成功したことに応じて資料を作成するための画面情報を送る。画面情報を受信したＷｅｂブラウザ３０４は、その画面情報を基に文書を作成するための作成画面を表示し、ユーザはその作成画面を用いて会議で配布する資料を作成する。Ｗｅｂアプリケーション３０５は、ユーザがその作成画面を用いて作成した資料の情報を受信し、受信した情報を基にコンテンツを作成し、Ｗｅｂアプリケーションサーバ群１０５の記憶装置に作成したコンテンツを記憶させる。なお、Ｗｅｂアプリケーション３０５は、文書作成サービスに限らずメールサービス、スケジュールサービスも提供している、いわゆるＷｅｂアプリケーションサービスである。ユーザは、このサービスを利用することでクライアントコンピュータ１０４にアプリケーションをインストールせずとも各種サービスを受けることが可能になる。
【００３１】
図８（ａ）は、Ｗｅｂブラウザ３０４に表示されたＷｅｂアプリケーション３０５が提供する文書作成サービスの画面の一例である。この画面は、文書作成サービスから提供される、コンテンツを編集するための画面に相当する。ユーザは、印刷ボタン３６１を押下することで、作成したコンテンツ３６２の印刷を指示することができる。Ｗｅｂブラウザ３０４は、ユーザが指定したコンテンツのＵＲＩ  ３６３に従い、Ｗｅｂアプリケーション３０５が提供する文書作成サービスに保存されているコンテンツ３６２を画面上に表示する。ブックマークリスト３６４は、Ｗｅｂブラウザ３０４の機能であり、Ｗｅｂブラウザ３０４に登録されているブックマークの一覧を表示する。ブックマークは任意のＵＲＩを登録する機能のことを指し、登録したＵＲＩにユーザの選択操作だけで移動可能とするものである。ブックマークレット３６５はブックマークの一種であり、Ｗｅｂブラウザ３０４がコンテンツ３６２を表示した状態で選択すると、印刷中継サーバ１０２にてコンテンツ３６２に対する印刷ジョブを留め置くように、印刷中継サーバ１０２に指示を送信する。送信される指示の中には、Ｗｅｂブラウザ３０４に表示しているコンテンツ３６２を識別するためのコンテンツ識別情報が含まれている。
【００３２】
ここで、印刷中継サーバ１０２において、コンテンツ３６２に対する印刷ジョブを印刷中継サーバ１０２に留め置く準備ができたか否かを、図示しないＷｅｂブラウザ３０４の別ウィンドウに表示する。この操作により、ユーザが印刷を指示したコンテンツ３６２を印刷中継サーバ１０２に留め置くことが可能となる。なお、上述したブックマークレット３６５を選択せずにコンテンツ３６２を印刷しようとした場合、印刷中継サーバ１０２に印刷データが留め置かれることなく画像形成装置１０１に直接印刷される。なお、本実施例においては、ブックマークレット３６５を利用して印刷ジョブを留め置くことを指示する場合について説明するが、これに限定するものではなく、必要となる機能を実現することができればプラグインなど他の形態であっても構わない。
【００３３】
Ｗｅｂアプリケーション３０５は、印刷ボタン３６１が押されたという情報を受信し、印刷サーバ群１０３へのアクセス命令、即ち、リダイレクトの指示をＷｅｂブラウザ３０４へ送信する。なお、リダイレクト指示には、上述したＷｅｂブラウザ３０４を利用しているユーザに対応する画像形成装置の一覧リストを取得するための要求、およびユーザが印刷を指示したコンテンツを識別するためのコンテンツ識別情報、およびユーザ情報が含まれている。また、Ｗｅｂアプリケーション３０５は、印刷サーバ群１０３からコンテンツの取得要求があった場合、その取得要求と共に送られたコンテンツを識別するためのコンテンツ識別情報を基に、対象のコンテンツを印刷サーバ群１０３へ送信する。
【００３４】
Ｗｅｂブラウザ３０４は、ユーザが印刷可能な画像形成装置の一覧リストを、アクセスした印刷サーバ群１０３から取得し一覧リストを表示する。Ｗｅｂブラウザ３０４は、画像形成装置の一覧リストからユーザが選択した画像形成装置に対応する印刷設定画面を、印刷サーバ群１０３から取得しその印刷設定画面を表示する。図８（ｂ）は、ユーザが選択した画像形成装置に対応する印刷設定画面であり、Ｗｅｂブラウザ３０４が表示する画面である。Ｗｅｂブラウザ３０４は、その印刷設定画面でユーザが設定した印刷設定値を印刷サーバ群１０３へ送信する。
【００３５】
画像形成装置１０１の印刷制御ソフトウェア３０１は、中継仮想プリンタ３１２を介して印刷サービス３０３が保持する印刷ジョブを取得し、図示しない印刷ユニットにて出力する。この際、ユーザがＷｅｂブラウザ３０４にコンテンツ３６２が表示された状態でブックマークレット３６５を選択した場合、コンテンツ３６２に対する印刷ジョブは印刷中継サーバ１０２に留め置き対象の印刷ジョブとして保持される。よって、留め置き対象の印刷ジョブは、画像形成装置１０１にてユーザが印刷を指示するまで出力されず、留め置き対象外の印刷ジョブは、自動的に画像形成装置１０１にて出力される。以下に、各装置、および各サーバ群が有する機能の詳細について説明する。
【００３６】
［画像形成装置のソフトウェア構成詳細］
まず、画像形成装置１０１が有する機能について図４を用いて詳細に説明する。画像形成装置１０１は、印刷制御ソフトウェア３０１、ユーザ権限管理ソフトウェア３１１を有しており、図４に示す各機能を実現する。
【００３７】
表示部４０１は、図示しない画像形成装置１０１の操作パネル上に、または、クライアントコンピュータ１０４のＷｅｂブラウザ３０４からアクセスを受けて印刷制御ソフトウェア３０１の各種画面を表示する。図７は、ユーザがＷｅｂブラウザ３０４を介して印刷制御ソフトウェア３０１にアクセスした際に表示されるＵＩ画面の一例である。画像形成装置１０１の印刷機能／設定メニューの一覧を表示する印刷メニュー一覧３５１、画像形成装置１０１を登録可能な印刷サービスの一覧を表示する印刷サービス表示エリア３５２から構成される。さらに、印刷サービス表示エリア３５２には、ユーザが印刷サービスに画像形成装置１０１を登録する際に操作する印刷サービスへの登録リンク３５３が含まれている。なお、図７で示した画面に関して、その形態、エリアの構成、及びコントロールは限定されたものではなく、必要となる機能を実現することができれば、どのような形態であっても構わない。
【００３８】
印刷制御ソフトウェア制御部４０２は、印刷制御ソフトウェア３０１内の各機能を制御する。登録部４０３は、ユーザが印刷制御ソフトウェア３０１のＵＩ画面を用いて画像形成装置１０１の印刷サービス３０３（ＰｒｉｎｔＳｅｒｖｉｃｅ  Ａ）への登録を指示した場合、登録情報を生成する。そして、印刷制御ソフトウェア制御部４０２は、登録情報を印刷中継サーバ１０２内の中継仮想プリンタ管理サービス３０２に送信する。ここで、登録部４０３は、ユーザの権限に応じて画像形成装置の利用できる機能をユーザ権限管理部４１１から取得し、登録情報に反映して、中継仮想プリンタ管理サービス３０２に送信する。更に、登録部４０３は、画像形成装置１０１を登録する印刷サービス３０３を特定する情報、例えば印刷サービス３０３の名称”ＰｒｉｎｔＳｅｒｖｉｃｅ  Ａ”を、登録情報と共に中継仮想プリンタ管理サービス３０２に送信する。この際、印刷サービス３０３、およびＷｅｂアプリケーション３０５にアクセスするために必要なユーザ情報も送信しても構わない。
【００３９】
図１０（ａ）は、登録部４０３が中継仮想プリンタ管理サービス３０２に送信する登録情報の一例であり、ＸＭＬ等のスキーマで宣言されている（４５０）。登録情報４５０は、画像形成装置を特定するＩＤ（４５１）、ユーザに関する情報（４５２）、およびユーザの権限に応じてユーザが利用可能な画像形成装置の印刷機能（４５３）等が宣言されている。４５２において、ユーザの情報として、ユーザ名、及びユーザの権限を特定する情報が宣言されている。４５３においてユーザが利用可能な印刷機能として、プリント機能に関するカラーモード、両面、用紙サイズなどの情報を宣言している。また、図１０（ｂ）、および（ｃ）は、権限の異なるユーザが中継仮想プリンタ管理サービス３０２に送信する登録情報の一例を示している。例えば、図１０（ｂ）は、管理者ユーザ（ＡｄｍｉｎＵｓｅｒ）が利用可能な印刷機能が宣言されており、図１０（ｃ）は、ゲストユーザ（ＧｕｅｓｔＵｓｅｒ）が利用可能な印刷機能が宣言されている。
【００４０】
なお、登録情報４５０には、これら以外の情報が含まれていても構わず、例えば、登録情報４５０の内容を保証するためのセキュリティ情報が含まれていても構わない。また、登録情報４５０は、ＸＭＬ等のスキーマの形式で中継仮想プリンタ管理サービス３０２に送信する方法に限定されず、中継仮想プリンタ管理サービス３０２が公開するインターフェースに従い、上述した情報を送信すれば良い。
【００４１】
印刷制御ソフトウェア３０１は、印刷通信モジュールＢ’４１０を有している。印刷通信モジュールＢ’４１０の印刷通知受付部４０４は、印刷中継サーバ１０２が印刷サービス３０３から取得した印刷ジョブであって、留め置き印刷の対象として保存された印刷ジョブの一覧を、印刷中継サーバ１０２から取得する。印刷通知受付部４０４は、印刷中継サーバ１０２から取得した通知情報を確認し、夫々の情報を印刷設定取得部４０５、印刷データ取得部４０６に通知する。印刷設定取得部４０５は、通知された印刷設定の格納場所を基に、印刷サービス３０３から印刷設定を取得する。印刷データ取得部４０６は、通知された印刷データの格納場所を基に、印刷サービス３０３から印刷データを取得する。取得された印刷設定、および印刷データは、印刷通知受付部４０４を介してジョブ管理部４０７へ送信される。ジョブ管理部４０７は、印刷データと印刷設定情報を取得し、印刷の実行を印刷実行部４０８へ指示する。指示を受けた印刷実行部４０８は、印刷設定と印刷データを基にラスタイメージを生成し、生成したラスタイメージを印刷するよう印刷ユニットに指示を出す。ここで、ユーザの指示に従い、留め置き対象となっている印刷ジョブは自動的に出力されず、印刷中継サーバ１０２にて保持される。
【００４２】
［印刷中継サーバのソフトウェア構成詳細］
次に、印刷中継サーバ１０２が有する機能について詳細を説明する。印刷中継サーバ１０２は、中継仮想プリンタ管理サービス３０２、および中継仮想プリンタ３１２を有しており、夫々図５（ａ）、および図５（ｂ）に示す各機能を実現する。
【００４３】
要求受信部５０１は、ユーザの指示に従い画像形成装置１０１内の印刷制御ソフトウェア３０１の登録部４０３から送信される登録指示、および登録情報を受信する。制御部５０２は、要求受信部５０１が受信した登録情報、印刷サービス３０３を特定する情報、および印刷サービス３０３にアクセスするためのユーザ情報等を取得、解釈した後、中継仮想プリンタ管理部５０５に中継仮想プリンタ３１２の生成を指示する。
【００４４】
中継仮想プリンタ管理部５０５は、印刷制御ソフトウェア３０１より受信した印刷サービス３０３を特定する情報を使い、印刷サービス３０３と通信するための印刷通信モジュールＡ’６０１をインターフェース情報管理部５０６から取得する。そして、中継仮想プリンタ３１２に印刷通信モジュールＡ‘６０１を設定する。印刷通信モジュールＡ’６０１は、印刷サービス３０３と通信するためのモジュールであり、後述する印刷サービス３０３が有する通信モジュールＡ７０７と通信を行うことが可能なモジュールである。また、中継仮想プリンタ３１２は、画像形成装置１０１と通信するための印刷通信モジュールＢ６０２を有し、先述した印刷制御ソフトウェア３０１の印刷通信モジュールＢ’４１０と通信することができる。
【００４５】
中継仮想プリンタ管理部５０５は、中継仮想プリンタ３１２を生成した後に、中継仮想プリンタ３１２を識別するための識別情報であるＶＰＩＤ（Ｖｉｒｔｕａｌ  Ｐｒｉｎｔｅｒ  ＩＤ）を発行し、制御部５０２に通知する。ＶＰＩＤ、即ち、生成された仮想プリンタと、画像形成装置１０１は一対一対応となっている。
【００４６】
制御部５０２は、中継仮想プリンタ３１２を生成後、印刷サービス３０３に画像形成装置１０１を登録するように印刷サービスプリンタ生成部５０４へ指示を出す。この際、制御部５０２は、ユーザ情報を印刷サービスプリンタ生成部５０４へ通知する。印刷サービスプリンタ生成部５０４は、印刷サーバ群１０３にアクセスするために中継仮想プリンタ管理サービス３０２固有のユーザ情報を用いて認証を行う。認証が成功した場合、印刷サービスプリンタ生成部５０４は、制御部５０２からの指示に従い、受信した画像形成装置１０１の登録情報、およびプリンタネームを印刷サービス３０３に送信し、印刷サービス３０３に画像形成装置１０１を登録する。ここで、印刷サービスプリンタ生成部５０４は、その応答として印刷サービス３０３に登録した画像形成装置１０１を特定する情報としてＳＰＩＤ（Ｓｅｒｖｉｃｅ  Ｐｒｉｎｔｅｒ  ＩＤ）を受信する。
【００４７】
続いて、印刷サービスプリンタ生成部５０４は、受信したＳＰＩＤを用いて、登録した画像形成装置１０１を印刷サービス制御部５０２から受信したユーザに共有するように印刷サービス３０３に依頼する。制御部５０２は、印刷サービスプリンタ生成部５０４からＳＰＩＤを取得し、プリンタ情報管理部５０３に印刷サービス３０３に登録した画像形成装置１０１の情報を格納するよう指示する。プリンタ情報管理部５０３は、画像形成装置を特定するＩＤ、権限を特定する情報、中継仮想プリンタを特定するＶＰＩＤ、およびＳＰＩＤを図１１（ａ）に示すように関連付けて格納する。
【００４８】
上述した通り、中継仮想プリンタ３１２は、印刷通信モジュールＡ’６０１、および印刷通信モジュールＢ６０２を有する。印刷通信モジュールＡ’６０１の印刷通知受付部６０３は、印刷サービス３０３から印刷ジョブ通知を受信する。印刷通知受付部６０３は、受信した印刷ジョブの通知情報に、画像形成装置１０１にて印刷を実行するために必要な情報である印刷データの格納場所、および印刷設定の格納場所を確認する。印刷通知受付部６０３は、印刷サービス３０３から受信した印刷ジョブの情報を印刷ジョブ通知部６０４に通知し、通知を受けた印刷ジョブ通知部６０４は、印刷ジョブ管理部６０５に印刷ジョブを保存し、留め置く。
【００４９】
画像形成装置１０１内の印刷制御ソフトウェア３０１が有する印刷通信モジュールＢ’４１０より印刷ジョブの一覧取得の要求を受けると、印刷ジョブ管理部６０５に保存されている印刷ジョブの一覧を印刷通信モジュールＢ’４１０に送信する。
【００５０】
［印刷サーバ群のソフトウェア構成詳細］
次に、印刷サーバ群１０３が有する機能について詳細を説明する。印刷サーバ群１０３は、印刷サービス３０３を有しており、図６に示す各機能を実現する。印刷サーバ群１０３は、複数台のサーバを仮想化して１台のサーバとみなし、その１台のサーバで印刷サービス３０３の機能を実現している。なお、印刷サーバ群１０３は、その１台のサーバ内に複数のヴァーチャルマシンを起動し、夫々のヴァーチャルマシンに対して印刷サービス３０３の機能を実現させている。図３に示す印刷サービス３０３は、その内の１台を示したものである。
【００５１】
プリンタ情報登録部７０１は、中継仮想プリンタ管理サービス３０２から送信される画像形成装置１０１の登録依頼を受信する。プリンタ情報登録部７０１は、画像形成装置１０１を新規に登録する場合、ＳＰＩＤ（Ｓｅｒｖｉｃｅ  Ｐｒｉｎｔｅｒ  ＩＤ）を生成する。そして、ＳＰＩＤを中継仮想プリンタ管理サービス３０２から受信した画像形成装置１０１の登録情報と合わせ、ユーザに紐付けてプリンタ情報格納部７０２に登録する。なお、プリンタ情報登録部７０１は、画像形成装置１０１の登録した際に生成したＳＰＩＤを中継仮想プリンタ管理サービス３０２に送信する。
【００５２】
図１２（ａ）は、プリンタ情報格納部７０２にて管理される印刷サービス３０３に登録されたユーザと、ユーザが利用可能な画像形成装置の情報を示す一例である。各ユーザに対して、利用可能な画像形成装置を特定するＳＰＩＤのリストが保存、管理されている。また、図  １２（ｂ）は、生成したＳＰＩＤに対応する画像形成装置の登録情報を紐付け、管理する情報を示す一例である。ここでは、画像形成装置の登録情報はファイルとして保存されており、ＳＰＩＤに対応する登録情報が保存されたファイルのパスが管理されている。なお、図１２（ａ）および（ｂ）で示した一例は、上述した以外の情報を一緒に管理していても構わないし、上述した情報／形式で管理しても構わない。
【００５３】
ここで、図１２（ａ）に示した通り、プリンタ情報格納部７０２は、ユーザ”Ｐ−ＳｅｒｖｉｃｅＭａｎａｇｅｒ”で登録したＳＰＩＤ”１２３４６９５６９２４８２３９０４６２”、および”４２６０５４８４３０２６６２３４５２３”が、ユーザ”Ｐ−ＵｓｅｒＡ”と共有されていることが分かる。つまり、ユーザ”Ｐ−ＳｅｒｖｉｃｅＭａｎａｇｅｒ”が登録した画像形成装置の登録情報を、ユーザ”Ｐ−ＵｓｅｒＡ”が共有することができ、上述した図８（ｂ）に一例を示した画像形成装置に対応する印刷設定画面に表示される印刷設定も共有される。さらに、同じ画像形成装置の登録情報を各ユーザが個別に登録することがないため、後述する画像形成装置の更新処理にて最初に登録したユーザ”Ｐ−ＳｅｒｖｉｃｅＭａｎａｇｅｒ”のみを、登録済みの画像形成装置の登録情報として更新するだけで良い。
【００５４】
プリンタ情報提示部７０３は、Ｗｅｂブラウザ３０４からの一覧リスト取得要求を受けたことに応じて、一覧リストをＷｅｂブラウザ３０４に送信する。なお、プリンタ情報提示部７０３は、ユーザに紐づいてプリンタ情報格納部７０２に保存されているユーザが利用可能な画像形成装置の一覧リストを生成する。また、プリンタ情報提示部７０３は、一覧リストからユーザが選択した画像形成装置に対応するシンボルのＳＰＩＤを受信する。なお、シンボルとは、一覧リストに表示される画像形成装置のアイコンのことを指す。プリンタ情報提示部７０３は、受信したＳＰＩＤを基にプリンタ情報格納部７０２が格納している画像形成装置１０１の登録情報を特定し、印刷設定画面を生成し、生成した印刷設定画面をＷｅｂブラウザ３０４へ送信する。プリンタ情報格納部７０２は、画像形成装置１０１の登録情報から図８（ｂ）に示す印刷設定画面を生成する。図８（ｂ）に示すように、プリンタ情報格納部７０２は、印刷サービス３０３が処理可能な印刷設定しか選択できないように印刷設定画面を生成する。
【００５５】
印刷指示受付部７０４は、印刷設定画面を介して設定された印刷設定と、ＳＰＩＤをＷｅｂブラウザ３０４から受信する。また、印刷指示受付部７０４は、Ｗｅｂブラウザ３０４がリダイレクトの指示に基づいてアクセスしてきた際に、ユーザが印刷を指示したコンテンツを識別するためのコンテンツ識別情報を受信する。
【００５６】
印刷データ生成部７０５は、印刷指示受付部７０４からコンテンツ識別情報を受信し、受信したコンテンツ識別情報を基にＷｅｂアプリケーション３０５から印刷対象となるコンテンツを取得する。また、印刷データ生成部７０５は、印刷指示受付部７０４からユーザが入力した印刷設定、およびユーザが選択した画像形成装置に対応するＳＰＩＤを受信する。また、印刷データ生成部７０５は、Ｗｅｂアプリケーション３０５から取得したコンテンツと印刷設定を基に、コンテンツを印刷データへ変換する印刷データ変換処理を行う。
【００５７】
制御部７０６は、印刷データ生成部７０５から印刷データ、印刷設定、ＳＰＩＤを取得する。印刷通信モジュールＡ７０７は、印刷中継サーバ１０２内の中継仮想プリンタ３１２が有する印刷通信モジュールＡ’６０１と通信を行うことが可能であり、２者間のデータ通信のインターフェースである。印刷通信モジュールＡ７０７は印刷ジョブ通知部７１０を有する。
【００５８】
印刷データ格納部７０８は、制御部７０６から印刷データを受信し格納する。印刷設定情報格納部７０９は、制御部７０６から印刷設定を受信し格納する。なお、印刷データ格納部７０８、および印刷設定情報格納部７０９は、制御部７０６からの格納指示を受信し格納処理を行う。制御部７０６は、印刷データ格納部７０８、および印刷設定情報格納部７０９から格納が終了した旨を受信したことに応じて、印刷ジョブ通知部７１０に通知情報を送るように指示をする。
【００５９】
以下、本発明の実施例１に係るコンテンツ印刷システムの画像形成装置１０１を印刷サービス３０３に登録する処理の各ステップついて、図１乃至図１５を用いて具体的に説明する。
【００６０】
［印刷サービスへ画像形成装置の登録］
ＵｓｅｒＡが、Ｗｅｂブラウザ３０４を介して、本発明の実施例１に係る画像形成装置１０１にある印刷制御ソフトウェア３０１にアクセスし、中継仮想プリンタ管理サービス３０２と連携して印刷サービス３０３に画像形成装置を登録する。図１３は、印刷サービス３０３への画像形成装置１０１の登録処理の流れの概要を示すシーケンス図である。以下、図３乃至図１３を用いて説明する。
【００６１】
ステップＳ１０１において、ＵｓｅｒＡが、Ｗｅｂブラウザ３０４を起動し、ＵＲＬを入力するなどして印刷制御ソフトウェア３０１にアクセスを指示する。続いて、ステップＳ１０２において、該Ｓ１０１によりＷｅｂブラウザ３０４がＵｓｅｒＡの指示を受け、印刷制御ソフトウェア３０１にリクエストを送信し、ＵＩ画面を要求する。
【００６２】
続いて、ステップＳ１０３において、Ｓ１０２によりＷｅｂブラウザ３０４から受信したＵＩ画面の要求を受けると、印刷制御ソフトウェア３０１の表示部４０１は、印刷制御ソフトウェア３０１の図示しないトップページを返し、Ｗｅｂブラウザ３０４に表示する。この際、表示部４０１は、ＵｓｅｒＡが画像形成装置１０１にログインしていないと判断した場合、ログイン情報を入力するためのコントロールを有したトップページをＷｅｂブラウザ３０４に返し、表示する。なお、画像形成装置１０１にログイン済みか否かを判断する手段は問わない。
【００６３】
続いて、ステップＳ１０４において、ＵｓｅｒＡは、Ｓ１０３によりＷｅｂブラウザ３０４に表示されたログイン情報を入力するためのコントロールを有したトップページに、ログイン情報を入力する。続いて、ステップＳ１０５において、Ｓ１０４によりＷｅｂブラウザ３０４がＵｓｅｒＡの指示を受け、印刷制御ソフトウェア３０１にＵｓｅｒＡのログイン情報を送信し、画像形成装置へのログインを要求する。続いて、ステップＳ１０６において、Ｓ１０５によりログイン要求を受けた印刷制御ソフトウェア制御部４０２が、受信したログイン情報を用いて画像形成装置１０１にログインできるユーザであるか否かを確認する。
【００６４】
続いて、ステップＳ１０７において、Ｓ１０６によりＵｓｅｒＡのログイン成功を確認すると、印刷制御ソフトウェア制御部４０２はユーザ権限管理部４１１にＵｓｅｒＡの権限情報の取得を依頼する。続いて、ステップＳ１０８において、Ｓ１０７によりＵｓｅｒＡの権限情報の取得指示を受信したユーザ権限管理部４１１は、印刷制御ソフトウェア制御部４０２にＵｓｅｒＡの権限情報を返す。ここで、ＵｓｅｒＡの権限情報とは、先述した図１０（ａ）におけるユーザに関する情報（４５２）、およびユーザの権限に応じてユーザが利用可能な画像形成装置１０１の印刷機能（４５３）等を指す。なお、ＵｓｅｒＡの権限情報として、ユーザに関する情報、ユーザが利用可能な印刷機能以外の情報が含まれていても構わない。
【００６５】
続いて、ステップＳ１０９において、Ｓ１０６、およびＳ１０８によりＵｓｅｒＡのログインの可否、およびＵｓｅｒＡの権限情報を取得した結果を受けたことに応じて、表示部４０１は、印刷制御ソフトウェア３０１のＵＩ画面を生成し、Ｗｅｂブラウザ３０４に表示する。先述の通り、Ｗｅｂブラウザ３０４を介して印刷制御ソフトウェア３０１にアクセスした際に表示されるＵＩ画面の一例が、図７である。続いて、ステップＳ１１０において、ＵｓｅｒＡは、Ｓ１０９によりＷｅｂブラウザ３０４に表示された印刷制御ソフトウェア３０１のＵＩ画面を操作し、印刷サービス３０３への画像形成装置１０１の登録を指示する。続いて、ステップＳ１１１において、Ｓ１１０によりＷｅｂブラウザ３０４がＵｓｅｒＡの指示を受け、印刷制御ソフトウェア３０１にＵｓｅｒＡの権限に応じて利用可能な画像形成装置１０１の印刷機能を含んだ登録情報とともに、印刷サービス３０３へ登録要求を送信する。
【００６６】
続いて、ステップＳ１１２において、Ｓ１１１により印刷サービス３０３への登録要求を受けた印刷制御ソフトウェア３０１が、印刷中継サーバ１０２に、画像形成装置１０１を印刷サービス３０３に登録するように依頼する。本ステップについて、図１４を用いて、特に印刷制御ソフトウェア３０１、および印刷中継サーバ１０２内の中継仮想プリンタ管理サービス３０２の処理について詳細を後述する。続いて、ステップＳ１１３において、Ｓ１１２により印刷制御ソフトウェア３０１からの依頼を受けた印刷中継サーバ１０２は、印刷サービス３０３にＵｓｅｒＡの権限に応じて利用可能な印刷機能を反映した画像形成装置１０１の情報を登録する。本ステップについて、図１５を用いて、特に印刷中継サーバ１０２内の中継仮想プリンタ管理サービス３０２、中継仮想プリンタ３１２、および印刷サービス３０３の処理について詳細を後述する。
【００６７】
続いて、ステップＳ１１４において、Ｓ１１３により印刷サービス３０３に画像形成装置１０１の情報を登録した結果を受けると、ステップＳ１１５において、印刷中継サーバ１０２は画像形成装置１０１の登録結果を管理する。より具体的には、印刷中継サーバ１０２内の中継仮想プリンタ管理サービス３０２が有する制御部５０２が、印刷サービス３０３より受信した印刷サービス３０３内で画像形成装置１０１を特定する情報であるＳＰＩＤを取得する。更に、制御部５０２は、中継仮想プリンタ管理部５０５より、画像形成装置１０１に対応する中継仮想プリンタ３１２を特定するＶＰＩＤを取得する。次に、制御部５０２は、プリンタ情報管理部５０３に印刷サービス３０３に登録した画像形成装置１０１の情報を格納するよう指示する。上述した通り、図１１（ａ）は、プリンタ情報管理部５０３が格納した印刷サービス３０３に登録した画像形成装置の情報の一例である。
【００６８】
続いて、ステップＳ１１６において、該Ｓ１１４により受信した印刷サービス３０３への画像形成装置１０１の登録結果を、制御部５０２が印刷制御ソフトウェア３０１に返信する。続いて、ステップＳ１１７において、Ｓ１１６により印刷サービス３０３への画像形成装置１０１の登録が成功したことを確認する。そして、印刷制御ソフトウェア制御部４０２は、登録部４０３に画像形成装置１０１を印刷サービス３０３に登録済みであることを保存し、管理する。具体的には、図１１（ｂ）のように、ユーザの権限を特定する文字列と、印刷サービス３０３にユーザの権限に応じて利用可能な印刷機能を有する画像形成装置１０１を登録済みか否かを紐づけて管理する。続いて、ステップＳ１１８において、該Ｓ１１７により受信した印刷サービス３０１への画像形成装置１０１の登録結果を受け、表示部４０１がＵＩ画面を生成し、Ｗｅｂブラウザ３０４に表示する。
【００６９】
［中継仮想プリンタ管理サービスへ画像形成装置の登録依頼］
Ｓ１１２において、印刷制御ソフトウェア３０１が、印刷中継サーバ１０２内の中継仮想プリンタ管理サービス３０２に、画像形成装置１０１を印刷サービス３０３に登録するように依頼する。図１４は、中継仮想プリンタ管理サービス３０２に対する画像形成装置１０１の登録依頼処理の流れを示すフローチャートである。以下、図３乃至図１４を用いて詳細に説明する。
【００７０】
ステップＳ１２０１において、印刷制御ソフトウェア制御部４０２は、前記Ｓ１０８で取得したＵｓｅｒＡの権限情報より、権限を特定する情報を抽出する。例えば、”ＡｄｍｉｎＵｓｅｒ”、”ＧｅｎｅｒａｌＵｓｅｒ”といったＵｓｅｒＡが有する権限を特定する文字列であり、より詳細には、ＵｓｅｒＡが所属する権限グループを表現する文字列である。次に、登録部４０３は、ＵｓｅｒＡの権限に応じて利用可能な印刷機能を有する画像形成装置１０１が印刷サービス３０３に登録されているか確認する。図１１（ｂ）に示した通り、登録部４０３は、ユーザの権限を特定する文字列と、印刷サービス３０３にユーザの権限に応じて利用可能な印刷機能を有する画像形成装置１０１を登録済みか否かを紐づけて管理している。登録部４０３は、この印刷サービス３０３に登録済みの画像形成装置１０１の管理結果より、ＵｓｅｒＡの権限に応じて利用可能な印刷機能を有する画像形成装置１０１が印刷サービス３０３に登録されているか否かを確認する。
【００７１】
続いて、ステップＳ１２０２において、該Ｓ１２０１により登録部４０３が印刷サービス３０３にＵｓｅｒＡの権限に応じて利用可能な印刷機能を有する画像形成装置１０１が登録されているか否かの結果を確認する。続いて、ステップＳ１２０３において、該Ｓ１２０２により未登録であることを確認した印刷制御ソフトウェア制御部４０２は、印刷サービス３０３にＵｓｅｒＡの権限に応じて利用可能な印刷機能を有する画像形成装置１０１を登録するための登録情報を生成する。先述の通り、図１０（ａ）は登録情報の一例である。ここで、中継仮想プリンタ管理サービス３０２へアクセスするためのユーザ情報は、印刷制御ソフトウェア３０１の表示部４０１が表示するＵＩ画面から入力しても良いし、印刷制御ソフトウェア３０１内にユーザに紐づけて保存しておいても良い。
【００７２】
続いて、ステップＳ１２０４において、Ｓ１２０３により生成した登録情報を、登録部４０３が中継仮想プリンタ管理サービス３０２に送信し、印刷サービス３０３へＵｓｅｒＡの権限に応じて利用可能な印刷機能を有する画像形成装置１０１の登録を依頼する。ここで、印刷サービス３０３へアクセスするためのユーザ情報は、印刷制御ソフトウェア３０１の表示部４０１が表示するＵＩ画面から入力しても良いし、印刷制御ソフトウェア３０１、または中継仮想プリンタ管理サービス３０２内にユーザに紐づけて保存しておいても良い。更に、登録部４０３は、画像形成装置１０１を登録する印刷サービス３０３を特定する情報、例えば印刷サービス３０３の名称”ＰｒｉｎｔＳｅｒｖｉｃｅ  Ａ”を、登録情報と共に中継仮想プリンタ管理サービス３０２に送信する。
【００７３】
続いて、ステップＳ１２０５において、該Ｓ１２０４により送信された登録情報を中継仮想プリンタ管理サービス３０２の要求受信部５０１が受信すると、制御部５０２は登録情報の内容を解析する。より具体的には、印刷サービス３０３に画像形成装置１０１を登録するために必要な情報が全て含まれているか否かを確認する。続いて、ステップＳ１２０６において、該Ｓ１２０５により登録情報を解析した結果、正常であることを制御部５０２が確認すると、印刷サービス３０３に画像形成装置１０１を登録するための前処理を終え、前記Ｓ１１３の画像形成装置の登録実行処理を実行する。
【００７４】
続いて、ステップＳ１２０７において、Ｓ１２０２により登録済みであることを確認した場合次の処理を行う。印刷制御ソフトウェア制御部４０２は、登録部４０３を介して、ＵｓｅｒＡに登録済みの画像形成装置１０１を印刷サービス３０３に共有するように中継仮想プリンタ管理サービス３０２に依頼する。ここで、印刷サービス３０３へアクセスするためのユーザ情報は、印刷制御ソフトウェア３０１の表示部４０１が表示するＵＩ画面から入力しても良いし、印刷制御ソフトウェア３０１、または中継仮想プリンタ管理サービス３０２内にユーザに紐づけて保存しておいても良い。
【００７５】
依頼を受けた制御部５０２は、印刷サービス３０３に画像形成装置１０１を登録するための前処理を終え、前記Ｓ１１３の画像形成装置の登録実行処理を実行する。Ｓ１２０６において、制御部５０２が受信した登録情報を解析した結果、正常でない場合、Ｓ１２０８に進みエラー処理を行い、画像形成装置１０１の登録依頼処理を終了する。
【００７６】
［印刷サービスへ画像形成装置の登録実行］
Ｓ１１３、およびＳ１１４において、Ｓ１１２により印刷制御ソフトウェア３０１からの依頼を受けた印刷中継サーバ１０２内の中継仮想プリンタ管理サービス３０２は、中継仮想プリンタ３１２を生成する。続いて、印刷サービス３０３にＵｓｅｒＡの権限に応じて利用可能な印刷機能を反映した画像形成装置１０１の情報を登録する。
【００７７】
図１５は、印刷サービス３０３に対する画像形成装置１０１の登録実行処理の流れを示すフローチャートである。以下、図３乃至図１５を用いて詳細に説明する。ステップＳ１３０１において、中継仮想プリンタ管理サービス３０２の制御部５０２は、印刷サービスプリンタ生成部５０４に指示し、中継仮想プリンタ管理サービス３０２固有のユーザ情報を用いて、印刷サービス３０３にログインを試みる。中継仮想プリンタ管理サービス３０２固有のユーザ情報とは、印刷サービス３０３に画像形成装置１０１を登録し、情報を更新するためにのみ使われる印刷サービス３０３に登録されているユーザであり、印刷サービスプリンタ生成部５０４に保持されている。
【００７８】
続いて、ステップＳ１３０２において、Ｓ１３０１により中継仮想プリンタ管理サービス３０２からのログイン要求を印刷サービス３０３のプリンタ情報登録部７０１が処理する。そして、プリンタ情報登録部７０１は、中継仮想プリンタ管理サービス３０２固有のユーザ情報でログイン可能か否かを確認する。続いて、ステップＳ１３０３において、Ｓ１３０２により印刷サービス３０３がログイン処理した結果を受信した制御部５０２は、ログインが失敗した場合、ステップＳ１３１５に進み、エラー処理を行い、登録処理を終了する。
【００７９】
続いて、ステップＳ１３０４において、Ｓ１３０３により印刷サービス３０３へのログイン処理が成功した場合、制御部５０２は、Ｓ１２０４より新規に画像形成装置１０１を印刷サービス３０３に登録するか否かを判断する。新規に画像形成装置１０１を印刷サービス３０３に登録しない場合、制御部５０２は、Ｓ１２０７より登録済みの画像形成装置１０１を共有する依頼を受けていることになる。続いて、ステップＳ１３０５において、Ｓ１３０４により新規に画像形成装置１０１を印刷サービス３０３に登録する場合、中継仮想プリンタ管理部５０５は、Ｓ１２０４により受信した印刷サービス３０３を特定する情報を使い、印刷サービス３０３と通信するための印刷通信モジュールＡ’６０１をインターフェース情報管理部５０６から取得する。
【００８０】
続いて、ステップＳ１３０６において、中継仮想プリンタ管理部５０５は、中継仮想プリンタ３１２を生成し、該Ｓ１３０５により取得した印刷通信モジュールＡ’６０１を設定する。また、中継仮想プリンタ３１２は、画像形成装置１０１と通信するための印刷通信モジュールＢ  ６０２を設定される。これにより、中継仮想プリンタ３１２は、印刷サービス３０３から印刷ジョブの通知待ち状態になる。続いて、ステップＳ１３０７において、中継仮想プリンタ管理部５０５は、正常に中継仮想プリンタ３１２が生成されたことを確認すると、ステップＳ１３０８に処理を移す。該Ｓ１３０８において、中継仮想プリンタ管理部５０５は、中継仮想プリンタ３１２を識別するための識別情報であるＶＰＩＤ（Ｖｉｒｔｕａｌ  Ｐｒｉｎｔｅｒ  ＩＤ）を発行し、制御部５０２に通知する。
【００８１】
続いて、ステップＳ１３０９において、Ｓ１３０３により新規に画像形成装置１０１を印刷サービス３０３に登録する場合、制御部５０２は印刷サービスプリンタ生成部５０４に、中継仮想プリンタ管理サービス３０２固有のユーザ情報で画像形成装置１０１の登録を指示する。ここで、印刷サービス３０３に登録する際に用いる画像形成装置１０１の情報は、Ｓ１２０３において、印刷制御ソフトウェア制御部４０２が生成したＵｓｅｒＡの権限に応じて利用可能な印刷機能を有する画像形成装置１０１の登録情報である。
【００８２】
続いて、ステップＳ１３１０において、Ｓ１３０９により中継仮想プリンタ管理サービス３０２から指示を受けたプリンタ情報登録部７０１は、受信した登録情報を基に、中継仮想プリンタ管理サービス３０２固有のユーザに紐づけて画像形成装置１０１を保存する。この際、プリンタ情報登録部７０１は、プリンタ情報格納部７０２に登録した画像形成装置１０１を特定するためのＳＰＩＤを発行し、紐づけて保存する。プリンタ情報登録部７０１は、登録が成功した結果として、画像形成装置１０１を特定するためのＳＰＩＤを中継仮想プリンタ管理サービス３０２に返信する。
【００８３】
続いて、ステップＳ１３１１において、Ｓ１３１０により印刷サービス３０３への画像形成装置１０１の登録処理結果を受信した制御部５０２は、登録処理が失敗した場合、Ｓ１３１５に進み、エラー処理を行い、登録処理を終了する。続いて、ステップＳ１３１２において、Ｓ１３１１により印刷サービス３０３への画像形成装置１０１の登録処理が成功した場合、制御部５０２は、印刷サービス３０３から受信した画像形成装置１０１を特定するＳＰＩＤを指定する。そして、ＵｓｅｒＡが画像形成装置１０１を共有するように指示する。より具体的には、Ｓ１２１３により制御部５０２が受信したＵｓｅｒＡが入力した印刷サービス３０３におけるユーザ情報を用いて、印刷サービス３０３に登録した画像形成装置１０１を共有するように指示する。
【００８４】
続いて、ステップＳ１３１３において、Ｓ１３１２により中継仮想プリンタ管理サービス３０２から指示を受けたプリンタ情報登録部７０１は、受信したＵｓｅｒＡの印刷サービス３０３におけるユーザ情報、及びＳＰＩＤを用いてＵｓｅｒＡに登録した画像形成装置１０１を共有する。続いて、ステップＳ１３１４において、Ｓ１３１３により印刷サービス３０３への画像形成装置１０１の共有処理結果を受信した制御部５０２は、共有処理が失敗した場合、Ｓ１３１５に進み、エラー処理を行う。上述したＳ１１３の画像形成装置の登録実行処理が正常に終了した場合、Ｓ１１５に進む。
【００８５】
このようにして、ＵｓｅｒＡの権限に応じて利用可能な印刷機能を有する画像形成装置１０１を印刷サービス３０３に登録することで、ＵｓｅｒＡは利用可能な印刷機能のみを指定して印刷することができる。さらに、印刷中継サーバ１０２内に画像形成装置１０１に対応した中継仮想プリンタ３１２を生成することで、印刷サービス３０３にて生成される印刷ジョブを中継仮想プリンタ３１２に留め置くことが可能となる。
【００８６】
また、一旦中継仮想プリンタ管理サービス３０２に固有のユーザ情報を用いて印刷サービス３０３に画像形成装置１０１を登録することで、画像形成装置の構成変更時等に、自動的に画像形成装置１０１の情報を更新することが可能となる。さらに、複数のユーザで共有している画像形成装置１０１を、各ユーザが個別に印刷サービス３０３に登録する必要がないため、画像形成装置の構成変更時、中継仮想プリンタ管理サービス３０２固有のユーザに対してのみ印刷機能の更新を行えば良い。これにより、画像形成装置１０１、中継仮想プリンタ管理サービス３０２、および印刷サービス３０３における不要な処理、およびネットワーク負荷をかけずに、印刷サービス３０３に登録された画像形成装置１０１の情報を更新することができる。
【００８７】
以下、本発明の実施例１に係るコンテンツ印刷システムにおいて、留め置きを指示する際に用いるブックマークレット３６５をＷｅｂブラウザ３０４に登録する処理の各ステップについて、図３乃至図１６を用いて具体的に説明する。
【００８８】
［Ｗｅｂブラウザにブックマークレットを登録］
図８（ａ）に示した通り、ＵｓｅｒＡはＷｅｂブラウザ３０４に表示されたコンテンツ３６２を印刷中継サーバ１０２にて留め置き対象の印刷ジョブとして保持するために、ブックマークレット３６５をＷｅｂブラウザ３０４に登録する必要がある。図１６は、ＵｓｅｒＡが印刷中継サーバ１０２に印刷ジョブの留め置きを指示するために利用する際に用いるブックマークレット３６５をＷｅｂブラウザ３０４に登録する処理の流れを示すフローチャートである。以下、図３乃至図１７を用いて説明する。
【００８９】
ステップＳ２０１において、ＵｓｅｒＡがＷｅｂブラウザ３０４を起動し、ＵＲＬを入力するなどして印刷中継サーバ３０２にアクセスを指示する。すると、Ｗｅｂブラウザ３０４が印刷中継サーバ３０２内の中継仮想プリンタ管理サービス３０２にリクエストを送信し、ＵＩ画面を要求する。
【００９０】
続いて、ステップＳ２０２において、Ｓ２０１によりＷｅｂブラウザ３０４から受信したＵＩ画面の要求を受けると、中継仮想プリンタ管理サービス３０２内の要求受信部５０１は制御部５０２に通知する。制御部５０２は、インターフェース情報管理部５０６より、連携可能な印刷サービス３０３のリスト、および印刷サービス３０３から受信した印刷ジョブを中継仮想プリンタ３１２にて留め置きするためのブックマークレットを収集する。
【００９１】
図９（ｂ）は、図８（ａ）のブックマークレット３６５を構成するスクリプトの一例である。ブックマークレット３６５は、ＪａｖａｓｃｒｉｐｔのようなＷｅｂブラウザ３０４が解釈可能なスクリプト３８０によって構成される。印刷中継サーバ１０２に対する留め置き指示送信スクリプト３９１は、スクリプト３９０の実体であり、Ｗｅｂブラウザ３０４で表示しているコンテンツ３６２のＵＲＩ“ｌｏｃａｔｉｏｎ．ｈｒｅｆ”を、印刷中継サーバ１０２のＵＲＩ“ｈｔｔｐ：／／ｗｗｗ．ａｂｃ．ｃｏｍ／ｄｅｆｇｈ／ＱｕｅｕｅＰｒｉｎｔＪｏｂ．ａｓｐｘ”に対して送信することを示している。より詳細には、Ｗｅｂブラウザ３０４は、コンテンツのＵＲＩ  ３６３“ｈｔｔｐ：／／ｗｗｗ．ｘｘｘｘ．ｃｏｍ／Ｄｏｃ？ｄｏｃｉｄ＝ａｂｃｄｅｆ０１２３４５６”を、印刷中継サーバ１０２内の中継仮想プリンタ管理サービス３０２に送信することになる。これにより、印刷サービス３０３の印刷ジョブを中継仮想プリンタ３１２が受信した際、印刷ジョブの情報として印刷対象となるコンテンツのＵＲＩが、ブックマークレットにより送信されたコンテンツのＵＲＩ  ３６３と同じであれば、留め置き対象の印刷ジョブとして中継仮想プリンタ３１２にて保持することが可能となる。
【００９２】
なお、本実施例においては、Ｗｅｂブラウザ３０４に表示しているコンテンツのＵＲＩを印刷中継サーバ１０２に送信するブックマークレットについて説明を行ったが、それ以外の機能であっても構わない。例えば、印刷サービス３０３の印刷ジョブの情報に、印刷対象のコンテンツの名前等が含まれている場合、印刷対象のコンテンツの名前を取得して、中継仮想プリンタ管理サービス３０２に送信するようなブックマークレットがあっても良い。また、複数の異なる印刷サービス３０３に柔軟に対応するための構成として、コンテンツのＵＲＩを受信した印刷中継サーバ１０２において、更にコンテンツに対するプロパティー情報を取得するなどの処理を実行しても構わない。即ち、ブックマークレットにより送信される情報はコンテンツを識別可能な情報であればいずれの情報であってもよく、印刷中継サーバ１０２が取得したジョブの情報と比較することが可能であれば何でもよい。例えば、ジョブのＩＤ、またはドキュメントＩＤであり、必ずしも送信される情報と完全一致する情報でなくとも、特定するために用いる情報であっても良い。このように、コンテンツを識別するために用いられる情報をコンテンツの識別情報と称する。
【００９３】
続いて、ステップＳ２０３において、Ｓ２０２により制御部５０２が収集した印刷サービス３０３のリスト、およびブックマークレットを用いて、Ｗｅｂブラウザ３０４に返すＵＩを生成する。図９（ａ）は、ユーザがＷｅｂブラウザ３０４を介して中継仮想プリンタ管理サービス３０２にアクセスした際に表示されるＵＩ画面の一例である。印刷中継サーバ１０２の設定メニューの一覧を表示する印刷中継サーバメニュー一覧３８１、印刷中継サーバ１０２が連携可能な印刷サービス３０３の一覧を表示する印刷中継サーバ連携表示エリア３８２から構成される。さらに、印刷サービス表示エリア３８２には、印刷サービス３０３の印刷ジョブを、印刷中継サーバ１０２にて受信した後に留め置くように指示するためのブックマークレットが埋め込まれた印刷サービス連携スクリプト３８３が含まれている。なお、図９で示した画面に関して、その形態、エリアの構成、及びコントロールは限定されたものではなく、必要となる機能を実現することができれば、どのような形態であっても構わない。
【００９４】
続いて、ステップＳ２０４において、Ｗｅｂブラウザ３０４は、該Ｓ２０３により中継仮想プリンタ管理サービス３０２が生成したＵＩを受信し、表示する。続いて、ステップＳ２０５において、ＵｓｅｒＡが、Ｗｅｂブラウザ３０４に表示された印刷サービス連携スクリプト３８３を選択し、ブックマークに登録するように操作する。続いて、ステップＳ２０６において、図８（ａ）に示したように、Ｗｅｂブラウザ３０４内にあるブックマークリスト３６４に、印刷サービス３０３の印刷ジョブを、留め置くように指示するためのブックマークレット３６５が登録される。
【００９５】
以下、本発明の実施例１に係るコンテンツ印刷システムにおいて、ＵｓｅｒＡがＷｅｂブラウザ３０４を介してＷｅｂアプリケーション３０５に保存されているコンテンツを画像形成装置１０１に印刷する処理の各ステップについて、図１乃至図２０を用いて具体的に説明する。
【００９６】
［印刷中継サーバにて印刷ジョブを取得］
ＵｓｅｒＡが、Ｗｅｂブラウザ３０４を介してＷｅｂアプリケーション３０５にアクセスし、表示されたコンテンツの印刷を指示すると、印刷中継サーバ１０２内の中継仮想プリンタ３１２が印刷サービス３０３から印刷ジョブを取得する。ここで、ＵｓｅｒＡは、印刷サービス３０３から取得した印刷ジョブを中継仮想プリンタ３１２に留め置くことができる。
【００９７】
図１７は、ＵｓｅｒＡが印刷を指示した後、中継仮想プリンタ３１２が印刷サービス３０３から印刷ジョブを取得する処理の流れの概要を示すシーケンス図である。以下、図３乃至図１７を用いて説明する。ステップＳ３０１において、ＵｓｅｒＡはＷｅｂブラウザ３０４を起動し、ＵＲＬを入力するなどしてＷｅｂアプリケーション３０５にアクセスし、対象となるコンテンツを表示するように指示する。続いて、ステップＳ３０２において、該Ｓ３０１によりＷｅｂブラウザ３０４がＵｓｅｒＡの指示を受け、Ｗｅｂアプリケーション３０５にコンテンツの表示を要求する。
【００９８】
ステップＳ３０３において、該Ｓ３０２によりＷｅｂブラウザ３０４から受信したコンテンツの要求を受けると、Ｗｅｂアプリケーション３０５は、要求されたコンテンツに対応するコンテンツの画面をＷｅｂブラウザ３０４に送信する。上述した通り、図８（ａ）は、Ｗｅｂアプリケーション３０５が提供する文書作成サービスの画面の一例である。ステップＳ３０４において、Ｓ３０３により表示されたＷｅｂアプリケーション３０５が保持するコンテンツ３６２に対応する印刷ジョブを中継仮想プリンタ３１２に留め置きたい場合、ＵｓｅｒＡはブックマークレット３６５を選択する。
【００９９】
ステップＳ３０５において、Ｓ３０４によりＷｅｂブラウザ３０４がＵｓｅｒＡの指示を受け、ブックマークレット３６５のスクリプトを実行し、中継仮想プリンタ３１２にコンテンツ３６２に対する印刷ジョブを留め置くように、中継仮想プリンタ管理サービス３０２に指示を送信する。この際、Ｗｅｂブラウザ３０４に表示しているコンテンツ３６２を識別するためのコンテンツのＵＲＩ  ３６３を送信する。ステップＳ３０６において、Ｓ３０５により印刷ジョブの留め置き指示を受信した中継仮想プリンタ管理サービス３０２は、中継仮想プリンタ３１２にコンテンツ３６２に対応する印刷ジョブを留め置くよう指示する。本ステップの詳細なフローについては、図１８を用いて後述する。
【０１００】
ステップＳ３０７において、Ｓ３０６により印刷ジョブの留め置き指示を受信し、中継仮想プリンタ３１２が印刷ジョブを留め置く準備ができたか否かを結果としてＷｅｂブラウザ３０４に送信する。ステップＳ３０８において、ＵｓｅｒＡは、Ｓ３０３により表示されたＷｅｂアプリケーション３０５が保持するコンテンツ３６２を印刷するため、印刷ボタン３６１を選択する。ステップＳ３０９において、Ｓ３０８によりＵｓｅｒＡの指示を受け、Ｗｅｂブラウザ３０４は印刷サービス３０３に登録されている画像形成装置（プリンタ）の一覧ＵＩを要求する。ステップＳ３１０において、Ｓ３０９によりプリンタの一覧ＵＩの要求を受けた印刷サービス３０３は、Ｗｅｂブラウザ３０４を利用しているＵｓｅｒＡに対応するプリンタの一覧ＵＩを、Ｗｅｂブラウザ３０４に送信する。
【０１０１】
ステップＳ３１１において、該Ｓ３１０によりＷｅｂブラウザ３０４に表示されたプリンタの一覧ＵＩに対して、ＵｓｅｒＡはコンテンツ３６２を印刷したいプリンタを選択する。ステップＳ３１２において、Ｓ３１１によりＵｓｅｒＡがプリンタを選択すると、Ｗｅｂブラウザ３０４は選択されたプリンタに対する印刷設定ＵＩを要求する。ステップＳ３１３において、Ｓ３１２によりプリンタの印刷設定ＵＩの要求を受けた印刷サービス３０３は、ＵｓｅｒＡが選択したプリンタの印刷設定ＵＩをＷｅｂブラウザ３０４に送信する。ステップＳ３１４において、Ｓ３１３によりＷｅｂブラウザ３０４に表示されたプリンタの印刷設定ＵＩに対して、ＵｓｅｒＡは印刷設定を選択し印刷の実行を指示する。
【０１０２】
ステップＳ３１５において、Ｓ３１４によりＵｓｅｒＡが印刷実行の指示を受け、Ｗｅｂブラウザ３０４はＵｓｅｒＡが選択した印刷設定を印刷サービス３０３に送信する。ステップＳ３１６において、Ｓ３１５により印刷指示を受けた印刷サービス３０３は、ＵｓｅｒＡが印刷を指示したコンテンツ３６２をＷｅｂアプリケーション３０５から取得し、受信した印刷設定を基に取得したコンテンツを印刷データに変換する。また、印刷サービス３０３は、変換した印刷データと、印刷設定とを組み合わせジョブとする。ステップＳ３１７において、Ｓ３１６により印刷ジョブを生成した印刷サービス３０３は、中継仮想プリンタ３１２に印刷ジョブが生成されたことを通知する。
【０１０３】
ステップＳ３１８において、Ｓ３１７により印刷ジョブの通知を受けた中継仮想プリンタ３１２は、Ｓ３０６により中継仮想プリンタ管理サービス３０２より指示された留め置き対象の印刷ジョブか否か判断する。Ｓ３０６の詳細は図１８を用いて後述する。Ｓ３０６により中継仮想プリンタ管理サービス３０２が、コンテンツ３６２を識別するためのコンテンツのＵＲＩ  ３６３を留め置き対象の印刷ジョブを判断する情報として中継仮想プリンタ３１２に通知する。中継仮想プリンタ３１２内の印刷ジョブ管理部６０５は、コンテンツ３６２の情報を保持する。
【０１０４】
印刷ジョブ通知部６０４は、印刷通知受付部６０３が印刷サービス３０３から印刷ジョブを受信したことの通知を受け、印刷ジョブにコンテンツ３６２を識別するためのコンテンツのＵＲＩ  ３６３、即ちコンテンツ識別情報が含まれているか確認する。印刷ジョブ通知部６０４は、印刷ジョブにコンテンツ３６２の情報が含まれていることを確認すると、そのコンテンツ識別情報と、クライアントから通知されたコンテンツ識別情報が一致するか否かを判断する。一致する場合、印刷中継サーバ１０２内に留め置くべき印刷ジョブと判断され、印刷ジョブ管理部６０５に保存され、留め置かれる。なお、印刷中継サーバ１０２内に留め置かない印刷ジョブは、画像形成装置１０１に通知、もしくは取得され、自動的に画像形成装置１０１にて出力されても構わない。通知とは、印刷サーバ群１０３のメモリに保存された印刷データの保存場所に関する情報（保存場所のＵＲＬ）を画像形成装置１０１に送信することである。取得とは、印刷データを印刷サーバ群１０３から受信し、印刷中継サーバ１０２に留め置くことなく画像形成装置１０１に送信することである。
【０１０５】
なお、本フローでは留め置くことを前提として記載したが、印刷データを留め置く指示を受け付けなかった場合も、留め置かない印刷ジョブの処理と同様の処理が実施される。具体的には、印刷データを印刷サーバから受信したことに応じて印刷データを画像形成装置へ送信する。または、印刷サーバの保存手段に保存された印刷データの保存場所に関する情報を印刷サーバから受信したことに応じて画像形成装置へ送信する。
【０１０６】
［中継仮想プリンタにて印刷ジョブの留め置き指示］
前記Ｓ３０６において、前記Ｓ３０５によりＵｓｅｒＡの指示に従い印刷ジョブの留め置き指示を受信した中継仮想プリンタ管理サービス３０２は、中継仮想プリンタ３１２にコンテンツ３６２に対する印刷ジョブを留め置くように指示をする。図１８は、中継仮想プリンタ管理サービス３０２が、中継仮想プリンタ３１２が留め置き対象であるコンテンツ３６２の印刷ジョブを留め置くように設定する処理の流れを示すフローチャートである。以下、図３乃至図１８を用いて詳細に説明する。
【０１０７】
ステップＳ３１０１において、中継仮想プリンタ管理サービス３０２は、前記Ｓ３０５により送信された印刷ジョブの留め置き指示に含まれるコンテンツ３６２の情報を抽出する。より具体的には、中継仮想プリンタ管理サービス３０２内の要求受信部５０１が、ＵｓｅｒＡが選択してブックマークレット３６５のスクリプトを実行することで送信された印刷ジョブの留め置き指示を受信すると、制御部５０２に通知する。通知を受けた制御部５０２は、コンテンツ３６２を識別するためのコンテンツのＵＲＩ  ３６３を印刷ジョブの留め置きリクエスト内から抽出する。
【０１０８】
ステップＳ３１０２において、制御部５０２は、ＵｓｅｒＡが印刷サービス３０３に登録している画像形成装置（プリンタ）の一覧を取得するように印刷サービスプリンタ生成部５０４に指示する。指示を受けた印刷サービスプリンタ生成部５０４は、印刷サービス３０３にＵｓｅｒＡが登録しているプリンタの一覧取得要求を印刷サービス３０３に送信する。この際、印刷サービスプリンタ生成部５０４が印刷サービス３０３にアクセスするためのユーザ情報は、ＯＡｕｔｈのような認証方式でＷｅｂブラウザ３０４を介してＵｓｅｒＡが入力しても良い。または、ＵｓｅｒＡが印刷サービス３０３にアクセスするためのユーザ情報を中継仮想プリンタ管理サービス３０２内に保持していても構わない。
【０１０９】
ステップＳ３１０３において、Ｓ３１０２によりＵｓｅｒＡが登録したプリンタ一覧取得要求を受け、印刷サービス３０３内のプリンタ情報登録部７０１がＵｓｅｒＡに紐づいたプリンタ一覧を検索するようにプリンタ情報格納部７０２に指示する。プリンタ情報格納部７０２は、図１２（ａ）に示した印刷サービス３０３に登録されたユーザと、ユーザが利用可能な画像形成装置（プリンタ）の情報より、ＵｓｅｒＡに紐づいたプリンタ一覧を検索する。プリンタ情報登録部７０１は、プリンタ情報格納部７０２よりＵｓｅｒＡに紐づいたプリンタ一覧として、プリンタを特定するＳＰＩＤのリストを中継仮想プリンタ管理サービス３０２内の印刷サービスプリンタ生成部５０４に返す。
【０１１０】
ステップＳ３１０４において、印刷サービスプリンタ生成部５０４は、Ｓ３１０３により取得したＵｓｅｒＡが印刷サービス３０３に登録しているプリンタ一覧の情報を制御部５０２に通知する。制御部５０２は、ＵｓｅｒＡが印刷サービス３０３に登録しているプリンタが１つ以上存在するか否かを確認する。Ｓ３１０４により、ＵｓｅｒＡが印刷サービス３０３に登録しているプリンタが存在しない場合、ＵｓｅｒＡの留め置き指示を正常に受け付けられなかったため、ステップＳ３１０９に進みエラー処理を行い、本フローを終了する。
【０１１１】
ステップＳ３１０５において、Ｓ３１０４によりＵｓｅｒＡが印刷サービス３０３に登録しているプリンタが１つ以上存在する場合、制御部５０２は取得したＳＰＩＤから中継仮想プリンタ３１２を特定するＶＰＩＤを取得する。具体的には、制御部５０２は、上述の図１１（ａ）に示したように、プリンタ情報管理部５０３が保持する印刷サービス３０３に登録した画像形成装置１０１の情報よりＳＰＩＤに対応するＶＰＩＤを取得する。
【０１１２】
ステップＳ３１０６により、制御部５０２は、Ｓ３１０５により取得したＶＰＩＤに対応する中継仮想プリンタ３１２に対し、コンテンツ３６２に対応する印刷ジョブを留め置くように中継仮想プリンタ生成部５０５を介して指示する。この際、制御部５０２は、コンテンツ３６２を識別するための情報として、Ｓ３１０１で抽出したコンテンツのＵＲＩ  ３６３を中継仮想プリンタ３１２に通知する。
【０１１３】
ステップＳ３１０７により、中継仮想プリンタ３１２内の印刷ジョブ管理部６０５は、Ｓ３１０６により通知を受けたコンテンツ３６２の情報を保持し、印刷サービス３０３から受信したコンテンツ３６２の情報を有する印刷ジョブを留め置くようにする。これにより、中継仮想プリンタ３１２は、印刷中継サービス３０３から送信される印刷ジョブの内、留め置き対象の印刷ジョブを複数留め置き保存することになる。
【０１１４】
ステップＳ３１０８により、制御部５０２はＳ３１０４により受信したＵｓｅｒＡが登録したプリンタ全てに対して、印刷ジョブの留め置き指示、および留め置き対象のコンテンツ３６２の情報を中継仮想プリンタ３１２に通知し終えたか否かを確認する。制御部５０２は、印刷ジョブの留め置き指示、及び留め置き対象のコンテンツ３６２の情報を全ての中継仮想プリンタ３１２に通知していない場合、Ｓ３１０５に戻る。通知し終えた場合は、印刷ジョブ留め置き設定処理を終了する。このようにして、印刷ジョブを留め置くために、印刷サービスに新たに画像形成装置を登録することなく、対象のコンテンツに対する印刷ジョブを印刷中継サーバ１０２に留め置くことが可能となる。
【０１１５】
［留め置き印刷ジョブを印刷］
ＵｓｅｒＡが、画像形成装置１０１を介して印刷中継サーバ１０２にアクセスし、印刷中継サーバ１０２に留め置かれている印刷ジョブを取得し、画像形成装置１０１に出力する。図１９は、ＵｓｅｒＡが画像形成装置１０１を操作して、中継仮想プリンタ３１２に留め置かれた印刷ジョブを出力する処理の流れを示すシーケンス図である。以下、図３乃至図２０を用いて説明する。
【０１１６】
ステップＳ４０１において、ＵｓｅｒＡは画像形成装置１０１の図示しない操作パネルを介して、印刷制御ソフトウェア３０１にログインする。ステップＳ４０２において、印刷制御ソフトウェア３０１は、画像形成装置１０１の操作パネルに印刷中継サーバ１０２に留め置かれているＵｓｅｒＡの印刷ジョブを表示するため、中継仮想プリンタ３１２の情報を中継仮想プリンタ管理サービス３０２に要求する。より具体的には、印刷制御ソフトウェア３０１内の登録部４０３が、印刷制御ソフトウェア制御部４０２の指示を受けて、画像形成装置１０１を特定するＩＤを送信し、中継仮想プリンタ管理サービス３０２に中継仮想プリンタ３１２の情報を要求する。ここで、中継仮想プリンタ管理サービス３０２へアクセスするためのユーザ情報は、印刷制御ソフトウェア３０１の表示部４０１が表示するＵＩ画面から入力しても良いし、印刷制御ソフトウェア３０１内にユーザに紐づけて保存しておいても良い。
【０１１７】
ステップＳ４０３において、Ｓ４０２により印刷制御ソフトウェア３０１の要求を受けると、中継仮想プリンタ管理サービス３０２内の要求受信部５０１が制御部５０２に通知する。次に、制御部５０２は、プリンタ情報管理部５０３に画像形成装置１０１に対応する中継仮想プリンタ３１２を特定するＶＰＩＤを取得する。より具体的には、制御部５０２は、上述の図１１（ａ）に示したように、プリンタ情報管理部５０３が保持する画像形成装置１０１を特定するＩＤに対応するＶＰＩＤを取得する。
【０１１８】
ステップＳ４０４において、Ｓ４０３により画像形成装置１０１に対応する中継仮想プリンタ３１２を特定するＶＰＩＤを、制御部５０２は要求受信部５０１を介して印刷制御ソフトウェア３０１に送信する。ステップＳ４０５において、Ｓ４０４により受信したＶＰＩＤを用いて、印刷制御ソフトウェア３０１内の印刷通知受付部４０４が、印刷ジョブの一覧を中継仮想プリンタ３１２に要求する。
【０１１９】
ステップＳ４０６において、Ｓ４０５により印刷制御ソフトウェア３０１の要求を受けると、印刷ジョブ通知部６０４は、印刷ジョブ管理部６０５に留め置かれ保存されているＵｓｅｒＡの印刷ジョブの一覧を送信する。印刷制御ソフトウェア制御部４０２は、取得した印刷ジョブの一覧を、表示部４０１を介して画像形成装置１０１の操作パネル上に表示する。ここで、図２０は、中継仮想プリンタ３１２が印刷制御ソフトウェア制御部４０２に送信する印刷ジョブ８００の一例を示しており、ＸＭＬで印刷ジョブの内容を表現している。印刷ジョブ８００は、印刷ジョブ８００を特定するジョブＩＤ  ８１０、印刷対象であるコンテンツ３６２の名前、印刷ジョブの状態８１２、印刷ジョブの印刷データの格納場所８１３、印刷ジョブの印刷設定の格納場所８１４が含まれている。なお、ここで、印刷ジョブを表現する手段は、これに限定するものではなく、ＪＳＯＮなどの他の記述手段であっても良いし、印刷ジョブに含まれる情報として印刷ジョブを投入したユーザ情報等、他の情報が含まれていても良い。
【０１２０】
中継仮想プリンタ３１２より取得した印刷ジョブには、印刷設定の格納場所、および印刷データの格納場所が含まれている。ステップＳ４０７において、ＵｓｅｒＡは、画像形成装置１０１の操作パネルに表示された印刷ジョブを選択し、印刷を指示する。ステップＳ４０８において、ＵｓｅｒＡが印刷ジョブを指定して印刷を指示すると、印刷制御ソフトウェア３０１内の印刷通知受付部４０４は、指定された印刷ジョブを確認し、夫々の情報を印刷設定取得部４０５、印刷データ取得部４０６へ通知する。より具体的には、印刷通知受付部４０４は、印刷ジョブ８００に含まれる印刷設定の格納場所８１４を印刷設定取得部４０５に、印刷データの格納場所８１３を印刷データ取得部４０６に通知する。
【０１２１】
ステップＳ４０９において、Ｓ４０８により印刷設定の格納場所８１４の通知を受けた印刷設定取得部４０５は、印刷設定の格納場所８１４に記載されたＵＲＩにアクセスし、印刷サービス３０３に印刷設定の取得要求を送信する。ステップＳ４１０において、印刷サービス３０３内の印刷設定格納部７０９は、Ｓ４０９により印刷設定取得部４０５からの要求を受け、印刷ジョブの印刷設定を印刷設定取得部４０５に送信する。ステップＳ４１１において、Ｓ４０８により印刷ジョブに含まれる印刷データの格納場所８１３の通知を受けた印刷データ取得部４０６は、印刷データの格納場所８１３に記載されたＵＲＩにアクセスする。そして、印刷サービス３０３に印刷ジョブに対する印刷設定の取得要求を送信する。
【０１２２】
ステップＳ４１２において、印刷サービス３０３内の印刷データ格納部７０８は、Ｓ４１１により印刷設定取得部４０５からの要求を受け、印刷ジョブの印刷データを印刷データ取得部４０６に送信する。ステップＳ４１３において、Ｓ４１０、およびＳ４１２により印刷ジョブの印刷設定、および印刷データを受信したことを確認した印刷通知受付部４０４は、印刷実行部４０８に印刷指示する。具体的には、印刷設定と印刷データを基にラスタイメージを生成し、生成したラスタイメージを印刷するよう印刷ユニットに指示を出す。このようにして、画像形成装置１０１が、印刷ジョブに対する印刷設定、および印刷データを印刷サービス３０３から直接取得することで、中継仮想プリンタのデータトラフィック、処理負荷を軽減することが可能となる。さらに、印刷データがネットワークを通過する頻度が削減されるため処理パフォーマンスを向上させることが可能となる。
【０１２３】
なお、本実施例においては、画像形成装置１０１が、印刷ジョブに対する印刷設定、および印刷データを印刷サービス３０３から直接取得する構成について説明した。しかしながら、画像形成装置１０１が中継仮想プリンタ３１２から印刷設定、および印刷データを取得する構成でも構わない。例えば、中継仮想プリンタ３１２が、印刷サービス３０３より印刷設定、および印刷データを取得した後、画像形成装置１０１が取り扱うことが可能なデータ形式への変換などの処理を実施後、画像形成装置１０１に印刷データを受け渡すことが可能となる。
【符号の説明】
【０１２４】
１００  各装置を接続するためのネットワーク
１０１  本発明の実施形態に係る画像形成装置
１０２  本発明の実施形態に係る印刷中継サーバ
１０３  本発明の実施形態に係る印刷サーバ群
１０４  本発明の実施形態に係るクライアントコンピュータ
１０５  本発明の実施形態に係るＷｅｂアプリケーションサーバ群
１１０  各装置を接続するためのインターネット
１０００  本発明の実施形態に係るコンテンツ印刷システム全体
２０１  本発明の実施形態に係る各装置、および各サーバ群のハードウェア
２０２  本発明の実施形態に係る各装置、および各サーバ群のＣＰＵ
２０３  本発明の実施形態に係る各装置、および各サーバ群のＲＯＭ
２０４  本発明の実施形態に係る各装置、および各サーバ群のＲＡＭ
２０５  本発明の実施形態に係る各装置、および各サーバ群のＩｎｐｕｔ／Ｏｕｔｐｕｔインターフェース
２０６  本発明の実施形態に係る各装置、および各サーバ群の（ＮＩＣ）
２０７  本発明の実施形態に係る各装置、および各サーバ群の各ユニットをつなぐバス
３０１  本発明の実施形態に係る画像形成装置で動作する印刷制御ソフトウェア
３１１  本発明の実施形態に係る画像形成装置で動作するユーザ権限管理ソフトウェア
３０２  本発明の実施形態に係る印刷中継サーバで動作する中継仮想プリンタ管理サービス
３１２  本発明の実施形態に係る印刷中継サーバで動作する中継仮想プリンタ
３０３  本発明の実施形態に係る印刷サーバで動作する印刷サービス
３０４  本発明の実施形態に係るクライアントコンピュータで動作するＷｅｂブラウザ
３０５  本発明の実施形態に係るＷｅｂアプリケーションサーバで動作するＷｅｂアプリケーション
【図１】
0005697486.tif 000002
【図２】
0005697486.tif 000003
【図３】
0005697486.tif 000004
【図４】
0005697486.tif 000005
【図５】
0005697486.tif 000006
【図６】
0005697486.tif 000007
【図７】
0005697486.tif 000008
【図８】
0005697486.tif 000009
【図９】
0005697486.tif 000010
【図１０】
0005697486.tif 000011
【図１１】
0005697486.tif 000012
【図１２】
0005697486.tif 000013
【図１３】
0005697486.tif 000014
【図１４】
0005697486.tif 000015
【図１５】
0005697486.tif 000016
【図１６】
0005697486.tif 000017
【図１７】
0005697486.tif 000018
【図１８】
0005697486.tif 000019
【図１９】
0005697486.tif 000020
【図２０】
0005697486.tif 000021