以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成については、同じ符号を付して説明する。
<<実施形態1>>
<システム構成>
図1は、情報処理システムの全体の構成を示す構成図である。情報処理システムは、MFP100と、サービス管理サーバ200と、サービス提供サーバ群400と、通信ネットワーク300とを有する。サービス提供サーバ群400は、各サービスを提供するサービス提供サーバを総称したものである。図1の例では、サービス提供サーバ群400は、サービスAを提供するサービスA提供サーバ420、サービスBを提供するサービスB提供サーバ430、およびサービスCを提供するサービスC提供サーバ440を有する。
<システムの概要>
本システムで行われる処理の概要を説明する。まず、本システムによって提供されるサービスの例を説明する。サービスの例としては、MFP100におけるユーザの使用情報および履歴情報などのログ情報に応じてユーザにポイントを付与するサービスが挙げられる。ログ情報は、より詳細には、エラー発生状況、印刷回数、印刷枚数等、MFP100で発生した事象を記憶した情報である。
他のサービスの例として、MFP100の状態を示すステータス情報に応じたサービスが挙げられる。例えばインクおよびトナーなどのMFP100の消耗品の自動配送サービスが挙げられる。自動配送サービスでは、消耗品の残量が一定レベル以下になった場合に、消耗品の発注および配送が自動的に行われる。この場合、ステータス情報は、消耗品を識別する識別情報および対応する消耗品の残量を示す情報となる。
他のサービスの例として、コンテンツ印刷サービスが挙げられる。コンテンツ印刷サービスでは、ユーザの写真等のコンテンツまたはサービス提供サーバが提供するぬり絵テンプレート等コンテンツが、MFP100で印刷される。この場合、ステータス情報は、MFP100の状態および印刷結果を示す情報となる。
これらのログ情報およびステータス情報は、MFP100のデバイスに関する状態を示す情報と言える。あるいは、ユーザがMFP100を使用している状態に関する情報とも言える。これらを総称して、デバイス提供情報と呼ぶ。以下では、デバイス提供情報を、単にデバイス情報と呼ぶ。上述したサービスは一例に過ぎず、これらに限定されるものではない。MFP100のデバイス情報をサービス提供サーバが使用するサービスであればよい。また、デバイス情報も上述した例に限られない。
なお、図1では、MFP100、サービス管理サーバ200、およびサービス提供サーバ群400は、通信ネットワーク300を介して接続されている図を示している。ただし、本実施形態では、MFP100は、サービス管理サーバ200との間で情報の送受信を行う。サービス提供サーバ群400の各サービス提供サーバは、サービス管理サーバ200との間で情報の送受信を行う。即ち、MFP100は、サービス提供サーバ群400の各サービス提供サーバとの間で直接的に情報の送受信を行う形態ではない。また、ネットワーク300は具体的にはインターネットである。例えば、MFP100は、外部のアクセスポイントを介して無線LANに接続され、さらに外部のアクセスポイントが備えるルータの機能により(つまり、外部のアクセスポイントが無線LANルータの場合)、インターネットに接続される。よって、MFP100とサービス管理サーバ200とはインターネットを介して接続される。
本実施形態では、サービス管理サーバ200を設けることで、例えば、各種のサービスで必要なMFP100の情報をサービス管理サーバ200で集約することができる。そして、サービス管理サーバ200が、各種のサービスを提供するサービス提供サーバとの間で情報のやり取りを行うことで、MFP100がサービス提供サーバとの間で直接情報のやり取りをせずに済む。
上述したようなサービスを提供するには、まず、ユーザから許諾を得る必要がある。MFP100のログ情報およびステータス情報などのデバイス情報を外部に提供することになるからである。さらに、デバイス情報の外部への提供の許諾の他に、別途、ユーザとサービス提供サーバとの間で、例えばWebページなどを通じてサービスの利用登録が行われる。これらの一連の処理は、一般に、サービスごとに必要となる処理である。
本実施形態では、サービスを利用するに際して必要な工程を2段階に分割する。1段階目は、外部へデバイス情報を送信することについての許諾をユーザから得る工程である。つまり、全サービスに共通する許諾として、外部へデバイス情報を送信することについての許諾を得る。このとき、ユーザからは、全サービス共通の許諾を得ることが行われる。2段階目は、各サービス固有の登録を行う工程である。
本実施形態では、MFP100からサービス管理サーバ200に送信する情報を2段階に分けて送信する。1段階目は、外部へのデバイス情報の送信の許諾をユーザから得ることを条件にMFP100がログ情報を送信する工程である。本実施形態では、ユーザからは、全サービス共通の許諾を得ることが行われる。この共通の許諾設定がされていることを条件にログ情報が送信される。その後、サービス管理サーバ200との間でデバイス(MFP100)の登録処理が行われる。2段階目は、サービス管理サーバ200から受信する通知内容に応じてMFP100がサービス管理サーバ200にステータス情報を送信する工程である。サービス管理サーバ200からの通知は、デバイス(MFP100)の登録処理の応答、ステータス情報の送信が可能かの問い合わせに対する応答、またはステータス情報を送信したことに対する応答として受信される。
前述したように、MFP100からサービス管理サーバ200に送信されるデバイス情報には、ログ情報およびステータス情報が含まれる。このうち、ログ情報は、サービス提供サーバのサービスの利用登録に関わらず、活用される情報である。一方、ステータス情報は、サービス提供サーバのサービスの利用登録が行われた場合に活用される情報である。本実施形態では、デバイス情報の外部への提供に関する共通の許諾状態を示す情報(以下、「許諾状態情報」という)をMFP100で管理する。そして、許諾状態情報が許諾設定を示す値である場合、まずログ情報がMFP100からサービス管理サーバ200に送信される。一方、ステータス情報は、サービス管理サーバ200からの通知内容がステータス情報の送信が「可」であることを示す場合に、MFP100からサービス管理サーバ200に送信される。例えば、サービス管理サーバ200において、MFP100を利用するユーザとサービス提供サーバとの間でのサービスの利用登録が確認できた場合に、サービス管理サーバ200がMFP100に送信「可」の情報を通知する。MFP100は、この通知に応じて、ステータス情報の送信を開始する。このような処理によれば、MFP100が不必要な情報を送信することを防止することができる。
サービス管理サーバ200から、サービス提供サーバ群400に含まれる各サービス提供サーバへの情報の送信は、各サービスの利用条件が満たされたときに行われる。利用条件としては、例えば、ユーザと各サービス提供サーバとの間でサービス利用の登録処理が行われることが挙げられる。サービスの利用条件が満たされると、各サービス提供サーバは、サービス管理サーバ200からサービスを提供するのに必要な情報(デバイス情報の一部)を受け取り、サービスの提供を行う。各通信については、HTTPやXMPPなど通した制御が行われる。なお、プロトコルについては他のプロトコルを用いてよい。
<ブロック図>
図2は、本実施形態におけるMFP100の概略構成例を示すブロック図である。MFP100は、情報処理装置の一種である。また、MFP100は、電子機器の一種である。本実施形態のMFP100は、ログ情報およびステータス情報を含むデバイス情報の生成、記憶、および、送信などの情報処理機能を備える。また、後述の記録制御部113および記録部114によって、記録媒体に画像を形成する画像形成機能を備える。
MFP100は、CPU101、ROM102、RAM103、画像メモリ104、データ変換部105、読取制御部106、読取部107、操作表示部108、LCD109、通信制御部110、および解像度変換部111を備える。さらに、符号復号化部112、記録制御部113、記録部114、USBファンクション制御部115、USBホスト制御部116、およびバス117を備える。
CPU101は、システム制御部であり、MFP100の全体を制御する。ROM102は、CPU101が実行する制御プログラムやデータテーブル、組み込みオペレーティングシステム(OS)などの固定データを格納する不揮発性メモリである。本実施形態では、ROM102に格納されている各制御プログラムは、ROM102に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理などのソフトウエア実行制御が行われる。ROM102には、デバイス情報を外部へ提供するかを示す許諾状態を示す情報が記憶される。RAM103は、バックアップ電源を必要とするSRAM(Static Random Access Memory)などで構成され、不図示のデータバックアップ用の1次電池によってRAM103への給電が保障されている。RAM103には、プログラム制御変数などが格納される。画像メモリ104は、DRAM(Dynamic Random Access Memory)などで構成され、画像データを蓄積することができる。また、画像メモリ104の一部の領域は、ソフトウエア処理の実行のための作業領域として確保されている。データ変換部105は、ページ記述言語(PDL:Page Description Language)の解析や、キャラクタデータのCG(Computer Graphics)展開など、画像データの変換を行うことができる。
読取部107は、CISイメージセンサによって原稿を光学的に読み取り、電気的な画像信号に変換する。読取制御部106は、この画像信号に、2値化処理や中間調処理などの各種画像処理を施し、高精細な画像データを出力する。なお、原稿を光学的に読み取る手法は、固定されているCISイメージセンサで原稿を読み取るシート読取制御方式、および原稿台に固定されている原稿を移動するCISイメージセンサで読み取るブック読取制御方式のいずれでもよい。
操作表示部108は、数値入力キー、モード設定キー、決定キー、取り消しキーなど必要最低限のキーと、LED(発光ダイオード)や7セグメント表示部などとから構成される。上記の各種キーは、LCD109上に表示されるいわゆるソフトキーで実現され、ユーザからの操作を受け付けることができる。LCD109は、一定時間ユーザの操作が行われなかった場合、消費電力を低減させるため、LCD109のバックライトをOFFに切り替える。
通信制御部110は、MFP100と通信ネットワーク300との通信を制御し、インターネットサービスプロバイダへの接続や、サービス管理サーバ200との間における各種データの通信を行う。また、通信制御部110は、MFP100がインターネットに接続されているのか、LANのみに接続されているのかを判定することができる。なお、通信制御部110と通信ネットワーク300との接続は、HTTPやXMPPなど公知の方法によるものとする。解像度変換部111は、ミリ系の画像データとインチ系の画像データとの相互変換などの解像度変換処理を行う。なお、解像度変換部111は、画像データの拡大縮小処理も実行することができる。符号復号化部112は、MFP100で扱われる画像データ(非圧縮、MH、MR、MMR、JBIG、JPEGなど)に符号復号化処理を施したり、拡大縮小処理を施したりする。記録制御部113は、印刷される画像データに対し、スムージング処理や記録濃度補正処理、色補正などの各種画像処理を施すことにより、高精細な画像データに変換し、記録部114に出力する。また、記録制御部113は、定期的に記録部114の状態情報データを取得する役割も果たす。記録部114は、レーザビームプリンタやインクジェットプリンタなどによって構成され、記録制御部113で生成された画像データを用紙などの記録媒体に印刷する。
USBファンクション制御部115は、USB通信規格に従ってプロトコル制御を行う。USBホスト制御部116は、USB通信規格で定められたプロトコルで通信を行うための制御部である。このUSB通信規格は、双方向の高速データ通信のための規格であり、このUSB通信規格によれば1台のホスト(マスター)に対し、複数のハブまたはファンクション(スレーブ)を接続可能な旨が定められている。つまり、USBホスト制御部116は、USB通信におけるホストの機能を提供する。読取部107、LCD109以外の構成は、バス117を介して相互に接続されている。
図3は、本実施形態におけるサービス管理サーバ200の概略構成例を示すブロック図である。サービス管理サーバ200は、情報処理装置であり、CPU201、ROM202、RAM203、内部記憶装置204、外部記憶装置205、操作部207、表示部208、および通信部209を備える。
CPU201は、ROM202、RAM203、内部記憶装置204、または、外部記憶媒体206から外部記憶装置205に読み出されたプログラムに従ってサービス管理サーバ200全体の動作を制御する。ROM202は、CPU201の制御プログラムなどを格納する。RAM203は、一時的にプログラムや各種データを記憶し、サービス管理サーバ200の処理を高速に動作させる。内部記憶装置204には、オペレーティングシステム、各種アプリケーションプログラム、および各種データなどが格納される。また、内部記憶装置204には、MFP100から送られるデバイス情報(ログ情報及びステータス情報)が格納される。デバイス情報については後述する。また、内部記憶装置204には、各種制御命令やデータの送受信を行うためのアプリケーションソフトなどがインストールされている。操作部207は、例えばキーボードやマウスなどの入力装置であり、サービス管理サーバ200のオペレータから指示入力を受け付ける。表示部208は、オペレータに対して各種表示を行う。通信部209は、通信ネットワーク300に接続され、インターネットサービスプロバイダへの接続や、MFP100およびサービス提供サーバ群400に含まれる各サービス提供サーバとの間における各種データの通信を行う。なお、通信ネットワーク300への接続は、HTTPやXMPPなど公知の方法によるものとする。
図4は、本実施形態におけるサービス提供サーバ群400に含まれる各サービス提供サーバの概略構成例を示すブロック図である。具体的には、サービスA提供サーバ420、サービスB提供サーバ430、およびサービスC提供サーバ440の構成例を示す図である。各サービス提供サーバは、CPU401、ROM402、RAM403、内部記憶装置404、外部記憶装置405、操作部407、表示部408、および通信部409を備える。
内部記憶装置404及び通信部409以外の構成は、図3のサービス管理サーバ200の構成と同様のため、説明を省略する。内部記憶装置404には、オペレーティングシステム、各種アプリケーションプログラム、および各種データなどが格納される。また、内部記憶装置404には、サービス管理サーバ200に対する各種制御命令やデータの送受信を行うためのアプリケーションソフトなどがインストールされている。通信部409は、通信ネットワーク300に接続され、インターネットサービスプロバイダへの接続やサービス管理サーバ200との間における各種データの通信を行う。
<システムの機能の説明>
図5は、本実施形態におけるMFP100、サービス管理サーバ200、およびサービス提供サーバ群400の各サービス提供サーバを含めたシステム全体の関係性を示した図である。MFP100およびサービス管理サーバ200には、機能ブロック図も含めている。
MFP100は、許諾設定管理部130、処理部140、通知部150、および管理サーバ登録管理部160を備えている。処理部140は、管理サーバ登録処理部141とデバイス情報送信部142とを含んでいる。デバイス情報送信部142は、ログ情報送信部143とステータス情報送信部144とを含んでいる。MFP100のCPU101は、ROM102に格納されているプログラムをRAM103に読み出し、実行することで、図5に示す各部として機能する。
許諾設定管理部130は、デバイス情報を送信することをユーザが許諾したかを示す許諾状態情報を管理可能である。許諾設定管理部130は、許諾状態情報を記憶する不揮発メモリを備えている。許諾設定管理部130は、許諾状態情報を、「0:未設定」、「1:許諾設定」、および「2:許諾解除」の3値で管理している。デバイス情報は、前述したように、例えばログ情報およびMFP100のステータス情報を含むものである。許諾状態情報は、サービス提供サーバ群400の各サービス提供サーバが提供するサービスにおいて共通の許諾状態情報である。許諾設定管理部130は、通信ネットワーク300における通信が有効でない場合、即ち、オフライン状態の場合であったとしても許諾状態情報を管理することができる。
処理部140は、許諾設定管理部130で管理されている共通の許諾状態情報が許諾設定を示す場合、サービス管理サーバ200にデバイス情報を送信するための処理をする。デバイス情報送信部142は、デバイス情報をサービス管理サーバ200に送信する機能を有する。本実施形態においては、デバイス情報送信部142は、2段階で情報を送信するため、ログ情報送信部143とステータス情報送信部144とを含んでいる。ログ情報送信部143は、許諾設定管理部130で管理されている共通の許諾状態情報が許諾設定を示す場合に送信される第1情報(ログ情報)を送信する第1情報送信部である。ログ情報送信部143は、許諾設定管理部130で管理されている許諾状態情報が「1:許諾設定」を示すことを条件に、ログ情報をサービス管理サーバ200に任意のタイミングで、定期的または不定期に送信する。ステータス情報送信部144は、共通の許諾設定がされており、かつ、ステータス情報の送信が可能なことをサービス管理サーバ200から通知された場合に送信される第2情報(ステータス情報)を送信する第2情報送信部である。
管理サーバ登録処理部141は、許諾設定管理部130で管理されている許諾状態情報が許諾設定を示す場合、即ち、ユーザが共通の許諾設定を行った場合、MFP100をサービス管理サーバ200に登録する処理を行う。管理サーバ登録処理部141は、サービス管理サーバ200へ登録要求を送信し、その応答の通知を受信する。
管理サーバ登録管理部160は、サービス管理サーバ200におけるMFP100の登録状態を管理する。管理サーバ登録管理部160は、管理サーバ登録処理部141で受信した通知の内容に応じて、登録状態を変更する。管理サーバ登録管理部160は、登録状態を記憶する不揮発メモリを備えている。管理サーバ登録管理部160は、登録状態を、「0:未登録」、「1:登録済(送信否)」、「2:登録済(送信可)」、および「3:削除未完了」の4値で管理している。管理サーバ登録管理部160は、サービス管理サーバ200から登録完了した通知を受信した際にサービス管理サーバ200から取得する認証情報も不揮発メモリに記憶する。なお、本実施形態では、登録状態を4値で管理する例を示しているが、これに限られない。例えば、管理サーバ登録管理部160は、登録状態と送信可否とを分けて管理してもよい。また、登録済である場合には、送信可である、とみなしてもよい。これらはサービスの特性に応じて適宜設計することができる。
登録要求に応じて受信したサービス管理サーバ200から受信した登録完了通知には、ステータス情報の送信の可否が含まれる。管理サーバ登録管理部160は、受信した通知がステータス情報の送信が「可」であることを示す場合には、登録状態を「2:登録済(送信可)」として管理する。管理サーバ登録管理部160は、受信した通知がステータス情報の送信が「否」であることを示す場合には、登録状態を「1:登録済(送信否)」として管理する。
ステータス情報送信部144は、管理サーバ登録管理部160の登録状態が「2:登録済(送信可)」であること、および、許諾設定管理部130の許諾状態情報が「1:許諾設定」を示すことを条件に、ステータス情報をサービス管理サーバ200に送信する。ステータス情報送信部144は、条件が満たされた以降は、任意のタイミングで、定期的または不定期にステータス情報をサービス管理サーバ200に送信する。
なお、本実施形態では、サービス管理サーバ200において、ログ情報およびステータス情報の収集が行われる形態を示したが、ログ情報の収集およびステータス情報の収集は、別のサーバで行われてもよい。また、ログ情報の収集とステータス情報の収集とが別々のデータ収集サーバで行われてもよい。
通知部150は、ユーザに許諾設定を促す通知をする。例えば、通知部150は、操作表示部108に許諾設定を促す通知を表示する。なお、通知部150は、許諾設定管理部130で管理されている共通の許諾状態情報が許諾設定を示す値である場合には、再度の通知は行わない。例えば、第1のサービスを利用するに際して、ユーザが許諾状態情報を、許諾設定を示す値に変更するための入力をしている場合、第1のサービスとは異なる第2のサービスの利用に際して、再度の許諾設定の入力処理は不要である。従って、許諾設定管理部130で管理されている許諾状態情報が許諾設定を示す場合には、通知部150は、許諾設定を促す通知をしない。
このように、MFP100は、デバイス情報をサービス管理サーバ200に送信するデバイス送信機能を有する。デバイス送信機能は、許諾設定管理部130で管理されている許諾状態情報および管理サーバ登録管理部160で管理されている登録状態に従って、機能の有効化・無効化が切り替えられる。デバイス送信機能の有効化は、2段階で行われる。まず、共通許諾情報が許諾設定を示すことを条件に送信機能が有効化された場合には、第1情報(ログ情報)の送信機能が有効化される。その後、第2情報(ステータス情報)の送信が「可」であることが通知されて登録状態が更新されると、第2情報(ステータス情報)の送信機能が有効化される。第1情報および第2情報を含むデバイス情報は、各サービスが必要とする情報を全て含んだデバイス情報である。
共通の許諾状態情報は、MFP100内部の許諾設定管理部130で管理されており、サービス管理サーバ200などと通信せずに、ユーザが許諾設定を入力することができる。即ち、本実施形態では、共通の許諾状態情報をオフラインで設定可能である。共通の許諾状態情報は、例えば、MFP100の操作表示部108を通じてユーザが入力することで設定変更されることが可能である。あるいは、MFP100と通信可能なPCアプリまたはスマートフォンアプリを通じて設定変更が可能である。
次に、サービス管理サーバ200を説明する。サービス管理サーバ200は、登録デバイス管理部220、デバイス情報収集部230、サービス連携管理部240、および情報転送部250を備えている。デバイス情報収集部230は、ログ情報収集部231とステータス情報収集部232とを含む。サービス管理サーバ200のCPU201は、ROM202に記憶されているプログラムをRAM203に読み出し、実行することで、図5に示す各部として機能する。サービス管理サーバ200は、デバイス情報に含まれる情報の少なくとも一部を、サービスを提供する各サービス提供サーバに送信可能に構成されている。
登録デバイス管理部220は、サービス管理サーバ200に登録されたMFP100を管理する。例えば、登録デバイス管理部220は、MFP100の管理サーバ登録処理部141との間で登録処理を行ったMFP100に所定の識別情報を付して管理する。また、登録デバイス管理部220は、MFP100に登録完了を通知する際に、サービス提供サーバとの間でサービスの利用登録がされているかを判定する。例えば、サービス連携管理部240で管理されているリストを確認し、MFP100がリストに含まれている場合、サービスの利用登録がされていることを検出する。サービスの利用登録がされている場合、登録デバイス管理部220は、登録要求をしたMFP100への応答として、登録が完了したことと併せて、ステータス情報の送信が「可」であることを通知する。サービスの利用登録がされていない場合、登録デバイス管理部220は、登録要求をしたMFP100への応答として、登録が完了したことと併せて、ステータス情報の送信が「否」であることを通知する。また、登録デバイス管理部220は、MFP100からステータス情報の送信の可否の問い合わせを受信した場合にも同様に、サービスの利用登録がされているか否かに応じて、ステータス情報の送信の可否をMFP100に通知する。また、登録デバイス管理部220は、サービスの利用が解除され、利用中のサービスがないことを検出した場合、ステータス情報を送信したMFP100への応答として、ステータス情報の送信が「否」であることを示す通知をMFP100に送信する。
デバイス情報収集部230は、登録デバイス管理部220で管理されているMFP100から送信されたデバイス情報を収集する。即ち、ログ情報収集部231は、ログ情報を収集し、ステータス情報収集部232は、ステータス情報を収集する。デバイス情報は、内部記憶装置204、外部記憶装置205、または外部記憶媒体206に記憶される。
サービス連携管理部240は、サービス提供サーバ群400の各サービス提供サーバとサービス管理サーバ200とを連携する。本実施形態では、ユーザとサービス提供サーバとの間で、サービスの利用に関する利用許諾及び登録処理が行われる。この利用許諾は、前述した共通の許諾設定とは別の許諾である。即ち、個別のサービスの利用許諾に相当する。サービス連携管理部240は、各サービス提供サーバからの利用許諾及び登録処理が行われたデバイス(MFP100)のデバイス識別情報を受信し、各サービスを利用するデバイスリストを更新する。
情報転送部250は、サービス提供サーバ群400の各サービス提供サーバに対して、各サービスに必要なデバイス情報を送信する。本実施形態においては、デバイス情報収集部230で収集されるデバイス情報は、サービス提供サーバ群400の各サービス提供サーバで提供される各サービスで必要な情報を網羅した情報となっている。一方、サービス提供サーバでは、必ずしも全てのデバイス情報を用いるわけではない。そこで、情報転送部250は、デバイス情報のうち、対象とするサービスに必要な情報をサービス提供サーバに転送する。
次に、サービス提供サーバ群400の各サービス提供サーバで提供されるサービスを具体的に説明する。本実施形態では、サービス提供の種類に応じてサービス提供サーバを3タイプのサービス提供サーバに分けている。
サービスA提供サーバ420は、第1のサービスを提供する第1のサービス提供サーバである。第1のサービスは、サービスの提供を受けるための利用登録を行う必要がないサービス不要型サービスである。第1のサービスの例としては、故障・メンテナンスの支援サービスが挙げられる。
サービス管理サーバ200は、MFP100から収集しているデバイス情報のうち、故障およびメンテナンスの支援サービスが必要とする情報のみを、第1のサービスを提供するサービスA提供サーバ420に転送する。ここで転送されるデバイス情報は、MFP100の消耗部品の消耗情報、インク残量情報、デバイスのエラー情報などの故障およびメンテナンス支援に必要な情報を含んだ情報である。
サービスA提供サーバ420は、消耗情報およびエラー情報などから、故障時に原因を特定するためのレポートを、ユーザまたはサービスマンに提供する。また、サービスA提供サーバ420は、故障時期を予測したり、メンテナンスの必要なタイミングを予測したりするなどして、ユーザに対策の提案を提供する。
サービスB提供サーバ430は、第2のサービスを提供する第2のサービス提供サーバである。第2のサービスは、MFP100を通じた処理ではなく、別のルート(例えばPCやスマートフォンで表示するWebページ上)でサービス登録が必要な外部登録型サービスである。この種のサービスでは、サービスの利用許諾および登録処理431を行った結果、サービスに登録したことが、デバイス(MFP100)のデバイス識別情報と共にサービス管理サーバ200に通知される。サービス管理サーバ200では、サービスB提供サーバ430から通知されたデバイス識別情報をサービス管理サーバ200でサービスB登録デバイスリストとして管理する。第2のサービスの例としては、ユーザの使用状況に合わせてポイントを付与するポイントサービスが挙げられる。このケースでは、ユーザは、ポイントサービスを受けるために、Webサイトまたは登録アプリを通じて、ユーザ情報と、自身が使用しているMFP100を識別するデバイス識別情報とをサービスB提供サーバ430に登録する。このとき、ユーザは、サービスB提供サーバ430が提示するサービスBの利用許諾などについても合わせて同意する。登録が完了すると、ポイントサービスを提供するサービスB提供サーバ430は、サービス管理サーバ200に登録完了の通知とデバイス(MFP100)を識別するデバイス識別情報とを送信する。このようにして通知された登録済みデバイスは、サービス管理サーバ200において、サービスB登録デバイスリストに含まれ、管理される。その一方で、前述したように、ユーザは、デバイス情報をサービス管理サーバ200に送信することの許諾設定を行う。なお、許諾設定管理部130で管理されている共通の許諾状態情報が許諾を示す値に設定変更されている場合には、再度の設定の入力は不要である。
サービス管理サーバ200は、MFP100から収集しているデバイス情報のうち、ポイントサービスが必要とする情報のみを、サービスBを提供するサービスB提供サーバ430に転送する。ここで転送されるデバイス情報は、ユーザが実行したジョブ情報および装着されたタンク情報などである。サービスB提供サーバ430は、ユーザが実行したジョブ情報および装着されたタンク情報に応じたポイントをユーザに付与する。ユーザは、付与されたポイントでインクやメディアの購入割引など特典に利用することができる。
以上説明した第1のサービス(サービスA)および第2のサービス(サービスB)は、サービス管理サーバ200が各サービス提供サーバに対し、Push型でサービスに必要な情報の送信を行うタイプのサービスである。即ち、サービス管理サーバ200からサービス提供サーバに定期的にまたは不定期で情報が送信されるタイプのサービスである。これに対して、以下で説明する第3のサービス(サービスC)は、Pull型でサービスに必要な情報の送信を行うタイプのサービスである。即ち、サービス提供サーバの求めに応じてサービス管理サーバ200から情報が送信されるタイプのサービスである。
サービスC提供サーバ440は、第3のサービスを提供する第3のサービス提供サーバである。第3のサービスは、第2のサービスと同様に、MFP100を通じた処理ではなく、別のルートでサービス登録が必要な外部登録型サービスである。ただし、第2のサービスと異なり、第3のサービスでは、サービスの利用許諾および登録処理441を行ったことがサービス管理サーバ200に通知されない。サービスC提供サーバ440は、必要に応じてサービス管理サーバ200に情報を要求し、サービス管理サーバ200は、情報の要求に応じて必要な情報を転送する。このタイプのサービスでは、サービス管理サーバ200がサービスCの登録リストを管理できない。従って、サービス管理サーバ200は、サービスC提供サーバ440からの要求に応答する形で情報を転送することになる。第3のサービス(サービスC)の例としては、他システム(他のサーバ)と連携したインク自動搬送サービスが挙げられる。このケースでは、ユーザは、インク自動搬送システムを提供するシステム上で、ユーザ情報と、自身が使用するMFP100を識別するデバイス識別情報とを登録する。このとき、ユーザは、サービスC提供サーバ440が提示する利用許諾なども合わせて合意する。登録が完了すると、登録が完了したデバイス(MFP100)が、サービスC提供サーバ440で管理される。その一方で、前述したように、ユーザは、デバイス情報をサービス管理サーバ200に送信することの許諾設定を行う。なお、許諾設定管理部130で管理されている共通の許諾状態情報が許諾を示す値に設定変更されている場合には、再度の設定の入力は不要である。
MFP100から送信されるデバイス情報を収集しているサービス管理サーバ200は、サービスC提供サーバ440から、対象デバイスのリストとともにデバイス情報の要求を受信する。サービス管理サーバ200は、この受信した要求に応じて、収集しているデバイス情報のうち、インク自動搬送サービスが必要とする情報のみをサービスC提供サーバ440に転送する。ここで転送されるデバイス情報は、インク残量情報などインク自動搬送サービスに必要な情報である。
なお、外部登録型のサービスにおいて、サービスの提供を受けるには、MFP100で管理されている共通の許諾状態情報が許諾設定を示すことと、各サービス上でのサービス利用許諾および登録との両者が実行されている必要がある。いずれか一方が解除されると、サービスを受けることはできない。
<シーケンス図>
図6および図7は、外部登録Push型であるサービスBのサービスを利用する場合のシーケンス図である。図6では、MFP100とサービス管理サーバ200との間の登録処理に関連するシーケンス図である。図7は、図6の登録処理後に、サービスBの利用登録が行われる処理に関連するシーケンス図である。
図6および図7のシーケンスで示される一連の処理は、MFP100、サービス管理サーバ200、およびサービスB提供サーバ430の各CPUがROMに記憶されているプログラムコードをRAMに展開し実行することにより行われる。あるいはまた、図6におけるステップの一部または全部の機能をASICまたは電子回路等のハードウェアで実現してもよい。なお、各処理の説明における記号「S」は、当該フローチャートにおけるステップであることを意味する。
S601においてMFP100は、ユーザから操作開始の指示を受け付ける。この時点では、MFP100は初期状態であり、「許諾状態:未設定」かつ「登録状態:未登録」となっている。なお、「許諾状態:未設定」の表記は、許諾状態が未設定の状態であることを意味する。登録状態についても同様である。以下、本明細書においても同様である。
S602においてMFP100は、許諾操作のために許諾画面を操作表示部108に表示する。S603においてMFP100は、ユーザによる許諾画面を通じた許諾入力を受け付ける。S604においてMFP100は、「許諾状態:許諾設定」に変更し、操作表示部108に完了画面を表示する。これにより、ユーザは、共通の許諾設定が完了したことを認識する。
「許諾状態:許諾設定」に変更されると、MFP100の管理サーバ登録処理部141は、S605においてサービス管理サーバ200への登録要求を送信する。サービス管理サーバ200は、登録要求に応じて登録処理を開始する。S606においてサービス管理サーバ200は、登録結果をMFP100に送信する。S606の例では、何かの理由によって、登録処理が失敗した例を示している。登録失敗した場合には、MFP100では、「登録状態:未登録」のままとなる。
MFP100は、S605の登録処理と並行して、あるいは、S605の登録処理と前後して、ログ情報をサービス管理サーバ200に送信する。本実施形態では、「許諾状態:許諾設定」に変更されたことを条件に、MFP100からサービス管理サーバ200にログ情報が送信される。図6の例では、登録処理の後に、ログ情報を送信する例を示している。S607においてMFP100は、ログ情報をサービス管理サーバ200に送信する。S608においてMFP100は、ログ情報の送信に対する応答をサービス管理サーバ200から受信する。
図6の例では、S608の時点では、MFP100は、「許諾状態:許諾設定」かつ「登録状態:未登録」の状態である。そこで、MFP100は、S609においてサービス管理サーバ200への登録のリトライを行う。なお、MFP100は、登録完了までリトライを行う。また、登録が完了する前に、「許諾状態:許諾解除」に変更された場合には、MFP100は、登録処理を中止する。図6の例では、このS609の処理で、登録処理が成功したものとする。S610においてサービス管理サーバ200は、登録完了の通知をMFP100に送信する。MFP100は、登録完了の通知に含まれている情報を参照して、管理サーバ登録管理部160の登録状態を変更する。即ち、「登録状態:登録済み(送信否)」か「登録状態:登録済み(送信可)」に変更する。
この時点では、MFP100は、「許諾状態:許諾設定」かつ「登録状態:登録済(送信否または送信可)」である。即ち、「許諾状態:許諾設定」であるので、S611で引き続きログ情報をサービス管理サーバ200に送信し、S612で応答を受信する。
ここで、「登録状態:登録済み(送信可)」である場合には、S613でMFP100は、サービス提供サーバ群400の各サービス提供サーバで利用可能なステータス情報をサービス管理サーバ200に送信する。S614では、その応答を受信する。前述したように、サービス管理サーバ200は、MFP100がサービス提供サーバとの間でサービス利用が登録されているデバイスである場合に、「送信可」であることをMFP100に通知する。なお、図6のS613の例では、ユーザが、他のサービスDを利用登録することに応じて、サービス管理サーバ200が「送信可」であることを通知しているものとする。
ここで、MFP100からサービス管理サーバ200に送信されるデバイス情報には、ログを収集したログ情報と、上位のサービス提供サーバで利用されるステータス情報とが含まれる。「許諾状態:許諾設定」の場合に、デバイス情報を全て送信すると、不要な情報がMFP100からサービス管理サーバ200に送信されることになる。そこで、本実施形態では、上位のサービス提供サーバとの間でサービス利用が可能になった場合に、サービス管理サーバ200からMFP100にステータス情報の送信が「可」であることが通知される。MFP100は、この通知に応じて「登録状態:登録済み(送信可)」に更新する。MFP100は、「許諾状態:許諾設定」かつ「登録状態:登録済み(送信可)」であることを条件として、ステータス情報をサービス管理サーバ200に送信する。このような構成によれば、不要な情報がMFP100からサービス管理サーバ200に送信されてしまうことを防止できる。
また、前述したように、ユーザは、MFP100を介さずに、Webサイトや登録アプリを通じてサービスの利用の登録を行う。従って、MFP100は、サービス提供サーバとユーザとの間でサービスの登録がされたことを判定できない。このため、本実施形態のMFP100は、MFP100のユーザとサービス提供サーバとの間でのサービスの登録の状態を確認できるサービス管理サーバ200からの送信の可否に応じてステータス情報を送信する。これにより、サービス提供サーバで提供されるサービスの登録状態を確認できないMFP100であっても、不要な情報を送信することを防止することができる。
また、ユーザが、サービス提供サーバで提供されているサービスを解約する場合がある。この場合、サービス管理サーバ200には、サービス提供サーバからサービスの登録状態が解除されたことが通知される。これを受けて、サービス管理サーバ200は、ステータス情報の送信を「否」に示す通知をMFP100に送信する。このように、サービス提供サーバが提供するサービスが解除された場合にも、MFP100から不要な情報を送信することを防止できる。
図7は、サービスBを利用登録する処理以降のシーケンス図である。図7の初期状態では、MFP100は、「許諾状態:許諾設定」かつ「登録状態:登録済(送信否)」であるものとする。
S701においてユーザは、端末を通じたサービスBの利用開始の操作を行う。S702においてユーザは、端末を通じたサービスBの利用開始のリクエストをサービスB提供サーバ430に送信する。例えば、ユーザは、ブラウザ機能を持つ一般的な端末を用いてサービスBの利用登録を行うWebページにアクセスする。ユーザからのリクエストを受け付けたサービスB提供サーバ430は、S703においてサービス管理サーバ200にサービスA紐付リクエストを送信する。S704でサービス管理サーバ200は、サービスB提供サーバ430にサービスA紐付レスポンスを送信する。S705でサービスB提供サーバ430は、端末にサービスB利用レスポンスを送信する。S706で端末はサービスB利用開始完了画面を表示し、ユーザは手続きの完了を認識する。
一方、MFP100は、「登録状態:登録済(送信否)」である。この場合、MFP100は、任意のタイミングでサービス管理サーバ200にステータス情報の送信の可否を問い合わせる。MFP100では、サービスの登録状態が分からないからである。そこで、図7の例では、S707でMFP100は、サービス管理サーバ200にステータス情報の送信の可否を問い合わせる。例えば、MFP100の電源がオンになったタイミングや、所定の時間が経過したタイミングや、ユーザ操作に基づくタイミングなど、任意のタイミングで問い合わせが行われる。S708でサービス管理サーバ200は、問い合わせに対する応答をMFP100に送信する。図7の例では、S704でサービスBの登録が行われていることがサービス管理サーバ200で管理されている。従って、S708では、「送信可」を示す応答がサービス管理サーバ200からMFP100に送信される。この応答を受けて、MFP100は、「登録状態:登録済(送信可)」となる。
前述したように、登録状態に関わらず、「許諾状態:許諾設定」であれば、MFP100は、ログ情報を送信する。S709およびS710は、ログ情報の送信とその応答処理である。MFP100は、「登録状態:登録済(送信可)」であることに応じて、S711でステータス情報をサービス管理サーバ200に送信する。S712でMFP100は、サービス管理サーバ200からの応答を受信する。なお、S712に示すようなステータス情報の送信応答においては、サービス管理サーバ200は、ステータス情報の送信可否を示す情報を含めて送ることができる。MFP100は、この応答に応じて登録状態を変更することができる。
S713でサービス管理サーバ200は、サービスB提供サーバ430のサービスBに必要なステータス情報を抽出してサービスB提供サーバ430に転送する。なお、サービスBにおいてログ情報が必要な場合には、ログ情報も併せて転送してもよい。S714でサービス管理サーバ200は、サービスB提供サーバ430から応答を受信する。
図8は、ユーザが許諾状態を変更して、共通の許諾設定が解除される場合のシーケンス図である。S801においてMFP100は、ユーザから許諾解除の操作の開始を受け付ける。S802においてMFP100は、許諾画面を操作表示部108に表示する。S803でMFP100は、ユーザからの許諾解除の入力を受け付ける。これにより、MFP100は、「許諾状態:解除設定」かつ「登録状態:削除未完了」となる。S804でMFP100は、操作表示部108に完了画面を表示する。ユーザは解除完了を認識する。
これまで説明したように、ログ情報およびステータス情報の送信は、少なくとも「許諾状態:許諾設定」であることが条件に行われている。従って、「許諾状態:解除設定」となったので、MFP100は、ログ情報の送信もステータス情報の送信も行わない。なお、サービス管理サーバ200との不整合を防止するため、サービス管理サーバ200との間で登録状態を削除する処理が、以降で行われる。
S805でMFP100は、サービス管理サーバ200に登録削除要求を送信する。図8の例では、何かの理由によりS805の段階では登録削除ができず、S806でサービス管理サーバ200から削除失敗の応答がMFP100に送られる。MFP100は、削除が成功するまでリトライする。S807でMFP100は、再度の登録削除要求をサービス管理サーバ200に送信する。削除に成功するとS808でサービス管理サーバ200は、削除成功した通知をMFP100に送信する。削除成功した通知を受信すると、MFP100は、「許諾状態:解除設定」かつ「登録状態:未登録」となる。なお、その後、再度共通の許諾設定がユーザにより入力された場合には、図6に示す処理に戻り、再度の登録処理が行われることになる。また、削除リトライ中に再度「許諾状態:許諾設定」に変更になった場合には、MFP100は、登録削除が成功した後に、再度の登録処理を行う。
なお、図8に示す削除処理は、共通の許諾設定を解除する場合のシーケンス図である。このような場合には、S807に示すように、サービス管理サーバ200で削除が完了するまで、削除のリトライを行う。サービス管理サーバ200との不整合を防ぐためである。ただし、MFP100全体の初期化処理などのように、初期状態(あるいは所定の状態)にリセットする場合には、装置全体がリセット処理に入るので、登録解除の失敗に応じたリトライ処理は行われない。
このように、本実施形態において、MFP100は、ユーザが共通の許諾状態情報を許諾設定にする指示を入力すると、ログ送信を開始する。また、MFP100は、サービス管理サーバ200からの通知に、ステータス情報の送信が「可」であることが含まれている場合に、サービスで利用されるステータス情報の送信を開始する。また、MFP100は、許諾状態情報が解除設定を示す値に変更されると、ログ送信、ステータス送信を停止するとともに、サービス管理サーバ200の登録デバイス管理部220に対して削除を開始する。そして削除が完了するまで削除をリトライする。
以上説明したように、本実施形態では、MFP100は、デバイス情報を送信する利用許諾をサービス毎に管理せず、共通の許諾状態情報として管理する。このため、ユーザは、外部への情報の提供するための許諾手続きとして、共通の許諾設定を1回入力すればよく、他のサービスの提供を受ける場合に、再度の許諾設定の手続きは不要となる。このため、ユーザがサービスを追加する際の利便性が向上する。
また、本実施形態では、MFP100から送信されるデータを、サービスの利用登録の状況に応じた適切なデータにすることができる。即ち、各サービスに共通の許諾設定を設け、許諾設定がされている場合には、ログ情報を送信する。そして、サービス管理サーバ200から通知されるステータス情報の送信可否に応じてステータス情報を送信する。このように、2段階で情報を送信するように制御することで、不要な情報を送信することを防止することができる。
<<その他の実施形態>>
上述した実施形態では、電子機器の一例として、MFP100を例に挙げて説明したが、これに限られない。ユーザが電子機器を使用している使用状態または使用履歴などを電子機器がサーバに定期的または不定期に送信する形態であれば、いずれの電子機器でもよい。あるいは、電子機器のステータス情報を、電子機器がサーバに定期的または不定期に送信する形態であれば、いずれの電子機器でもよい。上述した実施形態では、MFP100のような比較的大型な装置を例に挙げて説明したが、人間が装着する電子機器(例えば、眼鏡、時計など)でもよい。また、電子機器は、任意の場所に設置されているセンサであてもよい。また、その他の家電(例えば、冷蔵庫、照明、テレビ、掃除機、ホームスピーカー)などでもよい。また、電子機器は、自動車、電車、飛行機、無人航空機などの各種の乗り物に搭載されていてもよい。
さらに、上述した実施形態において、サービス管理サーバ200は1つの情報処理装置から構成されていたが、これに限らない。例えば、複数の情報処理装置が連携してサービス管理サーバ200として機能してもよい。サービス提供サーバ420、430、440も、上述した実施形態ではそれぞれが1つの情報処理装置から構成されていたが、これに限らない。各サービス提供サーバは、複数の情報処理装置から構成されていてもよい。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。