(57)【要約】【課題】  印刷仲介サーバと複数個のプリンタとの間の通信負荷を低減させつつ、ユーザが、所望のプリンタに印刷を実行させ得る技術を提供すること。【解決手段】  プリンタ１０は、プリンタ１０がマスタプリンタである場合に、印刷仲介サーバ８０と状態確認通信を実行し、プリンタ１０がスレーブプリンタである場合に、印刷仲介サーバ８０と状態確認通信を実行しない。プリンタ１０は、プリンタ１０がマスタプリンタである場合に、印刷仲介サーバ８０から印刷通知を受信する。その後、プリンタ１０がユーザによって選択される場合に、プリンタ１０は、印刷を実行する。また、プリンタ１０がスレーブプリンタである場合でも、印刷仲介サーバ８０からマスタプリンタに印刷通知が送信された後に、プリンタ１０がユーザによって選択される場合に、プリンタ１０は、印刷を実行する。【選択図】  図４
2013129146.tif 000002
【特許請求の範囲】
【請求項１】
印刷仲介サーバと通信可能に接続される複数個のプリンタのうちの特定のプリンタであって、
前記特定のプリンタが、第１種のプリンタであるのか、第２種のプリンタであるのか、を示す種類情報を、前記特定のプリンタのメモリに記憶させる記憶制御部と、
前記メモリ内の前記種類情報が、前記特定のプリンタが前記第１種のプリンタであることを示す場合に、前記印刷仲介サーバと所定の通信を実行し、前記メモリ内の前記種類情報が、前記特定のプリンタが前記第２種のプリンタであることを示す場合に、前記印刷仲介サーバと前記所定の通信を実行しない通信実行部と、
前記メモリ内の前記種類情報が、前記特定のプリンタが前記第１種のプリンタであることを示す場合に、前記印刷仲介サーバから第１の通知を受信する第１の受信部であって、前記第１の通知は、前記複数個のプリンタのうちのいずれかのプリンタが、印刷データに従った印刷を実行すべき場合に、前記印刷仲介サーバから前記第１種のプリンタに送信される通知である、前記第１の受信部と、
前記メモリ内の前記種類情報が、前記特定のプリンタが前記第１種のプリンタであることを示し、かつ、前記印刷仲介サーバから前記第１の通知が受信された後に、前記複数個のプリンタの中から前記特定のプリンタがユーザによって選択される第１の場合、又は、
前記メモリ内の前記種類情報が、前記特定のプリンタが前記第２種のプリンタであることを示し、かつ、前記印刷仲介サーバから前記第１種のプリンタに前記第１の通知が送信された後に、前記複数個のプリンタの中から前記特定のプリンタが前記ユーザによって選択される第２の場合に、
前記印刷仲介サーバから印刷データを取得する印刷データ取得部と、
前記第１の場合、又は、前記第２の場合に、前記印刷データに従って、印刷実行部に印刷を実行させる印刷制御部と、
を備える特定のプリンタ。
【請求項２】
前記特定のプリンタは、さらに、
前記印刷仲介サーバから前記第１の通知が受信される場合に、前記第１の通知が受信されたことを通知するための第２の通知を、前記複数個のプリンタのうちの１個以上の第２種のプリンタのそれぞれに送信する第１の送信部と、
前記メモリ内の前記種類情報が、前記特定のプリンタが前記第２種のプリンタであることを示す場合に、前記複数個のプリンタのうちの前記第１種のプリンタから前記第２の通知を受信する第２の受信部と、
前記印刷仲介サーバから前記第１の通知が受信される場合、又は、前記第１種のプリンタから前記第２の通知が受信される場合に、印刷を実行すべきプリンタを前記ユーザに選択させるための所定の報知を実行する報知実行部と、を備え、
前記印刷データ取得部は、前記所定の報知に応じて、前記特定のプリンタの操作部に所定の操作が前記ユーザによって加えられる場合に、前記複数個のプリンタの中から前記特定のプリンタが前記ユーザによって選択されたと判断する、請求項１に記載の特定のプリンタ。
【請求項３】
前記記憶制御部は、さらに、前記メモリ内の前記種類情報が、前記特定のプリンタが前記第１種のプリンタであることを示す場合に、前記１個以上の第２種のプリンタに対応する１個以上の識別情報を、前記メモリに記憶させ、
前記第１の送信部は、前記印刷仲介サーバから前記第１の通知が受信される場合に、前記メモリ内の前記１個以上の識別情報のそれぞれを用いて、前記１個以上の第２種のプリンタのそれぞれに前記第２の通知を送信する、請求項２に記載の特定のプリンタ。
【請求項４】
前記記憶制御部は、さらに、前記１個以上の第２種のプリンタのうちの第１のプリンタから、前記第１のプリンタの電源がＯＦＦされることを通知するための第３の通知が受信される場合に、前記第１のプリンタに対応する第１の識別情報を、前記メモリから消去する、請求項３に記載の特定のプリンタ。
【請求項５】
前記記憶制御部は、さらに、前記メモリ内の前記種類情報が、前記特定のプリンタが前記第１種のプリンタであることを示し、かつ、前記印刷仲介サーバから前記第１の通知が受信された後に、前記複数個のプリンタの中から前記特定のプリンタとは異なるプリンタが前記ユーザによって選択される場合に、前記メモリ内の前記第１種のプリンタを示す前記種類情報を、前記第２種のプリンタを示す前記種類情報に変更する、請求項１から４のいずれか一項に記載の特定のプリンタ。
【請求項６】
前記記憶制御部は、さらに、前記第２の場合に、前記メモリ内の前記第２種のプリンタを示す前記種類情報を、前記第１種のプリンタを示す前記種類情報に変更する、請求項１から５のいずれか一項に記載の特定のプリンタ。
【請求項７】
前記特定のプリンタは、さらに、
前記メモリ内に前記種類情報が記憶されていない場合に、前記複数個のプリンタの中に前記第１種のプリンタが存在するのか否かを確認する確認部を備え、
前記記憶制御部は、
前記複数個のプリンタの中に前記第１種のプリンタが存在しないことが確認される第３の場合に、前記特定のプリンタが前記第１種のプリンタであることを示す前記種類情報を、前記メモリに記憶させ、
前記複数個のプリンタの中に前記第１種のプリンタが存在することが確認される第４の場合に、前記特定のプリンタが前記第２種のプリンタであることを示す前記種類情報を、前記メモリに記憶させる、請求項１から６のいずれか一項に記載の特定のプリンタ。
【請求項８】
前記記憶制御部は、さらに、
前記第３の場合に、前記印刷仲介サーバから取得される認証情報を、前記メモリに記憶させ、
前記第４の場合に、前記第１種のプリンタから取得される前記認証情報を、前記メモリに記憶させ、
前記印刷データ取得部は、前記第１の場合、又は、前記第２の場合に、前記メモリ内の前記認証情報を用いて、前記印刷仲介サーバから前記印刷データを取得する、請求項７に記載の特定のプリンタ。
【請求項９】
前記特定のプリンタは、さらに、
前記メモリ内の前記種類情報が、前記特定のプリンタが前記第１種のプリンタであることを示し、かつ、前記特定のプリンタの電源がＯＦＦされるべき場合に、前記複数個のプリンタのうちの１個以上の第２種のプリンタのうちの第２のプリンタが、前記第２種のプリンタから前記第１種のプリンタに変更すべきことを通知するための第４の通知を、前記第２のプリンタに送信する第２の送信部を備える、請求項１から８のいずれか一項に記載の特定のプリンタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書によって開示される技術は、印刷仲介サーバと通信可能に接続される複数個のプリンタのうちの特定のプリンタに関する。
【背景技術】
【０００２】
特許文献１には、サーバと、複数個のプリンタと、ＰＣと、を備えるシステムが開示されている。サーバは、複数個のプリンタと常に通信しており、各プリンタの稼動状況及びステータス情報を収集する。ユーザは、ＰＣにおいて、プリント出力を指示する。この場合、サーバは、各プリンタの稼動状況及びステータス情報をＰＣに送信する。ＰＣは、各プリンタの稼動状況及びステータス情報を、ＰＣのモニタに表示させる。ユーザは、モニタの表示内容に基づいて、プリント出力を実行すべきプリンタを選択する。この場合、サーバは、印刷データを選択済みのプリンタに送信する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−３０５８８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の特許文献１の技術では、サーバと複数個のプリンタとの間で常に通信が実行される。従って、サーバと複数個のプリンタとの間の通信負荷が大きい。本明細書では、印刷仲介サーバと複数個のプリンタとの間の通信負荷を低減させつつ、ユーザが、所望のプリンタに印刷を実行させ得る技術を開示する。
【課題を解決するための手段】
【０００５】
本明細書では、印刷仲介サーバと通信可能に接続される複数個のプリンタのうちの特定のプリンタを開示する。特定のプリンタは、記憶制御部と、通信実行部と、第１の受信部と、印刷データ取得部と、印刷制御部と、を備える。記憶制御部は、特定のプリンタが、第１種のプリンタであるのか、第２種のプリンタであるのか、を示す種類情報を、特定のプリンタのメモリに記憶させる。通信実行部は、メモリ内の種類情報が、特定のプリンタが第１種のプリンタであることを示す場合に、印刷仲介サーバと所定の通信を実行し、メモリ内の種類情報が、特定のプリンタが第２種のプリンタであることを示す場合に、印刷仲介サーバと所定の通信を実行しない。第１の受信部は、メモリ内の種類情報が、特定のプリンタが第１種のプリンタであることを示す場合に、印刷仲介サーバから第１の通知を受信する。第１の通知は、複数個のプリンタのうちのいずれかのプリンタが、印刷データに従った印刷を実行すべき場合に、印刷仲介サーバから第１種のプリンタに送信される通知である。印刷データ取得部は、メモリ内の種類情報が、特定のプリンタが第１種のプリンタであることを示し、かつ、印刷仲介サーバから第１の通知が受信された後に、複数個のプリンタの中から特定のプリンタがユーザによって選択される第１の場合、又は、メモリ内の種類情報が、特定のプリンタが第２種のプリンタであることを示し、かつ、印刷仲介サーバから第１種のプリンタに第１の通知が送信された後に、複数個のプリンタの中から特定のプリンタがユーザによって選択される第２の場合に、印刷仲介サーバから印刷データを取得する。印刷制御部は、第１の場合、又は、第２の場合に、印刷データに従って、印刷実行部に印刷を実行させる。
【０００６】
上記の構成によると、特定のプリンタは、特定のプリンタが第１種のプリンタである場合には、印刷仲介サーバと所定の通信を実行するが、特定のプリンタが第２種のプリンタである場合には、印刷仲介サーバと所定の通信を実行しない。ただし、特定のプリンタが第１種のプリンタである場合でも、特定のプリンタが第２種のプリンタである場合でも、特定のプリンタがユーザによって選択されると、特定のプリンタは、印刷仲介サーバから印刷データを取得して、印刷を実行することができる。即ち、特定のプリンタは、印刷仲介サーバと所定の通信を実行しなくても、ユーザによって選択されると、印刷を実行することができる。このために、印刷仲介サーバと複数個のプリンタとの間の通信負荷を低減させつつ、ユーザは、所望のプリンタに印刷を実行させ得る。
【０００７】
特定のプリンタは、さらに、第１の送信部と、第２の受信部と、報知実行部と、を備えていてもよい。第１の送信部は、印刷仲介サーバから第１の通知が受信される場合に、第１の通知が受信されたことを通知するための第２の通知を、複数個のプリンタのうちの１個以上の第２種のプリンタのそれぞれに送信してもよい。第２の受信部は、メモリ内の種類情報が、特定のプリンタが第２種のプリンタであることを示す場合に、複数個のプリンタのうちの第１種のプリンタから第２の通知を受信してもよい。報知実行部は、印刷仲介サーバから第１の通知が受信される場合、又は、第１種のプリンタから第２の通知が受信される場合に、印刷を実行すべきプリンタをユーザに選択させるための所定の報知を実行してもよい。印刷データ取得部は、所定の報知に応じて、特定のプリンタの操作部に所定の操作がユーザによって加えられる場合に、複数個のプリンタの中から特定のプリンタがユーザによって選択されたと判断してもよい。この構成によると、特定のプリンタが第１種のプリンタである場合でも、特定のプリンタが第２種のプリンタである場合でも、特定のプリンタは、複数個のプリンタのうちのいずれかのプリンタが印刷を実行すべき状況（即ち、印刷仲介サーバから第１種のプリンタに第１の通知が送信される状況）において、所定の報知を実行する。このために、ユーザは、複数個のプリンタのうちのいずれかのプリンタが印刷を実行すべき状況であることを知ることができる。そして、所定の報知に応じて、特定のプリンタがユーザによって選択されると、特定のプリンタは、印刷仲介サーバから印刷データを取得して、印刷を実行することができる。
【０００８】
記憶制御部は、さらに、メモリ内の種類情報が、特定のプリンタが第１種のプリンタであることを示す場合に、１個以上の第２種のプリンタに対応する１個以上の識別情報を、メモリに記憶させてもよい。第１の送信部は、印刷仲介サーバから第１の通知が受信される場合に、メモリ内の１個以上の識別情報のそれぞれを用いて、１個以上の第２種のプリンタのそれぞれに第２の通知を送信してもよい。この構成によると、特定のプリンタは、１個以上の第２種のプリンタのそれぞれに第２の通知を適切に送信することができる。
【０００９】
記憶制御部は、さらに、１個以上の第２種のプリンタのうちの第１のプリンタから、第１のプリンタの電源がＯＦＦされることを通知するための第３の通知が受信される場合に、第１のプリンタに対応する第１の識別情報を、メモリから消去してもよい。この構成によると、特定のプリンタは、第１のプリンタの電源がＯＦＦされる場合に、第１のプリンタに対応する第１の識別情報をメモリから消去する。このために、特定のプリンタは、電源がＯＦＦされている第１のプリンタに、第２の通知を送信せずに済む。この結果、特定のプリンタの処理負荷を低減させることができる。
【００１０】
記憶制御部は、さらに、メモリ内の種類情報が、特定のプリンタが第１種のプリンタであることを示し、かつ、印刷仲介サーバから第１の通知が受信された後に、複数個のプリンタの中から特定のプリンタとは異なるプリンタがユーザによって選択される場合に、メモリ内の第１種のプリンタを示す種類情報を、第２種のプリンタを示す種類情報に変更してもよい。この構成によると、特定のプリンタは、メモリ内の種類情報を適切に変更することができる。
【００１１】
記憶制御部は、さらに、第２の場合に、メモリ内の第２種のプリンタを示す種類情報を、第１種のプリンタを示す種類情報に変更してもよい。この構成によると、特定のプリンタは、メモリ内の種類情報に適切に変更することができる。
【００１２】
特定のプリンタは、さらに、メモリ内に種類情報が記憶されていない場合に、複数個のプリンタの中に第１種のプリンタが存在するのか否かを確認する確認部を備えていてもよい。記憶制御部は、複数個のプリンタの中に第１種のプリンタが存在しないことが確認される第３の場合に、特定のプリンタが第１種のプリンタであることを示す種類情報を、メモリに記憶させ、複数個のプリンタの中に第１種のプリンタが存在することが確認される第４の場合に、特定のプリンタが第２種のプリンタであることを示す種類情報を、メモリに記憶させてもよい。この構成によると、特定のプリンタは、複数個のプリンタの中に第１種のプリンタが存在するのか否かに応じて、適切な種類情報をメモリに記憶させることができる。
【００１３】
記憶制御部は、さらに、第３の場合に、印刷仲介サーバから取得される認証情報を、メモリに記憶させ、第４の場合に、第１種のプリンタから取得される認証情報を、メモリに記憶させてもよい。印刷データ取得部は、第１の場合、又は、第２の場合に、メモリ内の認証情報を用いて、印刷仲介サーバから印刷データを取得してもよい。この構成によると、特定のプリンタは、認証情報をメモリに適切に記憶させることができ、この結果、印刷仲介サーバから印刷データを適切に取得することができる。
【００１４】
特定のプリンタは、さらに、メモリ内の種類情報が、特定のプリンタが第１種のプリンタであることを示し、かつ、特定のプリンタの電源がＯＦＦされるべき場合に、複数個のプリンタのうちの１個以上の第２種のプリンタのうちの第２のプリンタが、第２種のプリンタから第１種のプリンタに変更すべきことを通知するための第４の通知を、第２のプリンタに送信する第２の送信部を備えていてもよい。この構成によると、特定のプリンタは、特定のプリンタ自身の電源がＯＦＦされるべき場合に、第２のプリンタを、第２種のプリンタから第１種のプリンタに適切に変更させることができる。
【００１５】
なお、上記の特定のプリンタを実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。
【図面の簡単な説明】
【００１６】
【図１】通信システムの構成の一例を示す。
【図２】ケースＡの登録処理のシーケンス図を示す。
【図３】ケースＢの登録処理のシーケンス図を示す。
【図４】ケースＡの続きの印刷処理のシーケンス図を示す。
【図５】ケースＢの続きの印刷処理のシーケンス図を示す。
【図６】電源ＯＦＦ処理のシーケンス図を示す。
【図７】電源ＯＮ処理のシーケンス図を示す。
【発明を実施するための形態】
【００１７】
（システムの構成）
図１に示されるように、通信システム２は、複数個のプリンタ１０，５０，６０と、ＰＣ７０と、印刷仲介サーバ８０と、端末装置９０と、を備える。各プリンタ１０，５０，６０及びＰＣ７０は、ＬＡＮ４に接続されている。従って、各プリンタ１０，５０，６０は、ＬＡＮ４を介して、ＰＣ７０に通信可能に接続されている。また、各プリンタ１０，５０，６０及びＰＣ７０は、ＬＡＮ４を介して、インターネット６に接続されている。印刷仲介サーバ８０は、インターネット６に接続されている。従って、各プリンタ１０，５０，６０及びＰＣ７０は、ＬＡＮ４及びインターネット６を介して、印刷仲介サーバ８０に通信可能に接続されている。端末装置９０は、例えば、デスクトップ型ＰＣ、ノート型ＰＣ、タブレットＰＣ、携帯電話、ＰＤＡ端末等の公知の通信端末装置である。端末装置９０のユーザが、端末装置９０をインターネット６に接続させるための操作を実行すると、端末装置９０は、インターネット６に通信可能に接続される。この場合、端末装置９０は、インターネット６を介して、印刷仲介サーバ８０に通信可能に接続される。
【００１８】
（プリンタ１０の構成）
プリンタ１０は、プリンタ名として「ＰＮ１」が設定されており、ＩＰアドレスとして「ＩＰ１０」が設定されている。プリンタ１０は、操作部１２と、表示部１４と、印刷実行部１６と、ネットワークインターフェイス１８と、制御部２０と、を備える。上記の各部１２〜２０は、バス線（符号省略）に接続されている。操作部１２は、複数のキーによって構成される。ユーザは、操作部１２を操作することによって、様々な指示をプリンタ１０に入力することができる。表示部１４は、様々な情報を表示するためのディスプレイである。印刷実行部１６は、インクジェット方式、レーザ方式等の印刷機構を備え、制御部２０からの指示に従って印刷を実行する。ネットワークインターフェイス１８は、ＬＡＮ４に接続されている。
【００１９】
制御部２０は、ＣＰＵ２２とメモリ２４とを備える。ＣＰＵ２２は、メモリ２４に格納されているプログラム（図示省略）に従って、様々な処理を実行する。ＣＰＵ２２が当該プログラムに従って処理を実行することによって、各部３０〜３９の機能が実現される。
【００２０】
メモリ２４は、ＮＶＲＡＭ（不揮発性メモリ）２６と、ＶＲＡＭ（揮発性メモリ）２８と、を備える。詳しくは後述するが、ＮＶＲＡＭ２６は、アクセストークン（例えばＡＴ１）を記憶可能であり、ＶＲＡＭ２８は、種類情報を記憶可能である。種類情報は、プリンタ１０がマスタ（Master）とスレーブ（Slave）のどちらであるのかを示す情報である。例えば、マスタを示す種類情報が、第１の記号（数値、文字等）である場合には、スレーブを示す種類情報が、第１の記号とは異なる第２の記号であってもよい。なお、プリンタ１０がマスタであることを示す種類情報がＶＲＡＭ２８に記憶される場合には、ＶＲＡＭ２８には、さらに、他のプリンタのＩＰアドレスが記憶され得る。
【００２１】
また、プリンタ５０は、プリンタ名として「ＰＮ２」が設定されており、ＩＰアドレスとして「ＩＰ５０」が設定されている。また、プリンタ６０は、プリンタ名として「ＰＮ３」が設定されており、ＩＰアドレスとして「ＩＰ６０」が設定されている。各プリンタ５０，６０は、プリンタ１０と同様の構成を備えており、プリンタ１０と同様の処理を実行可能である。従って、各プリンタ５０，６０も、種類情報を記憶可能である。
【００２２】
なお、以下では、マスタを示す種類情報を記憶しているプリンタ、スレーブを示す種類情報を記憶しているプリンタを、それぞれ、「マスタプリンタ」、「スレーブプリンタ」と記載することがある。また、以下では、例えば、プリンタ１０がマスタプリンタである状態では、「マスタプリンタ１０」と符号を付けて記載することがある。同様に、例えば、プリンタ１０がスレーブプリンタである状態では、「スレーブプリンタ１０」と符号を付けて記載することがある。詳しくは後述するが、本実施例では、複数個のプリンタ１０，５０，６０の中に２個以上のマスタプリンタが同時に存在する状況が発生しない。例えば、プリンタ１０がマスタプリンタである場合には、他のプリンタ５０，６０はスレーブプリンタである。
【００２３】
（ケースＡの登録処理；図２）
図２のケースＡでは、各プリンタ１０，５０，６０に種類情報が記憶されていない状況（即ち、各プリンタ１０，５０，６０がマスタプリンタでもスレーブプリンタでもない状況）を想定している。なお、印刷仲介サーバ８０は、プリンタ１０等のベンダによって提供されるサーバではなく、クラウド印刷サービスを提供する会社によって提供されるサーバである。ただし、変形例では、印刷仲介サーバ８０は、プリンタ１０等のベンダによって提供されるサーバであってもよい。
【００２４】
ＬＡＮ４の管理者は、クラウド印刷サービスを利用することを望む場合に、まず、ＰＣ７０の操作部（図示省略；例えば、キーボード、マウス等）を操作して、印刷仲介サーバ８０にアクセスする。次いで、管理者は、ＰＣ７０の操作部を操作して、ユーザＩＤ、パスワード等を含むアカウント情報ＡＣ１（以下では簡単に「ＡＣ１」と記載する）を印刷仲介サーバ８０に予め登録する。この場合、印刷仲介サーバ８０は、図１に示されるアカウントテーブル８２にＡＣ１を登録する。なお、この段階では、ＡＣ１に対応するプリンタ名及びアクセストークンは、アカウントテーブル８２に登録されていない。
【００２５】
次いで、管理者は、ＰＣ７０の操作部を操作して、プリンタ１０に内蔵されているウェブサーバにアクセスする。この場合、プリンタ１０のウェブサーバは、アカウント情報を入力するためのログイン画面を表わす画面データを、ＰＣ７０に供給する。この結果、ＰＣ７０の表示部（図示省略）にログイン画面が表示される。管理者は、ログイン画面を見ながら、ＰＣ７０の操作部を操作して、ＡＣ１をログイン画面に入力する。これにより、プリンタ１０に関する登録指示がＰＣ７０に与えられる。この場合、ＰＣ７０は、ＡＣ１をプリンタ１０に供給する。
【００２６】
プリンタ１０の確認部３９（図１参照）は、ＰＣ７０からＡＣ１を取得すると、確認要求をブロードキャストする。確認要求は、応答を送信するように、マスタプリンタに指示するための要求である。確認要求は、ＬＡＮ４に接続されている各プリンタ５０，６０によって受信される。なお、変形例では、確認部３９は、ブロードキャストではなく、ユニキャスト又はマルチキャストを利用して、確認要求を各プリンタ５０，６０に送信してもよい。ただし、この場合、各プリンタ５０，６０の識別情報（プリンタ名、ＩＰアドレス等）をプリンタ１０に予め記憶させておく必要がある。
【００２７】
各プリンタ５０，６０がプリンタ１０から確認要求を受信する時点では、各プリンタ５０，６０の中にマスタプリンタが存在しない。このために、プリンタ１０は、いずれのプリンタからも応答を受信しない。従って、確認部３９は、応答なしと判断する。この場合、プリンタ１０の制御部２０は、ＡＣ１と、プリンタ１０のプリンタ名ＰＮ１（以下では「ＰＮ１」と簡単に記載する）と、を印刷仲介サーバ８０に送信する。
【００２８】
印刷仲介サーバ８０は、プリンタ１０からＡＣ１及びＰＮ１を受信すると、ＡＣ１がアカウントテーブル８２に登録されているのか否かを判断する（即ち認証を実行する）。上述したように、アカウントテーブル８２にはＡＣ１が既に登録されているために、印刷仲介サーバ８０は、認証成功と判断する。この場合、印刷仲介サーバ８０は、ＡＣ１を用いて、アクセストークンＡＴ１（以下では「ＡＴ１」と簡単に記載する）を生成する。ＡＴ１は、プリンタ１０等が印刷仲介サーバ８０から後述の印刷データを取得するために必要な認証情報である。次いで、印刷仲介サーバ８０は、ＡＣ１とＰＮ１とＡＴ１とを対応付けて、アカウントテーブル８２に登録する（図１参照）。続いて、印刷仲介サーバ８０は、ＡＴ１をプリンタ１０に供給する。
【００２９】
プリンタ１０の記憶制御部３０（図１参照）は、印刷仲介サーバ８０からＡＴ１を取得すると、ＡＴ１をＮＶＲＡＭ２６に記憶させる。次いで、記憶制御部３０は、マスタを示す種類情報をＶＲＡＭ２８に記憶させる。これにより、プリンタ１０がマスタプリンタになる。
【００３０】
なお、ＡＴ１は、定期的に更新されてもよい。例えば、プリンタ１０の制御部２０は、予め決められている更新タイミングが到来すると、新たなＡＴ１を生成するように、印刷仲介サーバ８０に要求してもよい。印刷仲介サーバ８０は、プリンタ１０からの要求に応じて、新たなＡＴ１を生成して、新たなＡＴ１をプリンタ１０に供給してもよい。この場合、印刷仲介サーバ８０は、古いＡＴ１に代えて、新たなＡＴ１を、アカウントテーブル８２に登録する。また、プリンタ１０の記憶制御部３０は、古いＡＴ１に代えて、新たなＡＴ１を、プリンタ１０のＮＶＲＡＭ２６に記憶させる。一般的に言うと、印刷データを取得するための認証情報（本実施例ではＡＴ１）は、永続的に利用される情報であってもよいし、定期的に更新される情報であってもよい。
【００３１】
また、プリンタ１０がマスタプリンタになると、プリンタ１０の通信実行部３１（図１参照）は、プリンタ１０と印刷仲介サーバ８０との間でＸＭＰＰ（eXtensible Messaging and Presence Protocol）の接続を確立する。これにより、プリンタ１０と印刷仲介サーバ８０とが常時接続された状態になる。通信実行部３１は、さらに、ＸＭＰＰの接続を利用して、プリンタ１０の状態（印刷実行中状態、スタンバイ状態、エラー状態（インク切れ状態、用紙切れ状態、紙ジャム状態等））を印刷仲介サーバ８０に定期的に通知する。プリンタ１０がマスタプリンタである間には、プリンタ１０と印刷仲介サーバ８０との間の接続が維持され、プリンタ１０から印刷仲介サーバ８０への状態の通知が継続的に実行される。また、端末装置９０から印刷仲介サーバ８０に後述の印刷指示が供給される場合に、印刷仲介サーバ８０は、ＸＭＰＰの接続を用いて、後述の印刷通知をプリンタ１０に送信することができる。なお、以下では、マスタプリンタの状態を印刷仲介サーバ８０に通知するための通信のことを「状態通知通信」と呼ぶ。
【００３２】
続いて、管理者は、ＰＣ７０の操作部を操作して、プリンタ５０に関する登録指示（即ち、ＡＣ１の入力）をＰＣ７０に与える。この場合、ＰＣ７０は、ＡＣ１をプリンタ５０に供給する。プリンタ５０は、ＰＣ７０からＡＣ１を取得すると、確認要求をブロードキャストする。この時点では、プリンタ１０がマスタプリンタである。このために、プリンタ１０の制御部２０は、プリンタ５０から確認要求を受信すると、応答をプリンタ５０に送信する。この結果、プリンタ５０は、プリンタ１０から応答を受信して、応答ありと判断する。この場合、プリンタ５０は、登録要求をプリンタ１０に送信する。この登録要求は、プリンタ５０をスレーブプリンタとして登録するように、プリンタ１０に指示するための要求である。
【００３３】
プリンタ１０の記憶制御部３０は、プリンタ５０から登録要求を受信すると、登録要求に含まれる送信元のＩＰアドレス、即ち、プリンタ５０のＩＰアドレスであるＩＰ５０を、ＶＲＡＭ２８に記憶させる。これにより、プリンタ５０がスレーブプリンタとしてプリンタ１０に登録される。次いで、プリンタ１０の制御部２０は、ＮＶＲＡＭ２６内のＡＴ１をプリンタ５０に供給する。
【００３４】
プリンタ５０は、プリンタ１０からＡＴ１を取得すると、ＡＴ１をプリンタ５０のＮＶＲＡＭ（図示省略）に記憶させる。次いで、プリンタ５０は、スレーブを示す種類情報をプリンタ５０のＶＲＡＭ（図示省略）に記憶させる。即ち、プリンタ５０は、スレーブプリンタになる。
【００３５】
上述したように、プリンタ１０は、マスタプリンタであるために、プリンタ１０と印刷仲介サーバ８０との間にＸＭＰＰの接続を確立して、印刷仲介サーバ８０と状態確認通信を実行する。しかしながら、プリンタ５０は、スレーブプリンタであるために、プリンタ５０と印刷仲介サーバ８０との間にＸＭＰＰの接続を確立しない。即ち、プリンタ５０は、印刷仲介サーバ８０と状態確認通信を実行しない。また、プリンタ１０のプリンタ名であるＰＮ１は、印刷仲介サーバ８０のアカウントテーブル８２に登録されるが、プリンタ５０のプリンタ名であるＰＮ２は、印刷仲介サーバ８０のアカウントテーブル８２に登録されない。
【００３６】
続いて、管理者は、ＰＣ７０の操作部を操作して、プリンタ６０に関する登録指示（即ち、ＡＣ１の入力）をＰＣ７０に与える。この場合、プリンタ５０の場合と同様に、プリンタ１０の記憶制御部３０は、プリンタ６０のＩＰアドレスであるＩＰ６０を、ＶＲＡＭ２８に記憶させる。これにより、プリンタ６０がスレーブプリンタとしてプリンタ１０に登録される。さらに、プリンタ６０は、プリンタ１０から取得されるＡＴ１を、プリンタ６０のＮＶＲＡＭ（図示省略）に記憶させる。また、プリンタ６０は、スレーブを示す種類情報をプリンタ６０のＶＲＡＭ（図示省略）に記憶させる。即ち、プリンタ６０は、スレーブプリンタになる。従って、プリンタ６０は、印刷仲介サーバ８０と状態確認通信を実行しない。
【００３７】
上述したように、図２のケースＡでは、ＰＣ７０から最も早くＡＣ１を取得したプリンタ１０がマスタプリンタになる。プリンタ１０は、ＬＡＮ４に接続されているプリンタ１０，５０，６０の中にマスタプリンタが存在しないことが確認される場合に、マスタを示す種類情報をＮＶＲＡＭ２６に適切に記憶させることができる（即ち、マスタプリンタになることができる）。また、プリンタ５０，６０は、マスタプリンタ１０が存在することが確認される場合に、スレーブを示す種類情報をＮＶＲＡＭに適切に記憶させることができる（即ち、スレーブプリンタになることができる）。
【００３８】
（ケースＢの登録処理；図３）
図３のケースＢでも、図２のケースＡと同様に、各プリンタ１０，５０，６０に種類情報が記憶されていない状況を想定している。ただし、ケースＢでは、ケースＡとは異なり、プリンタ５０が最も早くＰＣ７０からＡＣ１を取得する。
【００３９】
プリンタ５０は、印刷仲介サーバ８０から取得されるＡＴ１を、プリンタ５０のＮＶＲＡＭ（図示省略）に記憶させる。また、プリンタ５０は、マスタを示す種類情報をプリンタ５０のＶＲＡＭ（図示省略）に記憶させる。即ち、プリンタ５０がマスタプリンタになる。この結果、プリンタ５０は、印刷仲介サーバ８０と状態確認通信を実行する。なお、印刷仲介サーバ８０のアカウントテーブル８２にＡＴ１が登録される点は、ケースＡと同様であるが、アカウントテーブル８２には、プリンタ１０のプリンタ名であるＰＮ１ではなく、プリンタ５０のプリンタ名であるＰＮ２が登録される。
【００４０】
続いて、管理者は、ＰＣ７０の操作部を操作して、プリンタ１０に関する登録指示（即ち、ＡＣ１の入力）をＰＣ７０に与える。この場合、ＰＣ７０は、ＡＣ１をプリンタ１０に供給する。プリンタ１０の確認部３９は、ＰＣ７０からＡＣ１を取得すると、確認要求をブロードキャストする。この時点では、プリンタ５０がマスタプリンタである。このために、確認部３９は、プリンタ５０から応答を受信して、応答ありと判断する。この場合、プリンタ１０の制御部２０は、登録要求をプリンタ５０に送信する。この結果、プリンタ５０のＶＲＡＭにＩＰ１０が記憶される。
【００４１】
プリンタ１０の記憶制御部３０は、プリンタ５０からＡＴ１を取得すると、ＡＴ１をＮＶＲＡＭ２６に記憶させる。次いで、記憶制御部３０は、スレーブを示す種類情報をＶＲＡＭ２８に記憶させる。即ち、プリンタ１０は、スレーブプリンタになる。このために、プリンタ１０の通信実行部３１は、印刷仲介サーバ８０と状態通知通信を実行しない。
【００４２】
なお、図示省略しているが、プリンタ１０がスレーブプリンタになった後に、プリンタ６０もスレーブプリンタになる。図３のケースＢでは、ＰＣ７０から最も早くＡＣ１を取得したプリンタ５０がマスタプリンタになる。そして、プリンタ１０は、マスタプリンタ５０が存在することが確認される場合に、スレーブを示す種類情報をＮＶＲＡＭ２６に適切に記憶させることができる（即ち、スレーブプリンタになることができる）。
【００４３】
（図２のケースＡの続きの印刷処理；図４）
ケースＡ及びＢの登録処理が終了すると、端末装置９０（図１参照）のユーザは、クラウド印刷サービスを利用して、プリンタ１０，５０，６０のうちのいずれかのプリンタで印刷を実行させることができる。図４は、図２のケースＡの続きのシーケンス図を示す。即ち、プリンタ１０がマスタプリンタであり、プリンタ５０，６０がスレーブプリンタである。この状態では、プリンタ１０の通信実行部３１は、印刷仲介サーバ８０と状態通知通信を実行する。
【００４４】
（印刷データＤ１の印刷）
端末装置９０のユーザは、クラウド印刷サービスを利用して、印刷対象のデータである印刷データＤ１（以下では「Ｄ１」と簡単に記載する）に従った印刷を実行させることを望む場合には、まず、端末装置９０の操作部（図示省略）を操作して、端末装置９０をインターネット６に接続し、印刷仲介サーバ８０にアクセスする。次いで、ユーザは、端末装置９０の操作部を操作して、ＡＣ１を端末装置９０に入力する。これにより、端末装置９０に印刷指示が与えられる。この場合、端末装置９０は、ＡＣ１を印刷仲介サーバ８０に送信する。
【００４５】
印刷仲介サーバ８０は、端末装置９０からＡＣ１を受信すると、ＡＣ１に対応付けてアカウントテーブル８２に登録されているプリンタ名と、当該プリンタ名を有するプリンタの現在の状態を示す状態情報と、を含むリストを生成する。上述したように、図２のケースＡでは、ＡＣ１に対応付けて、プリンタ１０のプリンタ名であるＰＮ１が登録される。このために、印刷仲介サーバ８０は、ＰＮ１を含むリストを生成する。なお、印刷仲介サーバ８０によって生成されるリストには、スレーブプリンタのプリンタ名が含まれない。また、上述したように、プリンタ１０から印刷仲介サーバ８０にプリンタ１０の状態が定期的に通知されるために、印刷仲介サーバ８０は、プリンタ１０からの最新の通知の内容を示す状態情報を含むリストを生成する。次いで、印刷仲介サーバ８０は、リストを端末装置９０に送信する。
【００４６】
端末装置９０は、印刷仲介サーバ８０からリストを受信すると、リストを端末装置９０の表示部（図示省略）に表示させる。端末装置９０のユーザは、リスト内の状態情報を見て、印刷を実行させるのか否かを決定することができる。例えば、ユーザは、状態情報がエラー状態を示す場合には、印刷を中止することができる。ユーザは、印刷を実行させることを望む場合には、端末装置９０の操作部を操作して、リストの中からＰＮ１を選択し、次いで、Ｄ１を選択する。なお、Ｄ１は、端末装置９０に記憶されているデータであってもよいし、端末装置９０とは異なるデバイス（例えば、インターネット６上のデータ保存サーバ）に記憶されているデータであってもよい。ただし、以下では、印刷データＤ１が端末装置９０に記憶されている場合を例として、説明を続ける。端末装置９０で上記の各操作が実行されると、端末装置９０は、ＰＮ１及びＤ１を印刷仲介サーバ８０に送信する。
【００４７】
印刷仲介サーバ８０は、端末装置９０からＰＮ１及びＤ１を受信すると、Ｄ１を印刷仲介サーバ８０内の格納部（図示省略）に格納させる。なお、印刷仲介サーバ８０において、様々な通信（リストの通信、後述の印刷通知の送信等）を実行するユニットと、Ｄ１を格納するための上記の格納部と、は一体に構成されていてもよいし、別体に構成されていてもよい。即ち、印刷仲介サーバ８０は、１個のデバイスのみによって構成されていてもよいし、複数個のデバイスの集合であってもよい。次いで、印刷仲介サーバ８０は、印刷通知をマスタプリンタ１０に送信する。印刷通知は、いずれかのプリンタ１０，５０，６０が印刷を実行すべきことを、マスタプリンタ１０に知らせるための通知である。
【００４８】
プリンタ１０の第１の受信部３２（図１参照）は、印刷仲介サーバ８０から印刷通知を受信する。この場合、第１の送信部３４（図１参照）は、ＶＲＡＭ２８内のＩＰ５０，ＩＰ６０を送信先として、表示通知を送信する。これにより、各スレーブプリンタ５０，６０に表示通知が送信される。表示通知は、マスタプリンタ１０で印刷通知が受信されたことを、各スレーブプリンタ５０，６０に知らせるための通知である。このように、本実施例では、マスタプリンタ１０のＶＲＡＭ２８内に、各スレーブプリンタ５０，６０の各ＩＰアドレス（即ちＩＰ５０，ＩＰ６０）が記憶されているために、プリンタ１０は、表示通知を各スレーブプリンタ５０，６０に適切に送信することができる。
【００４９】
次いで、プリンタ１０の報知実行部３８（図１参照）は、所定の文字列を表示部１４に表示させる。上記の所定の文字列は、印刷を実行すべきプリンタを選択することをユーザに促す文字列を含む。一方において、プリンタ５０は、プリンタ１０から表示通知を受信すると、上記の所定の文字列をプリンタ５０の表示部に表示させる。同様に、プリンタ６０も、上記の所定の文字列をプリンタ６０の表示部に表示させる。
【００５０】
端末装置９０のユーザは、プリンタ１０，５０，６０の中から、印刷を実行すべきプリンタを選択する。例えば、プリンタ１０，５０，６０のそれぞれが互いに離れた位置に設置されている場合には、ユーザは、ユーザから最も近い位置に設置されているプリンタを選択することができる。また、例えば、プリンタ１０，５０，６０のそれぞれが互いに近い位置に設置されている場合には、ユーザは、最も高性能なプリンタを選択したり、現在印刷を実行していないプリンタを選択したりすることができる。図４の例では、ユーザは、プリンタ１０を選択する。具体的に言うと、ユーザは、プリンタ１０の操作部１２に所定の操作を加えることによって、プリンタ１０を選択する。
【００５１】
プリンタ１０の印刷データ取得部３６（図１参照）は、プリンタ１０の操作部１２に所定の操作が加えられると、プリンタ１０，５０，６０の中からプリンタ１０が選択されたと判断する。この場合、印刷データ取得部３６は、ＮＶＲＡＭ２６内のＡＴ１を、印刷仲介サーバ８０に送信する。
【００５２】
印刷仲介サーバ８０は、プリンタ１０からＡＴ１を受信すると、格納部に格納されているＤ１をプリンタ１０に供給する。これにより、プリンタ１０の印刷データ取得部３６は、印刷仲介サーバ８０からＤ１を取得する。この場合、印刷制御部３７（図１参照）は、Ｄ１を用いて、印刷実行部１６を駆動するためのデータ（例えばドットのＯＮ／ＯＦＦの二値データ）を生成する。次いで、印刷制御部３７は、当該データに従って、印刷実行部１６を駆動する。即ち、印刷制御部３７は、Ｄ１に従って、印刷実行部１６に印刷を実行させる。
【００５３】
（印刷データＤ２の印刷）
端末装置９０のユーザは、さらに、印刷データＤ２（以下では「Ｄ２」と簡単に記載する）に従った印刷を実行させることを望む場合には、Ｄ１の印刷の場合と同様に、ＡＣ１を端末装置９０に入力する。この場合、端末装置９０は、ＡＣ１を印刷仲介サーバ８０に送信し、印刷仲介サーバ８０からリストを受信する。ユーザは、リストの中からＰＮ１を選択し、次いで、Ｄ２を選択する。この場合、端末装置９０は、ＰＮ１及びＤ２を印刷仲介サーバ８０に送信する。
【００５４】
印刷仲介サーバ８０は、端末装置９０からＰＮ１及びＤ２を受信すると、Ｄ２を印刷仲介サーバ８０内の格納部に格納させる。次いで、印刷仲介サーバ８０は、印刷通知をマスタプリンタ１０に送信する。その後、各プリンタ１０，５０，６０で上記の所定の文字列が表示されるまでの各処理は、Ｄ１の印刷の場合と同様である。
【００５５】
図４の例では、ユーザは、プリンタ５０の操作部に所定の操作を加えることによって、プリンタ５０を選択する。この場合、プリンタ５０は、プリンタ５０のＮＶＲＡＭ内のＡＴ１を印刷仲介サーバ８０に送信して、印刷仲介サーバ８０からＤ２を取得する。そして、プリンタ５０は、Ｄ２に従って印刷を実行する。次いで、プリンタ５０は、交代要求をプリンタ１０に送信する。この交代要求は、プリンタ１０からプリンタ５０にマスタプリンタを交代するように、プリンタ１０に指示するための要求である。
【００５６】
プリンタ１０の記憶制御部３０は、プリンタ５０から交代要求を受信すると、ＶＲＡＭ２８内のマスタを示す種類情報を、スレーブを示す種類情報に変更する。これにより、プリンタ１０が、マスタプリンタからスレーブプリンタに変更される。この場合、プリンタ１０の通信実行部３１は、プリンタ１０と印刷仲介サーバ８０との間のＸＭＰＰの接続を切断する。この結果、通信実行部３１は、状態通知通信を実行しない。次いで、プリンタ１０の制御部２０は、プリンタ１０のＩＰアドレスであるＩＰ１０と、ＶＲＡＭ２８内のスレーブプリンタ６０のＩＰアドレスであるＩＰ６０と、をプリンタ５０に送信する。
【００５７】
プリンタ５０は、プリンタ１０からＩＰ１０及びＩＰ６０を受信すると、プリンタ５０のＶＲＡＭ内のスレーブを示す種類情報を、マスタを示す種類情報に変更する。これにより、プリンタ５０が、スレーブプリンタからマスタプリンタに変更される。プリンタ５０は、さらに、ＩＰ１０及びＩＰ６０をプリンタ５０のＶＲＡＭに記憶させる。次いで、プリンタ５０は、プリンタ５０と印刷仲介サーバ８０との間のＸＭＰＰの接続を確立して、状態通知通信を実行する。
【００５８】
上述したように、本実施例では、プリンタ１０がマスタプリンタである状態で、印刷を実行すべきプリンタとしてプリンタ５０がユーザによって選択された場合に、プリンタ１０がスレーブプリンタに変更され、プリンタ５０がマスタプリンタに変更される。マスタプリンタが変更される理由は、以下のとおりである。即ち、今回のＤ２の印刷が実行されるべき状況でユーザがプリンタ５０を選択したために、次回の印刷が実行されるべき状況でも、ユーザが、プリンタ５０に印刷を実行させることを望む可能性が高い。従って、次回の印刷が実行されるべき状況において、端末装置９０にプリンタ５０の状態情報が表示されることが好ましい。このような実情に鑑みると、プリンタ５０の状態が印刷仲介サーバ８０に通知されるように、プリンタ５０がマスタプリンタになることが好ましい。
【００５９】
（図３のケースＢの続きの印刷処理；図５）
図５は、図３のケースＢの続きのシーケンス図を示す。即ち、プリンタ５０がマスタプリンタであり、プリンタ１０，６０がスレーブプリンタである。なお、図４のＤ２の印刷が終了した場合にも、プリンタ５０がマスタプリンタであり、プリンタ１０，６０がスレーブプリンタである。従って、図５は、図４の続きのシーケンス図であると言うこともできる。
【００６０】
（印刷データＤ３の印刷）
端末装置９０のユーザは、印刷データＤ３（以下では「Ｄ３」と簡単に記載する）に従った印刷を実行させることを望む場合には、図４のＤ１及びＤ２の印刷の場合と同様に、ＡＣ１を端末装置９０に入力する。この場合、端末装置９０は、ＡＣ１を印刷仲介サーバ８０に送信し、印刷仲介サーバ８０からリストを受信する。リストは、プリンタ５０のプリンタ名であるＰＮ２と、プリンタ５０の状態を示す状態情報と、を含む。ユーザは、リストの中からＰＮ２を選択し、次いで、Ｄ３を選択する。この場合、端末装置９０は、ＰＮ２及びＤ３を印刷仲介サーバ８０に送信する。
【００６１】
印刷仲介サーバ８０は、端末装置９０からＰＮ２及びＤ３を受信すると、Ｄ３を印刷仲介サーバ８０内の格納部に格納させる。次いで、印刷仲介サーバ８０は、印刷通知をマスタプリンタ５０に送信する。この場合、プリンタ５０は、プリンタ１０，６０に表示通知を送信する。
【００６２】
プリンタ１０の第２の受信部３３（図１参照）は、プリンタ５０から表示通知を受信する。この場合、プリンタ１０の報知実行部３８は、上記の所定の文字列を表示部１４に表示させる。なお、プリンタ５０，６０でも、上記の所定の文字列が表示される。
【００６３】
図５の例では、ユーザは、プリンタ１０の操作部１２に所定の操作を加えることによって、プリンタ１０を選択する。この場合、プリンタ１０の印刷データ取得部３６は、プリンタ１０，５０，６０の中からプリンタ１０が選択されたと判断する。次いで、印刷データ取得部３６は、ＮＶＲＡＭ２６内のＡＴ１を印刷仲介サーバ８０に送信して、印刷仲介サーバ８０からＤ３を取得する。この場合、印刷制御部３７は、Ｄ３に従って、印刷実行部１６に印刷を実行させる。
【００６４】
次いで、プリンタ１０の制御部２０は、交代要求をプリンタ５０に送信する。この交代要求は、プリンタ５０からプリンタ１０にマスタプリンタを交代するように、プリンタ５０に指示するための要求である。プリンタ５０は、プリンタ１０から交代要求を受信すると、プリンタ５０のＶＲＡＭ内のマスタを示す種類情報を、スレーブを示す種類情報に変更する。これにより、プリンタ５０が、マスタプリンタからスレーブプリンタに変更される。この場合、プリンタ５０は、プリンタ５０と印刷仲介サーバ８０との間のＸＭＰＰの接続を切断する。次いで、プリンタ５０は、ＩＰ５０及びＩＰ６０をプリンタ１０に送信する。
【００６５】
プリンタ１０の記憶制御部３０は、プリンタ５０からＩＰ５０及びＩＰ６０を受信すると、ＶＲＡＭ２８内のスレーブを示す種類情報を、マスタを示す種類情報に変更する。これにより、プリンタ１０が、スレーブプリンタからマスタプリンタに変更される。記憶制御部３０は、さらに、ＩＰ５０及びＩＰ６０をＶＲＡＭ２８に記憶させる。次いで、プリンタ１０の通信実行部３１は、プリンタ１０と印刷仲介サーバ８０との間のＸＭＰＰの接続を確立して、状態通知通信を実行する。なお、図５に示されるように、マスタプリンタが変更される理由は、図４のＤ２の印刷の場合に、マスタプリンタが変更される理由と同様である。
【００６６】
（電源ＯＦＦ処理；図６）
図６は、図２のケースＡの続きのシーケンス図を示す。即ち、プリンタ１０がマスタプリンタであり、プリンタ５０，６０がスレーブプリンタである。
【００６７】
管理者は、プリンタ５０の電源をＯＦＦするために、プリンタ５０の電源スイッチを操作する。なお、本実施例では、各プリンタ１０，５０，６０の電源スイッチは、ハードスイッチではなく、ソフトスイッチである。プリンタ５０は、電源スイッチが操作されると、離脱通知をプリンタ１０に送信する。離脱通知は、プリンタ５０の電源がＯＦＦされることを、プリンタ１０に知らせるための通知である。プリンタ５０は、離脱通知をプリンタ１０に送信した後に、プリンタ５０の電源をＯＦＦする。
【００６８】
プリンタ１０の記憶制御部３０は、プリンタ５０から離脱通知を受信すると、離脱通知の送信元のＩＰアドレス、即ち、プリンタ５０のＩＰアドレスであるＩＰ５０を、ＶＲＡＭ２８から消去する。これにより、仮に、印刷仲介サーバ８０からプリンタ１０に印刷通知が送信されても、プリンタ１０の第１の送信部３４は、プリンタ５０に表示通知を送信しない。即ち、電源がＯＦＦされているプリンタ５０に表示通知が送信されるという事象が発生するのを抑制することができ、この結果、プリンタ１０の処理負荷を低減させることができる。
【００６９】
続いて、管理者は、プリンタ１０の電源をＯＦＦするために、プリンタ１０の電源スイッチを操作する。この場合、プリンタ１０の第２の送信部３５（図１参照）は、ＶＲＡＭ２８内のＩＰ６０を送信先として、交代要求を送信する。これにより、スレーブプリンタ６０に交代要求が送信される。この交代要求は、プリンタ１０からプリンタ６０にマスタプリンタを交代するように、プリンタ６０に指示するための要求である。このように、本実施例では、プリンタ１０は、交代要求をプリンタ６０に送信するために、プリンタ６０をスレーブプリンタからマスタプリンタに適切に変更させることができる。この結果、プリンタ１０の電源がＯＦＦされる場合に、マスタプリンタが存在しなくなるという事象が発生するのを抑制することができる。
【００７０】
なお、複数個のスレーブプリンタが存在する状況では、プリンタ１０のＶＲＡＭ２８内に複数個のＩＰアドレスが記憶されている。このような場合には、第２の送信部３５は、複数個のＩＰアドレスのうちの最も新しいＩＰアドレス（即ち、ＶＲＡＭ２８に記憶されている時間が最も短いＩＰアドレス）を送信先として、交代要求を送信する。プリンタ１０の制御部２０は、交代要求をプリンタ６０に送信した後に、プリンタ１０の電源をＯＦＦする。
【００７１】
プリンタ６０は、プリンタ１０から交代要求を受信すると、プリンタ６０のＶＲＡＭ内のスレーブを示す種類情報を、マスタを示す種類情報に変更する。なお、図５の例では、プリンタ１０の電源がＯＦＦされると、スレーブプリンタが存在しなくなるために、プリンタ６０のＶＲＡＭには、スレーブプリンタのＩＰアドレスが記憶されない。プリンタ６０は、プリンタ６０と印刷仲介サーバ８０との間のＸＭＰＰの接続を確立して、状態通知通信を実行する。
【００７２】
続いて、管理者は、プリンタ６０の電源をＯＦＦするために、プリンタ６０の電源スイッチを操作する。スレーブプリンタが存在しないために、プリンタ６０は、交代要求を送信することなく、プリンタ６０の電源をＯＦＦする。これにより、ＬＡＮ４に接続されている全てのプリンタ１０，５０，６０の電源がＯＦＦされる。ただし、各プリンタ１０，５０，６０のＮＶＲＡＭ内には、ＡＴ１が残存する。ＮＶＲＡＭ内の情報は、電源がＯＦＦされても、消去されないからである。
【００７３】
（電源ＯＮ処理；図７）
図７は、図６の続きのシーケンス図を示す。即ち、各プリンタ１０，５０，６０の電源がＯＦＦされており、各プリンタ１０，５０，６０のＮＶＲＡＭ内にＡＴ１が残存している。
【００７４】
管理者は、プリンタ１０の電源をＯＮするために、プリンタ１０の電源スイッチを操作する。この場合、図２のケースＡと同様に、プリンタ１０の確認部３９は、確認要求をブロードキャストする。この時点では、各プリンタ５０，６０の電源がＯＦＦされている。従って、確認部３９は、応答なしと判断する。この場合、プリンタ１０の記憶制御部３０は、マスタを示す種類情報をＶＲＡＭ２８に記憶させる。即ち、プリンタ１０は、マスタプリンタになる。
【００７５】
なお、図２のケースＡとは異なり、プリンタ１０は、印刷仲介サーバ８０からＡＴ１を取得しない。ＮＶＲＡＭ２６にＡＴ１が既に記憶されているからである。プリンタ１０の通信実行部３１は、プリンタ１０と印刷仲介サーバ８０との間でＸＭＰＰの接続を確立して、状態通知通信を実行する。
【００７６】
続いて、管理者は、プリンタ５０の電源をＯＮするために、プリンタ１０の電源スイッチを操作する。この場合、プリンタ５０は、確認要求をブロードキャストし、プリンタ１０から応答を受信する。このために、プリンタ５０は、スレーブを示す情報をプリンタ５０のＶＲＡＭに記憶させる。即ち、プリンタ５０は、スレーブプリンタになる。次いで、プリンタ５０は、登録要求をプリンタ１０に送信する。
【００７７】
プリンタ１０の記憶制御部３０は、プリンタ５０から登録要求を受信すると、登録要求に含まれる送信元のＩＰアドレス、即ち、プリンタ５０のＩＰアドレスであるＩＰ５０を、ＶＲＡＭ２８に記憶させる。なお、図２のケースＡとは異なり、プリンタ１０は、ＡＴ１をプリンタ５０に供給しない。プリンタ５０のＮＶＲＡＭにＡＴ１が既に記憶されているからである。
【００７８】
なお、図７では図示省略しているが、プリンタ５０がスレーブプリンタになった後に、プリンタ６０がスレーブプリンタになる。これにより、図３に示されるように、端末装置９０のユーザは、クラウド印刷サービスを利用して、プリンタ１０，５０，６０のうちのいずれかのプリンタで印刷を実行させることができる。
【００７９】
（実施例の効果）
本実施例によると、複数個のプリンタ１０，５０，６０のうちのマスタプリンタは、状態通知通信を実行するが、スレーブプリンタは、状態通知通信を実行しない。このために、印刷仲介サーバ８０と複数個のプリンタ１０，５０，６０の間の通信負荷（例えば、ＬＡＮ４の通信負荷）を低減させることができる。しかも、プリンタ１０がマスタプリンタである場合（図４）でも、プリンタ１０がスレーブプリンタである場合（図５）でも、プリンタ１０がユーザによって選択されると、プリンタ１０は、印刷仲介サーバ８０から印刷データを取得して、印刷を実行することができる。同様に、各プリンタ５０，６０は、マスタプリンタである場合でも、スレーブプリンタである場合でも、ユーザによって選択されると、印刷を実行することができる。このために、ユーザは、クラウド印刷サービスを利用して、複数個のプリンタ１０，５０，６０のうちの所望のプリンタに印刷を実行させることができる。
【００８０】
また、本実施例では、マスタプリンタは、印刷仲介サーバ８０から印刷通知を受信すると、各スレーブプリンタに表示通知を送信する。この結果、各プリンタ１０，５０，６０において、上記の所定の文字列が表示される。従って、ユーザは、複数個のプリンタ１０，５０，６０のうちのいずれかのプリンタが印刷を実行すべき状況であることを知ることができる。ユーザは、所望のプリンタを選択して、当該プリンタに印刷を実行させることができる。
【００８１】
（対応関係）
プリンタ１０が、「特定のプリンタ」の一例である。マスタプリンタ、スレーブプリンタが、それぞれ、「第１種のプリンタ」、「第２種のプリンタ」の一例である。状態通知通信が、「所定の通信」の一例である。印刷通知、表示通知が、それぞれ、「第１の通知」、「第２の通知」の一例である。上記の所定の文字列を表示させることが、「所定の報知」の一例である。図２のケースＡにおいて、プリンタ１０のＶＲＡＭ２８に記憶されるＩＰ５０，ＩＰ６０が、「１個以上の識別情報」の一例である。図６において、離脱通知、プリンタ５０が、それぞれ、「第３の通知」、「第１のプリンタ」の一例である。図６において、交代要求、プリンタ６０が、それぞれ、「第４の通知」、「第２のプリンタ」の一例である。図４のＤ１の印刷のケース、図５のＤ３の印刷のケースが、それぞれ、「第１の場合」、「第２の場合」の一例である。図２のケースＡが、図３のケースＢが、それぞれ、「第３の場合」、「第４の場合」の一例である。
【００８２】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【００８３】
（変形例１）「プリンタ」は、印刷機能のみを備えるデバイスでなくてもよく、他の機能（スキャン機能、コピー機能、ＦＡＸ機能、電話機能等）を備えるデバイスでもよい。即ち、「プリンタ」という用語は、コピー機、ＦＡＸ機、多機能機（印刷機能とそれ以外の機能とを少なくとも備えるデバイス）等を含む。
【００８４】
（変形例２）上記の実施例では、各プリンタ１０，５０，６０の電源がＯＮされている状態では、各プリンタ１０，５０，６０のＶＲＡＭに、マスタ又はスレーブを示す種類情報が継続的に記憶される。これに代えて、各プリンタ１０，５０，６０に対応する各種類情報を記憶するための管理サーバが、ＬＡＮ４に接続されていてもよい。この場合、例えば、プリンタ１０の記憶制御部３０は、プリンタ１０がマスタプリンタであるのかスレーブプリンタであるのかを知る必要がある状況（例えば、確認要求（図２参照）を受信して、応答を送信すべき状況）が発生する毎に、管理サーバからプリンタ１０に対応する種類情報を取得してもよい。この場合、記憶制御部３０は、管理サーバから取得された種類情報を、プリンタ１０のＶＲＡＭ２６に一時的に記憶させることになる。この構成も、「種類情報を、特定のプリンタのメモリに記憶させる」という構成に含まれる。即ち、一般的に言うと、種類情報は、メモリに継続的に記憶される情報であってもよいし、メモリに一時的に記憶される情報であってもよい。
【００８５】
（変形例３）上記の実施例では、プリンタ１０の通信実行部３１は、プリンタ１０がマスタプリンタである場合に、プリンタ１０の状態を通知するための状態確認通信を印刷仲介サーバ８０と実行する。ただし、通信実行部３１は、プリンタ１０がマスタプリンタである場合に、プリンタ１０の状態を通知せずに、プリンタ１０が生存していることを示す信号（単なる生存確認パケット）を印刷仲介サーバ８０に送信してもよい。また、通信実行部３１は、プリンタ１０がマスタプリンタである場合に、印刷仲介サーバ８０から情報（例えば、印刷仲介サーバ８０の状態を示す情報、新しいアクセストークン等）を取得するための通信を実行してもよい。即ち、通信実行部３１は、印刷仲介サーバ８０を介したクラウド印刷サービスを利用するために必要な所定の通信を、印刷仲介サーバ８０と実行すればよい。なお、「所定の通信」は、ＸＭＰＰに従った通信でなくてもよく、他の通信プロトコル（例えばＨＴＴＰ）に従った通信であってもよい。
【００８６】
（変形例４）図４では、プリンタ１０の第１の送信部３４は、印刷仲介サーバ８０から印刷通知が受信される場合に、プリンタ５０，６０に表示通知を送信する。これにより、各プリンタ１０，５０，６０に上記の所定の文字列が表示される。ただし、表示通知の送信、及び、上記の所定の文字列の表示が、実行されなくてもよい。このような場合でも、プリンタ１０の操作部１２にユーザによって所定の操作が加えられると、印刷データ取得部３６は、プリンタ１０がユーザによって選択されたと判断することができる。
【００８７】
（変形例５）プリンタ１０の報知実行部３８は、上記の所定の文字列を表示部１４に表示させる代わりに、ランプを点灯させたり、音を出力させたりしてもよい。即ち、報知実行部３８は、印刷を実行すべきプリンタをユーザに選択させるための所定の報知を実行すればよい。
【００８８】
（変形例６）図２では、印刷仲介サーバ８０は、ＰＮ１をアカウントテーブル８２に登録する際に、ＡＴ１を生成してプリンタ１０に供給する。これにより、プリンタ１０の記憶制御部３０は、ＡＴ１をＮＶＲＡＭ２６に記憶させる。これに代えて、印刷仲介サーバ８０は、ＰＮ１をアカウントテーブル８２に登録する際に、ＡＴ１を生成しなくてもよい。この場合、記憶制御部３０は、ＡＴ１の代わりに、ＡＣ１をＮＶＲＡＭ２６に記憶させる。そして、記憶制御部３０は、ＡＴ１が必要な状況（例えば、印刷データを取得すべき状況）が発生する毎に、ＡＣ１を印刷仲介サーバ８０に送信して、ＡＴ１を生成するように印刷仲介サーバ８０に要求する。この場合、記憶制御部３０は、印刷仲介サーバ８０から取得されるＡＴ１をＶＲＡＭ２８に一時的に記憶させ、印刷データ取得部３６は、ＶＲＡＭ２８内のＡＴ１を用いて、印刷仲介サーバ８０から印刷データを取得する。印刷データが取得されると、ＶＲＡＭ２８からＡＴ１が消去される。一般的に言うと、認証情報は、プリンタのメモリに永続的に記憶されるものであってもよいし、プリンタのメモリに一時的に記憶されるものであってもよい。なお、上記の実施例では、認証情報の一例として、アクセストークンが開示されているが、認証情報は、印刷データを取得するための他の情報（例えば、アカウント情報、他の種類のトークン等）であってもよい。
【００８９】
（変形例７）図３では、プリンタ１０がマスタプリンタ５０に登録要求を送信すると、マスタプリンタ５０からプリンタ１０にＡＴ１が供給される。これに代えて、プリンタ１０がマスタプリンタ５０に登録要求を送信しても、マスタプリンタ５０からプリンタ１０にＡＴ１が供給されなくてもよい。この場合、図５において、スレーブプリンタ１０がユーザによって選択された場合に、スレーブプリンタ１０は、マスタプリンタ５０にＡＴ１を要求して、マスタプリンタ５０からＡＴ１を取得してもよい。そして、スレーブプリンタ１０の記憶制御部３０は、ＶＲＡＭ２８にＡＴ１を一時的に記憶させ、ＡＴ１を用いて、印刷仲介サーバ８０からＤ３を取得してもよい。Ｄ３が取得されると、ＶＲＡＭ２８からＡＴ１が消去されてもよい。一般的に言うと、記憶制御部は、第４の場合に、第１種のプリンタから取得される認証情報を、メモリに記憶させればよい。なお、本変形例によると、例えば、ＡＴ１が更新される毎に、マスタプリンタ５０からスレーブプリンタ１０にＡＴ１を供給する必要がなく、スレーブプリンタ１０は、ＡＴ１を利用するタイミング（即ち、印刷を実行すべきタイミング）で、マスタプリンタ５０からＡＴ１を取得することができる。この結果、ＡＴ１の通信回数を低減させ得るために、通信負荷の低減及びセキュリティの向上を実現し得る。
【００９０】
（変形例８）上記の実施例では、図２のケースＡにおいて、プリンタ１０の記憶制御部３０は、ＩＰ５０，ＩＰ６０をＶＲＡＭ２８に記憶させる。これに代えて、記憶制御部３０は、プリンタ５０，６０のプリンタ名であるＰＮ２，ＰＮ３をＶＲＡＭ２８に記憶させてもよい。この場合、第１の送信部３２は、ＰＮ２，ＰＮ３を用いて、プリンタ５０，６０のＩＰアドレスを取得し（例えばＤＮＳサーバを用いた名前変換を実行し）、そのＩＰアドレスを送信先として、表示通知を送信してもよい。一般的に言うと、「識別情報」は、プリンタを識別するための情報であればよい。
【００９１】
（変形例９）図２及び図３の登録処理において、ユーザは、マスタプリンタから印刷仲介サーバ８０に送信されるプリンタ名（以下では「送信用プリンタ名」と呼ぶ）を指定可能であってもよい。例えば、図２では、マスタプリンタ１０がプリンタ名「ＰＮ１」を有しているが、ユーザが、送信用プリンタ名として異なるプリンタ名を指定する場合に、マスタプリンタ１０から印刷仲介サーバ８０に当該異なるプリンタ名が送信されてもよい。また、ユーザは、プリンタ１０，５０，６０のうちのどのプリンタがマスタプリンタになる場合であっても、共通の送信用プリンタ名を指定するようにしてもよい。この場合、どのプリンタがマスタプリンタになっても、端末装置９０に表示されるリスト内のプリンタ名を統一させることができる。
【００９２】
（変形例１０）上記の実施例では、プリンタ１０のＣＰＵ２２がソフトウェアを実行することによって、各部３０〜３９の機能が実現される。ただし、各部３０〜３９のうちの少なくとも一部は、論理回路等のハードウェアによって実現されてもよい。
【００９３】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【００９４】
２：通信システム、６：インターネット、１０，５０，６０：プリンタ、７０：ＰＣ、８０：印刷仲介サーバ、８２：アカウントテーブル、９０：端末装置、ＡＣ１：アカウント情報、ＡＴ１：アクセストークン、Ｄ１，Ｄ２，Ｄ３：印刷データ、ＰＮ１，ＰＮ２，ＰＮ３：プリンタ名、ＩＰ１０，ＩＰ５０，ＩＰ６０：ＩＰアドレス
【図１】
2013129146.tif 000003
【図２】
2013129146.tif 000004
【図３】
2013129146.tif 000005
【図４】
2013129146.tif 000006
【図５】
2013129146.tif 000007
【図６】
2013129146.tif 000008
【図７】
2013129146.tif 000009