(57)【特許請求の範囲】
【請求項１】
端末装置であって、
仮想プリンタに関係する仮想プリンタ関係情報の登録をサーバに要求する登録要求を、前記サーバに送信する第１の端末側送信部と、
前記サーバから認証情報を受信する第１の端末側受信部と、
第１の方式に従って、実在プリンタと無線通信を実行する第１の端末インターフェースと、
前記第１の方式と異なる第２の方式に従って、前記実在プリンタと無線通信を実行する第２の端末インターフェースと、
前記第１の端末インターフェースを利用して、前記端末装置と前記実在プリンタとの双方が所属すべき無線ネットワークであって、前記第２の端末インターフェースを用いて構築される前記無線ネットワークで利用される無線プロファイルを、前記実在プリンタとの間で通信する端末側通信部と、
前記無線プロファイルに基づき、前記第２の端末インターフェースを利用して、前記端末装置と前記実在プリンタとの双方が前記無線ネットワークに所属する所属状態を構築する端末側構築部と、
前記第２の端末インターフェースを利用し、構築済みの前記無線ネットワークを介して、前記サーバにおいて前記仮想プリンタ関係情報と関連付けられている認証情報を前記実在プリンタに送信する第２の端末側送信部であって、前記認証情報は、前記実在プリンタが、前記サーバから、前記サーバに記憶されている印刷対象の印刷データを取得するために利用される、前記第２の端末側送信部と、を備える端末装置。
【請求項２】
前記端末装置は、
前記仮想プリンタ関係情報が前記サーバに登録された後に、前記サーバが前記印刷データを生成するための画像データに関係する画像データ関係情報を、前記サーバに送信する第３の端末側送信部を、さらに備え、
前記画像データ関係情報は、前記サーバにおいて、前記仮想プリンタ関係情報と前記認証情報とに関連付けられる、請求項１に記載の端末装置。
【請求項３】
前記端末側通信部は、前記実在プリンタが、前記サーバから前記印刷データを受信する処理と、受信済みの前記印刷データに対する印刷を実行する処理と、を含むサーバ印刷機能を実行することができない場合に、前記第１の端末インターフェースを利用して、第１の実行不可情報を前記実在プリンタから受信し、
前記端末装置は、
前記第１の実行不可情報が受信される場合に、前記実在プリンタが印刷できないことを表す画面を、前記端末装置の表示部に表示させる第１の表示制御部を、さらに備える、請求項１又は２に記載の端末装置。
【請求項４】
前記端末側通信部は、前記実在プリンタが、前記サーバから前記印刷データを受信する処理と、受信済みの前記印刷データに対する印刷を実行する処理と、を含むサーバ印刷機能を実行することができない場合に、前記第１の端末インターフェースを利用して、第１の実行不可情報を前記実在プリンタから受信し、
前記端末側構築部は、前記第１の実行不可情報が受信される場合に、前記所属状態を構築しない、請求項１又は２のいずれか一項に記載の端末装置。
【請求項５】
前記端末装置は、
前記所属状態が構築された後であって、前記実在プリンタの印刷実行部の状態が印刷を実行することができない状態と、前記実在プリンタの状態が前記サーバから前記印刷データを受信することができない状態と、の少なくとも一方の状態である場合に、前記第２の端末インターフェースを利用して、構築済みの前記無線ネットワークを介して、第２の実行不可情報を、前記実在プリンタから受信する第２の端末側受信部を、さらに備える、請求項１から４のいずれか一項に記載の端末装置。
【請求項６】
前記端末装置は、
前記第２の実行不可情報が受信される場合に、前記実在プリンタが印刷できないことを表す画面を、前記端末装置の表示部に表示させる第２の表示制御部を、さらに備える、請求項５に記載の端末装置。
【請求項７】
前記第２の端末側受信部は、前記認証情報が前記実在プリンタに送信された後に、前記第２の実行不可情報を受信する、請求項５又は６に記載の端末装置。
【請求項８】
前記第１の方式は、ＮＦＣ（Near Field Communicationの略）規格に従った通信方式であり、
前記実在プリンタは、
前記サーバから前記印刷データを受信する処理と、受信済みの前記印刷データを印刷する処理と、を含むサーバ印刷機能を実行するか否かの機能可否設定が、ユーザによって選択されることを許容し、
前記実在プリンタの動作に応じて、前記実在プリンタの印刷実行部の状態が、印刷を実行することができる状態とできない状態との間で状態が移行し、かつ、前記実在プリンタの状態が、前記サーバから前記印刷データを受信することができる状態とできない状態との間で状態が移行し、
前記端末側通信部は、前記実在プリンタに、前記サーバ印刷機能を実行しない前記機能可否設定が選択されている場合に、前記第１の端末インターフェースの前記ＮＦＣ規格によって定義されているＲｅａｄｅｒ機能を利用して、第１の実行不可情報を前記実在プリンタから受信し、
前記端末装置は、
前記所属状態が構築された後であって、前記実在プリンタの印刷実行部の状態が印刷を実行することができない状態と、前記実在プリンタの状態が前記サーバから前記印刷データを受信することができない状態と、の少なくとも一方の状態であるために前記サーバ印刷機能を実行することができない場合に、前記第２の端末インターフェースを利用して、構築済みの前記無線ネットワークを介して、第２の実行不可情報を、前記実在プリンタから受信する第２の端末側受信部を、さらに備える、請求項１又は２に記載の端末装置。
【請求項９】
前記端末装置は、
前記所属状態が構築された後に、前記第２の端末インターフェースを利用して、構築済みの前記無線ネットワークを介して、証明書を、前記実在プリンタから受信する第３の端末側受信部を、さらに備え、
前記第２の端末側送信部は、受信済みの前記証明書を利用して暗号化された前記認証情報を実在プリンタに送信する、請求項１から８のいずれか一項に記載の端末装置。
【請求項１０】
前記端末側通信部は、前記第１の端末インターフェースを利用して、前記実在プリンタを識別するプリンタ識別情報を、さらに受信し、
前記端末装置は、
前記受信済みのプリンタ識別情報を用いて、前記証明書が適切であるか否かを判断する判断部を、さらに備え、
前記第２の端末側送信部は、前記証明書が適切であると判断される場合に、前記第２の端末インターフェースを利用して、構築済みの前記無線ネットワークを介して、受信済みの前記証明書を利用して暗号化された前記認証情報を実在プリンタに送信する、請求項９に記載の端末装置。
【請求項１１】
プリンタであって、
第１の方式に従った無線通信を実行する端末装置のインターフェースと無線通信を実行する通信機構と、
前記第１の方式と異なる第２の方式に従って、前記端末装置と無線通信を実行する第１のプリンタインターフェースと、
前記通信機構を利用して、前記プリンタと前記端末装置との双方が所属すべき無線ネットワークであって前記第１のプリンタインターフェースを用いて構築される前記無線ネットワークで利用される無線プロファイルを、前記端末装置と通信するプリンタ側通信部と、
前記無線プロファイルに基づき、前記第１のプリンタインターフェースを利用して、前記プリンタと前記端末装置との双方が前記無線ネットワークに所属する所属状態を構築するプリンタ側構築部と、
前記第１のプリンタインターフェースを利用し、構築済みの前記無線ネットワークを介して、前記端末装置が仮想プリンタに関係する仮想プリンタ関係情報の登録をサーバに要求する登録要求を前記サーバに送信することによって前記端末装置に受信される認証情報と前記仮想プリンタ関係情報とを前記端末装置から受信するプリンタ側受信部と、
受信済みの前記認証情報と前記仮想プリンタ関係情報を用いて、前記サーバから、印刷対象の印刷データを取得するプリンタ側取得部であって、前記印刷データは、前記サーバにおいて前記認証情報と前記仮想プリンタ関係情報とに関連付けて記憶されている、前記プリンタ側取得部と、を備えるプリンタ。
【請求項１２】
前記通信機構は、前記第１の方式に従って、前記端末装置と無線通信を実行する第２のプリンタインターフェースを含む、請求項１１に記載のプリンタ。
【請求項１３】
前記プリンタ側通信部は、前記プリンタが前記サーバから前記印刷データを受信する処理と、受信済みの前記印刷データを印刷する処理と、を含むサーバ印刷機能を実行することができない場合に、前記通信機構を利用して、第１の実行不可情報を前記端末装置に送信する、請求項１１又は１２に記載のプリンタ。
【請求項１４】
前記プリンタ側構築部は、前記サーバ印刷機能を実行することができない場合に、前記所属状態を構築しない、請求項１３に記載のプリンタ。
【請求項１５】
前記プリンタは、
前記所属状態が構築された後であって、前記プリンタの印刷実行部の状態が印刷を実行することができない状態と、前記プリンタの状態が前記サーバから前記印刷データを受信することができない状態と、の少なくとも一方の状態である場合に、前記第１のプリンタインターフェースを利用して、構築済みの前記無線ネットワークを介して、第２の実行不可情報を、前記端末装置に送信する第１のプリンタ側送信部を、さらに備える、請求項１１から１４のいずれか一項に記載のプリンタ。
【請求項１６】
前記第１のプリンタ側送信部は、前記認証情報が前記端末装置から受信された後に、前記第２の実行不可情報を送信する、請求項１５に記載のプリンタ。
【請求項１７】
プリンタであって、
サーバから印刷対象の印刷データを受信する処理と、受信済みの前記印刷データを印刷する処理と、を含むサーバ印刷機能を実行するか否かの機能可否設定が、ユーザによって選択されることを許容し、前記プリンタの動作に応じて、前記プリンタの印刷実行部の状態が、印刷を実行することができる状態とできない状態との間で状態が移行し、かつ、前記プリンタが前記サーバから前記印刷データを受信することができる状態とできない状態との間で状態が移行前記プリンタであって、
第１の方式に従った無線通信を実行する端末装置のインターフェースと無線通信を実行する通信機構であって、前記第１の方式は、ＮＦＣ（Near Field Communicationの略）規格に従った通信方式であり、前記通信機構は、前記第１の方式に従って、前記端末装置と無線通信を実行する第２のプリンタインターフェースであって、インターフェースメモリを有する前記第２のプリンタインターフェースを含む、前記通信機構と、
前記第１の方式と異なる第２の方式に従って、前記端末装置と無線通信を実行する第１のプリンタインターフェースと、
前記通信機構を利用して、前記プリンタと前記端末装置との双方が所属すべき無線ネットワークであって前記第１のプリンタインターフェースを用いて構築される前記無線ネットワークで利用される無線プロファイルを、前記端末装置と通信するプリンタ側通信部であって、前記プリンタに、前記サーバ印刷機能を実行しない前記機能可否設定が選択されている場合に、前記第２のプリンタインターフェースを利用して、前記サーバ印刷機能を実行しない前記機能可否設定を示す第１の実行不可情報であって、前記インターフェースメモリに格納済みの前記第１の実行不可情報を前記端末装置に送信する、前記プリンタ側通信部と、
前記無線プロファイルに基づき、前記第１のプリンタインターフェースを利用して、前記プリンタと前記端末装置との双方が前記無線ネットワークに所属する所属状態を構築するプリンタ側構築部と、
前記第１のプリンタインターフェースを利用し、構築済みの前記無線ネットワークを介して、認証情報を前記端末装置から受信するプリンタ側受信部であって、前記認証情報は、サーバにおいて前記印刷データと関連付けられて記憶されており、前記プリンタが、前記サーバから、前記印刷データを取得するために利用される、前記プリンタ側受信部と、
受信済みの前記認証情報を用いて、前記サーバから、前記印刷データを取得するプリンタ側取得部と、
前記所属状態が構築された後であって、前記プリンタの印刷実行部の状態が印刷を実行することができない状態と、前記プリンタの状態が前記サーバから前記印刷データを受信することができない状態と、の少なくとも一方の状態であるために前記サーバ印刷機能を実行することができない場合に、前記第１のプリンタインターフェースを利用して、構築済みの前記無線ネットワークを介して、第２の実行不可情報を、前記端末装置に送信する第１のプリンタ側送信部と、を備える、プリンタ。
【請求項１８】
前記プリンタは、
前記ユーザによって、前記機能可否設定が、前記サーバ印刷機能を実行する状態から前記サーバ印刷機能を実行しない状態に変更されることに応じて、前記第１の実行不可情報を、前記インターフェースメモリに格納させる格納制御部を、さらに備える、請求項１７に記載のプリンタ。
【請求項１９】
プリンタであって、
第１の方式に従った無線通信を実行する端末装置のインターフェースと無線通信を実行する通信機構と、
前記第１の方式と異なる第２の方式に従って、前記端末装置と無線通信を実行する第１のプリンタインターフェースと、
前記通信機構を利用して、前記プリンタと前記端末装置との双方が所属すべき無線ネットワークであって前記第１のプリンタインターフェースを用いて構築される前記無線ネットワークで利用される無線プロファイルを、前記端末装置と通信するプリンタ側通信部と、
前記無線プロファイルに基づき、前記第１のプリンタインターフェースを利用して、前記プリンタと前記端末装置との双方が前記無線ネットワークに所属する所属状態を構築するプリンタ側構築部と、
前記所属状態が構築された後に、証明書を、前記第１のプリンタインターフェースを利用して、構築済みの前記無線ネットワークを介して、前記端末装置に送信する第２のプリンタ側送信部と、
前記第１のプリンタインターフェースを利用し、構築済みの前記無線ネットワークを介して、認証情報を前記端末装置から受信するプリンタ側受信部であって、前記認証情報は、サーバにおいて印刷対象の印刷データと関連付けられて記憶されており、前記プリンタが、前記サーバから、前記印刷データを取得するために利用される、前記プリンタ側受信部と、
受信済みの前記認証情報を、前記証明書を利用して復号化する復号化部と、
復号化済みの前記認証情報を用いて、前記サーバから、前記印刷データを取得するプリンタ側取得部と、
を備える、プリンタ。
【請求項２０】
前記プリンタ側通信部は、さらに、前記通信機構を利用して、前記プリンタを識別するプリンタ識別情報を、前記端末装置に送信し、
前記第２のプリンタ側送信部は、さらに、前記第１のプリンタインターフェースを利用して、構築済みの前記無線ネットワークを介して、前記プリンタを識別するプリンタ識別情報を、前記端末装置に送信する、請求項１９に記載のプリンタ。
【請求項２１】
端末装置のためのコンピュータプログラムであって、
前記端末装置は、第１の方式に従って、実在プリンタと無線通信を実行する第１の端末インターフェースと、前記第１の方式と異なる第２の方式に従って、前記実在プリンタと無線通信を実行する第２の端末インターフェースと、を備え、
前記コンピュータプログラムは、前記端末装置に搭載されるコンピュータに、以下の各処理、即ち、
仮想プリンタに関係する仮想プリンタ関係情報の登録をサーバに要求する登録要求を、前記サーバに送信する第１の送信処理と、
前記サーバから認証情報を受信する受信処理と、
前記第１の端末インターフェースを利用して、前記端末装置と前記実在プリンタとの双方が所属すべき無線ネットワークであって、前記第２の端末インターフェースを用いて構築される前記無線ネットワークで利用される無線プロファイルを、前記実在プリンタとの間で通信する通信処理と、
前記無線プロファイルに基づき、前記第２の端末インターフェースを利用して、前記端末装置と前記実在プリンタとの双方が前記無線ネットワークに所属する所属状態を構築する構築処理と、
前記第２の端末インターフェースを利用し、構築済みの前記無線ネットワークを介して、前記サーバにおいて前記仮想プリンタ関係情報と関連付けられている認証情報を前記実在プリンタに送信する第２の送信処理であって、前記認証情報は、前記実在プリンタが、サーバから、前記サーバに記憶されている印刷対象の印刷データを取得するために利用される、前記第２の送信処理と、を実行させるコンピュータプログラム。
【請求項２２】
プリンタであって、
第１の方式に従った無線通信を実行する端末装置のインターフェースと無線通信を実行する通信機構と、
前記第１の方式と異なる第２の方式に従って、前記端末装置と無線通信を実行する第１のプリンタインターフェースと、
前記通信機構を利用して、前記プリンタと前記端末装置との双方が所属すべき無線ネットワークであって前記第１のプリンタインターフェースを用いて構築される前記無線ネットワークで利用される無線プロファイルを、前記端末装置と通信するプリンタ側通信部と、
前記無線プロファイルに基づき、前記第１のプリンタインターフェースを利用して、前記プリンタと前記端末装置との双方が前記無線ネットワークに所属する所属状態を構築するプリンタ側構築部と、
前記第１のプリンタインターフェースを利用し、構築済みの前記無線ネットワークを介して、前記端末装置が仮想プリンタに関係する仮想プリンタＩＤの登録をサーバに要求する登録要求を前記サーバに送信することによって前記端末装置に受信される仮想プリンタＩＤを前記端末装置から受信するプリンタ側受信部と、
受信済みの前記仮想プリンタＩＤを用いて、前記サーバから、前記サーバにおいて前記仮想プリンタＩＤに関連付けられていて記憶されている前記印刷データを取得するプリンタ側取得部と、を備えるプリンタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書では、端末装置が、サーバを利用して、プリンタに印刷を実行させるための技術を開示する。
【背景技術】
【０００２】
従来から、端末装置がサーバにデータを送信し、プリンタが当該サーバから送信されたデータを受信することで、プリンタが受信したデータを印刷する技術が知られている。例えば、非特許文献１には、Google（登録商標） Cloud Print（以下では「ＧＣＰ」と呼ぶ）と呼ばれるインターネット上のサービスが開示されている。ユーザは、例えば、端末装置を利用してプリンタにアクセスし、ＧＣＰを提供するサーバ（以下では「ＧＣＰサーバ」と呼ぶ）との通信をプリンタに実行させる。これにより、プリンタは、当該プリンタの名称、当該プリンタが利用可能な印刷条件、当該プリンタのデフォルト設定等を含むプリンタ関係情報をＧＣＰサーバに登録することができる。その後、ユーザは、例えば、端末装置を利用して、印刷対象の画像を表わす画像データをＧＣＰサーバにサブミットする。これにより、プリンタは、ＧＣＰサーバによって画像データから生成されるプリンタが解釈可能な印刷データを取得して、印刷データによって表わされる画像の印刷を実行することができる。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“What is Google Cloud Print”、［online］、［平成２６年７月３日検索］、インターネット＜URL: https://developers.google.com/cloud-print/＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の技術では、ユーザは、プリンタ関係情報をサーバに登録するために、サーバとの通信をプリンタに実行させる必要がある。
【０００５】
本明細書では、プリンタ関係情報をサーバに登録するために、サーバとの通信をプリンタに実行させずに済む技術を提供する。
【課題を解決するための手段】
【０００６】
本明細書によって開示される端末装置は、第１の端末側送信部と、第１の端末側受信部と、第１の端末インターフェースと、第２の端末インターフェースと、端末側通信部と、端末側構築部と、第２の端末側送信部と、を備える。第１の端末側送信部は、仮想プリンタに関係する仮想プリンタ関係情報の登録をサーバに要求する登録要求を、サーバに送信する。第１の端末側受信部は、サーバから認証情報を受信する。第１の端末インターフェースは、第１の方式に従って、実在プリンタと無線通信を実行する。第２の端末インターフェースは、第１の方式と異なる第２の方式に従って、実在プリンタと無線通信を実行する。端末側通信部は、第１の端末インターフェースを利用して、端末装置と実在プリンタとの双方が所属すべき無線ネットワークであって、第２の端末インターフェースを用いて構築される無線ネットワークで利用される無線プロファイルを、実在プリンタとの間で通信する。端末側構築部は、無線プロファイルに基づき、第２の端末インターフェースを利用して、端末装置と実在プリンタとの双方が無線ネットワークに所属する所属状態を構築する。第２の端末側送信部は、第２の端末インターフェースを利用し、構築済みの無線ネットワークを介して、サーバにおいて仮想プリンタ関連情報と関連付けられている認証情報を実在プリンタに送信する。認証情報は、実在プリンタが、サーバから、サーバに記憶されている印刷対象の印刷データを取得するために利用される。
【０００７】
上記の技術では、実在プリンタに関係するプリンタ関係情報をサーバに登録するのではなく、仮想プリンタに関係する仮想プリンタ関係情報をサーバに登録する手法を採用している。即ち、端末装置は、登録要求をサーバに送信して、仮想プリンタ関係情報をサーバに登録する。このために、実在プリンタは、プリンタ関係情報をサーバに登録するために、サーバとの通信を実行しなくて済む。また、端末装置は、実在プリンタとの無線ネットワークを構築し、構築済みの無線ネットワークを利用して、認証情報を実在プリンタに送信することができる。これにより、実在プリンタは、認証情報を利用して、印刷データをサーバから取得することができる。この構成によると、実在プリンタがサーバへのプリンタ関係情報を登録せずとも、印刷データの取得を実在プリンタに適切に実行させることができる。
【０００８】
端末装置は、仮想プリンタ関係情報がサーバに登録された後に、サーバが印刷データを生成するための画像データに関係する画像データ関係情報を、サーバに送信する第３の端末側送信部を、さらに備えていてもよい。画像データ関係情報は、サーバにおいて、仮想プリンタ関係情報と認証情報とに関連付けられていてもよい。この構成によると、端末装置は、仮想プリンタ関係情報がサーバに登録された後に、画像データ関係情報をサーバに送信することによって、サーバにおいて、仮想プリンタ関係情報、認証情報、及び、画像データ関係情報を関連付けることができる。
【０００９】
端末側通信部は、実在プリンタがサーバから印刷データを受信する処理と、受信済みの印刷データに対する印刷を実行する処理と、を含むサーバ印刷機能を実行することができない場合に、第１の端末インターフェースを利用して、第１の実行不可情報を実在プリンタから受信してもよい。端末装置は、第１の実行不可情報が受信される場合に、実在プリンタが印刷できないことを表す画面を、端末装置の表示部に表示させる第１の表示制御部を、さらに備えていてもよい。この構成によると、端末装置は、実在プリンタが印刷できないことを、ユーザに通知することができる。
【００１０】
端末側通信部は、実在プリンタがサーバから印刷データを受信する処理と、受信済みの印刷データに対する印刷を実行する処理と、を含むサーバ印刷機能を実行することができない場合に、第１の端末インターフェースを利用して、第１の実行不可情報を実在プリンタから受信してもよい。端末側構築部は、第１の実行不可情報が受信される場合に、所属状態を構築しなくてもよい。この構成によると、端末装置は、実在プリンタがサーバ印刷機能を実行することができないにも関わらず、無線ネットワークが構築される事態を回避することができる。
【００１１】
端末装置は、所属状態が構築された後であって、実在プリンタの印刷実行部の状態が印刷を実行することができない状態と、実在プリンタの状態がサーバから印刷データを受信することができない状態と、の少なくとも一方の状態である場合に、第２の端末インターフェースを利用して、構築済みの無線ネットワークを介して、第２の実行不可情報を、実在プリンタから受信する第２の端末側受信部を、さらに備えていてもよい。この構成によると、端末装置は、実在プリンタがサーバから印刷データを受信して印刷データを用いた印刷を実行することができないことを知ることができる。
【００１２】
端末装置は、第２の実行不可情報が受信される場合に、実在プリンタが印刷できないことを表す画面を、端末装置の表示部に表示させる第２の表示制御部を、さらに備えていてもよい。この構成によると、端末装置は、実在プリンタが印刷できないことを、ユーザに通知することができる。
【００１３】
第３の端末送信部は、認証情報が実在プリンタに送信された後に、第２の実行不可情報を受信してもよい。
【００１４】
第１の方式は、ＮＦＣ（Near Field Communicationの略）規格に従った通信方式であってもよい。実在プリンタは、サーバから印刷データを受信する処理と、受信済みの印刷データに対する印刷を実行する処理と、を含むサーバ印刷機能を実行するか否かの機能可否設定が、ユーザによって選択されることを許容してもよい。実在プリンタは、実在プリンタの動作に応じて、実在プリンタの印刷実行部の状態が、印刷を実行することができる状態とできない状態との間で状態が移行してもよい。実在プリンタは、実在プリンタの状態が、サーバから印刷データを受信することができる状態とできない状態との間で状態が移行してもよい。端末側通信部は、実在プリンタに、サーバ印刷機能を実行しない機能可否設定が選択されている場合に、第１の端末インターフェースのＮＦＣ規格によって定義されているＲｅａｄｅｒ機能を利用して、第１の実行不可情報を実在プリンタから受信してもよい。端末装置は、所属状態が構築された後であって、実在プリンタの印刷実行部の状態が印刷を実行することができない状態と、実在プリンタの状態がサーバから印刷データを受信することができない状態と、の少なくとも一方の状態であるためにサーバ印刷機能を実行することができない場合に、第２の端末インターフェースを利用して、構築済みの無線ネットワークを介して、第２の実行不可情報を、実在プリンタから受信する第２の端末側受信部を、さらに備えていてもよい。この構成によると、端末装置は、第１の実行不可情報を受信する場合に、ユーザによってサーバ印刷機能を実行しない機能可否設定が選択されていることに応じて、実在プリンタが印刷できないことを知り得る。また、端末装置は、第２の実行不可情報を受信する場合に、実在プリンタの動作に応じて、実在プリンタが印刷できないことを知り得る。即ち、端末装置は、第１の実行不可情報と第２の実行不可情報とのそれぞれの受信に応じて、実在プリンタが印刷することができない原因を知り得る。
【００１５】
端末装置は、所属状態が構築された後に、第２の端末インターフェースを利用して、構築済みの無線ネットワークを介して、証明書を、実在プリンタから受信する第３の端末側受信部を、さらに備えていてもよい。第２の端末側送信部は、受信済みの証明書を利用して暗号化された認証情報を実在プリンタに送信してもよい。この構成によると、認証情報を送信する間に、認証情報が第三者に知られることを抑制することができる。
【００１６】
端末側通信部は、第１の端末インターフェースを利用して、実在プリンタを識別するプリンタ識別情報を、さらに受信してもよい。端末装置は、受信済みのプリンタ識別情報を用いて、証明書が適切であるか否かを判断する判断部を、さらに備えていてもよい。第２の端末側送信部は、証明書が適切であると判断される場合に、第２の端末インターフェースを利用して、構築済みの無線ネットワークを介して、受信済みの証明書を利用して暗号化された認証情報を実在プリンタに送信してもよい。この構成によると、適切な証明書を利用して、認証情報を暗号化することができる。これにより、第三者によって、暗号化された認証情報を復号化されることを抑制することができる。
【００１７】
本明細書によって開示されるプリンタは、通信機構と、第１のプリンタインターフェースと、プリンタ側通信部と、プリンタ側構築部と、プリンタ側受信部と、プリンタ側取得部と、を備える。通信機構は、第１の方式に従った無線通信を実行する端末装置のインターフェースと無線通信を実行する。第１のプリンタインターフェースは、第１の方式と異なる第２の方式に従って、端末装置と無線通信を実行する。プリンタ側通信部は、通信機構を利用して、プリンタと端末装置との双方が所属すべき無線ネットワークであって第１のプリンタインターフェースを用いて構築される無線ネットワークで利用される無線プロファイルを、端末装置と通信する。プリンタ側構築部は、無線プロファイルに基づき、第１のプリンタインターフェースを利用して、プリンタと端末装置との双方が無線ネットワークに所属する所属状態を構築する。プリンタ側受信部は、第１のプリンタインターフェースを利用し、構築済みの無線ネットワークを介して、認証情報を端末装置から受信する。認証情報は、サーバにおいて印刷データと関連付けられて記憶されており、プリンタが、サーバから、印刷データを取得するために利用される。プリンタ側取得部は、受信済みの認証情報を用いて、サーバから、印刷データを取得する。上記の技術では、プリンタは、プリンタに関係するプリンタ関係情報をサーバに登録するのではなく、端末装置との無線ネットワークを構築し、構築済みの無線ネットワークを利用して端末装置から受信される認証情報を用いて、サーバから印刷データを取得し得る。このために、プリンタは、プリンタ関係情報をサーバに登録するために、サーバとの通信を実行しなくて済む。
【００１８】
通信機構は、第１の方式に従って、端末装置と無線通信を実行する第２のプリンタインターフェースを含んでいてもよい。
【００１９】
プリンタ側通信部は、プリンタがサーバから印刷データを受信する処理と、受信済みの印刷データを印刷する処理と、を含むサーバ印刷機能を実行することができない場合に、通信機構を利用して、第１の実行不可情報を端末装置に送信してもよい。この構成によると、プリンタは、プリンタが印刷することができないことを、端末装置に知らせることができる。
【００２０】
プリンタ側構築部は、サーバ印刷機能を実行することができない場合に、所属状態を構築しなくてもよい。この構成によると、プリンタは、プリンタ自身が印刷することができないにも関わらず、無線ネットワークが構築される事態を回避することができる。
【００２１】
プリンタは、所属状態が構築された後であって、プリンタの印刷実行部の状態が印刷を実行することができない状態と、プリンタの状態がサーバから印刷データを受信することができない状態と、の少なくとも一方の状態である場合に、第１のプリンタインターフェースを利用して、構築済みの無線ネットワークを介して、第２の実行不可情報を、端末装置に送信する第１のプリンタ側送信部を、さらに備えていてもよい。この構成によると、プリンタは、プリンタ自身の状態に応じて、サーバから印刷データを受信して印刷データを用いた印刷を実行することができないことを、端末装置に知らせることができる。
【００２２】
第１のプリンタ側送信部は、認証情報が端末装置から受信された後に、第２の実行不可情報を送信してもよい。この構成によると、プリンタは、適切なタイミングで、第２の実行不可情報を、端末装置に送信することができる。
【００２３】
第１の方式は、ＮＦＣ（Near Field Communicationの略）規格に従った通信方式であってもよい。通信機構は、第１の方式に従って、端末装置と無線通信を実行する第２のプリンタインターフェースであって、インターフェースメモリを有する第２のプリンタインターフェースを含んでいてもよい。プリンタは、サーバから印刷データを受信する処理と、受信済みの印刷データを印刷する処理と、を含むサーバ印刷機能を実行するか否かの機能可否設定が、ユーザによって選択されることを許容してもよい。プリンタは、プリンタの動作に応じて、プリンタの印刷実行部の状態が印刷を実行することができる状態とできない状態との間で状態が移行し、かつ、プリンタがサーバから印刷データを受信することができる状態とできない状態との間で状態が移行してもよい。プリンタ側通信部は、プリンタに、サーバ印刷機能を実行しない機能可否設定が選択されている場合に、第２のプリンタインターフェースを利用して、サーバ印刷機能を実行しない機能可否設定を示す第１の実行不可情報であって、インターフェースメモリに格納済みの第１の実行不可情報を端末装置に送信してもよい。プリンタは、所属状態が構築された後であって、プリンタの印刷実行部の状態が印刷を実行することができない状態と、プリンタの状態がサーバから印刷データを受信することができない状態と、の少なくとも一方の状態であるためにサーバ印刷機能を実行することができない場合に、第１のプリンタインターフェースを利用して、構築済みの無線ネットワークを介して、第２の実行不可情報を、端末装置に送信する第１のプリンタ側送信部を、さらに備えていてもよい。この構成によると、プリンタは、第１の実行不可情報を端末装置に送信することによって、ユーザによってサーバ印刷機能を実行しない機能可否設定が選択されていることに応じて、プリンタが印刷できないことを端末装置に知らせることができる。また、プリンタは、第２の実行不可情報を端末装置に送信することによって、プリンタの動作に応じて、プリンタが印刷できないことを端末装置に知らせることができる。即ち、プリンタは、第１の実行不可情報と第２の実行不可情報とのそれぞれの送信に応じて、プリンタが印刷することができない原因を、端末装置に知らせ得る。また、プリンタは、インターフェースメモリとは異なるメモリであってプリンタに備えられるメモリから、機能可否情報を取得せずに済む。
【００２４】
プリンタは、ユーザによって、機能可否設定が、サーバ印刷機能を実行する状態からサーバ印刷機能を実行しない状態に変更されることに応じて、第１の実行不可情報を、インターフェースメモリに格納させる格納制御部を、さらに備えていてもよい。この構成によると、プリンタの機能可否設定がサーバ印刷機能を実行する状態からサーバ印刷機能を実行しない状態に変更されるタイミングで、第１の実行不可情報を、インターフェースメモリに記憶できる。このため、プリンタ側通信部にて、適切に第１の実行不可情報を送信することができる。
【００２５】
プリンタは、所属状態が構築された後に、証明書を、第１のプリンタインターフェースを利用して、構築済みの無線ネットワークを介して、端末装置に送信する第２のプリンタ側送信部と、受信済みの認証情報を、証明書を利用して復号化部と、をさらに備えていてもよい。この構成によると、認証情報を送信する間に、認証情報が第三者に知られることを抑制することができる。
【００２６】
プリンタ側通信部は、さらに、通信機構を利用して、プリンタを識別するプリンタ識別情報を、端末装置に送信してもよい。第２のプリンタ側送信部は、さらに、第１のプリンタインターフェースを利用して、構築済みの無線ネットワークを介して、プリンタを識別するプリンタ識別情報を、端末装置に送信してもよい。この構成によると、端末装置が、適切な証明書を利用して、認証情報を暗号化し得る。これにより、第三者によって、暗号化された認証情報を復号化されることを抑制することができる。
【００２７】
上記のいずれかの装置（即ち端末装置又はプリンタ）を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。また、上記の端末装置及びプリンタ（即ち実在プリンタ）を備える通信システム、及び、上記の端末装置、プリンタ（即ち実在プリンタ）及びサーバを備える通信システムも、新規で有用である。
【図面の簡単な説明】
【００２８】
【図１】通信システムの構成を示す。
【図２】登録プロセスのシーケンス図を示す。
【図３】サブミットプロセスのシーケンス図を示す。
【図４】印刷プロセスにおいて、プリンタが印刷仲介サーバを利用した印刷処理に対応していないケースを示すシーケンス図を示す。
【図５】印刷プロセスにおいて、プリンタが印刷処理を実行不可能な状態であるケースを示すシーケンス図を示す。
【図６】印刷プロセスにおいて、プリンタが印刷仲介サーバと通信不可能なケースを示すシーケンス図を示す。
【図７】印刷プロセスにおいて、プリンタが印刷処理を実行可能なケースを示すシーケンス図を示す。
【発明を実施するための形態】
【００２９】
（第１実施例）
図１に示されるように、通信システム２は、プリンタ１０と、携帯端末７０と、印刷仲介サーバ１００と、を備える。各デバイス１０，７０，１００は、インターネットを介して、相互に通信可能である。
【００３０】
（プリンタ１０の構成）
プリンタ１０は、印刷機能を実行可能な周辺機器（即ちＰＣ等の周辺機器）である。プリンタ１０は、操作部１２と、表示部１４と、を備える。また、プリンタ１０は、ＮＦＣ（Near Field Communicationの略）プラグ１６を備える。また、プリンタ１０は、無線ＬＡＮ（Local Area Networkの略）インターフェース１８を備える。また、プリンタ１０は、印刷実行部２０を備える。また、プリンタ１０は、制御部３０を備える。各部１２〜３０は、バス線（符号省略）に接続されている。以下では、インターフェースのことを「Ｉ／Ｆ」と記載する。
【００３１】
操作部１２は、複数のキーを備える。ユーザは、操作部１２を操作することによって、様々な指示をプリンタ１０に与えることができる。ユーザは、操作部１２を操作することによって、後述する印刷仲介サーバ１００を介した印刷処理を実行するためのサーバ印刷機能の実行を許可するか否かを、選択することができる。表示部１４は、様々な情報を表示するためのディスプレイである。印刷実行部２０は、インクジェット方式、レーザ方式等の印刷機構である。
【００３２】
ＮＦＣプラグ１６は、いわゆる近距離無線通信のためのＮＦＣ方式に従った無線通信（以下では「ＮＦＣ通信」と呼ぶ）を実行するためのＩ／Ｆである。即ち、ＮＦＣプラグ１６は、ＩＣチップ又は、通信回路である。ＮＦＣ方式は、例えば、ＩＳＯ／ＩＥＣ２１４８１又は１８０９２の国際標準規格に基づく無線通信方式である。ＮＦＣ通信を実行するためのＩ／Ｆの種類として、ＮＦＣフォーラムデバイスと呼ばれるＩ／Ｆと、ＮＦＣフォーラムタグと呼ばれるＩ／Ｆと、が知られている。ＮＦＣプラグ１６は、ＮＦＣフォーラムタグであり、ＩＳＯ／ＩＥＣ２１４８１又は１８０９２の国際標準規格のＩＣタグとして機能する。
【００３３】
ＮＦＣフォーラムデバイスは、Ｐ２Ｐ（Peer To Peerの略）モード、Ｒ／Ｗ（Reader/Writerの略）モード、及び、ＣＥ（Card Emulationの略）モードのうちのいずれかのモードで、選択的に動作可能なＩ／Ｆである。例えば、第１の機器のＮＦＣＩ／Ｆと、第２の機器のＮＦＣＩ／Ｆと、の両方がＰ２Ｐモードで動作する場合には、第１及び第２の機器は、情報の双方向通信を実行することができる。また、例えば、第１の機器のＮＦＣＩ／ＦがＲ／ＷモードのうちのＲｅａｄｅｒモードで動作し、かつ、第２の機器のＮＦＣＩ／ＦがＣＥモードで動作する場合には、第１の機器は、第２の機器からの情報の読み出し、即ち、第２の機器からの情報の受信を実行することができる。また、例えば、第１の機器のＮＦＣＩ／ＦがＲ／ＷモードのうちのＷｒｉｔｅｒモードで動作し、かつ、第２の機器のＮＦＣＩ／ＦがＣＥモードで動作する場合には、第１の機器は、第２の機器への情報の書き込み、即ち、第２の機器への情報の送信を実行することができる。
【００３４】
例えば、ＮＦＣプラグ１６などのＮＦＣフォーラムタグは、上記の３つのモードのうちのいずれかのモードで選択的に動作可能なＩ／Ｆではなく、ＩＣタグのみとして機能するＩ／Ｆである。例えば、携帯端末７０のＮＦＣＩ／Ｆ７６がＲ／ＷモードのうちのＲｅａｄｅｒモードで動作する場合には、携帯端末７０は、ＭＦＰ１０のＮＦＣプラグ１６からの情報の読み出し、即ち、ＭＦＰ１０からの情報の受信を実行することができる。
【００３５】
ＮＦＣフォーラムタグは、上記の３つのモードのうちのいずれかのモードで選択的に動作可能なＩ／Ｆではないので、ＮＦＣフォーラムデバイスよりも簡易な構成を有する。即ちＩＣチップの構成が単純である。一般的に言うと、ＮＦＣフォーラムタグとして機能するＩＣチップは、ＮＦＣフォーラムデバイスとして機能するＩＣチップよりも安価である。
【００３６】
本実施例では、ＮＦＣプラグ１６は、制御部３０から供給される情報を長期間（例えば、制御部３０から他の情報が供給されるまでの期間）に亘って格納するためのインターフェースメモリ２１を備える。インターフェースメモリ２１の記憶内容は、ＣＰＵ３２によって変更可能である。
【００３７】
インターフェースメモリ２１は、ＭＦＰ１０が、サーバ印刷機能の実行が許容されているか否かを示すサーバ印刷対応情報（以下では「対応情報」と呼ぶ）が、格納されている。サーバ印刷機能は、印刷仲介サーバ１００から印刷データを受信する処理と、受信済みの印刷データに対する印刷処理と、を含む。ＣＰＵ３２は、ユーザによるサーバ印刷機能の実行を許可するか否かの選択に応じて、インターフェースメモリ２１に格納されている対応情報を更新する。例えば、ユーザが、操作部１２を操作することによって、サーバ印刷機能の実行を許容する状態から、許容しない状態に変更する場合に、ＣＰＵ３２は、サーバ印刷機能の実行が許容されていることを示す対応情報を、サーバ印刷機能の実行が許容されていないことを示す対応情報に更新する。インターフェースメモリ２１は、対応情報、後述の無線プロファイル及び後述の実在プリンタＩＤに代えて、インターネット上のヘルプサイトにアクセスするためのＵＲＬが格納されている場合がある。例えば、印刷実行部２０の装置的なエラー（例えばカバーが開いている、又は、トナー、インク、あるいは印刷用紙切れ等により印刷処理を実行することができない場合のエラー）が発生している場合、ＣＰＵ３２は、インターフェースメモリ２１に、エラーに対応するＵＲＬ（例えばエラーの内容を示す画像に対応するＵＲＬ、エラーの解決方法が記述された画像に対応するＵＲＬ）を格納させる。なお、変形例では、インターフェースメモリ２１は、対応情報、無線プロファイル及び実在プリンタＩＤとともに、ヘルプサイトにアクセスするためのＵＲＬを格納してもよい。
【００３８】
無線ＬＡＮＩ／Ｆ１８は、ＷＦＤ（Wi-Fi Directの略）方式に従った無線通信（以下では「ＷＦＤ通信」と呼ぶ）を実行するためのＩ／Ｆである。ＷＦＤ方式の詳細は、Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅによって作成された「Ｗｉ−Ｆｉ  Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ（Ｐ２Ｐ）  Ｔｅｃｈｎｉｃａｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｖｅｒｓｉｏｎ１．１」に記述されている。また、米国特許出願公開第２０１３／０２６０６８３号公報にも、ＷＦＤ方式の詳細が開示されており、当該文献を参照して引用する。
【００３９】
以下では、例えばＭＦＰ１０などのＷＦＤ方式に従ったＷＦＤ通信を実行可能な機器のことを、「ＷＦＤ対応機器」と呼ぶ。上記のＷＦＤの規格書では、ＷＦＤ対応機器の状態として、Ｇｒｏｕｐ  Ｏｗｎｅｒ状態（以下では「Ｇ／Ｏ状態」と呼ぶ）、クライアント状態（以下では「ＣＬ状態」と呼ぶ）、及び、デバイス状態の３つの状態が定義されている。ＷＦＤ対応機器は、通常、上記の３つの状態のうちの１つの状態で選択的に動作可能である。また、以下では、Ｇ／Ｏ状態のＷＦＤ対応機器のことを「Ｇ／Ｏ機器」と呼び、ＣＬ状態のＷＦＤ対応機器のことを「ＣＬ機器」と呼ぶ。さらに、以下では、ＷＦＤネットワークのことを「ＷＦＤＮＷ」と記載する場合がある。
【００４０】
インターフェースメモリ２１は、ＷＦＤのための無線プロファイルを格納する。無線プロファイルは、ＳＳＩＤ（Service Set IDentifierの略）と、認証方式と、暗号化方式と、パスワードと、ＭＦＰ１０のＭＡＣアドレスと、を含む。インターフェースメモリ２１は、さらに、プリンタ１０のプリンタＩＤである実在プリンタＩＤを格納する。
【００４１】
本実施例のＭＦＰ１０は、ＷＦＤ対応機器であるが、本実施例では、ＣＬ状態で動作することができない。また、ＭＦＰ１０は、他のＷＦＤ対応機器とＧ／Ｏネゴシエーションを実行するためのプログラムを搭載していない。即ち、ＭＦＰ１０は、Ｇ／Ｏ状態で動作している
【００４２】
ここでは、ＮＦＣプラグ１６と無線ＬＡＮＩ／Ｆ１８の相違点を説明しておく。無線ＬＡＮＩ／Ｆ１８を介した無線通信の通信速度（例えば、最大の通信速度が１１〜６００Ｍｂｐｓ）は、ＮＦＣプラグ１６を介した無線通信の通信速度（例えば、最大の通信速度が１００〜４２４Ｋｂｐｓ）よりも速い。また、無線ＬＡＮＩ／Ｆ１８を介した無線通信における搬送波の周波数（例えば、２．４ＧＨｚ帯、５．０ＧＨｚ帯）は、ＮＦＣプラグ１６を介した無線通信における搬送波の周波数（例えば、１３．５６ＭＨｚ帯）とは異なる。例えば、プリンタ１０のＮＦＣプラグ１６と例えば携帯端末７０などの他の機器のＮＦＣＩ／Ｆとの間の距離が約１０ｃｍ以下である場合に、他の機器のＮＦＣＩ／Ｆは、Ｒｅａｄｅｒモードで動作することによって、例えば無線プロファイルなどのＮＦＣプラグ１６のインターフェースメモリ２１に格納されている情報を読み取ることができる。
【００４３】
また、プリンタ１０の無線ＬＡＮＩ／Ｆ１８と例えば携帯端末７０などの他の機器の無線ＬＡＮＩ／Ｆとの間の距離が、１０ｃｍ以下である場合でも、１０ｃｍ以上である場合（例えば最大で約１００ｍ）でも、制御部３０は、無線ＬＡＮＩ／Ｆ１８を介して、当該他の機器と通常Ｗｉ−Ｆｉ通信を実行可能である。なお、通常Ｗｉ−Ｆｉ通信では、プリンタ１０は、アクセスポイント機能を有する機器を介して、当該他の機器と、無線通信を実行する。即ち、プリンタ１０が無線ＬＡＮＩ／Ｆ１８を介して他の機器と無線通信を実行可能な最大の距離は、プリンタ１０がＮＦＣプラグ１６を介して他の機器と無線通信を実行可能な最大の距離よりも大きい。
【００４４】
制御部３０は、ＣＰＵ３２と、メモリ３４と、を備える。ＣＰＵ３２は、メモリ３４に格納されているプログラムに従って、様々な処理を実行するプロセッサである。メモリ３４は、ＲＡＭ、ＲＯＭ、ハードディスク等によって構成される。メモリ３４は、上記のプログラムのみならず、プリンタ１０が様々な処理を実行する過程で生成又は取得される様々なデータを格納する。
【００４５】
（携帯端末７０の構成）
携帯端末７０は、例えばスマートフォンなどの携帯電話、ＰＤＡ、ノートＰＣ、タブレットＰＣ、携帯型音楽再生装置、携帯型動画再生装置等の可搬型の端末装置である。携帯端末７０は、操作部７２と、表示部７４と、ＮＦＣＩ／Ｆ７６と、無線ＬＡＮＩ／Ｆ７８と、制御部８０と、を備える。各部７２〜８０は、バス線（符号省略）に接続されている。
【００４６】
操作部７２は、複数のキーを備える。ユーザは、操作部７２を操作することによって、様々な指示を携帯端末７０に与えることができる。表示部７４は、様々な情報を表示するためのディスプレイである。ＮＦＣＩ／Ｆ７６は、ＮＦＣプラグ１６と異なり、ＮＦＣフォーラムデバイスである。無線ＬＡＮＩ／Ｆ７８は、プリンタ１０の無線ＬＡＮＩ／Ｆ１８と同様である。
【００４７】
ＮＦＣＩ／Ｆ７６と無線ＬＡＮＩ／Ｆ７８の相違点を説明しておく。無線ＬＡＮＩ／Ｆ７８を介した無線通信の通信速度は、ＮＦＣＩ／Ｆ７６を介した無線通信の通信速度（例えば、最大の通信速度が１００〜４２４Ｋｂｐｓ）よりも速い。また、無線ＬＡＮＩ／Ｆ７８を介した無線通信における搬送波の周波数は、ＮＦＣＩ／Ｆ７６を介した無線通信における搬送波の周波数（例えば、１３．５６ＭＨｚ帯）とは異なる。また、例えば、携帯端末７０のＮＦＣＩ／Ｆ７６と他の機器（例えばプリンタ１０）のＮＦＣプラグ１６との間の距離が約１０ｃｍ以下である場合に、制御部３０は、ＮＦＣＩ／Ｆ７６を介して、当該他の機器とＮＦＣ通信を実行可能である。即ち、携帯端末７０が無線ＬＡＮＩ／Ｆ７８を介して他の機器と無線通信を実行可能な最大の距離は、ＮＦＣＩ／Ｆ７６を介して他の機器と無線通信を実行可能な最大の距離よりも大きい。
【００４８】
制御部８０は、ＣＰＵ８２と、メモリ８４と、を備える。ＣＰＵ８２は、メモリ８４に格納されているプログラムに従って、様々な処理を実行するプロセッサである。メモリ８４は、ＲＡＭ、ＲＯＭ、ハードディスク等によって構成される。メモリ８４は、上記のプログラムのみならず、携帯端末７０が様々な処理を実行する過程で生成又は取得される様々なデータを格納する。
【００４９】
メモリ８４は、さらに、印刷仲介サーバ１００を利用して、プリンタ１０に印刷を実行させるためのプリンタ用アプリケーション（以下では「プリンタアプリ」と呼ぶ）を記憶する。プリンタアプリは、プリンタ１０のベンダによって提供されるアプリケーションである。プリンタアプリは、インターネット上のサーバから携帯端末７０にインストールされてもよいし、プリンタ１０と共に出荷されるメディアから携帯端末７０にインストールされてもよい。
【００５０】
（印刷仲介サーバ１００の構成）
印刷仲介サーバ１００は、インターネット上に設置されるサーバであり、例えば、Ｇｏｏｇｌｅ（登録商標）によって提供されるＧＣＰサーバである。ただし、変形例では、印刷仲介サーバ１００は、例えば、プリンタ１０のベンダによって提供されるサーバであってもよいし、プリンタ１０のベンダとは異なる事業者によって提供されるサーバであってもよい。
【００５１】
印刷仲介サーバ１００は、例えば携帯端末７０などの外部機器と例えばプリンタ１０などのプリンタとの間で印刷の仲介を実行するためのサーバである。即ち、印刷仲介サーバ１００は、外部機器からサブミットされる画像データを変換して、プリンタが解釈可能なデータ形式を有する印刷データを生成し、当該印刷データを当該プリンタに供給する。従って、外部機器は、画像データを印刷データに変換するためのプリンタドライバを備えていなくても、印刷仲介サーバ１００に画像データをサブミットすれば、プリンタに印刷を実行させることができる。
【００５２】
（事前準備）
上述したように、例えば、携帯端末７０は、印刷仲介サーバ１００を介した印刷をプリンタ１０に実行させることができる。以下では、図２〜図７を参照して、当該印刷のための様々な処理を説明する。なお、携帯端末７０のユーザは、図２〜図７に開示されている携帯端末７０の動作を実現するために、以下の事前準備を実行しておく必要がある。
【００５３】
即ち、ユーザは、例えば、携帯端末７０を利用して、印刷仲介サーバ１００にアカウント情報を登録しておく必要がある。アカウント情報は、例えば、ユーザＩＤ、パスワード等を含む。なお、ユーザは、携帯端末７０を利用する代わりに、他の機器（例えばＰＣ等）を利用して、印刷仲介サーバ１００にアカウント情報を登録してもよい。ユーザのアカウント情報が印刷仲介サーバ１００に登録されれば、ユーザは、携帯端末７０を利用して、印刷仲介サーバ１００を介した印刷をプリンタ１０に実行させることができる。
【００５４】
（登録プロセス；図２）
続いて、図２を参照して、携帯端末７０が必要な情報を印刷仲介サーバ１００に登録するための登録プロセスについて説明する。本実施例では、ＯＡｕｔｈを利用した登録プロセスが実行される。
【００５５】
登録プロセスでは、携帯端末７０のユーザは、プリンタ１０の近くに存在しなくてもよい。即ち、例えば、プリンタ１０が家庭内に設置されており、ユーザが携帯端末７０を持参して外出している状況において、ユーザは、携帯端末７０を利用して、様々な情報を印刷仲介サーバ１００に登録することができる。
【００５６】
携帯端末７０のユーザは、まず、携帯端末７０にインストールされているプリンタアプリを起動し、プリンタアプリに従って表示される画面上で「登録」を示すボタンを選択する（即ち登録操作を実行する）。
【００５７】
まず、携帯端末７０のＣＰＵ８２は、プリンタアプリに予め登録されている仮想印刷条件情報をメモリ８４から読み出す。仮想印刷条件情報は、実在プリンタ（例えばプリンタ１０）ではなく、仮想プリンタが利用可能な仮想的な印刷条件を示す情報であり、プリンタ１０のベンダによって予め決められた情報である。なお、図１に示されるように、プリンタアプリには、仮想印刷条件情報が予め登録されている。従って、仮想印刷条件情報は、例えばプリンタ１０などの実在プリンタから取得されることなく、メモリ８４に予め記憶されている。
【００５８】
仮想的な印刷条件は、例えば、画像が印刷されるべき印刷用紙のサイズ（即ち用紙サイズ）、両面印刷の実行の有無、例えばモノクロ印刷、カラー印刷などの色数（等を含む。本実施例では、予め決められている仮想的な印刷条件は、用紙サイズとして「Ａ４」及び「Ｂ５」を含み、両面印刷の実行の有無として「無」を含み、色数として「モノクロ印刷」及び「カラー印刷」を含む。仮想的な印刷条件は、さらに、印刷向き（例えば、ランドスケープ印刷、ポートレート印刷）等の他の条件を含んでいてもよい。
【００５９】
次いで、携帯端末７０のＣＰＵ８２は、携帯端末７０のプロキシＩＤ（即ち携帯端末７０を識別するためのＩＤ）をメモリ８４から読み出す。そして、ＣＰＵ８２は、無線ＬＡＮＩ／Ｆ７８を介して（即ちインターネットを介して）、仮想印刷条件情報とプロキシＩＤとを含む登録要求２００を、印刷仲介サーバ１００に送信する。なお、印刷仲介サーバ１００のＵＲＬ（即ち登録要求２００の送信先のＵＲＬ）は、プリンタアプリに予め登録されている。以下でも、特に説明しない限り、要求の送信先のＵＲＬは、プリンタアプリに予め登録されているＵＲＬであってもよい。ただし、要求の送信先のＵＲＬは、当該要求の送信前に印刷仲介サーバ１００から取得されたＵＲＬであってもよい。なお、本実施例では、ＣＰＵ８２は、無線ＬＡＮＩ／Ｆ７８を介して（即ちインターネットを介して）、印刷仲介サーバ１００と通信を実行する。
【００６０】
印刷仲介サーバ１００は、携帯端末７０から登録要求２００を受信すると、登録要求２００に含まれるプロキシＩＤを利用して、登録対象のプリンタを識別するための仮想プリンタＩＤ２０１を生成する。携帯端末７０が登録対象のプリンタとして例えばプリンタ１０などの実在プリンタを指定しているわけではないので（即ち、登録要求２００が、実在プリンタの印刷条件情報、実在プリンタのプロキシＩＤ等を含んでいないので）、印刷仲介サーバ１００によって生成される仮想プリンタＩＤ２０１は、仮想プリンタを識別するためのＩＤである。
【００６１】
印刷仲介サーバ１００は、生成済みの仮想プリンタの仮想プリンタＩＤ２０１と、登録要求２００に含まれる仮想印刷条件情報と、を関連付けて記憶する。図２において、印刷仲介サーバ１００に対応する破線の右側のボックスは、当該ボックス内の各情報が関連付けられている様子を示す。図３以降でも同様である。
【００６２】
次いで、印刷仲介サーバ１００は、生成済みの仮想プリンタＩＤ２０１と、後述のログイン画面データ２１２の所在を示すログイン用ＵＲＬと、を含むレスポンス２０２を、携帯端末７０に送信する。
【００６３】
携帯端末７０のＣＰＵ８２は、無線ＬＡＮＩ／Ｆ７８を介して、印刷仲介サーバ１００からレスポンス２０２を受信すると、レスポンス２０２に含まれる仮想プリンタＩＤ２０１をメモリ８４に記憶させる。次いで、ＣＰＵ８２は、レスポンス２０２に含まれるログイン用ＵＲＬを送信先に指定して、アクセス要求２１０を印刷仲介サーバ１００に送信する。
【００６４】
印刷仲介サーバ１００は、携帯端末７０からアクセス要求２１０を受信すると、ログイン画面データ２１２を携帯端末７０に送信する。ログイン画面データ２１２は、アカウント情報（即ちユーザＩＤ、パスワード等）を入力するためのログイン画面を表わすデータである。
【００６５】
携帯端末７０のＣＰＵ８２は、印刷仲介サーバ１００からログイン画面データ２１２を受信すると、ログイン画面データ２１２によって表わされるログイン画面を表示部７４に表示させる。ユーザは、操作部７２を利用して、上記の事前準備において印刷仲介サーバ１００に登録されたアカウント情報を、携帯端末７０に入力する。この場合、ＣＰＵ８２は、無線ＬＡＮＩ／Ｆ７８を介して、入力済みのアカウント情報を含むログイン要求２１４を、印刷仲介サーバ１００に送信する。
【００６６】
なお、上記の例では、アカウント情報がユーザによって携帯端末７０に入力される様子を説明したが、変形例では、例えば、携帯端末７０を利用して上記の事前準備が実行された場合には、携帯端末７０のメモリ８４は、アカウント情報を記憶していてもよい。この場合、携帯端末７０のＣＰＵ８２は、アカウント情報の入力をユーザに実行させずに、メモリ８４からアカウント情報を読み出して、アカウント情報を含むログイン要求２１４を印刷仲介サーバ１００に送信してもよい。なお、図３以降のプロセスにおいて、携帯端末７０から印刷仲介サーバ１００にログイン要求が送信される状況でも、本変形例が採用されてもよい。
【００６７】
印刷仲介サーバ１００は、携帯端末７０からログイン要求２１４を受信すると、ログイン要求２１４に含まれるアカウント情報の認証を実行する。具体的に言うと、印刷仲介サーバ１００は、ログイン要求２１４に含まれるアカウント情報が、印刷仲介サーバ１００に登録済みであるのか否かを判断する。印刷仲介サーバ１００は、アカウント情報が登録済みでないと判断する場合、即ち、アカウント情報の認証が失敗する場合には、図示省略しているが、ログイン失敗通知を携帯端末７０に送信する。この場合、後の処理が実行されることなく、登録プロセスが終了する。
【００６８】
一方において、印刷仲介サーバ１００は、アカウント情報が登録済みであると判断する場合、即ち、アカウント情報の認証が成功する場合には、ユニークな文字列であるトークンを生成する。トークンは、後の処理（例えば図５の印刷プロセス）で利用される認証のための情報である。以下では、ここで生成されるトークンのことを「ＡＴ（Authentication（もしくはAccess） Tokenの略）」と呼ぶ。
【００６９】
次いで、印刷仲介サーバ１００は、認証が成功したアカウント情報と、仮想プリンタの仮想プリンタＩＤ２０１と、仮想印刷条件情報と、生成済みのＡＴと、を関連付けて記憶する。そして、印刷仲介サーバ１００は、生成済みのＡＴを含むログイン成功通知２１６を携帯端末７０に送信する。
【００７０】
携帯端末７０のＣＰＵ８２は、印刷仲介サーバ１００からログイン成功通知２１６を受信すると、ログイン成功通知２１６に含まれるＡＴをメモリ８４に記憶させる。これにより、登録プロセスが終了する。
【００７１】
上述したように、登録プロセスでは、実在プリンタ（例えばプリンタ１０）の実在プリンタＩＤ及び印刷条件情報を印刷仲介サーバ１００に登録するのではなく、仮想プリンタの仮想プリンタＩＤ２０１及び仮想印刷条件情報を印刷仲介サーバ１００に登録する手法を採用している。即ち、携帯端末７０は、登録要求２００を印刷仲介サーバ１００に送信して、仮想プリンタの仮想プリンタＩＤ２０１及び仮想印刷条件情報を印刷仲介サーバ１００に登録する。このために、ユーザは、仮想プリンタＩＤ２０１及び仮想印刷条件情報（さらにはＡＴ）を印刷仲介サーバ１００に登録するために、印刷仲介サーバ１００との通信をプリンタ１０に実行させずに済む。
【００７２】
（サブミットプロセス；図３）
続いて、図３を参照して、携帯端末７０が印刷対象の画像を表わす画像データを印刷仲介サーバ１００にサブミットするためのサブミットプロセスについて説明する。サブミットプロセスでも、登録プロセスと同様に、携帯端末７０のユーザは、プリンタ１０の近くに存在しなくてもよい。例えば、ユーザは、外出先で携帯端末７０によって撮影された画像を表わす画像データを印刷仲介サーバ１００にサブミットすることができる。
【００７３】
携帯端末７０のユーザは、画像データを印刷仲介サーバ１００にサブミットすることを望む場合に、プリンタアプリを起動する。さらに、ユーザは、プリンタアプリに従って表示される画面上で「サブミット」を示すボタンを選択し、携帯端末７０のメモリ８４に記憶されている画像データを指定する（即ちサブミット操作を実行する）。なお、画像データは、印刷対象の画像を表わすデータであれば、どのような形式のデータであってもよく、例えば、ＪＰＥＧ（Joint Photographic Experts Groupの略）等のビットマップ形式のデータであってもよいし、ベクタ形式のデータであってもよいし、テキスト形式のデータであってもよいし、その他の形式のデータであってもよい。
【００７４】
画像データが選択されると、携帯端末７０のＣＰＵ８２は、印刷設定選択画面を表示部７４に表示させる。具体的に言うと、ＣＰＵ８２は、プリンタアプリに予め登録されている仮想印刷条件情報をメモリ８４から読み出して、仮想印刷条件情報によって示される仮想的な印刷条件の中から、画像の印刷のための印刷設定をユーザに選択させるための印刷設定選択画面を表示部７４に表示させる。
【００７５】
上述したように、仮想的な印刷条件は、用紙サイズとして「Ａ４」及び「Ｂ５」を含み、両面印刷の実行の有無として「無」を含み、色数として「モノクロ印刷」及び「カラー印刷」を含む。従って、印刷設定選択画面は、用紙サイズとして「Ａ４」又は「Ｂ５」を選択可能であると共に、色数として「モノクロ印刷」又は「カラー印刷」のうちのどちらかを選択可能である態様を有する。
【００７６】
ユーザは、印刷設定選択画面を見ながら、操作部７２を利用して、用紙サイズ（例えば「Ａ４」）及び色数（例えば「カラー」）を選択することによって、印刷設定を選択する。両面印刷の有無（即ち「無」）は、選択肢がないので、自動的に印刷設定に組み込まれる。
【００７７】
詳しくは後述するが、印刷仲介サーバ１００では、選択済みの印刷設定に従って印刷データが生成されて、当該印刷データがプリンタ１０に供給される（図７参照）。上述したように、選択済みの印刷設定は、仮想的な印刷条件の中から選択されたものであり、プリンタ１０が実際に利用可能な印刷条件の中から選択されたものではない。即ち、プリンタ１０が選択済みの印刷設定に従った印刷を実行可能であるという保証がない。ただし、本実施例では、プリンタ１０のベンダは、通常のプリンタ（例えば当該ベンダが販売している全てのプリンタ）が利用可能な印刷条件を仮想的な印刷条件として予め決定して、そのような仮想的な印刷条件を示す仮想印刷条件情報を含むプリンタアプリを提供する。従って、本実施例では、プリンタ１０は、選択済みの印刷設定に従った印刷を適切に実行することができる。
【００７８】
携帯端末７０のＣＰＵ８２は、ユーザによって印刷設定が選択されると、無線ＬＡＮＩ／Ｆ７８を介して、受信済みのＡＴと、メモリ８４内の仮想プリンタの仮想プリンタＩＤ２０１と、ユーザによって指定された画像データ２３２と、ユーザによって指定された選択された印刷設定を示す印刷設定情報２３４と、を含むサブミット要求２３０を、印刷仲介サーバ１００に送信する。
【００７９】
印刷仲介サーバ１００は、携帯端末７０からサブミット要求２３０を受信すると、サブミット要求２３０に含まれるＡＴの認証を実行する。印刷仲介サーバ１００は、ＡＴを記憶していると判断する場合（即ち、ＡＴの認証が成功する場合）に、サブミット要求２３０に含まれる各情報を関連付けて記憶する。この結果、印刷仲介サーバ１００において、第２のＡＴの生成時に記憶された各情報（即ち、アカウント情報、仮想プリンタＩＤ２０１、仮想印刷条件情報、ＡＴ）と、第１のジョブ情報２４０（即ち、画像データ２３２及び印刷設定情報２３４）と、が関連付けることができる。そして、印刷仲介サーバ１００は、サブミット成功通知２３６を携帯端末７０に送信する。
【００８０】
携帯端末７０のＣＰＵ８２は、無線ＬＡＮＩ／Ｆ７８を介して、印刷仲介サーバ１００からサブミット成功通知２３６を受信する。これにより、１個のジョブ情報２４０をサブミットするためのサブミットプロセスが終了する。なお、ユーザは、さらに、他の画像データを印刷仲介サーバ１００にサブミットすることを望む場合には、上記と同様の操作を実行する。これにより、携帯端末７０のＣＰＵ８２は、上記と同様の処理を実行することによって、さらに、第２のジョブ情報２５０を印刷仲介サーバ１００にサブミットすることができる。この結果、印刷仲介サーバ１００では、アカウント情報、仮想プリンタＩＤ２０１等に関連付けて、２個のジョブ情報（即ち、第１及び第２のジョブ情報２４０，２５０）が記憶される。
【００８１】
（印刷プロセス；図４〜７）
続いて、図４〜７を参照して、携帯端末７０が第１のジョブ情報２４０に従った印刷をプリンタ１０に実行させるための印刷プロセスについて説明する。印刷プロセスでは、携帯端末７０のユーザは、プリンタ１０の近くに存在しなくてはならない。後述するように、携帯端末７０及びプリンタ１０がＮＦＣ通信を実行しなければならないからである。従って、ユーザは、例えば、外出先から帰宅した後に、携帯端末７０を利用して、プリンタ１０に印刷を実行させる。
【００８２】
印刷仲介サーバ１００では、アカウント情報と、仮想プリンタＩＤ２０１と、仮想印刷条件情報と、ＡＴと、第１のジョブ情報２４０と、第２のジョブ情報２５０と、が関連付けられる。
【００８３】
携帯端末７０のユーザは、第１のジョブ情報２４０に従った印刷をプリンタ１０に実行させることを望む場合に、プリンタアプリを起動し、プリンタアプリに従って表示される画面上で「印刷」を示すボタンを選択する（即ち印刷操作を実行する）。この場合、携帯端末７０のＣＰＵ８２は、プリンタアプリに従って、図４〜７に示される各処理を実行する。
【００８４】
（プリンタが印刷仲介サーバを利用した印刷処理に対応していないケース；図４）
携帯端末７０のＣＰＵ８２は、まず、メモリ８４からＡＴ及び仮想プリンタＩＤ２０１（即ち図２の登録プロセスでメモリ８４に記憶された各情報）を読み出す。そして、ＣＰＵ８２は、無線ＬＡＮＩ／Ｆ７８を介して、ＡＴ及び仮想プリンタＩＤ２０１を含むファイルリスト要求３８０を、印刷仲介サーバ１００に供給する。
【００８５】
印刷仲介サーバ１００は、携帯端末７０からファイルリスト要求３８０を取得すると、ファイルリスト要求３８０に含まれるＡＴ及び仮想プリンタＩＤ２０１の認証を実行する。そして、印刷仲介サーバ１００は、ＡＴ及び仮想プリンタＩＤ２０１が登録済みであると判断する場合（即ち、認証が成功する場合）に、それらの情報に関連付けられている各ジョブ情報２４０，２５０を含むジョブリスト３８２を携帯端末７０に供給する。
【００８６】
携帯端末７０のＣＰＵ８２は、無線ＬＡＮＩ／Ｆ７８を介して、印刷仲介サーバ１００からジョブリスト３８２を受信すると、ジョブリスト３８２に含まれる各ジョブ情報２４０，２５０を利用して、ジョブ選択画面を表示部７４に表示させる。ジョブ選択画面は、各ジョブ情報２４０，２５０に含まれる各画像データを含むファイルのファイル名を含む。従って、ユーザは、ジョブ選択画面を見ることによって、各画像データを含むファイルのファイル名を知ることができる。そして、ユーザは、操作部７２を操作して、１個以上のファイル名を選択する。以下では、ジョブ情報２４０に含まれる画像データ２３２に対応する１個のファイル名がユーザによって選択された場合を例として、説明を続ける。
【００８７】
次いで、携帯端末７０のＣＰＵ８２は、携帯端末７０をプリンタ１０に近づけることを促すメッセージを表示部７４に表示させる。この結果、携帯端末７０のユーザは、携帯端末７０をプリンタ１０に近づける。プリンタ１０のＮＦＣプラグ１６と携帯端末７０のＮＦＣＩ／Ｆ７６との間の距離（以下では「デバイス間距離」と呼ぶ）が、所定の距離（例えば１０ｃｍ）より大きい状態から、上記の所定の距離以下である状態になると、ＮＦＣプラグ１６とＮＦＣＩ／Ｆ７６との間にＮＦＣ方式の接続であるＮＦＣ接続４００が確立される。
【００８８】
ＮＦＣ接続４００が確立されると、ＣＰＵ８２は、ＮＦＣＩ／Ｆ７６を、Ｒｅａｄｅｒモードで動作することによって、ＮＦＣプラグ１６のインターフェースメモリ２１内に格納されている対応情報４０２と、無線プロファイル４０４と、プリンタ１０のプリンタＩＤである実在プリンタＩＤと、をインターフェースメモリ２１から読み出す。この構成によると、プリンタ１０は、対応情報４０２を、インターフェースメモリ２１以外のプリンタ１０のメモリから取得せずに済む。次いで、ＣＰＵ８２は、取得済みの対応情報４０２を用いて、サーバ印刷機能の実行が許容されているか否かを判断する。
【００８９】
ＣＰＵ８２は、対応情報４０２が、サーバ印刷機能の実行が許容されていない、即ち、サーバ印刷機能が実行不可能であることを示す場合に、表示部７４に、サーバ印刷機能が許容されていないことを示す画面を表示させて、処理を終了する。この構成によると、携帯端末７０は、プリンタ１０の設定が、サーバ印刷機能が実行不可能に設定されていることをユーザに通知することができる。携帯端末７０のユーザは、プリンタ１０の設定が、サーバ印刷機能が実行不可能に設定されていることを知ることができる。これにより、携帯端末７０のユーザは、表示部７４を確認することによって、サーバ印刷機能が許容されていないプリンタを探索するか、あるいは、プリンタ１０の管理者に、サーバ印刷機能の設定を、実行不可能から実行可能に変更してもらう等の対応を実行することができる。なお、変形例では、プリンタ１０のＣＰＵ３２は、ＮＦＣ接続４００の確立を検出したことに応じて、サーバ印刷機能を実行可能でない理由を、プリンタ１０の表示部１４に表示させてもよい。この場合、携帯端末７０のＣＰＵ８２は、表示部７４に、サーバ印刷機能が許容されていないことを示す画面を表示させなくてもよい。
【００９０】
この場合、携帯端末７０とプリンタ１０とは、プリンタ１０と携帯端末７０との双方がＷＦＤＮＷに所属する所属状態を構築しない。この構成によれば、携帯端末７０とプリンタ１０とは、プリンタ１０がサーバ印刷機能を実行することができないにも関わらず、ＷＦＤＮＷが構築される事態を回避することができる。
【００９１】
なお、ＣＰＵ８２は、インターフェースメモリ２１内に、ヘルプサイトのＵＲＬが格納されている場合、対応情報４０２と無線プロファイル４０４との代わりに、当該ＵＲＬを、インターフェースメモリ２１から読み出す。次いで、ヘルプサイトのＵＲＬが読み出される場合、ＣＰＵ８２は、読出し済みのＵＲＬにアクセスするか否かを問合せるための画面を、表示部７４に表示させて処理を終了する。ユーザは、操作部７２を操作することによって、プリンタ１０は、携帯端末７０に、ヘルプサイトにアクセスさせることができる。これにより、ユーザは、プリンタ１０のエラーの内容、あるいは、エラーの解消方法をヘルプサイトから取得することができる。
【００９２】
（プリンタが印刷処理を実行不可能な状態であるケース；図５）
図５の処理では、ＮＦＣ接続４００が確立されるまでは、図４に記載の各機器１０，７０，１００の処理と同様であるため、省略されている。また、図４と同様に、ＣＰＵ８２は、ＮＦＣ接続４００が確立され、対応情報４０２と、無線プロファイル４０４と、をインターフェースメモリ２１から読み出すと、取得済みの対応情報４０２を用いて、サーバ印刷機能の実行が許容されているか否かを判断する。
【００９３】
対応情報４０２が、サーバ印刷機能の実行が許容されている、即ち、サーバ印刷機能が実行可能であると判断される場合であって、かつ、ヘルプサイトのＵＲＬが読み出されない場合に、ＣＰＵ８２は、プリンタ１０のＣＰＵ３２と、ＷＦＤＮＷを構築するための処理を実行する。具体的には、ＣＰＵ８２は、無線ＬＡＮＩ／Ｆ７８を介して、無線プロファイル４０４に含まれるＳＳＩＤを含む接続要求（具体的には、Probe Request）を、プリンタ１０に送信する。
【００９４】
プリンタ１０のＣＰＵ３２は、携帯端末７０から、無線ＬＡＮＩ／Ｆ１８を介して、接続要求を受信すると、ＣＰＵ３２とＣＰＵ８２とは、無線接続処理を実行して、プリンタ１０と携帯端末７０との無線接続を確立する。具体的には、ＣＰＵ３２は、接続要求（即ち、Probe Request）を受信すると、Probe Responseを対象端末に送信する。次いで、ＣＰＵ８２は、Authentication Request及びAssociation Requestを順次送信する。ＣＰＵ３２は、Authentication Request及びAssociation Requestに対する応答として、Authentication Response及びAssociation Responseを携帯端末７０に順次送信する。そして、ＣＰＵ３２とＣＰＵ８２とは、4-way handshakeを実行する。
【００９５】
上記の各プロセスが終了すると、プリンタ１０と携帯端末７０との間で、無線接続が確立される。なお、上述した通り、ＭＦＰ１０は、予めＧ／Ｏ状態で動作している。これにより、プリンタ１０は、ＷＦＤＮＷに携帯端末７０を子局（即ち、ＣＬ機器）として参加させる。ＣＰＵ３２は、管理リスト（即ち、Ｇ／Ｏ機器の管理リスト）に対象端末のＭＡＣアドレスを記述する。これにより、プリンタ１０と携帯端末７０との双方がＷＦＤＮＷに所属する所属状態が構築される。携帯端末７０のＣＰＵ８２は、構築済みのＷＦＤＮＷを介して、プリンタ１０と通信（例えば、印刷データの送信）を実行することができる。
【００９６】
ＷＦＤＮＷの構築が完了すると、携帯端末７０のＣＰＵ８２は、ＨＴＴＰ（Hypertext Transfer Protocolの略）に従って、ＷＦＤＮＷの通信で利用される証明書を、プリンタ１０から取得するための証明書要求５０２を、無線ＬＡＮＩ／Ｆ８２を介して（即ちＷＦＤＮＷを介して）、プリンタ１０に送信する。プリンタ１０のＣＰＵ３２は、証明書要求５０２を受信すると、プリンタ１０がＷＦＤＮＷの通信に利用する証明書５０４、及び、プリンタ１０のプリンタＩＤ５０６を、携帯端末７０に送信する。
【００９７】
携帯端末７０のＣＰＵ８２は、証明書５０４と実在プリンタＩＤ５０６とを受信すると、証明書５０４が適切な証明書であるか否かを判断する。具体的には、ＣＰＵ８２は、受信済みの実在プリンタＩＤ５０６が、証明書要求５０２が送信されたプリンタ１０の実在プリンタＩＤと一致するか否かを、判断する。なお、携帯端末７０は、ＮＦＣＩ／Ｆ７６を介して、無線プロファイル４０４とともに、プリンタ１０の実在プリンタＩＤを、プリンタ１０から取得している。実在プリンタＩＤが一致する場合に、ＣＰＵ８２は、証明書５０４が適切な証明書であると判断し、実在プリンタＩＤが一致しない場合に、証明書５０４が適切な証明書でないと判断する。これにより、証明書要求５０２の送信先の機器と、証明書５０４の送信元の機器と、が一致していることを確認することができる。この結果、証明書５０４が適切な証明書であるか否かを判断することできるこれにより、第三者によって、暗号化された情報を復号化されることを抑制することができる。なお、証明書５０４が適切な証明書でないと判断される場合、ＣＰＵ８２は、表示部７４に、証明書５０４が適切な証明書でないことを示す画面を表示させて、処理を終了する。
【００９８】
証明書５０４が適切な証明書であると判断される場合、ＣＰＵ８２は、証明書５０４を利用して、メモリ８４内のＡＴ、仮想プリンタＩＤ２０１と、ユーザによって選択済みのジョブ情報２４０を、暗号化する。次いで、ＣＰＵ８２は、無線ＬＡＮＩ／Ｆ８２を介して、ＨＴＴＰＳ（Hypertext Transfer Protocol Secureの略）暗号化済みの暗号化情報５０８（即ち、ＡＴ、仮想プリンタＩＤ２０１、ジョブ情報２４０，２５０）を、プリンタ１０に送信する。この構成によると、ＡＴ等を送信する間に、ＡＴ等が第三者に知られることを抑制することができる。
【００９９】
プリンタ１０のＣＰＵ３２は、暗号化情報５０８を受信すると、暗号化情報５０８を復号化して、ＡＴ、仮想プリンタＩＤ２０１、ジョブ情報２４０，２５０を取得する。次いで、ＣＰＵ３２は、プリンタ１０が携帯端末７０から受信されたジョブ情報２４０を利用して、サーバ印刷機能を実行可能であるか否かを判断する。具体的には、例えば、プリンタ１０が、携帯端末７０以外の機器から受信されたジョブ情報を利用して、サーバ印刷機能を実行している場合、プリンタ１０にＩＰアドレスが設定されていない（即ち、インターネットに接続されていない）場合、あるいは、プリンタ１０の管理者によって、携帯端末７０からのサーバ印刷機能が禁止されている場合、ＣＰＵ３２は、受信済みのジョブ情報２４０を利用して、サーバ印刷機能を実行可能でないと判断する。
【０１００】
ＣＰＵ３２は、プリンタ１０が携帯端末７０から受信されたジョブ情報を利用して、サーバ印刷機能を実行可能でないと判断する場合、無線ＬＡＮＩ／Ｆ１８を介して、サーバ印刷機能を実行可能でないＮＧ理由（例えばＩＰアドレスが設定されいない等）を示すエラー情報５１０を、携帯端末７０に送信する。この構成によると、プリンタ１０は、プリンタ１０の状態に応じて、印刷を実行することができないことを、携帯端末７０に知らせることができる。また、プリンタ１０は、適切なタイミングで、ＮＧ理由を、携帯端末７０に送信することができる。
【０１０１】
携帯端末７０のＣＰＵ８２は、無線ＬＡＮＩ／Ｆ８２を介して、エラー情報５１０が受信されると、エラー情報５１０によって表されるサーバ印刷機能を実行可能でないＮＧ理由を、表示部７４に表示させて、処理を終了する。この構成によると、携帯端末７０は、プリンタ１０がサーバ印刷機能を実行可能でないことを知ることができる。携帯端末７０のユーザは、プリンタ１０がサーバ印刷機能を実行可能でない理由を知ることができる。なお、変形例では、サーバ印刷機能を実行可能でない理由を、プリンタ１０の表示部１４に表示させてもよい。この場合、携帯端末７０のＣＰＵ８２は、表示部７４に、ＮＧ理由を表示させなくてもよい。
【０１０２】
（プリンタが印刷仲介サーバと通信不可能なケース；図６）
図６の処理では、プリンタ１０のＣＰＵ３２が、暗号化情報５０８を受信するまでは、図５に記載の各機器１０，７０，１００の処理と同様であるため、省略されている。また、図５と同様に、ＣＰＵ３２は、プリンタ１０が携帯端末７０から受信されたジョブ情報を利用して、サーバ印刷機能を実行可能であるか否かを判断する。ＣＰＵ３２は、プリンタ１０が携帯端末７０から受信されたジョブ情報を利用して、サーバ印刷機能を実行可能であると判断する場合、無線ＬＡＮＩ／Ｆ１８を介して、サーバ印刷機能を実行可能であることを示す印刷可能情報６００を、携帯端末７０に送信する。図示省略するが、携帯端末７０のＣＰＵ８２は、印刷可能情報６００が受信されると、サーバ印刷機能を実行可能であることを示す画面を、表示部７４に表示させる。
【０１０３】
次いで、ＣＰＵ３２は、無線ＬＡＮＩ／Ｆ１８を介して、（即ちインターネットを介して）、ＡＴと、仮想プリンタＩＤ２０１と、を含むジョブリスト要求６０２を、印刷仲介サーバ１００に送信することを試行する。ここで、ＣＰＵ３２は、ジョブリスト要求６０２を送信してから、所定期間内に、ジョブリスト要求６０２に対する応答を受信しない場合（例えば、電源ＯＦＦ等で、印刷仲介サーバ１００が通信を実行することができない状態である場合）、無線ＬＡＮＩ／Ｆ１８を介して、（即ちＷＦＤＮＷを介して）、印刷仲介サーバ１００と通信を実行することができないことを示すエラー情報６０４を、携帯端末７０に送信する。
【０１０４】
携帯端末７０のＣＰＵ８２は、無線ＬＡＮＩ／Ｆ７８を介して（即ちＷＦＤＮＷを介して）、エラー情報６０４が受信されると、エラー情報６０４に基づいて、印刷仲介サーバ１００と通信を実行可能でないことを示す画面を、表示部７４に表示して処理を終了する。この構成によると、携帯端末７０のユーザは、印刷仲介サーバ１００と通信を実行可能でないことを知ることができる。
【０１０５】
一方、印刷仲介サーバ１００が、プリンタ１０からジョブリスト要求６０２を受信する場合、ジョブリスト要求６０２に含まれるＡＴ及び仮想プリンタＩＤ２０１の認証を実行する。そして、印刷仲介サーバ１００は、ＡＴ及び仮想プリンタＩＤ２０１を記憶していないと判断する場合（即ち、ＡＴ及び仮想プリンタＩＤ２０１の認証が失敗する場合）に、認証失敗を表すエラー情報６０６を、プリンタ１０に送信する。
【０１０６】
また、印刷仲介サーバ１００は、ＡＴ及び仮想プリンタＩＤ２０１を記憶していると判断する場合（即ち、ＡＴ及び仮想プリンタＩＤ２０１の認証が成功する場合）に、認証が成功したＡＴ及び仮想プリンタＩＤ２０１に関連付けられているジョブ情報が存在するか否かを判断する。印刷仲介サーバ１００は、ＡＴ及び仮想プリンタＩＤ２０１に関連付けられているジョブ情報が存在しない場合に、ジョブ情報が無いことを示すエラー情報６０６を、プリンタ１０に送信する。
【０１０７】
プリンタ１０のＣＰＵ３２は、データ６０６が受信されると、無線ＬＡＮＩ／Ｆ１８を介して、データ６０６に示されるエラー情報６０８（即ち、認証失敗、あるいは、ジョブ情報なし）を、携帯端末７０に送信する。
【０１０８】
携帯端末７０のＣＰＵ８２は、無線ＬＡＮＩ／Ｆ７８を介して、エラー情報６０８が受信されると、エラー情報６０８に基づいて、認証が失敗したこと、あるいは、ジョブ情報が存在しないことを示す画面を、表示部７４に表示して処理を終了する。この構成によると、携帯端末７０のユーザは、エラーの原因を知ることができる。
【０１０９】
（プリンタが印処理可能なケース；図７）
図７の処理では、プリンタ１０のＣＰＵ３２が、暗号化情報５０８を受信するまでは、図５に記載の各機器１０，７０，１００の処理と同様であるため、省略されている。また、図６と同様に、ＣＰＵ３２は、サーバ印刷機能を実行可能であると判断する場合、サーバ印刷機能を実行可能であることを示す印刷可能情報６００を示すデータを、携帯端末７０に送信し、さらに、ジョブリスト要求６０２を、印刷仲介サーバ１００に送信する。
【０１１０】
印刷仲介サーバ１００は、プリンタ１０からジョブリスト要求６０２を受信すると、ジョブリスト要求６０２に含まれるＡＴ及び仮想プリンタＩＤ２０１の認証を実行する。ＡＴ及び仮想プリンタＩＤ２０１を記憶していると判断する場合（即ち、ＡＴ及び仮想プリンタＩＤ２０１の認証が成功する場合）、印刷仲介サーバ１００は、認証が成功したＡＴ及び仮想プリンタＩＤ２０１に関連付けられているジョブ情報が存在するか否かを判断する。印刷仲介サーバ１００は、ＡＴ及び仮想プリンタＩＤ２０１に関連付けられているジョブ情報が存在する場合に、第１のジョブ情報２４０、第２のジョブ情報２５０のそれぞれを識別するための２個のジョブＩＤと、後述の印刷データＤ１，Ｄ２の所在を示すＵＲＬと、を含むジョブリスト７０２を生成する。そして、印刷仲介サーバ１００は、ジョブリスト７０２をプリンタ１０に送信する。
【０１１１】
ＣＰＵ３２は、無線ＬＡＮＩ／Ｆ１８を介して、印刷仲介サーバ１００からジョブリスト７０２を取得すると、ジョブリスト７０２に含まれる第１のジョブ情報２４０に対応するＵＲＬを送信先に指定して、無線ＬＡＮＩ／Ｆ１８を介して、ＡＴと、仮想プリンタＩＤ２０１と、を含む印刷データ要求７０４を供給する。また、印刷データ要求７０４は、プリンタ１０が解釈可能なデータ形式を示す情報（図示省略）も含む。当該データ形式は、例えば、ＰＤＦ（Portable Document Formatの略）である。
【０１１２】
印刷仲介サーバ１００は、プリンタ１０から印刷データ要求７０４を取得すると、印刷データ要求７０４に含まれるＡＴと、仮想プリンタＩＤ２０１と、を用いて認証を実行する。認証の手法は上記と同様である。印刷仲介サーバ１００は、認証が成功する場合に、変換処理を実行する。即ち、印刷仲介サーバ１００は、第１のジョブ情報２４０に含まれる印刷設定情報２３４と、印刷データ要求７０４に含まれるデータ形式を示す情報と、に従って、第１のジョブ情報２４０に含まれる画像データ２３２を変換して、印刷データＤ１を生成する。例えば、印刷設定情報２３４が、用紙サイズとして「Ａ４」を含み、両面印刷の有無として「無」を含み、色数として「カラー」を含み、刷データ要求７０４がＰＤＦ形式を示す情報を含む場合には、印刷仲介サーバ１００は、Ａ４の印刷用紙の片面のみにカラー画像の印刷を実行するためのＰＤＦ形式の印刷データＤ１を生成する。
【０１１３】
次いで、印刷仲介サーバ１００は、ジョブリスト７０４に含まれるＵＲＬに対応する位置に、生成済みの印刷データＤ１を記憶させる。そして、印刷仲介サーバ１００は、印刷データ要求７０４の送信先であるＵＲＬに対応する位置に記憶されている印刷データＤ１をプリンタ１０に送信する。
【０１１４】
プリンタ１０のＣＰＵ３２は、無線ＬＡＮＩ／Ｆ１８を介して、印刷仲介サーバ１００から印刷データＤ１を取得する。そして、ＣＰＵ３２は、取得済みの印刷データＤ１を印刷実行部２０に供給する。この結果、印刷実行部２０は、印刷データＤ１を用いて、印刷処理を実行する。具体的には、印刷実行部２０は、印刷データＤ１によって表わされる画像を印刷用紙に印刷する。これにより、携帯端末７０のユーザは、印刷済みの印刷用紙を取得することができる。
【０１１５】
（実施例の効果）
本実施例では、図２の登録プロセスに示されるように、例えばプリンタ１０などの実在プリンタの印刷条件情報を印刷仲介サーバ１００に登録するのではなく、仮想プリンタの仮想印刷条件情報を印刷仲介サーバ１００に登録する手法を採用している。このために、携帯端末７０のユーザは、印刷条件情報（即ち仮想印刷条件情報）を印刷仲介サーバ１００に登録するために、印刷仲介サーバ１００との通信をプリンタ１０に実行させずに済む。従って、ユーザは、プリンタ１０のウェブサーバ機能にアクセスするための作業を実行せずに済み、仮想印刷条件情報を印刷仲介サーバ１００に容易に登録することができる。
【０１１６】
また、図５の印刷プロセスに示されるように、プリンタ１０と携帯端末７０との通信は、ＷＦＤＮＷを利用して実行される。このため、プリンタ１０と携帯端末７０との通信の通信速度を高くすることができる。また、携帯端末７０のユーザは、プリンタ１０の周辺に位置しなくても、プリンタ１０と携帯端末７０とは通信を実行することができる。
【０１１７】
（対応関係）
携帯端末７０、プリンタ１０、印刷仲介サーバ１００が、それぞれ、「端末装置」、「実在プリンタ」、「サーバ」の一例である。ＮＦＣＩ／Ｆ７６、無線ＬＡＮＩ／Ｆ７８が、それぞれ、「第１の端末インターフェース」、「第２の端末インターフェース」の一例である。ＮＦＣＩ／Ｆ７６が、「通信機構」、「第２のプリンタインターフェース」の一例である。無線ＬＡＮＩ／Ｆ７８が、「第１のプリンタインターフェース」の一例である。ＮＦＣ方式、ＷＦＤ方式が、それぞれ、「第１の方式」、「第２の方式」の一例である。
【０１１８】
ＡＴが、「認証情報」の一例である。仮想プリンタＩＤ２０１、仮想印刷条件情報が、「仮想プリンタ関連情報」の一例である。画像データ２３２が、「画像データ関係情報」の一例である。実在プリンタＩＤ５０６が、「プリンタ識別情報」の一例である。対応情報４０２が、「第１の実行不可情報」の一例であり、エラー情報５１０、６０４，６０８が「第２の実行不可情報」の一例である。
【０１１９】
携帯端末７０において、図２の登録要求２００を送信する処理、ログイン成功通知２１６を受信する処理が、それぞれ、「第１の端末側送信部」、「第１の端末側受信部」によって実行される処理の一例である。携帯端末７０において、図５〜図７の暗号化情報５０８を送信する処理が、「第２の端末側送信部」によって実行される処理の一例である。携帯端末７０において、図３のサブミット要求２３０を送信する処理が、「第３の端末側送信部」によって実行される処理の一例である。携帯端末７０において、図４の対応情報４０２を受信する処理、サーバ印刷機能不可を表示する処理が、それぞれ、「第２の端末側受信部」、「第１の表示制御部」によって実行される処理の一例である。携帯端末７０において、図５、図６のエラー情報５１０，６０４，６０８を受信する処理が、「第３の端末側受信部」によって実行される処理の一例である。携帯端末７０において、図５のＮＧ理由を表示する処理、図６のエラー内容を表示する処理が、「第２の表示制御部」によって実行される処理の一例である。携帯端末７０において、図５の証明書が適切であると判断する構成が、「判断部」によって実行される処理の一例である。
【０１２０】
プリンタ１０において、図５〜図７の暗号化情報５０８を受信する処理が、「プリンタ側受信部」によって実行される処理の一例である。プリンタ１０において、図５、図６のエラー情報５１０，６０４，６０８を送信する処理が、「第１のプリンタ側送信部」によって実行される処理の一例である。プリンタ１０において、図５の証明書５０４を送信する処理が、「第２のプリンタ側送信部」によって実行される処理の一例である。プリンタ１０において、図５〜図７の暗号化情報５０８を復号化する処理が、「復号化部」によって実行される処理の一例である。
【０１２１】
プリンタにおいて、図５のＮＦＣ接続４００を実行する処理、対応情報４０２、無線プロファイル４０４を送信する処理が「プリンタ側通信部」によって実行される処理の一例であり、携帯端末７０において、図５のＮＦＣ接続４００を実行する処理、対応情報４０２、無線プロファイル４０４を受信する処理が「端末側通信部」によって実行される処理の一例である。プリンタ１０において、図５のＷＦＤＮＷを構築する処理が「プリンタ側構築部」によって実行される処理の一例であり、携帯端末７０において、図５のＷＦＤＮＷを構築する処理が「端末側構築部」によって実行される処理の一例である。
【０１２２】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【０１２３】
（１）第１実施例では、プリンタＩＤを先に生成させ、次いで、ログイン要求２１４を後で送信するＯＡｕｔｈの手法を利用した登録プロセスが実行されるが（図２参照）、ログイン要求２１４を先に送信し、次いで、プリンタＩＤを後で生成させるＣｌｉｅｎｔ  Ｌｏｇｉｎの手法を利用した登録プロセスが実行されてもよい。
【０１２４】
（２）上記の実施例では、図２の登録プロセスにおいて、携帯端末７０は、仮想印刷条件情報を含む登録要求２００を印刷仲介サーバ１００に送信する。これに代えて、例えば、仮想印刷条件情報がインターネット上のデータサーバ（即ちプリンタ１０のベンダによって提供されるサーバ）に記憶されている場合には、携帯端末７０は、仮想印刷条件情報のＵＲＬを含む登録要求を、印刷仲介サーバ１００に送信してもよい。この場合、印刷仲介サーバ１００は、仮想印刷条件情報のＵＲＬを利用して、データサーバから仮想印刷条件情報を取得し、取得済み仮想印刷条件情報を記憶してもよい。また、印刷仲介サーバ１００がプリンタ１０のベンダによって提供されるサーバである場合には、印刷仲介サーバ１００は、仮想印刷条件情報を予め記憶していてもよい。この場合、携帯端末７０は、仮想印刷条件情報も仮想印刷条件情報のＵＲＬも含まない登録要求を、印刷仲介サーバ１００に送信すればよい。
【０１２５】
（３）上記の実施例では、図５の印刷プロセスが実行される状況において、図２の登録プロセスで生成されたＡＴが印刷仲介サーバ１００に登録されている。ただし、図５の印刷プロセスが実行される際に、ＡＴの有効期限が終了していることがあり得る。そこで、図２の登録プロセスにおいて、印刷仲介サーバ１００は、ＡＴのみならず、いわゆるリフレッシュトークンを生成して、アカウント情報等に関連付けてリフレッシュトークンを記憶してもよい。この場合、印刷仲介サーバ１００は、第１のＡＴの有効期限が終了する場合に、リフレッシュトークンを利用して、新たなトークンを生成し、ＡＴに代えて、当該新たなトークンを記憶することができる。そして、携帯端末７０は、印刷仲介サーバ１００から、ＡＴのみならず、いわゆるリフレッシュトークンを含むログイン成功通知２１６を受信してもよい。図５の印刷プロセスにおいて、携帯端末７０は、第１のＡＴのみならず、リフレッシュトークンをプリンタ１０に送信してもよい。この場合、プリンタ１０は、ＡＴの有効期限が終了している場合に、リフレッシュトークンを利用して新たなトークンを生成し、当該新たなトークンを利用して、印刷仲介サーバ１００から印刷データを取得することができる。プリンタ１０は、定期的に、リフレッシュトークンを利用して新たなトークンを、印刷仲介サーバ１００から取得してもよい。また、プリンタ１０は、アプリケーションプログラムの起動操作、サブミット操作等、操作部１２に所定の操作が実行される場合に、リフレッシュトークンを利用して新たなトークンを、印刷仲介サーバ１００から取得してもよい。本変形例では、リフレッシュトークンが、「認証情報」の一例である。
【０１２６】
（４）上記の実施例では、「認証情報」は、仮想プリンタＩＤと、トークン（即ちＡＴ）と、を含む。ただし、印刷仲介サーバ１００が、トークンを利用せずに、仮想プリンタＩＤのみを利用して認証を実行可能な構成であれば、「認証情報」は、トークンを含んでおらず、仮想プリンタＩＤのみを含んでいてもよい。また、印刷仲介サーバ１００が、仮想プリンタＩＤを利用せずに、トークンのみを利用して認証を実行可能である構成であれば、「認証情報」は、仮想プリンタＩＤを含んでおらず、トークンのみを含んでいてもよい。一般的に言うと、「認証情報」は、印刷仲介サーバにおいて認証に利用される情報であれば、どのような情報であってもよい。
【０１２７】
（５）「仮想プリンタ関係情報」は、仮想印刷条件情報に限られず、仮想プリンタの仮想的なプリンタ名を示す情報、仮想プリンタの仮想的なデフォルト設定を示す情報、仮想プリンタの仮想的なステータスを示す情報等であってもよい。即ち、「仮想プリンタ関係情報」は、印刷仲介サーバに登録されるべき情報であって、仮想プリンタに関係する情報であれば、どのような情報であってもよい。
【０１２８】
（６）上記の実施例では、仮想印刷条件情報がプリンタアプリに予め登録されている。即ち、携帯端末７０のメモリ８４は、プリンタアプリが携帯端末７０にインストールされる際に、仮想印刷条件情報を記憶する。これに代えて、例えば、ユーザが仮想印刷条件情報を携帯端末７０に入力する構成を採用してもよい。この場合、メモリ８４は、ユーザによって入力される仮想印刷条件情報を記憶してもよい。
【０１２９】
（７）上記の実施例では、図３のサブミットプロセスにおいて、携帯端末７０は、メモリ８４内の仮想印刷条件情報を利用して、印刷設定選択画面を表示する。これに代えて、携帯端末７０は、印刷仲介サーバ１００から仮想印刷条件情報を取得して、取得済みの仮想印刷条件情報を利用して、印刷設定選択画面を表示してもよい。
【０１３０】
（８）上記の実施例では、図５の印刷プロセスにおいて、プリンタ１０は、プリンタ１０自身が解釈可能（即ち印刷可能）なデータ形式として「ＰＤＦ」を示す情報を含む印刷データ要求２９０を印刷仲介サーバ１００に送信する。これに代えて、プリンタ１０は、プリンタ１０自身が解釈可能なデータ形式として「ＰＷＧ−Ｒａｓｔｅｒ」や「ＸＰＳ（XML Paper Specificationの略）」を示す情報を含む印刷データ要求２９０を印刷仲介サーバ１００に送信する。一般的に言うと、実在プリンタは、実在プリンタ自身が解釈可能なデータ形式を示す情報を含む印刷データ要求を印刷仲介サーバに送信すればよい。
【０１３１】
（９）上記の実施例では、図７の印刷プロセスにおいて、印刷仲介サーバ１００は、プリンタ１０から、データ形式を示す情報を含む印刷データ要求７０４を受信するので、画像データ２３２に対する変換処理を実行して、当該データ形式を有する印刷データＤ１を生成することができる。これに代えて、図２の登録プロセスにおいて、携帯端末７０は、仮想プリンタが解釈可能なデータ形式を示す情報を含む仮想印刷条件情報を含む登録要求２００を、印刷仲介サーバ１００に送信してもよい。また、さらに別の変形例では、図３のサブミットプロセスにおいて、携帯端末７０は、仮想プリンタが解釈可能なデータ形式を示す情報を含む印刷設定情報２３４を含むサブミット要求２３０を、印刷仲介サーバ１００に送信してもよい。この構成によると、プリンタ１０は、印刷データ要求２９０を送信する際に、データ形式を示す情報を含めずに済む。
【０１３２】
（１０）上記の実施例では、プリンタ１０は、インターフェースメモリ２１を備えており、バス線を介して、ＣＰＵ３２に接続されるＮＦＣプラグ１６を備える。しかしながら、プリンタ１０は、ＮＦＣプラグ１６を備えていなくてもよい。一方、プリンタ１０は、他装置のＮＦＣＩ／ＦがＲｅａｄｅｒモードで動作することによって、他装置に記憶内容が読み取られるＮＦＣメモリを有していてもよい。ＮＦＣメモリは、ＣＰＵ３２によって記憶内容を変更できなくてもよく、さらに、バス線に接続されていなくてもよい。ＮＦＣメモリは、例えば、プリンタ１０の筐体の外周面に取り付けられ、少なくとも無線プロファイルを記憶し、携帯端末とＷＦＤＮＷを構築できればよい。本変形例では、ＮＦＣメモリが、「通信部」の一例である。
【０１３３】
（１１）上記の実施例では、図６、図７の印刷プロセスにおいて、携帯端末７０は、認証情報として、ＡＴと、プリンタＩＤと、を含む暗号化情報５０８を、プリンタ１０に送信する。これに加えて、携帯端末７０は、認証情報として、時刻情報を含む暗号化情報を、プリンタ１０に送信してもよい。プリンタ１０は、携帯端末７０から時刻情報を受信すると、時刻の進行に合わせて時刻情報を更新してもよい。プリンタ１０は、更新済みの時刻情報を含むジョブリスト要求６０２を、印刷仲介サーバ１００に送信してもよい。この場合、印刷仲介サーバ１００は、時刻情報を用いた時刻認証を実行してもよい。即ち、印刷仲介サーバ１００は、受信済みの時刻情報と、印刷仲介サーバ１００が計時する時刻と、が一致するか否かを判断し、一致する場合に認証成功と判断し、一致しない場合に、認証失敗と判断してもよい。
【０１３４】
（１２）プリンタ１０及び携帯端末７０は、ＮＦＣ方式の無線通信を実行する代わりに、他の通信方式の近距離無線通信（例えば、トランスファージェット方式、赤外線方式等の無線通信）を実行して、暗号化データの通信を実行してもよい。本変形例では、上記の他の通信方式が、「近距離無線通信方式」の一例である。また、プリンタ１０及び携帯端末７０は、近距離無線通信を実行する代わりに、通常Ｗｉ−Ｆｉ方式の無線通信を実行して、暗号化データの通信を実行してもよい。また、プリンタ１０及び携帯端末７０は、無線通信を実行する代わりに、有線通信を実行して、暗号化データの通信を実行してもよい。即ち、「第１のインターフェース」は、近距離無線通信方式に従った無線通信を実行するためのインターフェースでなくてもよく、通常Ｗｉ−Ｆｉ方式又は有線方式に従った通信を実行するためのインターフェースであってもよい。
【０１３５】
（１３）上記の実施例では、プリンタ１０は、ＷＦＤＮＷのための無線プロファイルを、携帯端末１０に送信する。これに代えて、プリンタ１０が、通常のＷｉ−Ｆｉ方式のアクセスポイント機能を有する場合、プリンタ１０は、通常のＷｉ−Ｆｉ方式の無線ネットワークで用いるＡＰのＳＳＩＤ、ＩＰアドレス、ＭＡＣアドレス、サブネットマスク、ＵＵＩＤ（Universal Unique IDの略）を、携帯端末１０に送信してもよい。また、あるいは、プリンタ１０が、Ｂｌｕｅｔｏｏｔｈ（登録商標）を利用して携帯端末７０と通信を実行すべき場合、プリンタ１０は、Ｂｌｕｅｔｏｏｔｈ（登録商標）で利用されるペアリングするための情報を、携帯端末７０に送信してもよい。
【０１３６】
（１４）上記の実施例では、対応情報４０２がサーバ印刷機能が実行不可能であることを示す場合に表示部７４に表示される画面（図４参照）と、エラー情報５１０が受信される場合に表示部７４に表示されるＮＧ理由（図５参照）と、エラー情報６０６，６０８が受信される場合に表示部７４に表示される画面（図６参照）とは、それぞれ異なる。これに代えて、携帯端末７０は、例えば、印刷不可能あるいはサーバ印刷機能が実行不可能であることを示す共通の画面を、表示部７４に表示させてもよい。
【０１３７】
（１５）携帯端末７０は、通常Ｗｉ−Ｆｉ方式の無線通信を実行して、印刷仲介サーバ１００と様々な情報（例えば図２の登録要求２００等）の通信を実行する代わりに、３Ｇ、４Ｇ等のセルラー方式の無線通信を実行して、印刷仲介サーバ１００と通信を実行してもよい。また、携帯端末７０は、有線でインターネットに接続されている場合には、有線通信を実行して、印刷仲介サーバ１００と通信を実行してもよい。
【０１３８】
（１６）プリンタ１０は、有線でインターネットに接続されている場合には、有線通信を実行して、印刷仲介サーバ１００と様々な情報（例えば図５のジョブリスト要求２８０等）の通信を実行してもよい。
【０１３９】
（１７）印刷仲介サーバ１００は、１個のサーバでなくてもよく、別体に構成されている複数個のサーバであってもよい。例えば、印刷仲介サーバ１００は、図２の登録プロセスに示される各処理を実行する第１のサーバと、図３以降の各プロセスに示される各処理を実行する第２のサーバ（即ち第１のサーバとは別体に構成されている第２のサーバ）と、を備えていてもよい。
【０１４０】
（１８）「端末装置」は、携帯端末７０でなくてもよく、据え置き型のＰＣであってもよいし、他のデバイス（例えばテレビ等）であってもよい。
【０１４１】
（１９）上記の実施例では、プリンタ１０のＣＰＵ３２及び携帯端末７０のＣＰＵ８２がメモリ３４，８４内のプログラム（例えばプリンタアプリ）を実行することによって、図２〜図７の各処理が実現される。これに代えて、図２〜図７の各処理のうちの少なくとも１つの処理は、論理回路等のハードウェアによって実現されてもよい。
【０１４２】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【０１４３】
２：通信システム、１０：プリンタ、１２：操作部、１４：表示部、１６：ＮＦＣプラグ、１８：無線ＬＡＮＩ／Ｆ、２０：印刷実行部、３０：制御部、３２：ＣＰＵ、３４：メモリ、７０：携帯端末、７２：操作部、７４：表示部、７６：ＮＦＣＩ／Ｆ、７８：無線ＬＡＮＩ／Ｆ、８０：制御部、８２：ＣＰＵ、８４：メモリ、１００：印刷仲介サーバ
【図１】
0006379767.tif 000002
【図２】
0006379767.tif 000003
【図３】
0006379767.tif 000004
【図４】
0006379767.tif 000005
【図５】
0006379767.tif 000006
【図６】
0006379767.tif 000007
【図７】
0006379767.tif 000008