JP6822172B2 - System, image forming device, information processing method and information processing device - Google Patents

System, image forming device, information processing method and information processing device Download PDF

Info

Publication number
JP6822172B2
JP6822172B2 JP2017011429A JP2017011429A JP6822172B2 JP 6822172 B2 JP6822172 B2 JP 6822172B2 JP 2017011429 A JP2017011429 A JP 2017011429A JP 2017011429 A JP2017011429 A JP 2017011429A JP 6822172 B2 JP6822172 B2 JP 6822172B2
Authority
JP
Japan
Prior art keywords
application
information
command
unit
display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017011429A
Other languages
Japanese (ja)
Other versions
JP2017157200A (en
Inventor
松島 弘幸
弘幸 松島
楽 竹本
楽 竹本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to US15/440,632 priority Critical patent/US10129428B2/en
Publication of JP2017157200A publication Critical patent/JP2017157200A/en
Application granted granted Critical
Publication of JP6822172B2 publication Critical patent/JP6822172B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)

Description

本発明は、システム、画像形成装置、情報処理方法および情報処理装置に関する。 The present invention relates to a system, an image forming apparatus, an information processing method and an information processing apparatus.

近年、携帯電話や情報携帯端末を代表とする様々な通信機器の普及により、通信機器上で利用可能なアプリケーションの開発が盛んになってきている。これらのアプリケーションの利用を促進するため、アプリケーションを紹介し、そのまま通信機器にダウンロードやインストールすることができるウェブサイトやアプリケーションも開発されている。 In recent years, with the spread of various communication devices such as mobile phones and information mobile terminals, the development of applications that can be used on communication devices has become active. In order to promote the use of these applications, websites and applications that can be introduced and downloaded or installed on communication devices as they are have been developed.

例えば特許文献1では、サーバが保持している複数のアプリケーションごとに、当該アプリケーションのダウンロードを要求するダウンロードボタン(仮想ボタン)が表示されたアプリケーション説明ページが、サーバからコンピュータデバイス(クライアントデバイス)に提供され、コンピュータデバイスの表示部に表示される。そして、アプリケーション説明ページのダウンロードボタンが選択された場合、選択されたアプリケーションがコンピュータデバイスによってサポートされている場合に限り、ダウンロードを許可する技術が開示されている。 For example, in Patent Document 1, an application explanation page displaying a download button (virtual button) requesting download of the application is provided from the server to the computer device (client device) for each of a plurality of applications held by the server. Is displayed on the display of the computer device. And when the download button on the application description page is selected, the technology that allows the download is disclosed only if the selected application is supported by the computer device.

しかしながら、例えば特許文献1に開示された技術では、サーバ側で、機器が利用可能なアプリケーションを紹介するページ(Webページ)の表示内容を変更する場合、その変更に合わせて機器側のプログラムも変更する必要がある。すなわち、従来においては、機器が利用可能なアプリケーションを紹介するページを提供(ページ自体を提供する形態、および、機器側でページを生成するために必要な情報を提供する形態の両方を含む)するサーバが、例えば地域ごとに表示内容の異なるページを構築するための仕組みは存在しなかった。 However, for example, in the technology disclosed in Patent Document 1, when the display content of the page (Web page) introducing the application that can be used by the device is changed on the server side, the program on the device side is also changed according to the change. There is a need to. That is, conventionally, a page introducing an application that can be used by a device is provided (including both a form of providing the page itself and a form of providing information necessary for generating the page on the device side). There was no mechanism for the server to build pages with different display contents for each region, for example.

本発明は、上記に鑑みてなされたものであり、機器が利用可能なアプリケーションを紹介するページを提供するサーバが、例えば地域ごとに表示内容の異なるページを構築可能なシステム、画像形成装置、情報処理方法および情報処理装置を提供することを目的とする。 The present invention has been made in view of the above, and a system, an image forming apparatus, and information capable of constructing a page having different display contents for each region, for example, by a server that provides a page introducing an application that can be used by a device. It is an object of the present invention to provide a processing method and an information processing apparatus.

上述した課題を解決し、目的を達成するために、本発明は、サーバと、ネットワークを介して前記サーバに接続される機器と、を備えるシステムであって、前記サーバは、前記機器からの要求に応じて、前記機器が利用可能なアプリケーションを示す表示情報と、アプリケーションに関する処理を前記機器に実行させるアプリケーションコマンドと、を少なくとも含むWebコンテンツデータを前記機器に送信する制御部を備え、前記機器は、前記サーバから受信した前記Webコンテンツデータに基づく画面を表示部に表示する制御を行う表示制御部と、前記画面を介したユーザの操作に応じて前記Webコンテンツデータに含まれる前記アプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応した前記アプリケーションに関する処理の実行を前記機器に要求する実行部と、を含むWebブラウザと、前記Webブラウザからの要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する処理実行部と、を備え、前記アプリケーションコマンドは、アプリケーションをインストールする命令を示すインストール命令を含み、前記実行部は、前記表示情報の中に、前記ユーザの操作に応じて選択された前記インストール命令の対象となるアプリケーションの使用権限の認証に用いられるライセンスキーが含まれている場合は、該ライセンスキーと、前記インストール命令とを前記処理実行部へ通知し、前記表示制御部は、前記表示情報の中に、該ライセンスキーが含まれていない場合は、該ライセンスキーの入力を促す入力画面を表示する制御を行うIn order to solve the above-mentioned problems and achieve the object, the present invention is a system including a server and a device connected to the server via a network, and the server is a request from the device. The device includes a control unit that transmits Web content data including at least display information indicating an application that can be used by the device and an application command that causes the device to execute a process related to the application. , A display control unit that controls the display of a screen based on the Web content data received from the server on the display unit, and executes the application command included in the Web content data in response to a user operation via the screen. A Web browser including an execution unit that requests the device to execute a process related to the application corresponding to the application command, and a process related to the application corresponding to the request based on the request from the Web browser. The application command includes an installation command indicating an instruction to install the application, and the execution unit is selected in the display information according to the operation of the user. When a license key used for authenticating the usage authority of the application subject to the installation command is included, the license key and the installation command are notified to the processing execution unit, and the display control unit displays the license key. When the license key is not included in the display information, control is performed to display an input screen prompting the input of the license key .

本発明によれば、機器が利用可能なアプリケーションを紹介するページを提供するサーバは、例えば地域ごとに表示内容が異なるページを構築することができる。 According to the present invention, a server that provides a page introducing an application that can be used by a device can construct a page having different display contents for each region, for example.

図1は、システムの構成の一例を示す図である。FIG. 1 is a diagram showing an example of a system configuration. 図2は、サーバのハードウェア構成の一例を示す図である。FIG. 2 is a diagram showing an example of the hardware configuration of the server. 図3は、サーバが有する機能の一例を示す図である。FIG. 3 is a diagram showing an example of a function possessed by the server. 図4は、アプリ情報管理モジュールが有する機能の一例を示す図である。FIG. 4 is a diagram showing an example of the function of the application information management module. 図5は、第1の対応情報の一例を示す図である。FIG. 5 is a diagram showing an example of the first correspondence information. 図6は、第2の対応情報の一例を示す図である。FIG. 6 is a diagram showing an example of the second correspondence information. 図7は、第3の対応情報の一例を示す図である。FIG. 7 is a diagram showing an example of the third correspondence information. 図8は、第4の対応情報の一例を示す図である。FIG. 8 is a diagram showing an example of the fourth correspondence information. 図9は、制御部が有する機能の一例を示す図である。FIG. 9 is a diagram showing an example of the function of the control unit. 図10は、ライセンス管理モジュールが有する機能の一例を示す図である。FIG. 10 is a diagram showing an example of the function of the license management module. 図11は、第5の対応情報の一例を示す図である。FIG. 11 is a diagram showing an example of the fifth correspondence information. 図12は、第6の対応情報の一例を示す図である。FIG. 12 is a diagram showing an example of the sixth correspondence information. 図13は、第7の対応情報の一例を示す図である。FIG. 13 is a diagram showing an example of the seventh correspondence information. 図14は、制御部が有する機能の一例を示す図である。FIG. 14 is a diagram showing an example of the function of the control unit. 図15は、アプリダウンロード管理モジュールが有する機能の一例を示す図である。FIG. 15 is a diagram showing an example of the function of the application download management module. 図16は、サーバの変形例を示す図である。FIG. 16 is a diagram showing a modified example of the server. 図17は、MFPのハードウェア構成の一例を示すブロック図である。FIG. 17 is a block diagram showing an example of the hardware configuration of the MFP. 図18は、MFPのソフトウェア構成の一例を示す模式図である。FIG. 18 is a schematic diagram showing an example of the software configuration of the MFP. 図19は、操作部が有する機能の一例を示す図である。FIG. 19 is a diagram showing an example of the function of the operation unit. 図20は、操作画面の一例を示す図である。FIG. 20 is a diagram showing an example of an operation screen. 図21は、表示情報要求の一例を示す図である。FIG. 21 is a diagram showing an example of a display information request. 図22は、表示情報要求に対する応答として受信した情報の一例を示す図である。FIG. 22 is a diagram showing an example of information received as a response to a display information request. 図23は、アプリケーション一覧画面の一例を示す図である。FIG. 23 is a diagram showing an example of the application list screen. 図24は、インストール指示画面の一例を示す図である。FIG. 24 is a diagram showing an example of an installation instruction screen. 図25は、インストール確認画面の一例を示す図である。FIG. 25 is a diagram showing an example of the installation confirmation screen. 図26は、実行部から処理実行部へ通知される情報の一例を示す図である。FIG. 26 is a diagram showing an example of information notified from the execution unit to the processing execution unit. 図27は、入力画面の一例を示す図である。FIG. 27 is a diagram showing an example of an input screen. 図28は、アプリケーション管理情報の一例を示す図である。FIG. 28 is a diagram showing an example of application management information. 図29は、アプリケーション詳細情報の一例を示す図である。FIG. 29 is a diagram showing an example of detailed application information. 図30は、更新指示画面の一例を示す図である。FIG. 30 is a diagram showing an example of an update instruction screen. 図31は、実行部から処理実行部へ通知される情報の一例を示す図である。FIG. 31 is a diagram showing an example of information notified from the execution unit to the processing execution unit. 図32は、削除指示画面の一例を示す図である。FIG. 32 is a diagram showing an example of a deletion instruction screen. 図33は、削除確認画面の一例を示す図である。FIG. 33 is a diagram showing an example of a deletion confirmation screen. 図34は、実行部から処理実行部へ通知される情報の一例を示す図である。FIG. 34 is a diagram showing an example of information notified from the execution unit to the processing execution unit. 図35は、システムの動作手順の一例を示すシーケンス図である。FIG. 35 is a sequence diagram showing an example of the operating procedure of the system. 図36は、サーバの動作例を示すフローチャートである。FIG. 36 is a flowchart showing an operation example of the server. 図37は、システムの動作手順の一例を示すシーケンス図である。FIG. 37 is a sequence diagram showing an example of the operating procedure of the system. 図38は、システムの動作手順の一例を示すシーケンス図である。FIG. 38 is a sequence diagram showing an example of the operating procedure of the system. 図39は、システムの動作手順の一例を示すシーケンス図である。FIG. 39 is a sequence diagram showing an example of the operating procedure of the system. 図40は、ショートカット作成指示画面の一例を示す図である。FIG. 40 is a diagram showing an example of a shortcut creation instruction screen. 図41は、変形例のアプリケーション一覧画面の一例を示す図である。FIG. 41 is a diagram showing an example of an application list screen of a modified example.

以下、添付図面を参照しながら、本発明に係るシステム、画像形成装置、情報処理方法および情報処理装置の実施形態を詳細に説明する。以下では、システムに含まれる機器の一例として、画像形成装置の一態様である複合機(MFP:Multifunction Peripheral)を例に挙げて説明するが、これに限られるものではない。なお、複合機とは、コピー機能、スキャナ機能、プリンタ機能、ファクス機能などの複数の異なる機能を有する装置である。 Hereinafter, embodiments of the system, image forming apparatus, information processing method, and information processing apparatus according to the present invention will be described in detail with reference to the accompanying drawings. Hereinafter, as an example of the equipment included in the system, a multifunction device (MFP), which is one aspect of the image forming apparatus, will be described as an example, but the present invention is not limited to this. A multifunction device is a device having a plurality of different functions such as a copy function, a scanner function, a printer function, and a fax function.

図1は、本実施形態のシステム(情報処理システム)1の構成の一例を示す図である。図1に示すように、システム1は、クラウドコンピューティング型のサービスを実現する。 FIG. 1 is a diagram showing an example of the configuration of the system (information processing system) 1 of the present embodiment. As shown in FIG. 1, the system 1 realizes a cloud computing type service.

システム1は、クラウド5と、例えばインターネットなどのネットワーク3を介してクラウド5に接続されるMFP4と、を備える。クラウド5は、複数のサーバ2で構成されるサーバ装置群を有している。図1に示すサーバ2の数は、一例を示したものであり、使用するサーバ2の数はこれに限定されない。なお、図1の例では、クラウド5側から見るとクライアントとなるシステム1に含まれる情報処理装置として、1台のMFP4のみを例示しているが、これに限られるものではなく、システム1に含まれる機器の台数および種類は任意である。例えばクライアントとなる機器として、PC(Personal Computer)がシステム1に含まれる形態であってもよい。 The system 1 includes a cloud 5 and an MFP 4 connected to the cloud 5 via a network 3 such as the Internet. The cloud 5 has a server device group composed of a plurality of servers 2. The number of servers 2 shown in FIG. 1 is an example, and the number of servers 2 used is not limited to this. In the example of FIG. 1, only one MFP4 is illustrated as an information processing device included in the system 1 which is a client when viewed from the cloud 5 side, but the present invention is not limited to this, and the system 1 is not limited to this. The number and type of equipment included is arbitrary. For example, as a device to be a client, a PC (Personal Computer) may be included in the system 1.

サーバ2は、MFP4からの要求に応じて、MFP4が利用可能なアプリケーションを示す情報を含む表示情報と、アプリケーションに関する処理をMFP4に実行させるコマンドを示すアプリケーションコマンドを少なくとも含む画面情報とで構成されるWebコンテンツデータをMFP4へ送信する。以下、サーバ2の具体的な構成を説明する。 The server 2 is composed of display information including information indicating an application available to the MFP 4 and screen information including at least an application command indicating a command for causing the MFP 4 to execute processing related to the application in response to a request from the MFP 4. The Web content data is transmitted to the MFP4. Hereinafter, a specific configuration of the server 2 will be described.

図2は、サーバ2のハードウェア構成の一例を示す図である。図2に示すように、サーバ2は、CPU301と、ROM302と、RAM303と、通信I/F304と、入力装置305と、表示装置306と、補助記憶装置307と、を備える。CPU301は、サーバ2の動作を統括的に制御する。ROM302は、プログラム等の各種のデータを記憶する不揮発性のメモリである。RAM303は、CPU301が実行する各種の処理の作業領域(ワークエリア)として機能する揮発性のメモリである。通信I/F304は、ネットワーク3と接続するためのインタフェースである。入力装置305は、ユーザによる操作の入力に用いられるデバイスであり、例えばマウスやキーボードなどで構成される。表示装置306は各種の情報を表示するデバイスであり、例えば液晶型ディスプレイ装置などで構成される。補助記憶装置307は、例えばHDD(Hard Disk Drive)などで構成される。 FIG. 2 is a diagram showing an example of the hardware configuration of the server 2. As shown in FIG. 2, the server 2 includes a CPU 301, a ROM 302, a RAM 303, a communication I / F 304, an input device 305, a display device 306, and an auxiliary storage device 307. The CPU 301 comprehensively controls the operation of the server 2. The ROM 302 is a non-volatile memory that stores various data such as programs. The RAM 303 is a volatile memory that functions as a work area (work area) for various processes executed by the CPU 301. The communication I / F 304 is an interface for connecting to the network 3. The input device 305 is a device used for inputting an operation by a user, and is composed of, for example, a mouse or a keyboard. The display device 306 is a device that displays various types of information, and is composed of, for example, a liquid crystal display device. The auxiliary storage device 307 is composed of, for example, an HDD (Hard Disk Drive) or the like.

図3は、サーバ2が有する機能の一例を示す図である。図3に示すように、サーバ2は、アプリ情報管理モジュール210と、ライセンス管理モジュール220と、アプリダウンロード管理モジュール230とを有する。図3の例では、本実施形態に関するモジュールのみを例示しているが、サーバ2が有するモジュールはこれらに限られるものではない。 FIG. 3 is a diagram showing an example of the functions of the server 2. As shown in FIG. 3, the server 2 has an application information management module 210, a license management module 220, and an application download management module 230. In the example of FIG. 3, only the modules related to the present embodiment are illustrated, but the modules included in the server 2 are not limited to these.

図4は、アプリ情報管理モジュール210が有する機能の一例を示す図である。アプリ情報管理モジュール210は、記憶部211と、制御部212と、画面提供部213と、設定部214と、を有している。なお、図4の例では、本実施形態に関する機能を主に例示しているが、アプリ情報管理モジュール210が有する機能はこれらに限られるものではない。 FIG. 4 is a diagram showing an example of the functions of the application information management module 210. The application information management module 210 includes a storage unit 211, a control unit 212, a screen providing unit 213, and a setting unit 214. In the example of FIG. 4, the functions related to the present embodiment are mainly illustrated, but the functions of the application information management module 210 are not limited to these.

図4に示すように、記憶部211は、アプリ情報データベース(以下、「アプリ情報DB」と称する)401と、ユーザ情報データベース(以下、「ユーザ情報DB」と称する)402と、を有する。 As shown in FIG. 4, the storage unit 211 has an application information database (hereinafter, referred to as “application information DB”) 401 and a user information database (hereinafter, referred to as “user information DB”) 402.

アプリ情報DB401は、複数のアプリケーションごとに、公開されている状態であるか否かを示す状態情報と、該アプリケーションを利用可能な機器の機種を識別する機種情報とを対応付けて記憶する。本実施形態では、アプリ情報DB401は、図5に示す第1の対応情報と、図6に示す第2の対応情報と、図7に示す第3の対応情報と、図8に示す第4の対応情報とを記憶している。 The application information DB 401 stores, for each of a plurality of applications, the state information indicating whether or not the application is open and the model information that identifies the model of the device that can use the application in association with each other. In the present embodiment, the application information DB 401 includes the first correspondence information shown in FIG. 5, the second correspondence information shown in FIG. 6, the third correspondence information shown in FIG. 7, and the fourth correspondence information shown in FIG. It remembers the correspondence information.

図5に示すように、第1の対応情報は、MFP4の機種ごとに割り当てられた機種IDと、MFP4の機種名と、MFP4の機種を識別する機種コード(「機種情報」)とを対応付けた情報である。なお、例えばひとつの機種IDに、複数の機種コードを対応付けてもよい。図6に示すように、第2の対応情報は、アプリケーションを識別するアプリIDと、アプリケーションの使用権限(ライセンス)の認証に用いられるライセンスキーと、機種IDと、該アプリIDで識別されるアプリケーションの最新のバージョンを示すバージョン情報とを対応付けた情報である。なお、この例では、無償のアプリケーションのアプリIDに対しては、ライセンスの認証が不要であるために予めライセンスキーが対応付けられているが、有償のアプリケーションのアプリIDに対しては、ライセンスの認証が必要になるのでライセンスキーは対応付けられない構成となる。 As shown in FIG. 5, the first correspondence information associates the model ID assigned to each model of the MFP4 with the model name of the MFP4 and the model code (“model information”) that identifies the model of the MFP4. Information. For example, one model ID may be associated with a plurality of model codes. As shown in FIG. 6, the second correspondence information includes an application ID that identifies the application, a license key used for authenticating the usage authority (license) of the application, a model ID, and an application identified by the application ID. This is information associated with the version information indicating the latest version of. In this example, the license key is associated with the application ID of the free application in advance because the license authentication is not required, but the application ID of the paid application is licensed. Since authentication is required, the license key cannot be associated.

図7に示すように、第3の対応情報は、アプリIDと、アプリケーションが公開されている状態であるか否かを示す状態情報とを対応付けた情報である。以上の第1の対応情報と第2の対応情報と第3の対応情報との組み合わせにより、複数のアプリケーションごとに、公開されている状態であるか否かを示す状態情報と、該アプリケーションを利用可能な機器の機種を識別する機種情報とを対応付けていると考えることができる。 As shown in FIG. 7, the third correspondence information is information in which the application ID is associated with the state information indicating whether or not the application is open to the public. By combining the above first correspondence information, the second correspondence information, and the third correspondence information, the state information indicating whether or not the state is open to the public for each of a plurality of applications and the application are used. It can be considered that it is associated with the model information that identifies the model of the possible device.

また、図8に示すように、第4の対応情報は、アプリIDと、機器が使用される国や地域の言語を示す言語情報と、該アプリIDで識別されるアプリケーションの表示名称と、該アプリIDで識別されるアプリケーションを紹介するメッセージとを対応付けた情報である。以下の説明では、表示名称とメッセージとの組み合わせを、アプリケーションを説明するための「アプリ説明情報」と称する場合がある。 Further, as shown in FIG. 8, the fourth correspondence information includes the application ID, the language information indicating the language of the country or region in which the device is used, the display name of the application identified by the application ID, and the said. This is information associated with a message introducing an application identified by an application ID. In the following description, the combination of the display name and the message may be referred to as "application description information" for explaining the application.

図4に戻って記憶部211の説明を続ける。ユーザ情報DB402は、例えば後述の設定部214による設定のための操作を行う権限を有するユーザの認証に必要な情報を記憶する。 Returning to FIG. 4, the description of the storage unit 211 will be continued. The user information DB 402 stores, for example, information necessary for authenticating a user who has the authority to perform an operation for setting by the setting unit 214 described later.

次に、制御部212が有する機能を説明する。ここでは、制御部212が有する機能は、サーバ2側のアプリケーションプログラミングインタフェース(API)により提供される。 Next, the function of the control unit 212 will be described. Here, the function of the control unit 212 is provided by the application programming interface (API) on the server 2 side.

ここで、説明の便宜上、制御部212が有する機能を説明する前に、画面提供部213の機能を説明する。画面提供部213は、MFP4から、画面情報を要求する画面情報要求を受信した場合に、アプリケーションコマンドを少なくとも含むWebコンテンツデータ(画面情報)を生成し、画面情報要求に対する応答として、Webコンテンツデータ(画面情報)をMFP4へ送信する。Webコンテンツデータ(画面情報)は、例えばHTMLと、HTMLに含まれる(あるいはHTMLから参照される)CSS、JavaScript(登録商標)などを含む。これを、MFP4のWebブラウザ(後述の表示制御部262)が表示して、JavaScriptのAjaxと呼ばれる技術で、サーバ2のAPI(制御部212)に表示情報を依頼する。例えばアプリケーションコマンドがJavaScriptである場合、HTMLにスクリプト自体を埋め込む形態であってもよいし、リンクだけを記載する形態であってもよい。この例では、送信元のMFP4の機種コードを含み、かつ、表示情報を要求する表示情報要求が、制御部212へ送信される。本実施形態のアプリケーションコマンドの種類として、インストール命令、更新命令、アンインストール命令などが挙げられる。インストール命令は、アプリケーションをインストールする命令を示す。更新命令は、アプリケーションを更新する命令を示す。アンインストール命令は、インストール済みのアプリケーションを削除して、MFP4の状態を、該アプリケーションをインストールする前の状態に戻す命令を示す。 Here, for convenience of explanation, the function of the screen providing unit 213 will be described before explaining the function of the control unit 212. When the screen providing unit 213 receives a screen information request requesting screen information from the MFP 4, it generates Web content data (screen information) including at least an application command, and as a response to the screen information request, Web content data (Web content data (screen information). Screen information) is transmitted to MFP4. Web content data (screen information) includes, for example, HTML, CSS included in HTML (or referred to by HTML), Javascript (registered trademark), and the like. This is displayed by the Web browser of the MFP 4 (display control unit 262 described later), and the API (control unit 212) of the server 2 is requested to display information by a technique called Ajax of Javascript. For example, when the application command is Javascript, the script itself may be embedded in HTML, or only the link may be described. In this example, a display information request including the model code of the source MFP4 and requesting display information is transmitted to the control unit 212. Examples of the type of application command of this embodiment include an installation command, an update command, and an uninstall command. The installation instruction indicates an instruction to install an application. The update instruction indicates an instruction to update the application. The uninstall instruction indicates an instruction to delete the installed application and return the state of the MFP4 to the state before installing the application.

図9は、制御部212が有する機能の一例を示す図である。図9に示すように、制御部212は、特定部216と、表示情報生成部217と、設定制御部219とを有する。 FIG. 9 is a diagram showing an example of the function of the control unit 212. As shown in FIG. 9, the control unit 212 includes a specific unit 216, a display information generation unit 217, and a setting control unit 219.

特定部216は、MFP4(機器)から、機種コードを少なくとも含み、かつ、表示情報を要求する表示情報要求を受信した場合に、記憶部211(この例ではアプリ情報DB401)に記憶された情報を参照して、表示情報要求に含まれる機種コードと、公開されている状態を示す状態情報との組み合わせに対応するアプリケーションを特定する。より具体的には、特定部216は、MFP4から表示情報要求を受信した場合、図5に示す第1の対応情報を参照して、その受信した表示情報要求に含まれる機種コードに対応付けられた機種IDを選択する。次に、特定部216は、図6に示す第2の対応情報を参照して、その選択した機種IDに対応付けられた1以上のアプリIDを選択する。次に、特定部216は、図7に示す第3の対応情報を参照して、その選択した1以上のアプリIDの中から、公開されている状態を示す状態情報が対応付けられたアプリIDを選択する。以上のようにして選択したアプリIDで識別されるアプリケーションを、MFP4から受信した表示情報要求に含まれる機種コードと、公開されている状態を示す状態情報との組み合わせに対応するアプリケーションとして(つまり、表示情報要求の要求元のMFP4で利用可能なアプリケーションとして)特定する。 When the identification unit 216 receives a display information request that includes at least the model code and requests the display information from the MFP4 (device), the identification unit 216 stores the information stored in the storage unit 211 (application information DB 401 in this example). With reference, the application corresponding to the combination of the model code included in the display information request and the state information indicating the published state is specified. More specifically, when the identification unit 216 receives the display information request from the MFP 4, the specific unit 216 is associated with the model code included in the received display information request with reference to the first corresponding information shown in FIG. Select the model ID. Next, the specific unit 216 selects one or more application IDs associated with the selected model ID with reference to the second correspondence information shown in FIG. Next, the specific unit 216 refers to the third correspondence information shown in FIG. 7, and from the selected one or more application IDs, the application ID associated with the state information indicating the published state is associated with the identification unit 216. Select. The application identified by the application ID selected as described above is used as an application corresponding to the combination of the model code included in the display information request received from the MFP 4 and the state information indicating the published state (that is,). (As an application that can be used by the MFP4 that requested the display information request).

また、本実施形態における表示情報要求の中には、該表示情報要求の要求元のMFP4が使用される国または地域の言語を示す言語情報(ロケール情報)が含まれているので、特定部216は、図8に示す第4の対応情報を参照して、以上のようにして特定したアプリIDと、MFP4から受信した表示情報要求に含まれる言語情報との組み合わせに対応するアプリ説明情報を特定することができる。なお、上記言語情報は、HTTPのAccept−Languageヘッダで記載するのが一般的である。 Further, since the display information request in the present embodiment includes language information (locale information) indicating the language of the country or region in which the MFP4 requesting the display information request is used, the specific unit 216 Refers to the fourth correspondence information shown in FIG. 8, and identifies the application description information corresponding to the combination of the application ID specified as described above and the language information included in the display information request received from the MFP 4. can do. The above language information is generally described in the HTTP-Language header of HTTP.

図9の説明を続ける。表示情報生成部217は、特定部216により特定されたアプリケーションを示すWebコンテンツデータ(表示情報)を生成し、その生成したWebコンテンツデータ(表示情報)を、表示情報要求に対する応答としてMFP4へ送信する。本実施形態のWebコンテンツデータ(表示情報)は、表示情報要求の要求元のMFP4が利用可能なアプリケーションごとに(例えばアプリIDごとに)、該アプリケーションの詳細を示す詳細情報を対応付けたアプリケーション詳細情報を含んでいる。詳細情報としては、ライセンスキー、バージョン情報、アプリ説明情報などが含まれる。 The description of FIG. 9 will be continued. The display information generation unit 217 generates Web content data (display information) indicating the application specified by the specific unit 216, and transmits the generated Web content data (display information) to the MFP 4 as a response to the display information request. .. The Web content data (display information) of the present embodiment is the application details associated with detailed information indicating the details of the application for each application (for example, for each application ID) that can be used by the MFP4 that requests the display information request. Contains information. Detailed information includes a license key, version information, application description information, and the like.

設定制御部219は、設定部214による設定を、記憶部211に記憶された情報に反映させる制御を行う。つまり、設定制御部219は、設定部214による設定に応じて、記憶部211に記憶された情報を更新する制御を行う。この例では、設定部214は、ユーザの操作に応じて、表示情報を可変に設定する機能を有する。例えば設定部214は、ユーザの操作に応じて、アプリ説明情報や、画面上の表示部品の配置などを示すレイアウト情報を可変に設定することができる。これにより、例えば地域ごとに異なる表示内容とすることもできる。 The setting control unit 219 controls to reflect the setting by the setting unit 214 in the information stored in the storage unit 211. That is, the setting control unit 219 controls to update the information stored in the storage unit 211 according to the setting by the setting unit 214. In this example, the setting unit 214 has a function of variably setting the display information according to the operation of the user. For example, the setting unit 214 can variably set the application explanation information and the layout information indicating the arrangement of display parts on the screen according to the operation of the user. As a result, for example, the display content can be different for each region.

以上に説明した制御部212、画面提供部213および設定部214の各々の機能は、CPU301がROM302等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明した記憶部211は、ROM302またはHDD等の補助記憶装置307などにより実現可能である。この例では、制御部212と画面提供部213との組み合わせが、MFP4からの要求に応じて、MFP4が利用可能なアプリケーションを示す表示情報と、アプリケーションコマンドを少なくとも含む画面情報とで構成されるWebコンテンツデータを送信する機能(「制御部」)に対応していると考えることができる。 Each of the functions of the control unit 212, the screen providing unit 213, and the setting unit 214 described above can be realized by the CPU 301 executing a program stored in a storage device such as a ROM 302. Further, the storage unit 211 described above can be realized by an auxiliary storage device 307 such as a ROM 302 or an HDD. In this example, the combination of the control unit 212 and the screen providing unit 213 is composed of display information indicating an application that can be used by the MFP 4 and screen information including at least an application command in response to a request from the MFP 4. It can be considered that it corresponds to the function of transmitting content data (“control unit”).

次に、ライセンス管理モジュール220が有する機能を説明する。図10は、ライセンス管理モジュール220が有する機能の一例を示す図である。図10に示すように、ライセンス管理モジュール220は、記憶部221と、制御部222と、ライセンス発行部223とを有している。なお、図10の例では、本実施形態に関する機能を主に例示しているが、ライセンス管理モジュール220が有する機能はこれらに限られるものではない。 Next, the functions of the license management module 220 will be described. FIG. 10 is a diagram showing an example of the functions included in the license management module 220. As shown in FIG. 10, the license management module 220 includes a storage unit 221, a control unit 222, and a license issuing unit 223. In the example of FIG. 10, the functions related to the present embodiment are mainly illustrated, but the functions of the license management module 220 are not limited to these.

図10に示すように、記憶部221は、ライセンス情報データベース(以下、「ライセンス情報DB」と称する)224と、ユーザ情報データベース(以下、「ユーザ情報DB」と称する)225と、を有する。 As shown in FIG. 10, the storage unit 221 has a license information database (hereinafter, referred to as “license information DB”) 224 and a user information database (hereinafter, referred to as “user information DB”) 225.

ライセンス情報DB224は、複数のアプリケーションごとに、該アプリケーションの使用権限(ライセンス)に関する情報を対応付けて記憶する。本実施形態では、ライセンス情報DB223は、図11に示す第5の対応情報と、図12に示す第6の対応情報と、図13に示す第7の対応情報とを記憶している。 The license information DB 224 stores information on the usage authority (license) of the application in association with each other for each of the plurality of applications. In the present embodiment, the license information DB 223 stores the fifth correspondence information shown in FIG. 11, the sixth correspondence information shown in FIG. 12, and the seventh correspondence information shown in FIG.

図11に示すように、第5の対応情報は、アプリIDと、ライセンスの種別を示すライセンス種別と、ライセンスの形態(この例では、有償、無償、トライアルのうちの何れか)を示すライセンス形態と、ライセンスが有効な期間を示す有効期限と、ライセンスを付与可能な数を示すボリューム数とを対応付けた情報である。また、図12に示すように、第6の対応情報は、ライセンス種別と、ライセンスキーと、使用中のライセンスの数を示す使用中ライセンス数と、使用済みのライセンスの数を示す使用済みライセンス数とを対応付けた情報である。さらに、図13に示すように、第7の対応情報は、ライセンスキーと、機番と、有効期限と、ライセンスが有効であるか無効であるかを示す有効状態情報とを対応付けた情報である。 As shown in FIG. 11, the fifth correspondence information is the application ID, the license type indicating the license type, and the license form indicating the license form (in this example, either paid, free, or trial). This is information in which the expiration date indicating the valid period of the license and the number of volumes indicating the number of licenses that can be granted are associated with each other. Further, as shown in FIG. 12, the sixth correspondence information includes the license type, the license key, the number of used licenses indicating the number of licenses in use, and the number of used licenses indicating the number of used licenses. It is the information associated with. Further, as shown in FIG. 13, the seventh correspondence information is information in which the license key, the machine number, the expiration date, and the valid state information indicating whether the license is valid or invalid are associated with each other. is there.

図10に戻って記憶部221の説明を続ける。ユーザ情報DB225は、例えばライセンスを発行するための操作を行うことができるユーザの認証に必要な情報を記憶する。このユーザ情報DB225は、アプリ情報管理モジュール210のユーザ情報DB402と共通であってもよい。 Returning to FIG. 10, the description of the storage unit 221 will be continued. The user information DB 225 stores, for example, information necessary for authenticating a user who can perform an operation for issuing a license. This user information DB 225 may be common with the user information DB 402 of the application information management module 210.

次に、制御部222が有する機能を説明する。ここでは、制御部222が有する機能は、サーバ2側のアプリケーションプログラミングインタフェース(API)により提供される。図14は、制御部222が有する機能の一例を示す図である。図14に示すように、制御部222は、登録制御部226と、ライセンス有効化部227と、ライセンス無効化部228とを有する。 Next, the function of the control unit 222 will be described. Here, the function of the control unit 222 is provided by the application programming interface (API) on the server 2 side. FIG. 14 is a diagram showing an example of the function of the control unit 222. As shown in FIG. 14, the control unit 222 includes a registration control unit 226, a license activation unit 227, and a license invalidation unit 228.

登録制御部226は、ライセンス発行部223により発行されたライセンスに関する情報を記憶部221(ライセンス情報DB224)に登録する制御を行う。本実施形態では、ライセンス発行部223は、ライセンスを発行するための操作を行う権限を有するユーザから、ライセンスを発行する対象となるアプリケーションのアプリIDと、ライセンス種別を選択する操作を受け付けた場合、その受け付けた操作により選択されたアプリIDとライセンス種別に対応するライセンスキーを発行する。なお、ライセンス発行部223は、HTMLなどで記述されるUIを作るだけにして、ユーザの操作に応じてライセンスを発行する機能は、制御部222が有する形態であってもよい。登録制御部226は、ライセンス発行部223により発行されたライセンスキーと、該ライセンスキーに対応するライセンス種別とを示す情報をライセンス情報DB224に登録する制御を行う。より具体的には、登録制御部226は、ライセンス発行部223から、ライセンスキーと、該ライセンスキーに対応するライセンス種別とを受け取った場合、図12に示す第6の対応情報の中に、その受け取ったライセンスキーとライセンス種別とを含む新たなレコード(この例では、行ごとの単位情報)を追加する。 The registration control unit 226 controls to register the information related to the license issued by the license issuing unit 223 in the storage unit 221 (license information DB 224). In the present embodiment, when the license issuing unit 223 receives an operation of selecting the application ID of the application for which the license is issued and the license type from a user who has the authority to perform the operation for issuing the license, The license key corresponding to the application ID and license type selected by the accepted operation is issued. The license issuing unit 223 may only create a UI described in HTML or the like, and the function of issuing a license in response to a user operation may be in the form of the control unit 222. The registration control unit 226 controls to register the license key issued by the license issuing unit 223 and the information indicating the license type corresponding to the license key in the license information DB 224. More specifically, when the registration control unit 226 receives the license key and the license type corresponding to the license key from the license issuing unit 223, the registration control unit 226 includes the license key in the sixth correspondence information shown in FIG. Add a new record (in this example, line-by-line unit information) containing the received license key and license type.

ライセンス有効化部227は、MFP4からの要求に応じて、ライセンスを有効化するための制御を行う。この例では、ライセンス有効化部227は、アプリIDとライセンスキーと機番とを少なくとも含み、かつ、ライセンスの有効化を要求する有効化要求をMFP4から受信した場合、ライセンス情報DB224に記憶された第6の対応情報(図12参照)の中に、その受信した有効化要求に含まれるライセンスキーが存在するか否かを確認する。その確認結果が肯定の場合、ライセンス有効化部227は、ライセンス情報DB224に記憶された第5の対応情報(図11参照)を参照して、その受信した有効化要求に含まれるアプリIDに対応付けられた有効期限を特定する。そして、図13に示す第7の対応情報の中に、受信した有効化要求に含まれるライセンスキーおよび機番と、特定した有効期限と、有効を示す有効状態情報とを対応付けた新たなレコード(この例では、行ごとの単位情報)を追加する。また、ライセンス有効化部227は、図12に示す第6の対応情報を参照して、MFP4から受信した有効化要求に含まれるライセンスキーに対応付けられた使用中ライセンス数を「1」だけインクリメントして更新する。そして、ライセンス有効化部227は、有効化要求に対する応答として、ライセンスの状態が有効である旨をMFP4へ送信する。この通知を受けたMFP4は、有効化要求に含まれるアプリIDで識別されるアプリケーションを利用することができる。 The license activation unit 227 controls to activate the license in response to the request from the MFP 4. In this example, when the license activation unit 227 includes at least the application ID, the license key, and the machine number and receives the activation request requesting the activation of the license from the MFP 4, it is stored in the license information DB 224. It is confirmed whether or not the license key included in the received activation request exists in the sixth correspondence information (see FIG. 12). If the confirmation result is affirmative, the license activation unit 227 refers to the fifth correspondence information (see FIG. 11) stored in the license information DB 224, and corresponds to the application ID included in the received activation request. Identify the attached expiration date. Then, in the seventh correspondence information shown in FIG. 13, a new record in which the license key and the machine number included in the received activation request, the specified expiration date, and the validity status information indicating validity are associated with each other. (In this example, unit information for each line) is added. In addition, the license activation unit 227 increments the number of licenses in use associated with the license key included in the activation request received from the MFP 4 by "1" with reference to the sixth correspondence information shown in FIG. And update. Then, the license activation unit 227 transmits to the MFP 4 that the license status is valid as a response to the activation request. Upon receiving this notification, the MFP 4 can use the application identified by the application ID included in the activation request.

なお、例えばライセンス情報DB224に記憶された情報の中に、MFP4から受信した有効化要求に含まれるライセンスキーが存在しない場合や、MFP4から受信した有効化要求に含まれるライセンスキーに対応するボリューム数が既に上限に到達している場合は、ライセンス有効化部227は、MFP4からの有効化要求に対して、エラーを返すことになる。 For example, when the license key included in the activation request received from the MFP 4 does not exist in the information stored in the license information DB 224, or the number of volumes corresponding to the license key included in the activation request received from the MFP 4 If has already reached the upper limit, the license activation unit 227 will return an error in response to the activation request from the MFP4.

ライセンス無効化部228は、MFP4からの要求に応じて、ライセンスを無効化するための制御を行う。この例では、ライセンス無効化部228は、ライセンスキーと機番とを少なくとも含み、かつ、ライセンスの無効化を要求する無効化要求をMFP4から受信した場合、ライセンス情報DB224に記憶された第7の対応情報(図13参照)を参照して、その受信した無効化要求に含まれるライセンスキーと機番との組み合わせに対応付けられた有効状態情報を、無効を示す情報に変更する。また、ライセンス情報DB224に記憶された第6の対応情報(図12参照)を参照して、MFP4から受信した無効化要求に含まれるライセンスキーに対応付けられた使用中ライセンス数を「1」だけデクリメントし、使用済みライセンス数を「1」だけインクリメントして更新する。そして、ライセンス無効化部228は、無効化要求に対する応答として、ライセンスの状態が無効である旨をMFP4へ送信する。この通知を受けたMFP4は、無効化要求に含まれるアプリIDで識別されるアプリケーションを利用することはできなくなる。 The license invalidation unit 228 controls to invalidate the license in response to the request from the MFP4. In this example, when the license invalidation unit 228 includes at least the license key and the machine number and receives the invalidation request requesting the invalidation of the license from the MFP 4, the seventh license information DB 224 stores the license invalidation request. With reference to the correspondence information (see FIG. 13), the valid state information associated with the combination of the license key and the machine number included in the received invalidation request is changed to the information indicating invalidity. Further, referring to the sixth correspondence information (see FIG. 12) stored in the license information DB 224, the number of licenses in use associated with the license key included in the invalidation request received from the MFP 4 is only "1". Decrement and update the number of used licenses by incrementing by "1". Then, the license invalidation unit 228 transmits to the MFP 4 that the license status is invalid as a response to the invalidation request. Upon receiving this notification, the MFP4 will not be able to use the application identified by the application ID included in the invalidation request.

以上に説明した制御部222およびライセンス発行部223の各々の機能は、CPU301がROM302等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明した記憶部221は、ROM302またはHDD等の補助記憶装置307により実現可能である。 Each of the functions of the control unit 222 and the license issuing unit 223 described above can be realized by the CPU 301 executing a program stored in a storage device such as a ROM 302. Further, the storage unit 221 described above can be realized by an auxiliary storage device 307 such as a ROM 302 or an HDD.

次に、アプリダウンロード管理モジュール230が有する機能を説明する。図15は、アプリダウンロード管理モジュール230が有する機能の一例を示す図である。図15に示すように、アプリダウンロード管理モジュール230は、アプリストレージ231と、ダウンロード部232とを有している。なお、図15の例では、本実施形態に関する機能を主に例示しているが、アプリダウンロード管理モジュール230が有する機能はこれらに限られるものではない。 Next, the functions of the application download management module 230 will be described. FIG. 15 is a diagram showing an example of the functions of the application download management module 230. As shown in FIG. 15, the application download management module 230 has an application storage 231 and a download unit 232. In the example of FIG. 15, the functions related to the present embodiment are mainly illustrated, but the functions of the application download management module 230 are not limited to these.

アプリストレージ231は、MFP4に提供するための複数のアプリケーションを記憶している。この例では、アプリストレージ231は、複数のアプリIDごとに、アプリケーション本体を含むデータファイルを対応付けて記憶している。ダウンロード部232は、MFP4からの要求に応じて、アプリストレージ231に記憶された何れかのアプリケーションをMFP4へ送信(ダウンロード)する制御を行う。この例では、ダウンロード部232は、アプリIDを少なくとも含み、かつ、アプリケーションのダウンロードを要求するダウンロード要求をMFP4から受信した場合、その受信したダウンロード要求に含まれるアプリIDに対応するアプリケーションをMFP4へ送信する。より具体的には、ダウンロード部232は、アプリストレージ231を参照して、MFP4から受信したダウンロード要求に含まれるアプリIDに対応するデータファイルを特定し、その特定したデータファイルをMFP4へ送信する。 The application storage 231 stores a plurality of applications to be provided to the MFP 4. In this example, the application storage 231 stores a data file including the application main body in association with each of a plurality of application IDs. The download unit 232 controls to transmit (download) any application stored in the application storage 231 to the MFP 4 in response to a request from the MFP 4. In this example, when the download unit 232 includes at least the application ID and receives a download request requesting the download of the application from the MFP4, the download unit 232 transmits the application corresponding to the application ID included in the received download request to the MFP4. To do. More specifically, the download unit 232 identifies the data file corresponding to the application ID included in the download request received from the MFP 4 with reference to the application storage 231 and transmits the specified data file to the MFP 4.

以上に説明したダウンロード部232の機能は、CPU301がROM302等の記憶装置に格納されたプログラムを実行することにより実現可能である。また、以上に説明したアプリストレージ231は、ROM302またはHDD等の補助記憶装置により実現可能である。 The function of the download unit 232 described above can be realized by the CPU 301 executing a program stored in a storage device such as a ROM 302. Further, the application storage 231 described above can be realized by an auxiliary storage device such as a ROM 302 or an HDD.

以上がサーバ2の構成となる。なお、サーバ2は、図1に示したように、複数のサーバから構成される形態であってもよい。例えば図16に示すように、サーバ2は、アプリケーションサーバ240と、データベースサーバ250とから構成される形態であってもよい。例えばアプリケーションサーバ240は、上述の制御部212、画面提供部213、設定部214、制御部222、ライセンス発行部223を有する形態であってもよい。また、例えばアプリケーションサーバ240は、複数のサーバで構成され、上述の制御部212、画面提供部213、設定部214、制御部222、ライセンス発行部223、ダウンロード部232の各々は、何れかのサーバに分散して搭載される形態であってもよい。 The above is the configuration of the server 2. As shown in FIG. 1, the server 2 may be configured to be composed of a plurality of servers. For example, as shown in FIG. 16, the server 2 may be composed of an application server 240 and a database server 250. For example, the application server 240 may have the above-mentioned control unit 212, screen providing unit 213, setting unit 214, control unit 222, and license issuing unit 223. Further, for example, the application server 240 is composed of a plurality of servers, and each of the above-mentioned control unit 212, screen providing unit 213, setting unit 214, control unit 222, license issuing unit 223, and download unit 232 is any server. It may be mounted in a distributed manner.

また、例えばデータベースサーバ250は、上述の記憶部211および記憶部221を有する形態であってもよい。また、例えばデータベースサーバ250は、複数のサーバで構成され、上述のアプリ情報DB401、ユーザ情報DB402、ライセンス情報DB224、ユーザ情報DB225、アプリストレージ231の各々は、何れかのサーバに分散して搭載される形態であってもよい。 Further, for example, the database server 250 may have the above-mentioned storage unit 211 and storage unit 221. Further, for example, the database server 250 is composed of a plurality of servers, and each of the above-mentioned application information DB 401, user information DB 402, license information DB 224, user information DB 225, and application storage 231 is distributed and mounted on any of the servers. It may be in the form of

次に、図17を用いて、MFP4のハードウェア構成について説明する。図17に示すように、MFP4は、コピー機能、スキャナ機能、ファクス機能、プリンタ機能などの各種の機能を実現可能な本体10と、ユーザの操作を受け付ける操作部20とを備える。なお、ユーザの操作を受け付けるとは、ユーザの操作に応じて入力される情報(画面の座標値を示す信号等を含む)を受け付けることを含む概念である。本体10と操作部20は、専用の通信路30を介して相互に通信可能に接続されている。通信路30は、例えばUSB(Universal Serial Bus)規格のものを用いることもできるが、有線か無線かを問わず任意の規格のものであってよい。 Next, the hardware configuration of the MFP 4 will be described with reference to FIG. As shown in FIG. 17, the MFP 4 includes a main body 10 capable of realizing various functions such as a copy function, a scanner function, a fax function, and a printer function, and an operation unit 20 that accepts user operations. It should be noted that accepting a user's operation is a concept including accepting information (including a signal indicating a coordinate value of a screen) input according to the user's operation. The main body 10 and the operation unit 20 are connected to each other so as to be able to communicate with each other via a dedicated communication path 30. As the communication path 30, for example, a USB (Universal Serial Bus) standard can be used, but any standard may be used regardless of whether it is wired or wireless.

なお、本体10は、操作部20で受け付けた操作に応じた動作を行うことができる。また、本体10は、クライアントPC(パーソナルコンピュータ)等の外部装置とも通信可能であり、外部装置から受信した指示に応じた動作を行うこともできる。 The main body 10 can perform an operation according to the operation received by the operation unit 20. Further, the main body 10 can also communicate with an external device such as a client PC (personal computer), and can perform an operation according to an instruction received from the external device.

まず、本体10のハードウェア構成について説明する。図17に示すように、本体10は、CPU11と、ROM12と、RAM13と、HDD(ハードディスクドライブ)14と、通信I/F(インタフェース)15と、接続I/F16と、エンジン部17とを備え、これらがシステムバス18を介して相互に接続されている。 First, the hardware configuration of the main body 10 will be described. As shown in FIG. 17, the main body 10 includes a CPU 11, a ROM 12, a RAM 13, an HDD (hard disk drive) 14, a communication I / F (interface) 15, a connection I / F 16, and an engine unit 17. , These are connected to each other via the system bus 18.

CPU11は、本体10の動作を統括的に制御する。CPU11は、RAM13をワークエリア(作業領域)としてROM12またはHDD14等に格納されたプログラムを実行することで、本体10全体の動作を制御し、上述したコピー機能、スキャナ機能、ファクス機能、プリンタ機能などの各種機能を実現する。 The CPU 11 comprehensively controls the operation of the main body 10. The CPU 11 controls the operation of the entire main body 10 by executing a program stored in the ROM 12 or the HDD 14 or the like using the RAM 13 as a work area (work area), and has the above-mentioned copy function, scanner function, fax function, printer function, etc. Realize various functions of.

通信I/F15は、ネットワーク3と接続するためのインタフェースである。接続I/F16は、通信路30を介して操作部20と通信するためのインタフェースである。 The communication I / F 15 is an interface for connecting to the network 3. The connection I / F 16 is an interface for communicating with the operation unit 20 via the communication path 30.

エンジン部17は、コピー機能、スキャナ機能、ファクス機能、および、プリンタ機能を実現させるための、汎用的な情報処理及び通信以外の処理を行うハードウェアである。例えば、原稿の画像をスキャンして読み取るスキャナ(画像読取部)、用紙等のシート材への印刷を行うプロッタ(画像形成部)、ファクス通信を行うファクス部などを備えている。更に、印刷済みシート材を仕分けるフィニッシャや、原稿を自動給送するADF(自動原稿給送装置)のような特定のオプションを備えることもできる。 The engine unit 17 is hardware that performs general-purpose information processing and processing other than communication in order to realize a copy function, a scanner function, a fax function, and a printer function. For example, it is provided with a scanner (image reading unit) that scans and reads an image of a document, a plotter (image forming unit) that prints on a sheet material such as paper, and a fax unit that performs fax communication. Further, it may be provided with specific options such as a finisher for sorting printed sheet materials and an ADF (automatic document feeder) that automatically feeds documents.

次に、操作部20のハードウェア構成について説明する。図17に示すように、操作部20は、CPU21と、ROM22と、RAM23と、フラッシュメモリ24と、通信I/F25と、接続I/F26と、操作パネル27とを備え、これらがシステムバス28を介して相互に接続されている。 Next, the hardware configuration of the operation unit 20 will be described. As shown in FIG. 17, the operation unit 20 includes a CPU 21, a ROM 22, a RAM 23, a flash memory 24, a communication I / F 25, a connection I / F 26, and an operation panel 27, which are the system bus 28. They are connected to each other via.

CPU21は、操作部20の動作を統括的に制御する。CPU21は、RAM23をワークエリア(作業領域)としてROM22またはフラッシュメモリ24等に格納されたプログラムを実行することで、操作部20全体の動作を制御し、ユーザから受け付けた入力に応じた情報(画像)の表示などの後述する各種機能を実現する。 The CPU 21 comprehensively controls the operation of the operation unit 20. The CPU 21 controls the operation of the entire operation unit 20 by executing a program stored in the ROM 22 or the flash memory 24 or the like using the RAM 23 as a work area (work area), and provides information (image) according to the input received from the user. ) Is displayed and other functions described later are realized.

通信I/F25は、ネットワーク3と接続するためのインタフェースである。接続I/F26は、通信路30を介して本体10と通信するためのインタフェースである。 The communication I / F 25 is an interface for connecting to the network 3. The connection I / F 26 is an interface for communicating with the main body 10 via the communication path 30.

操作パネル27は、ユーザの操作に応じた各種の入力を受け付けるとともに、各種の情報(例えば受け付けた操作に応じた情報、MFP4の動作状況を示す情報、設定状態などを示す情報など)を表示する。この例では、操作パネル27は、タッチパネル機能を搭載した液晶表示装置(LCD)で構成されるが、これに限られるものではない。例えばタッチパネル機能が搭載された有機EL表示装置で構成されてもよい。さらに、これに加えて又はこれに代えて、ハードウェアキー等の操作部やランプ等の表示部を設けることもできる。 The operation panel 27 accepts various inputs according to the user's operation and displays various information (for example, information according to the accepted operation, information indicating the operating status of the MFP 4, information indicating the setting state, etc.). .. In this example, the operation panel 27 is composed of a liquid crystal display device (LCD) equipped with a touch panel function, but is not limited thereto. For example, it may be configured by an organic EL display device equipped with a touch panel function. Further, in addition to or in place of this, an operation unit such as a hardware key and a display unit such as a lamp may be provided.

次に、MFP4のソフトウェア構成について説明する。図18は、MFP4のソフトウェア構成の一例を示す模式図である。図18に示すように、本体10は、アプリ層101と、サービス層102と、OS層103とを有する。アプリ層101、サービス層102、および、OS層103の実体は、ROM12やHDD14等に格納されている各種ソフトウェアである。CPU11が、これらのソフトウェアを実行することにより、各種の機能が提供される。 Next, the software configuration of the MFP 4 will be described. FIG. 18 is a schematic diagram showing an example of the software configuration of the MFP4. As shown in FIG. 18, the main body 10 has an application layer 101, a service layer 102, and an OS layer 103. The substance of the application layer 101, the service layer 102, and the OS layer 103 is various software stored in the ROM 12, HDD 14, and the like. By executing these softwares, the CPU 11 provides various functions.

アプリ層101のソフトウェアは、ハードウェア資源を動作させて所定の機能を提供するためのアプリケーションソフトウェア(以下の説明では、単に「アプリ」と称する場合がある)である。例えばアプリとしては、コピー機能を提供するためのコピーアプリ、スキャナ機能を提供するためのスキャナアプリ、ファクス機能を提供するためのファクスアプリ、プリンタ機能を提供するためのプリンタアプリなどが挙げられる。 The software of the application layer 101 is application software for operating hardware resources to provide a predetermined function (in the following description, it may be simply referred to as an "application"). For example, examples of the application include a copy application for providing a copy function, a scanner application for providing a scanner function, a fax application for providing a fax function, and a printer application for providing a printer function.

サービス層102のソフトウェアは、アプリ層101とOS層103との間に介在し、アプリに対し、本体10が備えるハードウェア資源を利用するためのインタフェースを提供するためのソフトウェアである。より具体的には、ハードウェア資源に対する動作要求の受け付け、動作要求の調停を行う機能を提供するためのソフトウェアである。サービス層102が受け付ける動作要求としては、スキャナによる読み取りやプロッタによる印刷等の要求が考えられる。 The software of the service layer 102 is software that intervenes between the application layer 101 and the OS layer 103 and provides the application with an interface for using the hardware resources included in the main body 10. More specifically, it is software for providing a function of accepting an operation request for a hardware resource and arbitrating the operation request. As the operation request received by the service layer 102, a request such as reading by a scanner or printing by a plotter can be considered.

なお、サービス層102によるインタフェースの機能は、本体10のアプリ層101だけではなく、操作部20のアプリ層201に対しても提供される。すなわち、操作部20のアプリ層201(アプリ)も、サービス層102のインタフェース機能を介して、本体10のハードウェア資源(例えばエンジン部17)を利用した機能を実現することができる。 The interface function by the service layer 102 is provided not only to the application layer 101 of the main body 10 but also to the application layer 201 of the operation unit 20. That is, the application layer 201 (app) of the operation unit 20 can also realize a function using the hardware resources of the main body 10 (for example, the engine unit 17) through the interface function of the service layer 102.

OS層103のソフトウェアは、本体10が備えるハードウェアを制御する基本機能を提供するための基本ソフトウェア(オペレーティングシステム(OS))である。サービス層102のソフトウェアは、各種アプリからのハードウェア資源の利用要求を、OS層103が解釈可能なコマンドに変換してOS層103に渡す。そして、OS層103のソフトウェアによりコマンドが実行されることで、ハードウェア資源は、アプリの要求に従った動作を行う。 The software of the OS layer 103 is basic software (operating system (OS)) for providing basic functions for controlling the hardware included in the main body 10. The software of the service layer 102 converts the usage request of the hardware resource from various applications into a command that can be interpreted by the OS layer 103 and passes it to the OS layer 103. Then, when the command is executed by the software of the OS layer 103, the hardware resource operates according to the request of the application.

同様に、操作部20は、アプリ層201と、サービス層202と、OS層203とを有する。操作部20が備えるアプリ層201、サービス層202及びOS層203も、階層構造については本体10側と同様である。ただし、アプリ層201のアプリにより提供される機能や、サービス層202が受け付け可能な動作要求の種類は、本体10側とは異なる。アプリ層201のアプリは、操作部20が備えるハードウェア資源を動作させて所定の機能を提供するためのソフトウェアであってもよいが、主として本体10が備える機能(コピー機能、スキャナ機能、ファクス機能、プリンタ機能)やインストール済みのアプリケーションのライセンスファイルを更新する機能等に関する操作や表示を行うためのUI(ユーザインタフェース)の機能を提供するためのソフトウェアである。この例では、アプリ層201のアプリには、Webブラウザの機能を提供するためのアプリ(以下、「ブラウザアプリ」と称する場合がある)や、上述のWebコンテンツデータに含まれるアプリケーションコマンドを実行する機能を提供するためのアプリ(以下、「インストーラ」と称する場合がある)などが含まれる。 Similarly, the operation unit 20 has an application layer 201, a service layer 202, and an OS layer 203. The application layer 201, the service layer 202, and the OS layer 203 included in the operation unit 20 also have the same hierarchical structure as that of the main body 10. However, the functions provided by the application of the application layer 201 and the types of operation requests that the service layer 202 can accept are different from those of the main body 10. The application of the application layer 201 may be software for operating the hardware resources included in the operation unit 20 to provide a predetermined function, but the functions (copy function, scanner function, fax function) mainly provided in the main body 10 may be provided. , Printer function) and the function to update the license file of the installed application, etc. It is software to provide the function of UI (user interface) for performing operations and displays. In this example, the application layer 201 executes an application for providing a Web browser function (hereinafter, may be referred to as a "browser application") or an application command included in the above-mentioned Web content data. An application for providing a function (hereinafter, may be referred to as an "installer") and the like are included.

なお、本実施形態では、機能の独立性を保つために、本体10側のOS層103のソフトウェアと操作部20側のOS層203のソフトウェアが互いに異なる。つまり、本体10と操作部20は、別々のオペレーティングシステムで互いに独立して動作する。例えば本体10側のOS層103のソフトウェアとしてLinux(登録商標)を用い、操作部20側のOS層203のソフトウェアとしてAndroid(登録商標)を用いることも可能である。 In the present embodiment, the software of the OS layer 103 on the main body 10 side and the software of the OS layer 203 on the operation unit 20 side are different from each other in order to maintain the independence of the functions. That is, the main body 10 and the operation unit 20 operate independently of each other in different operating systems. For example, Linux (registered trademark) can be used as the software of the OS layer 103 on the main body 10 side, and Android (registered trademark) can be used as the software of the OS layer 203 on the operation unit 20 side.

以上のように、本実施形態のMFP4において、本体10と操作部20は別々のオペレーティングシステムで動作するため、本体10と操作部20との間の通信は、共通の装置内のプロセス間通信ではなく、異なる装置間の通信として行われる。操作部20が受け付けた情報(ユーザからの指示内容)を本体10へ伝達する動作(コマンド通信)や、本体10が操作部20へイベントを通知する動作などがこれに該当する。ここでは、操作部20が本体10へコマンド通信を行うことにより、本体10の機能を使用することができる。また、本体10から操作部20に通知するイベントには、本体10における動作の実行状況、本体10側で設定された内容などが挙げられる。 As described above, in the MFP 4 of the present embodiment, since the main body 10 and the operation unit 20 operate on different operating systems, the communication between the main body 10 and the operation unit 20 is an interprocess communication in a common device. It is done as communication between different devices. An operation (command communication) of transmitting information (instruction content from the user) received by the operation unit 20 to the main body 10 and an operation of the main body 10 notifying the operation unit 20 of an event correspond to this. Here, the function of the main body 10 can be used by the operation unit 20 performing command communication to the main body 10. In addition, the event notified from the main body 10 to the operation unit 20 includes the execution status of the operation in the main body 10, the contents set on the main body 10 side, and the like.

また、本実施形態では、操作部20に対する電力供給は、本体10から通信路30を経由して行われているので、操作部20の電源制御を、本体10の電源制御とは別に(独立して)行うことができる。 Further, in the present embodiment, since the power supply to the operation unit 20 is performed from the main body 10 via the communication path 30, the power control of the operation unit 20 is separated from the power control of the main body 10 (independently). Can be done.

図19は、本実施形態の操作部20が有する機能の一例を示す図である。図19に示すように、操作部20は、起動部261と、表示制御部262と、実行部263と、処理実行部264と、を有する。なお、図19の例では、本実施形態に関する機能を主に例示しているが、操作部20が有する機能はこれらに限られるものではない。また、図19に示すように、表示制御部262および実行部263は、Webブラウザにおいて実現されている。 FIG. 19 is a diagram showing an example of the function of the operation unit 20 of the present embodiment. As shown in FIG. 19, the operation unit 20 includes an activation unit 261, a display control unit 262, an execution unit 263, and a processing execution unit 264. In the example of FIG. 19, the functions related to the present embodiment are mainly illustrated, but the functions of the operation unit 20 are not limited to these. Further, as shown in FIG. 19, the display control unit 262 and the execution unit 263 are realized in the Web browser.

起動部261は、ユーザの操作に応じて、Webブラウザの機能を提供するブラウザアプリを起動する。例えば図20に示す操作画面が操作パネル27に表示された状態で、「アプリマーケット」という名称のアイコン5の押下を受け付けた場合、起動部261は、ネットワーク3上のサーバ2の所在を示すURLを取得するとともにブラウザアプリを起動する制御を行う。 The activation unit 261 activates a browser application that provides a Web browser function in response to a user operation. For example, when the operation screen shown in FIG. 20 is displayed on the operation panel 27 and the pressing of the icon 5 named "App Market" is accepted, the activation unit 261 has a URL indicating the location of the server 2 on the network 3. Is acquired and the browser application is started.

起動したブラウザアプリは、起動部261から受け取ったURLで指定されるサーバ2に対して、HTTPリクエストとして上述の画面情報要求を送信し、画面情報要求に対する応答(HTTPレスポンス)として、Webコンテンツデータ(画面情報)を受信する。この例では、Webコンテンツデータ(画面情報)として、HTMLと、HTMLに含まれる(あるいは、HTMLから参照される)CSS/JavaScriptを受信する。ブラウザアプリは、JavaScriptを解釈、実行し、Ajaxを用いて、HTTPリクエストとして上述の表示情報要求をサーバ2へ送信し、表示情報要求に対する応答(HTTPレスポンス)として、アプリケーションコマンドを少なくとも含むWebコンテンツデータ(表示情報)を受信する。図21は、表示情報要求の一例を示す図であり、図22は、表示情報要求に対する応答として受信した情報の一例を示す図である。 The launched browser application transmits the above-mentioned screen information request as an HTTP request to the server 2 specified by the URL received from the activation unit 261, and Web content data (HTTP response) as a response to the screen information request (HTTP response). Screen information) is received. In this example, HTML and CSS / Javascript included in HTML (or referred to by HTML) are received as Web content data (screen information). The browser application interprets and executes Javascript, uses Ajax to send the above-mentioned display information request to the server 2 as an HTTP request, and Web content data including at least an application command as a response to the display information request (HTTP response). Receive (display information). FIG. 21 is a diagram showing an example of a display information request, and FIG. 22 is a diagram showing an example of information received as a response to the display information request.

そして、ブラウザアプリは、サーバ2から受信したWebコンテンツデータ(画面情報と表示情報)に基づいて構成される画面を操作パネル27(表示部)に表示する制御を行う。ここでは、表示制御部262の機能はブラウザアプリにより提供される。また、前述したように、この例では、表示制御部262は、サーバ2から受信したWebコンテンツデータ(画面情報と表示情報)に基づいて画面を生成し、その生成した画面を操作パネル27に表示する。表示制御部262は、サーバ2から受信したWebコンテンツデータ(画面情報および表示情報)をフラッシュメモリ24等の記憶装置に保持しておき、必要に応じてWebコンテンツデータ(画面情報と表示情報)を読み出し、その読み出したWebコンテンツデータ(画面情報と表示情報)を用いて画面を生成することができる。 Then, the browser application controls to display the screen configured based on the Web content data (screen information and display information) received from the server 2 on the operation panel 27 (display unit). Here, the function of the display control unit 262 is provided by the browser application. Further, as described above, in this example, the display control unit 262 generates a screen based on the Web content data (screen information and display information) received from the server 2, and displays the generated screen on the operation panel 27. To do. The display control unit 262 holds the Web content data (screen information and display information) received from the server 2 in a storage device such as a flash memory 24, and stores the Web content data (screen information and display information) as needed. A screen can be generated by reading and using the read Web content data (screen information and display information).

この例では、表示制御部262は、操作パネル27に表示された画面(Webコンテンツデータ(画面情報と表示情報)に基づいて構成される画面)に対するユーザの操作に応じて選択されたアプリケーションコマンドを特定し、その特定したアプリケーションコマンドを実行部263へ通知することができる。例えば表示制御部262は、JavaScript、カスタムスキームとして、ユーザによって選択されたアプリケーションコマンドを特定することができる。 In this example, the display control unit 262 inputs an application command selected according to the user's operation on the screen (screen configured based on Web content data (screen information and display information)) displayed on the operation panel 27. It can be specified and the specified application command can be notified to the execution unit 263. For example, the display control unit 262 can specify an application command selected by the user as Javascript, a custom scheme.

実行部263は、Webコンテンツデータに含まれるアプリケーションコマンドのうち、操作パネル27に表示された画面を介したユーザの操作に応じてWebコンテンツデータに含まれるアプリケーションコマンド(表示制御部262から通知されたアプリケーションコマンド)を実行して、該アプリケーションコマンドに対応したアプリケーションに関する処理の実行をMFP4に要求する。ここでは、実行部263の機能は、MFP4側のアプリケーションプログラミングインタフェース(API)により提供される。MFP4は、アプリケーションプログラミングインタフェース(API)を、操作部20のブラウザアプリで利用可能としてサーバ2に配置したWebアプリケーションから呼び出せる。 Among the application commands included in the Web content data, the execution unit 263 is notified from the application command (notified by the display control unit 262) included in the Web content data in response to the user's operation via the screen displayed on the operation panel 27. The application command) is executed to request the MFP 4 to execute the process related to the application corresponding to the application command. Here, the function of the execution unit 263 is provided by the application programming interface (API) on the MFP4 side. The MFP 4 can call the application programming interface (API) from the Web application arranged on the server 2 so that it can be used by the browser application of the operation unit 20.

処理実行部264は、Webブラウザ(実行部263)からの要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する。 The process execution unit 264 executes the process related to the application in response to the request based on the request from the Web browser (execution unit 263).

前述したように、サーバ2から受信したWebコンテンツデータに含まれるアプリケーションコマンドとしては、インストール命令、更新命令、アンインストール命令などが挙げられる。 As described above, examples of the application command included in the Web content data received from the server 2 include an installation command, an update command, and an uninstall command.

以下では、サーバ2から受信したWebコンテンツデータ(画面情報と表示情報)に基づいて構成される画面に対するユーザの操作に応じてインストール命令が選択される場合を例に挙げて説明する。この場合、実行部263は、ユーザの操作に応じて選択されたインストール命令を処理実行部264へ通知し、処理実行部264は、実行部263から通知されたインストール命令を実行する。より具体的には、以下のとおりである。 In the following, an example will be described in which an installation command is selected according to a user operation on a screen configured based on Web content data (screen information and display information) received from the server 2. In this case, the execution unit 263 notifies the processing execution unit 264 of the installation instruction selected according to the user's operation, and the processing execution unit 264 executes the installation instruction notified from the execution unit 263. More specifically, it is as follows.

この例では、表示制御部262は、サーバ2から受信したWebコンテンツデータ(画面情報と表示情報)を用いて、MFP4で利用可能なアプリケーションの一覧を示すアプリケーション一覧画面を操作パネル27に表示する制御を行う。図23は、アプリケーション一覧画面の一例を示す図である。図23の例では、アプリケーション一覧画面は、MFP4で利用可能なアプリケーションごとに、該アプリケーションの名称と、該アプリケーションを選択するためのアプリケーション選択ボタン311とを少なくとも表示する。また、図23の例では、アプリケーション一覧画面は、アプリケーションの更新を選択するための更新選択ボタン321と、アプリケーションの削除を選択するための削除選択ボタン331とを表示する。これらの具体的な内容については後述する。 In this example, the display control unit 262 uses the Web content data (screen information and display information) received from the server 2 to display an application list screen showing a list of applications available in the MFP 4 on the operation panel 27. I do. FIG. 23 is a diagram showing an example of the application list screen. In the example of FIG. 23, the application list screen displays at least the name of the application and the application selection button 311 for selecting the application for each application available in the MFP 4. Further, in the example of FIG. 23, the application list screen displays the update selection button 321 for selecting the update of the application and the deletion selection button 331 for selecting the deletion of the application. The specific contents of these will be described later.

表示制御部262は、何れかのアプリケーション選択ボタン311の押下を受け付けた場合、サーバ2から受信した表示情報を用いて、対応するアプリケーションの詳細な内容を示すとともにインストールの実行指示を受け付けるためのインストール指示画面を操作パネル27に表示する制御を行う。図24は、インストール指示画面の一例を示す図である。図24の例では、インストール指示画面は、対応するアプリケーションのアプリ説明情報と、インストールの実行を指示するためのインストールボタン312とを表示する。この例では、インストールボタン312の押下は、インストール命令の選択(インストールしたいアプリケーションの選択であると考えてもよい)を意味する。 When the display control unit 262 receives the pressing of any of the application selection buttons 311, the display control unit 262 uses the display information received from the server 2 to indicate the detailed contents of the corresponding application and to receive the installation execution instruction. Control is performed to display the instruction screen on the operation panel 27. FIG. 24 is a diagram showing an example of an installation instruction screen. In the example of FIG. 24, the installation instruction screen displays the application explanation information of the corresponding application and the installation button 312 for instructing the execution of the installation. In this example, pressing the install button 312 means selecting an installation instruction (which may be considered the selection of the application you want to install).

この例では、表示制御部262は、インストールボタン312の押下を受け付けた場合、インストールの実行を最終的に確認するためのインストール確認画面を操作パネル27に表示する制御を行う。図25は、インストール確認画面の一例を示す図である。図25の例では、インストール確認画面は、インストールの実行を最終的に承諾したことを指示するための確認ボタン313を表示する。この例では、確認ボタン313に対して、インストール命令がJavaScript形式で貼り付けられている。確認ボタン313の押下を受け付けると、実行部263は、押下された確認ボタン313に貼り付けられていたインストール命令を処理実行部264へ通知する。そして、処理実行部264が、このインストール命令を実行することになる。図26は、この場合に、実行部263から処理実行部264へ通知される情報(確認ボタン313に貼り付けられているJavaScript)の一例を示す図である。 In this example, when the display control unit 262 receives the pressing of the installation button 312, the display control unit 262 controls to display the installation confirmation screen for finally confirming the execution of the installation on the operation panel 27. FIG. 25 is a diagram showing an example of the installation confirmation screen. In the example of FIG. 25, the installation confirmation screen displays a confirmation button 313 for instructing that the execution of the installation is finally accepted. In this example, the installation instruction is pasted in Javascript format for the confirmation button 313. Upon receiving the press of the confirmation button 313, the execution unit 263 notifies the processing execution unit 264 of the installation instruction pasted on the pressed confirmation button 313. Then, the process execution unit 264 executes this installation instruction. FIG. 26 is a diagram showing an example of information (Javascript pasted on the confirmation button 313) notified from the execution unit 263 to the processing execution unit 264 in this case.

また、本実施形態では、実行部263は、サーバ2から受信した表示情報の中に、ユーザの操作に応じて選択されたインストール命令の対象となるアプリケーションの使用権限の認証に用いられるライセンスキーが含まれている場合は、該ライセンスキーと、該インストール命令とを処理実行部264へ通知し、該ライセンスキーが含まれていない場合は、ライセンスキーの入力を促す入力画面を表示する制御を行う。より具体的には、表示制御部262は、サーバ2から受信した表示情報内のアプリケーション詳細情報のうち、ユーザの操作に応じて選択されたインストール命令の対象となるアプリケーションに対応する詳細情報の中に、該アプリケーションの使用権限を認証するためのライセンスキーが含まれていない場合は、ライセンスキーの入力を促す入力画面を表示する制御を行い、ライセンスキーが含まれている場合は、該ライセンスキーと、インストール命令とを処理実行部264へ通知する。より具体的には、表示制御部262は、上述のインストールボタン312の押下を受け付けた場合、サーバ2から受信した表示情報内のアプリケーション詳細情報のうち、ユーザによって選択されたアプリケーションに対応する詳細情報の中に、ライセンスキーが含まれているか否かを確認する。ライセンスキーが含まれていない場合は、表示制御部262は、図25のインストール確認画面を表示せず、ライセンスキーの入力を促す入力画面を表示する制御を行い、実行部263は、入力されたライセンスキーと、選択されたインストール命令とを処理実行部264へ通知する。図27は、入力画面の一例を示す図である。図27のOKボタンに対しても、図26と同様のインストール命令が貼り付けられている。この場合、ライセンスキー入力領域に入力された文字列をappMgmt.install関数の第2引数として渡すようにする。 Further, in the present embodiment, the execution unit 263 includes, in the display information received from the server 2, a license key used for authenticating the usage authority of the application subject to the installation command selected according to the user's operation. If it is included, the license key and the installation command are notified to the processing execution unit 264, and if the license key is not included, control is performed to display an input screen prompting the input of the license key. .. More specifically, the display control unit 262 includes detailed information corresponding to the application to be the target of the installation command selected according to the user's operation among the detailed application information in the display information received from the server 2. If the license key for authenticating the usage authority of the application is not included, the control is performed to display the input screen prompting the input of the license key, and if the license key is included, the license key is displayed. And the installation command are notified to the processing execution unit 264. More specifically, when the display control unit 262 receives the pressing of the above-mentioned installation button 312, the detailed information corresponding to the application selected by the user among the detailed application information in the display information received from the server 2 Check if the license key is included in. When the license key is not included, the display control unit 262 does not display the installation confirmation screen of FIG. 25, but controls to display the input screen prompting the input of the license key, and the execution unit 263 has input. Notify the processing execution unit 264 of the license key and the selected installation instruction. FIG. 27 is a diagram showing an example of an input screen. The same installation command as in FIG. 26 is also attached to the OK button in FIG. 27. In this case, the character string input in the license key input area is input to appMgt. Pass it as the second argument of the installation function.

次に、サーバ2から受信したWebコンテンツデータ(画面情報と表示情報)に基づいて構成される画面に対するユーザの操作に応じて更新命令が選択される場合を例に挙げて説明する。この例では、表示制御部262は、ユーザの操作に応じて、インストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、サーバ2から受信した表示情報に含まれるアプリケーション詳細情報のうち該アプリケーションに対応する詳細情報が示すバージョンとが異なるアプリケーションを特定する。そして、実行部263は、ユーザの操作に応じて、その特定したアプリケーションに対応する更新命令が選択された場合、その選択された更新命令を処理実行部264へ通知する。処理実行部264は、実行部263から通知された更新命令を実行する。より具体的には以下のとおりである。 Next, a case where an update command is selected according to a user operation on a screen configured based on Web content data (screen information and display information) received from the server 2 will be described as an example. In this example, the display control unit 262 responds to the user's operation by using the current version of the installed application and the detailed application information included in the display information received from the server 2 for the application. Identify applications that differ from the version indicated by the corresponding details. Then, when the update instruction corresponding to the specified application is selected in response to the user's operation, the execution unit 263 notifies the processing execution unit 264 of the selected update instruction. The processing execution unit 264 executes the update instruction notified from the execution unit 263. More specifically, it is as follows.

表示制御部262は、図23に示すアプリケーション一覧画面に表示された更新選択ボタン321の押下を受け付けた場合、サーバ2から受信した表示情報と、MFP4にインストール済みのアプリケーションごとに該アプリケーションの現在のバージョンを対応付けたアプリケーション管理情報と、を取得する。この例では、処理実行部264が上述のアプリケーション管理情報を管理しているので、実行部263は、処理実行部264に対してアプリケーション管理情報を要求し、表示制御部262は、アプリケーション管理情報を取得する。そして、表示制御部262は、MFP4にインストール済みのアプリケーションのうち、アプリケーション管理情報において該アプリケーションに対応する現在のバージョンと、サーバ2から受信した表示情報に含まれるアプリケーション詳細情報のうち該アプリケーションに対応する詳細情報が示すバージョンとが異なるアプリケーションを、更新対象のアプリケーションとして特定する。例えばアプリケーション管理情報が図28の態様であり、サーバ2から受信した表示情報に含まれるアプリケーション詳細情報が図29の態様である場合を想定する。この場合、更新対象のアプリケーションとして、アプリID「S001」およびアプリID「S003」が特定されることになる。 When the display control unit 262 receives the press of the update selection button 321 displayed on the application list screen shown in FIG. 23, the display information received from the server 2 and the current application of the application installed in the MFP 4 are displayed. Acquires the application management information associated with the version. In this example, since the process execution unit 264 manages the above-mentioned application management information, the execution unit 263 requests the application management information from the process execution unit 264, and the display control unit 262 requests the application management information. get. Then, the display control unit 262 corresponds to the current version of the application installed in the MFP 4 corresponding to the application in the application management information and the application detailed information included in the display information received from the server 2. Identify an application that is different from the version indicated by the detailed information to be updated. For example, it is assumed that the application management information is in the aspect of FIG. 28, and the detailed application information included in the display information received from the server 2 is in the aspect of FIG. 29. In this case, the application ID "S001" and the application ID "S003" are specified as the application to be updated.

そして、表示制御部262は、以上のようにして特定したアプリケーションごとに、該アプリケーションの更新指示を受け付けるための更新指示画面を操作パネル27に表示する制御を行う。図30は、更新指示画面の一例を示す図である。更新指示画面は、複数のアプリケーションごとに、該アプリケーションの更新指示を受け付けるための更新指示ボタン341を表示する。この例では、更新対象のアプリケーション(以上のようにして特定したアプリケーション)に対応する更新指示ボタン341に対しては、該アプリケーションを更新する命令を示す更新命令が貼り付けられている。図30の例では、更新指示画面は、更新対象のアプリケーション(図30の例ではアプリ1、3)と更新対象外のアプリケーション(図30の例ではアプリ2)の両方が表示され、更新対象外のアプリケーションに対応する更新指示ボタン341は操作不能な状態(押下を受け付けることができない状態)になっている。つまり、更新指示画面は、更新対象のアプリケーション(以上のようにして特定されたアプリケーション)と、更新対象外のアプリケーションとを区別して表示しているが、これに限らず、例えば更新指示画面は、更新対象のアプリケーションのみを、操作可能な状態の更新指示ボタン341と対応付けて表示する形態であってもよい。また、例えば表示制御部262は、以上のようにして特定したアプリケーション(更新対象のアプリケーション)の数を示す情報を表示する制御を行うこともできる。つまり、表示制御部262は、MFP4にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、アプリケーション詳細情報のうち該アプリケーションに対応する詳細情報が示すバージョンとが異なるアプリケーションの数を示す情報を表示する制御を行うこともできる。実行部263は、更新指示ボタン341の押下を受け付けた場合、該更新指示ボタン341に貼り付けられた更新命令を処理実行部264へ通知する。図31は、この場合に、実行部263から処理実行部264へ通知される情報の一例を示す図である。 Then, the display control unit 262 controls to display the update instruction screen for receiving the update instruction of the application on the operation panel 27 for each application specified as described above. FIG. 30 is a diagram showing an example of an update instruction screen. The update instruction screen displays an update instruction button 341 for receiving an update instruction for the application for each of a plurality of applications. In this example, an update instruction indicating an instruction to update the application is pasted to the update instruction button 341 corresponding to the application to be updated (the application specified as described above). In the example of FIG. 30, both the application to be updated (applications 1 and 3 in the example of FIG. 30) and the application not to be updated (application 2 in the example of FIG. 30) are displayed on the update instruction screen, and are not to be updated. The update instruction button 341 corresponding to the application of is in an inoperable state (a state in which pressing cannot be accepted). That is, the update instruction screen distinguishes between the application to be updated (the application specified as described above) and the application not to be updated, but the update instruction screen is not limited to this. Only the application to be updated may be displayed in association with the update instruction button 341 in an operable state. Further, for example, the display control unit 262 can also control to display information indicating the number of applications (applications to be updated) specified as described above. That is, the display control unit 262 displays information indicating the number of applications installed in the MFP 4 that are different from the current version of the application and the version of the detailed application information indicated by the detailed information corresponding to the application. You can also control the display. When the execution unit 263 receives the press of the update instruction button 341, the execution unit 263 notifies the processing execution unit 264 of the update instruction pasted on the update instruction button 341. FIG. 31 is a diagram showing an example of information notified from the execution unit 263 to the processing execution unit 264 in this case.

なお、この例では、更新対象のアプリケーションごとに、上述の更新指示ボタン341が個別に設けられているが、これに限らず、例えば更新対象のアプリケーションの更新を一括で実行することを指示するためのボタンが設けられる形態であってもよい。この形態では、該ボタンの押下を受け付けた場合、更新対象の全てのアプリケーションの更新命令が一括して選択されることになる。要するに、アプリケーションコマンドは、MFP4にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、アプリケーション詳細情報のうち該アプリケーションに対応する詳細情報が示すバージョンとが異なるアプリケーションを一括して更新する命令を示す一括更新命令を含んでいてもよい。この場合、表示制御部262は、一括更新命令が選択された場合(更新対象のアプリケーションの更新を一括で実行することを指示するためのボタンの押下を受け付けた場合)、MFP4にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、アプリケーション詳細情報のうち該アプリケーションに対応する詳細情報が示すバージョンとが異なるアプリケーションを特定し、実行部263は、該特定したアプリケーションに対応する更新命令を処理実行部264へ通知する形態であってもよい。 In this example, the above-mentioned update instruction button 341 is individually provided for each application to be updated, but the present invention is not limited to this, for example, in order to instruct to collectively update the application to be updated. The button may be provided. In this form, when the pressing of the button is accepted, the update instructions of all the applications to be updated are collectively selected. In short, the application command is a command to collectively update applications that are different from the current version of the application installed in the MFP4 and the version of the detailed application information indicated by the detailed information corresponding to the application. It may include a batch update command to indicate. In this case, when the batch update command is selected (when the button for instructing to execute the update of the application to be updated is pressed), the display control unit 262 has the application installed in the MFP4. Among the applications, the current version of the application and the version of the detailed application information indicated by the detailed information corresponding to the application are specified, and the execution unit 263 processes the update instruction corresponding to the specified application. It may be in the form of notifying the execution unit 264.

また、例えばサーバ2が、更新対象のアプリケーションを特定する機能を有する形態であってもよい。この場合、例えば表示制御部262は、上述の表示情報要求の送信前に、処理実行部264から上述のアプリケーション管理情報を取得し、その取得したアプリケーション管理情報を付加した表示情報要求をサーバ2へ送信することもできる。サーバ2は、MFP4から受信したアプリケーション管理情報に含まれるアプリIDごとに、該アプリケーション管理情報において該アプリIDに対応付けられたバージョンと、サーバ2が管理するアプリ情報DB401(第2の対応情報)において該アプリIDに対応付けられたバージョンとを比較し、差異があるアプリIDを更新対象のアプリIDとして特定することができる。そして、サーバ2は、更新対象として特定したアプリIDを示す情報を表示情報に含めてMFP4へ送信する形態であってもよい。さらに、例えばサーバ2側でMFP4にインストール済みのアプリケーションを管理する(上述のアプリケーション管理情報を管理する)形態であってもよい。この場合、例えばサーバ2は、ライセンスの有効化または無効化のタイミングでアプリケーション管理情報を更新することができるし、アプリケーションを更新するタイミングでアプリケーション管理情報を更新することもできる。この場合、MFP4にインストール済みのアプリケーションの現在のバージョンをMFP4から取得する必要は無いので、サーバ2のみで更新対象のアプリケーションを判断できるとともにMFP4の処理負担を減らすことができる。 Further, for example, the server 2 may have a function of specifying an application to be updated. In this case, for example, the display control unit 262 acquires the above-mentioned application management information from the processing execution unit 264 before transmitting the above-mentioned display information request, and sends the display information request to the server 2 to which the acquired application management information is added. You can also send. The server 2 has a version associated with the application ID in the application management information and an application information DB 401 managed by the server 2 (second correspondence information) for each application ID included in the application management information received from the MFP 4. In, the version associated with the application ID can be compared, and the application ID having a difference can be specified as the application ID to be updated. Then, the server 2 may be in a form of including the information indicating the application ID specified as the update target in the display information and transmitting the information to the MFP 4. Further, for example, the server 2 may manage the applications installed in the MFP 4 (manage the above-mentioned application management information). In this case, for example, the server 2 can update the application management information at the timing of enabling or invalidating the license, and can also update the application management information at the timing of updating the application. In this case, since it is not necessary to acquire the current version of the application installed in the MFP 4 from the MFP 4, it is possible to determine the application to be updated only by the server 2 and reduce the processing load of the MFP 4.

次に、サーバ2から受信したWebコンテンツデータ(画面情報と表示情報)に基づいて構成される画面に対するユーザの操作に応じてアンインストール命令が選択される場合を例に挙げて説明する。この例では、実行部263は、ユーザの操作に応じて選択されたアンインストール命令を処理実行部264へ通知し、処理実行部264は、実行部263から通知されたアンインストール命令を実行する。より具体的には以下のとおりである。 Next, a case where an uninstall command is selected according to a user operation on a screen configured based on Web content data (screen information and display information) received from the server 2 will be described as an example. In this example, the execution unit 263 notifies the processing execution unit 264 of the uninstall instruction selected according to the user's operation, and the processing execution unit 264 executes the uninstall instruction notified by the execution unit 263. More specifically, it is as follows.

表示制御部262は、図23に示すアプリケーション一覧画面に表示された削除選択ボタン331の押下を受け付けた場合、MFP4にインストール済みのアプリケーションごとに、該アプリケーションの削除指示を受け付けるための削除指示画面を操作パネル27に表示する制御を行う。図32は、削除指示画面の一例を示す図である。削除指示画面は、MFP4にインストール済みのアプリケーションごとに、該アプリケーションの削除指示を受け付けるための削除指示ボタン351を表示する。表示制御部262は、削除指示ボタン351の押下を受け付けた場合、アンインストールの実行を最終的に確認するための削除確認画面を操作パネル27に表示する制御を行う。図33は、削除確認画面の一例を示す図である。削除確認画面は、アンインストールの実行を最終的に承諾したことを指示するための確認ボタン361を表示する。この例では、確認ボタン361に対しては、該確認ボタン361に対応する1以上のアプリケーションを削除する命令を示す削除命令が貼り付けられている。確認ボタン361の押下を受け付けると、実行部263は、押下された確認ボタン361に貼り付けられていたアンインストール命令を処理実行部264へ通知する。図34は、この場合に、実行部263から処理実行部264へ通知される情報の一例を示す図である。 When the display control unit 262 accepts the pressing of the deletion selection button 331 displayed on the application list screen shown in FIG. 23, the display control unit 262 displays a deletion instruction screen for receiving the deletion instruction of the application for each application installed in the MFP4. Controls the display on the operation panel 27. FIG. 32 is a diagram showing an example of a deletion instruction screen. The deletion instruction screen displays a deletion instruction button 351 for receiving a deletion instruction of the application for each application installed in the MFP4. When the display control unit 262 receives the press of the deletion instruction button 351, the display control unit 262 controls to display the deletion confirmation screen on the operation panel 27 for finally confirming the execution of the uninstallation. FIG. 33 is a diagram showing an example of a deletion confirmation screen. The deletion confirmation screen displays a confirmation button 361 for instructing that the execution of the uninstallation is finally accepted. In this example, a deletion command indicating a command for deleting one or more applications corresponding to the confirmation button 361 is attached to the confirmation button 361. Upon receiving the press of the confirmation button 361, the execution unit 263 notifies the processing execution unit 264 of the uninstall command attached to the pressed confirmation button 361. FIG. 34 is a diagram showing an example of information notified from the execution unit 263 to the processing execution unit 264 in this case.

この例では、MFP4にインストール済みのアプリケーションごとに、上述の削除指示ボタン351が個別に設けられているが、これに限らず、例えばMFP4にインストール済みのアプリケーションを一括で削除することを指示するためのボタンが設けられる形態であってもよい。この形態では、該ボタンの押下を受け付けた場合、MFP4にインストール済みの全てのアプリケーションのアンインストール命令が一括して選択されることになる。要するに、アプリケーションコマンドは、MFP4にインストール済みのアプリケーションを一括して削除する命令を示す一括アンインストール命令を含み、実行部263は、一括アンインストール命令が選択された場合、MFP4にインストール済みのアプリケーションに対応するアンインストール命令(インストール済みの1以上のアプリケーションと1対1に対応する1以上のアンインストール命令)を処理実行部264へ通知する形態であってもよい。 In this example, the above-mentioned deletion instruction button 351 is individually provided for each application installed in the MFP4, but the present invention is not limited to this, for example, in order to instruct to collectively delete the applications installed in the MFP4. The button may be provided. In this form, when the pressing of the button is accepted, the uninstall command of all the applications installed in the MFP 4 is selected at once. In short, the application command includes a batch uninstall instruction indicating an instruction to collectively delete the applications installed in the MFP4, and the execution unit 263 transfers the application installed in the MFP4 to the application installed in the MFP4 when the batch uninstall instruction is selected. The corresponding uninstall command (one or more installed applications and one or more uninstall commands corresponding to one-to-one) may be notified to the processing execution unit 264.

以上に説明した起動部261、表示制御部262、実行部263、および、処理実行部264の各々の機能は、CPU21がROM22やフラッシュメモリ24等の記憶装置に記憶されたプログラムを実行することにより実現可能である。 The functions of the activation unit 261, the display control unit 262, the execution unit 263, and the processing execution unit 264 described above are obtained by the CPU 21 executing a program stored in a storage device such as a ROM 22 or a flash memory 24. It is feasible.

図35は、本実施形態のシステム1の動作手順の一例を示すシーケンス図である。上述したように、起動部261は、操作画面上の「アプリマーケット」という名称のアイコン5の押下を受け付けた場合(ステップS1)、Webブラウザであるブラウザアプリ(表示制御部262および実行部263)に対して、起動指令とともにサーバ2のURLを送信する(ステップS2)。起動指令を受けて起動したブラウザアプリ(表示制御部262および実行部263)は、受け取ったURLで指定されるサーバ2に対して、HTTPリクエストとして上述の画面情報要求を送信する(ステップS3)。 FIG. 35 is a sequence diagram showing an example of the operation procedure of the system 1 of the present embodiment. As described above, when the activation unit 261 accepts the pressing of the icon 5 named "app market" on the operation screen (step S1), the activation unit 261 is a browser application (display control unit 262 and execution unit 263) that is a Web browser. The URL of the server 2 is transmitted together with the start command (step S2). The browser application (display control unit 262 and execution unit 263) started in response to the start command transmits the above-mentioned screen information request as an HTTP request to the server 2 specified by the received URL (step S3).

次に、サーバ2は、MFP4からの要求に応じてWebコンテンツデータ(画面情報)を生成し(ステップS4)、その生成したWebコンテンツデータ(画面情報)をHTTPレスポンスとしてMFP4へ送信する(ステップS5)。MFP4(表示制御部262)は、HTTPリクエストである画面情報要求に対する応答として、Webコンテンツデータ(画面情報)を受信する。例えば、MFP4(表示制御部262)は、Webコンテンツデータ(画面情報)として、HTMLと、HTMLに含まれる(あるいは、HTMLから参照される)CSS/JavaScriptを受信する。 Next, the server 2 generates Web content data (screen information) in response to the request from the MFP 4 (step S4), and transmits the generated Web content data (screen information) to the MFP 4 as an HTTP response (step S5). ). The MFP4 (display control unit 262) receives Web content data (screen information) as a response to the screen information request which is an HTTP request. For example, the MFP4 (display control unit 262) receives HTML and CSS / Javascript included in HTML (or referred to by HTML) as Web content data (screen information).

画面情報を受信したMFP4のブラウザアプリは、JavaScriptを解釈、実行し、Ajaxを用いて、サーバ2に対して、HTTPリクエストとして上述の表示情報要求(図21参照)を送信する(ステップS6)。 The browser application of the MFP4 that has received the screen information interprets and executes Javascript, and uses Ajax to transmit the above-mentioned display information request (see FIG. 21) as an HTTP request to the server 2 (step S6).

サーバ2は、MFP4からの要求に応じて表示情報を生成し(ステップS7)、その生成したWebコンテンツデータ(表示情報)をHTTPレスポンスとしてMFP4へ送信する(ステップS8)。MFP4(表示制御部262)は、HTTPリクエストである表示情報要求に対する応答として、Webコンテンツデータ(表示情報)を受信する。 The server 2 generates display information in response to a request from the MFP 4 (step S7), and transmits the generated Web content data (display information) to the MFP 4 as an HTTP response (step S8). The MFP4 (display control unit 262) receives Web content data (display information) as a response to the display information request which is an HTTP request.

MFP4(表示制御部262)は、サーバ2から受信したWebコンテンツデータ(画面情報と表示情報)に基づいて構成される画面を生成し(ステップS9)、生成した画面を操作パネル27に表示する(ステップS10)。この例では、表示制御部262は、サーバ2から受信したWebコンテンツデータ(画面情報と表示情報)を、フラッシュメモリ24等の記憶装置に格納するとともに、その受信したWebコンテンツデータ(画面情報と表示情報)を用いて、図23に示すアプリケーション一覧画面を最初に生成する。そして、その生成したアプリケーション一覧画面を操作パネル27に表示する制御を行う。 The MFP 4 (display control unit 262) generates a screen configured based on the Web content data (screen information and display information) received from the server 2 (step S9), and displays the generated screen on the operation panel 27 (step S9). Step S10). In this example, the display control unit 262 stores the Web content data (screen information and display information) received from the server 2 in a storage device such as a flash memory 24, and the received Web content data (screen information and display). Information) is used to first generate the application list screen shown in FIG. Then, control is performed to display the generated application list screen on the operation panel 27.

図36は、上述のステップS7において、サーバ2が、MFP4が利用可能なアプリケーションごとに、該アプリケーションの詳細を示す詳細情報を対応付けたアプリケーション詳細情報を生成する処理の一例を示すフローチャートである。図36に示すように、特定部216は、MFP4から上述の表示情報要求を受信した場合、図5に示す第1の対応情報を参照して、その受信した表示情報要求に含まれる機種コードに対応付けられた機種IDを選択する(ステップS11)。次に、特定部216は、図6に示す第2の対応情報を参照して、その選択した機種IDに対応付けられた1以上のアプリIDを選択する(ステップS12)。次に、特定部216は、図7に示す第3の対応情報を参照して、その選択した1以上のアプリIDの中から、公開されている状態を示す状態情報が対応付けられたアプリIDを選択する(ステップS13)。このとき、特定部216は、図6に示す第2の対応情報のうち、ステップS13で選択したアプリIDに対応付けられたバージョン情報も特定しておく。次に、特定部216は、図8に示す第4の対応情報を参照して、ステップS13で選択したアプリIDと、MFP4から受信した表示情報要求に含まれる言語情報(ロケール情報)との組み合わせに対応するアプリ説明情報を特定する(ステップS14)。そして、表示情報生成部217は、ステップS13で選択したアプリIDごとに、ステップS14で特定したアプリ説明情報と、図6に示す第2の対応情報のうち、ステップS13で選択したアプリIDに対応付けられたバージョン情報と、ライセンスキーが設定されている場合はライセンスキーと、を含む詳細情報を対応付けてアプリケーション詳細情報を生成することができる(ステップS15)。 FIG. 36 is a flowchart showing an example of a process in which the server 2 generates application detailed information associated with detailed information indicating the details of the application for each application in which the MFP 4 can be used in step S7 described above. As shown in FIG. 36, when the identification unit 216 receives the above-mentioned display information request from the MFP 4, the identification unit 216 refers to the first corresponding information shown in FIG. 5 and sets the model code included in the received display information request. The associated model ID is selected (step S11). Next, the specific unit 216 selects one or more application IDs associated with the selected model ID with reference to the second correspondence information shown in FIG. 6 (step S12). Next, the specific unit 216 refers to the third correspondence information shown in FIG. 7, and from the selected one or more application IDs, the application ID associated with the state information indicating the published state is associated with the identification unit 216. Is selected (step S13). At this time, the specifying unit 216 also specifies the version information associated with the application ID selected in step S13 among the second corresponding information shown in FIG. Next, the specific unit 216 refers to the fourth correspondence information shown in FIG. 8 and combines the application ID selected in step S13 with the language information (locale information) included in the display information request received from the MFP 4. The application description information corresponding to is specified (step S14). Then, the display information generation unit 217 corresponds to the application description information specified in step S14 and the application ID selected in step S13 among the second correspondence information shown in FIG. 6 for each application ID selected in step S13. The application detailed information can be generated by associating the attached version information with the detailed information including the license key if the license key is set (step S15).

図37は、図23に示すアプリケーション一覧画面に表示された何れかのアプリケーション選択ボタン311が押下された場合のシステム1の動作手順の一例を示すシーケンス図である。上述したように、表示制御部262は、何れかのアプリケーション選択ボタン311の押下を受け付けた場合、上述のインストール指示画面(図24参照)を操作パネル27に表示する制御を行う(ステップ21)。次に、表示制御部262は、インストールボタン312の押下を受け付けた場合、サーバ2から受信済みの表示情報を参照して、該表示情報内のアプリケーション詳細情報のうち、ユーザの操作に応じて選択されたインストール命令(押下されたインストールボタン312に貼り付けられたインストール命令)の対象となるアプリケーションに対応する詳細情報の中に、ライセンスキーが含まれているか否かを確認する(ステップS22)。ステップS22の確認の結果、ライセンスキーが含まれている場合、上述のインストール確認画面(図25参照)を操作パネル27に表示する制御を行う(ステップS23)。 FIG. 37 is a sequence diagram showing an example of the operation procedure of the system 1 when any of the application selection buttons 311 displayed on the application list screen shown in FIG. 23 is pressed. As described above, the display control unit 262 controls to display the above-mentioned installation instruction screen (see FIG. 24) on the operation panel 27 when any of the application selection buttons 311 is pressed (step 21). Next, when the display control unit 262 receives the press of the installation button 312, the display control unit 262 refers to the display information received from the server 2 and selects the application detailed information in the display information according to the user's operation. It is confirmed whether or not the license key is included in the detailed information corresponding to the application to be the target of the installed installation instruction (installation instruction pasted on the pressed installation button 312) (step S22). If the license key is included as a result of the confirmation in step S22, the operation panel 27 is controlled to display the above-mentioned installation confirmation screen (see FIG. 25) (step S23).

上述のステップS22の確認の結果、ライセンスキーが含まれていない場合(つまり、インストール命令の対象となるアプリケーションが有償のアプリケーションの場合)、表示制御部262は、上述の入力画面を操作パネル27に表示する制御を行い(ステップS24)、ユーザからのライセンスキーの入力を受け付ける。ここでは、ユーザは、購入済みのアプリケーションに対応するライセンスキーを事前に把握していることを前提とする。例えばアプリケーションの管理者から、該アプリケーションを購入したユーザに対して、郵送やメール等でライセンスキーを通知する形態であってもよい。 As a result of the confirmation in step S22 described above, when the license key is not included (that is, when the application targeted by the installation instruction is a paid application), the display control unit 262 displays the above input screen on the operation panel 27. Control the display (step S24) and accept the input of the license key from the user. Here, it is assumed that the user knows the license key corresponding to the purchased application in advance. For example, the administrator of the application may notify the user who purchased the application of the license key by mail, e-mail, or the like.

次に、実行部263は、ユーザの操作に応じて選択されたインストール命令と、アプリID(選択されたアプリケーション命令の対象となるアプリケーションのアプリID)と、ライセンスキー(選択されたアプリケーション命令の対象となるアプリケーションのライセンスキー)とを処理実行部264へ通知する(ステップS25)。処理実行部264は、実行部263から通知されたライセンスキーを用いて、実行部263から通知されたインストール命令を実行する。より具体的には以下のとおりである。まず、処理実行部264は、サーバ2に対して、インストール命令の対象となるアプリケーションのアプリIDを少なくとも含み、かつ、該アプリケーションのダウンロードを要求する上述のダウンロード要求を送信する(ステップS26)。ダウンロード要求を受信したサーバ2(ダウンロード部232)は、その受信したダウンロード要求に含まれるアプリIDに対応するアプリケーションを選択し(ステップS27)、その選択したアプリケーションをMFP4へ送信する(ステップS28)。 Next, the execution unit 263 includes an installation command selected according to the user's operation, an application ID (application ID of the application to be the target of the selected application command), and a license key (target of the selected application command). The application license key) is notified to the processing execution unit 264 (step S25). The processing execution unit 264 executes the installation instruction notified from the execution unit 263 by using the license key notified from the execution unit 263. More specifically, it is as follows. First, the process execution unit 264 transmits to the server 2 the above-mentioned download request including at least the application ID of the application to be the target of the installation instruction and requesting the download of the application (step S26). The server 2 (download unit 232) that has received the download request selects an application corresponding to the application ID included in the received download request (step S27), and transmits the selected application to the MFP 4 (step S28).

次に、処理実行部264は、サーバ2に対して、アプリIDとライセンスキーと機番とを少なくとも含み、かつ、ライセンスの有効化を要求する上述の有効化要求を送信する(ステップS29)。有効化要求を受信したサーバ2(ライセンス有効化部227)は、ライセンスを有効化するための制御を行った後(ステップS30)、有効化要求に対する応答をMFP4へ返す(ステップS31)。ステップS30の具体的な内容は上述したとおりであり、ライセンス有効化部227は、MFP4から上述の有効化要求を受信した場合、ライセンス情報DB224の中に、その受信した有効化要求に含まれるライセンスキーが存在するか否かを確認する。ライセンスキーが存在する場合は、ライセンス有効化部227は、上述したようにライセンス情報DB224に記憶された情報を更新する。また、ライセンス有効化部227は、MFP4から受信した有効化要求に含まれるアプリIDで識別されるアプリケーションの有効期限などのライセンス(使用権限)を定めたライセンスファイルを発行し、有効化要求に対する応答として、ライセンスの状態が有効である旨に加えて該ライセンスファイルを送信することもできる。一方、ライセンス情報DB224の中に、その受信した有効化要求に含まれるライセンスキーが存在しない場合は、有効化要求に対する応答としてエラーを送信する。 Next, the processing execution unit 264 transmits to the server 2 the above-mentioned activation request including at least the application ID, the license key, and the machine number and requesting the activation of the license (step S29). After receiving the activation request, the server 2 (license activation unit 227) controls to activate the license (step S30), and then returns a response to the activation request to the MFP 4 (step S31). The specific content of step S30 is as described above, and when the license activation unit 227 receives the above-mentioned activation request from the MFP 4, the license included in the received activation request is included in the license information DB 224. Check if the key exists. If the license key exists, the license activation unit 227 updates the information stored in the license information DB 224 as described above. In addition, the license activation unit 227 issues a license file that defines the license (use authority) such as the expiration date of the application identified by the application ID included in the activation request received from the MFP4, and responds to the activation request. As a result, the license file can be transmitted in addition to the fact that the license status is valid. On the other hand, if the license key included in the received activation request does not exist in the license information DB 224, an error is transmitted as a response to the activation request.

MFP4(処理実行部264)は、有効化要求に対する応答として、ライセンスの状態が有効である旨を受信した場合、ステップS28でサーバ2からダウンロードしたアプリケーションをインストールする制御を行う(ステップS32)。インストールが完了した後、処理実行部264は、そのインストールが完了したアプリケーションのアプリIDと、インストール時の該アプリケーションのバージョンとを対応付けて上述のアプリケーション管理情報に追加することで、アプリケーション管理情報を更新する(ステップS33)。 The MFP4 (processing execution unit 264) controls to install the application downloaded from the server 2 in step S28 when receiving the fact that the license status is valid as a response to the activation request (step S32). After the installation is completed, the process execution unit 264 adds the application management information to the above-mentioned application management information by associating the application ID of the application for which the installation has been completed with the version of the application at the time of installation. Update (step S33).

図38は、図23に示すアプリケーション一覧画面に表示された更新選択ボタン321が押下された場合のシステム1の動作手順の一例を示すシーケンス図である。上述したように、表示制御部262は、更新選択ボタン321の押下を受け付けた場合、MFP4にインストール済みのアプリケーションのうち、更新対象のアプリケーションを特定する(ステップS41)。そして、ステップS41で特定したアプリケーションごとに、該アプリケーションの更新指示を受け付けるための更新指示画面(図30参照)を操作パネル27に表示する制御を行う(ステップS42)。これらの具体的な内容は上述したとおりである。 FIG. 38 is a sequence diagram showing an example of the operation procedure of the system 1 when the update selection button 321 displayed on the application list screen shown in FIG. 23 is pressed. As described above, when the display control unit 262 receives the press of the update selection button 321, the display control unit 262 identifies the application to be updated among the applications installed in the MFP 4 (step S41). Then, for each application specified in step S41, control is performed to display an update instruction screen (see FIG. 30) for receiving an update instruction for the application on the operation panel 27 (step S42). The specific contents of these are as described above.

次に、実行部263は、何れかの更新指示ボタン341の押下を受け付けた場合、該更新指示ボタン341に貼り付けられた更新命令を処理実行部264へ通知する(ステップS43)。処理実行部264は、実行部263から通知された更新命令を実行する。より具体的には以下のとおりである。まず、処理実行部264は、サーバ2に対して、更新対象のアプリIDを少なくとも含み、かつ、最新のバージョンのアプリケーションを要求する更新要求を送信する(ステップS44)。更新要求を受信したサーバ2は、その受信した更新要求に含まれるアプリIDに対応するアプリケーションを選択し(ステップS45)、その選択したアプリケーションをMFP4へ送信する(ステップS46)。 Next, when the execution unit 263 accepts the pressing of any of the update instruction buttons 341, the execution unit 263 notifies the processing execution unit 264 of the update instruction pasted on the update instruction button 341 (step S43). The processing execution unit 264 executes the update instruction notified from the execution unit 263. More specifically, it is as follows. First, the process execution unit 264 transmits to the server 2 an update request including at least the application ID to be updated and requesting the latest version of the application (step S44). The server 2 that has received the update request selects an application corresponding to the application ID included in the received update request (step S45), and transmits the selected application to the MFP 4 (step S46).

次に、MFP4(処理実行部264)は、更新要求に対する応答として、サーバ2から受信したアプリケーション(新たにダウンロードしたアプリケーション)をインストールする制御を行う(ステップS47)。インストールが完了した後、処理実行部264は、そのインストールが完了したアプリケーションのアプリIDと、インストール時(更新時)の該アプリケーションのバージョンとを対応付けて上述のアプリケーション管理情報に追加することで、アプリケーション管理情報を更新する(ステップS48)。 Next, the MFP 4 (processing execution unit 264) controls to install the application (newly downloaded application) received from the server 2 as a response to the update request (step S47). After the installation is completed, the process execution unit 264 associates the application ID of the application for which the installation has been completed with the version of the application at the time of installation (update) and adds it to the above-mentioned application management information. Update the application management information (step S48).

図39は、図23に示すアプリケーション一覧画面に表示された削除選択ボタン331が押下された場合のシステム1の動作手順の一例を示すシーケンス図である。上述したように、表示制御部262は、削除選択ボタン331の押下を受け付けた場合、上述の削除指示画面(図32参照)を操作パネル27に表示する制御を行う(ステップS51)。次に、表示制御部262は、何れかの削除指示ボタン351の押下を受け付けた場合、上述の削除確認画面(図33参照)を操作パネル27に表示する制御を行う(ステップS52)。次に、実行部263は、削除確認画面に表示された確認ボタン361の押下を受け付けた場合、ユーザの操作に応じて選択されたアンインストール命令(押下された確認ボタン361に貼り付けられたアンインストール命令)を処理実行部264へ通知する(ステップS53)。 FIG. 39 is a sequence diagram showing an example of the operation procedure of the system 1 when the deletion selection button 331 displayed on the application list screen shown in FIG. 23 is pressed. As described above, the display control unit 262 controls to display the above-mentioned deletion instruction screen (see FIG. 32) on the operation panel 27 when the deletion selection button 331 is received (step S51). Next, when the display control unit 262 receives the pressing of any of the deletion instruction buttons 351, the display control unit 262 controls to display the above-mentioned deletion confirmation screen (see FIG. 33) on the operation panel 27 (step S52). Next, when the execution unit 263 accepts the press of the confirmation button 361 displayed on the deletion confirmation screen, the uninstall command selected according to the user's operation (the uninstall attached to the pressed confirmation button 361). The installation instruction) is notified to the processing execution unit 264 (step S53).

処理実行部264は、実行部263から通知されたアンインストール命令を実行する。より具体的には以下のとおりである。まず、処理実行部264は、サーバ2に対して、アンインストール命令の対象となるアプリケーションに対応するライセンスキーと、機番とを少なくとも含み、かつ、ライセンスの無効化を要求する上述の無効化要求を送信する(ステップS54)。無効化要求を受信したサーバ2(ライセンス無効化部228)は、ライセンスを無効化するための制御を行った後(ステップS55)、無効化要求に対する応答(ここではライセンスの状態が無効である旨を示す応答)をMFP4へ返す(ステップS56)。ステップS55の具体的な内容は上述したとおりであり、ライセンス無効化部228は、MFP4から上述の無効化要求を受信した場合、ライセンス情報DB224に記憶された情報のうち、その受信した無効化要求に含まれるライセンスキーと機番との組み合わせに対応付けられた有効状態情報を「無効」を示す情報に変更し、その受信した無効化要求に含まれるライセンスキーに対応付けられた使用中ライセンス数を「1」だけデクリメントし、使用済みライセンス数を「1」だけインクリメントする。 The processing execution unit 264 executes the uninstall instruction notified from the execution unit 263. More specifically, it is as follows. First, the process execution unit 264 requests the server 2 to invalidate the license, including at least the license key and the machine number corresponding to the application to be the uninstall command, and requesting the invalidation of the license. Is transmitted (step S54). After receiving the invalidation request, the server 2 (license invalidation unit 228) controls to invalidate the license (step S55), and then responds to the invalidation request (here, the license status is invalid). (Response indicating) is returned to MFP4 (step S56). The specific contents of step S55 are as described above, and when the license invalidation unit 228 receives the above-mentioned invalidation request from the MFP4, among the information stored in the license information DB 224, the received invalidation request is received. The number of licenses in use associated with the license key included in the received invalidation request by changing the valid status information associated with the combination of the license key and machine number included in to the information indicating "invalid". Is decremented by "1" and the number of used licenses is incremented by "1".

MFP4(処理実行部264)は、無効化要求に対する応答として、ライセンスの状態が無効である旨を受信した場合、無効化要求に含まれるライセンスキーに対応するアプリケーションをアンインストールする制御を行う(ステップS57)。アンインストールが完了した後、処理実行部264は、上述のアプリケーション管理情報のうち、該アンインストールが完了したアプリケーションに対応する情報を削除することで、アプリケーション管理情報を更新する(ステップS58)。 When the MFP4 (processing execution unit 264) receives the fact that the license status is invalid as a response to the invalidation request, the MFP4 controls to uninstall the application corresponding to the license key included in the invalidation request (step). S57). After the uninstallation is completed, the process execution unit 264 updates the application management information by deleting the information corresponding to the application for which the uninstallation has been completed from the above-mentioned application management information (step S58).

以上に説明したように、本実施形態では、サーバ2は、ネットワーク3を介して接続されるMFP4からの要求に応じて、MFP4が利用可能なアプリケーションを示す表示情報と、アプリケーションに関する処理をMFP4に実行させるアプリケーションコマンドと、を少なくとも含むWebコンテンツデータをMFP4に送信する制御を行う制御部212を備え、MFP4は、サーバ2から受信したWebコンテンツデータに基づく画面を操作パネル27に表示する制御を行う表示制御部262と、操作パネル27に表示された画面を介したユーザの操作に応じてWebコンテンツデータに含まれるアプリケーションコマンドを実行して、該アプリケーションコマンドに対応したアプリケーションに関する処理の実行をMFP4に要求する実行部263と、を備える。これにより、サーバ2側で表示情報を自由に変更しても、Webコンテンツデータに含まれるアプリケーションコマンドをMFP4に実行させることができるので、表示情報の変更に合わせてMFP4側のプログラムを変更する必要は無い。すなわち、本実施形態によれば、MFP4が利用可能なアプリケーションを紹介するページを提供するサーバ2が、例えば地域ごとに表示内容が異なるページを構築するための仕組みを実現できる。 As described above, in the present embodiment, the server 2 sends the display information indicating the application that can be used by the MFP 4 and the processing related to the application to the MFP 4 in response to the request from the MFP 4 connected via the network 3. It includes a control unit 212 that controls transmission of Web content data including at least an application command to be executed to the MFP 4, and the MFP 4 controls to display a screen based on the Web content data received from the server 2 on the operation panel 27. The application command included in the Web content data is executed in response to the user's operation via the display control unit 262 and the screen displayed on the operation panel 27, and the MFP 4 executes the processing related to the application corresponding to the application command. It includes a requesting execution unit 263 and. As a result, even if the display information is freely changed on the server 2 side, the application command included in the Web content data can be executed by the MFP4. Therefore, it is necessary to change the program on the MFP4 side according to the change in the display information. There is no. That is, according to the present embodiment, it is possible to realize a mechanism for the server 2 that provides a page introducing an application that can be used by the MFP 4 to construct a page having different display contents for each region, for example.

以上、本発明に係る実施形態について説明したが、本発明は、上述の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。 Although the embodiments according to the present invention have been described above, the present invention is not limited to the above-described embodiments as they are, and at the implementation stage, the components can be modified and embodied without departing from the gist thereof. In addition, various inventions can be formed by an appropriate combination of the plurality of components disclosed in the above-described embodiment. For example, some components may be removed from all the components shown in the embodiments.

例えば図23に示すアプリケーション一覧画面に表示されるアプリケーションの中に(MFP4が利用可能なアプリケーションの中に)、サーバ2に配置したアプリケーションを、操作部20のブラウザアプリで利用する形態のアプリケーション(つまり、Webアプリ)が含まれていてもよい。このようなWebアプリについては、MFP4にインストールする必要は無いので、Webアプリに対応するアプリケーション選択ボタン311の押下を受け付けた場合、表示制御部262は、例えば図40に示すようなショートカット作成指示画面を操作パネル27に表示する制御を行う形態であってもよい。ショートカット作成指示画面は、対応するアプリケーション(Webアプリ)のアプリ説明情報と、Webアプリの機能を呼び出すためのショートカットアイコンの作成を指示するためのショートカット作成ボタン371とを表示する。この例では、ショートカット作成ボタン371に対して、ショートカットアイコンを作成する命令を示すショートカット作成命令が貼り付けられている。実行部263は、ショートカット作成ボタン371の押下を受け付けた場合、処理実行部264に対して、該ショートカット作成ボタン371に貼り付けられたショートカット作成命令を通知する。そして、処理実行部264は、実行部263から通知されたショートカット作成命令を実行する。要するに、アプリケーションコマンドは、Webアプリの機能を呼び出すためのショートカットアイコンを作成する命令を示すショートカットアイコン作成命令を含んでいてもよい。この場合、実行部263は、ユーザの操作に応じてショートカットアイコン作成命令が選択された場合(例えば上述のショートカット作成ボタン371が押下された場合)、その選択されたショートカットアイコン作成命令(押下されたショートカット作成ボタン371に貼り付けられたショートカット作成命令)を処理実行部264へ通知し、処理実行部264は、実行部263から通知されたショートカットアイコン作成命令を実行する形態であってもよい。例えばMFP4がサーバ2から受信した表示情報の中に、インストールが必要なアプリとWebアプリが混在している場合、図22の詳細情報における「appType」を参照して、値が「install」の場合はインストールが必要なアプリと判断して図24を表示し、値が「web」の場合はWebアプリと判断して図40を表示するようにしてもよい。 For example, among the applications displayed on the application list screen shown in FIG. 23 (among the applications available to the MFP4), the application placed on the server 2 is used by the browser application of the operation unit 20 (that is, the application). , Web application) may be included. Since it is not necessary to install such a Web application on the MFP4, when the application selection button 311 corresponding to the Web application is received, the display control unit 262 displays a shortcut creation instruction screen as shown in FIG. 40, for example. May be controlled to be displayed on the operation panel 27. The shortcut creation instruction screen displays application explanation information of the corresponding application (Web application) and a shortcut creation button 371 for instructing the creation of a shortcut icon for calling the function of the Web application. In this example, a shortcut creation command indicating a command for creating a shortcut icon is pasted to the shortcut creation button 371. When the execution unit 263 receives the press of the shortcut creation button 371, the execution unit 263 notifies the processing execution unit 264 of the shortcut creation command pasted on the shortcut creation button 371. Then, the processing execution unit 264 executes the shortcut creation command notified from the execution unit 263. In short, the application command may include a shortcut icon creation command indicating an instruction for creating a shortcut icon for calling a function of the Web application. In this case, when the shortcut icon creation command is selected according to the user's operation (for example, when the shortcut creation button 371 described above is pressed), the execution unit 263 is instructed to create the selected shortcut icon (pressed). The shortcut creation command pasted on the shortcut creation button 371) may be notified to the processing execution unit 264, and the processing execution unit 264 may execute the shortcut icon creation command notified from the execution unit 263. For example, when the display information received from the server 2 by the MFP 4 includes an application that needs to be installed and a Web application, the value is "install" with reference to "appType" in the detailed information of FIG. May determine that the application needs to be installed and display FIG. 24, and if the value is "web", determine that it is a Web application and display FIG. 40.

また、例えば操作部20(MFP4)は、複数のユーザごとに、該ユーザの権限を対応付けた権限情報を管理する機能(権限情報管理部)をさらに備える形態であってもよい。表示制御部262は、権限情報管理部から取得した権限情報を参照して、MFP4を使用中のユーザ(MFP4を使用する権限を有すると認められたユーザ、ログイン中のユーザ)に対応付けられた権限が、例えばインストールの実行を指示できない形態である場合は、図24に示すインストールボタン312を非表示にすることもできる。同様に、MFP4を使用中のユーザに対応付けられた権限が、例えば更新の実行を指示できない形態である場合は、図30に示す更新指示ボタン341を非表示にすることもできる。また、MFP4を使用中のユーザに対応付けられた権限が、例えばアンインストールの実行を指示できない形態である場合は、図32に示す削除指示ボタン351を非表示にすることもできる。 Further, for example, the operation unit 20 (MFP4) may be further provided with a function (authority information management unit) for managing authority information associated with the authority of each of a plurality of users. The display control unit 262 is associated with a user who is using the MFP4 (a user who is recognized to have the authority to use the MFP4, a logged-in user) by referring to the authority information acquired from the authority information management unit. If the authority is in a form that cannot instruct the execution of installation, for example, the installation button 312 shown in FIG. 24 can be hidden. Similarly, when the authority associated with the user who is using the MFP 4 is, for example, a form in which the execution of the update cannot be instructed, the update instruction button 341 shown in FIG. 30 can be hidden. Further, when the authority associated with the user who is using the MFP 4 is in a form in which the execution of uninstallation cannot be instructed, for example, the deletion instruction button 351 shown in FIG. 32 can be hidden.

また、上述の実施形態では、本体10と操作部20は、別々のオペレーティングシステムで互いに独立して動作しているが、これに限らず、例えば本体10と操作部20が同じオペレーティングシステムで動作する形態であってもよい。つまり、本体10と操作部20とを一体とした構成であってもよい。 Further, in the above-described embodiment, the main body 10 and the operation unit 20 operate independently of each other in different operating systems, but the present invention is not limited to this, and for example, the main body 10 and the operation unit 20 operate in the same operating system. It may be in the form. That is, the main body 10 and the operation unit 20 may be integrated.

また、上述したアプリケーション一覧画面の形態は任意であり、例えば図41に示すような、以上の例を組み合わせた形態であってもよい。 Further, the form of the application list screen described above is arbitrary, and may be a form in which the above examples are combined, for example, as shown in FIG. 41.

また、例えば上述の画面提供部213は、MFP4を含む画像形成装置から上述の画面情報要求を受信した場合に限り、上述のアプリケーションコマンドを含むWebコンテンツデータを生成する形態であってもよい。つまり、画面提供部213は、画像形成装置以外の機器(PC、タブレット等)から画面情報要求を受信した場合は、アプリケーションコマンドを含まないWebコンテンツデータを生成し、画面情報要求に対する応答として、その生成したWebコンテンツデータを機器へ送信する形態であってもよい。この形態において、上述の画面提供部213は、画像形成装置以外の機器から画面情報要求を受信した場合、アプリケーションコマンド(インストール命令、更新命令、アンインストール命令等)を選択するための情報(ボタン)を含まないWebコンテンツデータを生成し、その生成したWebコンテンツデータを、画面情報要求に対する応答として機器へ送信する形態であってもよい。また、機器から受信した画面情報要求が、MFP4からの画面情報要求であるか否かを判断する方法は任意であるが、例えばUser−Agentヘッダで判断する方法であってもよいし、MFP4からの最初のアクセスの際に機器認証を行う(MFP4であるか否かを認証する)といった方法であってもよい。また、例えばJavaScriptでMFP4向けのコマンドを実行してみて、エラーが発生した場合はMFP4以外の機器であると判断する方法であってもよい。 Further, for example, the screen providing unit 213 may be in a form of generating Web content data including the above application command only when the above screen information request is received from the image forming apparatus including the MFP 4. That is, when the screen providing unit 213 receives the screen information request from a device (PC, tablet, etc.) other than the image forming apparatus, the screen providing unit 213 generates Web content data that does not include the application command, and as a response to the screen information request, the screen information request is generated. It may be in the form of transmitting the generated Web content data to the device. In this embodiment, when the screen providing unit 213 receives a screen information request from a device other than the image forming apparatus, the information (button) for selecting an application command (installation command, update command, uninstall command, etc.) The Web content data that does not include the above may be generated, and the generated Web content data may be transmitted to the device as a response to the screen information request. Further, the method of determining whether or not the screen information request received from the device is the screen information request from the MFP 4 is arbitrary, but it may be determined by, for example, the User-Agent header, or from the MFP 4. It may be a method of performing device authentication (authentication of whether or not it is MFP4) at the time of the first access of. Further, for example, a method may be used in which a command for the MFP4 is executed by Javascript, and if an error occurs, it is determined that the device is a device other than the MFP4.

また、上述した実施形態のシステム1(サーバ2、MFP4等)で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、各種プログラムを、ROM等に予め組み込んで提供するように構成してもよい。 Further, the program executed by the system 1 (server 2, MFP4, etc.) of the above-described embodiment is a file in an installable format or an executable format, and is a CD-ROM, a flexible disk (FD), a CD-R, or a DVD. It may be configured to be recorded and provided on a computer-readable recording medium such as (Digital Versaille Disk) or USB (Universal Serial Bus), or to be provided or distributed via a network such as the Internet. You may. In addition, various programs may be configured to be provided by incorporating them into a ROM or the like in advance.

1 システム
2 サーバ
3 ネットワーク
4 MFP
10 本体
20 操作部
210 アプリ情報管理モジュール
211 記憶部
212 制御部
213 画面提供部
214 設定部
216 特定部
217 表示情報生成部
219 設定制御部
220 ライセンス管理モジュール
221 記憶部
222 制御部
223 ライセンス発行部
224 ライセンス情報DB
225 ユーザ情報DB
226 登録制御部
227 ライセンス有効化部
228 ライセンス無効化部
230 アプリダウンロード管理モジュール
231 アプリストレージ
232 ダウンロード部
262 表示制御部
263 実行部
264 処理実行部
1 System 2 Server 3 Network 4 MFP
10 Main unit 20 Operation unit 210 App information management module 211 Storage unit 212 Control unit 213 Screen providing unit 214 Setting unit 216 Specific unit 217 Display information generation unit 219 Setting control unit 220 License management module 221 Storage unit 222 Control unit 223 License issuing unit 224 License information DB
225 User information DB
226 Registration control unit 227 License activation unit 228 License invalidation unit 230 App download management module 231 App storage 232 Download unit 262 Display control unit 263 Execution unit 264 Processing execution unit

特開2010−182309号公報JP-A-2010-182309

Claims (18)

サーバと、ネットワークを介して前記サーバに接続される機器と、を備えるシステムであって、
前記サーバは、
前記機器からの要求に応じて、前記機器が利用可能なアプリケーションを示す表示情報と、アプリケーションに関する処理を前記機器に実行させるアプリケーションコマンドと、を少なくとも含むWebコンテンツデータを前記機器に送信する制御部を備え、
前記機器は、
前記サーバから受信した前記Webコンテンツデータに基づく画面を表示部に表示する制御を行う表示制御部と、前記画面を介したユーザの操作に応じて前記Webコンテンツデータに含まれる前記アプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応した前記アプリケーションに関する処理の実行を前記機器に要求する実行部と、を含むWebブラウザと、
前記Webブラウザからの要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する処理実行部と、
を備え
前記アプリケーションコマンドは、アプリケーションをインストールする命令を示すインストール命令を含み、
前記実行部は、
前記表示情報の中に、前記ユーザの操作に応じて選択された前記インストール命令の対象となるアプリケーションの使用権限の認証に用いられるライセンスキーが含まれている場合は、該ライセンスキーと、前記インストール命令とを前記処理実行部へ通知し、
前記表示制御部は、
前記表示情報の中に、該ライセンスキーが含まれていない場合は、該ライセンスキーの入力を促す入力画面を表示する制御を行う、
ことを特徴とするシステム。
A system including a server and a device connected to the server via a network.
The server
In response to a request from the device, a control unit that transmits Web content data including at least display information indicating an application that can be used by the device and an application command that causes the device to execute a process related to the application. Prepare,
The device is
A display control unit that controls the display of a screen based on the Web content data received from the server on the display unit, and the application command included in the Web content data are executed in response to a user operation via the screen. A Web browser including an execution unit that requests the device to execute a process related to the application corresponding to the application command.
Based on the request from the Web browser, the process execution unit that executes the process related to the application in response to the request, and
Equipped with a,
The application command includes an installation instruction indicating an instruction to install the application.
The execution unit
When the display information includes a license key used for authenticating the usage authority of the application subject to the installation command selected according to the operation of the user, the license key and the installation Notify the processing execution unit of the instruction and
The display control unit
If the license key is not included in the display information, control is performed to display an input screen prompting the input of the license key.
A system characterized by that.
前記実行部は、アプリケーションプログラミングインタフェースにより提供される、
ことを特徴とする請求項1に記載のシステム。
The execution unit is provided by an application programming interface.
The system according to claim 1, wherein the system is characterized by the above.
前記サーバは、
複数のアプリケーションごとに、公開されている状態であるか否かを示す状態情報と、該アプリケーションを利用可能な前記機器の機種を識別する機種情報とを対応付けて記憶する記憶部をさらに備え、
前記制御部は、
前記機器から、画面情報を要求する画面情報要求を受信した場合に、前記画面情報を生成し、前記画面情報要求に対する応答として、その生成した前記画面情報を前記機器へ送信する画面提供部と、
前記機器から、前記機種情報を含み、かつ、前記表示情報を要求する表示情報要求を受信した場合に、前記記憶部に記憶された情報を参照して、前記表示情報要求に含まれる前記機種情報と、公開されている状態を示す前記状態情報との組み合わせに対応するアプリケーションを特定する特定部と、
前記特定部により特定されたアプリケーションを示す前記表示情報を生成し、その生成した前記表示情報を、前記表示情報要求に対する応答として前記機器へ送信する表示情報生成部と、を含む、
ことを特徴とする請求項1または2に記載のシステム。
The server
Each of the plurality of applications is further provided with a storage unit that stores the status information indicating whether or not the application is open and the model information that identifies the model of the device that can use the application in association with each other.
The control unit
When a screen information request requesting screen information is received from the device, the screen providing unit generates the screen information and transmits the generated screen information to the device as a response to the screen information request.
When a display information request including the model information and requesting the display information is received from the device, the model information included in the display information request is included with reference to the information stored in the storage unit. And a specific part that identifies the application corresponding to the combination with the state information indicating the published state.
The display information generation unit includes a display information generation unit that generates the display information indicating the application specified by the specific unit and transmits the generated display information to the device as a response to the display information request.
The system according to claim 1 or 2.
前記特定部および前記表示情報生成部は、アプリケーションプログラミングインタフェースにより提供される、
ことを特徴とする請求項3に記載のシステム。
The specific unit and the display information generation unit are provided by an application programming interface.
The system according to claim 3, wherein the system is characterized by the above.
前記サーバは、
ユーザの操作に応じて、前記表示情報を可変に設定する設定部をさらに備える、
ことを特徴とする請求項1乃至4のうちの何れか1項に記載のシステム。
The server
A setting unit for variably setting the display information according to the user's operation is further provided.
The system according to any one of claims 1 to 4, wherein the system is characterized by the above.
前記実行部は、前記ユーザの操作に応じて前記インストール命令が選択された場合、その選択された前記インストール命令を前記処理実行部へ通知し、
前記処理実行部は、前記実行部から通知された前記インストール命令を実行する、
ことを特徴とする請求項に記載のシステム。
When the installation command is selected in response to the operation of the user, the execution unit notifies the processing execution unit of the selected installation command.
The processing execution unit executes the installation instruction notified from the execution unit.
The system according to claim 1 , wherein the system is characterized by the above.
前記アプリケーションコマンドは、アプリケーションを更新する命令を示す更新命令を含む、
ことを特徴とする請求項1乃至のうちの何れか1項に記載のシステム。
The application command includes an update instruction indicating an instruction to update the application.
The system according to any one of claims 1 to 6 , wherein the system is characterized by the above.
前記表示情報は、前記機器が利用可能なアプリケーションごとに、該アプリケーションの最新のバージョンを少なくとも示す詳細情報を対応付けたアプリケーション詳細情報を含み、
前記実行部は、
前記ユーザの操作に応じて、前記機器にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、前記アプリケーション詳細情報のうち該アプリケーションに対応する前記詳細情報が示すバージョンとが異なるアプリケーションを特定し、該特定したアプリケーションに対応する前記更新命令が選択された場合、その選択された前記更新命令を前記処理実行部へ通知し、
前記処理実行部は、前記実行部から通知された前記更新命令を実行する、
ことを特徴とする請求項に記載のシステム。
The display information includes application detailed information associated with at least detailed information indicating the latest version of the application for each application available to the device.
The execution unit
In response to the operation of the user, among the applications installed on the device, an application in which the current version of the application and the version of the detailed information of the application indicated by the detailed information corresponding to the application are different is specified. When the update command corresponding to the specified application is selected, the selected update command is notified to the processing execution unit.
The processing execution unit executes the update instruction notified from the execution unit.
7. The system according to claim 7 .
前記表示制御部は、
前記機器にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、前記アプリケーション詳細情報のうち該アプリケーションに対応する前記詳細情報が示すバージョンとが異なるアプリケーションの数を示す情報を表示する制御を行う、
ことを特徴とする請求項に記載のシステム。
The display control unit
Control is performed to display information indicating the number of applications in which the current version of the application installed in the device and the version of the application detailed information corresponding to the application are different from the version indicated by the detailed information. ,
8. The system according to claim 8 .
前記アプリケーションコマンドは、
前記機器にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、前記アプリケーション詳細情報のうち該アプリケーションに対応する前記詳細情報が示すバージョンとが異なるアプリケーションを一括して更新する命令を示す一括更新命令を含み、
前記実行部は、
前記一括更新命令が選択された場合、前記機器にインストール済みのアプリケーションのうち、該アプリケーションの現在のバージョンと、前記アプリケーション詳細情報のうち該アプリケーションに対応する前記詳細情報が示すバージョンとが異なるアプリケーションを特定し、該特定したアプリケーションに対応する前記更新命令を前記処理実行部へ通知する、
ことを特徴とする請求項に記載のシステム。
The application command is
Batch update indicating an instruction to batch update an application in which the current version of the application installed in the device and the version of the application detailed information corresponding to the detailed information are different from each other. Including instructions
The execution unit
When the batch update command is selected, among the applications installed on the device, the current version of the application and the version of the detailed information of the application indicated by the detailed information corresponding to the application are different. Identify and notify the process execution unit of the update command corresponding to the specified application.
8. The system according to claim 8 .
前記アプリケーションコマンドは、インストール済みのアプリケーションを削除して、前記機器の状態を、該アプリケーションをインストールする前の状態に戻す命令を示すアンインストール命令を含む、
ことを特徴とする請求項乃至10のうちの何れか1項に記載のシステム。
The application command includes an uninstall command indicating an instruction to delete an installed application and return the state of the device to the state before the application was installed.
The system according to any one of claims 1 to 10 .
前記実行部は、前記ユーザの操作に応じて選択された前記アンインストール命令を前記処理実行部へ通知し、
前記処理実行部は、前記実行部から通知された前記アンインストール命令を実行する、
ことを特徴とする請求項11に記載のシステム。
The execution unit notifies the processing execution unit of the uninstall command selected according to the operation of the user.
The process execution unit executes the uninstall command notified by the execution unit.
11. The system according to claim 11 .
前記アプリケーションコマンドは、
前記機器にインストール済みのアプリケーションを一括して削除する命令を示す一括アンインストール命令を含み、
前記実行部は、
前記一括アンインストール命令が選択された場合、前記機器にインストール済みのアプリケーションに対応する前記アンインストール命令を前記処理実行部へ通知する、
ことを特徴とする請求項11または12に記載のシステム。
The application command is
Includes a batch uninstall command that indicates a command to batch delete applications installed on the device.
The execution unit
When the batch uninstall command is selected, the process execution unit is notified of the uninstall command corresponding to the application installed on the device.
The system according to claim 11 or 12 .
前記アプリケーションコマンドは、Webアプリの機能を呼び出すためのショートカットアイコンを作成する命令する示すショートカットアイコン作成命令を含み、
前記実行部は、
前記ユーザの操作に応じて前記ショートカットアイコン作成命令が選択された場合、その選択された前記ショートカットアイコン作成命令を前記処理実行部へ通知し、
前記処理実行部は、前記実行部から通知された前記ショートカットアイコン作成命令を実行する、
ことを特徴とする請求項1乃至13のうちの何れか1項に記載のシステム。
The application command includes a shortcut icon creation command indicating an instruction to create a shortcut icon for calling a function of a web application.
The execution unit
When the shortcut icon creation command is selected in response to the user's operation, the selected shortcut icon creation command is notified to the processing execution unit.
The processing execution unit executes the shortcut icon creation command notified by the execution unit.
The system according to any one of claims 1 to 13 , wherein the system is characterized by the above.
前記画面提供部は、
画像形成装置以外の前記機器から前記画面情報要求を受信した場合は、前記アプリケーションコマンドを含まない前記画面情報を生成し、前記画面情報要求に対する応答として、その生成した前記画面情報を前記機器へ送信する、
ことを特徴とする請求項3に記載のシステム。
The screen providing unit
When the screen information request is received from the device other than the image forming apparatus, the screen information not including the application command is generated, and the generated screen information is transmitted to the device as a response to the screen information request. To do
The system according to claim 3, wherein the system is characterized by the above.
ネットワークを介してサーバに接続される画像形成装置であって、
前記サーバから受信した、前記画像形成装置が利用可能なアプリケーションを示す表示情報と、アプリケーションに関する処理を前記画像形成装置に実行させるアプリケーションコマンドと、を少なくとも含むWebコンテンツデータに基づく画面を表示部に表示する制御を行う表示制御部と、前記画面を介したユーザの操作に応じて前記Webコンテンツデータに含まれる前記アプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応した前記アプリケーションに関する処理の実行を前記画像形成装置に要求する実行部と、を含むWebブラウザと、
前記Webブラウザからの要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する処理実行部と、
を備え
前記アプリケーションコマンドは、アプリケーションをインストールする命令を示すインストール命令を含み、
前記実行部は、
前記表示情報の中に、前記ユーザの操作に応じて選択された前記インストール命令の対象となるアプリケーションの使用権限の認証に用いられるライセンスキーが含まれている場合は、該ライセンスキーと、前記インストール命令とを前記処理実行部へ通知し、
前記表示制御部は、
前記表示情報の中に、該ライセンスキーが含まれていない場合は、該ライセンスキーの入力を促す入力画面を表示する制御を行う、
ことを特徴とする画像形成装置。
An image forming device connected to a server via a network.
A screen based on Web content data including at least display information received from the server indicating an application that can be used by the image forming apparatus and an application command for causing the image forming apparatus to execute processing related to the application is displayed on the display unit. By executing the application command included in the Web content data in response to the user's operation via the screen, the display control unit that controls the application is executed, and the processing related to the application corresponding to the application command is executed. A Web browser including an execution unit required for an image forming apparatus , and
Based on the request from the Web browser, the process execution unit that executes the process related to the application in response to the request, and
Equipped with a,
The application command includes an installation instruction indicating an instruction to install the application.
The execution unit
When the display information includes a license key used for authenticating the usage authority of the application subject to the installation command selected according to the operation of the user, the license key and the installation Notify the processing execution unit of the instruction and
The display control unit
If the license key is not included in the display information, control is performed to display an input screen prompting the input of the license key.
An image forming apparatus characterized in that.
サーバと、ネットワークを介して前記サーバに接続される機器と、を備えるシステムによる情報処理方法であって、
前記サーバは、
前記機器からの要求に応じて、前記機器が利用可能なアプリケーションを示す表示情報と、アプリケーションに関する処理を前記機器に実行させるアプリケーションコマンドと、を少なくとも含むWebコンテンツデータを前記機器に送信する制御を行う制御ステップを含み、
前記機器は、
前記サーバから受信した前記Webコンテンツデータに基づく画面を表示する制御を行う表示制御ステップと、
前記画面を介したユーザの操作に応じて前記Webコンテンツデータに含まれる前記アプリケーションコマンドを実行することによる、該アプリケーションコマンドに対応した前記アプリケーションに関する処理の実行を前記機器に要求する実行ステップと、
前記要求に基づいて、該要求に応じたアプリケーションに関する処理を実行する処理実行ステップと、
を含み、
前記アプリケーションコマンドは、アプリケーションをインストールする命令を示すインストール命令を含み、
前記実行ステップは、
前記表示情報の中に、前記ユーザの操作に応じて選択された前記インストール命令の対象となるアプリケーションの使用権限の認証に用いられるライセンスキーが含まれている場合は、該ライセンスキーと、前記インストール命令と前記機器へ通知し、
前記表示制御ステップは、
前記表示情報の中に、該ライセンスキーが含まれていない場合は、該ライセンスキーの入力を促す入力画面を表示する制御を行う、
ことを特徴とする情報処理方法。
An information processing method by a system including a server and a device connected to the server via a network.
The server
In response to a request from the device, control is performed to transmit Web content data including at least display information indicating an application that can be used by the device and an application command that causes the device to execute processing related to the application. Including control steps
The device is
A display control step that controls the display of a screen based on the Web content data received from the server, and a display control step.
An execution step of requesting the device to execute a process related to the application corresponding to the application command by executing the application command included in the Web content data in response to a user operation via the screen.
Based on the request, a process execution step that executes a process related to the application corresponding to the request, and
Only including,
The application command includes an installation instruction indicating an instruction to install the application.
The execution step is
When the display information includes a license key used for authenticating the usage authority of the application subject to the installation command selected according to the operation of the user, the license key and the installation Notify the command and the device,
The display control step is
If the license key is not included in the display information, control is performed to display an input screen prompting the input of the license key.
An information processing method characterized by this.
ネットワークを介して機器と接続される情報処理装置であって、
前記機器からの要求に応じて、前記機器が利用可能なアプリケーションを示す表示情報と、アプリケーションに関するコマンドを示すアプリケーションコマンドを少なくとも含む画面情報と、を送信する制御を行う制御部を備え
前記制御部は、
画像形成装置から、画面情報を要求する画面情報要求を受信した場合に、前記画面情報を生成し、前記画面情報要求に対する応答として、その生成した前記画面情報を前記画像形成装置へ送信する画面提供部を含み、
前記画面提供部は、
画像形成装置以外の前記機器から前記画面情報要求を受信した場合は、前記アプリケーションコマンドを含まない画面情報を生成し、前記画面情報要求に対する応答として、その生成した画面情報を画像形成装置以外の前記機器へ送信する、
ことを特徴とする情報処理装置。
An information processing device that is connected to a device via a network.
A control unit that controls transmission of display information indicating an application that can be used by the device and screen information including at least an application command indicating a command related to the application is provided in response to a request from the device .
The control unit
When a screen information request requesting screen information is received from the image forming apparatus, the screen information is generated, and as a response to the screen information request, the generated screen information is transmitted to the image forming apparatus. Including part
The screen providing unit
When the screen information request is received from the device other than the image forming apparatus, the screen information not including the application command is generated, and the generated screen information is used as a response to the screen information request. Send to device,
An information processing device characterized by this.
JP2017011429A 2016-02-29 2017-01-25 System, image forming device, information processing method and information processing device Active JP6822172B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/440,632 US10129428B2 (en) 2016-02-29 2017-02-23 System, image forming device, and information processing method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016038026 2016-02-29
JP2016038026 2016-02-29

Publications (2)

Publication Number Publication Date
JP2017157200A JP2017157200A (en) 2017-09-07
JP6822172B2 true JP6822172B2 (en) 2021-01-27

Family

ID=59809954

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017011429A Active JP6822172B2 (en) 2016-02-29 2017-01-25 System, image forming device, information processing method and information processing device

Country Status (1)

Country Link
JP (1) JP6822172B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019160170A (en) * 2018-03-16 2019-09-19 株式会社リコー Information processing system, information processing method, and program
US11494708B2 (en) 2018-09-27 2022-11-08 Ricoh Company, Ltd. Resource reservation system, resource reservation method, and information processing apparatus
JP7139915B2 (en) 2018-11-29 2022-09-21 株式会社リコー Communication system, communication method, management device
JP7187351B2 (en) 2019-02-27 2022-12-12 キヤノン株式会社 DEVICE MANAGEMENT SERVER, ITS CONTROL METHOD AND PROGRAM
US11790053B2 (en) 2019-03-13 2023-10-17 Ricoh Company, Ltd. Information processing system, server, non-transitory computer-readable medium, and method for controlling assignment of license
JP7268505B2 (en) 2019-06-28 2023-05-08 株式会社リコー Resource reservation system, registration terminal, setting method
JP7456167B2 (en) * 2020-01-27 2024-03-27 京セラドキュメントソリューションズ株式会社 Image forming device and communication system
JP7526577B2 (en) * 2020-03-31 2024-08-01 サトーホールディングス株式会社 Information processing system, information processing method, and program

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090307683A1 (en) * 2008-06-08 2009-12-10 Sam Gharabally Network-Based Update of Application Programs
US8745153B2 (en) * 2009-02-09 2014-06-03 Apple Inc. Intelligent download of application programs
JP5388731B2 (en) * 2009-07-14 2014-01-15 キヤノン株式会社 Distribution system, distribution apparatus, and distribution method
KR102052605B1 (en) * 2012-11-13 2019-12-06 네이버 주식회사 Method and system of installing shortcut through mobile application
JP6241635B2 (en) * 2014-05-23 2017-12-06 株式会社コナミデジタルエンタテインメント Management device, user terminal, management device program, and terminal program

Also Published As

Publication number Publication date
JP2017157200A (en) 2017-09-07

Similar Documents

Publication Publication Date Title
JP6822172B2 (en) System, image forming device, information processing method and information processing device
JP6881639B2 (en) System, system method and image forming apparatus
US10129428B2 (en) System, image forming device, and information processing method
JP6720519B2 (en) Information processing device, program, and information processing system
JP6859870B2 (en) Server, system and information processing method
US20200409685A1 (en) Electronic apparatus, information processing system, and information processing method
JP6547291B2 (en) INFORMATION PROCESSING SYSTEM AND INFORMATION PROCESSING METHOD
JP6645341B2 (en) Information processing system, information processing apparatus, and information processing method
JP6554905B2 (en) Information processing apparatus, information processing method, and program
CN107077544B (en) Information processing system, information processing apparatus, and information processing method
US10025578B2 (en) Information processing system and method on a client server environment for software download
JP6786865B2 (en) Information processing system and information processing method
JP2017122963A (en) Information processing device, information processing method, program, and information processing system
JP6885124B2 (en) Information processing system, information processing device and information processing method
JP6819386B2 (en) Image processing equipment, systems and information processing methods
JP6648523B2 (en) Information processing apparatus, program, information processing system, and information processing method
JP6988930B2 (en) Information processing equipment, programs, information processing systems and information processing methods
JP6790482B2 (en) Information processing system, information processing device, information processing method and program
JP6714814B2 (en) Information processing system, information processing apparatus, and information processing method
JP2017120582A (en) System, information processing method, information processing device, and program
JP6750290B2 (en) Image forming apparatus, information processing method and program
JP6760448B2 (en) Information processing equipment, information processing methods and programs
JP7070621B2 (en) Information processing systems, information processing methods and programs
JP2017199216A (en) Information processing system, information processing device, information processing method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191105

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200813

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201006

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201221

R151 Written notification of patent or utility model registration

Ref document number: 6822172

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151