以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は開示例にすぎず、本発明の要旨を変更しない範囲で適宜変更できることは言うまでもない。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。或いは、後述の各処理は、本発明の要旨を変更しない範囲で、適宜省略或いは変更することができる。
本実施形態では、印刷材を貯留するカートリッジ30(図1)を提供するサービスに入退会可能なプリンタ10(図1)を説明する。当該サービスは、管理サーバ11を運用するサービス提供者によってプリンタ10のユーザに提供される。サービス提供者は、管理サーバ11を用いて、プリンタ10における印刷枚数や印刷材の使用量や印刷材の残量等を取得してプリンタ10の管理を行う。サービス提供者は、例えば、印刷材の使用量に拘わらず、印刷枚数に応じた料金をプリンタ10のユーザに請求し、或いは、印刷材の使用量や印刷枚数に拘わらず、1月などの単位期間において定額の料金をプリンタ10のユーザに請求する。以下、プリンタ10及び管理サーバ11について詳しく説明する。
プリンタ10は、印刷材を貯留するカートリッジ30を装着されて使用される種類のプリンタである。例えば、プリンタ10は、インクを貯留するカートリッジ30を装着されて使用される、いわゆるインクジェットプリンタや、トナーを貯留するカートリッジ30を装着されて使用される、いわゆるレーザプリンタである。以下では、プリンタ10が、いわゆるインクジェットプリンタである例を説明する。また、以下では、プリンタ10が、カラーの画像をシートに印刷可能な、いわゆるカラープリンタである例を説明する。すなわち、プリンタ10は、インクを貯留する複数のカートリッジ30を装着されて使用されるプリンタである。複数のカートリッジ30は、例えば、マゼンタのインクを貯留するカートリッジ30、シアンのインクを貯留するカートリッジ30、イエローのインクを貯留するカートリッジ30、及びブラックのインクを貯留するカートリッジ30である。
プリンタ10は、図1に示されるように、プリンタ部21、スキャナ22、タッチパネル23、操作スイッチ26、通信インタフェース27、装着ケース28、及び制御基板40を備える。なお、以下では、インタフェースは、I/Fと省略して説明する。
プリンタ部21は、例えば、印刷前のシートが載置される給紙トレイ、給紙トレイに載置されたシートを搬送する搬送装置、搬送装置によって搬送されるシートにインク滴を吐出して印刷を行う印刷ヘッド、及び印刷されたシートが載置される排紙トレイを有する。ただし、プリンタ部21は、シートに印刷を行うことが可能であれば、どのような種類のプリンタ部であってもよい。
スキャナ22は、例えば、原稿が載置される原稿トレイ、原稿トレイに載置された原稿を搬送する搬送装置、搬送装置によって搬送される原稿に印刷された画像を読み取る画像読取装置、及び画像を読み取られた原稿が載置される排紙トレイを有する。なお、スキャナ22は、原稿トレイ及び搬送装置に代えて、或いは原稿トレイ及び搬送装置とともに、原稿が載置されるコンタクトガラスを有していてもよい。また、スキャナ22は、原稿に印刷された画像を読み取ることが可能であれば、どのような種類のスキャナであってもよい。なお、スキャナ22は、変形例において使用される。すなわち、本実施形態では、プリンタ10は、スキャナ22を備えていなくてもよい。
タッチパネル23は、画像を表示するディスプレイ24と、ディスプレイ24に重ねられた透明な膜状のタッチセンサ25と、を有する。タッチセンサ25は、ユーザが指などでタッチしたディスプレイ24上の位置を示す位置情報を出力する。後述のプリンタプログラム46は、タッチセンサ25が出力する位置情報に基づいて、ディスプレイ24に表示させているアイコンが選択されたか否かを判断する。
操作スイッチ26は、例えば、タクトスイッチやマイクロスイッチなどの接点を有するスイッチである。後述のプリンタプログラム46は、例えば、当該接点を含む回路が導通したか否かに基づいて、ユーザによって操作スイッチ26が操作されたか否かを判断する。なお、プリンタ10は、タッチセンサ25と操作スイッチ26とのうち、一方のみを有していても良い。
通信I/F27は、インターネット12を通じてウェブサーバと通信するためのインタフェースである。通信I/F27は、インターネットプロトコルなどの通信規格や、無線LANや有線LANで用いられる通信規格を用いて、ウェブサーバと通信を行う。無線LANの通信規格は、Wi-Fi(登録商標)やブルートゥース(登録商標)などである。
装着ケース28は、複数のカートリッジ30を保持可能なケースである。カートリッジ30をそれぞれ固定及び固定の解除を行う複数のロック部材や、装着された各カートリッジ30にそれぞれ挿入される複数のインクニードルが、装着ケース28に設けられている。
また、カートリッジI/F29が装着ケース28に設けられている。カートリッジI/F29は、後述のプリンタプログラム46が、装着ケース28に装着されたカートリッジ30が有する後述のカートリッジIC31と通信を行うためのインタフェースである。装着ケース28に装着可能なカートリッジ30の個数と同数のカートリッジI/F29が装着ケース28に設けられている。すなわち、後述のプリンタプログラム46は、装着ケース28に装着された各カートリッジ30のカートリッジIC31とそれぞれ通信可能である。
カートリッジI/F29は、例えば、カートリッジIC31が有する電極と接触可能な電極である。すなわち、プリンタ10は、装着されたカートリッジ30のカートリッジIC31と直接導通して通信を行う。ただし、プリンタ10は、電波や光を用いてカートリッジIC31と通信を行ってもよい。その場合、カートリッジI/F29は、電極ではなく、アンテナや発光ダイオードなどである。
制御基板40は、パターン回路基板と、パターン回路基板に実装された抵抗やダイオードやコイルやコンデンサやICやマイクロコンピュータなどによって実現される。
制御基板40は、中央演算処理装置であるCPU41、本体メモリ42、及び通信バス43を備える。CPU41は、コントローラの一例である。
本体メモリ42は、ROM44、RAM47、及びEEPROM48などを有する。なお、CPU41のバッファや、プリンタ10が有するスロットに装着されたUSBメモリなどの記憶領域や可搬記憶媒体が、本体メモリ42に含められてもよい。
ROM44は、オペレーティングシステムであるOS45及びプリンタプログラム46を記憶する。プリンタプログラム46は、いわゆるファームウエアである。OS45及びプリンタプログラム46は、CPU41によって実行される。例えば、CPU41は、マルチタスク処理により、OS45及びプリンタプログラム46を疑似的に並行して実行する。なお、プリンタプログラム46の全部或いは一部は、ROM44ではなく、EEPROM48に記憶されていてもよい。
RAM47は、OS45及びプリンタプログラム46の実行に必要な記憶領域等を有する。
EEPROM48は、プリンタ10を個別に識別するプリンタ識別情報を予め記憶する。プリンタ識別情報は、例えば、シリアル番号やMACアドレスなどである。
また、EEPROM48は、履歴情報を記憶する記憶領域を有する。履歴情報は、プリンタ10に装着されて使用されたカートリッジ30に付された後述のCTG識別情報と、カートリッジ30がプリンタ10に装着された日時を示す装着日時と、装着されたカートリッジ30が貯留するインクの残量を示す残量情報と、装着されたカートリッジ30の色を示す色情報と、装着されたカートリッジ30の種別を示す種別情報と、を対応付けた情報である。プリンタ10に装着されたカートリッジ30の個数に応じた個数の履歴情報がEEPROM48に記憶される。各履歴情報は、CTG識別情報によって個々に識別される。なお、EEPROM48に確保された所定の記憶領域に記憶可能な個数を超えた個数のカートリッジ30がプリンタ10に装着された場合、一番古い履歴情報が、一番新しい履歴情報で上書きされてもよい。
種別情報は、装着ケース28に装着されたカートリッジ30が、サービス提供者が提供したカートリッジ30である特定カートリッジ30であるか、一般に市販されている通常のカートリッジ30である通常カートリッジ30であるかを示す情報である。種別情報は、例えば種別フラグである。オンの種別フラグは、特定カートリッジ30を示し、オフの種別フラグは、通常カートリッジ30を示す。以下では、種別情報が、種別フラグである例を説明する。特定カートリッジ30であることを示すオンの種別フラグは、第1種別の一例であり、通常カートリッジ30であることを示すオフの種別フラグは、第2種別の一例である。なお、履歴情報は、上述のCTG識別情報等以外の情報を含んでいてもい。履歴情報は、例えば、カートリッジ30が交換されたことに応じて、EEPROM48に記憶される。
また、EEPROM48は、モード情報を記憶する記憶領域を有する。モード情報は、プリンタ10の動作モードを示す情報である。プリンタプログラム46は、EEPROM48が記憶するモード情報が示す動作モードで動作する。
モード情報として、特定モード情報或いは通常モード情報がEEPROM48に記憶される。特定モード情報は、印刷枚数や残量情報などを含む報告情報を管理サーバ11に送信する処理を実行するモードである特定モードを示す情報である。通常モード情報は、報告情報を管理サーバ11に送信しないモードであり、かつ特定カートリッジ30の使用を許可しないモードである通常モードを示す情報である。特定モード情報は、例えばオンのモードフラグであり、通常モード情報は、オフのモードフラグである。モード情報の初期値は、例えば通常モード情報である。以下では、モード情報がモードフラグである例を説明する。モード情報がEEPROM48に記憶されるタイミングについては後述する。
また、EEPROM48は、印刷枚数を記憶する。印刷枚数は、プリンタ10において印刷が行われるたびに、プリンタプログラム46によってカウントアップされる。
また、EEPROM48は、緊急情報を記憶するための記憶領域を有する。当該記憶領域には、ニアエンプティ情報や、エンプティ情報や、紙詰まり情報や、故障情報などの緊急情報が記憶される。ニアエンプティ情報は、例えば、残量情報が示すインク残量が残り少ないことを示す情報である。エンプティ情報は、例えば、残量情報が示すインク残量がほぼゼロであることを示す情報である。紙詰まり情報は、プリンタ10においてシートの詰まりが生じていることを示す情報である。故障情報は、プリンタ10において故障が生じていることを示す情報である。緊急情報は、プリンタプログラム46によってEEPROM48に記憶される。カートリッジ30の交換によってニアエンプティやエンプティが解消された場合や、詰まったシートがプリンタ10から取り除かれるなどして、紙詰まりや故障が解消された場合、緊急情報は、プリンタプログラム46によって、EEPROM48から削除される。
また、EEPROM48は、不図示の画面データを予め記憶する。画面データは、ホーム画面を示す画面データや、後述の買取承諾画面や買上承諾画面を示す画面データや、その他の画面を示す画面データを含む。
また、EEPROM48は、不図示の買取済情報を記憶する記憶領域を有する。買取済情報は、プリンタ10に装着されている通常カートリッジ30をサービス提供者が買い取り済であるか否かを示す情報である。EEPROM48は、マゼンタのインクを貯留するカートリッジ30に対する買取済情報を記憶する記憶領域、シアンのインクを貯留するカートリッジ30に対する買取済情報を記憶する記憶領域、イエローのインクを貯留するカートリッジ30に対する買取済情報を記憶する記憶領域、及びブラックのインクを貯留するカートリッジ30に対する買取済情報を記憶する記憶領域を有する。買取済情報は、例えば、初期値がオフであり、通常カートリッジ30をサービス提供者が買い取ったことに基づいてオンにされ、プリンタ10のユーザが上述のサービスから退会したことに基づいてオフにされる買取済フラグである。詳しくは後述する。
また、EEPROM48は、不図示のURLを記憶する記憶領域を有する。当該URLは、管理サーバ11がインターネット12上に公開するURLである。URLは、例えば予めEEPROM48に記憶される。或いは、URLは、プリンタ10のユーザによってプリンタ10に入力されてEEPROM48に記憶される。或いは、URLは、管理サーバ11以外のウェブサーバからダウンロードされてEEPROM48に記憶される。或いは、URLは、URLが印刷された原稿がスキャナ22によってスキャンされ、スキャンによって生成された画像データからOCRによって抽出されて、EEPROM48に記憶される。
通信バス43は、CPU41及び本体メモリ42と接続されている。すなわち、本体メモリ42に記憶されてCPU41で実行されるプリンタプログラム46は、通信バス43を通じて本体メモリ42から情報やデータを読み出し、また、通信バス43を通じて情報やデータを本体メモリ42に記憶させることがきる。
また、通信バス43は、パターン回路基板のパターンや通信ケーブルなどによって、プリンタ部21、スキャナ22、タッチパネル23、操作スイッチ26、通信I/F27、及びカートリッジI/F29と接続されている。すなわち、CPU41で実行されるプリンタプログラム46は、通信バス43を通じてプリンタ部21及びスキャナ22を駆動させることができ、また、通信バス43を通じてプリンタ部21及びスキャナ22から情報やデータを取得することができる。また、プリンタプログラム46は、通信バス43を通じてディスプレイ24に画面データを入力して、画面データが示す画面をディスプレイ24に表示させることができる。また、プリンタプログラム46は、通信バス43を通じて、タッチセンサ25が出力した位置情報や、操作スイッチ26が操作されたか否かを示す操作情報を取得することができる。また、プリンタプログラム46は、通信バス43及びカートリッジI/F29を通じて、後述のカートリッジIC31が有するCTGメモリ33が記憶するCTG識別情報や種別情報や残量情報等を読み出し、また、CTGメモリ33が記憶する残量情報を更新することができる。
カートリッジ30は、インクを貯留する不図示の筐体と、筐体に取り付けられたカートリッジIC31と、を備える。カートリッジIC31は、電極32及びCTGメモリ33を有する。なお、CTGは、カートリッジを省略した記載である。
CTGメモリ33は、型番、CTG識別情報、種別情報、及び残量情報を予め記憶する。
型番は、カートリッジ30が貯留するインクの色や、カートリッジ30のサイズなどを示す。なお、型番とは別に、カートリッジ30が貯留するインクの色を示す色情報や、カートリッジ30のサイズを示すサイズ情報がCTGメモリ33に記憶されていてもよい。
CTG識別情報は、カートリッジ30を個別に識別する情報である。CTG識別情報は、例えばシリアル番号である。
種別情報は、上述の履歴情報に含まれる種別情報と同様の情報であって、特定カートリッジ30であるか通常カートリッジ30であるかを示す情報である。
残量情報は、カートリッジ30が貯留するインクの量を示す情報である。残量情報の初期値は、満量を示す値である。残量情報は、プリンタ10において印刷が行われるたびに、プリンタプログラム46によって更新される。詳しくは後述する。
管理サーバ11は、インターネット12上にURLを公開する、いわゆるウェブサーバである。また、管理サーバ11は、特定カートリッジ30をプリンタ10のユーザに提供してユーザに印刷を行わせるサービスを提供するサービス提供者が運用するサーバである。管理サーバ11は、サービス提供者が所有するサーバであってもよいし、サービス提供者が使用権原を有する、いわゆるレンタルサーバであってもよい。
管理サーバ11は、中央演算処理装置であるCPU51、サーバメモリ52、通信I/F54、及び不図示の通信バスを備える。
サーバメモリ52は、ROMや、RAMや、SSDや、ハードディスクや、CPUのバッファなどである。なお、インターネット12を通じて管理サーバ11と通信可能なストレージサーバが有するメモリがサーバメモリ52に含まれていてもよい。すなわち、管理サーバ11は、複数のサーバで構成されていてもよい。
サーバメモリ52は、オペレーティングシステムであるOS55と、サーバプログラム56と、管理データベースと、金額算出テーブルと、を記憶する。
管理データベースは、サービス提供者が提供するサービスに入会したユーザのプリンタ10に関する報告情報などを管理するデータベースである。管理データベースは、例えば、プリンタ識別情報で識別される複数のメインレコードを有する。各メインレコードは、CTG識別情報で識別される複数の第1サブレコードを有する。第1サブレコードでは、CTG識別情報と、報告情報とが対応付けられている。すなわち、管理データベースは、プリンタごとに、かつ、カートリッジ30ごとに、報告情報を管理する。
また、メインレコードは、特定カートリッジ30の発送を管理する第2サブレコードを有する。第2サブレコードでは、CTG識別情報と、特定カートリッジ30が貯留するインクの色を示す色情報或いは特定カートリッジ30の型番と、発送済フラグと、発送年月日と、到着予定日と、が対応付けられている。
発送済フラグは、例えば、特定カートリッジ30が発送されたことを示すオンのフラグ、或いは特定カートリッジ30が発送されていないことを示すオフのフラグである。CTG識別情報、色情報或いは型番、オンの発送済フラグ、発送年月日、及び到着予定日は、特定カートリッジ30の発送が手配されたことに基づいて、サーバプログラム56によって管理データベースに登録される。オフの発送済フラグは、新しい特定カートリッジ30がプリンタ10に装着されたことに基づいて、サーバプログラム56によって管理データベースに登録される。サーバプログラム56は、例えば、プリンタ10が送信した情報であって、新しい特定カートリッジ30が装着されたことを示すカートリッジ交換情報を、インターネット12を通じて受信したことに基づいて、オフの発送済フラグを管理データベースに登録する。すなわち、発送された新しい特定カートリッジ30がプリンタ10に装着されると、発送済フラグがオフにされる。
金額算出テーブルは、上述のサービスへの入会時において、プリンタ10で使用されている通常カートリッジ30を買い取る場合の買取金額と、上述のサービスへの退会時において、サービス提供者がユーザに提供した特定カートリッジ30をユーザが買い上げる場合の買上金額との算出に用いられるテーブルである。例えば、通常カートリッジ30の型番と、色情報と、残量情報と、買取金額とが、金額算出テーブルにおいて対応付けられている。すなわち、型番、インクの色、インクの残量に応じて、通常カートリッジ30の買取金額が決定される。また、特定カートリッジ30の型番と、色情報と、残量情報と、買上金額とが、金額算出テーブルにおいて対応付けられている。すなわち、型番、インクの色、インクの残量に応じて、特定カートリッジ30の買上金額が決定される。詳しくは後述する。なお、サーバメモリ52は、金額算出テーブルに代えて、残量情報が示すインク残量が入力されることによって買取金額や買上金額を算出する演算式やクラスを記憶していてもよい。
以下では、プリンタ10のユーザが上述のサービスに入会する入会時や、退会する退会時等においてプリンタ10のプリンタプログラム46及び管理サーバ11のサーバプログラム56が実行する処理について、図2から図5を参照して説明する。なお、管理サーバ11は、複数のサーバで構成され、一のサーバが図2や図3に示された入退会時の処理を行い、他の一のサーバが、図5(A)に示される処理である管理処理を行ってもよい。
プリンタ10のユーザは、例えば、ホーム画面等においてアイコンを選択して、上述のサービスへの入会を示す入会指示をプリンタ10に入力する。
プリンタ10のプリンタプログラム46は、例えば、入会指示が入力されたか否かを定期的に判断する(S11)。プリンタプログラム46は、入会指示が入力さていないと判断すると(S11:No)、処理を終了する。プリンタプログラム46は、入会指示が入力されたと判断すると(S11:Yes)、入会申請情報を生成する(S12)。入会申請情報は、入会を要求する要求情報と、プリンタ識別情報と、を含む。要求情報は、例えば、管理サーバ11のサーバプログラム56が解釈可能なコマンドである。プリンタ識別情報は、プリンタ10の本体メモリ42に記憶されたプリンタ識別情報である。プリンタプログラム46は、例えば、プリンタ識別情報を付帯するコマンドを、入会申請情報として生成する。なお、入会申請情報は、ユーザを示すユーザ名やユーザIDなどのユーザ識別情報を含んでいてもよい。
プリンタプログラム46は、生成した入会申請情報を含むHTTPリクエストを、本体メモリ42に記憶されたURL宛に、通信I/F27及びインターネット12を通じて送信する(S13)。すなわち、プリンタプログラム46は、入会申請情報を管理サーバ11宛に送信する。ステップS13の処理は、申請処理の一例である。
管理サーバ11のサーバプログラム56は、プリンタ10が送信したHTTPリクエストを、インターネット12及び通信I/F54を通じて受信する(S13)。サーバプログラム56は、受信したHTTPリクエストの入会申請情報に含まれる要求情報に基づいて、審査処理及び登録処理を実行する(S14)。
審査処理は、上述のサービスへの入会を許可するか否かを決定する処理である。登録処理は、上述のサービスへの入会を許可するとの決定を行ったことに基づいて、入会申請情報に含まれるプリンタ識別情報を有する新たなレコードを管理データベースに登録する処理である。
管理サーバ11のサーバプログラム56は、上述のサービスへの入会を許可する決定を行ったことに基づいて、入会を許可する許可情報、及びプリンタ10の動作モードの変更を指示するモード変更指示情報を生成する。モード変更指示情報は、例えば、プリンタ10のプリンタプログラム46が解釈可能なコマンドであって、プリンタ10の動作モードを特定モードに変更することを指示するコマンドである。
サーバプログラム56は、生成した許可情報及びモード変更指示情報を含むHTTPレスポンスを、ステップS13で受信したHTTPリクエストに対する応答として、通信I/F54及びインターネット12を通じてプリンタ10に返信する(S15)。なお、フローチャートには示されていないが、サーバプログラム56は、入会を許可しない決定を行ったことに基づいて、入会を許可しないことを示す不許可情報を生成し、生成した不許可情報を含むHTTPレスポンスを、ステップS13で受信したHTTPリクエストに対する応答として、通信I/F54及びインターネット12を通じてプリンタ10に返信する。ステップS15の処理は、モード変更指示送信処理の一例である。
プリンタ10のプリンタプログラム46は、管理サーバ11が返信したHTTPレスポンストを、インターネット12及び通信I/F27を通じて受信する(S15)。フローチャートには示されていないが、プリンタプログラム46は、受信したHTTPレスポンスに許可情報及びモード変更指示情報が含まれているか不許可情報が含まれているかを判断する。プリンタプログラム46は、受信したHTTPレスポンスに不許可情報が含まれていると判断すると、入会申請が却下されたことを示す画面をディスプレイ24に表示させる。
プリンタプログラム46は、受信したHTTPレスポンスに許可情報が含まれていると判断すると、モード変更指示情報に基づいて、オンのモードフラグである特定モード情報を、モード情報として本体メモリ42に記憶させる(S16)。すなわち、プリンタプログラム46は、ステップS16において、サービス提供者がユーザに提供する特定カートリッジ30を使用可能な特定モードで動作することを決定する。ステップS16の処理は、モード変更処理の一例である。
次に、プリンタプログラム46は、プリンタ10に現在装着されているカートリッジ30が、通常カートリッジ30であるか特定カートリッジ30であるかを判断するため、種別情報を取得する(S17)。具体的には、プリンタプログラム46は、カートリッジI/F29を通じてカートリッジ30が有するカートリッジIC31のCTGメモリ33から種別情報を読み出して取得する。或いは、プリンタプログラム46は、最新の履歴情報が有する種別情報を本体メモリ42から読み出して取得する。なお、プリンタプログラム46は、プリンタ10に装着された全てのカートリッジ30に対して、種別情報を取得する。
プリンタプログラム46は、取得した種別情報が示すカートリッジ30の種別が、通常カートリッジ30であるか否かを判断する(S18)。すなわち、プリンタプログラム46は、プリンタ10に現在装着されている各カートリッジ30が通常カートリッジ30であるか否かをそれぞれ判断する。プリンタプログラム46は、プリンタ10に現在装着されている全てのカートリッジ30が通常カートリッジ30でないと判断すると(S18:No)、すなわち、プリンタ10に現在装着されている全てのカートリッジ30が特定カートリッジ30であると判断すると、処理を終了する。
プリンタプログラム46は、プリンタ10に現在装着されているカートリッジ30のうち少なくとも1つのカートリッジ30が通常カートリッジ30であると判断すると(S18:Yes)、本体メモリ42に記憶された買取済情報であって、通常カートリッジ30であると判断されたカートリッジ30に対して設定された買取済情報が、サービス提供者が通常カートリッジ30を買い取り済であることを示すオンであるか否かを判断する(S19)。
プリンタプログラム46は、本体メモリ42に記憶された買取済フラグがオンであると判断すると(S19:Yes)、処理を終了する。すなわち、ステップS19が実行されることにより、上述のサービスへの入会時において、サービス提供者が、通常カートリッジ30を誤って複数回買い取ることが防止される。
プリンタプログラム46は、本体メモリ42に記憶された買取済フラグがオフであると判断すると(S19:No)、残量情報及びCTG識別情報を取得し、取得した残量情報及びCTG識別情報を含むカートリッジ情報を生成する(S20)。具体的には、プリンタプログラム46は、カートリッジI/F29を通じてカートリッジ30が有するカートリッジIC31のCTGメモリ33から残量情報及びCTG識別情報を読み出して取得する。或いは、プリンタプログラム46は、最新の履歴情報が有する残量情報及びCTG識別情報を本体メモリ42から読み出して取得する。なお、プリンタプログラム46は、通常カートリッジ30であると判断した全てのカートリッジ30に対して、残量情報及びCTG識別情報を取得する。すなわち、ステップS20で生成されるカートリッジ情報は、プリンタ10に装着された全ての通常カートリッジ30のCTG識別情報及び残量情報を含む情報である。
プリンタプログラム46は、生成したカートリッジ情報及び買取要求を含むHTTPリクエストを、通信I/F27及びインターネット12を通じて管理サーバ11宛に送信する(S21)。買取要求は、例えば、管理サーバ11のサーバプログラム56が解釈可能なコマンドであって、カートリッジ情報及びプリンタ識別情報を付帯するコマンドである。ステップS21の処理は、カートリッジ情報送信処理の一例である。
管理サーバ11のサーバプログラム56は、プリンタ10が送信したHTTPリクエストを、インターネット12及び通信I/F54を通じて受信する(S21)。サーバプログラム56は、受信したHTTPリクエストに含まれる買取要求及びカートリッジ情報に基づいて、プリンタ10に装着されているカートリッジ30が、買取可能な適正な通常カートリッジ30であるか否かを判断する(S22)。サーバプログラム56は、例えば、カートリッジ情報に含まれるCTG識別情報が示すカートリッジ30が、プリンタ10の製造メーカが提供したカートリッジ30であることを示すことに基づいて、プリンタ10に装着されているカートリッジ30が、買取可能な適正な通常カートリッジ30であると判断する。
サーバプログラム56は、プリンタ10に装着されているカートリッジ30が、買取可能な適正な通常カートリッジ30でないと判断すると(S22:No)、プリンタ10に装着されている通常カートリッジ30を買い取れないことを示す不適正情報を生成する(S23)。サーバプログラム56は、プリンタ10に装着されているカートリッジ30が、買取可能な適正な通常カートリッジ30であると判断すると(S22:Yes)、買取金額を決定して売買情報を生成する(S24)。詳しく説明すると、サーバプログラム56は、ステップS21で受信したカートリッジ情報が有するCTG識別情報及び残量情報と対応付けられた金額を、サーバメモリ52に記憶された金額算出テーブルにおいて特定する。サーバプログラム56は、特定した金額を、買取金額に決定する。そして、サーバプログラム56は、買取金額を含む売買情報を生成する。
サーバプログラム56は、ステップS21で受信したHTTPリクエストに対する応答として、ステップS23で生成した不適正情報或いはステップS24で生成した売買情報を含むHTTPレスポンスを、通信I/F54及びインターネット12を通じてプリンタ10宛に返信する(S25)。
プリンタ10のプリンタプログラム46は、管理サーバ11が送信したHTTPレスポンスを、インターネット12及び通信I/F27を通じて受信する(S25)。ステップS25の処理は、売買情報受信処理の一例である。
プリンタプログラム46は、受信したHTTPレスポンスが不適正情報を含むか、売買情報を含むかを判断する(S26)。プリンタプログラム46は、受信したHTTPレスポンスが不適正情報を含むと判断すると(S26:不適正情報)、エラー画面をディスプレイ24に表示させ(S27)、処理を終了する。エラー画面は、プリンタに装着されたカートリッジ30を買い取ることができない旨を示す文字や図形を有する。
プリンタプログラム46は、受信したHTTPレスポンスが売買情報を含むと判断すると(S26:売買情報)、買取承諾画面をディスプレイ24に表示させる(S28)。買取承諾画面は、ステップS25で受信した売買情報の内容を含む画面であって、かつ、ユーザの指示を受け付ける画面である。ステップS28の処理は、売買情報出力処理の一例である。
プリンタ10のユーザは、ディスプレイ24に表示された買取承諾画面に表示された内容に基づいて、プリンタ10に現在装着されている通常カートリッジ30をサービス提供者に買い取らせる買取指示を行うか、通常カートリッジ30をサービス提供者に買い取らせない非買取指示を行うかを決定する。ユーザは、タッチセンサ25或いは操作スイッチ26を用いて、買取指示或いは非買取指示をプリンタ10に入力する。
プリンタプログラム46は、買取指示或いは非買取指示を受け付け、受け付けた指示が買取指示であるか非買取指示であるかを判断する(S29)。プリンタプログラム46は、プリンタ10に入力されたユーザの指示が非買取指示であると判断すると(S29:非買取指示)、非買取指示を示す非買取通知を含むHTTPリクエストを、通信I/F27及びインターネット12を通じて管理サーバ11宛に送信する(S30)。フローチャートには示されていないが、管理サーバ11のサーバプログラム56は、例えば、非買取通知を受信したことに基づいて、管理データベースに、非買取通知を受信したことを示す情報を登録する。
プリンタ10のプリンタプログラム46は、プリンタ10に入力されたユーザの指示が買取指示であると判断すると(S29:買取指示)、ユーザの指示が買取指示であることを示す買取通知を生成し、生成した買取通知を含むHTTPリクエストを、通信I/F27及びインターネット12を通じて管理サーバ11宛に送信する(S31)。買取指示は、第1指示の一例である。プリンタプログラム46が、買取指示を受け付けて(S29:買取指示)、買取通知を管理サーバ11宛に送信するステップS31の処理は、第1通知処理の一例である。
管理サーバ11のサーバプログラム56は、プリンタ10が送信した買取通知を、インターネット12及び通信I/F54を通じて受信する(S31)。サーバプログラム56は、買取通知を受信したことに基づいて、登録処理を実行する。具体的には、サーバプログラム56は、プリンタ10のユーザに請求する金額を決定するためのデータベースであって、サーバメモリ52に記憶されたデータベースに、ステップS24で決定した買取金額を登録する。なお、当該データベースは、上述の管理データベースと同一のデータベースであってもよい。
サーバプログラム56は、プリンタ10に現在装着されている通常カートリッジ30を買い取ったことを示す通知情報を生成し、生成した通知情報を含むHTTPレスポンスを、ステップS31で受信したHTTPリクエストに対する応答として、通信I/F54及びインターネット12を通じてプリンタ10宛に返信する(S33)。なお、通知情報は、プリンタ10のユーザに次に請求する金額であって、定額の料金から買取金額を減じた金額を含んでいてもよい。
プリンタ10のプリンタプログラム46は、管理サーバ11が返信したHTTPレスポンスを、インターネット12及び通信I/F27を通じて受信する(S33)。プリンタプログラム46は、受信した通知情報をディスプレイ24に表示させる(S34)。
また、プリンタプログラム46は、プリンタ10に装着されたカートリッジ30の種別を、通常カートリッジ30から特定カートリッジ30に変更する(S35)。具体的には、プリンタプログラム46は、カートリッジI/F29を通じて通常カートリッジ30のカートリッジIC31のCTGメモリ33にアクセスし、CTGメモリ33に記憶された種別情報であるオフの種別フラグを、オンの種別フラグに変更する。なお、サービス提供者が買い取ったカートリッジ30であって、種別フラグがオンにされたカートリッジ30は、プリンタ10から取り外されて、上述のサービスに入会していない他のプリンタに装着されたとしても、当該他のプリンタでは使用できない。すなわち、サービス提供者が買い取ったカートリッジ30の種別フラグがオンにされることにより、サービス提供者が買い取ったカートリッジ30が、サービスに入会していない他のプリンタで使用されることが防止される。ステップS35の処理は、第1変更処理の一例である。
プリンタプログラム46は、初期値がオフである買取済フラグをオンにし(S36)、処理を終了する。すなわち、上述のサービスの入会時に通常カートリッジ30がサービス提供者に既に買い取られていることがプリンタ10に記憶される。
次に、プリンタ10のプリンタプログラム46が、印刷を実行したことに基づいて実行する処理について簡単に説明する。
プリンタプログラム46は、印刷を実行したことに基づいて、印刷において使用したインクの量である使用インク量を特定する。例えば、プリンタプログラム46は、印刷ヘッドが有する圧電素子やヒータなどの駆動回数をカウントし、カウント値に応じた値を使用インク量として特定する。また、プリンタプログラム46は、本体メモリ42が記憶する履歴情報から残量情報を読み出す。プリンタプログラム46は、読み出した残量情報が示すインク残量から使用インク量を減じて、新たなインク残量を算出する。プリンタプログラム46は、算出した新たなインク残量で、本体メモリ42に記憶された履歴情報の残量情報と、CTGメモリ33に記憶された残量情報とを更新する。なお、残量情報の更新は、プリンタ10に装着された全てのカートリッジ30に対して行われる。
また、プリンタプログラム46は、印刷を実行したことに基づいて、カートリッジ30が貯留するインクの量が残り少ないニアエンプティ状態であるか否かを判断する。例えば、プリンタプログラム46は、特定したインク残量が、本体メモリ42に記憶された第1所定値以下であるか否かを判断することによって、ニアエンプティ状態であるか否かを判断する。プリンタプログラム46は、特定したインク残量が、第1所定値以下であって、ニアエンプティ状態であると判断すると、例えば、ニアエンプティ状態であることを示すオンのニアエンプティフラグを緊急情報のニアエンプティ情報として本体メモリ42に記憶させる。
また、プリンタプログラム46は、印刷を実行したことに基づいて、カートリッジ30が貯留するインクの量がほぼゼロであるエンプティ状態であるか否かを判断する。例えば、プリンタプログラム46は、特定したインク残量が、本体メモリ42に記憶された第2所定値以下であるか否かを判断することによって、エンプティ状態であるか否かを判断する。プリンタプログラム46は、特定したインク残量が、第2所定値以下であって、エンプティ状態であると判断すると、例えば、エンプティ状態であることを示すオンのエンプティフラグを緊急情報のエンプティ情報として本体メモリ42に記憶させる。プリンタプログラム46は、オンのエンプティフラグが本体メモリ42に記憶されていることに基づいて、印刷の実行を禁止する。なお、オンのエンプティフラグやニアエンプティフラグは、カートリッジ30が交換されたことに基づいて、初期値であるオフに戻される。また、ニアエンプティ情報やエンプティ情報の記憶は、プリンタ10に装着された全てのカートリッジ30に対して行われる。第2所定値は、所定量の一例である。
また、プリンタプログラム46は、1枚のシートへの印刷を行うごとに、本体メモリ42に記憶された印刷枚数をカウントアップする。
次に、図5(A)を参照して、プリンタ10が特定モードで動作する場合、プリンタ10での印刷枚数やインク残量等が管理サーバ11の管理データベースに登録される処理について簡単に説明する。
プリンタ10のプリンタプログラム46は、トリガが発生したか否かを判断する(S91)。トリガは、例えば、毎日の0時などの所定の時刻になったことや、印刷が実行されたことや、紙詰まり情報や故障情報やエンプティ情報などの緊急情報が本体メモリ42に記憶されたことや、カートリッジ30の交換が行われたことなどである。プリンタプログラム46は、トリガが発生したか否かを、例えば定期的に判断する。
プリンタプログラム46は、トリガが発生していないと判断すると(S91:No)、処理を終了する。プリンタプログラム46は、トリガが発生したと判断すると(S91:Yes)、本体メモリ42に記憶された最新の履歴情報であって、かつプリンタ10に装着された全てのカートリッジ30についての履歴情報を読み出して取得する(S92)。
また、プリンタプログラム46は、本体メモリ42に記憶された緊急情報を読み出して取得する(S93)。なお、プリンタプログラム46は、緊急情報が本体メモリ42に記憶されていない場合、ステップS93の処理をスキップしてもよい。
プリンタプログラム46は、取得した履歴情報及び緊急情報と、プリンタ識別情報とを含む報告情報を生成する(S94)。プリンタプログラム46は、生成した報告情報を含むHTTPリクエストを、通信I/F27及びインターネット12を通じて管理サーバ11宛に送信する(S95)。
管理サーバ11のサーバプログラム56は、プリンタ10が送信した報告情報を、インターネット12及び通信I/F54を通じて受信する(S95)。サーバプログラム56は、受信したHTTPリクエストに含まれるプリンタ識別情報及びCTG識別情報と一致するプリンタ識別情報及びCTG識別情報を有するレコード及びサブレコードを、サーバメモリ52に記憶された管理データベースにおいて特定する。そして、サーバプログラム56は、特定したレコード及びサブレコードのフィールドに、受信したHTTPリクエストに含まれる残量情報やニアエンプティ情報等の情報を登録する(S96)。サービス提供者は、例えば、ニアエンプティ情報が管理データベースに登録されていることに基づいて、新しい特定カートリッジ30のユーザへの発送を手配する。サービス提供者は、特定カートリッジ30の発送を手配したことに基づいて、特定カートリッジ30の発送日や到着予定日等を管理サーバ11に入力する。サーバプログラム56は、入力された発送日や到着予定日を管理データベースに登録する。なお、カートリッジ30の搬送の手配や発送日や到着予定日の特定等を、サーバプログラム56が行ってもよい。
次に、プリンタ10のユーザが上述のサービスに入会しており、プリンタ10が特定モードで動作している場合に、サービス提供者が、プリンタ10に装着された通常カートリッジ30を特別に買い取る場合の処理について、図4を参照して説明する。特別に買い取る場合とは、例えば、印刷枚数が急激に増えて、新しい特定カートリッジ30がユーザに届けられる前に、プリンタ10に装着された特定カートリッジ30のインクが無くなった場合や、新しい特定カートリッジ30に遅配が生じた場合などである。
プリンタ10のプリンタプログラム46は、プリンタ10に電源が投入されたことや、プリンタ10に印刷指示が入力されたことや、印刷を実行したことなどに基づいて、プリンタ10がエンプティ状態であるか否かを判断する(S71)。具体的には、プリンタプログラム46は、エンプティ状態であることを示すオンのエンプティフラグが本体メモリ42に記憶されているか否かを判断する。
プリンタプログラム46は、プリンタ10がエンプティ状態でないと判断すると(S71:No)、処理を終了する。プリンタプログラム46は、プリンタ10がエンプティ状態であると判断すると(S71:Yes)、エンプティ状態であることを示すエンプティ情報、インクがほぼゼロとなったカートリッジ30を示すCTG識別情報、及びプリンタ識別情報を含むHTTPリクエストを、通信I/F27及びインターネット12を通じて管理サーバ11宛に送信する(S72)。ステップS72の処理は、エンプティ通知処理の一例である。
管理サーバ11のサーバプログラム56は、エンプティ情報等を含むHTTPリクエストを、インターネット12及び通信I/F54を通じて受信する(S72)。サーバプログラム56は、エンプティ情報を受信したことに基づいて、受信したプリンタ識別情報及びCTG識別情報と一致するプリンタ識別情報及びCTG識別情報を有するレコード及びサブレコードを管理データベースにおいて特定する。サーバプログラム56は、特定したレコード及びサブレコードに登録された到着予定日を取得する。
サーバプログラム56は、取得した到着予定日と現在の日時との差が、サーバメモリ52に記憶された閾値日数以上であるか否かを判断する(S74)。サーバプログラム56は、取得した到着予定日と現在日時との差が閾値日数以上でないと判断すると(S74:No)、取得した到着予定日を含むHTTPレスポンスを、ステップS72で受信したHTTPリクエストの応答として、通信I/F54及びインターネット12を通じて返信する(S75)。サーバプログラム56は、取得した到着予定日と現在日時との差が閾値日数以上であると判断すると(S74:Yes)、取得した到着予定日と、買取許可情報とを含むHTTPレスポンスを、ステップS72で受信したHTTPリクエストの応答として、通信I/F54及びインターネット12を通じて返信する(S76)。買取許可情報は、プリンタ10に通常カートリッジ30を装着して印刷を行う場合、プリンタ10に装着した通常カートリッジ30をサービス提供者が買い取ってもよいことを示す情報である。
プリンタ10のプリンタプログラム46は、管理サーバ11が返信したHTTPレスポンスを、インターネット12及び通信I/F27を通じて受信する(S75、S76)。プリンタプログラム46は、受信したHTTPリクエストに買取許可情報が含まれているか否かを判断する(S77)。プリンタプログラム46は、受信したHTTPリクエストに買取許可情報が含まれていないと判断すると(S77:No)、受信したHTTPリクエストに含まれる到着予定日をディスプレイ24に表示させ(S78)、処理を終了する。ステップS76の処理は、特定許可受信処理の一例である。
プリンタプログラム46は、受信したHTTPリクエストに買取許可情報が含まれていると判断すると(S77:Yes)、受信したHTTPリクエストに含まれる到着予定日及び買取許可情報をディスプレイ24に表示させる(S79)。そして、プリンタプログラム46は、ユーザの指示を受け付ける。
ユーザは、ディスプレイ24に表示された到着予定日を確認する。ユーザは、到着予定日まで印刷を待つことができないと判断すると、通常カートリッジ30をサービス提供者に買い取らせる指示である買取指示をプリンタ10に入力する。ユーザは、到着予定日まで印刷を待つことができると判断すると、非買取指示をプリンタ10に入力する。
プリンタ10のプリンタプログラム46は、受け付けた指示が買取指示であるか非買取指示であるかを判断する(S80)。プリンタプログラム46は、非買取指示を受け付けたと判断すると(S80:非買取指示)、処理を終了する。プリンタプログラム46は、買取指示を受け付けたと判断すると(S80:買取指示)、ガイド画面をディスプレイ24に表示させる(S81)。ガイド画面は、例えば、プリンタ10の製造メーカが製造した適正な通常カートリッジ30をプリンタ10に装着することをユーザに促す文字や図形を含む。
ユーザは、ガイド画面の指示に従って、適正な通常カートリッジ30をプリンタ10に装着する。なお、適正な通常カートリッジ30は、未使用のカートリッジ30であってもよいし、他のプリンタ10で使用しているカートリッジ30であってもよい。
プリンタ10のプリンタプログラム46は、プリンタ10に装着されたカートリッジ30からCTG識別情報や残量情報や型番や種別情報等を含むカートリッジ情報を取得する(S82)。プリンタプログラム46は、取得した種別情報に基づいて、プリンタ10に装着されたカートリッジ30が通常カートリッジ30であるか否かを判断する(S83)。プリンタプログラム46は、プリンタ10に装着されたカートリッジ30が通常カートリッジ30でないと判断すると(S83:No)、すなわち、プリンタ10に装着されたカートリッジ30が特定カートリッジ30であると判断すると、処理を終了する。
プリンタプログラム46は、ステップS83において、プリンタ10に装着されたカートリッジ30が通常カートリッジ30であると判断すると(S83:Yes)、ステップS21で説明した買取要求と、プリンタ識別情報と、CTG識別情報や残量情報を含むカートリッジ情報とを含むHTTPリクエストを、通信I/F27及びインターネット12を通じて管理サーバ11宛に送信する(S84)。管理サーバ11のサーバプログラム56は、プリンタ10が送信したHTTPリクエストを、インターネット12及び通信I/F54を通じて受信する(S84)。
プリンタ10のプリンタプログラム46及び管理サーバ11のサーバプログラム56は、図2で説明したステップS22からS35と同様の処理を実行し、処理を終了する。すなわち、プリンタ10では、買取承諾画面がディスプレイ24に表示されるとともに、ユーザの買取指示或いは非買取指示を受け付け、また、サービス提供者が買い取った適正な通常カートリッジ30の種別が特定カートリッジ30に変更される。一方、管理サーバ11では、サービス提供者が買い取った適正な通常カートリッジ30のCTG識別情報等が管理データベースに登録される。
次に、図3を参照して、ユーザが上述のサービスから退会する場合にプリンタ10のプリンタプログラム46及び管理サーバ11のサーバプログラム56が実行する処理について説明する。
プリンタ10のユーザは、例えば、上述のホーム画面等においてアイコンを選択して、上述のサービスからの退会を示す退会指示をプリンタ10に入力する。
プリンタ10のプリンタプログラム46は、例えば、退会指示が入力されたか否かを定期的に判断する(S41)。プリンタプログラム46は、退会指示が入力さていないと判断すると(S41:No)、処理を終了する。プリンタプログラム46は、退会指示が入力されたと判断すると(S41:Yes)、退会申請情報を生成する(S42)。退会申請情報は、退会を要求する要求情報と、プリンタ識別情報と、を含む。要求情報は、例えば、管理サーバ11のサーバプログラム56が解釈可能なコマンドである。プリンタ識別情報は、プリンタ10の本体メモリ42に記憶されたプリンタ識別情報である。プリンタプログラム46は、例えば、プリンタ識別情報を付帯するコマンドを、退会申請情報として生成する。なお、退会申請情報は、ユーザを示すユーザ名やユーザIDなどのユーザ識別情報を含んでいてもよい。
プリンタプログラム46は、生成した退会申請情報を含むHTTPリクエストを、通信I/F27及びインターネット12を通じて管理サーバ11宛に送信する(S43)。ステップS43の処理は、申請処理の一例である。
管理サーバ11のサーバプログラム56は、プリンタ10が送信したHTTPリクエストを、インターネット12及び通信I/F54を通じて受信する(S43)。サーバプログラム56は、受信したHTTPリクエストの退会申請情報に含まれる要求情報に基づいて、審査処理を実行する(S44)。審査処理は、上述のサービスからの退会を許可するか否かを決定する処理である。
管理サーバ11のサーバプログラム56は、上述のサービスからの退会を許可する決定を行ったことに基づいて、退会を許可することを示す許可情報、及び動作モードの変更を指示するモード変更指示情報を生成する。モード変更指示情報は、例えば、プリンタ10のプリンタプログラム46が解釈可能なコマンドであって、プリンタ10の動作モードを通常モードに変更することを指示するコマンドである。
サーバプログラム56は、生成した許可情報及びモード変更指示情報を含むHTTPレスポンスを、ステップS43で受信したHTTPリクエストに対する応答として、通信I/F54及びインターネット12を通じてプリンタ10に返信する(S45)。なお、フローチャートには示されていないが、サーバプログラム56は、退会を許可しない決定を行ったことに基づいて、退会を許可しないことを示す不許可情報を生成し、生成した不許可情報を含むHTTPレスポンスを、ステップS43で受信したHTTPリクエストに対する応答として、通信I/F54及びインターネット12を通じてプリンタ10に返信する。ステップS45の処理は、モード変更指示送信処理の一例である。
プリンタ10のプリンタプログラム46は、管理サーバ11が返信したHTTPレスポンストを、インターネット12及び通信I/F27を通じて受信する(S45)。フローチャートには示されていないが、プリンタプログラム46は、受信したHTTPレスポンスに許可情報及びモード変更指示情報が含まれているか不許可情報が含まれているかを判断する。プリンタプログラム46は、受信したHTTPレスポンスに不許可情報が含まれていると判断すると、退会申請が却下されたことを示す画面をディスプレイ24に表示させる。
プリンタプログラム46は、受信したHTTPレスポンスに許可情報が含まれていると判断すると、モード変更指示情報にしたがって、通常モードで動作することを示すオフのモードフラグである通常モード情報を本体メモリ42に記憶させる(S46)。すなわち、プリンタプログラム46は、ステップS46において、サービス提供者がユーザに提供する特定カートリッジ30を使用できず、通常カートリッジ30を使用可能な通常モードで動作することを決定する。ステップS46の処理は、モード変更処理の一例である。
プリンタプログラム46は、通常モードで動作することを決定したことに基づいて、オフの買取済フラグを本体メモリ42に記憶させる(S47)。すなわち、上述のサービスから退会したことに基づいて、買取済フラグがオフにリセットされる。
次に、プリンタプログラム46は、プリンタ10に現在装着されているカートリッジ30が、通常カートリッジ30であるか特定カートリッジ30であるかを判断するため、種別情報を取得する(S48)。具体的には、プリンタプログラム46は、カートリッジI/F29を通じてカートリッジ30のカートリッジIC31のCTGメモリ33から種別情報を読み出して取得する。或いは、プリンタプログラム46は、最新の履歴情報が有する種別情報を本体メモリ42から読み出して取得する。なお、プリンタプログラム46は、プリンタ10に装着された全てのカートリッジ30に対して、種別情報を取得する。
プリンタプログラム46は、取得した種別情報が示すカートリッジ30の種別が、特定カートリッジ30であるか否かを判断する(S49)。すなわち、プリンタプログラム46は、プリンタ10に現在装着されている各カートリッジ30が特定カートリッジ30であるか否かをそれぞれ判断する。プリンタプログラム46は、プリンタ10に現在装着されている全てのカートリッジ30が特定カートリッジ30でないと判断すると(S49:No)、すなわち、プリンタ10に現在装着されている全てのカートリッジ30が通常カートリッジ30であると判断すると、処理を終了する。
プリンタプログラム46は、プリンタ10に現在装着されているカートリッジ30のうち少なくとも1つのカートリッジ30が特定カートリッジ30であると判断すると(S49:Yes)、残量情報及びCTG識別情報を取得し、取得した残量情報及びCTG識別情報を含むカートリッジ情報を生成する(S50)。具体的には、プリンタプログラム46は、カートリッジI/F29を通じてカートリッジ30が有するカートリッジIC31のCTGメモリ33から残量情報及びCTG識別情報を読み出して取得する。或いは、プリンタプログラム46は、最新の履歴情報が有する残量情報及びCTG識別情報を本体メモリ42から読み出して取得する。なお、プリンタプログラム46は、特定カートリッジ30であると判断したカートリッジ30に対して、残量情報及びCTG識別情報を取得する。すなわち、ステップS50で生成されるカートリッジ情報は、プリンタ10に装着された特定カートリッジ30のCTG識別情報及び残量情報を含む情報である。
プリンタプログラム46は、生成したカートリッジ情報、プリンタ識別情報、及び買上要求を含むHTTPリクエストを、通信I/F27及びインターネット12を通じて管理サーバ11宛に送信する(S51)。買上要求は、例えば、管理サーバ11のサーバプログラム56が解釈可能なコマンドであって、カートリッジ情報及びプリンタ識別情報を付帯するコマンドである。ステップS51の処理は、カートリッジ情報送信処理の一例である。
管理サーバ11のサーバプログラム56は、プリンタ10が送信したHTTPリクエストを、インターネット12及び通信I/F54を通じて受信する(S51)。サーバプログラム56は、受信したHTTPリクエストに含まれる買上要求及びカートリッジ情報に基づいて、プリンタ10に装着されているカートリッジ30が、買上可能な適正な特定カートリッジ30であるか否かを判断する(S52)。サーバプログラム56は、例えば、カートリッジ情報に含まれるCTG識別情報が示すカートリッジ30が、プリンタ10の製造メーカが提供した特定カートリッジ30であることに基づいて、プリンタ10に装着されているカートリッジ30が、買上可能な適正な特定カートリッジ30であると判断する。
サーバプログラム56は、プリンタ10に装着されているカートリッジ30が、買上可能な適正な特定カートリッジ30でないと判断すると(S52:No)、プリンタ10に装着されているカートリッジ30を買い取れないことを示す不適正情報を生成する(S53)。サーバプログラム56は、プリンタ10に装着されているカートリッジ30が、買上可能な適正な特定カートリッジ30であると判断すると(S52:Yes)、買上金額を決定する(S54)。詳しく説明すると、サーバプログラム56は、ステップS51で受信したカートリッジ情報が有するCTG識別情報及び残量情報と対応付けられた金額を、サーバメモリ52に記憶された金額算出テーブルにおいて特定する。サーバプログラム56は、特定した金額を、買上金額に決定する。
また、サーバプログラム56は、既に発送を手配した特定カートリッジ30であって、プリンタ10に未だ装着されていない特定カートリッジ30のCTG識別情報を取得する(S55)。詳しく説明すると、サーバプログラム56は、ステップS51で受信したプリンタ識別情報と同一のプリンタ識別情報を有するレコードを管理データベースにおいて特定し、特定したレコードに、オンの発送済フラグを有し、かつ、ステップS51で受信したカートリッジ情報に含まれるCTG識別情報と異なるCTG識別情報を有するサブレコードを検索する。そして、当該サブレコードがある場合、当該サブレコードが有するCTG識別情報を取得する。例えば、シアンのインクを貯留する特定カートリッジ30及びブラックのインクを貯留する特定カートリッジ30の発送がまとめて手配されている場合において、ブラックのインクを貯留する特定カートリッジ30がプリンタ10に既に装着され、シアンのインクを貯留する特定カートリッジ30がプリンタ10に未だ装着されていない状態でユーザが退会の申請を行うと、ステップS55において、シアンのインクを貯留する特定カートリッジ30のCTG識別情報がサーバプログラム56によって取得される。
サーバプログラム56は、ステップS54で決定した買上金額及びステップS55で取得したCTG識別情報、及びステップS55で受信したCTG識別情報を含む売買情報を生成する。そして、サーバプログラム56は、生成した売買情報を含むHTTPレスポンス、或いはステップS53で生成した不適正情報を含むHTTPレスポンスを、ステップS51で受信したHTTPリクエストの応答として、通信I/F54及びインターネット12を通じてプリンタ10宛に返信する(S56)。ステップS56の処理は、売買情報送信処理の一例である。
プリンタ10のプリンタプログラム46は、管理サーバ11が返信したHTTPレスポンスを、インターネット12及び通信I/F27を通じて受信する(S56)。ステップS56の処理は、売買情報受信処理の一例である。
プリンタプログラム46は、受信したHTTPレスポンスが不適正情報を含むか、売買情報を含むかを判断する(S57)。プリンタプログラム46は、受信したHTTPレスポンスが不適正情報を含むと判断すると(S57:不適正情報)、エラー画面をディスプレイ24に表示させ(S58)、処理を終了する。エラー画面は、プリンタに装着されたカートリッジ30を買い取ってもらうことができない旨を示す文字や図形を有する。
プリンタプログラム46は、受信したHTTPレスポンスが売買情報を含むと判断すると(S57:売買情報)、買上承諾画面をディスプレイ24に表示させる(S59)。買上承諾画面は、ステップS56で受信した売買情報の内容を含む画面であって、かつ、ユーザの指示を受け付ける画面である。ステップS59の処理は、売買情報出力処理の一例である。
プリンタ10のユーザは、ディスプレイ24に表示された買上承諾画面に表示された内容に基づいて、プリンタ10に現在装着されている特定カートリッジ30を買い上げる買上指示を行うか、特定カートリッジ30を買い上げない非買上指示を行うかを決定する。ユーザは、タッチセンサ25或いは操作スイッチ26を用いて、買上指示或いは非買上指示をプリンタ10に入力する。
プリンタプログラム46は、買上指示或いは非買上指示の入力を受け付け、受け付けたユーザの指示が、買上指示であるか非買上指示であるかを判断する(S60)。プリンタプログラム46は、プリンタ10に入力されたユーザの指示が非買上指示であると判断すると(S60:非買上指示)、非買上指示を示す非買上通知を含むHTTPリクエストを、通信I/F27及びインターネット12を通じて管理サーバ11宛に送信する(S61)。フローチャートには示されていないが、管理サーバ11のサーバプログラム56は、例えば、非買上通知を受信したことに基づいて、管理データベースに、非買上通知を受信したことを示す情報を登録する。
プリンタ10のプリンタプログラム46は、プリンタ10に入力されたユーザの指示が買上指示であると判断すると(S60:買上指示)、ユーザの指示が買上指示であることを示す買上通知を生成し、生成した買上通知を含むHTTPリクエストを、通信I/F27及びインターネット12を通じて管理サーバ11宛に送信する(S62)。買上指示は、第2指示の一例である。プリンタプログラム46が、買上指示を受け付けて(S60:買上指示)、買上通知を管理サーバ11宛に送信するステップS62の処理は、第2通知処理の一例である。
管理サーバ11のサーバプログラム56は、プリンタ10が送信した買上通知を、インターネット12及び通信I/F54を通じて受信する(S62)。サーバプログラム56は、買上通知を受信したことに基づいて、登録処理を実行する。具体的には、サーバプログラム56は、プリンタ10のユーザに請求する金額を決定するためのデータベースであって、サーバメモリ52に記憶されたデータベースに、ステップS54で決定した買上金額を登録する。なお、当該データベースは、上述の管理データベースと同一のデータベースであってもよい。
サーバプログラム56は、プリンタ10に現在装着されている特定カートリッジ30を買い上げたことを示す通知情報を生成し、生成した通知情報を含むHTTPレスポンスを、ステップS62で受信したHTTPリクエストに対する応答として、通信I/F54及びインターネット12を通じてプリンタ10宛に返信する(S64)。なお、通知情報は、プリンタ10のユーザに次に請求する金額であって、定額の料金に買上金額を加えた金額を含んでいてもよい。
プリンタ10のプリンタプログラム46は、管理サーバ11が返信した通知情報を、インターネット12及び通信I/F27を通じて受信する(S64)。プリンタプログラム46は、受信した通知情報をディスプレイ24に表示させる(S65)。
また、プリンタプログラム46は、ステップS56で受信した売買情報に含まれるCTG識別情報を買上CTG識別情報として、本体メモリ42のEEPROM48に記憶させる(S66)。なお、本体メモリ42のEEPROM48は、買上CTG識別情報が記憶される記憶領域を予め有している。ステップS66の処理は、買上情報記憶処理の一例である。
次に、プリンタプログラム46は、プリンタ10に装着されている特定カートリッジ30の種別を特定カートリッジ30から通常カートリッジ30に変更する(S67)。具体的には、プリンタプログラム46は、カートリッジI/F29を通じて特定カートリッジ30のカートリッジIC31のCTGメモリ33にアクセスし、CTGメモリ33に記憶された種別情報であって、オンの種別フラグをオフに変更する。なお、ユーザが買い上げたカートリッジ30であって、種別フラグがオフにされたカートリッジ30は、プリンタ10から取り外されて他のプリンタに装着されたとしても、当該他のプリンタで使用することができる。すなわち、ユーザが買い上げた特定カートリッジ30は、ユーザが自由に使用することができる。ステップS67の処理は、第2変更処理の一例である。
プリンタプログラム46は、通常カートリッジ30に種別を変更したカートリッジ30のCTG識別情報と同一の買上CTG識別情報を本体メモリ42から削除し(S68)、処理を終了する。すなわち、図3に示される処理に実行後、ユーザが買い上げた特定カートリッジ30であって、プリンタ10に未だ装着されていない特定カートリッジ30のCTG識別情報は、買上CTG識別情報として本体メモリ42に維持される。
次に、上述のサービスからユーザが退会した後、ユーザが買い上げた特定カートリッジ30がプリンタ10に装着された場合の処理について、図5(B)を参照して説明する。
プリンタ10のプリンタプログラム46は、装着ケース28に装着されたカートリッジ30が他のカートリッジ30に交換されたか否かを判断する(S111)。例えば、プリンタプログラム46は、装着ケース28に装着されたカートリッジ30のカートリッジIC31のCTGメモリ33から読み出したCTG識別情報と、本体メモリ42に記憶された履歴情報のCTG識別情報とが一致しないことに基づいて、カートリッジ30が交換されたと判断する。プリンタプログラム46は、カートリッジ30が交換されていないと判断すると(S111:No)、処理を終了する。なお、プリンタプログラム46は、ステップS111の処理を、例えば定期的に実行する。
プリンタプログラム46は、装着ケース28に装着されたカートリッジ30が他のカートリッジ30に交換されたと判断すると(S111:Yes)、通常モードであるか否かを判断する(S112)。具体的には、プリンタプログラム46は、本体メモリ42に記憶されたモードフラグがオフであるか否かを判断する。
プリンタプログラム46は、通常モードでなく特定モードであると判断すると(S112:No)、処理を終了する。プリンタプログラム46は、通常モードであると判断すると(S112:Yes)、カートリッジI/F29を通じてカートリッジ30のカートリッジIC31のCTGメモリ33にアクセスし、CTGメモリ33に記憶された種別情報及びCTG識別情報を読み出して取得する(S113)。そして、プリンタプログラム46は、取得した種別情報が、特定カートリッジ30を示すか否かを判断する(S114)。プリンタプログラム46は、取得した種別情報が特定カートリッジ30でなく通常カートリッジ30を示すと判断すると(S114:No)、処理を終了する。
プリンタプログラム46は、取得した種別情報が特定カートリッジ30を示すと判断すると(S114:Yes)、ステップS113で取得したCTG識別情報が、本体メモリ42に記憶された買上CTG識別情報と一致するか否かを判断する(S115)。すなわち、ステップS115では、装着ケース28に装着された特定カートリッジ30が、ユーザが買い上げた特定カートリッジ30であるか否かが判断される。
プリンタプログラム46は、一致しないと判断すると(S115)、エラー画面をディスプレイ24に表示するとともに(S116)、印刷の実行を禁止し(不図示)、処理を終了する。当該エラー画面は、装着されたカートリッジ30がプリンタ10で使用できない旨の文字や図形を有する。すなわち、通常モードで動作するプリンタ10に、ユーザが買い上げていない特定カートリッジ30が装着されても、プリンタ10は、印刷を実行しない。
プリンタプログラム46は、ステップS115において一致すると判断すると(S115:Yes)、プリンタ10に装着された特定カートリッジ30の種別を通常カートリッジ30に変更する(S117)。ステップS117の処理は、ステップS67の処理と同様にして実行される。ステップS117の処理が実行されることにより、ユーザが買い上げた特定カートリッジ30が、プリンタ10やその他のプリンタで使用可能となる。
プリンタプログラム46は、ステップS117の処理の実行後、種別を通常カートリッジ30に変更したカートリッジ30のCTG識別情報と同一の買上識別情報を、本体メモリ42から削除し(S118)、処理を終了する。
[実施形態の作用効果]
本実施形態では、プリンタ10のプリンタプログラム46は、サービスへの入会時や退会時に、CTG識別情報を含むカートリッジ情報と、買取要求や買上要求と、を管理サーバ11宛に送信する。そして、プリンタプログラム46は、送信した買取要求や買上要求の応答として、売買情報を受信し、受信した売買情報をディスプレイ24に表示させる(S28、S59)。プリンタ10のユーザは、ディスプレイ24に表示された売買情報に基づいて、プリンタ10に装着された通常カートリッジ30をサービス提供者に買い取らせ、或いは、プリンタ10に装着された特定カートリッジ30をサービス提供者から買い取る。その結果、本発明に係るプリンタ10は、インクを貯留するカートリッジ30が無駄に捨てられることを抑制することができる。
また、本実施形態では、プリンタプログラム46は、サービスへの入会時や退会時に管理サーバ11宛に送信するカートリッジ情報に、残量情報を含めている。したがって、プリンタプログラム46は、カートリッジ30が貯留するインクの量に応じた買取金額或いは買上金額を管理サーバ11に決定させることができる。その結果、プリンタ10は、貯留するインクの量に応じたカートリッジ30の買取金額或いは買上金額をユーザに示すことができる。
また、本実施形態では、プリンタプログラム46は、サービスへの入会時において、装着ケース28に装着されたカートリッジ30が通常カートリッジ30である場合に(S18:Yes)、買取要求を管理サーバ11宛に送信する(S21)。したがって、プリンタ10は、装着された通常カートリッジ30が無駄に捨てられることを抑制することができる。
また、本実施形態では、プリンタ10は、サービスへの入会時において、プリンタ10に装着された通常カートリッジ30をサービス提供者に買い取らせるか否かのユーザの指示を受け付ける(S29)。したがって、ユーザの意思に反してサービス提供者がユーザの所有する通常カートリッジ30を誤って買い取ることが防止される。
また、本実施形態では、サービスへの入会時において、サービス提供者が通常カートリッジ30を買い取ったことに基づいて、買取済フラグがオンにされ、買取済フラグがオンである場合(S19:Yes)、プリンタプログラム46は、買取要求を管理サーバ11宛に送信しない。したがって、サービスへの入会時において、サービス提供者が何回も通常カートリッジ30を買い取ることが防止される。
また、本実施形態では、サービス提供者が通常カートリッジ30を買い取った場合、サービス提供者が買い取った通常カートリッジ30の種別情報が特定カートリッジ30を示す種別情報に書き換えられる(S35)。したがって、サービス提供者が買い取ったカートリッジ30が他のプリンタに装着されて流用されることが防止される。
また、本実施形態では、プリンタ10は、買取許可情報をディスプレイ24に表示させ(S79)、ユーザの買取指示を受け付けたことに基づいて(S80:Yes)、通常カートリッジ30をプリンタ10に装着させるとともに(S81、S83)、買取要求を管理サーバ11宛に送信する(S84)。したがって、印刷ができない状態で長期間プリンタ10が放置されることが抑制される。
また、本実施形態では、プリンタプログラム46は、サービスからの退会時において、装着ケース28に装着されたカートリッジ30が特定カートリッジ30である場合に(S49:Yes)、買上要求を管理サーバ11宛に送信する(S51)。したがって、プリンタ10は、装着された特定カートリッジ30が無駄に捨てられることを抑制することができる。
また、本実施形態では、プリンタ10は、サービスからの退会時において、プリンタ10に装着された特定カートリッジ30をサービス提供者から買い上げるか否かのユーザの指示を受け付ける(S60)。したがって、ユーザが、サービス提供者から特定カートリッジ30を誤って買い上げてしまうことが防止される。
また、本実施形態では、ユーザが特定カートリッジ30をサービス提供者から買い上げた場合、ユーザが買い上げた特定カートリッジ30の種別情報が通常カートリッジ30を示す種別情報に書き換えられる(S67)。したがって、ユーザが買い上げたカートリッジ30は、いずれのプリンタでも使用可能になる。
また、本実施形態では、ユーザが買い上げた特定カートリッジ30のCTG識別情報である買上CTG識別情報がプリンタ10の本体メモリ42に記憶される(S66)。そして、プリンタプログラム46は、通常モードにおいて特定カートリッジ30が装着ケース28に装着され、装着された特定カートリッジ30のCTG識別情報が買上識別情報と一致する場合、装着された特定カートリッジ30の種別情報を通常カートリッジ30を示す種別情報に書き換える。したがって、ユーザが買い上げた特定カートリッジ30が退会時にプリンタ10に装着されていない場合であっても、ユーザが買い上げた特定カートリッジ30をユーザに使用させることができる。
[変形例1]
上述の実施形態では、ユーザが、買取指示或いは非買取指示を、タッチパネル23を通じてプリンタ10に入力する例(S29)を説明した。本変形例では、ユーザが、買取指示或いは非買取指示を、スキャナ22を通じてプリンタ10に入力する例を説明する。なお、以下で説明する処理や構成以外の処理や構成は、実施形態で説明した処理や構成と同じである。
本体メモリ42は、買取用承諾画像元データを予め記憶する。買取用承諾画像元データは、買取金額等の売買情報の入力を受け付ける入力フィールドを有する。買取用承諾画像元データは、売買情報を入力されることにより、印刷データである買取用承諾データとなるフォーマットデータである。
プリンタ10のプリンタプログラム46及び管理サーバ11のサーバプログラム56は、プリンタ10のユーザが上述のサービスに入会する際に、図2に示される処理に代えて、図6(A)に示される処理を実行する。
詳しく説明すると、まず、プリンタプログラム46及びサーバプログラム56は、上述のステップS11からS27までの処理を実行する。そして、プリンタプログラム46は、ステップS26において、受信した情報が売買情報であると判断したことに基づいて(S26:売買情報)、受信した売買情報を買取用承諾画像元データに入力し、印刷データである買取用承諾画像データを生成する。プリンタプログラム46は、生成した買取用承諾画像書データをプリンタ部21に入力し、買取用承諾書を印刷させる(S121)。買取用承諾書は、第1画像の一例である。ステップS121の処理は、第1印刷処理の一例である。
買取用承諾書は、例えば、買取指示を示す第1文字と、第1文字と対応付けられた第1図形と、非買取指示を示す第2文字と、第2文字と対応付けられた第2図形と、を有する。第1図形及び第2図形は、例えば、白抜きの四角形である。ユーザは、ペンなどの筆記具を用いて、第1図形或いは第2図形を塗り潰したり、第1図形或いは第2図形にチェックを記入したりする。以下では、ユーザが記入した後の買取用承諾書を、記入済シートと記載して説明する。
プリンタ10のプリンタプログラム46は、買取用承諾書をプリンタ部21に印刷させた後(S121)、ガイド画面として、スキャン指示画面をディスプレイ24に表示させる(S122)。スキャン指示画面は、買取用承諾書に記入を行って、記入済シートをスキャナ22でスキャンすることを指示する画面である。ユーザは、スキャン指示画面の指示に従って、買取用承諾書に記入を行った後、記入済シートをスキャナ22にセットして、スキャン開始の指示をプリンタ10に入力する。
プリンタプログラム46は、スキャン開始の指示であるスキャン指示が入力されるまで待機する(S123:No)。プリンタプログラム46は、スキャン指示が入力されたと判断すると(S123:Yes)、スキャナ22を駆動させてスキャナ22にスキャン画像データを生成させ、スキャン画像データを取得する(S124)。スキャン画像データは、第1スキャン画像データの一例である。ステップS124の処理は、第1スキャン処理の一例である。
プリンタプログラム46は、取得したスキャン画像データに基づいて、買取指示或いは非買取指示を取得する(S125)。プリンタプログラム46は、取得した指示に基づいて、上述のステップS29以降の処理と同様の処理を実行する。一方、管理サーバ11のサーバプログラム56も、上述のステップS32、S33と同様の処理を実行する。
[変形例1の作用効果]
本変形例では、買取用承諾書が印刷されるので、買取承諾画面がディスプレイ24に表示されるよりも、買取承諾の内容をユーザに視認させ易い。また、ユーザは、第1図形或いは第2図形にチェック等を記入すればよいので、シートよりも表示領域が小さいタッチパネル23において指示を入力するよりも、プリンタ10に指示を入力し易い。その結果、プリンタ10の使い勝手が向上する。
[変形例2]
上述の実施形態では、ユーザが、買上指示或いは非買上指示を、タッチパネル23を通じてプリンタ10に入力する例(S60)を説明した。本変形例では、ユーザが、買上指示或いは非買上指示を、スキャナ22を通じてプリンタ10に入力する例を説明する。なお、以下で説明する処理や構成以外の処理や構成は、実施形態で説明した処理や構成と同じである。
本体メモリ42は、買上用承諾画像元データを予め記憶する。買上用承諾画像元データは、買上金額等の売買情報の入力を受け付ける入力フィールドを有する。買上用承諾画像元データは、売買情報を入力されることにより、印刷データである買上用承諾データとなるフォーマットデータである。
プリンタ10のプリンタプログラム46及び管理サーバ11のサーバプログラム56は、プリンタ10のユーザが上述のサービスから退会する際に、図3に示される処理に代えて、図6(B)に示される処理を実行する。
詳しく説明すると、まず、プリンタプログラム46及びサーバプログラム56は、上述のステップS41からS58までの処理を実行する。そして、プリンタプログラム46は、ステップS57において、受信した情報が売買情報であると判断したことに基づいて(S57:売買情報)、受信した売買情報を買上用承諾画像元データに入力し、印刷データである買上用承諾画像データを生成する。プリンタプログラム46は、生成した買上用承諾画像データをプリンタ部21に入力し、買上用承諾書をシートに印刷させる(S131)。買上用承諾書は、第2画像の一例である。ステップS131の処理は、第2印刷処理の一例である。
買上用承諾書は、例えば、買上指示を示す第3文字と、第3文字と対応付けられた第3図形と、非買上指示を示す第4文字と、第4文字と対応付けられた第4図形と、を有する。第3図形及び第4図形は、例えば、白抜きの四角形である。ユーザは、ペンなどの筆記具を用いて、第3図形或いは第4図形を塗り潰したり、第3図形或いは第4図形にチェックを記入したりする。以下では、ユーザが記入した後の買上用承諾書を、記入済シートと記載して説明する。
プリンタ10のプリンタプログラム46は、買上用承諾書をプリンタ部21に印刷させた後(S131)、ガイド画面として、スキャン指示画面をディスプレイ24に表示させる(S132)。スキャン指示画面は、買上用承諾書に記入を行って、記入済シートをスキャナ22でスキャンすることを指示する画面である。ユーザは、スキャン指示画面の指示に従って、買上用承諾書に記入を行った後、記入済シートをスキャナ22にセットして、スキャン開始の指示をプリンタ10に入力する。
プリンタプログラム46は、スキャン開始の指示であるスキャン指示が入力されるまで待機する(S133:No)。プリンタプログラム46は、スキャン指示が入力されたと判断すると(S133:Yes)、スキャナ22を駆動させてスキャナ22にスキャン画像データを生成させ、スキャン画像データを取得する(S134)。スキャン画像データは、第2スキャン画像データの一例である。ステップS134の処理は、第2スキャン処理の一例である。
プリンタプログラム46は、取得したスキャン画像データに基づいて、買上指示或いは非買上指示を取得する(S135)。プリンタプログラム46は、取得した指示に基づいて、上述のステップS60以降の処理と同様の処理を実行する。一方、管理サーバ11のサーバプログラム56も、上述のステップS63、S64と同様の処理を実行する。
[変形例2の作用効果]
本変形例では、買上用承諾書が印刷されるので、買上承諾画面がディスプレイ24に表示されるよりも、買上承諾の内容をユーザに視認させ易い。また、ユーザは、第3図形或いは第4図形にチェック等を記入すればよいので、シートよりも表示領域が小さいタッチパネル23において指示を入力するよりも、プリンタ10に指示を入力し易い。その結果、プリンタ10の使い勝手が向上する。
[その他の変形例]
上述の実施形態では、プリンタ10のプリンタプログラム46が、受信した売買情報をディスプレイ24に表示させる例(S28、S59)が説明された。しかしながら、プリンタプログラム46が、受信した売買情報をパーソナルコンピュータや携帯端末などに、通信I/F27を通じて送信し、パーソナルコンピュータや携帯端末のディスプレイに売買情報を表示させてもよい。或いは、プリンタプログラム46は、受信した売買情報をプリンタ部21に出力して、売買情報をプリンタ部21に印刷させてもよい。プリンタプログラム46がパーソナルコンピュータや携帯端末やプリンタ部21に売買情報を出力する処理は、売買情報出力処理の他の一例である。
上述の実施形態では、申請情報等が、プリンタ10から管理サーバ11に直接送信される例を説明した。しかしながら、申請情報等は、パーソナルコンピュータや携帯端末を介して、プリンタ10から管理サーバ11に送信されてもよい。また、モード変更指示情報や売買情報等も、パーソナルコンピュータや携帯端末を介して、管理サーバ11からプリンタ10に送信されてもよい。
上述の実施形態では、プリンタ10のプリンタプログラム46が、動作モードを変更したことに基づいて(S16、S46)、買取要求或いは買上要求と、カートリッジ情報とを管理サーバ11に送信する例を説明した。しかしながら、プリンタプログラム46は、動作モードを変更したこと、及び買取要求或いは買上要求の送信を許可するユーザの指示の入力を受け付けたことに基づいて、買取要求或いは買上要求と、カートリッジ情報とを管理サーバ11に送信してもよい。
上述の実施形態では、サーバプログラム56が、ステップS24、S54において買取金額及び買上金額を決定する例が説明された。しかしながら、サーバプログラム56がステップS24、S54で決定するのは、「金額」に限られない。「金額」に代えて、引換券や、商品券や、マイルや、仮想通貨や、サービス券や、サービスや、それらの組み合わせなどが採用されてもよい。サービスは、プリンタ10の保証延長サービスなどである。例えば、プリンタプログラム46は、引換券、商品券、マイル、仮想通貨、サービス券、及びサービスの選択を行う選択画面をディスプレイ24に表示させ、選択を受け付ける。プリンタプログラム46は、ステップS21で管理サーバ11に送信する買取要求或いはステップS31で送信する買取通知に、選択された対価の種別を含ませる。サーバプログラム56は、取得した対価の種別に応じた売買情報を生成する。例えば、サーバプログラム56は、対価の種別が「マイル」である場合、ステップS24においてマイルの数値を決定して、売買情報を生成する。