(57)【要約】  第１サーバは、地域情報を少なくとも含み、かつ、該地域情報に対応する機器が利用可能なアプリケーションを示す表示情報と、機器から該アプリケーションに関する処理を機器に実行させるアプリケーションコマンドと、を少なくとも含むＷｅｂコンテンツデータを、機器からの要求に応じて、機器に送信する制御部を備え、機器は、地域情報を少なくとも含み、かつ、表示情報を要求する表示情報要求を送信し、第１サーバから受信したＷｅｂコンテンツデータに基づく画面を表示部に表示させる制御を行う表示制御部と、画面を介したユーザの操作に応じてＷｅｂコンテンツデータに含まれるアプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応したアプリケーションに関する処理の実行を機器に要求する実行部と、を含むＷｅｂブラウザと、Ｗｅｂブラウザからの要求に基づいてアプリケーションに関する処理を実行する処理実行部と、を備える。
2017150472.tif 000002
【特許請求の範囲】
【請求項１】
複数の第１サーバと、ネットワークを介して前記第１サーバの各々に接続される機器と、を備えるシステムであって、
前記第１サーバは、
前記機器から該機器が設置されている地理的位置を示す地域情報を少なくとも含み、かつ、該地域情報に対応する前記機器が利用可能なアプリケーションを示す表示情報と、前記機器から該アプリケーションに関する処理を前記機器に実行させるアプリケーションコマンドと、を少なくとも含むＷｅｂコンテンツデータを、前記機器からの要求に応じて、前記機器に送信する制御部を備え、
前記機器は、
前記第１サーバから受信した前記Ｗｅｂコンテンツデータに基づく画面を表示部に表示させる制御を行う表示制御部と、前記画面を介したユーザの操作に応じて前記Ｗｅｂコンテンツデータに含まれる前記アプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応した前記アプリケーションに関する処理の実行を前記機器に要求する実行部と、を含むＷｅｂブラウザと、
前記Ｗｅｂブラウザからの要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する処理実行部と、
を備える、
ことを特徴とするシステム。
【請求項２】
前記実行部は、アプリケーションプログラミングインタフェースにより提供される、
ことを特徴とする請求項１に記載のシステム。
【請求項３】
前記システムは、ネットワークを介して前記第１サーバおよび前記機器の各々と接続される第２サーバをさらに備え、
前記第２サーバは、
前記機器が設置されている地理的位置を示す地域情報または前記機器の販売店を示す販社情報と、前記アプリケーションを提供する前記第１サーバに接続するための情報を示す接続情報とを対応付けた接続対応情報を記憶する記憶部と、
前記機器から、前記地域情報または前記販社情報を少なくとも含み、かつ前記第１サーバの前記接続情報の取得を要求する接続情報取得要求を受け付けて、前記接続対応情報を参照し、前記第１サーバの前記接続情報を特定する接続情報特定部と、
特定した前記第１サーバの前記接続情報を前記機器に送信する接続情報送信部と、を備え、
前記機器は、
前記接続情報取得要求を前記第２サーバに送信し、前記第１サーバの前記接続情報を取得する接続情報取得部を備える、
ことを特徴とする請求項１または２に記載のシステム。
【請求項４】
前記第２サーバは、
前記第１サーバの前記接続情報の一覧を示す接続一覧情報を生成するリスト生成部を備え、
前記第２サーバの前記接続情報特定部は、前記接続情報取得要求を受け付けて、前記第１サーバの前記接続情報を特定して前記リスト生成部に受け渡し、前記リスト生成部で生成した前記第１サーバの前記接続一覧情報を前記機器に送信し、
前記リスト生成部は、前記接続情報特定部で特定した前記第１サーバの前記接続情報の中で、前記機器と通信に要する時間が短い接続情報から該通信に要する時間が長い接続情報の順に並べた複数の前記第１サーバの前記接続一覧情報を生成して前記接続情報特定部に受け渡し、
前記機器の前記接続情報取得部は、前記第２サーバから受信した前記第１サーバの前記接続一覧情報を保持し、
前記機器の前記接続情報取得部は、前記第２サーバから前記第１サーバの前記接続情報が受信できない場合、または前記第１サーバから前記Ｗｅｂコンテンツデータの取得要求に対する応答がない場合、前記第１サーバの前記接続一覧情報の順に前記表示情報要求および前記画面情報要求を前記第１サーバに送信する、
ことを特徴とする請求項３に記載のシステム。
【請求項５】
前記第２サーバの前記記憶部は、前記機器を識別する機器情報をさらに対応付けた前記接続対応情報を記憶し、
前記第２サーバの前記接続情報特定部は、前記機器から、前記機器情報を少なくとも含み、かつ、前記第１サーバの前記接続情報の取得を要求する接続情報取得要求を受け付けて、前記接続対応情報を参照し、前記第１サーバの前記接続情報を特定し、
前記第２サーバの前記接続情報送信部は、特定した前記第１サーバの前記接続情報を前記機器に送信し、
前記機器の接続情報取得部は、前記接続情報取得要求を前記第２サーバに送信し、前記第１サーバの前記接続情報を取得する、
ことを特徴とする請求項３または４に記載のシステム。
【請求項６】
前記第２サーバの前記接続情報特定部は、前記第１サーバの前記接続情報と共に該第２サーバに接続するための情報を示す接続情報を前記機器に送信し、
前記機器の前記接続情報取得部は、受信した前記第１サーバの前記接続情報と共に前記第２サーバの前記接続情報を記憶部に記憶させる、
ことを特徴とする請求項５に記載のシステム。
【請求項７】
前記システムは、複数の第２サーバを備え、
前記第２サーバの前記リスト生成部は、前記第１サーバの前記接続一覧情報を生成すると共に前記第２サーバの接続情報の接続一覧情報を生成し、生成した２つの該接続一覧情報を前記機器に送信し、
前記機器の前記接続情報取得部は、前記第２サーバの前記接続情報特定部から受信した前記第１サーバの前記接続一覧情報と共に前記第２サーバの前記接続一覧情報を記憶部に記憶させておき、
前記機器の前記接続情報取得部は、前記第２サーバから前記第１サーバの前記接続情報が受信できない場合、前記記憶部に記憶されている前記第２サーバの前記接続一覧情報の順に前記接続情報取得要求を前記第２サーバに送信する、
ことを特徴とする請求項６に記載のシステム。
【請求項８】
前記地域情報は、前記機器の販売店を示す販社情報に含まれており、
前記機器の表示制御部は、前記表示情報取得部が前記表示情報要求を送信する際に、前記地域情報を含んだ該販社情報が保持されていない場合、該販社情報を示すコード情報の入力を受け付けるＵＩ画面を表示部に表示させ、
ユーザの操作に応じて、ブラウザ機能を提供するブラウザアプリを起動する起動部は、前記ＵＩ画面で受け付けた前記コード情報から特定される販社情報と地域情報とを記憶部に記憶させる、
ことを特徴とする請求項１から７の何れか１項に記載のシステム。
【請求項９】
前記表示制御部は、前記ＵＩ画面で受け付けた前記コード情報から特定される地域情報と、予め記憶している販社情報に対応付けられたコード情報から特定された地域情報とが同一であるかを判断する、または該コード情報に含まれる所定の情報が予め設定された情報と同一であるかを判断する、の何れか一方または両方を行って、同一でない場合には、エラーを示す画面を前記表示部に表示させた後、再度前記販社情報を示すコード情報の入力を受け付けるＵＩ画面を表示部に表示させる、
ことを特徴とする請求項８に記載のシステム。
【請求項１０】
前記第１サーバは、
前記地域情報、または前記機器の販売店を示す販社情報に対応するアプリケーションを提供する組織を識別する組織ＩＤに紐付いている複数のアプリケーションごとに、公開されている状態であるか否かを示す公開状態情報と、該アプリケーションを利用可能な前記機器の機種を識別する機種情報とを対応付けて記憶する記憶部をさらに備え、
前記制御部は、
前記機器から、前記画面情報を要求する画面情報要求を受信した場合に、前記画面情報を生成し、前記画面情報要求に対する応答として、その生成した前記画面情報を前記機器へ送信する画面提供部と、
前記機器から、前記地域情報と前記機種情報を含み、かつ、前記表示情報を要求する表示情報要求を受信した場合に、前記記憶部に記憶された情報を参照して、前記表示情報要求に含まれる前記地域情報と、前記機種情報と、公開されている状態を示す前記公開状態情報とに基づいて構成されるアプリケーションを特定する特定部と、
前記特定部により特定されたアプリケーションを示す前記表示情報を生成し、その生成した前記表示情報を、前記表示情報要求に対する応答として前記機器へ送信する表示情報生成部と、を含む、
ことを特徴とする請求項１から９の何れか１項に記載のシステム。
【請求項１１】
前記アプリケーションコマンドは、アプリケーションをインストールする命令を示すインストール命令を含み、
前記実行部は、前記ユーザの操作に応じて前記インストール命令が選択された場合、その選択された前記インストール命令を前記処理実行部へ通知し、
前記処理実行部は、前記実行部から通知された前記インストール命令を実行する、
ことを特徴とする請求項１から１０の何れか１項に記載のシステム。
【請求項１２】
前記アプリケーションコマンドは、アプリケーションを更新する命令を示す更新命令を含み、
前記表示情報は、前記機器が利用可能なアプリケーションごとに、該アプリケーションの最新のバージョンを少なくとも示す詳細情報を対応付けたアプリケーション詳細情報を含み、
前記実行部は、
前記ユーザの操作に応じて、前記機器にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、前記アプリケーション詳細情報のうち該アプリケーションに対応する前記詳細情報が示すバージョンとが異なるアプリケーションを特定し、該特定したアプリケーションに対応する前記更新命令が選択された場合、その選択された前記更新命令を前記処理実行部へ通知し、
前記処理実行部は、前記実行部から通知された前記更新命令を実行する、
ことを特徴とする請求項１から１１の何れか１項に記載のシステム。
【請求項１３】
前記アプリケーションコマンドは、インストール済みのアプリケーションを削除して、前記機器の状態を、該アプリケーションをインストールする前の状態に戻す命令を示すアンインストール命令を含み、
前記実行部は、前記ユーザの操作に応じて選択された前記アンインストール命令を前記処理実行部へ通知し、
前記処理実行部は、前記実行部から通知された前記アンインストール命令を実行する、
ことを特徴とする請求項１から１２の何れか１項に記載のシステム。
【請求項１４】
複数の第１サーバと、ネットワークを介して前記第１サーバの各々に接続される機器と、を備えるシステムの情報処理方法であって、
前記第１サーバは、
前記機器から該機器が設置されている地理的位置を示す地域情報を少なくとも含み、かつ、該地域情報に対応する前記機器が利用可能なアプリケーションを示す表示情報と、前記機器から該アプリケーションに関する処理を前記機器に実行させるアプリケーションコマンドと、を少なくとも含むＷｅｂコンテンツデータを、前記機器からの要求に応じて、前記機器に送信する制御ステップを含み、
前記機器は、
前記第１サーバから受信した前記Ｗｅｂコンテンツデータに基づく画面を表示部に表示させる制御を行う表示制御ステップと、
前記画面を介したユーザの操作に応じて前記Ｗｅｂコンテンツデータに含まれる前記アプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応した前記アプリケーションに関する処理の実行を前記機器に要求する実行ステップと、
前記要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する処理実行ステップと、
を含む、
ことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムおよび情報処理方法に関する。
【背景技術】
【０００２】
近年、携帯電話や情報携帯端末を代表とする様々な通信機器の普及により、通信機器上で利用可能なアプリケーションの開発が盛んになってきている。これらのアプリケーションの利用を促進するため、アプリケーションを紹介し、そのまま通信機器にダウンロードやインストールすることができるウェブサイトやアプリケーションも開発されている。【０００３】
例えば特許文献１では、サーバが保持している複数のアプリケーションごとに、当該アプリケーションのダウンロードを要求するダウンロードボタン（仮想ボタン）が表示されたアプリケーション説明ページが、サーバからコンピュータデバイス（クライアントデバイス）に提供され、コンピュータデバイスの表示部に表示される。そして、アプリケーション説明ページのダウンロードボタンが選択された場合、選択されたアプリケーションがコンピュータデバイスによってサポートされている場合に限り、ダウンロードを許可する技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、例えば特許文献１に開示された技術では、サーバ側で、機器が利用可能なアプリケーションを紹介するページ（Ｗｅｂページ）の表示内容を変更する場合、その変更に合わせて機器側のプログラムも変更する必要がある。すなわち、従来においては、機器が利用可能なアプリケーションを紹介するページを提供（ページ自体を提供する形態、および、機器側でページを生成するために必要な情報を提供する形態の両方を含む）するサーバが、例えば地域ごとに表示内容の異なるページを構築するための仕組みは存在しなかった。【０００５】
また、機器から利用可能なアプリケーションを紹介するページの提供の要求があった場合、機器が設置されている地域で公開されているアプリケーションだけを選択して、機器が利用可能なアプリケーションを紹介するページを提供するという仕組みも存在しなかった。【０００６】
本発明は、上記に鑑みてなされたものであり、機器が利用可能なアプリケーションを紹介するページを提供するサーバが、表示内容の異なるページを構築可能で、機器が設置されている地域で公開されているアプリケーションだけを紹介するページを提供することができる、システムおよび情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、複数の第１サーバと、ネットワークを介して前記第１サーバの各々に接続される機器と、を備えるシステムであって、前記第１サーバは、前記機器から該機器が設置されている地理的位置を示す地域情報を少なくとも含み、かつ、該地域情報に対応する前記機器が利用可能なアプリケーションを示す表示情報と、前記機器から該アプリケーションに関する処理を前記機器に実行させるアプリケーションコマンドと、を少なくとも含むＷｅｂコンテンツデータを、前記機器からの要求に応じて、前記機器に送信する制御部を備え、前記第１サーバから受信した前記Ｗｅｂコンテンツデータに基づく画面を表示部に表示させる制御を行う表示制御部と、前記画面を介したユーザの操作に応じて前記Ｗｅｂコンテンツデータに含まれる前記アプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応した前記アプリケーションに関する処理の実行を前記機器に要求する実行部と、を含むＷｅｂブラウザと、前記Ｗｅｂブラウザからの要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する処理実行部と、を備える。
【発明の効果】
【０００８】
本発明によれば、機器が利用可能なアプリケーションを紹介するページを提供するサーバは、表示内容が異なるページを構築可能で、機器が設置されている地域で公開されているアプリケーションだけを紹介するページを提供することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施形態のシステムの構成の一例を示す図である。
【図２】図２は、サーバのハードウェア構成の一例を示す図である。
【図３】図３は、サーバが有する機能の一例を示す図である。
【図４】図４は、アプリ情報管理モジュールが有する機能の一例を示す図である。
【図５】図５は、第１の対応情報の一例を示す図である。
【図６】図６は、第２の対応情報の一例を示す図である。
【図７】図７は、第３の対応情報の一例を示す図である。
【図８】図８は、第４の対応情報の一例を示す図である。
【図９】図９は、第５の対応情報の一例を示す図である。
【図１０】図１０は、第６の対応情報の一例を示す図である。
【図１１】図１１は、制御部が有する機能の一例を示す図である。
【図１２】図１２は、ライセンス管理モジュールが有する機能の一例を示す図である。
【図１３】図１３は、第７の対応情報の一例を示す図である。
【図１４】図１４は、第８の対応情報の一例を示す図である。
【図１５】図１５は、第９の対応情報の一例を示す図である。
【図１６】図１６は、制御部が有する機能の一例を示す図である。
【図１７】図１７は、アプリダウンロード管理モジュールが有する機能の一例を示す図である。
【図１８】図１８は、サーバの変形例を示す図である。
【図１９】図１９は、接続先提供サーバが有する機能の一例を示す図である。
【図２０】図２０は、サービス検索モジュールが有する機能の一例を示す図である。
【図２１】図２１は、第１０の対応情報の一例を示す図である。
【図２２】図２２は、第１１の対応情報の一例を示す図である。
【図２３】図２３は、制御部が有する機能の一例を示す図である。
【図２４】図２４は、ＭＦＰのハードウェア構成の一例を示すブロック図である。
【図２５】図２５は、ＭＦＰのソフトウェア構成の一例を示す模式図である。
【図２６】図２６は、操作部が有する機能の一例を示す図である。
【図２７】図２７は、サーバの接続情報の取得要求の一例を示す図である。
【図２８】図２８は、サーバの接続情報の一例を示す図である。
【図２９】図２９は、各モジュールの接続情報の取得要求の一例を示す図である。
【図３０】図３０は、各モジュールの接続情報の一例を示す図である。
【図３１】図３１は、サーバの接続情報と、接続先提供サーバの接続情報との取得要求の一例を示す図である。
【図３２】図３２は、サーバの接続情報と、複数の接続先提供サーバの接続情報の一例を示す図である。
【図３３】図３３は、操作画面の一例を示す図である。
【図３４】図３４は、地域情報設定画面の一例を示す図である。
【図３５】図３５は、地域情報設定ダイアログ画面の一例を示す図である。
【図３６】図３６は、販社情報入力画面の一例を示す図である。
【図３７】図３７は、エラー画面の一例を示す図である。
【図３８】図３８は、アプリケーション一覧画面の一例を示す図である。
【図３９】図３９は、表示情報要求の一例を示す図である。
【図４０】図４０は、表示情報要求に対する応答として受信した情報の一例を示す図である。
【図４１】図４１は、インストール指示画面の一例を示す図である。
【図４２】図４２は、インストール確認画面の一例を示す図である。
【図４３】図４３は、実行部から処理実行部へ通知される情報の一例を示す図である。
【図４４】図４４は、入力画面の一例を示す図である。
【図４５】図４５は、アプリケーション管理情報の一例を示す図である。
【図４６】図４６は、アプリケーション詳細情報の一例を示す図である。
【図４７】図４７は、更新指示画面の一例を示す図である。
【図４８】図４８は、実行部から処理実行部へ通知される情報の一例を示す図である。
【図４９】図４９は、削除指示画面の一例を示す図である。
【図５０】図５０は、削除確認画面の一例を示す図である。
【図５１】図５１は、実行部から処理実行部へ通知される情報の一例を示す図である。
【図５２】図５２は、システムの動作手順の一例を示すシーケンス図である。
【図５３】図５３は、ＭＦＰの動作例を示すフローチャートである。
【図５４】図５４は、サーバの動作例を示すフローチャートである。
【図５５】図５５は、システムの動作手順の一例を示すシーケンス図である。
【図５６】図５６は、システムの動作手順の一例を示すシーケンス図である。
【図５７】図５７は、システムの動作手順の一例を示すシーケンス図である。
【図５８】図５８は、ショートカット作成指示画面の一例を示す図である。
【図５９】図５９は、変形例のアプリケーション一覧画面の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照しながら、本発明に係るシステムおよび情報処理方法の実施形態を詳細に説明する。以下では、システムに含まれる機器の一例として、画像形成装置の一態様である複合機（ＭＦＰ：Multifunction  Peripheral）を例に挙げて説明するが、これに限られるものではない。なお、複合機とは、コピー機能、スキャナ機能、プリンタ機能、ファクス機能などの複数の異なる機能を有する装置である。
【００１１】
図１は、本実施形態のシステム（情報処理システム）１の構成の一例を示す図である。図１に示すように、システム１は、サーバ２と、サーバ３と、サーバ４と、接続先提供サーバ５と、例えばインターネットなどのネットワーク７を介してサーバ２〜４および接続先提供サーバ５に接続されるＭＦＰ６と、を備える。なお、サーバ２〜４や接続先提供サーバ５は、複数のサーバから構成されるサーバ装置群を有しているクラウドコンピューティング型の形態である。図１に示すクラウドを構成するサーバの数は、一例を示したものであり、使用するサーバの数はこれに限定されない。
【００１２】
なお、図１の例では、クラウド側から見るとクライアントとなるシステム１に含まれる機器として、１台のＭＦＰ６のみを例示しているが、これに限られるものではなく、システム１に含まれる機器の台数および種類は任意である。例えばクライアントとなる機器として、ＰＣ（Personal  Computer）がシステム１に含まれる形態であってもよい。また、システム１に含まれるサーバ（第１サーバ）として、３台のサーバ２〜４を例示しているが、これに限られるものではなく、システム１に含まれるサーバの台数および種類は任意である。また、システム１に含まれる接続先提供サーバ（第２サーバ）として、１台の接続先提供サーバ５を例示しているが、これに限られるものではなく、システム１に含まれる接続先提供サーバの台数および種類は任意である。なお以下では、「機器」を「ＭＦＰ」とも表記する。なお、請求項の「第１サーバ」は「サーバ２〜４」に対応し、請求項の「第２サーバ」は「接続先提供サーバ５」に対応する。
【００１３】
接続先提供サーバ５は、ＭＦＰ６からサーバ２〜４の接続情報（ＵＲＬ）の取得要求に応じてサーバ２〜４の接続情報をＭＦＰ６へ送信する。サーバ２〜４は、ＭＦＰ６からの要求に応じて、ＭＦＰ６が利用可能なアプリケーションを示す情報を含む表示情報と、アプリケーションに関する処理をＭＦＰ６に実行させるコマンドを示すアプリケーションコマンドとを含む画面情報とで構成されるＷｅｂコンテンツデータをＭＦＰ６へ送信する。サーバ２〜４は、サーバが設置されている地理的位置を示す地域が異なるだけであるので、以下では、サーバ２〜４を区別する必要がない場合、サーバ２と表記する。なお図１の例において、サーバ２の地域は日本であり、サーバ３の地域はアメリカであり、サーバ４の地域はヨーロッパである。以下、サーバ２の具体的な構成を説明する。
【００１４】
図２は、サーバ２のハードウェア構成の一例を示す図である。図２に示すように、サーバ２は、ＣＰＵ３０１と、ＲＯＭ３０２と、ＲＡＭ３０３と、通信Ｉ／Ｆ３０４と、入力装置３０５と、表示装置３０６と、補助記憶装置３０７とを備える。ＣＰＵ３０１は、サーバ２の動作を統括的に制御する。ＲＯＭ３０２は、プログラム等の各種のデータを記憶する不揮発性のメモリである。ＲＡＭ３０３は、ＣＰＵ３０１が実行する各種の処理の作業領域（ワークエリア）として機能する揮発性のメモリである。通信Ｉ／Ｆ３０４は、ネットワーク７と接続するためのインタフェースである。入力装置３０５は、ユーザによる操作の入力に用いられるデバイスであり、例えばマウスやキーボードなどで構成される。表示装置３０６は各種の情報を表示するデバイスであり、例えば液晶型ディスプレイ装置などで構成される。補助記憶装置３０７は、例えばＨＤＤ（Hard  Disk  Drive）などで構成される。
【００１５】
図３は、サーバ２が有する機能の一例を示す図である。図３に示すように、サーバ２は、アプリ情報管理モジュール２１０と、ライセンス管理モジュール２２０と、アプリダウンロード管理モジュール２３０とを有する。図３の例では、本実施形態に関するモジュール（機能）のみを例示しているが、サーバ２が有するモジュールはこれらに限られるものではない。
【００１６】
図４は、アプリ情報管理モジュール２１０が有する機能の一例を示す図である。アプリ情報管理モジュール２１０は、記憶部２１１と、制御部２１２と、画面提供部２１３と、設定部２１４と、を有している。なお、図４の例では、本実施形態に関する機能を主に例示しているが、アプリ情報管理モジュール２１０が有する機能はこれらに限られるものではない。
【００１７】
図４に示すように、記憶部２１１は、アプリ情報データベース（以下、「アプリ情報ＤＢ」と称する）２６１と、ユーザ情報データベース（以下、「ユーザ情報ＤＢ」と称する）２６２とを有する。
【００１８】
アプリ情報ＤＢ２６１は、機器（ＭＦＰ６）が設置されている地理的位置を示す地域情報、または機器の販売店を示す販社情報に対応するアプリケーションを提供する組織を識別する組織ＩＤに紐付いている複数のアプリケーションごとに、公開されている状態であるか否かを示す公開状態情報と、該アプリケーションを利用可能な機器の機種を識別する機種情報とを対応付けて記憶する。本実施形態では、アプリ情報ＤＢ２６１は、図５に示す第１の対応情報と、図６に示す第２の対応情報と、図７に示す第３の対応情報と、図８に示す第４の対応情報と、図９に示す第５の対応情報と、図１０に示す第６の対応情報とを記憶している。
【００１９】
図５に示すように、第１の対応情報は、機器（ＭＦＰ６）の機種ごとに割り当てられた機種ＩＤと、機器の機種名と、機器の機種を識別する機種コード（「機種情報」）とを対応付けた情報である。なお、１つの機種ＩＤに、複数の機種コードを対応付けてもよい。図６に示すように、第２の対応情報は、アプリケーションを識別するアプリＩＤと、アプリケーションの使用権限（ライセンス）の認証に用いられるライセンスキーと、機種ＩＤと、該アプリＩＤで識別されるアプリケーションの最新のバージョンを示すバージョン情報とを対応付けた情報である。なお、この例では、無償のアプリケーションのアプリＩＤに対しては、ライセンスの認証が不要であるために予めライセンスキーが対応付けられているが、有償のアプリケーションのアプリＩＤに対しては、ライセンスの認証が必要になるのでライセンスキーは対応付けられない構成となる。
【００２０】
図７に示すように、第３の対応情報は、アプリケーションを提供する組織ごとに割り当てられた組織ＩＤと、該組織ＩＤで識別される組織名称と、該組織の種別と、該組織が位置する地理的位置を示す地域情報と、機器（ＭＦＰ６）の販売店を示す販社情報とを対応付けた情報である。図８に示すように、第４の対応情報は、組織ＩＤと、アプリＩＤと、アプリケーションが公開されている状態であるか否かを示す公開状態情報とを対応付けた情報である。以上の第１の対応情報と第２の対応情報と第３の対応情報と第４の情報との組み合わせにより、地域情報、または販社情報に対応するアプリケーションを提供する組織ＩＤに紐付いている複数のアプリケーションごとに、公開されている状態であるか否かを示す公開状態情報と、該アプリケーションを利用可能な機器の機種を識別する機種情報とを対応付けていると考えることができる。
【００２１】
また、図９に示すように、第５の対応情報は、アプリＩＤと、機器が使用される国や地域の言語を示す言語情報と、該アプリＩＤで識別されるアプリケーションの表示名称と、該アプリＩＤで識別されるアプリケーションを紹介する紹介メッセージとを対応付けた情報である。以下の説明では、表示名称と紹介メッセージとの組み合わせを、アプリケーションを説明するための「アプリ説明情報」と称する場合がある。
【００２２】
また、図１０に示すように、第６の対応情報は、組織ＩＤと、アプリＩＤと、言語情報と、該アプリＩＤで識別されるアプリケーションの価格と、該アプリＩＤで識別されるアプリケーションの価格説明とを対応付けた情報である。以下の説明では、価格と価格説明との組合せを、アプリケーションの価格を説明するための「アプリ価格情報」と称する場合がある。
【００２３】
図４に戻って記憶部２１１の説明を続ける。ユーザ情報ＤＢ２６２は、例えば後述の設定部２１４による設定のための操作を行う権限を有するユーザの認証に必要な情報を記憶する。
【００２４】
次に、制御部２１２が有する機能を説明する。ここでは、制御部２１２が有する機能は、サーバ２側のアプリケーションプログラミングインタフェース（ＡＰＩ）により提供される。
【００２５】
ここで、説明の便宜上、制御部２１２が有する機能を説明する前に、画面提供部２１３の機能を説明する。画面提供部２１３は、機器（ＭＦＰ６）から、画面情報を要求する画面情報要求を受信した場合に、アプリケーションコマンドを少なくとも含むＷｅｂコンテンツデータ（画面情報）を生成し、画面情報要求に対する応答として、Ｗｅｂコンテンツデータ（画面情報）を機器（ＭＦＰ６）へ送信する。Ｗｅｂコンテンツデータ（画面情報）は、例えばＨＴＭＬと、ＨＴＭＬに含まれる（あるいはＨＴＭＬから参照される）ＣＳＳ、ＪａｖａＳｃｒｉｐｔ（登録商標）などを含む。これを、機器（ＭＦＰ６）のＷｅｂブラウザ（後述の表示制御部２７３）が表示して、ＪａｖａＳｃｒｉｐｔのＡｊａｘと呼ばれる技術で、サーバ２のＡＰＩ（制御部２１２）に表示情報を依頼する。例えばアプリケーションコマンドがＪａｖａＳｃｒｉｐｔである場合、ＨＴＭＬにスクリプト自体を埋め込む形態であってもよいし、リンクだけを記載する形態であってもよい。この例では、送信元の機器（ＭＦＰ６）の機種コードを含み、かつ、表示情報を要求する表示情報要求が、制御部２１２へ送信される。本実施形態のアプリケーションコマンドの種類として、インストール命令、更新命令、アンインストール命令などが挙げられる。インストール命令は、アプリケーションをインストールする命令を示す。更新命令は、アプリケーションを更新する命令を示す。アンインストール命令は、インストール済みのアプリケーションを削除して、ＭＦＰ４の状態を、該アプリケーションをインストールする前の状態に戻す命令を示す。
【００２６】
図１１は、制御部２１２が有する機能の一例を示す図である。図１１に示すように、制御部２１２は、特定部２１６と、表示情報生成部２１７と、設定制御部２１９とを有する。
【００２７】
特定部２１６は、機器（ＭＦＰ６）から、該機器が設置されている地理的位置を示す地域情報と、該機器の機種を識別する機種コードとを少なくとも含み、かつ、表示情報を要求する表示情報要求を受信した場合に、記憶部２１１（この例ではアプリ情報ＤＢ２６１）に記憶された情報を参照して、表示情報要求に含まれる地域情報と、機種コードと、地域情報に紐付いた組織ＩＤで公開されている状態を示す公開状態情報との組み合わせに対応するアプリケーションを特定する。より具体的には、特定部２１６は、機器から表示情報要求を受信した場合、図７に示す第３の対応情報を参照して、その受信した表示情報要求に含まれる地域情報または販社情報に対応付けられた組織ＩＤを選択する。なお、販社情報が含まれている場合は販社情報に対応付けられた組織ＩＤを優先的に選択し、販社情報が含まれていない場合は地域情報に対応付けられた組織ＩＤを選択する。次に、特定部２１６は、図８に示す第４の対応情報を参照して、その選択した組織ＩＤに対応付けられた１以上のアプリＩＤの中から、公開されている状態を示す公開状態情報が対応付けられたアプリＩＤを選択する。次に、特定部２１６は、図５に示す第１の対応情報を参照して、その受信した表示情報要求に含まれる機種コードに対応付けられた機種ＩＤを選択する。次に、特定部２１６は、図６に示す第２の対応情報を参照して、その選択した機種ＩＤに対応付けられた１以上のアプリＩＤを選択する。次に、特定部２１６は、図８で選択した組織ＩＤに対応付けられた１以上のアプリＩＤの中で公開されているアプリＩＤと、図６で選択した機種ＩＤに対応付けられた１以上のアプリＩＤとを比較して一致するアプリＩＤを特定する。以上のようにして特定したアプリＩＤで識別されるアプリケーションを、機器（ＭＦＰ６）から受信した表示情報要求に含まれる地域情報と、機種コードと、地域情報に紐付いた組織ＩＤで公開されている状態を示す公開状態情報との組み合わせに対応するアプリケーションとして（つまり、表示情報要求の要求元の機器で利用可能なアプリケーションとして）特定する。
【００２８】
また、本実施形態における表示情報要求の中には、該表示情報要求の要求元の機器が使用される国または地域の言語を示す言語情報（ロケール情報）が含まれているので、特定部２１６は、図９に示す第５の対応情報を参照して、以上のようにして特定したアプリＩＤと、機器から受信した表示情報要求に含まれる言語情報との組み合わせに対応するアプリ説明情報を特定することができる。同様に、本実施形態における表示情報要求の中には、該表示情報要求の要求元の機器が使用される国または地域の言語を示す言語情報（ロケール情報）が含まれているので、特定部２１６は、図１０に示す第６の対応情報を参照して、以上のようにして特定した組織ＩＤごとのアプリＩＤと、機器から受信した表示情報要求に含まれる言語情報との組み合わせに対応するアプリ価格情報を特定することができる。なお、上記言語情報は、ＨＴＴＰのＡｃｃｅｐｔ−Ｌａｎｇｕａｇｅヘッダで記載するのが一般的である。
【００２９】
図１１の説明を続ける。表示情報生成部２１７は、特定部２１６により特定されたアプリケーションを示すＷｅｂコンテンツデータ（表示情報）を生成し、その生成したＷｅｂコンテンツデータ（表示情報）を、表示情報要求に対する応答として機器（ＭＦＰ６）へ送信する。本実施形態のＷｅｂコンテンツデータ（表示情報）は、表示情報要求の要求元の機器（ＭＦＰ６）が利用可能なアプリケーションごとに（例えばアプリＩＤごとに）、該アプリケーションの詳細を示す詳細情報を対応付けたアプリケーション詳細情報を含んでいる。詳細情報としては、ライセンスキー、バージョン情報、アプリ説明情報、アプリ価格情報などが含まれる。
【００３０】
設定制御部２１９は、設定部２１４による設定を、記憶部２１１に記憶された情報に反映させる制御を行う。つまり、設定制御部２１９は、設定部２１４による設定に応じて、記憶部２１１に記憶された情報を更新する制御を行う。この例では、設定部２１４は、ユーザの操作に応じて、表示情報を可変に設定する機能を有する。例えば設定部２１４は、ユーザの操作に応じて、アプリ説明情報やアプリ価格情報、画面上の表示部品の配置などを示すレイアウト情報を可変に設定することができる。これにより、例えば地域ごとに異なる表示内容とすることもできる。
【００３１】
以上に説明した制御部２１２、画面提供部２１３および設定部２１４の各々の機能は、ＣＰＵ３０１がＲＯＭ３０２等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明した記憶部２１１は、ＲＯＭ３０２またはＨＤＤ等の補助記憶装置３０７などにより実現可能である。この例では、制御部２１２と画面提供部２１３との組み合わせが、機器（ＭＦＰ６）からの要求に応じて、機器（ＭＦＰ６）が利用可能なアプリケーションを示す表示情報と、アプリケーションコマンドを少なくとも含む画面情報とで構成されるＷｅｂコンテンツデータを送信する機能（「制御部」）に対応していると考えることができる。
【００３２】
次に、ライセンス管理モジュール２２０が有する機能を説明する。図１２は、ライセンス管理モジュール２２０が有する機能の一例を示す図である。図１２に示すように、ライセンス管理モジュール２２０は、記憶部２２１と、制御部２２２と、ライセンス発行部２２３とを有している。なお、図１２の例では、本実施形態に関する機能を主に例示しているが、ライセンス管理モジュール２２０が有する機能はこれらに限られるものではない。
【００３３】
図１２に示すように、記憶部２２１は、ライセンス情報データベース（以下、「ライセンス情報ＤＢ」と称する）２２４と、ユーザ情報データベース（以下、「ユーザ情報ＤＢ」と称する）２２５と、を有する。
【００３４】
ライセンス情報ＤＢ２２４は、複数のアプリケーションごとに、該アプリケーションの使用権限（ライセンス）に関する情報を対応付けて記憶する。本実施形態では、ライセンス情報ＤＢ２２４は、図１３に示す第７の対応情報と、図１４に示す第８の対応情報と、図１５に示す第９の対応情報とを記憶している。
【００３５】
図１３に示すように、第７の対応情報は、アプリＩＤと、ライセンスの種別を示すライセンス種別と、ライセンスの形態（この例では、有償、無償、トライアルのうちの何れか）を示すライセンス形態と、ライセンスが有効な期間を示す有効期限と、ライセンスを付与可能な数を示すボリューム数とを対応付けた情報である。また、図１４に示すように、第８の対応情報は、ライセンス種別と、ライセンスキーと、使用中のライセンスの数を示す使用中ライセンス数と、使用済みのライセンスの数を示す使用済みライセンス数とを対応付けた情報である。さらに、図１５に示すように、第９の対応情報は、ライセンスキーと、機番と、有効期限と、ライセンスが有効であるか無効であるかを示す有効状態情報とを対応付けた情報である。
【００３６】
図１２に戻って記憶部２２１の説明を続ける。ユーザ情報ＤＢ２２５は、例えばライセンスを発行するための操作を行うことができるユーザの認証に必要な情報を記憶する。このユーザ情報ＤＢ２２５は、アプリ情報管理モジュール２１０のユーザ情報ＤＢ２６２と共通であってもよい。
【００３７】
次に、制御部２２２が有する機能を説明する。ここでは、制御部２２２が有する機能は、サーバ２側のアプリケーションプログラミングインタフェース（ＡＰＩ）により提供される。図１６は、制御部２２２が有する機能の一例を示す図である。図１６に示すように、制御部２２２は、登録制御部２２６と、ライセンス有効化部２２７と、ライセンス無効化部２２８とを有する。
【００３８】
登録制御部２２６は、ライセンス発行部２２３により発行されたライセンスに関する情報を記憶部２２１（ライセンス情報ＤＢ２２４）に登録する制御を行う。本実施形態では、ライセンス発行部２２３は、ライセンスを発行するための操作を行う権限を有するユーザから、ライセンスを発行する対象となるアプリケーションのアプリＩＤと、ライセンス種別を選択する操作を受け付けた場合、その受け付けた操作により選択されたアプリＩＤとライセンス種別に対応するライセンスキーを発行する。なお、ライセンス発行部２２３は、ＨＴＭＬなどで記述されるＵＩを作るだけにして、ユーザの操作に応じてライセンスを発行する機能は、制御部２２２が有する形態であってもよい。登録制御部２２６は、ライセンス発行部２２３により発行されたライセンスキーと、該ライセンスキーに対応するライセンス種別とを示す情報をライセンス情報ＤＢ２２４に登録する制御を行う。より具体的には、登録制御部２２６は、ライセンス発行部２２３から、ライセンスキーと、該ライセンスキーに対応するライセンス種別とを受け取った場合、図１４に示す第８の対応情報の中に、その受け取ったライセンスキーとライセンス種別とを含む新たなレコード（単位情報、この例では行単位の情報）を追加する。
【００３９】
ライセンス有効化部２２７は、機器（ＭＦＰ６）からの要求に応じて、ライセンスを有効化するための制御を行う。この例では、ライセンス有効化部２２７は、アプリＩＤとライセンスキーと機番とを少なくとも含み、かつ、ライセンスの有効化を要求する有効化要求を機器（ＭＦＰ６）から受信した場合、ライセンス情報ＤＢ２２４に記憶された第８の対応情報（図１４参照）の中に、その受信した有効化要求に含まれるライセンスキーが存在するか否かを確認する。その確認結果が肯定の場合、ライセンス有効化部２２７は、ライセンス情報ＤＢ２２４に記憶された第７の対応情報（図１３参照）を参照して、その受信した有効化要求に含まれるアプリＩＤに対応付けられた有効期限を特定する。そして、図１５に示す第９の対応情報の中に、受信した有効化要求に含まれるライセンスキーおよび機番と、特定した有効期限と、有効を示す有効状態情報とを対応付けた新たなレコードを追加する。また、ライセンス有効化部２２７は、図１４に示す第８の対応情報を参照して、機器（ＭＦＰ６）から受信した有効化要求に含まれるライセンスキーに対応付けられた使用中ライセンス数を「１」だけインクリメントして更新する。そして、ライセンス有効化部２２７は、有効化要求に対する応答として、ライセンスの状態が有効である旨を機器（ＭＦＰ６）へ送信する。この通知を受けた機器（ＭＦＰ６）は、有効化要求に含まれるアプリＩＤで識別されるアプリケーションを利用することができる。
【００４０】
なお、例えばライセンス情報ＤＢ２２４に記憶された情報の中に、機器（ＭＦＰ６）から受信した有効化要求に含まれるライセンスキーが存在しない場合や、機器（ＭＦＰ６）から受信した有効化要求に含まれるライセンスキーに対応するボリューム数が既に上限に到達している場合は、ライセンス有効化部２２７は、機器（ＭＦＰ６）からの有効化要求に対して、エラーを返すことになる。
【００４１】
ライセンス無効化部２２８は、機器（ＭＦＰ６）からの要求に応じて、ライセンスを無効化するための制御を行う。この例では、ライセンス無効化部２２８は、ライセンスキーと機番とを少なくとも含み、かつ、ライセンスの無効化を要求する無効化要求を機器（ＭＦＰ６）から受信した場合、ライセンス情報ＤＢ２２４に記憶された第９の対応情報（図１５参照）を参照して、その受信した無効化要求に含まれるライセンスキーと機番との組み合わせに対応付けられた有効状態情報を、無効を示す情報に変更する。また、ライセンス情報ＤＢ２２４に記憶された第８の対応情報（図１４参照）を参照して、機器（ＭＦＰ６）から受信した無効化要求に含まれるライセンスキーに対応付けられた使用中ライセンス数を「１」だけデクリメントし、使用済みライセンス数を「１」だけインクリメントして更新する。そして、ライセンス無効化部２２８は、無効化要求に対する応答として、ライセンスの状態が無効である旨を機器（ＭＦＰ６）へ送信する。この通知を受けた機器（ＭＦＰ６）は、無効化要求に含まれるアプリＩＤで識別されるアプリケーションを利用することはできなくなる。
【００４２】
以上に説明した制御部２２２およびライセンス発行部２２３の各々の機能は、ＣＰＵ３０１がＲＯＭ３０２等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明した記憶部２２１は、ＲＯＭ３０２またはＨＤＤ等の補助記憶装置３０７により実現可能である。
【００４３】
次に、アプリダウンロード管理モジュール２３０が有する機能を説明する。図１７は、アプリダウンロード管理モジュール２３０が有する機能の一例を示す図である。図１７に示すように、アプリダウンロード管理モジュール２３０は、アプリストレージ２３１と、ダウンロード部２３２とを有している。なお、図１７の例では、本実施形態に関する機能を主に例示しているが、アプリダウンロード管理モジュール２３０が有する機能はこれらに限られるものではない。
【００４４】
アプリストレージ２３１は、機器（ＭＦＰ６）に提供するための複数のアプリケーションを記憶している。この例では、アプリストレージ２３１は、複数のアプリＩＤごとに、アプリケーション本体を含むデータファイルを対応付けて記憶している。ダウンロード部２３２は、機器（ＭＦＰ６）からの要求に応じて、アプリストレージ２３１に記憶された何れかのアプリケーションをＭＦＰ６へ送信（ダウンロード）する制御を行う。この例では、ダウンロード部２３２は、アプリＩＤを少なくとも含み、かつ、アプリケーションのダウンロードを要求するダウンロード要求を機器（ＭＦＰ６）から受信した場合、その受信したダウンロード要求に含まれるアプリＩＤに対応するアプリケーションを機器（ＭＦＰ６）へ送信する。より具体的には、ダウンロード部２３２は、アプリストレージ２３１を参照して、機器（ＭＦＰ６）から受信したダウンロード要求に含まれるアプリＩＤに対応するデータファイルを特定し、その特定したデータファイルを機器（ＭＦＰ６）へ送信する。
【００４５】
以上に説明したダウンロード部２３２の機能は、ＣＰＵ３０１がＲＯＭ３０２等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明したアプリストレージ２３１は、ＲＯＭ３０２またはＨＤＤ等の補助記憶装置３０７により実現可能である。
【００４６】
以上がサーバ２の構成となる。なお、サーバ２は、図１に示したように、複数のサーバから構成される形態であってもよい。例えば図１８に示すように、サーバ２は、アプリケーションサーバ２４０と、データベースサーバ２５０とから構成される形態であってもよい。例えばアプリケーションサーバ２４０は、上述の制御部２１２、画面提供部２１３、設定部２１４、制御部２２２、ライセンス発行部２２３を有する形態であってもよい。また、例えばアプリケーションサーバ２４０は、複数のサーバで構成され、上述の制御部２１２、画面提供部２１３、設定部２１４、制御部２２２、ライセンス発行部２２３、ダウンロード部２３２の各々は、何れかのサーバに分散して搭載される形態であってもよい。
【００４７】
また、例えばデータベースサーバ２５０は、上述の記憶部２１１および記憶部２２１を有する形態であってもよい。また、例えばデータベースサーバ２５０は、複数のサーバで構成され、上述のアプリ情報ＤＢ２６１、ユーザ情報ＤＢ２６２、ライセンス情報ＤＢ２２４、ユーザ情報ＤＢ２２５、アプリストレージ２３１の各々は、何れかのサーバに分散して搭載される形態であってもよい。
【００４８】
また、図１の例で説明したように、例えばサーバ２の地域は日本であり、サーバ３の地域はアメリカであり、サーバ４の地域はヨーロッパである。このような場合、上記のサーバ２〜４の構成はすべて同じ構成であってもよい。また例えば、サーバ２（日本）だけがライセンス管理モジュールを備え、サーバ３（アメリカ）、サーバ４（ヨーロッパ）はライセンス管理モジュールを備えない構成であってもよい。また例えば、サーバ２（日本）、サーバ４（ヨーロッパ）がアプリケーションサーバ２４０と、データベースサーバ２５０とを備え、サーバ３（アメリカ）は、アプリケーションサーバ２４０と、データベースサーバ２５０とを備えない構成であってもよい。
【００４９】
また、アプリダウンロード管理モジュール２３０は、応答性を向上させるために、例えば、サーバ２〜４に備えるようにし、ライセンス管理モジュール２２０は、一極集中管理を行うために、例えば、サーバ２（日本）に備えるようにしてもよい。また、アプリ情報管理モジュール２１０は、応答性を向上させるためや、データ保護の観点からサーバ２（日本）、サーバ４（ヨーロッパ）に備えるようにし、アプリ情報管理モジュール２１０のサブモジュール（設定部２１４）は、業務効率の向上のためにサーバ２（日本）に備えるようにしてもよい。
【００５０】
次に、接続先提供サーバ５の機能構成について説明する。なお、接続先提供サーバ５のハードウェア構成の一例は、上記の図２を用いて説明した、サーバ２のハードウェア構成の一例と同様であるため詳細な説明は省略する。図１９は、接続先提供サーバ５が有する機能の一例を示す図である。図１９に示すように、接続先提供サーバ５は、サービス検索モジュール３１０を有する。図１９の例では、本実施形態に関するモジュール（機能）のみを例示しているが、接続先提供サーバ５が有するモジュールはこれに限られるものではない。
【００５１】
図２０は、サービス検索モジュール３１０が有する機能の一例を示す図である。サービス検索モジュール３１０は、記憶部３１１と、制御部３１２と、を有している。なお、図２０の例では、本実施形態に関する機能を主に例示しているが、サービス検索モジュール３１０が有する機能はこれらに限られるものではない。
【００５２】
図２０に示すように、記憶部３１１は、接続情報データベース（以下、「接続情報ＤＢ」と称する）３２１を有する。
【００５３】
接続情報ＤＢ３２１は、少なくとも、アプリケーションを提供する組織ごとに割り当てられた組織ＩＤと、該組織が位置する地理的位置を示す地域情報と、機器（ＭＦＰ６）の販売店を示す販社情報とを対応付けた情報を記憶する。
【００５４】
接続情報ＤＢ３２１は、少なくとも、機器（ＭＦＰ６）が設置されている地理的位置を示す地域情報または機器（ＭＦＰ６）の販売店を示す販社情報に対応付けられた組織ＩＤと、アプリケーションを提供するサーバ２の接続情報とを対応付けた情報を記憶する。
【００５５】
また、接続情報ＤＢ３２１は、少なくとも、機器（ＭＦＰ６）を識別する機器情報（機番）と、アプリケーションを提供するサーバの接続情報とを対応付けた情報を記憶する。本実施形態では、接続情報ＤＢ３２１は、図７に示した第３の対応情報と、図２１に示す第１０の対応情報と、図２２に示す第１１の対応情報とを記憶している。なお、接続情報ＤＢ３２１は、第３の対応情報および第１０の対応情報、または第１１の対応情報のどちらか一方を記憶するようにしてもよい。
【００５６】
図２１に示すように、第１０の対応情報は、アプリケーションを提供する組織ごとに割り当てられた組織ＩＤと、組織ＩＤで識別される組織で公開されているアプリケーションを提供するサーバの接続情報とを対応付けた情報である。図７に示す第３の対応情報および図２１に示す第１０の対応情報を用いることで、機器（ＭＦＰ６）が設置されている地域情報または販社情報に基づいて、地域情報または販社情報に対応する組織ＩＤで識別される組織で公開されているアプリケーションを提供するサーバの接続情報（ＵＲＬ）を特定することができる。これにより、接続先提供サーバ５は、機器（ＭＦＰ６）に一番近いロケーションにあるサーバに接続させることができる。
【００５７】
図２２に示すように、第１１の対応情報は、機器（ＭＦＰ６）を識別する機番と、アプリケーションを提供するサーバの接続情報とを対応付けた情報である。第１１の対応情報を用いることで、機番から、アプリケーションを提供するサーバの接続情報（ＵＲＬ）を特定することができる。これにより、機番ごとに、アプリケーションを提供するサーバの接続情報を管理する場合には、接続先提供サーバ５は、機器（ＭＦＰ６）の機番に対応付いた所定のサーバに接続させることができる。例えば、特定の機器だけを特別に所定のサーバに接続させたい場合、具体的には、複数地域にまたがる企業のユーザに対して、地域情報（地域コード）または販社情報（販社コード）は、契約元の本社所在地に基づいて設定されていたとしても、機器（ＭＦＰ６）に接続させるサーバは機器（ＭＦＰ６）の設置されている場所に近いところのサーバに接続させたい場合には、第１１の対応情報を用いることで、接続先提供サーバ５は、機器（ＭＦＰ６）の機番に対応付いた所定のサーバに接続させることができる。このように、接続先提供サーバ５は、機器（ＭＦＰ６）から地域情報または販社情報と、機器情報（機番）とを少なくとも含む、接続情報取得要求を受け付けた場合、地域情報または販社情報に拠らず、機器（ＭＦＰ６）ごとに所定の接続情報を特定することができる。
【００５８】
上記の第１０の対応情報および第１１の対応情報の用い方として、例えば通常は機器（ＭＦＰ６）が設置されている地域情報（地域コード）または販社情報（販社コード）に基づいて、第１０の対応情報を用いて、地域情報または販社情報に対応する組織ＩＤで識別される組織で公開されているアプリケーションを提供するサーバの接続情報（ＵＲＬ）を特定し、特定の機器だけを所定のサーバに接続させたい場合には、第１１の対応情報を用いて、機器（ＭＦＰ６）の機番に対応付いた所定のサーバを特定する。なお、図２２に示した第１１の対応情報に機番が登録されている場合は第１１の対応情報を用いてサーバの接続情報を特定し、第１１の対応情報に機番が登録されていない場合には、第１０の対応情報を用いて地域情報または販社情報に基づいてサーバの接続情報を特定するようにしてもよい。
【００５９】
次に、制御部３１２が有する機能を説明する。制御部３１２は、機器（ＭＦＰ６）から該機器（ＭＦＰ６）が設置されている地理的位置を示す地域情報または機器（ＭＦＰ６）の販売店を示す販社情報と、該機器（ＭＦＰ６）を識別する機器情報（機番）とを少なくとも含み、サーバ２の接続情報の取得を要求する接続情報取得要求に応じて、記憶部３１１に記憶された情報を参照し、サーバ２の接続情報を特定し、該サーバ２の接続情報を機器（ＭＦＰ６）に送信する制御を行う。ここでは、制御部３１２が有する機能は、接続先提供サーバ５側のアプリケーションプログラミングインタフェース（ＡＰＩ）により提供される。
【００６０】
図２３は、制御部３１２が有する機能の一例を示す図である。図２３に示すように、制御部３１２は、接続情報特定部３２２と、リスト生成部３２３とを有する。
【００６１】
まず、接続情報特定部３２２とリスト生成部３２３の役割分担について説明する。本実施形態では、接続情報特定部３２２がサーバ２の接続情報（ＵＲＬ）を特定してリスト生成部３２３に受け渡し、リスト生成部３２３が所定の条件に従って並べた複数のサーバの接続情報の接続一覧情報（リスト）を生成して接続情報特定部３２２に受け渡し、接続情報特定部３２２が接続情報の接続一覧情報（サーバ２の接続情報の接続一覧情報）を機器（ＭＦＰ６）に送信する。なお、所定の条件は任意に設定できる。また、本実施形態において、接続情報特定部３２２が特定するサーバ２の接続情報（ＵＲＬ）が１つだけの場合と、複数ある場合とがある。サーバ２の接続情報（ＵＲＬ）が１つだけの場合にはリスト生成部３２３は、接続情報（ＵＲＬ）が１つの接続一覧情報（リスト）を生成する。また、サーバ２の接続情報（ＵＲＬ）が複数ある場合にはリスト生成部３２３は、所定の条件に従って並べた複数の接続情報（ＵＲＬ）の接続一覧情報（リスト）を生成する。なお、「接続情報特定部」は請求項の「接続情報送信部」の機能を含んでいる。以下では、接続一覧情報を「リスト」とも表記する。
【００６２】
また、本実施形態の変形例として、リスト生成部３２３が生成した複数のサーバの接続情報の接続一覧情報（リスト）を、リスト生成部３２３から機器（ＭＦＰ６）に送信させるようにすることも可能である。この場合、接続情報特定部３２２がサーバ２の接続情報（ＵＲＬ）を特定してリスト生成部３２３に受け渡し、リスト生成部３２３が所定の条件に従って並べた複数のサーバの接続情報の接続一覧情報（リスト）を生成して、リスト生成部３２３が接続情報の接続一覧情報（サーバ２の接続情報の接続一覧情報）を機器（ＭＦＰ６）に送信する。
【００６３】
（接続情報が１つの場合）
接続情報特定部３２２は、機器（ＭＦＰ６）から地域情報または販社情報と、該機器（ＭＦＰ６）を識別する機器情報（機番）とを少なくとも含み、サーバ２の接続情報の取得を要求する接続情報取得要求を受け付けて、記憶部３１１（この例では接続情報ＤＢ３２１）に記憶された情報を参照して、サーバ２の接続情報の取得要求に含まれる地域情報または販社情報に対応する組織ＩＤで識別される組織で公開されているアプリケーションを提供するサーバ２の接続情報（ＵＲＬ）を特定し、サーバ２の接続情報（ＵＲＬ）をリスト生成部３２３に受け渡し、リスト生成部３２３で生成された接続情報（ＵＲＬ）のリストを受け取って機器（ＭＦＰ６）に送信する。具体的には、接続情報特定部３２２は、機器（ＭＦＰ６）からサーバ２の接続情報取得要求を受信した場合、図７に示す第３の対応情報を参照して、その受信したサーバ２の接続情報取得要求に含まれる地域情報または販社情報に対応付けられた組織ＩＤを選択する。例えば、サーバ２の接続情報取得要求に地域情報「ＪＰ」が含まれていた場合、接続情報特定部３２２は、組織ＩＤ「Ｏ０００２」を選択する。なお、販社情報が含まれている場合は販社情報に対応付けられた組織ＩＤを優先的に選択し、販社情報が含まれていない場合は地域情報に対応付けられた組織ＩＤを選択する。そして、接続情報特定部３２２は、図２１に示す第１０の対応情報の中で、選択した組織ＩＤで識別される組織で公開されているアプリケーションを提供するサーバ２の接続情報（この例では、組織ＩＤ「Ｏ０００２」（日本支社）の接続情報、https://jp.example.com/apps）を特定し、特定したサーバ２の接続情報（https://jp.example.com/apps）をリスト生成部３２３に受け渡す。そして、接続情報特定部３２２は、リスト生成部３２３で生成された接続情報（ＵＲＬ）の接続一覧情報（リスト）を受け取って機器（ＭＦＰ６）に送信する。この際に接続情報取得要求のパラメータに、自身（接続先提供サーバ５）の接続情報の取得要求が含まれていた場合には、接続情報特定部３２２は、接続情報（ＵＲＬ）のリストと、自身（接続先提供サーバ５）の接続情報（https://jp.example.com/apps/discov）を併せて機器（ＭＦＰ６）に送信する。なお、各接続情報を送信するか、送信しないかは、接続情報取得要求のパラメータとして指定される。パラメータとは、後述する図２７に示す接続情報の取得要求の「ｓｅｒｖｉｃｅ」パラメータである。この接続情報取得要求のパラメータに応じて、それぞれの接続情報（ＵＲＬ）を機器（ＭＦＰ６）に送信する。
【００６４】
（接続情報が複数ある場合）
また、接続情報特定部３２２は、地域情報または販社情報に対応する組織ＩＤのサーバ２の接続情報（ＵＲＬ）を特定した際に、さらにサーバ２の地域情報に地理的位置が近い組織ＩＤを特定する。次に、地理的位置が近い組織ＩＤのサーバの接続情報（ＵＲＬ）を特定する。このようにして、特定した複数のサーバの接続情報（ＵＲＬ）をリスト生成部３２３に受け渡す。具体的には、例えば、サーバ２の接続情報の取得要求に含まれる販社情報が「ＪＡ５」の場合には図７の第３の対応情報を参照し、組織ＩＤ「Ｏ０００５」を特定し、図２１の第１０の対応情報を参照し、組織ＩＤ「Ｏ０００５」の接続情報（https://ja5.jp.example.com/apps）を特定する。次に、図７の第３の対応情報の中で組織ＩＤ「Ｏ０００５」の地域情報「ＪＰ」と同じ地域情報を持つ組織ＩＤ「Ｏ０００６」と「Ｏ０００２」を特定し、図２１の第１０の対応情報を参照し、組織ＩＤ「Ｏ０００６」の接続情報（https://ja6.jp.example.com/apps）、「Ｏ０００２」の接続情報（https://jp.example.com/apps）を特定する。そして、接続情報特定部３２２は、特定した組織ＩＤ「Ｏ０００５」、「Ｏ０００６」、「Ｏ０００２」の接続情報（ＵＲＬ）をリスト生成部３２３に受け渡す。また、例えば、接続情報の取得要求に含まれる地域情報が「ＥＵ」の場合には図７の第３の対応情報を参照し、組織ＩＤ「Ｏ０００４」を特定し、図２１の第１０の対応情報を参照し、組織ＩＤ「Ｏ０００４」の接続情報（https://eu.example.com/apps）を特定する。図７の第３の対応情報で組織ＩＤ「Ｏ０００４」の地域情報「ＥＵ」と同じ地域情報である組織ＩＤは存在しないので、他の地域情報「ＵＳ」または「ＪＰ」の地域情報を持つ組織ＩＤ「Ｏ０００３」、「Ｏ０００７」や「Ｏ０００２」、「Ｏ０００５」、「Ｏ０００６」を特定し、図２１の第１０の対応情報を参照し、組織ＩＤ「Ｏ０００３」、「Ｏ０００７」や「Ｏ０００２」、「Ｏ０００５」、「Ｏ０００６」の接続情報（ＵＲＬ）を特定する。そして、接続情報特定部３２２は、特定した組織ＩＤ「Ｏ０００３」、「Ｏ０００７」や「Ｏ０００２」、「Ｏ０００５」、「Ｏ０００６」の接続情報（ＵＲＬ）をリスト生成部３２３に受け渡す。そして、接続情報特定部３２２は、リスト生成部３２３で生成された接続情報（ＵＲＬ）のリストを受け取って機器（ＭＦＰ６）に送信する。
【００６５】
なお、上記の説明では、接続情報特定部３２２が複数のサーバの接続情報を特定する場合、接続情報の取得要求に含まれている地域情報に地理的位置が近い組織ＩＤのサーバの接続情報（ＵＲＬ）を特定したが、これに限ることはなく、異なる地域情報の組織ＩＤのサーバの接続情報（ＵＲＬ）を特定してもよいし、すべての地域情報の組織ＩＤのサーバの接続情報（ＵＲＬ）を特定するようにしてもよい。
【００６６】
ここで、「地理的位置が近い」、「遠い」について補足説明をする。ネットワークシステムにおける応答性能(ネットワーク遅延)と地理的な位置は必ずしも関係しない。例えば、日本と欧州の通信は米国経由になることが多いので、通信の距離としては日本と欧州は、日本と米国よりも遠いことになる。従って、サーバ２の接続情報取得要求が、日本からのアクセスであれば、日本→米国→欧州の順に特定し、リストを生成することになる。サーバ２の接続情報取得要求が、米国からであれば米国→欧州→日本の順に特定し、リストを生成することになる。また、サーバ２の接続情報取得要求が、欧州からであれば欧州→米国→日本の順に特定し、リストを生成することになる。但し、欧州からのアクセスに関しては、米国との通信を嫌う傾向があるので、欧州→日本の順だけのリストを生成してもよい。なお、順位の決定に関する仕組みは任意である。
【００６７】
（所定の接続情報の場合）
また、接続情報特定部３２２は、機器（ＭＦＰ６）からサーバ２の接続情報取得要求を受け付けた場合、記憶部３１１（この例では接続情報ＤＢ３２１）に記憶された情報を参照して、サーバ２の接続情報取得要求に含まれる機番に対応するアプリケーションを提供するサーバの接続情報（ＵＲＬ）を特定し、該サーバの接続情報を機器（ＭＦＰ６）に送信するようにすることもできる。より具体的には、接続情報特定部３２２は、機器（ＭＦＰ６）からサーバ２の接続情報取得要求を受信した場合、図２２に示す第１１の対応情報に機番が登録されていた場合（この例では機番「３Ｆ０８−００００１」が登録されている）には、アプリケーションを提供するサーバの接続情報（https://jp.example.com/apps）を特定し、特定したサーバの接続情報（ＵＲＬ）をリスト生成部３２３に受け渡す。そして、接続情報特定部３２２は、リスト生成部３２３で生成された接続情報（ＵＲＬ）の接続一覧情報（リスト）を受け取って機器（ＭＦＰ６）に送信する。
【００６８】
（サーバの接続情報のリスト）
図２３の説明を続ける。リスト生成部３２３は、上述したように、接続情報特定部３２２から、１つのサーバの接続情報または複数のサーバの接続情報を受け取ることになる。リスト生成部３２３は、サーバ２の接続情報が１つだけの場合には、サーバの接続情報が１つだけのリストを生成して接続情報特定部３２２に受け渡す。また、リスト生成部３２３は、サーバ２の接続情報が複数ある場合には、接続情報特定部３２２から受け取った複数のサーバの接続情報の中で、機器（ＭＦＰ６）が設置されている地域情報に地理的位置が近い接続情報から該地理的位置が遠い接続情報の順に並べた複数のサーバの接続情報のリストを生成して接続情報特定部３２２に受け渡す。すなわち、上述したようにリスト生成部３２３は、接続情報特定部３２２で特定した複数のサーバ２の接続情報の中で、機器（ＭＦＰ６）と通信に要する時間が短い接続情報から該通信に要する時間が長い接続情報の順に並べた複数のサーバ２の接続情報の接続一覧情報（リスト）を生成して接続情報特定部３２２に受け渡す。なお、上述した本実施形態の変形例として、リスト生成部３２３が所定の条件に従って並べた複数のサーバの接続情報の接続一覧情報（リスト）を生成して、リスト生成部３２３が接続情報の接続一覧情報（サーバ２の接続情報の接続一覧情報）を機器（ＭＦＰ６）に送信するようにすることもできる。
【００６９】
（接続先提供サーバの接続情報のリスト）
また、リスト生成部３２３は、接続先提供サーバが複数存在する場合には、複数のサーバの接続情報のリストを生成すると共に、複数の接続先提供サーバの接続情報のリストを併せて生成する。そして、生成した２つのリスト（複数のサーバの接続情報のリストおよび複数の接続先提供サーバの接続情報のリスト）を接続情報特定部３２２に受け渡す。ここで、２つのリストの生成は、上述したように接続情報取得要求のパラメータとして指定される。パラメータとは、後述する図２７に示す接続情報の取得要求の「ｓｅｒｖｉｃｅ」パラメータである。なお、リスト生成部３２３は、複数の接続先提供サーバの接続情報の中で、機器（ＭＦＰ６）が設置されている地域情報に地理的位置が近い接続情報から該地理的位置が遠い接続情報の順に並べた複数の接続先提供サーバの接続情報のリストを生成するが、これに限ることはなくリストの順は任意である。例えば、上述したようにリスト生成部は、複数の接続先提供サーバの接続情報の中で、機器（ＭＦＰ６）と通信に要する時間が短い接続情報から該通信に要する時間が長い接続情報の順に並べた複数の接続先提供サーバの接続情報の接続一覧情報（リスト）を生成する。なお、上述した本実施形態の変形例として、リスト生成部３２３が所定の条件に従って並べた複数の接続先提供サーバの接続情報の接続一覧情報（リスト）を生成して、リスト生成部３２３が接続情報の接続一覧情報（接続先提供サーバ５の接続情報の接続一覧情報）を機器（ＭＦＰ６）に送信するようにすることもできる。
【００７０】
以上が接続先提供サーバ５の構成である。接続先提供サーバ５を設置する地域としては、図１の例で説明したサーバ２（日本）、サーバ３（アメリカ）、サーバ４（ヨーロッパ）が設置される各地域に接続先提供サーバ５を設置するようにしてもよいし、ユーザの数が多い地域、例えば日本には接続先提供サーバ５を複数台設置するようにしてもよい。
【００７１】
次に、図２４を用いて、ＭＦＰ６のハードウェア構成について説明する。図２４に示すように、ＭＦＰ６は、コピー機能、スキャナ機能、ファクス機能、プリンタ機能などの各種の機能を実現可能な本体１０と、ユーザの操作を受け付ける操作部２０とを備える。なお、ユーザの操作を受け付けるとは、ユーザの操作に応じて入力される情報（画面の座標値を示す信号等を含む）を受け付けることを含む概念である。本体１０と操作部２０は、専用の通信路３０を介して相互に通信可能に接続されている。通信路３０は、例えばＵＳＢ（Universal  Serial  Bus）規格のものを用いることもできるが、有線か無線かを問わず任意の規格のものであってよい。
【００７２】
なお、本体１０は、操作部２０で受け付けた操作に応じた動作を行うことができる。また、本体１０は、クライアントＰＣ（パーソナルコンピュータ）等の外部装置とも通信可能であり、外部装置から受信した指示に応じた動作を行うこともできる。
【００７３】
まず、本体１０のハードウェア構成について説明する。図２４に示すように、本体１０は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、ＨＤＤ（ハードディスクドライブ）１４と、通信Ｉ／Ｆ（インタフェース）１５と、接続Ｉ／Ｆ１６と、エンジン部１７とを備え、これらがシステムバス１８を介して相互に接続されている。
【００７４】
ＣＰＵ１１は、本体１０の動作を統括的に制御する。ＣＰＵ１１は、ＲＡＭ１３をワークエリア（作業領域）としてＲＯＭ１２またはＨＤＤ１４等に格納されたプログラムを実行することで、本体１０全体の動作を制御し、上述したコピー機能、スキャナ機能、ファクス機能、プリンタ機能などの各種機能を実現する。
【００７５】
通信Ｉ／Ｆ１５は、ネットワーク７と接続するためのインタフェースである。接続Ｉ／Ｆ１６は、通信路３０を介して操作部２０と通信するためのインタフェースである。
【００７６】
エンジン部１７は、コピー機能、スキャナ機能、ファクス機能、および、プリンタ機能を実現させるための、汎用的な情報処理及び通信以外の処理を行うハードウェアである。例えば、原稿の画像をスキャンして読み取るスキャナ（画像読取部）、用紙等のシート材への印刷を行うプロッタ（画像形成部）、ファクス通信を行うファクス部などを備えている。更に、印刷済みシート材を仕分けるフィニッシャや、原稿を自動給送するＡＤＦ（自動原稿給送装置）のような特定のオプションを備えることもできる。
【００７７】
次に、操作部２０のハードウェア構成について説明する。図２４に示すように、操作部２０は、ＣＰＵ２１と、ＲＯＭ２２と、ＲＡＭ２３と、フラッシュメモリ２４と、通信Ｉ／Ｆ２５と、接続Ｉ／Ｆ２６と、操作パネル２７とを備え、これらがシステムバス２８を介して相互に接続されている。
【００７８】
ＣＰＵ２１は、操作部２０の動作を統括的に制御する。ＣＰＵ２１は、ＲＡＭ２３をワークエリア（作業領域）としてＲＯＭ２２またはフラッシュメモリ２４等に格納されたプログラムを実行することで、操作部２０全体の動作を制御し、ユーザから受け付けた入力に応じた情報（画像）の表示などの後述する各種機能を実現する。
【００７９】
通信Ｉ／Ｆ２５は、ネットワーク７と接続するためのインタフェースである。接続Ｉ／Ｆ２６は、通信路３０を介して本体１０と通信するためのインタフェースである。
【００８０】
操作パネル２７は、ユーザの操作に応じた各種の入力を受け付けるとともに、各種の情報（例えば受け付けた操作に応じた情報、ＭＦＰ６の動作状況を示す情報、設定状態などを示す情報など）を表示する。この例では、操作パネル２７は、タッチパネル機能を搭載した液晶表示装置（ＬＣＤ）で構成されるが、これに限られるものではない。例えばタッチパネル機能が搭載された有機ＥＬ表示装置で構成されてもよい。さらに、これに加えて又はこれに代えて、ハードウェアキー等の操作部やランプ等の表示部を設けることもできる。
【００８１】
次に、ＭＦＰ６のソフトウェア構成について説明する。図２５は、ＭＦＰ６のソフトウェア構成の一例を示す模式図である。図２５に示すように、本体１０は、アプリ層１０１と、サービス層１０２と、ＯＳ層１０３とを有する。アプリ層１０１、サービス層１０２、および、ＯＳ層１０３の実体は、ＲＯＭ１２やＨＤＤ１４等に格納されている各種ソフトウェアである。ＣＰＵ１１が、これらのソフトウェアを実行することにより、各種の機能が提供される。
【００８２】
アプリ層１０１のソフトウェアは、ハードウェア資源を動作させて所定の機能を提供するためのアプリケーションソフトウェア（以下の説明では、単に「アプリ」と称する場合がある）である。例えばアプリとしては、コピー機能を提供するためのコピーアプリ、スキャナ機能を提供するためのスキャナアプリ、ファクス機能を提供するためのファクスアプリ、プリンタ機能を提供するためのプリンタアプリなどが挙げられる。
【００８３】
サービス層１０２のソフトウェアは、アプリ層１０１とＯＳ層１０３との間に介在し、アプリに対し、本体１０が備えるハードウェア資源を利用するためのインタフェースを提供するためのソフトウェアである。より具体的には、ハードウェア資源に対する動作要求の受け付け、動作要求の調停を行う機能を提供するためのソフトウェアである。サービス層１０２が受け付ける動作要求としては、スキャナによる読み取りやプロッタによる印刷等の要求が考えられる。
【００８４】
なお、サービス層１０２によるインタフェースの機能は、本体１０のアプリ層１０１だけではなく、操作部２０のアプリ層２０１に対しても提供される。すなわち、操作部２０のアプリ層２０１（アプリ）も、サービス層１０２のインタフェース機能を介して、本体１０のハードウェア資源（例えばエンジン部１７）を利用した機能を実現することができる。
【００８５】
ＯＳ層１０３のソフトウェアは、本体１０が備えるハードウェアを制御する基本機能を提供するための基本ソフトウェア（オペレーティングシステム（ＯＳ））である。サービス層１０２のソフトウェアは、各種アプリからのハードウェア資源の利用要求を、ＯＳ層１０３が解釈可能なコマンドに変換してＯＳ層１０３に渡す。そして、ＯＳ層１０３のソフトウェアによりコマンドが実行されることで、ハードウェア資源は、アプリの要求に従った動作を行う。
【００８６】
同様に、操作部２０は、アプリ層２０１と、サービス層２０２と、ＯＳ層２０３とを有する。操作部２０が備えるアプリ層２０１、サービス層２０２及びＯＳ層２０３も、階層構造については本体１０側と同様である。ただし、アプリ層２０１のアプリにより提供される機能や、サービス層２０２が受け付け可能な動作要求の種類は、本体１０側とは異なる。アプリ層２０１のアプリは、操作部２０が備えるハードウェア資源を動作させて所定の機能を提供するためのソフトウェアであってもよいが、主として本体１０が備える機能（コピー機能、スキャナ機能、ファクス機能、プリンタ機能）やインストール済みのアプリケーションのライセンスファイルを更新する機能等に関する操作や表示を行うためのＵＩ（ユーザインタフェース）の機能を提供するためのソフトウェアである。この例では、アプリ層２０１のアプリには、Ｗｅｂブラウザの機能を提供するためのアプリ（以下、「ブラウザアプリ」と称する場合がある）や、上述のＷｅｂコンテンツデータに含まれるアプリケーションコマンドを実行する機能を提供するためのアプリ（以下、「インストーラ」と称する場合がある）などが含まれる。
【００８７】
なお、本実施形態では、機能の独立性を保つために、本体１０側のＯＳ層１０３のソフトウェアと操作部２０側のＯＳ層２０３のソフトウェアが互いに異なる。つまり、本体１０と操作部２０は、別々のオペレーティングシステムで互いに独立して動作する。例えば本体１０側のＯＳ層１０３のソフトウェアとしてＬｉｎｕｘ（登録商標）を用い、操作部２０側のＯＳ層２０３のソフトウェアとしてＡｎｄｒｏｉｄ（登録商標）を用いることも可能である。
【００８８】
以上のように、本実施形態のＭＦＰ６において、本体１０と操作部２０は別々のオペレーティングシステムで動作するため、本体１０と操作部２０との間の通信は、共通の装置内のプロセス間通信ではなく、異なる装置間の通信として行われる。操作部２０が受け付けた情報（ユーザからの指示内容）を本体１０へ伝達する動作（コマンド通信）や、本体１０が操作部２０へイベントを通知する動作などがこれに該当する。ここでは、操作部２０が本体１０へコマンド通信を行うことにより、本体１０の機能を使用することができる。また、本体１０から操作部２０に通知するイベントには、本体１０における動作の実行状況、本体１０側で設定された内容などが挙げられる。
【００８９】
また、本実施形態では、操作部２０に対する電力供給は、本体１０から通信路３０を経由して行われているので、操作部２０の電源制御を、本体１０の電源制御とは別に（独立して）行うことができる。
【００９０】
図２６は、本実施形態の操作部２０が有する機能の一例を示す図である。図２６に示すように、操作部２０は、接続情報取得部２７１と、起動部２７２と、表示制御部２７３と、実行部２７４と、処理実行部２７５と、を有する。なお、図２６の例では、本実施形態に関する機能を主に例示しているが、操作部２０が有する機能はこれらに限られるものではない。また、図２６に示すように、表示制御部２７３および実行部２７４は、Ｗｅｂブラウザにおいて実現されている。
【００９１】
接続情報取得部２７１は、後述する起動部２７２がユーザの操作に応じて、ブラウザ機能を提供するブラウザアプリを起動する際に接続するサーバ２の接続情報（ＵＲＬ）を取得するために、機器情報（機番）と、地域情報または販社情報とを少なくとも含み、かつサーバ２の接続情報の取得を要求する接続先取得要求を接続先提供サーバ５に対して送信する。そして、接続情報取得部２７１は、接続先提供サーバ５から送信されたアプリケーションを提供するサーバ２の接続情報（ＵＲＬ）と接続先提供サーバ５の接続情報（ＵＲＬ）とを取得して記憶部（フラッシュメモリ２４）に記憶させると共に後述する起動部２７２に受け渡す。なお、接続情報取得部２７１は、デフォルトとして最初に接続する少なくとも１つの接続先提供サーバ５の接続情報を予め保持している。そして、２回目以降からは他の接続先提供サーバの設置状況に応じて接続先提供サーバ５の接続情報は更新されることになる。なお、接続情報取得部２７１がサーバ２の接続情報（ＵＲＬ）を取得するタイミングとしては、起動部２７２がブラウザアプリを起動する前に取得してもよいし、起動部２７２がブラウザアプリを起動する際に（起動中に）取得してもよい。
【００９２】
本実施形態において、接続情報取得部２７１が接続先提供サーバ５に送信するサーバ２の接続情報の取得要求の一例として下記の３つのパターンを例示することができるが、これに限られることはなく任意である。
【００９３】
（サイト全体の接続情報を取得）
第１のパターンは、図３で示した、サーバ２にアプリ情報管理モジュール２１０と、ライセンス管理モジュール２２０と、アプリダウンロード管理モジュール２３０とが含まれている場合であって、各モジュールを含むアプリダウンロードサイト全体（サーバ２）の接続情報（ＵＲＬ）を取得する例である。図２７は、サーバの接続情報の取得要求の一例を示す図であり、図２８は、サーバの接続情報の取得要求に対する応答として受信したサーバの接続情報（ＵＲＬ）の一例を示す図である。図２７に示す接続情報の取得要求のパラメータ「ｓｅｒｖｉｃｅ」は接続情報を要求するサーバの識別子を示し、「ｄｅｖｉｃｅ＿ｉｄ」は機番を示し、「ｒｅｇｉｏｎ＿ｃｏｄｅ」は地域コード（地域情報）を示し、「ｄｅａｌｅｒ＿ｃｏｄｅ」は販社コード（販社情報）を示している。なお、「？」の後ろに「パラメータ名＝値」を「＆」でつないで並べるのはＱＵＥＲＹパラメータと呼ばれる標準の記法である。また、「Host:www.example.com」は記憶部（フラッシュメモリ２４等）に記憶されているデフォルトとして接続するホスト名の一例を示すものである。接続情報取得部２７１は、図２８に示すサーバ２の接続情報を記憶部（フラッシュメモリ２４等）に記憶させる。
【００９４】
（サイトの接続情報を、サブモジュールごとに取得）
第２のパターンは、図４、図１２、図１７で示した、アプリ情報管理モジュール２１０、ライセンス管理モジュール２２０、アプリダウンロード管理モジュール２３０の各モジュールが備えるサブモジュールごとに接続情報（ＵＲＬ）を取得する例である。図２９は、各モジュールの接続情報の取得要求の一例を示す図であり、図３０は、各モジュールの接続情報の取得要求に対する応答として受信した各モジュールの接続情報（ＵＲＬ）の一例を示す図である。図２９に示す接続情報の取得要求のパラメータ「ｓｅｒｖｉｃｅ」の値は特殊文字をエンコードしたものである。すなわち、「appsdownload/api  appsdownload/top  appsdownload/operation  appsdownload/storage」はスペース区切りでサーバの識別子を並べた文字列であり、これをエンコードした結果が、図２９に示した「appsdownload%2Fapi+appsdownload%2Ftop+appsdownload%2Foperation+appsdownload%2Fstorage」である。また、「Host:www.example.com」は記憶部（フラッシュメモリ２４等）に記憶されているデフォルトとして接続するホスト名の一例を示すものである。図３０に示す「appsdownload/api」は、図４に示したアプリ情報管理モジュール２１０の制御部２１２の接続情報の一例であり、「appsdownload/top」は、図４に示したアプリ情報管理モジュール２１０の画面提供部２１３の接続情報の一例であり、「appsdownload/operation」は、図４に示したアプリ情報管理モジュール２１０の設定部２１４の接続情報の一例であり、「appsdownload/storage」は、図１７に示したアプリダウンロード管理モジュール２３０のダウンロード部２３２の接続情報の一例である。接続情報取得部２７１は、図３０に示す各モジュールの接続情報を記憶部（フラッシュメモリ２４等）に記憶させる。
【００９５】
（サイトの接続情報および複数の接続先提供サーバの接続情報を取得）
第３のパターンは、図３で示した、サーバ２にアプリ情報管理モジュール２１０と、ライセンス管理モジュール２２０と、アプリダウンロード管理モジュール２３０とが含まれている場合であって、各モジュールを含むアプリダウンロードサイト全体（サーバ２）の接続情報（ＵＲＬ）と、複数の接続先提供サーバの接続情報を取得する例である。図３１は、サーバの接続情報と、接続先提供サーバの接続情報との取得要求の一例を示す図であり、図３２は、サーバの接続情報と、接続先提供サーバの接続情報との取得要求に対する応答として受信したサーバの接続情報（ＵＲＬ）と、複数の接続先提供サーバの接続情報（ＵＲＬ）の一例を示す図である。図３１に示す接続情報の取得要求のパラメータ「ｓｅｒｖｉｃｅ」の値は、上記の図２９で説明したものと同様で、特殊文字をエンコードしたものである。また、「Host:www.example.com」は記憶部（フラッシュメモリ２４等）に記憶されているデフォルトとして接続するホスト名の一例を示すものである。図３２に示す「discovery」は接続先提供サーバを示し、先頭の「https://jp.example.com/discov」は地域情報「ＪＰ」にある接続先提供サーバの接続情報の一例であり、２番目の「https://us.example.com/discov」は地域情報「ＵＳ」にある接続先提供サーバの接続情報の一例である。なお図３２の応答例では、接続情報の取得要求元の機器（ＭＦＰ６）の地域情報が「ＪＰ」の場合であり、地域情報「ＪＰ」に基づいて、地理的位置が近い「ＪＰ」にある接続先提供サーバの接続情報を先頭にしている。なお、上述したように、接続情報の並べ順は販社情報に基づいて決めるようにしてもよいし、機番（機器情報）に基づいて決めるようにしてもよい。接続情報取得部２７１は、図３２に示すサーバ２の接続情報と、接続先提供サーバの接続情報とを記憶部（フラッシュメモリ２４等）に記憶させる。
【００９６】
図２６に戻り説明を続ける。起動部２７２は、ユーザの操作に応じて、Ｗｅｂブラウザの機能を提供するブラウザアプリを起動する。この時、起動部２７２は、ブラウザアプリを起動する際に自身の機器（ＭＦＰ６）の販社情報を保持しているか否かを確認し、販社情報（販社コード情報）が保持されていない場合には、表示制御部２７３が販社情報を入力するＵＩ画面を操作パネル２７に表示させる。ただし、図７で示した組織ＩＤ「Ｏ０００２」のように販社情報が設定されないケースがあるので、別途、販社情報設定済みフラグの設定を保存するようにして、販社情報設定済みフラグが未設定の場合のみＵＩ画面を表示するようにしてもよい。なお、機器（ＭＦＰ６）の出荷時に仕向け地設定として地域情報の初期値は予め記憶部に記憶させている。この販社情報を入力するＵＩ画面の表示は最初の１回目だけであり、販社情報が入力されて保持されたら次回からＵＩ画面は表示されない。
【００９７】
なお、上記で接続情報取得部２７１の説明を先にしたが、処理フローの実行順としては、起動部２７２での販社情報（販社コード）の設定が先であり、次に接続情報取得部２７１でのサーバ２の接続情報（ＵＲＬ）の取得が実行される。つまり、起動部２７２で先に設定された販社情報の設定に従って、接続情報取得部２７１で接続情報を取得するためである。
【００９８】
例えば、図３３に示す操作画面が操作パネル２７（表示部）に表示された状態で、「アプリマーケット」という名称のアイコン８の押下を受け付けた場合、起動部２７２が自身の機器（ＭＦＰ６）の販社情報を保持していないことを確認した場合、表示制御部２７３は、図３４に示す地域情報設定画面を操作パネル２７（表示部）に表示させる。図３４は、地域情報設定画面の一例を示す図である。図３４の例では、地域情報設定画面は、地域情報を選択するための地域情報選択ボタン４０１と、販社情報を設定するための販社情報設定ボタン４０２と、次の画面に遷移するための次へボタン４０３と、図３３に示す操作画面に戻るための戻るボタン４０４とを少なくとも表示する。地域情報選択ボタン４０１に表示されている「地域：日本（ＪＰ）」は出荷時に仕向け地設定として予め記憶している地域情報である。この地域情報を変更する場合に地域情報選択ボタン４０１を選択すると、図３５に示す地域情報設定ダイアログ画面が表示される。図３５は、地域情報設定ダイアログ画面の一例を示す図である。図３５の例では、地域情報設定ダイアログ画面は、「日本（ＪＰ）４１１」、「アメリカ（ＵＳ）４１２」、「ヨーロッパ（ＥＵ）」、「アジア（ＡＳＩＡ）」などの地域を示す地域情報を表示する。図３５において、「アメリカ（ＵＳ）４１２」が選択され、「ＯＫ」ボタンが押下されると、図３４に示す地域情報設定画面に戻り、「地域：アメリカ（ＵＳ）」に変更される。
【００９９】
次に、図３４に示す販社情報設定ボタン４０２を選択すると、図３６に示す販社情報入力画面が表示される。図３６は、販社情報入力画面の一例を示す図である。図３６の例では、販社コード（販社情報を示すコード情報）を入力するためのテンキーボタンを少なくとも表示する。図３６の例で示している販社コード「１１２３４５１６」は任意に設定できるが、例えば、最初の１文字「１」は「地域」を表し、「１：日本（ＪＰ）」、「２：アメリカ（ＵＳ）」、「３：ヨーロッパ（ＥＵ）」、「４：アジア（ＡＳＩＡ）」が割り当てられている。次の５文字「１２３４５」は「販社情報」を表し、例えば、販売店を識別するための任意の乱数が予め割り当てられている。任意の乱数を割り当てているのは、入力ミスで他の販社コードを入力する危険性を下げるためである。最後の２文字「１６」は「チェックサム」を表し、例えば、販社コードの入力ミスを検知するためである。なお、販社コードは、コード全体を暗号化する方式などでもよい。図３６において、販社コードを入力して「ＯＫ」ボタンが押下されると、誤り検出が行われ（この例では、販社情報入力画面で受け付けたコード情報から特定される地域情報（１文字目）と、図３５の地域情報設定ダイアログ画面で設定された地域情報の値が同一であるか否かを判断し、同一でない場合（値が異なる場合）にはエラーと判断する。または、販社情報入力画面で受け付けたコード情報の６文字目まで（地域情報＋販社情報）に対するチェックサムを計算し、最後の２文字と比較して値が同一であるか否かを判断し、同一でない場合（値が異なる場合）にはエラーと判断する。このチェックサムでは、コード情報に含まれる所定の情報が予め設定された情報と同一であるかを判断することになる）、エラーの場合には図３７に示すエラー画面が表示される。図３７は、エラー画面の一例を示す図である。図３７において、「閉じる」ボタンが押下されると再度販社コード（販社情報を示すコード情報）を入力するための画面が表示される（図３６参照）。図３６において、販社コードが正しく入力された場合、図３４に示す地域情報設定画面が表示される。なお起動部２７２は、上記のように入力された地域情報および販社情報（販社コード）を記憶部（フラッシュメモリ２４等）に記憶させる。
【０１００】
次に、図３４に示す、次の画面に遷移するための次へボタン４０３が押下されると、図３８に示すアプリケーション一覧画面が表示される。図３８は、アプリケーション一覧画面の一例を示す図である。なお、アプリケーション一覧画面の詳細については後述する。
【０１０１】
図３３に戻り説明を続ける。例えば図３３に示す操作画面が操作パネル２７に表示された状態で、「アプリマーケット」という名称のアイコン８の押下を受け付けた場合、起動部２７２は、接続情報取得部２７１にアイコン８の押下を通知し、接続情報取得部２７１は、記憶部（フラッシュメモリ２４等）に記憶されている接続先提供サーバ５の接続情報（ＵＲＬ）を参照して、サーバ２の接続情報の取得要求を送信し、ネットワーク７上のサーバ２の所在を示すＵＲＬを取得して、サーバ２の所在を示すＵＲＬを起動部２７２に受け渡す。そして起動部２７２はブラウザアプリを起動する制御を行う。なお、接続情報取得部２７１は、取得したサーバ２の接続情報（ＵＲＬ）を保持または更新する。
【０１０２】
起動したブラウザアプリ（画面情報取得部）は、起動部２７２から受け取ったＵＲＬで指定されるサーバ２に対して、ＨＴＴＰリクエストとして上述の画面情報要求を送信し、画面情報要求に対する応答（ＨＴＴＰレスポンス）として、Ｗｅｂコンテンツデータ（画面情報）を受信する。この例では、Ｗｅｂコンテンツデータ（画面情報）として、ＨＴＭＬと、ＨＴＭＬに含まれる（あるいは、ＨＴＭＬから参照される）ＣＳＳ／ＪａｖａＳｃｒｉｐｔを受信する。ブラウザアプリ（表示情報取得部）は、ＪａｖａＳｃｒｉｐｔを解釈、実行し、Ａｊａｘを用いて、ＨＴＴＰリクエストとして上述の表示情報要求をサーバ２へ送信し、表示情報要求に対する応答（ＨＴＴＰレスポンス）として、アプリケーションコマンドを少なくとも含むＷｅｂコンテンツデータ（表示情報）を受信する。なお、請求項の「表示情報取得部」、「画面情報取得部」の機能はブラウザアプリにより提供される。図３９は、表示情報要求の一例を示す図であり、図４０は、表示情報要求に対する応答として受信した情報の一例を示す図である。
【０１０３】
そして、ブラウザアプリは、サーバ２から受信したＷｅｂコンテンツデータ（画面情報と表示情報）に基づいて構成される画面を操作パネル２７（表示部）に表示する制御を行う。ここでは、表示制御部２７３の機能はブラウザアプリにより提供される。また、前述したように、この例では、表示制御部２７３は、サーバ２から受信したＷｅｂコンテンツデータ（画面情報と表示情報）に基づいて画面を生成し、その生成した画面を操作パネル２７に表示する。表示制御部２７３は、サーバ２から受信したＷｅｂコンテンツデータ（画面情報および表示情報）をフラッシュメモリ２４等の記憶装置に保持しておき、必要に応じてＷｅｂコンテンツデータ（画面情報および表示情報）を読み出し、その読み出したＷｅｂコンテンツデータ（画面情報および表示情報）を用いて画面を生成することができる。
【０１０４】
この例では、表示制御部２７３は、操作パネル２７に表示された画面（Ｗｅｂコンテンツデータ（画面情報と表示情報）に基づいて構成される画面）に対するユーザの操作に応じて選択されたアプリケーションコマンドを特定し、その特定したアプリケーションコマンドを実行部２７４へ通知することができる。例えば表示制御部２７３は、ＪａｖａＳｃｒｉｐｔ（登録商標）、カスタムスキームとして、ユーザによって選択されたアプリケーションコマンドを特定することができる。
【０１０５】
実行部２７４は、Ｗｅｂコンテンツデータに含まれるアプリケーションコマンドのうち、操作パネル２７に表示された画面を介したユーザの操作に応じてＷｅｂコンテンツデータに含まれるアプリケーションコマンド（表示制御部２７３から通知されたアプリケーションコマンド）を実行して、該アプリケーションコマンドに対応したアプリケーションに関する処理の実行をＭＦＰ６に要求する。ここでは、実行部２７４の機能は、ＭＦＰ６側のアプリケーションプログラミングインタフェース（ＡＰＩ）により提供される。ＭＦＰ６は、アプリケーションプログラミングインタフェース（ＡＰＩ）を、操作部２０のブラウザアプリで利用可能としてサーバ２に配置したＷｅｂアプリケーションから呼び出せる。
【０１０６】
処理実行部２７５は、Ｗｅｂブラウザ（実行部２７４）からの要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する。
【０１０７】
前述したように、サーバ２から受信したＷｅｂコンテンツデータに含まれるアプリケーションコマンドとしては、インストール命令、更新命令、アンインストール命令などが挙げられる。
【０１０８】
以下では、サーバ２から受信したＷｅｂコンテンツデータ（画面情報と表示情報）に基づいて構成される画面に対するユーザの操作に応じてインストール命令が選択される場合を例に挙げて説明する。この場合、実行部２７４は、ユーザの操作に応じて選択されたインストール命令を処理実行部２７５へ通知し、処理実行部２７５は、実行部２７４から通知されたインストール命令を実行する。より具体的には以下のとおりである。
【０１０９】
この例では、表示制御部２７３は、サーバ２から受信したＷｅｂコンテンツデータ（画面情報と表示情報）を用いて、機器（ＭＦＰ６）で利用可能なアプリケーションの一覧を示すアプリケーション一覧画面（図３８参照）を操作パネル２７に表示する制御を行う。図３８の例では、アプリケーション一覧画面は、機器（ＭＦＰ６）で利用可能なアプリケーションごとに、該アプリケーションの名称と、該アプリケーションを選択するためのアプリケーション選択ボタン３３１とを少なくとも表示する。また、図３８の例では、アプリケーション一覧画面は、アプリケーションの更新を選択するための更新選択ボタン３２５と、アプリケーションの削除を選択するための削除選択ボタン３２６とを表示する。これらの具体的な内容については後述する。
【０１１０】
表示制御部２７３は、何れかのアプリケーション選択ボタン３３１の押下を受け付けた場合、サーバ２から受信した画面情報を用いて、対応するアプリケーションの詳細な内容を示すとともにインストールの実行指示を受け付けるためのインストール指示画面を操作パネル２７に表示する制御を行う。図４１は、インストール指示画面の一例を示す図である。図４１の例では、インストール指示画面は、対応するアプリケーションのアプリ説明情報とアプリ価格情報と、インストールの実行を指示するためのインストールボタン３３２とを表示する。この例では、インストールボタン３３２の押下は、インストール命令の選択（インストールしたいアプリケーションの選択であると考えてもよい）を意味する。
【０１１１】
この例では、表示制御部２７３は、インストールボタン３３２の押下を受け付けた場合、インストールの実行を最終的に確認するためのインストール確認画面を操作パネル２７に表示する制御を行う。図４２は、インストール確認画面の一例を示す図である。図４２の例では、インストール確認画面は、インストールの実行を最終的に承諾したことを指示するための確認ボタン（ＯＫ）３３３を表示する。この例では、確認ボタン３３３に対して、インストール命令がＪａｖａＳｃｒｉｐｔ形式で貼り付けられている。確認ボタン３３３の押下を受け付けると、実行部２７４は、押下された確認ボタン３３３に貼り付けられていたインストール命令を処理実行部２７５へ通知する。そして、処理実行部２７５が、このインストール命令を実行することになる。図４３は、この場合に、実行部２７４から処理実行部２７５へ通知される情報（確認ボタン３３３に貼り付けられているＪａｖａＳｃｒｉｐｔ）の一例を示す図である。
【０１１２】
また、本実施形態では、実行部２７４は、サーバ２から受信した表示情報の中に、ユーザの操作に応じて選択されたインストール命令の対象となるアプリケーションの使用権限の認証に用いられるライセンスキーが含まれている場合は、該ライセンスキーと、該インストール命令とを処理実行部２７５へ通知し、該ライセンスキーが含まれていない場合は、ライセンスキーの入力を促す入力画面を表示する制御を行う。より具体的には、表示制御部２７３は、サーバ２から受信した表示情報内のアプリケーション詳細情報のうち、ユーザの操作に応じて選択されたインストール命令の対象となるアプリケーションに対応する詳細情報の中に、該アプリケーションの使用権限を認証するためのライセンスキーが含まれていない場合は、ライセンスキーの入力を促す入力画面を表示する制御を行い、ライセンスキーが含まれている場合は、該ライセンスキーと、インストール命令とを処理実行部２７５へ通知する。より具体的には、表示制御部２７３は、上述のインストールボタン３３２の押下を受け付けた場合、サーバ２から受信した表示情報内のアプリケーション詳細情報のうち、ユーザによって選択されたアプリケーションに対応する詳細情報の中に、ライセンスキーが含まれているか否かを確認する。ライセンスキーが含まれていない場合は、表示制御部２７３は、図４２のインストール確認画面を表示せず、ライセンスキーの入力を促す入力画面を表示する制御を行い、実行部２７４は、入力されたライセンスキーと、選択されたインストール命令とを処理実行部２７５へ通知する。図４４は、入力画面の一例を示す図である。図４４のＯＫボタンに対しても、図４３と同様のインストール命令が貼り付けられている。この場合、ライセンスキー入力領域に入力された文字列をａｐｐＭｇｍｔ．ｉｎｓｔａｌｌ関数の第２引数として渡すようにする。
【０１１３】
次に、サーバ２から受信したＷｅｂコンテンツデータ（画面情報と表示情報）に基づいて構成される画面に対するユーザの操作に応じて更新命令が選択される場合を例に挙げて説明する。この例では、表示制御部２７３は、ユーザの操作に応じて、インストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、サーバ２から受信した表示情報に含まれるアプリケーション詳細情報のうち該アプリケーションに対応する詳細情報が示すバージョンとが異なるアプリケーションを特定する。そして、実行部２７４は、ユーザの操作に応じて、その特定したアプリケーションに対応する更新命令が選択された場合、その選択された更新命令を処理実行部２７５へ通知する。処理実行部２７５は、実行部２７４から通知された更新命令を実行する。より具体的には以下のとおりである。
【０１１４】
表示制御部２７３は、図３８に示すアプリケーション一覧画面に表示された更新選択ボタン３２５の押下を受け付けた場合、サーバ２から受信した表示情報と、機器（ＭＦＰ６）にインストール済みのアプリケーションごとに、該アプリケーションの現在のバージョンを対応付けたアプリケーション管理情報と、を取得する。この例では、処理実行部２７５が上述のアプリケーション管理情報を管理しているので、実行部２７４は、処理実行部２７５に対してアプリケーション管理情報を要求し、表示制御部２７３は、アプリケーション管理情報を取得する。そして、表示制御部２７３は、インストール済みのアプリケーションのうち、アプリケーション管理情報において該アプリケーションに対応する現在のバージョンと、サーバ２から受信した表示情報に含まれるアプリケーション詳細情報のうち該アプリケーションに対応する詳細情報が示すバージョンとが異なるアプリケーションを、更新対象のアプリケーションとして特定する。例えばアプリケーション管理情報が図４５の態様であり、サーバ２から受信した表示情報に含まれるアプリケーション詳細情報が図４６の態様である場合を想定する。この場合、更新対象のアプリケーションとして、アプリＩＤ「Ｓ００１」およびアプリＩＤ「Ｓ００３」が特定されることになる。
【０１１５】
そして、表示制御部２７３は、以上のようにして特定したアプリケーションごとに、該アプリケーションの更新指示を受け付けるための更新指示画面を操作パネル２７に表示する制御を行う。図４７は、更新指示画面の一例を示す図である。更新指示画面は、複数のアプリケーションごとに、該アプリケーションの更新指示を受け付けるための更新指示ボタン３４１を表示する。この例では、更新対象のアプリケーション（以上のようにして特定したアプリケーション）に対応する更新指示ボタン３４１に対しては、該アプリケーションを更新する命令を示す更新命令が貼り付けられている。図４７の例では、更新指示画面は、更新対象のアプリケーション（図４７の例ではアプリ１、３）と更新対象外のアプリケーション（図４７の例ではアプリ２）の両方が表示され、更新対象外のアプリケーションに対応する更新指示ボタン３４１は操作不能な状態（押下を受け付けることができない状態）になっている。つまり、更新指示画面は、更新対象のアプリケーション（以上のようにして特定されたアプリケーション）と、更新対象外のアプリケーションとを区別して表示しているが、これに限らず、例えば更新指示画面は、更新対象のアプリケーションのみを、操作可能な状態の更新指示ボタン３４１と対応付けて表示する形態であってもよい。また、例えば表示制御部２７３は、以上のようにして特定したアプリケーション（更新対象のアプリケーション）の数を示す情報を表示する制御を行うこともできる。つまり、表示制御部２７３は、機器（ＭＦＰ６）にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、アプリケーション詳細情報のうち該アプリケーションに対応する詳細情報が示すバージョンとが異なるアプリケーションの数を示す情報を表示する制御を行うこともできる。実行部２７４は、更新指示ボタン３４１の押下を受け付けた場合、該更新指示ボタン３４１に貼り付けられた更新命令を処理実行部２７５へ通知する。図４８は、この場合に、実行部２７４から処理実行部２７５へ通知される情報の一例を示す図である。
【０１１６】
なお、この例では、更新対象のアプリケーションごとに、上述の更新指示ボタン３４１が個別に設けられているが、これに限らず、例えば更新対象のアプリケーションの更新を一括で実行することを指示するためのボタンが設けられる形態であってもよい。この場合、該ボタンの押下を受け付けた場合、更新対象の全てのアプリケーションの更新命令が一括して選択されることになる。要するに、アプリケーションコマンドは、機器（ＭＦＰ６）にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、アプリケーション詳細情報のうち該アプリケーションに対応する詳細情報が示すバージョンとが異なるアプリケーションを一括して更新する命令を示す一括更新命令を含んでいてもよい。この場合、表示制御部２７３は、一括更新命令が選択された場合（更新対象のアプリケーションの更新を一括で実行することを指示するためのボタンの押下を受け付けた場合）、機器（ＭＦＰ６）にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、アプリケーション詳細情報のうち該アプリケーションに対応する詳細情報が示すバージョンとが異なるアプリケーションを特定し、実行部２７４は、該特定したアプリケーションに対応する更新命令を処理実行部２７５へ通知する形態であってもよい。
【０１１７】
また、例えばサーバ２が、更新対象のアプリケーションを特定する機能を有する形態であってもよい。この場合、例えば表示制御部２７３は、上述の表示情報要求の送信前に、処理実行部２７５から上述のアプリケーション管理情報を取得し、その取得したアプリケーション管理情報を付加した表示情報要求をサーバ２へ送信することもできる。サーバ２は、ＭＦＰ６から受信したアプリケーション管理情報に含まれるアプリＩＤごとに、該アプリケーション管理情報において該アプリＩＤに対応付けられたバージョンと、サーバ２が管理するアプリ情報ＤＢ２６１（第２の対応情報）において該アプリＩＤに対応付けられたバージョンとを比較し、差異があるアプリＩＤを更新対象のアプリＩＤとして特定することができる。そして、サーバ２は、更新対象として特定したアプリＩＤを示す情報を表示情報に含めてＭＦＰ６へ送信する形態であってもよい。さらに、例えばサーバ２側でＭＦＰ６にインストール済みのアプリケーションを管理する（上述のアプリケーション管理情報を管理する）形態であってもよい。この場合、例えばサーバ２は、ライセンスの有効化または無効化のタイミングでアプリケーション管理情報を更新することができるし、アプリケーションを更新するタイミングでもアプリケーション管理情報を更新することもできる。この場合、ＭＦＰ６にインストール済みのアプリケーションの現在のバージョンをＭＦＰ６から取得する必要は無いので、サーバ２のみで更新対象のアプリケーションを判断できるとともにＭＦＰ６の処理負担を減らすことができる。
【０１１８】
次に、サーバ２から受信したＷｅｂコンテンツデータ（画面情報と表示情報）に基づいて構成される画面に対するユーザの操作に応じてアンインストール命令が選択される場合を例に挙げて説明する。この例では、実行部２７４は、ユーザの操作に応じて選択されたアンインストール命令を処理実行部２７５へ通知し、処理実行部２７５は、実行部２７４から通知されたアンインストール命令を実行する。より具体的には以下のとおりである。
【０１１９】
表示制御部２７３は、図３８に示すアプリケーション一覧画面に表示された削除選択ボタン３２６の押下を受け付けた場合、ＭＦＰ６にインストール済みのアプリケーションごとに、該アプリケーションの削除指示を受け付けるための削除指示画面を操作パネル２７に表示する制御を行う。図４９は、削除指示画面の一例を示す図である。削除指示画面は、ＭＦＰ６にインストール済みのアプリケーションごとに、該アプリケーションの削除指示を受け付けるための削除指示ボタン３５１を表示する。表示制御部２７３は、削除指示ボタン３５１の押下を受け付けた場合、アンインストールの実行を最終的に確認するための削除確認画面を操作パネル２７に表示する制御を行う。図５０は、削除確認画面の一例を示す図である。削除確認画面は、アンインストールの実行を最終的に承諾したことを指示するための確認ボタン（ＯＫ）３６１を表示する。この例では、確認ボタン３６１に対しては、該確認ボタン３６１に対応する１以上のアプリケーションを削除する命令を示す削除命令が貼り付けられている。確認ボタン３６１の押下を受け付けると、実行部２７４は、押下された確認ボタン３６１に貼り付けられていたアンインストール命令を処理実行部２７５へ通知する。図５１は、この場合に、実行部２７４から処理実行部２７５へ通知される情報の一例を示す図である。
【０１２０】
この例では、ＭＦＰ６にインストール済みのアプリケーションごとに、上述の削除指示ボタン３５１が個別に設けられているが、これに限らず、例えばＭＦＰ６にインストール済みのアプリケーションを一括で削除することを指示するためのボタンが設けられる形態であってもよい。この形態では、該ボタンの押下を受け付けた場合、ＭＦＰ６にインストール済みの全てのアプリケーションのアンインストール命令が一括して選択されることになる。要するに、アプリケーションコマンドは、ＭＦＰ６にインストール済みのアプリケーションを一括して削除する命令を示す一括アンインストール命令を含み、実行部２７４は、一括アンインストール命令が選択された場合、ＭＦＰ６にインストール済みのアプリケーションに対応するアンインストール命令（インストール済みの１以上のアプリケーションと１対１に対応する１以上のアンインストール命令）を処理実行部２７５へ通知する形態であってもよい。
【０１２１】
以上に説明した接続情報取得部２７１、起動部２７２、表示制御部２７３、実行部２７４、および、処理実行部２７５の各々の機能は、ＣＰＵ２１がＲＯＭ２２やフラッシュメモリ２４等の記憶装置に記憶されたプログラムを実行することにより実現可能である。
【０１２２】
図５２は、本実施形態のシステム１の動作手順の一例を示すシーケンス図である。まず、接続先提供サーバ５は、機器（ＭＦＰ６）が設置されている地理的位置を示す地域情報または機器（ＭＦＰ６）の販売店を示す販社情報と、アプリケーションを提供するサーバ２の接続情報とを対応付けた情報を保持する。また、ＭＦＰ６の起動部２７２は、地域情報または販社情報を保持する。なお、ＭＦＰ６の接続情報取得部２７１は、出荷時に予め１つの接続先提供サーバ５の接続情報を記憶している。
【０１２３】
上述したように、ＭＦＰ６の起動部２７２は、操作画面上の「アプリマーケット」という名称のアイコン８の押下を受け付けた場合（ステップＳ１）、アイコン８が押下されたことを接続情報取得部２７１に通知する（ステップＳ２）。接続情報取得部２７１は、機器情報（機番）と、地域情報または販社情報とを少なくとも含み、かつサーバ２の接続情報の取得を要求する接続情報の取得要求を接続先提供サーバ５に対して送信する（ステップＳ３）。接続先提供サーバ５の接続情報特定部３２２は、機器（ＭＦＰ６）から地域情報または販社情報と、機器情報（機番）とを少なくとも含み、かつサーバ２の接続情報の取得を要求する接続情報取得要求を受け付けて、記憶部３１１（この例では接続情報ＤＢ３２１）に記憶された接続対応情報を参照して、接続情報取得要求に含まれる地域情報または販社情報に対応する組織ＩＤで識別される組織で公開されているアプリケーションを提供するサーバ２の接続情報（ＵＲＬ）を特定する（ステップＳ４）。接続情報特定部３２２は、特定したサーバ２の接続情報（ＵＲＬ）と、自身（接続先提供サーバ５）の接続情報（ＵＲＬ）を接続情報取得要求の送信元のＭＦＰ６の接続情報取得部２７１に送信する（ステップＳ５）。
【０１２４】
接続情報取得部２７１は、接続先提供サーバ５からサーバ２の接続情報取得要求に対する応答を受信することでサーバ２の接続情報（ＵＲＬ）と、接続先提供サーバ５の接続情報（ＵＲＬ）を取得して記憶部（フラッシュメモリ２４等）に記憶させ（ステップＳ６）、上記の２つの接続情報（ＵＲＬ）を起動部２７２に送信する（ステップＳ７）。起動部２７２は、Ｗｅｂブラウザであるブラウザアプリ（表示制御部２７３および実行部２７４）に対して、起動指令とともにサーバ２のＵＲＬを送信する（ステップＳ８）。起動指令を受けて起動したブラウザアプリ（表示制御部２７３および実行部２７４）は、受け取ったＵＲＬで指定されるサーバ２に対して、ＨＴＴＰリクエストとして上述の画面情報要求を送信する（ステップＳ９）。
【０１２５】
次に、サーバ２は、ＭＦＰ６からの要求に応じてＷｅｂコンテンツデータ（画面情報）を生成し（ステップＳ１０）、その生成したＷｅｂコンテンツデータ（画面情報）をＨＴＴＰレスポンスとしてＭＦＰ６へ送信する（ステップＳ１１）。ＭＦＰ６（表示制御部２７３）は、ＨＴＴＰリクエストである画面情報要求に対する応答として、Ｗｅｂコンテンツデータ（画面情報）を受信する。例えば、ＭＦＰ６（表示制御部２７３）は、Ｗｅｂコンテンツデータ（画面情報）として、ＨＴＭＬと、ＨＴＭＬに含まれる（あるいは、ＨＴＭＬから参照される）ＣＳＳ／ＪａｖａＳｃｒｉｐｔを受信する。
【０１２６】
次に、画面情報を受信したＭＦＰ６のブラウザアプリは、ＪａｖａＳｃｒｉｐｔを解釈、実行し、Ａｊａｘを用いて、サーバ２に対して、ＨＴＴＰリクエストとして上述の表示情報要求（図３９参照）を送信する（ステップＳ１２）。
【０１２７】
サーバ２は、ＭＦＰ６からの要求に応じて表示情報を生成し（ステップＳ１３）、その生成したＷｅｂコンテンツデータ（表示情報）をＨＴＴＰレスポンスとしてＭＦＰ６へ送信する（ステップＳ１４）。ＭＦＰ６（表示制御部２７３）は、ＨＴＴＰリクエストである表示情報要求に対する応答として、Ｗｅｂコンテンツデータ（表示情報）を受信する。
【０１２８】
ＭＦＰ６（表示制御部２７３）は、サーバ２から受信したＷｅｂコンテンツデータ（画面情報と表示情報）に基づいて構成される画面を生成し（ステップＳ１５）、生成した画面を操作パネル２７に表示する（ステップＳ１６）。この例では、表示制御部２７３は、サーバ２から受信したＷｅｂコンテンツデータ（画面情報と表示情報）を、フラッシュメモリ２４等の記憶装置に格納するとともに、その受信したＷｅｂコンテンツデータ（画面情報および表示情報）を用いて、図３８に示すアプリケーション一覧画面を最初に生成する。そして、その生成したアプリケーション一覧画面を操作パネル２７（表示部）に表示する制御を行う。
【０１２９】
図５３は、ＭＦＰ６がアイコン８の押下を受け付けてからアプリケーション一覧画面を取得するまでのＭＦＰ６の動作例を示すフローチャートである。つまり、上述の図５２のステップＳ１〜ステップＳ９、ステップＳ１１〜ステップＳ１２、ステップＳ１４のＭＦＰ６の処理の一例である。
【０１３０】
ＭＦＰ６の接続情報取得部２７１は、アイコン８の押下通知（ステップＳ１）を受け付けた場合、接続先提供サーバ５の接続情報（ＵＲＬ）を記憶部（フラッシュメモリ２４等）に保持（記憶）しているか否かを判断する（ステップＳ２１）。接続情報取得部２７１は、出荷時に予め１つの接続先提供サーバ５のＵＲＬを記憶しているが、仮に接続先提供サーバ５のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）していない場合（ステップＳ２１：Ｎｏ）、ステップＳ２６の処理に移行する。
【０１３１】
接続先提供サーバ５のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）している場合（ステップＳ２１：Ｙｅｓ）、接続情報取得部２７１は、サーバ２のＵＲＬの取得要求を接続先提供サーバ５のＵＲＬに送信する（ステップＳ２２）。次に、接続情報取得部２７１は、接続先提供サーバ５からサーバ２のＵＲＬが取得できたか否かを判断する（ステップＳ２３）。サーバ２のＵＲＬが取得できない場合（ステップＳ２３：Ｎｏ）、接続情報取得部２７１は、次の接続先提供サーバ５のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）しているか否かを判断する（ステップＳ２４）。上記の接続情報特定部３２２及びリスト生成部３２３で説明したように、接続情報取得部２７１は、接続先提供サーバ５から１つの接続先提供サーバ５のＵＲＬを取得する場合と、複数の接続先提供サーバのＵＲＬのリストを取得する場合とがあるので、ステップＳ２４の判断処理を行う。なお、サーバ２のＵＲＬが取得できない原因の例として、サーバダウン、ネットワークダウン等によりサーバ２への接続が失敗した場合が挙げられる。
【０１３２】
次の接続先提供サーバ５のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）している場合（ステップＳ２４：Ｙｅｓ）、ステップＳ２２に戻り、サーバ２のＵＲＬの取得要求の処理を継続する。次の接続先提供サーバ５のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）していない場合（ステップＳ２４：Ｎｏ）、ステップＳ２６の処理に移行する。
【０１３３】
ステップＳ２３に戻り、サーバ２のＵＲＬが取得できた場合（ステップＳ２３：Ｙｅｓ）、接続情報取得部２７１は、サーバ２のＵＲＬを記憶部（フラッシュメモリ２４等）に記憶させる（ステップＳ２５）。
【０１３４】
次に、起動部２７２は、サーバ２のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）しているか否かを判断する（ステップＳ２６）。サーバ２のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）していない場合（ステップＳ２６：Ｎｏ）、ステップＳ３０に移行し、エラー画面を操作パネル２７（表示部）に表示させて（ステップＳ３０）処理を終了する。すなわち、サーバ２のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）していない場合とは、接続先提供サーバ５からサーバ２のＵＲＬが取得できなかったことを示す。なお、サーバ２のＵＲＬが取得できない原因の例として、サーバダウン、ネットワークダウン等によりサーバ２への接続が失敗した場合が挙げられる。
【０１３５】
サーバ２のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）している場合（ステップＳ２６：Ｙｅｓ）、起動部２７２は、サーバ２のＵＲＬをブラウザアプリに受け渡し、ブラウザアプリは起動部２７２から受け取ったＵＲＬで指定されるサーバ２に対して、ＭＦＰ６の機種を識別する機種情報と地域情報とロケール情報（言語情報）とを含み、かつ、画面情報および表示情報（アプリケーション一覧画面）を要求する画面情報要求、および表示情報要求を送信する（ステップＳ２７）。
【０１３６】
次に、起動部２７２は、サーバ２から画面情報および表示情報を取得できたか否かを判断する（ステップＳ２８）。画面情報および表示情報を取得できた場合（ステップＳ２８：Ｙｅｓ）、処理を終了する。つまり、図５２のステップＳ１５で画面を生成してステップＳ１６で画面を表示する。
【０１３７】
画面情報および表示情報を取得できない場合（ステップＳ２８：Ｎｏ）、起動部２７２は、次のサーバのＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）しているか否かを判断する（ステップＳ２９）。上記の接続情報特定部３２２及びリスト生成部３２３で説明したように、接続情報取得部２７１は、接続先提供サーバ５から１つのサーバ２のＵＲＬを取得する場合と、複数のサーバのＵＲＬのリストを取得する場合とがあるので、ステップＳ２９の判断処理を行う。
【０１３８】
次のサーバ２のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）している場合（ステップＳ２９：Ｙｅｓ）、ステップＳ２７に戻り、画面情報および表示情報の取得要求の処理を継続する。次のサーバ２のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）していない場合（ステップＳ２９：Ｎｏ）、エラー画面を操作パネル２７（表示部）に表示させて（ステップＳ３０）処理を終了する。すなわち、次のサーバ２のＵＲＬを記憶部（フラッシュメモリ２４等）に保持（記憶）していない場合とは、接続先提供サーバ５から取得した１つのサーバ２又は複数のサーバのＵＲＬを用いても、サーバから画面情報が取得できなかったことを示す。なお、サーバ２のＵＲＬが取得できない原因の例として、サーバダウン、ネットワークダウン等によりサーバ２への接続が失敗した場合が挙げられる。
【０１３９】
図５４は、上述の図５２のステップＳ１３において、サーバ２が、地域情報または販社情報に対応するアプリケーションを提供する組織に紐付いている、ＭＦＰ６が利用可能なアプリケーションごとに、該アプリケーションの詳細を示す詳細情報を対応付けたアプリケーション詳細情報を生成するサーバ２の動作例を示すフローチャートである。図５４に示すように、特定部２１６は、ＭＦＰ６から上述の表示情報要求を受信した場合、図７に示す第３の対応情報を参照して、その受信した表示情報要求に含まれる地域情報または販社情報に対応する組織ＩＤを選択する（ステップＳ４１）。次に、特定部２１６は、図８に示す第４の対応情報を参照して、その選択した組織ＩＤに対応付けられた１以上のアプリＩＤの中から、公開されている状態を示す公開状態情報が対応付けられたアプリＩＤを選択する（ステップＳ４２）。次に、特定部２１６は、図５に示す第１の対応情報を参照して、その受信した表示情報要求に含まれる機種コードに対応付けられた機種ＩＤを選択する（ステップＳ４３）。次に、特定部２１６は、図６に示す第２の対応情報を参照して、その選択した機種ＩＤに対応付けられた１以上のアプリＩＤを選択する（ステップＳ４４）。このとき、特定部２１６は、図６に示す第２の対応情報のうち、ステップＳ４４で選択したアプリＩＤに対応付けられたバージョン情報も特定しておく。次に、特定部２１６は、図８で選択した組織ＩＤに対応付けられた１以上のアプリＩＤの中で公開されているアプリＩＤと、図６で選択した機種ＩＤに対応付けられた１以上のアプリＩＤとを比較して一致するアプリＩＤを特定する（ステップＳ４５）。次に、特定部２１６は、図９に示す第５の対応情報を参照して、ステップＳ４５で特定したアプリＩＤと、ＭＦＰ６から受信した表示情報要求に含まれる言語情報（ロケール情報）との組み合わせに対応するアプリ説明情報を特定する（ステップＳ４６）。次に、特定部２１６は、図１０に示す第６の対応情報を参照して、ステップＳ４５で選択したアプリＩＤと、ＭＦＰ６から受信した表示情報要求に含まれる言語情報（ロケール情報）との組み合わせに対応するアプリ価格情報を特定する（ステップＳ４７）。そして、生成部２１７は、ステップＳ４５で特定したアプリＩＤごとに、ステップＳ４６で特定したアプリ説明情報と、図６に示す第２の対応情報のうち、ステップＳ４４で選択したアプリＩＤに対応付けられたバージョン情報と、ライセンスキーが設定されている場合はライセンスキーと、ステップＳ４７で特定したアプリ価格情報と、を含む詳細情報を対応付けてアプリケーション詳細情報を生成することができる（ステップＳ４８）。
【０１４０】
図５５は、図３８に示すアプリケーション一覧画面に表示された何れかのアプリケーション選択ボタン３３１が押下された場合のシステム１の動作手順の一例を示すシーケンス図である。上述したように、表示制御部２７３は、何れかのアプリケーション選択ボタン３３１の押下を受け付けた場合、上述のインストール指示画面（図４１参照）を操作パネル２７に表示する制御を行う（ステップＳ５１）。次に、表示制御部２７３は、インストールボタン３３２の押下を受け付けた場合、サーバ２から受信済みの画面情報を参照して、該画面情報に含まれる表示情報内のアプリケーション詳細情報のうち、ユーザの操作に応じて選択されたインストール命令の対象となるアプリケーションに対応する詳細情報の中に、ライセンスキーが含まれているか否かを確認する（ステップＳ５２）。ステップＳ５２の確認の結果、ライセンスキーが含まれている場合、上述のインストール確認画面（図４２参照）を操作パネル２７に表示する制御を行う（ステップＳ５３）。
【０１４１】
上述のステップＳ５２の確認の結果、ライセンスキーが含まれていない場合（つまり、インストール命令の対象となるアプリケーションが有償のアプリケーションの場合）、表示制御部２７３は、上述の図４４の入力画面を操作パネル２７に表示する制御を行い（ステップＳ５４）、ユーザからのライセンスキーの入力を受け付ける。ここでは、ユーザは、購入済みのアプリケーションに対応するライセンスキーを事前に把握していることを前提とする。例えばアプリケーションの管理者から、該アプリケーションを購入したユーザに対して、郵送やメール等でライセンスキーを通知する形態であってもよい。
【０１４２】
次に、実行部２７４は、ユーザの操作に応じて選択されたインストール命令と、アプリＩＤ（選択されたアプリケーション命令の対象となるアプリケーションのアプリＩＤ）と、ライセンスキー（選択されたアプリケーション命令の対象となるアプリケーションのライセンスキー）とを処理実行部２７５へ通知する（ステップＳ５５）。処理実行部２７５は、実行部２７４から通知されたライセンスキーを用いて、実行部２７４から通知されたインストール命令を実行する。より具体的には以下のとおりである。まず、処理実行部２７５は、サーバ２に対して、インストール命令の対象となるアプリケーションのアプリＩＤを少なくとも含み、かつ、該アプリケーションのダウンロードを要求する上述のダウンロード要求を送信する（ステップＳ５６）。ダウンロード要求を受信したサーバ２（ダウンロード部２３２）は、その受信したダウンロード要求に含まれるアプリＩＤに対応するアプリケーションを選択し（ステップＳ５７）、その選択したアプリケーションをＭＦＰ６へ送信する（ステップＳ５８）。
【０１４３】
次に、処理実行部２７５は、サーバ２に対して、アプリＩＤとライセンスキーと機番とを少なくとも含み、かつ、ライセンスの有効化を要求する上述の有効化要求を送信する（ステップＳ５９）。有効化要求を受信したサーバ２（ライセンス有効化部２２７）は、ライセンスを有効化するための制御を行った後（ステップＳ６０）、有効化要求に対する応答をＭＦＰ６へ返す（ステップＳ６１）。ステップＳ６０の具体的な内容は上述したとおりであるが、ライセンス有効化部２２７は、ＭＦＰ６から上述の有効化要求を受信した場合、ライセンス情報ＤＢ２２４の中に、その受信した有効化要求に含まれるライセンスキーが存在するか否かを確認する。ライセンスキーが存在する場合は、ライセンス有効化部２２７は、上述したようにライセンス情報ＤＢ２２４に記憶された情報を更新する。また、ライセンス有効化部２２７は、ＭＦＰ６から受信した有効化要求に含まれるアプリＩＤで識別されるアプリケーションの有効期限などのライセンス（使用権限）を定めたライセンスファイルを発行し、有効化要求に対する応答として、ライセンスの状態が有効である旨に加えて該ライセンスファイルを送信することもできる。一方、ライセンス情報ＤＢ２２４の中に、その受信した有効化要求に含まれるライセンスキーが存在しない場合は、有効化要求に対する応答としてエラーを送信する。
【０１４４】
ＭＦＰ６（処理実行部２７５）は、有効化要求に対する応答として、ライセンスの状態が有効である旨を受信した場合、ステップＳ５８でサーバ２からダウンロードしたアプリケーションをインストールする制御を行う（ステップＳ６２）。インストールが完了した後、処理実行部２７５は、そのインストールが完了したアプリケーションのアプリＩＤと、インストール時の該アプリケーションのバージョンとを対応付けて上述のアプリケーション管理情報に追加することで、アプリケーション管理情報を更新する（ステップＳ６３）。
【０１４５】
図５６は、図３８に示すアプリケーション一覧画面に表示された更新選択ボタン３２５が押下された場合のシステム１の動作手順の一例を示すシーケンス図である。上述したように、表示制御部２７３は、更新選択ボタン３２５の押下を受け付けた場合、ＭＦＰ６にインストール済みのアプリケーションのうち、更新対象のアプリケーションを特定する（ステップＳ７１）。そして、ステップＳ７１で特定したアプリケーションごとに、該アプリケーションの更新指示を受け付けるための更新指示画面（図４７参照）を操作パネル２７に表示する制御を行う（ステップＳ７２）。これらの具体的な内容は上述したとおりである。
【０１４６】
次に、実行部２７４は、何れかの更新指示ボタン３４１の押下を受け付けた場合、該更新指示ボタン３４１に貼り付けられた更新命令を処理実行部２７５へ通知する（ステップＳ７３）。処理実行部２７５は、実行部２７４から通知された更新命令を実行する。より具体的には以下のとおりである。まず、処理実行部２７５は、サーバ２に対して、更新対象のアプリＩＤを少なくとも含み、かつ、最新のバージョンのアプリケーションを要求する更新要求を送信する（ステップＳ７４）。更新要求を受信したサーバ２は、その受信した更新要求に含まれるアプリＩＤに対応するアプリケーションを選択し（ステップＳ７５）、その選択したアプリケーションをＭＦＰ６へ送信する（ステップＳ７６）。
【０１４７】
次に、ＭＦＰ６（処理実行部２７５）は、更新要求に対する応答として、サーバ２から受信した（新たにダウンロードしたアプリケーション）をインストールする制御を行う（ステップＳ７７）。インストールが完了した後、処理実行部２７５は、そのインストールが完了したアプリケーションのアプリＩＤと、インストール時（更新時）の該アプリケーションのバージョンとを対応付けて上述のアプリケーション管理情報に追加することで、アプリケーション管理情報を更新する（ステップＳ７８）。
【０１４８】
図５７は、図３８に示すアプリケーション一覧画面に表示された削除選択ボタン３２６が押下された場合のシステム１の動作手順の一例を示すシーケンス図である。上述したように、表示制御部２７３は、削除選択ボタン３２６の押下を受け付けた場合、上述の削除指示画面（図４９参照）を操作パネル２７に表示する制御を行う（ステップＳ８１）。次に、表示制御部２７３は、何れかの削除指示ボタン３５１の押下を受け付けた場合、上述の削除確認画面（図５０参照）を操作パネル２７に表示する制御を行う（ステップＳ８２）。次に、実行部２７４は、削除確認画面に表示された確認ボタン３６１の押下を受け付けた場合、ユーザの操作に応じて選択されたアンインストール命令（押下された確認ボタン３６１に貼り付けられたアンインストール命令）を処理実行部２７５へ通知する（ステップＳ８３）。
【０１４９】
処理実行部２７５は、実行部２７４から通知されたアンインストール命令を実行する。より具体的には以下のとおりである。まず、処理実行部２７５は、サーバ２に対して、アンインストール命令の対象となるアプリケーションに対応するライセンスキーと、機番とを少なくとも含み、かつ、ライセンスの無効化を要求する上述の無効化要求を送信する（ステップＳ８４）。無効化要求を受信したサーバ２（ライセンス無効化部２２８）は、ライセンスを無効化するための制御を行った後（ステップＳ８５）、無効化要求に対する応答（ここではライセンスの状態が無効である旨を示す応答）をＭＦＰ６へ返す（ステップＳ８６）。ステップＳ８５の具体的な内容は上述したとおりであるが、ライセンス無効化部２２８は、ＭＦＰ６から上述の無効化要求を受信した場合、ライセンス情報ＤＢ２２４に記憶された情報のうち、その受信した無効化要求に含まれるライセンスキーと機番との組み合わせに対応付けられた有効状態情報を「無効」を示す情報に変更し、その受信した無効化要求に含まれるライセンスキーに対応付けられた使用中ライセンス数を「１」だけデクリメントし、使用済みライセンス数を「１」だけインクリメントする。
【０１５０】
ＭＦＰ６（処理実行部２７５）は、無効化要求に対する応答として、ライセンスの状態が無効である旨を受信した場合、無効化要求に含まれるライセンスキーに対応するアプリケーションをアンインストールする制御を行う（ステップＳ８７）。アンインストールが完了した後、処理実行部２７５は、上述のアプリケーション管理情報のうち、該アンインストールが完了したアプリケーションに対応する情報を削除することで、アプリケーション管理情報を更新する（ステップＳ８８）。
【０１５１】
以上に説明したように、本実施形態では、サーバ２は、ネットワーク７を介して接続されるＭＦＰ６からの要求に応じて、ＭＦＰ６が設置されている地域情報に紐付いた、ＭＦＰ６が利用可能なアプリケーションを示す表示情報と、アプリケーションに関する処理をＭＦＰ６に実行させるアプリケーションコマンドと、を少なくとも含むＷｅｂコンテンツデータをＭＦＰ６に送信する制御を行う制御部２１２を備え、ＭＦＰ６は、起動部２７２がブラウザアプリを起動する際に接続するサーバ２の接続情報を取得する接続情報取得部２７１と、サーバ２から受信したＷｅｂコンテンツデータに基づく画面を操作パネル２７に表示する制御を行う表示制御部２７３と、操作パネル２７に表示された画面を介したユーザの操作に応じてＷｅｂコンテンツデータに含まれるアプリケーションコマンドを実行して、該アプリケーションコマンドに対応したアプリケーションに関する処理の実行をＭＦＰ６に要求する実行部２７４と、を備える。これにより、サーバ２側で表示情報を自由に変更しても、Ｗｅｂコンテンツデータに含まれるアプリケーションコマンドをＭＦＰ６に実行させることができるので、表示情報の変更に合わせてＭＦＰ６側のプログラムを変更する必要は無い。すなわち、本実施形態によれば、ＭＦＰ６が利用可能なアプリケーションを紹介するページを提供するサーバ２が、例えば地域ごとに表示内容が異なるページを構築するための仕組みを実現できる。また、ＭＦＰ６は、接続先提供サーバ５の接続情報を記憶しており、画面情報および表示情報を取得するサーバ２の接続情報を接続先提供サーバ５から取得して保持するので、例えば、サーバ２の数が増加した場合や、地域ごとのサーバ２の設置位置が変更になった場合でもＭＦＰ６側のプログラムを変更する必要は無い。さらに、上述したようにＭＦＰ６は、複数のサーバ２の接続情報を記憶することで、サーバ２に接続できない場合には、同等の機能を有する他のサーバ２に切り替えて通信を行うことができるため、可用性が向上するという有意な効果を奏する。
【０１５２】
以上、本発明に係る実施形態について説明したが、本発明は、上述の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【０１５３】
例えば図３８に示すアプリケーション一覧画面に表示されるアプリケーションの中に（ＭＦＰ６が利用可能なアプリケーションの中に）、サーバ２に配置したアプリケーションを、操作部２０のブラウザアプリで利用する形態のアプリケーション（つまり、Ｗｅｂアプリ）が含まれていてもよい。このようなＷｅｂアプリについては、ＭＦＰ６にインストールする必要は無いので、Ｗｅｂアプリに対応するアプリケーション選択ボタン３３１の押下を受け付けた場合、表示制御部２７３は、例えば図５８に示すようなショートカット作成指示画面を操作パネル２７に表示する制御を行う形態であってもよい。ショートカット作成指示画面は、対応するアプリケーション（Ｗｅｂアプリ）のアプリ説明情報とアプリ価格情報と、Ｗｅｂアプリの機能を呼び出すためのショートカットアイコンの作成を指示するためのショートカット作成ボタン３７１とを表示する。この例では、ショートカット作成ボタン３７１に対して、ショートカットを作成する命令を示すショートカット作成命令が貼り付けられている。実行部２７４は、ショートカット作成ボタン３７１の押下を受け付けた場合、処理実行部２７５に対して、該ショートカット作成ボタン３７１に貼り付けられたショートカット作成命令を通知する。そして、処理実行部２７５は、実行部２７４から通知されたショートカット作成命令を実行する。要するに、アプリケーションコマンドは、Ｗｅｂアプリの機能を呼び出すためのショートカットアイコンを作成する命令を示すショートカットアイコン作成命令を含んでいてもよい。この場合、実行部２７４は、ユーザの操作に応じてショートカットアイコン作成命令が選択された場合（例えば上述のショートカット作成ボタン３７１が押下された場合）、その選択されたショートカットアイコン作成命令（押下されたショートカット作成ボタン３７１に貼り付けられたショートカット作成命令）を処理実行部２７５へ通知し、処理実行部２７５は、実行部２７４から通知されたショートカットアイコン作成命令を実行する形態であってもよい。ＭＦＰ６がサーバ２から受信した表示情報の中に、インストールが必要なアプリとＷｅｂアプリが混在している場合、図４０の詳細情報における「ａｐｐＴｙｐｅ」を参照して、値が「ｉｎｓｔａｌｌ」の場合インストールが必要なアプリと判断して図４１を表示し、値が「ｗｅｂ」の場合Ｗｅｂアプリと判断して図５８を表示するようにしてもよい。
【０１５４】
また、例えば操作部２０（ＭＦＰ６）は、複数のユーザごとに、該ユーザの権限を対応付けた権限情報を管理する機能（権限情報管理部）をさらに備える形態であってもよい。表示制御部２７３は、権限情報管理部から取得した権限情報を参照して、ＭＦＰ６を使用中のユーザ（ＭＦＰ６を使用する権限を有すると認められたユーザ、ログイン中のユーザ）に対応付けられた権限が、例えばインストールの実行を指示できない形態である場合は、図４１に示すインストールボタン３３２を非表示にすることもできる。同様に、ＭＦＰ６を使用中のユーザに対応付けられた権限が、例えば更新の実行を指示できない形態である場合は、図４７に示す更新指示ボタン３４１を非表示にすることもできる。また、ＭＦＰ６を使用中のユーザに対応付けられた権限が、例えばアンインストールの実行を指示できない形態である場合は、図４９に示す削除指示ボタン３５１を非表示にすることもできる。
【０１５５】
また、上述の実施形態では、本体１０と操作部２０は、別々のオペレーティングシステムで互いに独立して動作しているが、これに限らず、例えば本体１０と操作部２０が同じオペレーティングシステムで動作する形態であってもよい。つまり、本体１０と操作部２０とを一体とした構成であってもよい。
【０１５６】
また、上述したアプリケーション一覧画面の形態は任意であり、例えば図５９に示すような、以上の例を組み合わせた形態であってもよい。
【０１５７】
また、例えば上述の画面提供部２１３は、ＭＦＰ６を含む画像形成装置から上述の画面情報要求を受信した場合に限り、上述のアプリケーションコマンドを含むＷｅｂコンテンツデータを生成する形態であってもよい。つまり、画面提供部２１３は、画像形成装置以外の機器（ＰＣ、タブレット等）から画面情報要求を受信した場合は、アプリケーションコマンドを含まないＷｅｂコンテンツデータを生成し、画面情報要求に対する応答として、その生成したＷｅｂコンテンツデータを機器へ送信する形態であってもよい。この形態において、上述の画面提供部２１３は、画像形成装置以外の機器から画面情報要求を受信した場合は、アプリケーションコマンドを含まないＷｅｂコンテンツデータを生成し、画面情報要求に対する応答として、その生成したＷｅｂコンテンツデータを機器へ送信する形態であってもよい。この形態において、上述の画面提供部２１３は、画像形成装置以外の機器から画面情報要求を受信した場合、アプリケーションコマンド（インストール命令、更新命令、アンインストール命令等）を選択するための情報（ボタン）を含まないＷｅｂコンテンツデータを生成し、その生成したＷｅｂコンテンツデータを、画面情報要求に対する応答として機器へ送信する形態であってもよい。また、機器から受信した画面情報要求が、ＭＦＰ６からの画面情報要求であるか否かを判断する方法は任意であるが、例えばＵｓｅｒ−Ａｇｅｎｔヘッダで判断する方法であってもよいし、ＭＦＰ６からの最初のアクセスの際に機器認証を行う（ＭＦＰ６であるか否かを認証する）といった方法であってもよい。また、例えばＪａｖａＳｃｒｉｐｔでＭＦＰ６向けのコマンドを実行してみて、エラーが発生した場合はＭＦＰ６以外の機器であると判断する方法であってもよい。
【０１５８】
また、上述した実施形態のシステム１（サーバ２、ＭＦＰ６等）で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）、ＵＳＢ（Universal  Serial  Bus）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、各種プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【符号の説明】
【０１５９】
１  システム
２、３、４  サーバ
５  接続先提供サーバ
６  ＭＦＰ
７  ネットワーク
８  アイコン
１０  本体
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  ＨＤＤ
１５  通信Ｉ／Ｆ
１６  接続Ｉ／Ｆ
１７  エンジン部
１８  システムバス
２０  操作部
２１  ＣＰＵ
２２  ＲＯＭ
２３  ＲＡＭ
２４  フラッシュメモリ（記憶部）
２５  通信Ｉ／Ｆ
２６  接続Ｉ／Ｆ
２７  操作パネル
２８  システムバス
３０  通信路
１０１  アプリ層
１０２  サービス層
１０３  ＯＳ層
２０１  アプリ層
２０２  サービス層
２０３  ＯＳ層
２１０  アプリ情報管理モジュール
２１１  記憶部
２１２  制御部
２１３  画面提供部
２１４  設定部
２１６  特定部
２１７  表示情報生成部
２１９  設定制御部
２２０  ライセンス管理モジュール
２２１  記憶部
２２２  制御部
２２３  ライセンス発行部
２２４  ライセンス情報ＤＢ
２２５  ユーザ情報ＤＢ
２２６  登録制御部
２２７  ライセンス有効化部
２２８  ライセンス無効化部
２３０  アプリダウンロード管理モジュール
２３１  アプリストレージ
２３２  ダウンロード部
２４０  アプリケーションサーバ
２５０  データベースサーバ
２６１  アプリ情報ＤＢ
２６２  ユーザ情報ＤＢ
２７１  接続情報取得部
２７２  起動部
２７３  表示制御部
２７４  実行部
２７５  処理実行部
３０１  ＣＰＵ
３０２  ＲＯＭ
３０３  ＲＡＭ
３０４  通信Ｉ／Ｆ
３０５  入力装置
３０６  表示装置
３１０  サービス検索モジュール
３１１  記憶部
３１２  制御部
３２１  接続情報ＤＢ
３２２  接続情報特定部
３２３  リスト生成部
【先行技術文献】
【特許文献】
【０１６０】
【特許文献１】特開２０１０−１８２３０９号公報
【図１】
2017150472.tif 000003
【図２】
2017150472.tif 000004
【図３】
2017150472.tif 000005
【図４】
2017150472.tif 000006
【図５】
2017150472.tif 000007
【図６】
2017150472.tif 000008
【図７】
2017150472.tif 000009
【図８】
2017150472.tif 000010
【図９】
2017150472.tif 000011
【図１０】
2017150472.tif 000012
【図１１】
2017150472.tif 000013
【図１２】
2017150472.tif 000014
【図１３】
2017150472.tif 000015
【図１４】
2017150472.tif 000016
【図１５】
2017150472.tif 000017
【図１６】
2017150472.tif 000018
【図１７】
2017150472.tif 000019
【図１８】
2017150472.tif 000020
【図１９】
2017150472.tif 000021
【図２０】
2017150472.tif 000022
【図２１】
2017150472.tif 000023
【図２２】
2017150472.tif 000024
【図２３】
2017150472.tif 000025
【図２４】
2017150472.tif 000026
【図２５】
2017150472.tif 000027
【図２６】
2017150472.tif 000028
【図２７】
2017150472.tif 000029
【図２８】
2017150472.tif 000030
【図２９】
2017150472.tif 000031
【図３０】
2017150472.tif 000032
【図３１】
2017150472.tif 000033
【図３２】
2017150472.tif 000034
【図３３】
2017150472.tif 000035
【図３４】
2017150472.tif 000036
【図３５】
2017150472.tif 000037
【図３６】
2017150472.tif 000038
【図３７】
2017150472.tif 000039
【図３８】
2017150472.tif 000040
【図３９】
2017150472.tif 000041
【図４０】
2017150472.tif 000042
【図４１】
2017150472.tif 000043
【図４２】
2017150472.tif 000044
【図４３】
2017150472.tif 000045
【図４４】
2017150472.tif 000046
【図４５】
2017150472.tif 000047
【図４６】
2017150472.tif 000048
【図４７】
2017150472.tif 000049
【図４８】
2017150472.tif 000050
【図４９】
2017150472.tif 000051
【図５０】
2017150472.tif 000052
【図５１】
2017150472.tif 000053
【図５２】
2017150472.tif 000054
【図５３】
2017150472.tif 000055
【図５４】
2017150472.tif 000056
【図５５】
2017150472.tif 000057
【図５６】
2017150472.tif 000058
【図５７】
2017150472.tif 000059
【図５８】
2017150472.tif 000060
【図５９】
2017150472.tif 000061
【手続補正書】
【提出日】平成29年7月14日(2017.7.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の第１サーバと、ネットワークを介して前記第１サーバの各々に接続される画像形成装置と、を備えるシステムであって、
前記第１サーバは、
前記画像形成装置から該画像形成装置が設置されている地理的位置を示す地域情報を少なくとも含み、かつ、該地域情報に対応する前記画像形成装置が利用可能なアプリケーションを示す表示情報と、前記画像形成装置から該アプリケーションに関する処理を前記画像形成装置に実行させるアプリケーションコマンドと、を少なくとも含むＷｅｂコンテンツデータを、前記画像形成装置からの要求に応じて、前記画像形成装置に送信する制御部を備え、
前記画像形成装置は、
前記第１サーバから受信した前記Ｗｅｂコンテンツデータに基づく画面を表示部に表示させる制御を行う表示制御部と、前記画面を介したユーザの操作に応じて前記Ｗｅｂコンテンツデータに含まれる前記アプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応した前記アプリケーションに関する処理の実行を前記画像形成装置に要求するものであってアプリケーションプログラミングインタフェースにより提供される実行部と、を含むＷｅｂブラウザと、
前記Ｗｅｂブラウザからの要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する処理実行部と、
を備える、
ことを特徴とするシステム。
【請求項２】
（削除）
【請求項３】
前記システムは、ネットワークを介して前記第１サーバおよび前記画像形成装置の各々と接続される第２サーバをさらに備え、
前記第２サーバは、
前記画像形成装置が設置されている地理的位置を示す地域情報または前記画像形成装置の販売店を示す販社情報と、前記アプリケーションを提供する前記第１サーバに接続するための情報を示す接続情報とを対応付けた接続対応情報を記憶する記憶部と、
前記画像形成装置から、前記地域情報または前記販社情報を少なくとも含み、かつ前記第１サーバの前記接続情報の取得を要求する接続情報取得要求を受け付けて、前記接続対応情報を参照し、前記第１サーバの前記接続情報を特定する接続情報特定部と、
特定した前記第１サーバの前記接続情報を前記画像形成装置に送信する接続情報送信部と、を備え、
前記画像形成装置は、
前記接続情報取得要求を前記第２サーバに送信し、前記第１サーバの前記接続情報を取得する接続情報取得部を備える、
ことを特徴とする請求項１に記載のシステム。
【請求項４】
前記第２サーバは、
前記第１サーバの前記接続情報の一覧を示す接続一覧情報を生成するリスト生成部を備え、
前記第２サーバの前記接続情報特定部は、前記接続情報取得要求を受け付けて、前記第１サーバの前記接続情報を特定して前記リスト生成部に受け渡し、前記リスト生成部で生成した前記第１サーバの前記接続一覧情報を前記画像形成装置に送信し、
前記リスト生成部は、前記接続情報特定部で特定した前記第１サーバの前記接続情報の中で、前記画像形成装置と通信に要する時間が短い接続情報から該通信に要する時間が長い接続情報の順に並べた複数の前記第１サーバの前記接続一覧情報を生成して前記接続情報特定部に受け渡し、
前記画像形成装置の前記接続情報取得部は、前記第２サーバから受信した前記第１サーバの前記接続一覧情報を保持し、
前記画像形成装置の前記接続情報取得部は、前記第２サーバから前記第１サーバの前記接続情報が受信できない場合、または前記第１サーバから前記Ｗｅｂコンテンツデータの取得要求に対する応答がない場合、前記第１サーバの前記接続一覧情報の順に前記表示情報要求および前記画面情報要求を前記第１サーバに送信する、
ことを特徴とする請求項３に記載のシステム。
【請求項５】
前記第２サーバの前記記憶部は、前記画像形成装置を識別する機器情報をさらに対応付けた前記接続対応情報を記憶し、
前記第２サーバの前記接続情報特定部は、前記画像形成装置から、前記機器情報を少なくとも含み、かつ、前記第１サーバの前記接続情報の取得を要求する接続情報取得要求を受け付けて、前記接続対応情報を参照し、前記第１サーバの前記接続情報を特定し、
前記第２サーバの前記接続情報送信部は、特定した前記第１サーバの前記接続情報を前記画像形成装置に送信し、
前記画像形成装置の接続情報取得部は、前記接続情報取得要求を前記第２サーバに送信し、前記第１サーバの前記接続情報を取得する、
ことを特徴とする請求項３または４に記載のシステム。
【請求項６】
前記第２サーバの前記接続情報特定部は、前記第１サーバの前記接続情報と共に該第２サーバに接続するための情報を示す接続情報を前記画像形成装置に送信し、
前記画像形成装置の前記接続情報取得部は、受信した前記第１サーバの前記接続情報と共に前記第２サーバの前記接続情報を記憶部に記憶させる、
ことを特徴とする請求項５に記載のシステム。
【請求項７】
前記システムは、複数の第２サーバを備え、
前記第２サーバの前記リスト生成部は、前記第１サーバの前記接続一覧情報を生成すると共に前記第２サーバの接続情報の接続一覧情報を生成し、生成した２つの該接続一覧情報を前記画像形成装置に送信し、
前記画像形成装置の前記接続情報取得部は、前記第２サーバの前記接続情報特定部から受信した前記第１サーバの前記接続一覧情報と共に前記第２サーバの前記接続一覧情報を記憶部に記憶させておき、
前記画像形成装置の前記接続情報取得部は、前記第２サーバから前記第１サーバの前記接続情報が受信できない場合、前記記憶部に記憶されている前記第２サーバの前記接続一覧情報の順に前記接続情報取得要求を前記第２サーバに送信する、
ことを特徴とする請求項６に記載のシステム。
【請求項８】
前記地域情報は、前記画像形成装置の販売店を示す販社情報に含まれており、
前記画像形成装置の表示制御部は、前記表示情報取得部が前記表示情報要求を送信する際に、前記地域情報を含んだ該販社情報が保持されていない場合、該販社情報を示すコード情報の入力を受け付けるＵＩ画面を表示部に表示させ、
ユーザの操作に応じて、ブラウザ機能を提供するブラウザアプリを起動する起動部は、前記ＵＩ画面で受け付けた前記コード情報から特定される販社情報と地域情報とを記憶部に記憶させる、
ことを特徴とする請求項１、３から７の何れか１項に記載のシステム。
【請求項９】
前記表示制御部は、前記ＵＩ画面で受け付けた前記コード情報から特定される地域情報と、予め記憶している販社情報に対応付けられたコード情報から特定された地域情報とが同一であるかを判断する、または該コード情報に含まれる所定の情報が予め設定された情報と同一であるかを判断する、の何れか一方または両方を行って、同一でない場合には、エラーを示す画面を前記表示部に表示させた後、再度前記販社情報を示すコード情報の入力を受け付けるＵＩ画面を表示部に表示させる、
ことを特徴とする請求項８に記載のシステム。
【請求項１０】
前記第１サーバは、
前記地域情報、または前記画像形成装置の販売店を示す販社情報に対応するアプリケーションを提供する組織を識別する組織ＩＤに紐付いている複数のアプリケーションごとに、公開されている状態であるか否かを示す公開状態情報と、該アプリケーションを利用可能な前記画像形成装置の機種を識別する機種情報とを対応付けて記憶する記憶部をさらに備え、
前記制御部は、
前記画像形成装置から、前記画面情報を要求する画面情報要求を受信した場合に、前記画面情報を生成し、前記画面情報要求に対する応答として、その生成した前記画面情報を前記画像形成装置へ送信する画面提供部と、
前記画像形成装置から、前記地域情報と前記機種情報を含み、かつ、前記表示情報を要求する表示情報要求を受信した場合に、前記記憶部に記憶された情報を参照して、前記表示情報要求に含まれる前記地域情報と、前記機種情報と、公開されている状態を示す前記公開状態情報とに基づいて構成されるアプリケーションを特定する特定部と、
前記特定部により特定されたアプリケーションを示す前記表示情報を生成し、その生成した前記表示情報を、前記表示情報要求に対する応答として前記画像形成装置へ送信する表示情報生成部と、を含む、
ことを特徴とする請求項１、３から９の何れか１項に記載のシステム。
【請求項１１】
前記アプリケーションコマンドは、アプリケーションをインストールする命令を示すインストール命令を含み、
前記実行部は、前記ユーザの操作に応じて前記インストール命令が選択された場合、その選択された前記インストール命令を前記処理実行部へ通知し、
前記処理実行部は、前記実行部から通知された前記インストール命令を実行する、
ことを特徴とする請求項１、３から１０の何れか１項に記載のシステム。
【請求項１２】
前記アプリケーションコマンドは、アプリケーションを更新する命令を示す更新命令を含み、
前記表示情報は、前記画像形成装置が利用可能なアプリケーションごとに、該アプリケーションの最新のバージョンを少なくとも示す詳細情報を対応付けたアプリケーション詳細情報を含み、
前記実行部は、
前記ユーザの操作に応じて、前記画像形成装置にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、前記アプリケーション詳細情報のうち該アプリケーションに対応する前記詳細情報が示すバージョンとが異なるアプリケーションを特定し、該特定したアプリケーションに対応する前記更新命令が選択された場合、その選択された前記更新命令を前記処理実行部へ通知し、
前記処理実行部は、前記実行部から通知された前記更新命令を実行する、
ことを特徴とする請求項１、３から１１の何れか１項に記載のシステム。
【請求項１３】
前記アプリケーションコマンドは、インストール済みのアプリケーションを削除して、前記画像形成装置の状態を、該アプリケーションをインストールする前の状態に戻す命令を示すアンインストール命令を含み、
前記実行部は、前記ユーザの操作に応じて選択された前記アンインストール命令を前記処理実行部へ通知し、
前記処理実行部は、前記実行部から通知された前記アンインストール命令を実行する、
ことを特徴とする請求項１、３から１２の何れか１項に記載のシステム。
【請求項１４】
前記第１サーバは、少なくともアプリ情報管理モジュールを含む、複数のモジュール有し、
前記アプリ情報管理モジュールは、少なくとも画面提供部を含む、複数のサブモジュールを有し、
前記画像形成装置の前記接続情報取得部は、各モジュールが備える前記サブモジュールごとに接続情報であるＵＲＬを取得する、
ことを特徴とする請求項３から１３の何れか１項に記載のシステム。
【請求項１５】
前記画像形成装置は、
第１のＯＳ及び、プリンタまたはスキャナを有する本体と、
第２のＯＳ及び、前記プリンタまたはスキャナを操作するための操作指示を少なくとも入力する操作部と、を備え、
前記Ｗｅｂブラウザは、前記操作部内において前記第２のＯＳの元で動作するアプリケーションとして備える、
ことを特徴とする請求項１、３から１４の何れか１項に記載のシステム。
【請求項１６】
複数の第１サーバと、ネットワークを介して前記第１サーバの各々に接続される画像形成装置と、を含むシステムの方法であって、
前記第１サーバは、
前記画像形成装置から該画像形成装置が設置されている地理的位置を示す地域情報を少なくとも含み、かつ、該地域情報に対応する前記画像形成装置が利用可能なアプリケーションを示す表示情報と、前記画像形成装置から該アプリケーションに関する処理を前記画像形成装置に実行させるアプリケーションコマンドと、を少なくとも含むＷｅｂコンテンツデータを、前記画像形成装置からの要求に応じて、前記画像形成装置に送信する制御ステップを含み、
前記画像形成装置は、
前記第１サーバから受信した前記Ｗｅｂコンテンツデータに基づく画面を表示部に表示させる制御を行う表示制御ステップと、
前記画面を介したユーザの操作に応じて前記Ｗｅｂコンテンツデータに含まれる前記アプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応した前記アプリケーションに関する処理の実行を前記画像形成装置に要求するものであってアプリケーションプログラミングインタフェースにより提供される実行ステップと、
前記要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する処理実行ステップと、
を含む、
ことを特徴とする画像形成装置とサーバとを含むシステムの方法。
【請求項１７】
ネットワークを介して複数の第１サーバの各々に接続される画像形成装置であって、
前記画像形成装置から該画像形成装置が設置されている地理的位置を示す地域情報を少なくとも含み、かつ、該地域情報に対応する前記画像形成装置が利用可能なアプリケーションを示す表示情報と、前記画像形成装置から該アプリケーションに関する処理を前記画像形成装置に実行させるアプリケーションコマンドと、を少なくとも含むものであって前記第１サーバから受信したＷｅｂコンテンツデータに基づく画面を表示部に表示させる制御を行う表示制御部と、前記画面を介したユーザの操作に応じて前記Ｗｅｂコンテンツデータに含まれる前記アプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応した前記アプリケーションに関する処理の実行を前記画像形成装置に要求するものであってアプリケーションプログラミングインタフェースにより提供される実行部と、を含むＷｅｂブラウザと、
前記Ｗｅｂブラウザからの要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する処理実行部と、
を備える、
ことを特徴とする画像形成装置。
【国際調査報告】
2017150472.tif 000062
2017150472.tif 000063
2017150472.tif 000064
2017150472.tif 000065