以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。
図1は、本実施形態に係るシステム100の概略図である。図1に示されるシステム100は、複合機10A、10B(以下、これらを総称して、「複合機10」と表記することがある。)と、情報処理端末50と、サーバ80とで構成される。複合機10、情報処理端末50、及びサーバ80は、通信ネットワークを介して相互に通信可能とされている。通信ネットワークの具体例は特に限定されないが、例えば、インターネット101、有線LAN、無線LAN102、或いはこれらの組み合わせであってもよい。
複合機10及び情報処理端末50は、無線LAN102に属している。すなわち、複合機10及び情報処理端末50は、無線LAN102の不図示のアクセスポイントを経由して、相互に通信することができる。また、無線LAN102は、ルータ102Aを通じてインターネット101に接続されている。さらに、サーバ80は、インターネット101に接続されている。すなわち、複合機10及び情報処理端末50は、ルータ102Aからインターネット101を経由して、サーバ80と通信することができる。
複合機10は、図2(A)に示されるように、プリンタ11と、スキャナ12と、FAX部13と、ディスプレイ23と、入力I/F24と、通信I/F25と、CPU31と、メモリ32と、通信バス33とを主に備える。複合機10を構成する各構成要素は、通信バス33を通じて相互に接続されている。複合機10は、画像処理装置の一例である。複合機10A、10Bの構成は同様であってもよいし、異なっていてもよい。本実施形態において、複合機10Aは装置ID“MFP−A”で識別され、複合機10Bは装置ID“MFP−B”で識別される。装置IDは、装置識別情報の一例である。
プリンタ11は、画像データで示される画像をシートに記録するプリント動作を実行する。プリンタ11の記録方式としては、インクジェット方式や電子写真方式などの公知の方式を採用することができる。スキャナ12は、原稿に記録されている画像を読み取って画像データを生成するスキャン動作を実行する。FAX部13は、画像データを外部装置にFAX送信するFAX送信動作と、画像データを外部装置からFAX受信するFAX受信動作とを実行する。なお、複合機10は、プリンタ11、スキャナ12、FAX部13の少なくとも1つを備えていればよい。
図示は省略するが、プリンタ11は、インクカートリッジが装着される装着部を備える。装着部には、ブラックインクが貯留されたインクカートリッジ(以下、「インクカートリッジB」と表記する。)、シアンインクが貯留されたインクカートリッジ(以下、「インクカートリッジC」と表記する。)、マゼンタインクが貯留されたインクカートリッジ(以下、「インクカートリッジM」と表記する。)、及びイエローインクが貯留されたインクカートリッジ(以下、「インクカートリッジY」と表記する。)が、それぞれ独立して着脱される。そして、プリンタ11は、各インクカートリッジに貯留されたインクを用いて、シートに画像を記録する。インクカートリッジは、プリント動作に用いられる消耗品の一例である。
すなわち、インクカートリッジに貯留されたインクの量は、プリンタ11がプリント動作を実行する度に、徐々に減少する。そして、プリンタ11は、インクカートリッジに貯留されたインクがなくなると、それ以上プリント動作を実行することができなくなる。換言すれば、プリンタ11がプリント動作をさらに実行するためには、インクがなくなったインクカートリッジを装着部から取り外し、且つインクが貯留されている新たなインクカートリッジを装着部に装着する(すなわち、インクカートリッジを交換する)必要がある。
また、プリンタ11は、装着部に装着された各インクカートリッジに貯留されたインクの量(以下、「インク残量」と表記する。)を検出し、検出したインク残量を示す検出信号をCPU31に出力するセンサを備える。検出信号は、例えば、新品のインクカートリッジのインク残量を100%として、現在のインク残量をパーセンテージで示す。すなわち、CPU31は、装着部に装着された複数のインクカートリッジそれぞれのインク残量を把握することができる。センサは、例えば、光学式センサ、機械式センサ、ソフトウェアセンサ、或いはそれらの組み合わせで実現される。
入力I/F24は、ユーザによる入力操作を受け付けるユーザインタフェースである。具体的には、入力I/F24はボタンを有しており、押下されたボタンに対応づけられた各種の操作信号をCPU31へ出力する。さらに、入力I/F24は、ディスプレイ23の表示面に重畳された膜状のタッチセンサを有していてもよい。ディスプレイ23の表示面に表示されたオブジェクトを指定する操作、文字列或いは数字列を入力する操作は、ユーザ操作の一例である。「オブジェクト」とは、例えば、ディスプレイ23に表示された文字列、アイコン、ボタン、リンク、プルダウンメニュー等である。
タッチセンサとして実現される入力I/F24は、ユーザがタッチした表示面上の位置を示す位置情報を出力する。なお、本明細書中における「タッチ」とは、入力媒体を表示面に接触させる操作全般を含む。また、入力媒体が表示面に触れていなくても、表示面との間の距離がごく僅かな位置まで入力媒体を近接させる「ホバー」或いは「フローティングタッチ」を、前述の「タッチ」の概念に含めてもよい。さらに入力媒体とは、ユーザの指であってもよいし、タッチペン等であってもよい。ディスプレイ23に表示されたアイコンの位置のタップするユーザ操作は、当該アイコンを指定する指定操作の一例である。
通信I/F25は、通信ネットワークを通じて外部装置と通信を行うための通信インタフェースの一例である。すなわち、複合機10は、通信I/F25を通じて情報処理端末50及びサーバ80に各種情報を送信し、通信I/F25を通じて情報処理端末50及びサーバ80から各種データ又は各種情報を受信する。通信I/F25の具体的な通信手順は特に限定されないが、例えば、Wi−Fi(Wi-Fi Allianceの登録商標)を採用することができる。
CPU31は、複合機10の全体動作を制御するものである。CPU31は、入力I/F24から出力される各種信号、及び通信I/F25を通じて外部装置から取得した各種情報等に基づいて、後述する各種プログラムをメモリ32から取得して実行する。すなわち、CPU31及びメモリ32は、コントローラの一例を構成する。
メモリ32には、OS34と、装置プログラム35とが記憶される。なお、装置プログラム35は、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。また、メモリ32には、装置プログラム35の実行に必要なデータ或いは情報が記憶される。メモリ32は、例えば、RAM、ROM、EEPROM、HDD、複合機10に着脱されるUSBメモリ等の可搬記憶媒体、CPU31が備えるバッファ等、或いはそれらの組み合わせによって構成される。
メモリ32は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット101上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。
複合機10A、10Bの装置プログラム35には、様々な機能が実装されている。装置プログラム35には、例えば、プリンタ11にプリント動作を実行させる機能、スキャナ12にスキャン動作を実行させる機能、FAX部13にFAX送信動作及びFAX受信動作を実行させる機能が少なくとも実装されている。さらに、装置プログラム35には、手動発注機能、自動発注機能、及び情報通知機能が実装されていてもよいし、実装されていなくてもよい。
手動発注機能は、ユーザの指示に従って新たなインクカートリッジの発送をサーバ80に要求する機能である。すなわち、装置プログラム35は、手動発注機能の実行を指示するユーザ操作を入力I/F24を通じて受け付けたことに応じて、通信I/F25を通じてサーバ80に後述する第2発送要求情報を送信する。これらの処理は、後述するS51、S58に相当する処理である。本実施形態において、複合機10A、10Bの装置プログラム35には、手動発注機能が実装されているものとする。
自動発注機能は、インクカートリッジのインク残量が閾値未満になったことに応じて、新たなインクカートリッジの発送をサーバ80に自動的に要求する機能である。装置プログラム35は、例えば、センサから出力された検出信号を所定の時間間隔で繰り返し取得し、取得した検出信号で示されるインク残量と閾値(例えば、10%)とを比較する。そして、装置プログラム35は、インク残量が閾値未満であると判断したことに応じて、通信I/F25を通じてサーバ80に後述する第1発送要求情報を送信する。これらの処理は、後述するS35、S39に相当する処理である。
また、メモリ32は、発注完了フラグを記憶している。発注完了フラグは、装着部に装着された複数のインクカートリッジそれぞれについて、当該インクカートリッジをサーバ80に発注したことを示す第1値“ON”、或いは当該インクカートリッジをサーバ80に発注していないことを示す第2値“OFF”が設定される。発注完了フラグのデフォルト値は、第2値“OFF”である。以下、インクカートリッジBに対応する発注完了フラグを「発注完了フラグB」と表記し、インクカートリッジCに対応する発注完了フラグを「発注完了フラグC」と表記し、インクカートリッジMに対応する発注完了フラグを「発注完了フラグM」と表記し、インクカートリッジYに対応する発注完了フラグを「発注完了フラグY」と表記する。
装置プログラム35は、例えば、手動発注機能及び自動発注機能でインクカートリッジCを発注したことに応じて、発注完了フラグCに第1値“ON”を設定する。一方、装置プログラム35は、装着部に装着されたインクカートリッジCが交換されたことに応じて、発注完了フラグCに第2値“OFF”を設定する。装置プログラム35は、例えば、インクカートリッジCに搭載されたICチップを読み取ることによって、インクカートリッジCが交換されたことを認識することができる。
また、メモリ32は、キャンセルフラグを記憶している。キャンセルフラグは、装着部に装着された複数のインクカートリッジそれぞれについて、自動発注機能を停止することを示す第1値“ON”、或いは自動発注機能を実行することを示す第2値“OFF”が設定される。発注完了フラグのデフォルト値は、第2値“OFF”である。キャンセルフラグの詳細は、メモリ62に記憶されるキャンセルフラグと同様であってもよい。
装置プログラム35は、通信I/F25を通じて情報処理端末50から後述する発注抑制情報を受信したことに応じて、対応するキャンセルフラグに第1値“ON”を設定する。そして、装置プログラム35は、インク残量が閾値未満であると判断し且つキャンセルフラグに第2値“OFF”が設定されていることに応じて、第1発送要求情報をサーバ80に送信する。一方、装置プログラム35は、インク残量が閾値未満であると判断し且つキャンセルフラグに第1値“ON”が設定されていることに応じて、第1発送要求情報を送信せずに、キャンセルフラグに第2値“OFF”を設定する。これらの処理は、例えば、S35、S38〜S42に相当する処理である。
情報通知機能は、消耗品情報及び発注完了情報を情報処理端末50に送信する機能である。消耗品情報は、インクカートリッジの状態を示す情報である。より詳細には、消耗品情報は、装着部に装着されている複数のインクカートリッジそれぞれのインク残量を示す情報である。発注完了情報は、手動発注機能或いは自動発注機能を実行したことを示す情報である。以下、インクカートリッジBに対応する発注完了情報を「発注完了情報B」と表記し、インクカートリッジCに対応する発注完了情報を「発注完了情報C」と表記し、インクカートリッジMに対応する発注完了情報を「発注完了情報M」と表記し、インクカートリッジYに対応する発注完了情報を「発注完了情報Y」と表記する。
装置プログラム35は、例えば、通信I/F25を通じて情報処理端末50から送信要求情報を受信したことに応じて、センサから検出信号を取得する。そして、装置プログラム35は、取得した検出信号の内容を示す消耗品情報を、通信I/F25を通じて情報処理端末50に送信する。すなわち、装置プログラム35は、情報処理端末50から受信した送信要求情報の応答として、全てのインクカートリッジのインク残量を示す消耗品情報を送信する。
また、装置プログラム35は、例えば、通信I/F25を通じて情報処理端末50から送信要求情報を受信したことに応じて、各インクカートリッジに対応する発注完了フラグの設定値を判断する。装置プログラム35は、例えば、発注完了フラグCに第1値“ON”が設定されていることに応じて、通信I/F25を通じて情報処理端末50に発注完了情報Cを送信する。一方、装置プログラム35は、例えば、発注完了フラグB、M、Yに第2値“OFF”が設定されていることに応じて、発注完了情報B、M、Yを情報処理端末50に送信しない。
但し、消耗品情報を送信するタイミングは前述の例に限定されず、例えば、装置プログラム35に予め設定されたタイミング、或いは検出信号で示されるインク残量が閾値未満になったタイミング等であってもよい。また、発注完了情報を送信するタイミングは前述の例に限定されず、例えば、手動発注機能或いは自動発注機能を実行したタイミング等であってもよい。
また、メモリ32は、機能情報を記憶している。機能情報は、装置プログラム35に自動発注機能が実装されているか否かを示す第1機能情報と、装置プログラム35に情報通知機能が実装されているか否かを示す第2機能情報とを含む。機能情報には、対応する機能が実装されていることを示す第1値“ON”、或いは対応する機能が実装されていないことを示す第2値“OFF”が設定される。機能情報は、例えば、複合機10の出荷時点において、製造メーカによって既にメモリ32に登録されている。すなわち、図3(A)の例において、複合機10Aの装置プログラム35には、自動発注機能が実装されておらず、且つ情報通知機能が実装されている。また、複合機10Bの装置プログラム35には、自動発注機能及び情報通知機能の両方が実装されている。なお、第1値および第2値の第1機能情報は、自動発注情報の例示である。第1値の第2機能情報は、通知可情報の例示である。
情報処理端末50は、図2(B)に示されるように、ディスプレイ53と、入力I/F54と、通信I/F55と、CPU61と、メモリ62と、通信バス63とを主に備える。情報処理端末50に含まれるディスプレイ53、入力I/F54、通信I/F55、CPU61、メモリ62、及び通信バス63は、複合機10に含まれるディスプレイ23、入力I/F24、通信I/F25、CPU31、メモリ32、及び通信バス33と同様の構成であるので、説明は省略する。情報処理端末50は、例えば、携帯電話、スマートフォン、タブレット端末、或いはPC等であってもよい。メモリ62は、OS64と、端末プログラム65とを記憶している。
端末プログラム65は、複合機10の状態をユーザに報知する所謂ステータスモニタである。すなわち、端末プログラム65は、通信I/F55を通じて複合機10から消耗品情報を受信し、受信した消耗品情報で示される消耗品の状態をディスプレイ53に表示させる。また、端末プログラム65は、前述した自動発注機能及び手動発注機能をさらに備える。但し、端末プログラム65に実装された機能はこれに限定されず、例えば、プリント動作、スキャン動作、或いはFAX送信動作を複合機10に指示する機能をさらに有していてもよい。
メモリ62は、例えば図3(B)に示されるように、アカウント情報を記憶することができる。アカウント情報は、例えば、端末プログラム65のインストール時にはメモリ62に記憶されていない。端末プログラム65は、例えば、図3(C)に示される決済情報及び宛先情報を入力するユーザ操作を、入力I/F54を通じて受け付ける。決済情報は、例えば、クレジットカード番号である。次に、端末プログラム65は、入力された決済情報及び宛先情報を通信I/F55を通じてサーバ80に送信する。次に、端末プログラム65は、決済情報及び宛先情報の応答としてサーバ80が送信したアカウント情報を、通信I/F55を通じてサーバ80から受信してメモリ62に記憶させる。
また、メモリ62は、自動発注フラグを記憶している。自動発注フラグは、情報処理端末50の自動発注機能が有効か否かを示す情報である。自動発注フラグには、情報処理端末50の自動発注機能を有効にすることを示す第1値“ON”、或いは自動発注機能を無効にすることを示す第2値“OFF”が設定される。自動発注フラグのデフォルト値は、第2値“OFF”である。
また、メモリ62は、キャンセルフラグを記憶している。キャンセルフラグは、消耗品情報で示される消耗品の状態が交換条件を満たす場合に、後述するS39の処理を実行するか否かを示す情報である。キャンセルフラグには、消耗品情報で示される消耗品の状態が交換条件を満たす場合に、後述するS39の処理を実行しないことを示す第1値“ON”、或いはS39の処理を実行することを示す第2値“OFF”が設定される。キャンセルフラグのデフォルト値は、第2値“OFF”である。
さらに、メモリ62は、表示情報を記憶している。表示情報は、後述するステータス画面に表示させる発注アイコン131B、131C、131M、131Yの表示態様を示す情報である。表示情報には、発注アイコン131B、131C、131M、131Yを、デフォルトの表示態様で表示する“標準”、デフォルトより強調した表示態様で表示する“強調”、或いは選択不能にする“グレー”が設定される。表示情報のデフォルト値は、“標準”である。
メモリ62は、複合機10Aの装着部に装着される複数のインクカートリッジそれぞれに対応するキャンセルフラグ及び表示情報を記憶している。以下、インクカートリッジBに対応する情報を「キャンセルフラグB」、「表示情報B」と表記し、インクカートリッジCに対応する情報を「キャンセルフラグC」、「表示情報C」と表記し、インクカートリッジMに対応する情報を「キャンセルフラグM」、「表示情報M」と表記し、インクカートリッジYに対応する情報を「キャンセルフラグY」、「表示情報Y」と表記する。
サーバ80は、所謂WEBショッピングサービスを提供するサーバである。より詳細には、サーバ80は、複合機10或いは情報処理端末50からの要求に応じて、指定された消耗品を指定された宛先に発送する。サーバ80は、1台で構成されていてもよいし、複数のサーバで構成されていてもよい。また、サーバ80が要求を受け付けてから消耗品が発送されるまでの過程において、作業員による作業(例えば、指定された消耗品を倉庫から取り出す作業、取り出した消耗品を梱包する作業等)が介在してもよいことは言うまでもない。
まず事前準備として、サーバ80は、複合機10或いは情報処理端末50から決済情報及び宛先情報を受信する。次に、サーバ80は、受信した決済情報及び宛先情報を一意に識別するアカウント情報を生成する。次に、サーバ80は、図3(C)に示されるように、受信した決済情報及び宛先情報と、生成したアカウント情報とを対応付けてサーバメモリに記憶させる。そして、サーバ80は、決済情報及び宛先情報の送信先の複合機10或いは情報処理端末50に、生成したアカウント情報を送信する。消耗品を発送する処理の詳細は、図4〜図7を参照して後述する。
図4〜図7を参照して、本実施形態に係るシステム100の動作を説明する。
本明細書のフローチャートは、基本的に、プログラムに記述された命令に従ったCPU31の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「算出」、「決定」、「特定」、「制御」等の処理は、CPU31、61の処理を表している。CPU31、61による処理は、OS34、64を介したハードウェア制御も含む。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。
[メイン処理]
まず、端末プログラム65は、例えば、入力I/F54を通じたユーザ操作によって起動されたことに応じて、図8(A)に示されるメイン画面をディスプレイ53に表示させる(S11)。メイン画面は、[ステータス]アイコン111と、切替アイコン112とを含む。[ステータス]アイコン111は、後述するステータス画面をディスプレイ53に表示させる指示に対応する。切替アイコン112は、ステータスをモニタリングする複合機10(以下、「指定装置」と表記する。)を切り替える指示に対応する。指定装置が指定されていない場合の切替アイコン112には、“未選択”の文字列が記述されている。そして、端末プログラム65は、メイン画面に対するユーザ操作を、入力I/F54を通じて受け付ける(S12)。
次に、端末プログラム65は、例えば切替アイコン112の指定を入力I/F54を通じて受け付けたことに応じて(S12:切替)、通信I/F55を通じて通信可能な複合機10A、10Bを検索する(S13)。通信可能な複合機10A、10Bの検索方法は既に周知なので詳細な説明は省略するが、例えば、SNMP(Simple Network Management Protocolの略)を用いて検索することができる。本実施形態では、複合機10A、10Bが発見されたものとする。
次に、端末プログラム65は、図8(B)に示されるデバイス選択画面をディスプレイ53に表示させる(S14)。デバイス選択画面は、デバイスアイコン121、122を含む。デバイスアイコン121、122は、ステップS13で発見した複合機10A、10Bに対応する装置オブジェクトの一例である。また、デバイスアイコン121、122には、対応する複合機10A、10Bの装置IDが記述されている。そして、端末プログラム65は、デバイス選択画面に対するユーザ操作を入力I/F54を通じて受け付ける(S15)。
次に、端末プログラム65は、例えばデバイスアイコン121の指定を入力I/F54を通じて受け付けたことに応じて(S15:Yes)、デバイスアイコン121に対応する複合機10Aを指定装置に決定する。より詳細には、端末プログラム65は、複合機10Aの装置ID“MFP−A”を、指定装置IDとしてメモリ32に記憶させる。また、端末プログラム65は、発注モード決定処理を実行する(S16)。図5を参照して、発注モード決定処理の詳細を説明する。
[発注モード決定処理]
まず、端末プログラム65は、指定装置である複合機10Aから通信I/F55を通じて機能情報を受信する(S21)。より詳細には、端末プログラム65は、例えば、通信I/F55を通じて複合機10Aに送信指示情報を送信する。そして、端末プログラム65は、送信指示情報の応答として複合機10Aが送信した機能情報を、通信I/F55を通じて複合機10Aから受信する。そして、端末プログラム65は、受信した機能情報をメモリ62に一時記憶させる。S21の処理は、受信処理の他の一部の例示である。
次に、端末プログラム65は、S21で受信した機能情報に基づいて、複合機10Aに実装されている機能を判断する(S22、S25)。すなわち、端末プログラム65は、S21で受信した第1機能情報及び第2機能情報それぞれに設定された値に基づいて、自動発注機能及び情報通知機能が複合機10Aに実装されているか否かを判断する。S22、S25の処理は、第2判断処理の一例である。
そして、端末プログラム65は、第1機能情報に第2値“OFF”が設定されており、且つ第2機能情報に第1値“ON”が設定されていると判断したことに応じて(S22:なし&S25:あり)、自動発注フラグに第1値“ON”を設定する(S26)。次に、端末プログラム65は、通信I/F55を通じて複合機10Aに送信要求情報を送信する(S24)。送信要求情報は、消耗品情報及び発注完了情報の送信を要求するための情報である。以下、端末プログラム65は、指定装置である複合機10Aに所定の時間間隔で繰り返し送信要求情報を送信する。
また、端末プログラム65は、第1機能情報に第1値“ON”が設定されていると判断したことに応じて(S22:あり)、自動発注フラグに第2値“OFF”を設定し、且つ送信要求情報の繰り返し送信を開始する(S23、S24)。さらに、端末プログラム65は、第1機能情報及び第2機能情報の両方に第2値“OFF”が設定されていると判断したことに応じて(S22:なし&S25:なし)、自動発注フラグに第2値“OFF”を設定し、S24の処理を実行せずに発注モード決定処理を終了する(S27)。
図4に戻って、端末プログラム65は、メイン画面をディスプレイ53に再び表示させる(S11)。ここで表示されるメイン画面は、指定装置ID“MFP−A”が切替アイコン112に記述されている点が図8(A)と相違し、その他の点が図8(A)と共通する。また、S24で送信要求情報の繰り返し送信を開始した端末プログラム65は、メイン画面或いは後述するステータス画面の表示中に、発注完了情報或いは消耗品情報を受信することがある。そして、端末プログラム65は、発注完了情報或いは消耗品情報を受信したことに応じて、通知受信処理を実行する。図6を参照して、通知受信処理の詳細を説明する。
以下の説明において、複合機10Aの装着部に装着されている各インクカートリッジのインク残量は、ブラックインク=70%、シアンインク=0%、マゼンタインク=100%、イエローインク=5%であるものとする。また、インクカートリッジCは複合機10Aの手動発注機能で既にサーバ80に発注され、インクカートリッジYは未だ発注されていないものとする。すなわち、発注完了フラグB=“OFF”、発注完了フラグC=“ON”、発注完了フラグM=“OFF”、発注完了フラグY=“OFF”である。
[通知受信処理]
まず、端末プログラム65は、通信I/F25を通じて複合機10Aから発注完了情報Cを受信したことに応じて(S31:発注完了)。自動発注フラグの設定値を判断する(S32)。そして、端末プログラム65は、自動発注フラグに第1値“ON”が設定されていることに応じて(S32:ON)、キャンセルフラグCに第1値“ON”を設定し、表示情報Cに“グレー”を設定する(S33、S34)。一方、端末プログラム65は、自動発注フラグに第2値“OFF”が設定されていることに応じて(S32:OFF)、S33の処理を実行せずに、S34の処理を実行する。S31で発注完了情報を受信する処理は、第3受信処理の一例である。
また、端末プログラム65は、通信I/F25を通じて複合機10Aから消耗品情報を受信したことに応じて(S31:消耗品)、複合機10Aの装着部に装着された複数のインクカートリッジそれぞれについて、消耗品情報で示されるインク残量と、閾値の一例である上限値(例えば、90%)及び下限値(例えば、10%)とを比較する(S35)。上限値及び下限値は、例えば、端末プログラム65に予め設定されていてもよいし、機能情報等と共に複合機10Aから受信してもよい。S31で消耗品情報を受信する処理は、受信処理の一部の例示である。
端末プログラム65は、インクカートリッジBのインク残量が上限値未満で且つ下限値以上であると判断したことに応じて(S35:その他)、S36〜S44の処理を実行しない。また、端末プログラム65は、インクカートリッジMのインク残量が上限値以上であると判断したことに応じて(S35:Full)、表示情報Mに“標準”を設定する(S36)。また、端末プログラム65は、インクカートリッジC、Yのインク残量が下限値未満であると判断したことに応じて(S35:Low)、自動発注フラグの設定値と、キャンセルフラグC、Yの設定値とを判断する(S37、S38、S43)。インク残量が下限値未満であるとは、インクカートリッジの交換条件を満たすことの一例である。
次に、端末プログラム65は、自動発注フラグに第1値“ON”が設定され、且つキャンセルフラグCに第1値“ON”が設定されていることに応じて(S37:ON&S38:ON)、後述するS39〜S41の処理に代えて、キャンセルフラグCに第2値“OFF”を設定する(S42)。すなわち、端末プログラム65は、キャンセルフラグCに第1値“ON”を設定した後において、インクカートリッジCが交換条件を最初に満たしたことに応じて、S39の処理を実行しない。
一方、端末プログラム65は、自動発注フラグに第1値“ON”が設定され、且つキャンセルフラグYに第2値“OFF”が設定されていることに応じて(S37:ON&S38:OFF)、通信I/F55を通じてサーバ80に第1発送要求情報を送信する(S39)。第1発送要求情報は、S35で交換条件を満たすと判断したインクカートリッジYを、宛先情報で示される宛先に発送することを要求する情報である。第1発送要求情報は、例えば、複合機10AのインクカートリッジYを識別する消耗品ID(例えば、型番)と、メモリ62に記憶されたアカウント情報“abc”とを含む。S39の処理は、第1送信処理の一例である。
図示は省略するが、サーバ80は、前述の第1発送要求情報を情報処理端末50から受信する。次に、サーバ80は、受信した第1発送要求情報に含まれるアカウント情報“abc”に対応付けられた決済情報及び宛先情報を、サーバメモリから読み出す。次に、サーバ80は、読み出した決済情報に基づいて、インクカートリッジYの代金を決済する。そして、サーバ80は、第1発送要求情報に含まれる消耗品IDで識別されるインクカートリッジYを、サーバメモリから読み出した宛先情報で示される宛先に発送することを、WEBショッピングサービスの作業員に報知する。
また、端末プログラム65は、通信I/F55を通じて複合機10Aに発注完了情報Yを送信する(S40)。さらに、端末プログラム65は、表示情報Yに“グレー”を設定する(S41)。一方図示は省略するが、複合機10Aの装置プログラム35は、通信I/F25を通じて情報処理端末50から発注完了情報Yを受信する。そして、装置プログラム35は、例えば、複合機10Aの手動発注機能を利用しようとするユーザに、情報処理端末50の自動発注機能によってインクカートリッジYが既に発注されたことを、ディスプレイ23等を通じてユーザに報知する。
以上の通知受信処理を実行した後において、表示情報B=“標準”、表示情報C=“グレー”、表示情報M=“標準”、表示情報Y=“グレー”となる。一方、端末プログラム65は、自動発注フラグに第2値“OFF”が設定され、且つキャンセルフラグYに第2値“OFF”が設定されていることに応じて(S37:OFF&S43:OFF)、表示情報Yに“強調”を設定する(S44)。一方、端末プログラム65は、自動発注フラグに第2値“OFF”が設定され、且つキャンセルフラグCに第1値“ON”が設定されていることに応じて(S37:OFF&S43:ON)、S44の処理を実行しない。この場合、表示情報B=“標準”、表示情報C=“グレー”、表示情報M=“標準”、表示情報Y=“強調”となる。
再び図4に戻って、端末プログラム65は、[ステータス]アイコン111の指定を入力I/F54を通じて受け付けたことに応じて(S12:ステータス)、図9に示されるステータス画面を、ディスプレイ53に表示させる(S17)。S17の処理は、第1表示処理の一例である。そして、端末プログラム65は、ステータス画面に対するユーザ操作を、入力I/F54を通じて受け付ける(S18)。
ステータス画面は、消耗品情報で示されるインクカートリッジB、C、M、Yのインク残量を示す棒グラフと、インクカートリッジB、C、M、Yに対応付けられた発注アイコン131B、131C、131M、131Yと、インクカートリッジB、C、M、Yに対応付けられた停止アイコン132B、132C、132M、132Yとを含む。発注アイコン131B、131C、131M、131Yは、対応するインクカートリッジに対する手動発注機能を実行させる指示に対応する消耗品オブジェクトの一例である。停止アイコン132B、132C、132M、132Yは、対応するインクカートリッジの発注を複合機10Aに一時的に停止させる指示に対応する。
また、端末プログラム65は、発注アイコン131B、131C、131M、131Yの表示態様を、対応する表示情報B、C、M、Yの設定値に応じて変更する。図9(A)の例において、“標準”が設定された表示情報B、Mに対応する発注アイコン131B、131Mは、入力I/F54を通じて指定可能な態様で表示されている。一方、“グレー”が設定された表示情報C、Yに対応する発注アイコン131C、131Yは、入力I/F54を通じて指定不能な態様で表示されている。一方、図9(B)の例において、“強調”が設定された表示情報Yに対応する発注アイコン131Yは、入力I/F54を通じて指定可能な態様であり、且つ“標準”が設定された表示情報B、Mに対応する発注アイコン131B、131Mより強調された態様で表示されている。
なお、「指定可能な態様」とは、当該アイコンが入力I/F54を通じて指定された場合に、当該アイコンに対応付けられた処理を端末プログラム65が実行することを示す。一方、「指定不能な態様」とは、当該アイコンが入力I/F54を通じて指定されたとしても、当該アイコンに対応付けられた処理を端末プログラム65が実行しないことを示す。また、「指定不能な態様」とは、例えば図9の例のようにグレーアウトすることでもよいし、非表示にすることでもよい。さらに、「強調する」とは、図9(B)の例のように輪郭線を太くすることでもよいし、点滅させる、色を変える等であってもよい。
次に、端末プログラム65は、ステータス画面に対するユーザ操作を入力I/F54を通じて受け付けたことに応じて(S18:Yes)、発注処理を実行する(S19)。図7を参照して、発注処理の詳細を説明する。
端末プログラム65は、例えば発注アイコン131Bの指定を入力I/F54を通じて受け付けたことに応じて(S51:発注)、図8(B)に示されるデバイス選択画面をディスプレイ53に表示させる(S52)。そして、端末プログラム65は、デバイス選択画面に対するユーザ操作を、入力I/F54を通じて受け付ける(S53)。S51で発注アイコンの指定を受け付ける処理は、第2受付処理の一例である。S52、S53の処理は、S13〜S15と同様であってもよい。
次に、端末プログラム65は、例えばデバイスアイコン122の指定を入力I/F54を通じて受け付けたことに応じて(S53:Yes)、デバイスアイコン121に対応する複合機10Bの装置ID“MFP−B”をメモリ62に一時記憶させる。さらに図示は省略するが、端末プログラム65は、S53で一時記憶させた装置ID“MFP−B”で識別される複合機10Bから、通信I/F55を通じて機能情報を受信する。そして、端末プログラム65は、受信した機能情報に基づいて、複合機10Bに自動発注機能が実装されているか否かを判断する(S54)。これらの処理は、S21、S22と同様であってもよい。
次に、端末プログラム65は、複合機10Bに自動発注機能が実装されていると判断したことに応じて(S54:あり)、図10(A)に示される確認画面をディスプレイ53に表示させる(S55)。本実施形態に係る確認画面は、ステータス画面に重ねて表示されるポップアップウィンドウである。そして、端末プログラム65は、確認画面に対するユーザ操作を、入力I/F54を通じて受け付ける(S56)。S55の処理は第2表示処理の一例である。
確認画面は、複合機10Bに自動発注機能が実装されていることを報知し、後述するS58の処理を実行するか否かをユーザに問い合わせる画面の一例である。確認画面は、「インク残量が10%未満になると複合機で自動発注されます。」とのメッセージと、チェックボックス141と、[OK]アイコン142と、[キャンセル]アイコン143とを含む。チェックボックス141は、後述する発送抑制情報を送信するか否かの指示に対応する。[OK]アイコン142は、S58の処理を実行させる指示に対応する。[キャンセル]アイコン143は、S58の処理を実行させない指示に対応する。
次に、端末プログラム65は、チェックボックス141がチェックされた後に、[OK]アイコン142の指定を入力I/F54を通じて受け付けたことに応じて(S56:OK(チェックあり))、通信I/F55を通じて複合機10Bに発注抑制情報を送信する(S57)。S57は、第2送信処理の例示である。発注抑制情報は、抑制情報の例示であり、自動発注機能の実行を複合機10Bに一時的に停止させる情報である。発注抑制情報は、例えば、複合機10BのインクカートリッジBを識別する消耗品IDを含む。
また、端末プログラム65は、通信I/F55を通じてサーバ80に第2発送要求情報を送信する(S58)。S58の処理は、第2送信処理の一例である。第2発送要求情報は、S53で一時記憶させた装置ID“MFP−B”で識別される複合機10Bの複数のインクカートリッジのうち、S51で指定された発注アイコン131Bに対応するインクカートリッジBを、宛先情報で示される宛先に発送することを要求する情報である。第2発送要求情報は、例えば、複合機10BのインクカートリッジBを識別する消耗品IDと、メモリ62に記憶されたアカウント情報“abc”とを含む。第2発送要求情報を受信したサーバ80の処理は、第1発送要求情報を受信した場合と同様であってもよい。
一方、端末プログラム65は、チェックボックス141がチェックされずに、[OK]アイコン142の指定を入力I/F54を通じて受け付けたことに応じて(S56:OK(チェックなし))、S57の処理を実行せずに、S58の処理を実行する。また、端末プログラム65は、[キャンセル]アイコン143の指定を入力I/F54を通じて受け付けたことに応じて(S56:キャンセル)、S57、S58の処理を実行することなく、発注処理を終了する。さらに、端末プログラム65は、複合機10Bに自動発注機能が実装されていないと判断したことに応じて(S54:なし)、S55〜S57の処理を実行せずに、S58の処理を実行する。
また、端末プログラム65は、例えば停止アイコン132Mの指定を入力I/F54を通じて受け付けたことに応じて(S51:発注停止)、図10(B)に示される問合せ画面をディスプレイ53に表示させる(S59)。S51で停止アイコンの指定を受け付ける処理は、第4受付処理の一例である。問合せ画面は、「購入したカートリッジの個数を入力して下さい。」とのメッセージと、テキストボックス151と、[OK]アイコン152とを含む。テキストボックス151は、入力I/F54を通じて入力されたインクカートリッジの個数を表示するオブジェクトである。[OK]アイコン152は、発注抑制情報を送信させる指示に対応する。そして、端末プログラム65は、問合せ画面に対するユーザ操作を、入力I/F54を通じて受け付ける(S60)。
そして、端末プログラム65は、購入したインクカートリッジMの個数を入力するユーザ操作を入力I/F54を通じて受け付けたことに応じて、当該個数をテキストボックス151に表示させると共に、メモリ62に一時記憶させる。また、端末プログラム65は、[OK]アイコン152の指定を入力I/F54を通じて受け付けたことに応じて(S60:Yes)、通信I/F55を通じて複合機10Aに発注抑制情報を送信する(S61)。S61の処理は、S57と同様であってもよい。但し、S61で送信される発注抑制情報は、S51で指定された停止アイコン132Mに対応するインクカートリッジMの消耗品IDに加えて、メモリ62に一時記憶させた個数を示す個数情報を含む。
[本実施形態の作用効果]
上記の実施形態によれば、自動発注機能を有しない既存の複合機10Aの消耗品を、情報処理端末50が適切なタイミングで自動的に発注することができる。これにより、消耗品切れに起因する複合機10Aの稼働率の低下を抑制することができる。なお、消耗品情報を送信する機能は、所謂ステータスモニタ等に通知するために、既存の複合機10の多くに既に実装されている。すなわち、本発明は、既存の複合機10にも適用可能である。
また、上記の実施形態によれば、指定装置の第1機能情報に基づいて自動発注フラグの設定値が切り替えられる。より詳細には、自動発注機能が実装されていない複合機10Aの消耗品のみが、情報処理端末50の自動発注機能で発注される。一方、自動発注機能が実装されている複合機10Bの消耗品は、情報処理端末50の自動発注機能で発注されない。これにより、複合機10B及び情報処理端末50で自動発注が重複して実行されるのを抑制できる。
また、上記の実施形態によれば、端末プログラム65は、複合機10から発注完了情報を受信した後にS35で交換条件を満たすと最初に判断した場合に、S39の実行を実行しない。これにより、複合機10を通じて消耗品が発注された後に、情報処理端末50による自動発注が重複して実行されることが抑制される。なお、発注完了情報は、発注したインクカートリッジの個数nを示す個数情報を含んでもよい。そして、端末プログラム65は、複合機10から発注完了情報を受信した後にS35で交換条件を満たすと判断しても、S39の処理をn回キャンセルしてもよい。
また、上記の実施形態に係る端末プログラム65には、自動発注機能のみならず、手動発注機能も実装されている。すなわち、複合機10の将来の稼働状況を予測したユーザは、発注アイコン131B、C、M、Yを通じて、所望のタイミングでインクカートリッジを発注することができる。また、発注アイコン131B、C、M、Yの表示態様が表示情報に従って切り替えられる。これにより、手動発注すべきでないインクカートリッジ(例えば、表示情報=“グレー”)と、手動発注すべきインクカートリッジ(例えば、表示情報=“強調”)とを、ユーザに適切に認識させることができる。
また、上記の実施形態によれば、自動発注機能が実装されている複合機10Bのインクカートリッジを、端末プログラム65の手動発注機能で発注しようとする場合、当該インクカートリッジが重複して発注される可能性が確認画面を通じてユーザに報知される。さらに、手動発注機能の実行を確認画面を通じてユーザが指示した場合に、発注抑制情報が複合機10Bに送信される。これらにより、情報処理端末50による手動発注と、複合機10による自動発注とが重複して実行されることが抑制される。
また、上記の実施形態によれば、ユーザが購入したインクカートリッジの個数が問合せ画面を通じて入力された場合に、当該個数を示す個数情報を含む発注抑制情報が複合機10に送信される。これにより、例えば、複合機10及び情報処理端末50の発注機能を利用せずに(例えば、量販店で)ユーザが消耗品を購入した場合に、複合機10の自動発注機能を一時的に停止させることができる。すなわち、複合機10は、発注抑制情報の個数情報で示される個数の自動発注を停止すればよい。
なお、S37で自動発注フラグに第2値“OFF”が設定されている場合の処理は、上記の実施形態の例に限定されない。他の例として、端末プログラム65は、インク残量が下限値未満であり且つ自動発注フラグに第2値“OFF”が設定されていると判断したことに応じて(S35:Low&S37:OFF)、複合機10がサーバ80と通信可能か否かを判断してもよい。より詳細には、端末プログラム65は、サーバ80と通信可能か否かを複合機10に問い合わせればよい。この処理は、第3判断処理の一例である。そして、端末プログラム65は、複合機10がサーバ80と通信不能だと判断したことに応じて、S39〜S41の処理を実行してもよい。
一方、複合機10Aの装置プログラム35は、例えば、情報処理端末50から問合せを受けたことに応じて、ICMP(Internet Control Message Protocolの略)に従ったエコーリクエストをサーバ80に送信すればよい。そして、装置プログラム35は、サーバ80からエコーリプライを受信したことに応じて、サーバ80と通信可能であると応答すればよい。一方、装置プログラム35は、サーバ80からエコーリプライを受信しないことに応じて、サーバ80と通信不能であると応答すればよい。
上記構成によれば、自動発注フラグに第2値“OFF”が設定されていたとしても、複合機10による自動発注が一時的に実行できない場合に、情報処理端末50による自動発注が実行される。これにより、消耗品切れに起因する複合機10の稼働率の低下を抑制することができる。
また、第1発送要求情報及び第2発送要求情報は、消耗品の発送をサーバ80に積極的に要求するものではなく、複合機10の消耗品の状態をサーバ80に通知するものであってもよい。すなわち、第1発送要求情報及び第2発送要求情報は、直前に複合機10から受信した消耗品情報をさらに含んでもよい。そして、サーバ80は、消耗品情報で示される消耗品の状態が交換条件を満たすか否かを判断し、交換条件を満たすと判断したことに応じて消耗品を発送する手続を開始してもよい。
また、上記の実施形態では、インクカートリッジを消耗品の一例として説明したが、消耗品の具体例はインクカートリッジに限定されない。例えば、プリント動作に用いられる消耗品の他の例として、トナーが貯留されたトナーカートリッジ、ドラムが収容されたドラムカートリッジ等が挙げられる。また、スキャン動作に用いられる消耗品の他の例として、原稿を搬送するローラ等が挙げられる。すなわち、本実施形態に係る消耗品は、複合機10の動作に伴って徐々に損耗し、損耗が進むと複合機10が動作を実行できなくなるあらゆる物が該当する。
そして、S35における交換条件は、消耗品によって異なる。一例として、消耗品がトナーカートリッジである場合の交換条件は、例えば、当該トナーカートリッジに貯留されたトナーの残量が閾値未満になったことである。他の例として、消耗品がドラムカートリッジである場合の交換条件は、例えば、プリント動作におけるプリント枚数が閾値以上になったことである。さらに他の例として、消耗品がローラである場合の交換条件は、例えば、当該ローラの回転回数が閾値以上になったことである。
また、上記の実施形態の複合機10及び情報処理端末50において、メモリ32、62に記憶された各種プログラムがCPU31、61によって実行されることによって、本発明のコントローラが実行する各処理が実現される例を説明した。しかしながら、コントローラの構成はこれに限定されず、その一部又は全部を集積回路等のハードウェアで実現してもよい。
さらに、本発明は、複合機10及び情報処理端末50として実現できるだけでなく、複合機10及び情報処理端末50に処理を実行させるプログラムとして実現してもよい。そして、当該プログラムは、non−transitoryな記録媒体に記録されて提供されてもよい。non−transitoryな記録媒体は、CD−ROM、DVD−ROM等の他、通信ネットワークを通じて複合機10及び情報処理端末50に接続可能なサーバに搭載されたメモリを含んでもよい。そして、サーバのメモリに記憶されたプログラムは、当該プログラムを示す情報或いは信号として、インターネット101等の通信ネットワークを通じて配信されてもよい。