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