(58)【調査した分野】(Int.Cl.,DB名)
画像形成装置にインストールするアプリケーションの一覧表示と、表示された前記アプリケーションの前記画像形成装置へのダウンロードとを行うためのWebページを送信するアプリストアサーバとネットワークを介して接続する画像形成装置であって、
前記画像形成装置は、
プロッタまたはスキャナを含み、前記プロッタまたは前記スキャナを動作させる第1のオペレーティングシステムを有する本体と、
第2のオペレーティングシステムを有し、前記本体に対する画像形成または画像読み取りの指示の受け付け、及び、少なくとも前記アプリストアサーバへの前記Webページの表示を行うブラウザを表示する操作部と、
を備え、
前記ブラウザは、
前記第2のオペレーティングシステムの下で動作するとともに、
前記第2のオペレーティングシステムを介して前記画像形成装置を特定する機器特定情報を取得して前記アプリストアサーバに送信し、
前記送信された前記機器特定情報と、前記機器特定情報に対応する前記画像形成装置が有する機能の情報とに基づいて特定されるアプリケーションであって、前記機器特定情報を有する前記画像形成装置で利用可能なアプリケーションの情報を含む前記Webページを、前記アプリストアサーバから受信し、
受信した前記Webページを、前記画像形成装置で利用可能なアプリケーションの一覧画面として、前記操作部に表示し、
前記一覧画面に含むアプリケーションは、
前記操作部において前記第2のオペレーティングシステムの下で第2のプロセッサにより動作するアプリケーションであって、前記操作部にインストールされるアプリケーションと、前記アプリストアサーバとは異なる外部サーバに配置したアプリケーションを前記操作部のブラウザアプリを用いて利用するWebアプリケーションと、を含む、
画像形成装置。
前記一覧画面に表示された1以上のアプリケーションのうち、ユーザによって選択されたアプリケーションを、前記画像形成装置で利用するための制御を行うアプリケーション利用制御部をさらに備え、
前記アプリケーション利用制御部は、ユーザによって選択されたアプリケーションが、ネットワークを介して利用するアプリケーションを示すWebアプリである場合、当該Webアプリを保持するアプリケーションサーバとの間で当該Webアプリを利用するための処理を実行する、
請求項1または2に記載の画像形成装置。
前記画像形成装置が有する機能の情報は、前記画像形成装置に搭載可能な機能を識別する機能識別情報ごとに、機能の有無または機能の種類を示す値を対応付けた情報である、
請求項1乃至3のうちの何れか1項に記載の画像形成装置。
【発明を実施するための形態】
【0008】
以下、添付図面を参照しながら、本発明に係る情報処理システム、情報処理装置、情報処理方法およびプログラムの実施形態を詳細に説明する。以下では、本発明に係る機器の一例として、画像形成装置の一態様である複合機(MFP:Multifunction Peripheral)を例に挙げて説明するが、これに限られるものではない。なお、複合機とは、コピー機能、スキャナ機能、プリント機能、ファクス機能などの複数の異なる機能を有する装置である。
【0009】
図1は、本実施形態の情報処理システム100の概略構成の一例を示す図である。
図1に示すように、情報処理システム100は、MFP1と、アプリストアサーバ2と、翻訳サーバ4と、機器管理サーバ5を備え、これらはネットワーク8を介して相互に接続される。
【0010】
アプリストアサーバ2は、MFP1が利用可能なアプリケーションの一覧を表示し、各アプリケーションの利用契約やダウンロードをするためのWebページ、言い換えれば、MFP1が利用可能なアプリケーションを提供するためのWebページ(以下の説明では、「アプリストア6」と称する)を、MFP1に対して提供する。より具体的な内容については後述する。この例では、アプリストア6は請求項の「アプリケーション一覧画面」に対応している。また、この例では、アプリストアサーバ2からアプリストア6を取得してMFP1に表示するためのアプリケーション(以下の説明では、「ストア起動アプリ3」と称する)、および、Webブラウザの機能を提供するためのアプリケーション(以下の説明では、「ブラウザアプリ2b」と称する)の各々が、MFP1にインストールされている。MFP1の具体的な内容については後述する。
【0011】
翻訳サーバ4は、アプリストア6で提供されているアプリケーションの一つである翻訳アプリを提供する。より具体的な内容については後述する。
【0012】
機器管理サ−バ5は、情報処理システム100に含まれる機器ごとに、当該機器を一意に特定する機器特定情報と、当該機器が有する機能を示す第1の機能情報とを対応付けて(紐付けて)管理する。より具体的な内容については後述する。なお、説明の便宜上、
図1では、情報処理システム100に含まれる機器として1台のMFP1のみを例示しているが、これに限られるものではなく、情報処理システム100に含まれる機器の台数および種類は任意である。
【0013】
次に、
図2を用いて、MFP1のハードウェア構成について説明する。
図2に示すように、MFP1は、コピー機能、スキャナ機能、ファクス機能、プリンタ機能などの各種の機能を実現可能な本体10と、ユーザの操作を受け付ける操作部20とを備える。なお、ユーザの操作を受け付けるとは、ユーザの操作に応じて入力される情報(画面の座標値を示す信号等を含む)を受け付けることを含む概念である。本体10と操作部20は、専用の通信路30を介して相互に通信可能に接続されている。通信路30は、例えばUSB(Universal Serial Bus)規格のものを用いることもできるが、有線か無線かを問わず任意の規格のものであってよい。
【0014】
なお、本体10は、操作部20で受け付けた操作に応じた動作を行うことができる。また、本体10は、クライアントPC(パーソナルコンピュータ)等の外部装置とも通信可能であり、外部装置から受信した指示に応じた動作を行うこともできる。
【0015】
まず、本体10のハードウェア構成について説明する。
図2に示すように、本体10は、CPU11と、ROM12と、RAM13と、HDD(ハードディスクドライブ)14と、通信I/F(インタフェース)15と、接続I/F16と、エンジン部17とを備え、これらがシステムバス18を介して相互に接続されている。
【0016】
CPU11は、本体10の動作を統括的に制御する。CPU11は、RAM13をワークエリア(作業領域)としてROM12またはHDD14等に格納されたプログラムを実行することで、本体10全体の動作を制御し、上述したコピー機能、スキャナ機能、ファクス機能、プリンタ機能などの各種機能を実現する。
【0017】
通信I/F15は、ネットワーク8と接続するためのインタフェースである。接続I/F16は、通信路30を介して操作部20と通信するためのインタフェースである。
【0018】
エンジン部17は、コピー機能、スキャナ機能、ファクス機能、および、プリンタ機能を実現させるための、汎用的な情報処理及び通信以外の処理を行うハードウェアである。例えば、原稿の画像をスキャンして読み取るスキャナ(画像読取部)、用紙等のシート材への印刷を行うプロッタ(画像形成部)、ファクス通信を行うファクス部などを備えている。更に、印刷済みシート材を仕分けるフィニッシャや、原稿を自動給送するADF(自動原稿給送装置)のような特定のオプションを備えることもできる。
【0019】
次に、操作部20のハードウェア構成について説明する。
図2に示すように、操作部20は、CPU21と、ROM22と、RAM23と、フラッシュメモリ24と、通信I/F25と、接続I/F26と、操作パネル27とを備え、これらがシステムバス28を介して相互に接続されている。
【0020】
CPU21は、操作部20の動作を統括的に制御する。CPU21は、RAM23をワークエリア(作業領域)としてROM22またはフラッシュメモリ24等に格納されたプログラムを実行することで、操作部20全体の動作を制御し、ユーザから受け付けた入力に応じた情報(画像)の表示などの後述する各種機能を実現する。
【0021】
通信I/F25は、ネットワーク8と接続するためのインタフェースである。接続I/F26は、通信路30を介して本体10と通信するためのインタフェースである。
【0022】
操作パネル27は、ユーザの操作に応じた各種の入力を受け付けるとともに、各種の情報(例えば受け付けた操作に応じた情報、MFP1の動作状況を示す情報、設定状態などを示す情報など)を表示する。この例では、操作パネル27は、タッチパネル機能を搭載した液晶表示装置(LCD)で構成されるが、これに限られるものではない。例えばタッチパネル機能が搭載された有機EL表示装置で構成されてもよい。さらに、これに加えて又はこれに代えて、ハードウェアキー等の操作部やランプ等の表示部を設けることもできる。
【0023】
次に、MFP1のソフトウェア構成について説明する。
図3は、MFP1のソフトウェア構成の一例を示す模式図である。
図3に示すように、本体10は、アプリ層101と、サービス層102と、OS層103とを有する。アプリ層101、サービス層102、および、OS層103の実体は、ROM12やHDD14等に格納されている各種ソフトウェアである。CPU11が、これらのソフトウェアを実行することにより、各種の機能が提供される。
【0024】
アプリ層101のソフトウェアは、ハードウェア資源を動作させて所定の機能を提供するためのアプリケーションソフトウェア(以下の説明では、単に「アプリ」と称する場合がある)である。例えばアプリとしては、コピー機能を提供するためのコピーアプリ、スキャナ機能を提供するためのスキャナアプリ、ファクス機能を提供するためのファクスアプリ、プリンタ機能を提供するためのプリンタアプリなどが挙げられる。
【0025】
サービス層102のソフトウェアは、アプリ層101とOS層103との間に介在し、アプリに対し、本体10が備えるハードウェア資源を利用するためのインタフェースを提供するためのソフトウェアである。より具体的には、ハードウェア資源に対する動作要求の受付、動作要求の調停を行う機能を提供するためのソフトウェアである。サービス層102が受け付ける動作要求としては、スキャナによる読み取りやプロッタによる印刷等の要求が考えられる。
【0026】
なお、サービス層102によるインタフェースの機能は、本体10のアプリ層101だけではなく、操作部20のアプリ層201に対しても提供される。すなわち、操作部20のアプリ層201(アプリ)も、サービス層102のインタフェース機能を介して、本体10のハードウェア資源(例えばエンジン部17)を利用した機能を実現することができる。
【0027】
OS層103のソフトウェアは、本体10が備えるハードウェアを制御する基本機能を提供するための基本ソフトウェア(オペレーティングシステム(OS))である。サービス層102のソフトウェアは、各種アプリからのハードウェア資源の利用要求を、OS層103が解釈可能なコマンドに変換してOS層103に渡す。そして、OS層103のソフトウェアによりコマンドが実行されることで、ハードウェア資源は、アプリの要求に従った動作を行う。
【0028】
同様に、操作部20は、アプリ層201と、サービス層202と、OS層203とを有する。操作部20が備えるアプリ層201、サービス層202及びOS層203も、階層構造については本体10側と同様である。ただし、アプリ層201のアプリにより提供される機能や、サービス層202が受け付け可能な動作要求の種類は、本体10側とは異なる。アプリ層201のアプリは、操作部20が備えるハードウェア資源を動作させて所定の機能を提供するためのソフトウェアであってもよいが、主として本体10が備える機能(コピー機能、スキャナ機能、ファクス機能、プリンタ機能)に関する操作や表示を行うためのUI(ユーザインタフェース)の機能を提供するためのソフトウェアである。アプリ層201のアプリには、ブラウザアプリ2bやストア起動アプリ3なども含まれる。
【0029】
なお、本実施形態では、機能の独立性を保つために、本体10側のOS層103のソフトウェアと操作部20側のOS層203のソフトウェアが互いに異なる。つまり、本体10と操作部20は、別々のオペレーティングシステムで互いに独立して動作する。例えば、本体10側のOS層103のソフトウェアとしてLinux(登録商標)を用い、操作部20側のOS層203のソフトウェアとしてAndroid(登録商標)を用いることも可能である。
【0030】
以上のように、本実施形態のMFP1において、本体10と操作部20は別々のオペレーティングシステムで動作するため、本体10と操作部20との間の通信は、共通の装置内のプロセス間通信ではなく、異なる装置間の通信として行われる。操作部20が受け付けた情報(ユーザからの指示内容)を本体10へ伝達する動作(コマンド通信)や、本体10が操作部20へイベントを通知する動作などがこれに該当する。ここでは、操作部20が本体10へコマンド通信を行うことにより、本体10の機能を使用することができる。また、本体10から操作部20に通知するイベントには、本体10における動作の実行状況、本体10側で設定された内容などが挙げられる。
【0031】
また、本実施形態では、操作部20に対する電力供給は、本体10から通信路30を経由して行われているので、操作部20の電源制御を、本体10の電源制御とは別に(独立して)行うことができる。
【0032】
次に、MFP1の機能構成について説明する。
図4は、MFP1の機能構成の一例を示すブロック図である。
図4に示すように、MFP1は、操作画面表示部111と、アプリストア要求部112と、アプリストア表示部113と、アプリケーション利用制御部114とを有する。説明の便宜上、
図4では、本発明に係る機能を主に例示しているが、MFP1が有する機能は、これらに限られるものではない。
【0033】
操作画面表示部111は、各種の操作を行うための操作画面を操作パネル27に表示する制御を行う。
図5は、操作画面の一例を示す図であり、操作画面には、ストア起動アプリ3を起動するためのアイコン2aが表示されている。
【0034】
ユーザがアイコン2aをタッチすると、ストア起動アプリ3が起動し、ストア起動アプリ3(アプリストア要求部112)は、アプリストアサーバ2に対して、アプリストア6の表示を要求する制御を行う。より具体的な内容については後述するが、アプリストア6の表示を要求する信号(以下の説明では、「表示リクエスト」と称する場合がある)のヘッダーには、MFP1を一意に特定可能な機器特定情報が付加される。
【0035】
アプリストア表示部113(ブラウザアプリ2b)は、表示リクエストに対する応答としてアプリストアサーバ2から受信したアプリストア6を操作パネル27に表示する制御を行う。アプリケーション利用制御部114は、アプリストア6に表示されたアプリケーションのうち、ユーザによって選択されたアプリケーションをMFP1で利用するための制御(アプリケーションをインストールする制御を含む)を行う。MFP1の具体的な動作例については後述する。
【0036】
次に、
図6を用いて、アプリストアサーバ2の機能構成について説明する。
図6に示すように、アプリストアサーバ2は、取得部211と、第1の機能情報要求部212と、第2の特定部213と、第2の対応情報記憶部214と、表示制御部215とを有する。説明の便宜上、
図6では、本発明に係る機能を主に例示しているが、アプリストアサーバ2が有する機能は、これらに限られるものではない。
【0037】
取得部211は、MFP1からの表示リクエストを取得する。この例では、表示リクエストのヘッダーには機器特定情報が付加されているので、取得部211は、表示リクエストを取得することにより、当該表示リクエストの要求元のMFP1を一意に特定可能な機器特定情報を取得することができる。この例では、取得部211は請求項の「取得部」に対応している。
【0038】
第1の機能情報要求部212は、機器管理サーバ5に対して、取得部211により取得された機器特定情報に対応付けられた第1の機能情報を要求する。本実施形態では、第1の機能情報要求部212は、機器管理サーバ5に対して、第1の機能情報を要求する信号(以下の説明では、「第1の機能情報リクエスト」と称する場合がある)を送信し、その応答として、機器管理サーバ5から第1の機能情報を受信する。この例では、第1の機能情報リクエストのヘッダーには、取得部211により取得された機器特定情報が付加されている。
【0039】
ここで、
図7を用いて、機器管理サーバ5の機能構成について説明する。
図7に示すように、機器管理サーバ5は、第1の特定部501と、第1の対応情報記憶部502とを有する。説明の便宜上、
図7では、本発明に係る機能を主に例示しているが、機器管理サーバ5が有する機能は、これらに限られるものではない。
【0040】
第1の特定部501は、機器特定情報ごとに、MFP1(この例では請求項の「機器」に対応)が有する機能を示す第1の機能情報を対応付けた第1の対応情報に基づいて、取得部211により取得された機器特定情報に対応付けられた第1の機能情報を特定する。本実施形態における第1の機能情報は、MFP1に搭載可能な機能を識別する機能識別情報(以下の説明では、「機器構成情報キー」と称する場合がある)ごとに、機能の有無または機能の種類を示す値(以下の説明では、「機器構成情報値」と称する場合がある)を対応付けた情報である。
【0041】
図8は、本実施形態における第1の対応情報の一例を示す図である。
図8の例では、「3284CA」を示す機器特定情報に対して、「印刷カラータイプ」を示す機器構成情報キーと、「FAX機能」を示す機器構成情報キーと、「両面ユニット」を示す機器構成情報キーと、「OCR機能」を示す機器構成情報キーと、「中綴じステープル機能」を示す機器構成情報キーと、「パンチ穴あけ機能」を示す機器構成情報キーとが対応付けられている。
【0042】
図8の例では、「印刷カラータイプ」を示す機器構成情報キーに対応する機器構成情報値は「カラー」を示し、「FAX機能」を示す機器構成情報キーに対応する機器構成情報値は「あり」を示し、「両面ユニット」を示す機器構成情報キーに対応する機器構成情報値は「あり」を示し、「OCR機能」を示す機器構成情報キーに対応する機器構成情報値は「なし」を示し、「中綴じステープル機能」を示す機器構成情報キーに対応する機器構成情報値は「なし」を示し、「パンチ穴あけ機能」を示す機器構成情報キーに対応する機器構成情報値は「なし」を示している。つまり、
図8に示す第1の機能情報は、「3284CA」を示す機器特定情報により特定されるMFP1が有する機能として、カラー印刷機能、FAX機能、両面印刷機能を示していると考えることができる。
【0043】
なお、
図8の例では、第1の対応情報は、1つの機器特定情報に対する第1の機能情報を対応付けた情報であるが、これに限らず、例えば第1の対応情報は、複数の機器特定情報ごとに、当該機器特定情報に対する第1の機能情報を対応付けた情報であってもよい。第1の対応情報は、第1の対応情報記憶部502に予め記憶されている。
【0044】
本実施形態では、第1の特定部501は、アプリストアサーバ2(第1の機能情報要求部212)から第1の機能情報リクエストを受信すると、その受信した第1の機能情報リクエストのヘッダーに付加された機器特定情報を判断する。そして、第1の対応情報記憶部502に記憶された第1の対応情報を参照して、第1の機能情報リクエストのヘッダーに付加された機器特定情報(取得部211により取得された機器特定情報であると考えることができる)に対応付けられた第1の機能情報を特定する。そして、第1の機能情報リクエストに対する応答として、特定した第1の機能情報を返信する。
【0045】
なお、本実施形態の機器管理サーバ5は、CPU、ROM、RAM等を備えた通常のコンピュータのハードウェア構成を有している。上述の第1の特定部501の機能は、CPUがROM等に格納されたプログラムを実行することにより実現されるが、これに限らず、例えば専用のハードウェア回路(半導体集積回路等)により実現されてもよい。また、上述の第1の対応情報記憶部502は、例えばROMやRAM等により実現される。
【0046】
図6に戻り、アプリストアサーバ2の説明を続ける。第2の特定部213は、アプリケーションごとに、当該アプリケーションを利用する際に必要な機能を示す第2の機能情報を対応付けた第2の対応情報に基づいて、第1の特定部501により特定された第1の機能情報に含まれる機能を示す第2の機能情報に対応付けられたアプリケーションを特定する。
図9は、本実施形態における第2の対応情報の一例を示す図である。
図9の例では、「翻訳アプリ」に対して、OCR機能を示す第2の機能情報が対応付けられている。ここでは、翻訳アプリとは、原稿から読み取った画像データに対してOCR処理を施すことで生成した透明テキスト付きPDFのテキスト情報を翻訳し、その翻訳結果をユーザへ通知する翻訳サービスを提供するためのアプリケーションであり、機器がOCR機能を有していることを前提としたアプリケーションである。また、
図9の例では、簡便なFAXサービスを提供するための「かんたんFAXアプリ」に対して、FAX機能を示す第2の機能情報が対応付けられ、素材のプリントサービスを提供するための「素材プリントアプリ」に対して、カラー印刷機能を示す第2の機能情報が対応付けられている。第2の対応情報は、第2の対応情報記憶部214に予め記憶されている。
【0047】
本実施形態では、第1の機能情報要求部212は、上述の第1の機能情報リクエストに対する応答として、機器管理サーバ5から第1の機能情報を受信すると、第2の特定部213に対して、機器管理サーバ5から受信した第1の機能情報(第1の特定部501により特定された第1の機能情報であると考えることができる)に含まれる機能を示す第2の機能情報に対応付けられたアプリケーションの特定を依頼する。この依頼を受けた第2の特定部213は、第2の対応情報記憶部214に記憶された第2の対応情報を参照して、機器管理サーバ5から受信した第1の機能情報に含まれる機能を示す第2の機能情報に対応付けられたアプリケーションを特定する。
【0048】
一例として、
図8に示す第1の機能情報を機器管理サーバ5から受信した場合を想定する。この場合、第1の機能情報が示す機能には、カラー印刷機能、FAX機能、両面印刷機能が含まれているが、OCR機能、中綴じステープル機能、パンチ穴あけ機能は含まれていない。
図9の例では、翻訳アプリに対応付けられた第2の機能情報はOCR機能を示しているが、機器管理サーバ5から受信した第1の機能情報(第1の特定部501により特定された第1の機能情報)が示す機能には、OCR機能が含まれていないので、翻訳アプリは特定対象から除外される(第2の特定部213は、翻訳アプリを特定することはしない)。一方、
図9の例では、かんたんFAXアプリに対応付けられた第2の機能情報はFAX機能を示しており、機器管理サーバ5から受信した第1の機能情報が示す機能には、FAX機能が含まれているので、第2の特定部213は、かんたんFAXアプリを特定する。また、
図9の例では、素材プリントアプリに対応付けられた第2の機能情報はカラー印刷機能を示しており、機器管理サーバ5から受信した第1の機能情報が示す機能には、カラー印刷機能が含まれているので、第2の特定部213は、素材プリントアプリを特定する。
【0049】
図6に戻って説明を続ける。表示制御部215は、第2の特定部213により特定されたアプリケーションを提供するためのアプリストア6(この例では請求項の「アプリケーション一覧画面」に対応)をMFP1(取得部211により取得された機器特定情報により特定される機器)に表示する制御を行う。本実施形態では、表示制御部215は、第2の特定部213により特定されたアプリケーション以外のアプリケーションは非表示となるよう、アプリストア6を生成する。
図10は、第2の特定部213により翻訳アプリが特定されなかった場合のアプリストア6の一例を示す図である。アプリストア6は、第2の特定部213により特定されたアプリケーションごとに、当該アプリケーションの利用契約やダウンロードを申し込むためのボタン(
図10の例では「申込む」というボタン)を表示するWebページである。
図10の例では、第2の特定部213によって、上述のかんたんFAXアプリおよび素材プリントアプリに加えて、写真管理アプリ、写真簡単加工アプリ、ドキュメント管理アプリ、かんたんスキャンアプリが特定された場合を想定している。
【0050】
また、
図11は、第2の特定部213により翻訳アプリが特定された場合のアプリストア6の一例を示す図である。
図11の例では、第2の特定部213によって、上述の翻訳アプリ、かんたんFAXアプリおよび素材プリントアプリに加えて、写真管理アプリ、写真簡単加工アプリ、ドキュメント管理アプリ、かんたんスキャンアプリが特定された場合を想定している。
【0051】
本実施形態では、表示制御部215は、第2の特定部213により特定されたアプリケーション(つまり、表示リクエストの要求元のMFP1で利用可能なアプリケーションであると考えることができる)を提供するためのアプリストア6を生成し、MFP1から受信した表示リクエストに対する応答として、生成したアプリストア6を返信する。そして、表示リクエストの要求元のMFP1(アプリストア表示部113)は、表示リクエストに対する応答としてアプリストアサーバ2から受信したアプリストア6を、操作パネル27に表示する制御を行う。本実施形態では、このアプリストア6に表示されるアプリケーションは、表示リクエストの要求元のMFP1で利用可能なアプリケーションのみとなるので、ユーザが、アプリストア6に表示される何れのアプリケーションの利用契約やダウンロードを申し込むためのボタン(この例では「申込む」というボタン)を押下しても、その要求が却下されることはない。したがって、従来に比べて、ユーザの利便性を向上させることができる。
【0052】
表示リクエストの要求元のMFP1(アプリケーション利用制御部114)は、アプリストア6に表示されたアプリケーションのうち、ユーザによって選択されたアプリケーションを、MFP1で利用するための制御を行う。一例として、
図11に示すアプリストア6が、MFP1の操作パネル27上に表示されており、ユーザが、翻訳アプリを選択(この例では、
図11に示す「申込む」というボタンを押下)した場合を想定する。ここでは、翻訳アプリは、翻訳サーバ4に配置したアプリケーションを、操作部20のブラウザアプリ2bを用いて利用することができるソフトウェア(つまり、Webアプリ)であるとする。本実施形態では、アプリケーション利用制御部114は、ユーザによって選択されたアプリケーション(アプリストア6に表示されたアプリケーションの中から選択されたアプリケーション)が、ネットワークを介して利用するアプリケーションを示すWebアプリである場合、当該Webアプリを保持するアプリケーションサーバとの間で当該Webアプリを利用するための処理を実行する。この例では、アプリケーション利用制御部114は、翻訳アプリの「申込む」というボタンの押下を検出すると、翻訳サーバ4から翻訳アプリをダウンロードすることはせずに、翻訳サーバ4にアクセスして翻訳アプリを利用するための処理(例えばユーザを一意に識別するユーザ情報を登録するための処理など)を実行する。この例では、翻訳サーバ4は、請求項の「アプリケーションサーバ」に対応していると考えることができる。
【0053】
なお、本実施形態では、翻訳サービスの提供に用いられる翻訳アプリは、Webアプリであるが、これに限らず、例えば翻訳アプリが、操作部20にインストールされる通常のアプリケーションであってもよい。この場合、アプリケーション利用制御部114は、翻訳アプリの「申込む」というボタンの押下を検出すると、翻訳サーバ4から翻訳アプリをダウンロードして、MFP1にインストールする制御を行う。ただし、翻訳アプリをWebアプリとする形態によれば、翻訳アプリをMFP1(操作部20)にインストールしなくても済むという利点がある。アプリストア6に表示される他のアプリケーションについても同様である。さらに、ストア起動アプリ3についても、機器特定情報を取得する機能を有していれば、MFP1にインストールするタイプのアプリケーションである必要は無く、Webアプリや他の形態のアプリケーションであっても構わない。
【0054】
なお、本実施形態のアプリストアサーバ2は、CPU、ROM、RAM等を備えた通常のコンピュータのハードウェア構成を有している。上述の取得部211、第1の機能情報要求部212、第2の特定部213および表示制御部215の各々の機能は、CPUがROM等に格納されたプログラムを実行することにより実現されるが、これに限らず、例えば上述の取得部211、第1の機能情報要求部212、第2の特定部213および表示制御部215の各々の機能のうちの少なくとも一部が専用のハードウェア回路(半導体集積回路等)により実現されてもよい。また、上述の第2の対応情報記憶部214は、例えばROMやRAM等により実現される。
【0055】
また、本実施形態では、アプリストアサーバ2、翻訳サーバ4および機器管理サーバ5が、それぞれ独立して設けられているが、これに限らず、例えばこれらを統合した1つのサーバが設けられる形態であってもよい。また、例えばアプリストアサーバ2、翻訳サーバ4および機器管理サーバ5の各々の機能を分散した4つ以上のサーバが設けられる形態であってもよい。要するに、本発明が適用される情報処理システム100は、上述の取得部211の機能と、上述の第1の特定部501の機能と、上述の第2の特定部213の機能と、上述の表示制御部215の機能とを少なくとも備える形態であればよい。
【0056】
また、例えばアプリストアサーバ2および機器管理サーバ5の各々の機能を有する1つのサーバが設けられてもよい。この形態では、当該1つのサーバが、請求項の「情報処理装置」に対応すると考えることができる。要するに、本発明が適用される情報処理装置は、上述の取得部211の機能と、上述の第1の特定部501の機能と、上述の第2の特定部213の機能と、上述の表示制御部215の機能とを少なくとも備える形態であればよい。
【0057】
図12は、本実施形態の情報処理システム100の動作手順の一例を示すシーケンス図である。まずユーザが、操作画面上のアイコン2a(
図5参照)をタッチすると(ステップS1)、操作部20のOSは、ストア起動アプリ3を起動する(ステップS2)。次に、起動したストア起動アプリ3は、操作部20のOSに対して、MFP1を一意に特定可能な機器特定情報を要求し(ステップS3)、その応答として、操作部20のOSから機器特定情報を受け取る(ステップS4)。次に、ストア起動アプリ3は、操作部20のOSに対して、MFP1に予めインストールされているブラウザアプリ2bの起動を依頼する(ステップS5)。この依頼には、機器特定情報と、アプリストアサーバ2のURLとが付加されており、この依頼を受けた操作部20のOSは、ブラウザアプリ2bを起動する。そして、ブラウザアプリ2bに対して、機器特定情報とアプリストアサーバ2のURLを渡し、アプリストアサーバ2に対して上述の表示リクエストを送信することを指示する(ステップS6)。
【0058】
起動したブラウザアプリ2bは、アプリストアサーバ2のURLにアクセスし、ヘッダーに機器特定情報を付加した表示リクエストを送信する(ステップS7)。MFP1からの表示リクエストを受信したアプリストアサーバ2は、機器管理サーバ5に対して、表示リクエストのヘッダーに付加された機器特定情報に対応付けられた第1の機能情報を要求する第1の機能情報リクエストを送信する(ステップS8)。上述したように、この第1の機能情報リクエストのヘッダーには、表示リクエストのヘッダーに付加されていた機器特定情報が付加されている。機器管理サーバ5は、アプリストアサーバ2からの第1の機能情報リクエストを受信すると、ヘッダーに付加された機器特定情報を判断する。そして、第1の対応情報記憶部502に記憶された第1の対応情報を参照して、当該機器特定情報に対応付けられた第1の機能情報を特定する。そして、第1の機能情報リクエストに対する応答として、特定した第1の機能情報を返信する(ステップS9)。
【0059】
第1の機能情報リクエストに対する応答として、機器管理サーバ5から第1の機能情報を受信したアプリストアサーバ2は、第2の対応情報記憶部214に記憶された第2の対応情報を参照して、機器管理サーバ5から受信した第1の機能情報に含まれる機能を示す第2の機能情報に対応付けられたアプリケーションを特定する。そして、特定したアプリケーションを提供するためのアプリストア6を生成する(ステップS10)。次に、アプリストアサーバ2は、上述のステップS7の表示リクエストに対する応答として、生成したアプリストア6を返信する(ステップS11)。表示リクエストの要求元のMFP1のブラウザアプリ2bは、表示リクエストに対する応答としてアプリストアサーバ2から受信したアプリストア6を、操作パネル27に表示する制御を行う(ステップS12)。
【0060】
以上に説明したように、本実施形態によれば、アプリストアサーバ2からMFP1に提供される上述のアプリストア6に表示されるアプリケーションは、当該MFP1で利用可能なアプリケーションのみとなるので、ユーザが、アプリストア6に表示される何れのアプリケーションの利用契約やダウンロードを申し込むためのボタン(この例では「申込む」というボタン)を押下しても、その要求が却下されることはない。これにより、ユーザの利便性を向上させることができる。
【0061】
以上、本発明に係る実施形態について説明したが、本発明は、上述の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【0062】
なお、以上に説明したMFP1の各部の機能(操作画面表示部111、アプリストア要求部112、アプリストア表示部113、アプリケーション利用制御部114)は、CPU(11または21)が、記憶装置(例えばROM12、HDD14、ROM22、フラッシュメモリ24等)に格納されたプログラムを実行することにより実現されるが、これに限らず、例えば上記MFP1の各部の機能のうちの少なくとも一部が専用のハードウェア回路(例えば半導体集積回路等)で実現されてもよい。
【0063】
また、上述の実施形態では、本体10と操作部20は、別々のオペレーションシステムで互いに独立して動作しているが、これに限らず、例えば本体10と操作部20が同じオペレーションシステムで動作する形態であってもよい。
【0064】
また、上述した実施形態の情報処理システム100(MFP1、アプリストアサーバ2、機器管理サーバ5等)で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、各種プログラムを、ROM等に予め組み込んで提供するように構成してもよい。