(57)【特許請求の範囲】
【請求項１】
複数のプリントサービスそれぞれで提供されているプリントサービスに関する情報と、各プリントサービスに登録されている仮想プリンタの情報とを取得する取得手段と、
ローカルネットワークに接続されたローカルプリンタを探索する探索手段と、
前記取得手段で取得された前記仮想プリンタの情報と、前記探索手段で探索された前記ローカルプリンタのプリンタＩＤとに基づいて、前記ローカルプリンタが前記複数のプリントサービスそれぞれにおける前記仮想プリンタとして登録されているか否か判断する判断手段と、
前記判断手段で登録されていないと判断したプリントサービスについて、前記取得手段で取得した前記プリントサービスに関する情報を表示する表示手段と、
前記表示手段で表示された前記プリントサービスに対して前記ローカルプリンタを仮想プリンタとして登録するように、ユーザから指示を受けた場合、当該指示されたプリントサービスに前記ローカルプリンタを仮想プリンタとして登録する登録手段と、
を有することを特徴とするプリンタ登録装置。
【請求項２】
前記表示手段で表示される前記プリントサービスに関する情報は、当該プリントサービスで処理可能な文書ファイルの属性、当該プリントサービスで指定可能な印刷設定の種類、当該プリントサービスの利用料金、の少なくともいずれかを含むことを特徴とする請求項１に記載のプリンタ登録装置。
【請求項３】
前記登録手段が前記ローカルプリンタを前記仮想プリンタとして登録する際の情報は、前記ローカルプリンタのプリンタＩＤを含むことを特徴とする請求項１または２のいずれかに記載のプリンタ登録装置。
【請求項４】
前記取得手段で取得された仮想プリンタの情報に含まれるプリンタＩＤに基づいて、同一のプリンタに対応する仮想プリンタごとにまとめたプリンタリストを表示する表示手段を、更に有することを特徴とする請求項３に記載のプリンタ登録装置。
【請求項５】
前記表示手段は、前記取得手段で取得された仮想プリンタの情報に含まれるステータス情報のうち、同一のプリンタに対応する仮想プリンタのステータス情報を統合して表示することを特徴とする請求項４に記載のプリンタ登録装置。
【請求項６】
前記表示手段は、前記取得手段で取得された仮想プリンタの情報に含まれるステータス情報のうち、同一のプリンタに対応する仮想プリンタのステータス情報を統合して表示する際、更新日時が新しいステータス情報を表示することを特徴とする請求項５に記載のプリンタ登録装置。
【請求項７】
前記取得手段で取得された仮想プリンタの情報に含まれるプリンタＩＤと前記探索手段で探索されたローカルプリンタのプリンタＩＤとに基づいて、同一のプリンタに対応する仮想プリンタおよびローカルプリンタごとにまとめたプリンタリストを表示する表示手段を、更に有することを特徴とする請求項３に記載のプリンタ登録装置。
【請求項８】
前記表示手段は、前記ローカルプリンタのステータス情報を優先して表示することを特徴とする請求項７に記載のプリンタ登録装置。
【請求項９】
前記複数のプリントサービスはインターネットを介して接続されることを特徴とする請求項１乃至８のいずれか１項に記載のプリンタ登録装置。
【請求項１０】
前記プリンタ登録装置はモバイル端末であることを特徴とする請求項１乃至９のいずれか１項に記載のプリンタ登録装置。
【請求項１１】
複数のプリントサービスに登録されている仮想プリンタの情報を取得する取得手段と、
ローカルネットワークに接続されたローカルプリンタを探索する探索手段と、
前記取得手段で取得された仮想プリンタの情報に含まれるプリンタＩＤと前記探索手段で探索されたローカルプリンタのプリンタＩＤとに基づいて、同一のプリンタに対応する仮想プリンタおよびローカルプリンタごとにまとめたプリンタリストを表示する表示手段と、
を備える表示装置であって、
前記表示手段は、前記取得手段で取得された仮想プリンタの情報に含まれるステータス情報のうち、同一のプリンタに対応する仮想プリンタのステータス情報を統合して表示することを特徴とする表示装置。
【請求項１２】
コンピュータを、請求項１乃至１１のいずれか１項に記載の各手段として機能させるためのコンピュータプログラム。
【請求項１３】
装置の取得手段が、複数のプリントサービスそれぞれで提供されているプリントサービスに関する情報と、各プリントサービスに登録されている仮想プリンタの情報とを取得する取得ステップと、
装置の探索手段が、ローカルネットワークに接続されたローカルプリンタを探索する探索ステップと、
装置の判断手段が、前記取得ステップで取得された前記仮想プリンタの情報と、前記探索ステップで探索された前記ローカルプリンタのプリンタＩＤとに基づいて、前記ローカルプリンタが前記複数のプリントサービスそれぞれにおける前記仮想プリンタとして登録されているか否か判断する判断ステップと、
装置の表示手段が、前記判断ステップで登録されていないと判断したプリントサービスについて、前記取得ステップで取得した前記プリントサービスに関する情報を表示する表示ステップと、
装置の登録手段が、前記表示ステップで表示された前記プリントサービスに対して前記ローカルプリンタを仮想プリンタとして登録するように、ユーザから指示を受けた場合、当該指示されたプリントサービスに前記ローカルプリンタを仮想プリンタとして登録する登録ステップと、
を有することを特徴とするプリンタ登録方法。
【請求項１４】
装置の取得手段が、複数のプリントサービスに登録されている仮想プリンタの情報を取得する取得ステップと、
装置の探索手段が、ローカルネットワークに接続されたローカルプリンタを探索する探索ステップと、
装置の表示手段が、前記取得ステップで取得された仮想プリンタの情報に含まれるプリンタＩＤと前記探索ステップで探索されたローカルプリンタのプリンタＩＤとに基づいて、同一のプリンタに対応する仮想プリンタおよびローカルプリンタごとにまとめたプリンタリストを表示する表示ステップと、
を備える表示方法であって、
前記表示ステップでは、前記取得ステップで取得された仮想プリンタの情報に含まれるステータス情報のうち、同一のプリンタに対応する仮想プリンタのステータス情報を統合して表示することを特徴とする表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のプリントサービスに対して仮想プリンタを登録するプリンタ登録装置に関する。
【背景技術】
【０００２】
従来、クライアントがサーバに対して印刷指示を送信すると、当該印刷指示を受信したサーバが印刷対象のコンテンツを印刷データに変換して、当該変換された印刷データを用いて印刷処理を実行する技術がある。
【０００３】
特許文献１では、クライアント装置がサーバ内のアプリケーションで作成したアプリケーションデータのプリント要求をユーザから受理すると、該アプリケーションデータからプリントデータを生成させるための生成要求をサーバのアプリケーションに送信する。そして、サーバが、当該生成要求を行ったクライアントの情報と前記生成要求とを受信すると、該クライアントの情報に応じたプリント制御情報に応じてプリントデータを生成する。すなわち、特許文献１のサーバは、プリントデータを生成するサービスをクライアントに提供している。
【０００４】
このように、サーバがクライアントにプリントサービスを提供する形態は従来から存在している。一方、近年、注目を集めているクラウドコンピューティングも、サーバがクライアントにサービスを提供する形態である。クラウドコンピューティングは、多くのコンピューティング・リソースを用いてデータ変換やデータ処理を分散実行し、複数のクライアントからの要求を同時に処理することが主な特徴である。現在、このクラウドコンピューティング環境上にＷｅｂサービスを実装して、多種多様なサービスを提供するベンダーが複数存在する。
【０００５】
一方、スマートフォンなどのモバイル端末からプリンタに印刷データを直接送信して印刷を行うものがある。この方法は、モバイル端末内で文書データを印刷データに変換する必要があり、モバイル端末によってはメモリ不足などを起こしてしまう場合もある。また、特許文献２のＷｅｂサーバは、画像形成装置から印刷要求を受けると、印刷サービスに印刷指示を行って印刷データを生成させる。そして、画像形成装置は印刷データを該印刷サービスから取得して印刷を実行し、印刷状態が変化する度に、該印刷サービスに対して印刷状態を通知するようにしている。モバイル端末、プリンタ、サーバを組み合わせて印刷を行うシステムをクラウドプリンティングと呼ぶ。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−１９６０５４号公報
【特許文献２】特開２０１３−０５０８０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ネットワーク上にある複数のプリントサービスそれぞれを利用可能にするためには、各プリントサービスに対して仮想プリンタの登録を行う必要がある。この登録操作の手間を省くため、各プリントサービスに対する仮想プリンタの登録指示を一括して行うことが考えられる。しかし、一括操作で、全てのプリントサービスに仮想プリンタを登録した場合、実際には利用しないプリントサービスであるにもかかわらず仮想プリンタが登録されてしまうという課題があった。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の登録装置は、複数のプリントサービスそれぞれで提供されているプリントサービスに関する情報と、各プリントサービスに登録されている仮想プリンタの情報とを取得する取得手段と、ローカルネットワークに接続されたローカルプリンタを探索する探索手段と、前記取得手段で取得された前記仮想プリンタの情報と、前記探索手段で探索された前記ローカルプリンタのプリンタＩＤとに基づいて、前記ローカルプリンタが前記複数のプリントサービスそれぞれにおける前記仮想プリンタとして登録されているか否か判断する判断手段と、前記判断手段で登録されていないと判断したプリントサービスについて、前記取得手段で取得した前記プリントサービスに関する情報を表示する表示手段と、前記表示手段で表示された前記プリントサービスに対して前記ローカルプリンタを仮想プリンタとして登録するように、ユーザから指示を受けた場合、当該指示されたプリントサービスに前記ローカルプリンタを仮想プリンタとして登録する登録手段と、を有することを特徴とする。
【発明の効果】
【０００９】
プリントサービスの情報（プリントサービスで処理可能なファイルの属性や、指定可能な印刷設定の種類や、利用料金の情報など）が表示されるので、ユーザはそれらの情報を考慮して、そのプリントサービスにプリンタを登録するかどうか決めることができる。
【図面の簡単な説明】
【００１０】
【図１】システム構成図
【図２】各装置のハードウェア構成図
【図３】各装置のソフトウェアコンポーネント構成図
【図４】各装置で管理するテーブル構造
【図５】印刷アプリケーションの画面例
【図６】プリンタディスカバリシーケンス
【図７】プリンタ登録フロー
【図８】プリンタリストのステータス表示フロー
【発明を実施するための形態】
【００１１】
（実施例１）
＜システム構成＞
図１は、本実施形態に係るモバイル印刷システムの全体構成を示す図である。プリンタ１０２とモバイル端末１０３は、有線または無線のローカルネットワーク（ＬＡＮ）１０１を介して複数台接続されていることを想定している。また、プリンタ（ローカルプリンタ）１０２とモバイル端末１０３は、ローカルネットワーク１０１を介してインターネット１００にアクセスし、複数の会社により提供されている複数のプリントサービス１０５にアクセスすることができる。本実施形態では、モバイル端末１０３は、無線ＬＡＮターミナル１０４を介してネットワークに接続することを想定しているが、携帯データ通信キャリアが提供する無線ネットワークを介して接続しても構わない。また、モバイル端末１０３とプリントサービス１０５、プリンタ１０２とプリントサービス１０５がそれぞれインターネット１００を介して接続されていればよく、必ずしもプリンタ１０２とモバイル端末１０３が直接通信可能な状態である必要は無い。また、無線ＬＡＮターミナル１０４は、一般的なネットワーク・ルーター機能を有した無線ＬＡＮの親機であり、家庭内や事務所などの中で無線ＬＡＮを提供している。プリントサービス１０５は、モバイル端末１０３から送信されるコンテンツデータをプリンタ１０２が読み取り可能なデータ形式のデータ（例えばＰＤＬデータ）に変換し、プリンタ１０２に該ＰＤＬデータを送信して印刷を行わせるクラウドサービスである。また、各プリントサービス１０５は、登録されたプリンタ１０２の情報を仮想プリンタ情報４００として保持する機能を有し、モバイル端末１０３からの指示に基づいてプリンタの登録を行ったり、仮想プリンタに対して印刷指示を行ったりすることができる。
【００１２】
なお、本実施形態では、プリントサービス１０５は複数存在することを想定しており、プリントサービスを提供するベンダー毎に様々なサービスが提供される。各プリントサービス１０５は各プリントサーバ１０６上で動作しているものとするが、これに限るものではなく、１つのプリントサーバ上で複数のプリントサービスが動作する場合もあり得る。
【００１３】
＜モバイル端末のハードウェア構成＞
図２（Ａ）は、モバイル端末１０３のハードウェア構成図の例である。各構成要素は、システムバス２０２に接続されている。
【００１４】
ＲＯＭ２０４には、オペレーティングシステム及び、通話やデータ通信を制御するアプリケーションプログラムが格納されている。ＣＰＵ２０３はこれらのコンピュータプログラムを実行することにより、後述する各処理を実行する処理部として機能する。なお、データ通信を制御するアプリケーションプログラムとしては、ＭａｉｌソフトやＷｅｂブラウザなどがある。ＲＡＭ２０５は、ＣＰＵ２０３がプログラムを実行する際のワークメモリエリアとして利用される。また、ＲＡＭ２０５は、ＷｅｂブラウザがＷｅｂサーバから取得してきたＷｅｂページデータやＷｅｂサービスにアクセスするための認証情報などを一時記憶するためのメモリとしても利用される。記憶装置２１０は不揮発性の記憶装置であり、モバイル端末の再起動後も保持しておく必要のある各種動作モード設定や、稼働ログなどが記憶される。
【００１５】
ＮｅｔｗｏｒｋＣｏｎｔｒｏｌｌｅｒ２０６は、無線ＬＡＮ通信部２１２、携帯電話キャリアの提供する無線通信ネットワークに参加するための携帯電話データ通信部２１３の通信制御を行う。一般的には、無線ＬＡＮのネットワークに参加できるとき、ＮｅｔｗｏｒｋＣｏｎｔｒｏｌｌｅｒ２０６は、無線ＬＡＮの接続を優先する。モバイル端末が無線ＬＡＮのネットワークエリアから外れた場合には、携帯電話キャリアが提供する無線通信ネットワークへ参加する。音声制御部２０７は、主に通話アプリケーションを用いてユーザが電話をしているときに利用され、通話アプリケーションとマイク・スピーカ２１４による音声データの入出力との仲介を行っている。表示制御部２０８は、モバイル端末のディスプレイ２１５にて出力する情報の制御を行っている。入力制御部２０９は、モバイル端末のボタンやタッチパネル２１６にてユーザが指示した情報の制御を行っている。これらの音声制御部２０７、表示制御部２０８、入力制御部２０９を利用して、モバイル端末上でのアプリケーションは、ネットワーク通信情報やモバイル端末のさまざまな情報をユーザに提供する。位置検出制御部２１１は、ＧＰＳセンサー２１７からモバイル端末の位置情報を取得しＯＳに提供する。これらの制御は、ＣＰＵ２０３がＯＳやアプリケーション等のコンピュータプログラムを実行することにより実現される。
【００１６】
＜プリントサービスのハードウェア構成＞
図２（Ｂ）は、プリントサーバ１０６のハードウェア構成の一例を示す図である。なお、本発明のプリントサービスを提供するプリントサーバは、単体の機器で構成されても、複数の機器からなるシステムで構成されても構わない。本実施例では、システムバス２１９により各構成要素が接続されているものとして説明する。ＣＰＵ２２０は、記憶装置２２６に格納されているアプリケーションプログラム、プリントドライバプログラム、オペレーティングシステムや本発明のモバイル印刷システムプログラムを実行する。また、ＣＰＵ２２０はコンピュータプログラム実行に必要な情報やファイル等をＲＡＭ２２２に一時的に格納する制御を行う。また、ＣＰＵ２２０は、ディスプレイ２２７に表示されるマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ＲＯＭ２２１は記憶手段であり、基本Ｉ／Ｏプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。ＲＡＭ２２２は一時記憶手段であり、ＣＰＵ２２０の主メモリやワークエリア等として機能する。表示制御部２２４は、ディスプレイ２２７にて表示出力する情報の制御を行っている。入力制御部２２５は、キーボード２２８より入力される情報を受信してＣＰＵ２２０とやり取りする。記憶装置２２６は、大容量メモリとして機能する外部記憶手段であり、アプリケーションプログラム、プリントドライバプログラム、ＯＳ等を格納している。キーボード２２８は、ユーザが装置に命令等を入力指示するための指示入力手段である。
【００１７】
＜プリンタのハードウェア構成＞
図２（Ｃ）は、プリンタ１０２のハードウェア構成図である。各構成要素は、システムバス２３０に接続されている。ＣＰＵ２３１は装置全体の制御と、システムバス２３０に接続される各種デバイスとのアクセスを統括的に制御する。ＣＰＵ２３１は、ＲＯＭ２３２あるいは外部メモリ２３６に記憶された制御プログラムを実行することにより、装置全体の制御を行う。ＲＡＭ２３３は、ＣＰＵ２３１の主メモリ、ワークエリア等として利用される。記憶装置２４０は大容量メモリとして機能する外部記憶手段であり、本発明に係るコンピュータプログラム等を格納している。操作パネル（操作部）２３９はタッチパネルで構成され、操作画面を表示したり、操作画面を介したユーザの指示を受け付けたりする。また、操作パネル２３９では、プリンタ１０２の動作モード等の設定やプリンタ１０２の動作状況の表示や、複写指定等の操作を行うためのボタン等の表示も行われる。ネットワークコントローラ２３４は、ネットワークインターフェースカード（ＮＩＣ）であり、外部装置とのデータのやり取りを行う。プリントエンジン２３８は電子写真方式（レーザービーム方式）やインクジェット方式、昇華（熱転写）方式等の印刷技術を用いて印刷を実行する印刷部である。ラスタコントローラ２３７は、ＰＤＬ言語・ＰＤＦ言語で記述された印刷データ（ＰＤＬデータ）を画像データに変換するコントローラである。機器Ｉ／Ｆ２４１は、ＵＳＢ等で接続可能な外部機器との接続Ｉ／Ｆである。
【００１８】
＜プリントサービスのソフトウェア構成＞
図３（Ａ）は、プリントサービス１０５のソフトウェア構成図である。なお各ソフトウェアモジュールは、図２（Ｂ）で示した記憶装置２２６に記憶されており、前述したようにＣＰＵ２２０は、各コンピュータプログラムをＲＡＭ２２２にロードして実行することにより、後述する各処理部３０１〜３０４として機能する。
【００１９】
データ変換部３０１は、モバイル端末１０３から受け付けた文書ファイルをプリンタ１０２が印刷可能なデータフォーマットの印刷データ（ＰＤＬデータ等）に変換する。仮想プリンタ管理部３０２は、後述の図４（Ａ）で説明する仮想プリンタの情報をストレージ３０５に格納したり、外部からの要求に応じてストレージ３０５より仮想プリンタ情報を読み出して応答したりする。制御部３０３は、仮想プリンタ管理部３０２とＷｅｂサーバ３０４の情報の受け渡しや、データ変換部３０１に対して変換処理の要求を行う。また、制御部３０３は、データ変換部３０１が変換した印刷データを、プリンタ１０２やモバイル端末１０３からの印刷データ取得要求に応じて送信を行う。あるいは、制御部３０３が印刷データをプリンタ１０２に直接送信を行うことも想定される。Ｗｅｂサーバ３０４は、後述する各種インターフェースを提供し、プリンタ登録の受け付けや、受け付けた情報の妥当性の検証を行う。ストレージ３０５には、図４（Ａ）で説明するプリントサービス１０５で保持される情報が格納される。
【００２０】
＜モバイル端末のソフトウェア構成＞
図３（Ｂ）は、モバイル端末１０３のソフトウェア構成図である。なお各ソフトウェアモジュールは図２（Ａ）で示した記憶装置２１０に記憶されており、前述したようにＣＰＵ２０３は、各コンピュータプログラムをＲＡＭ２０５にロードして実行する。本実施例では、モバイル端末１０３のオペレーティングシステム（ＯＳ）３０７に印刷アプリケーション３０６をインストールし、印刷アプリケーション３０６にて本発明の処理を実行するものとする。印刷アプリケーション３０６からプリンタ１０２やプリントサービス１０５と通信する際は、ＯＳ３０７が制御するネットワークコントローラ２０６を利用する。印刷アプリケーション３０６は、ユーザの操作に応じてプリンタ１０２やプリントサービス１０５と通信を行い、プリンタの登録や文書ファイルのアップロード、印刷指示などの処理を行う。
【００２１】
＜プリンタのソフトウェア構成＞
図３（Ｃ）は、プリンタ１０２のソフトウェア構成図である。なお各ソフトウェアモジュールは図２（Ｃ）で示した記憶装置２４０に記憶されており、前述したようにＣＰＵ２３１は、各コンピュータプログラムをＲＡＭ２３３にロードして実行することにより、後述する各処理部３０８、３１０として機能する。
【００２２】
制御部３０８は、Ｗｅｂサーバ３１０が受け付けた要求に応じて図４（Ｃ）で示されるプリンタ情報や印刷属性を応答する。エンジン３０９は、モバイル端末１０３やプリントサービス１０５から送信された印刷データを解釈して変換された印刷画像を用いて、印刷処理を行う。Ｗｅｂサーバ３１０は、モバイル端末１０３やプリントサービス１０５からのプリンタ情報取得要求を受け付ける。
【００２３】
＜プリントサービスのデータテーブル＞
図４（Ａ）は、プリントサービス１０５が記憶装置２２６に記憶する複数のデータテーブルである。これらのデータテーブルは、プリントサーバ１０６の記憶装置２２６ではなく、インターネット１００やローカルネットワーク１０１を介して通信可能に構成された別のサーバに記憶するように構成することもできる。プリントサービス１０５が保持する複数のデータテーブルは、仮想プリンタ情報４００、サポートコンテンツ情報４２０、印刷属性４２１、Ｖｅｎｄｅｒ情報４２２の各テーブルで構成される。
【００２４】
テーブル４００に保持されている仮想プリンタ情報は、仮想プリンタ情報の登録時にＷｅｂサーバ３０４を介して渡され、プリントサービス１０５がストレージ３０５上で保持する。ＵｓｅｒＩＤ４０１は、クライアントがＷｅｂサーバ３０４へアクセスする際に渡され、プリントサービス１０５がどのユーザからの要求であるかを識別するためのユーザ識別子である。また、本実施例においては、仮想プリンタ情報４００はＵｓｅｒＩＤごとに保持される。ＰｒｉｎｔｅｒＩＤ４０２は、本システム全体においてプリンタ１０２を一意に識別するためのプリンタ識別子である。ＰｒｉｎｔｅｒＩＤの発行方法については本実施例では特に限定しない。一意性が確保されるのであれば、プリンタ１０２にあらかじめ設定されていても、プリンタ１０２、あるいは不図示のＩＤ管理サーバが発行してもよい。ＰｒｉｎｔｅｒＮａｍｅ４０３は、仮想プリンタを登録する際にユーザが設定可能な名称である。ＰｒｉｎｔｅｒＣａｐａｂｉｌｉｔｉｅｓ４０４は、プリンタ１０２で指定可能な印刷属性情報である。ＩＰａｄｄｒｅｓｓ４０５は、ネットワーク上の機器を識別するためのＩＰアドレスである。ｓｔａｔｕｓ４０６には、プリントサービス１０５がプリンタ１０２から当該プリンタの状態に関する情報を取得し格納する。
【００２５】
サポートコンテンツ情報４２０、印刷属性４２１、Ｖｅｎｄｅｒ情報４２２はプリントサービス１０５があらかじめ保持している基本情報である。Ｃｏｎｔｅｎｔｓ４０７には、プリントサービス１０５が処理可能な文書フォーマットの情報が格納されている。Ｃａｐａｂｉｌｉｔｉｅｓ４０８には、プリントサービス１０５で指定可能な印刷属性情報が格納されている。ｎａｍｅ４０９には、プリントサービス１０５を提供しているベンダー名称が格納されている。
【００２６】
＜モバイル端末のデータテーブル＞
図４（Ｂ）は、モバイル端末上の印刷アプリケーション３０６が記憶装置２１０に保持するデータテーブルである。モバイル端末１０３が保持するデータテーブルは、プリントサービス情報４２３のテーブルと優先度情報４２４のテーブルとを含む。Ｓｅｒｖｉｃｅ４１０は、印刷アプリケーション３０６に登録しているベンダー名称である。ＳｅｒｖｉｃｅＵＲＬ４１１は、Ｓｅｒｖｉｃｅ４１０を提供しているサーバを特定するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）である。Ｃｈａｒｇｅ４１２は、印刷アプリケーション３０６に登録されているＳｅｒｖｉｃｅ４１０それぞれの利用料金である。優先度４１３は、印刷アプリケーション３０６がＳｅｒｖｉｃｅ４１０のうちのいずれのサービスを選択するか判断する際に使用される情報である。
【００２７】
＜プリンタのデータテーブル＞
図４（Ｃ）は、プリンタ１０２が記憶装置２４０に保持するデータテーブルである。プリンタ１０２が保持するデータテーブルは、プリンタ情報のテーブル４２５と、印刷属性のテーブル４２６とを含む。ＰｒｉｎｔｅｒＩＤ４１４は、プリンタ１０２を一意に識別するためのプリンタ識別子である。ＩＰａｄｄｒｅｓｓ４１６は、プリンタ１０２に設定されているＩＰアドレスである。ｓｔａｔｕｓ４１７は、プリンタ１０２の状態を示す情報である。Ｖｅｎｄｅｒ４１８は、プリンタ１０２の製造ベンダーを示す情報である。Ｃａｐａｂｉｌｉｔｉｅｓ４１５はプリンタ１０２が実行可能な印刷属性の情報である。
【００２８】
＜モバイル端末で表示される画面の例＞
図５は、モバイル端末の印刷アプリケーション３０６がディスプレイ２１５に表示する画面の一例である。プリンタリスト画面５０１は、印刷アプリケーション３０６がローカルネットワーク探索したときに、当該探索で見つかったプリンタ（ローカルプリンタ）１０２と各ベンダーのプリントサービス１０５から取得した仮想プリンタ情報４００とをリスト表示した画面の一例である。また、プリンタリスト画面５０２は、プリントサービス１０５の１つを選択したときに、当該選択したプリントサービスに登録されている仮想プリンタ情報４００とＶｅｎｄｅｒ４０９の情報とを表示した画面の一例である。
【００２９】
コンテンツデータ表示画面５０３は、印刷対象として選択されたコンテンツデータのプレビュー画像を表示する画面の一例であり、この画面のメニューでＰｒｉｎｔをユーザが選択することで、印刷属性選択画面５０４を表示する。印刷属性選択画面５０４は、印刷前にコンテンツデータをどのような印刷属性で印刷するかをユーザが選択（印刷部数、片面印刷／両面印刷、カラー／白黒、集約印刷などの印刷設定をユーザが指定）する画面の一例である。印刷属性選択画面５０４でプリンタを選択すると、印刷処理を実行する前に印刷確認画面５０５を表示してユーザに印刷設定の確認を行わせる。ユーザが印刷設定を確認した後、ＯＫボタンを押すと印刷処理が実行される。
【００３０】
＜仮想プリンタの登録と表示に関する処理＞
以下では、プリントサービス１０５に仮想プリンタを登録する際の処理（登録処理）と、ローカルネットワークで探索されたローカルプリンタの情報とプリントサービス１０５に登録されている仮想プリンタ情報４００とをまとめて一覧表示する際の処理（表示処理）とについて説明する。
【００３１】
始めに、プリントサービス１０５に仮想プリンタを登録する際の処理（登録処理）について説明する。本実施形態において、登録処理は次の２つの登録方法で実行することができるものとする。第１の登録方法は、プリンタ１０２の操作パネル２３９でユーザが必要な操作を行い、プリンタ１０２からプリントサービス１０５のプリンタ登録インターフェースを呼んで、プリントサービス１０５に当該プリンタ１０２を仮想プリンタとして登録する方法である。第２の登録方法は、印刷アプリケーション３０６によってモバイル端末１０３のタッチパネル１１６に表示された操作画面をユーザが操作することで、印刷アプリケーション３０６が、プリントサービス１０５のプリンタ登録インターフェースを呼んで、指定したプリンタを仮想プリンタとして登録する方法である。
【００３２】
第１のプリンタ登録方法について、図６（Ａ）のシーケンス図を用いて説明する。まず、ユーザはプリンタ１０２の操作パネル２３９において、登録先となるプリントサービス１０５を指定し、当該プリントサービス１０５にアクセスするためのユーザ情報（ＵｓｅｒＩＤ４０１やパスワード）を入力する。プリンタ１０２は当該入力されたユーザ情報を用いてプリントサービス１０５にアクセスする。なお、事前にプリンタ１０２に各プリントサービス１０５が発行するアクセスｔｏｋｅｎ、または、Ｃｒｅｄｅｎｔｉａｌ等の情報が保持されている場合は、当該保持されている情報を用いてプリントサービス１０５にアクセスするようにしても構わない。次に、プリンタ１０２は、プリントサービス１０５の登録インターフェースを介して、当該プリンタ１０２のプリンタ情報４２５を該プリントサービス１０５に送る。なお、プリンタ情報４２５に含まれるＰｒｉｎｔｅｒＩＤ４１４は、各プリンタ１０２を一意に識別するためのＩＤ（識別子）である。なお、このプリンタ１０２を一意に識別可能なプリンタＩＤ４１４を用いるので、後述する印刷アプリケーション３０６は、１台のプリンタを複数の異なるプリントサービス１０５の仮想プリンタとして登録した場合であっても、複数の異なるプリントサービスそれぞれの仮想プリンタが同じプリンタに対応するものであるかを識別することが可能となる。プリントサービス１０５の登録インターフェースは、Ｗｅｂサーバ３０４が提供するインターフェースであり、ｈｔｔｐ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、または、ｈｔｔｐｓ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  Ｓｅｃｕｒｅ）プロトコルベースのＩＰＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｉｎｔｉｎｇ  Ｐｒｏｔｏｃｌ）、または、ＳＯＡＰ、または、ＲＥＳＴ（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎａｌ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ）であったりする。プリントサービス１０５のＷｅｂサーバ３０４が提供する後述する他のインターフェースも、すべてこのプロトコルとなる。プリントサービス１０５は、プリンタ１０２からプリンタ情報４２５（４１４〜４１８の情報）を受け取ると、仮想プリンタ管理部３０２がこれらの情報をストレージ３０５に格納して、仮想プリンタ情報４００として管理する。なお、Ｗｅｂサーバ３０４と仮想プリンタ管理部３０２への情報受け渡しは、制御部３０３を介して行う。
【００３３】
第２のプリンタ登録方法を図６（Ｂ）のシーケンス図と、図７のフローチャートを用いて説明する。モバイル端末１０３の印刷アプリケーション３０６は、図４（Ｂ）で説明したように、各ベンダーが提供するプリントサービスに関する情報（４１０〜４１２）をプリントサービス情報４２３として保持している。Ｓ７０１で、印刷アプリケーション３０６は、プリントサービス情報４２３を確認する。
【００３４】
Ｓ７０２はループ開始端を示しており、プリントサービス情報４２３に保持されているＳｅｒｖｉｃｅ４１０のそれぞれを順に処理対象として、ステップＳ７０３〜Ｓ７０４の処理が繰り返し実行される。
【００３５】
Ｓ７０３で、印刷アプリケーション３０６は、各ベンダーが提供するプリントサービス１０５のプリンタ情報取得インターフェースを呼び出して、各プリントサービス１０５に既に登録済みの仮想プリンタの情報４０１〜４０６の取得を行う。このとき、プリントサービス１０５の仮想プリンタ管理部３０２は、要求に従いストレージ３０５に保持されている仮想プリンタ情報のうち、ＵｓｅｒＩＤ４０１が一致する情報を印刷アプリケーション３０６に返すことになる。なお、プリンタ情報取得インターフェースは、プリンタサービス１０５のＷｅｂサーバ３０４が提供するインターフェースである。このプリンタ情報取得インターフェースのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）は、ＳｅｒｖｉｃｅＵＲＬ４１１である。なお、事前に印刷アプリケーション３０６に各プリントサービス１０５が発行するアクセスｔｏｋｅｎ、または、Ｃｒｅｄｅｎｔｉａｌ等が保持されている場合は、これらの情報を付けてプリンタ情報取得インターフェースを呼ぶ。この場合、Ｗｅｂサーバ３０４は、アクセスｔｏｋｅｎ、または、Ｃｒｅｄｅｎｔｉａｌをキーとして、不図示のマッピングテーブルからＵｓｅｒＩＤ４０１を認識する。また、アクセス時にユーザにＵｓｅｒＩＤ４０１とパスワードの入力を要求し、この情報を付けてインターフェースを呼び出す形式であってもよい。アクセスｔｏｋｅｎ、Ｃｒｅｄｅｎｔｉａｌ、または、ＵｓｅｒＩＤ４０１とパスワードは、Ｗｅｂサーバ３０４で情報の妥当性が検証される。なお、ＵｓｅｒＩＤ４０１とパスワード、または、アクセスｔｏｋｅｎ、Ｃｒｅｄｅｎｔｉａｌ等のアクセス情報を付随させ、その情報の検証する処理は、全てのインターフェースで共通の処理となる。更に、アクセスｔｏｋｅｎ、または、ＣｒｅｄｅｎｔｉａｌからＵｓｅｒＩＤ４０１を認識する処理も、全てのインターフェースで共通の処理となる。
【００３６】
Ｓ７０４において、印刷アプリケーション３０６は、プリントサービス１０５のＳｅｒｖｉｃｅ取得インターフェースを呼び出し、プリントサービスで提供可能なサービスに関する情報（サポートコンテンツ４２０、サポート印刷属性４２１、Ｖｅｎｄｅｒ情報４２２）を取得する。なお、Ｓ７０２〜Ｓ７０４の処理は、図６（Ｂ）のＳ６０２〜Ｓ６０３で示しているように、各ベンダー（Ｘ社、Ｙ社）によって提供される各プリントサービスから、各プリントサービスに関する情報と各プリントサービスに登録済みの仮想プリンタ情報を取得する処理に相当する。
【００３７】
Ｓ７０５において、印刷アプリケーション３０６は、ローカルネットワークに対してブロードキャストを行い、プリンタ１０２の探索（ディスカバリ）を行い、プリンタのＩＰアドレスを得る。すなわち、Ｓ７０５の処理は、図６（Ｂ）のＳ６０４で示しているように、印刷アプリケーション３０６がブロードキャストを行うことにより、プリンタＡ、Ｂから応答を得てプリンタＡ、Ｂに関する情報を得る処理に相当する。
【００３８】
Ｓ７０６はループ開始端を示しており、Ｓ７０５で取得した複数のプリンタ１０２の情報に基づいて、各プリンタを順に処理対象として、Ｓ７０７〜Ｓ７１２の処理を繰り返し実行する。
【００３９】
Ｓ７０７で、印刷アプリケーション３０６は、Ｓ７０５で取得した複数のプリンタそれぞれのＩＰアドレス４０５に基づいて、各プリンタのプリンタ情報４２５の取得を行う。このとき、プリンタ１０２への取得要求は、プリンタ１０２のＷｅｂサーバ３１０に対し行い、プリンタ１０２の制御部３０８が情報を返すことになる。Ｓ７０７の処理は、図６（Ｂ）のＳ６０５で示しているように、プリンタＡ、Ｂそれぞれからプリンタ情報を得る処理に相当する。
【００４０】
Ｓ７０８で、印刷アプリケーション３０６は、Ｓ７０７で取得したプリンタ情報４２５について、各プリントサービス１０５に既に仮想プリンタとして登録済みのプリンタであるかどうかの判断を行う。この判断は、Ｓ７０７で取得したプリンタ情報４２５に含まれるＰｒｉｎｔｅｒＩＤ４１４と、Ｓ７０２で各プリントサービス１０５から取得したＰｒｉｎｔｅｒＩＤ４０２が一致するかどうかで行われる。Ｓ７０８の処理は、図６（Ｂ）のＳ６０６で示しているように、印刷アプリケーションにおいて行われる。Ｓ７０８での判断の結果、Ｓ７０７で取得したプリンタ情報のプリンタがプリントサービス１０５に登録されていないと判断された場合は、Ｓ７０９に進む。
【００４１】
Ｓ７０９はループ開始端を示しており、Ｓ７０７で取得したプリンタ情報のプリンタが仮想プリンタとして登録されていないプリントサービスそれぞれを順に処理対象として、Ｓ７１０〜Ｓ７１２の処理を繰り返し実行する。
【００４２】
Ｓ７１０で、印刷アプリケーション３０６は、当該処理対象のプリントサービスについての情報（サポートコンテンツ４２０、サポート印刷属性４２１、Ｖｅｎｄｅｒ情報４２２、Ｃｈａｒｇｅ４１２）をモバイル端末の画面に表示し、そのプリントサービスに登録するか否かユーザに確認する。すなわち、プリントサービスで処理可能なファイルの属性や、指定可能な印刷設定の種類や、利用料金の情報が表示されるので、ユーザはそれらの情報を考慮して、そのプリントサービスにプリンタを登録するかどうか決めることができる。Ｓ７１１において、印刷アプリケーション３０６は、Ｓ７１０で表示したプリントサービスに登録するようユーザから指示されたかどうか判断し、登録するように指示されたと判断した場合はＳ７１２に進む。Ｓ７１２で、印刷アプリケーション３０６は、登録先として指示されたプリントサービスの登録インターフェースを呼び出し、当該プリンタを仮想プリンタとして登録する。このときプリンタ登録インターフェースに渡す情報は、Ｓ７０７で取得したプリンタ情報４２５の各情報４１４〜４１８である。印刷アプリケーション３０６からの登録要求を受けたプリントサービスでは、その登録要求とともに受信したプリンタ情報の各情報４１４〜４１８を仮想プリンタ管理部３０２がストレージ３０５に格納して、当該プリンタを仮想プリンタとして管理する。このとき、Ｗｅｂサーバ３０４と仮想プリンタ管理部３０２への情報の受け渡しは、制御部３０３を介して行う。Ｓ７１０〜Ｓ７１２の処理は、図６（Ｂ）のＳ６０７およびＳ６０８で示しているように、ユーザが登録先として指示したプリントサービス（Ｘ社、Ｙ社）に対して、印刷アプリケーション３０６が登録要求を行う処理に相当する。
【００４３】
上述した第１の登録方法または第２の登録方法により、プリンタ１０２、または、モバイル端末１０３の印刷アプリケーションから、複数のベンダーのなかからユーザ所望のベンダーのプリントサービスに対して、ユーザ所望のプリンタを仮想プリンタとして登録することができる。また、仮想プリンタを登録するための識別子にプリンタ１０２が発行するＰｒｉｎｔｅｒＩＤ４１４を使用するようにしたので、各ベンダーのプリントサービス１０５にそれぞれの仮想プリンタとして登録しても、登録済みのプリンタか否かの識別が容易に行えるようになる。さらに、仮想プリンタの識別子にＰｒｉｎｔｅｒＩＤ４１４を使用することにより、異なるプリントサービスに登録されている仮想プリンタのうち、同じプリンタであるものも容易に特定可能となる。また、登録時にサポートコンテンツ４２０、サポート印刷属性４２１、Ｖｅｎｄｅｒ情報４２２、Ｃｈａｒｇｅ４１２をユーザに示して登録するかどうか確認することで、ユーザが意図しないプリントサービス１０５に仮想プリンタを登録することがなくなる。
【００４４】
次に、印刷アプリケーション３０６が、ローカルネットワークで探索されたプリンタの情報とプリントサービス１０５に登録されている仮想プリンタ情報４００とをまとめて一覧表示する際の処理（表示処理）について説明する。ここでは、印刷アプリケーション３０６が、ローカルネットワークで探索したプリンタと、各ベンダーのプリントサービス１０５に登録されている仮想プリンタとを表示する際、同一のプリンタのステータス情報を統合して表示する方法について、図８を用いて説明する。
【００４５】
モバイル端末１０３の印刷アプリケーション３０６は、プリンタのリストを表示するようにユーザから指示を受けると、まず、Ｓ８０１で、記憶装置に保持されているプリントサービス情報４２３を得る。Ｓ８０２はループ開始端であり、プリントサービス情報４２３に登録されているＳｅｒｖｉｃｅ４１０それぞれを順に処理対象として、Ｓ８０３の処理を繰り返し実行する。Ｓ８０３で、印刷アプリケーションは、各ベンダーのプリントサービス１０５が提供するプリンタ情報取得インターフェースを呼び、各プリントサービス１０５に既に登録済みの仮想プリンタ情報４００（情報４０１〜４０６）を取得する。また、各プリントサービス１０５のＳｅｒｖｉｃｅ取得インターフェースを呼び出し、Ｃｏｎｔｅｎｔｓ４０７、Ｃａｐａｂｉｌｉｔｉｅｓ４０８、Ｖｅｎｄｅｒ  ｎａｍｅ４０９を取得する。 
【００４６】
Ｓ８０４において、印刷アプリケーション３０６は、各プリントサービス１０５から取得した仮想プリンタ情報４００のＰｒｉｎｔｅｒＩＤ４０２の中に同じＩＤのものがあるか判定する。同じＩＤの仮想プリンタがあると判定した場合は、Ｓ８０５に進み、当該同じプリンタＩＤを有すると判定された仮想プリンタのプリンタ情報をひとまとまりの情報として、印刷アプリケーション３０６のメモリ内でマージする。このとき印刷アプリケーション３０６は、各仮想プリンタのプリンタ情報に含まれるｓｔａｔｕｓ４０６について、それぞれのＵｐｄａｔｅ４２７の時刻（更新日時）が直近のものを表示対象としてマージする。なお、更新日時だけでなく、仮想プリンタに対応づけられているプリンタ１０２のベンダー（メーカー）と同じベンダーにより提供されているプリントサービス１０５から得たプリンタ情報であるか否かも条件に入れて、表示対象のステータスを決めて表示対象とするようにしてもよい。
【００４７】
Ｓ８０６で、印刷アプリケーション３０６は、モバイル端末が接続されているネットワークにブロードキャストを行い、プリンタ１０２の探索を行い、探索されたプリンタのＩＰアドレスを取得する。Ｓ８０７はループ開始端であり、Ｓ８０６で探索された複数のプリンタのＩＰアドレスそれぞれを順に処理対象として、Ｓ８０８〜Ｓ８１０の処理を繰り返し実行する。
【００４８】
Ｓ８０８で、印刷アプリケーション３０６は、当該処理対象のＩＰアドレスに対応するプリンタから、プリンタ情報４２５（情報４１４〜４１８）の取得を行う。具体的には、当該処理対象のＩＰアドレスに対応するプリンタ１０２への取得要求は、プリンタ１０２のＷｅｂサーバ３１０に対して行われ、プリンタ１０２の制御部３０８が情報を返す。
【００４９】
Ｓ８０９において、印刷アプリケーション３０６は、Ｓ８０８でプリンタ１０２から取得したＰｒｉｎｔｅｒＩＤ４１４が、Ｓ８０３で各ベンダーのプリントサービスから取得した仮想プリンタのＰｒｉｎｔｅｒＩＤ４０２と一致しているか判定する。印刷アプリケーション３０６は、ＩＤが一致していると判定した場合、Ｓ８１０に進み、プリントサービス１０５から取得した仮想プリンタ情報４００のｓｔａｔｕｓ４０６を、Ｓ８０８でプリンタ１０２から直接取得したｓｔａｔｕｓ４１７に入れ替えることにより、プリンタ情報のマージを行う。そして、印刷アプリケーション３０６は、マージしたプリンタ情報をひとまとまりの情報としてメモリに保持する。Ｓ８１１において、印刷アプリケーションは、マージ後のプリンタ情報をリスト化してモバイル端末１０３のディスプレイに表示する。マージ後のプリンタ情報は、図５の５０１、５０２に示されるように、プリンタごとにまとめて表示する。
【００５０】
上述したようなプリンタ情報表示処理により、各ベンダーのプリントサービスから取得されるプリンタ情報（ｓｔａｔｕｓ４０６）と、直接プリンタ１０２から取得したプリンタ情報（ｓｔａｔｕｓ４１７）とを、同一のプリンタごとに統合して表示するようにしたので、ユーザは見やすくなる。また、各プリントサービスで管理しているプリンタ情報の更新タイミングの違い等によって、各プリントサービスで保持している仮想プリンタのステータスが異なる場合がありうるが、それらの異なるステータスのうち、最適なステータスを表示することが可能となる。
【００５１】
以上により、各社のプリントサービスがそれぞれ管理する仮想プリンタについて、実際は同じプリンタに対応する仮想プリンタである場合、当該同じプリンタであると判定された複数の仮想プリンタを、ユーザには１台のプリンタとして提示することで、表示が乱雑にならず、直観的に認識できるようになる。
【００５２】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。その処理は、上述した実施例の機能を実現させるソフトウェア（コンピュータプログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００５３】
１０２  プリンタ
１０３  モバイル端末
１０５  プリントサービス
【図１】
0006039602.tif 000002
【図２】
0006039602.tif 000003
【図３】
0006039602.tif 000004
【図４】
0006039602.tif 000005
【図５】
0006039602.tif 000006
【図６】
0006039602.tif 000007
【図７】
0006039602.tif 000008
【図８】
0006039602.tif 000009