JP6365247B2 - Information processing apparatus, information processing system, and information processing method - Google Patents

Information processing apparatus, information processing system, and information processing method Download PDF

Info

Publication number
JP6365247B2
JP6365247B2 JP2014225208A JP2014225208A JP6365247B2 JP 6365247 B2 JP6365247 B2 JP 6365247B2 JP 2014225208 A JP2014225208 A JP 2014225208A JP 2014225208 A JP2014225208 A JP 2014225208A JP 6365247 B2 JP6365247 B2 JP 6365247B2
Authority
JP
Japan
Prior art keywords
api
service
processing apparatus
function
request
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
JP2014225208A
Other languages
Japanese (ja)
Other versions
JP2016091311A (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 JP2014225208A priority Critical patent/JP6365247B2/en
Publication of JP2016091311A publication Critical patent/JP2016091311A/en
Application granted granted Critical
Publication of JP6365247B2 publication Critical patent/JP6365247B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、情報処理装置、情報処理システム、及び情報処理方法に関する。   The present invention relates to an information processing apparatus, an information processing system, and an information processing method.

MFP(Multifunction Peripheral)等の画像形成装置の機能をPC等から利用できるAPI(Application Program Interface)を備えたREST(Representational State Transfer)形式のフレームワークが既に知られている。   A REST (Representational State Transfer) type framework having an API (Application Program Interface) that can use functions of an image forming apparatus such as an MFP (Multifunction Peripheral) from a PC or the like is already known.

また、自身の機能をネットワークに接続されたPC等から利用するためのAPIを備えた情報処理装置が既に知られている(例えば特許文献1参照)。   Further, an information processing apparatus having an API for using its function from a PC or the like connected to a network is already known (see, for example, Patent Document 1).

しかしながら、上記の従来技術においては、情報処理装置の起動時に、例えばAPIを用いてPC等から受け取ることができるデータ量の上限等を登録し、起動後に変更することができなかった。したがって、例えばAPIを用いてPC等から受け取ることができるデータ量の上限等を変更したい場合、情報処理装置の再起動が必要であった。   However, in the above prior art, when the information processing apparatus is activated, the upper limit of the amount of data that can be received from a PC or the like using, for example, an API is registered and cannot be changed after activation. Therefore, for example, when it is desired to change the upper limit of the amount of data that can be received from a PC or the like using an API, it is necessary to restart the information processing apparatus.

本発明の一実施形態は、上記の点に鑑みてなされたもので、APIにより提供される機能の情報を動的に変更することを目的とする。   One embodiment of the present invention has been made in view of the above points, and an object thereof is to dynamically change function information provided by an API.

上記目的を達成するため、本発明の一実施形態は、ネットワークを介して接続された機器からの要求に応じて所定の機能を利用したサービスを提供する情報処理装置であって、前記サービスと該サービスが利用する機能毎に、前記機器から前記機能を利用したサービスの要求を受け付けるためのAPIを示す情報と、該APIを用いて提供される機能に関する情報とを関連付けて所定の記憶領域に記憶させるAPI管理手段と、前記機器から前記要求を前記API毎に受け付けるインタフェース手段と、前記インタフェース手段により前記要求を受け付けると、前記機能に関する情報に基づき、前記要求に対応するサービスの機能を実行させて、該サービスを提供するサービス提供手段と、前記機器からの要求又は前記情報処理装置の状態に応じて前記所定の記憶領域に記憶されている前記機能に関する情報を動的に変更する変更手段と、を有することを特徴とする。   In order to achieve the above object, an embodiment of the present invention provides an information processing apparatus that provides a service using a predetermined function in response to a request from a device connected via a network, the service and the service For each function used by a service, information indicating an API for accepting a request for a service using the function from the device and information regarding the function provided using the API are stored in a predetermined storage area in association with each other. An API management means for receiving the request, and an interface means for receiving the request from the device for each API. When the request is received by the interface means, the function of the service corresponding to the request is executed based on the information on the function. A service providing means for providing the service, a request from the device, or a state of the information processing apparatus. Flip and having a changing means for dynamically changing the information relating to the functions stored in the predetermined storage area.

本発明の一実施形態によれば、APIにより提供される機能の情報を動的に変更することができる。   According to an embodiment of the present invention, the function information provided by the API can be dynamically changed.

第1の実施形態に係る画像処理システムの一例の構成図である。1 is a configuration diagram of an example of an image processing system according to a first embodiment. 第1の実施形態に係る画像処理装置の一例のハードウェア構成図である。1 is a hardware configuration diagram of an example of an image processing apparatus according to a first embodiment. 第1の実施形態に係るPCの一例のハードウェア構成図である。It is a hardware block diagram of an example of PC concerning 1st Embodiment. 第1の実施形態に係る画像処理装置の一例の機能構成図である。It is a functional lineblock diagram of an example of an image processing device concerning a 1st embodiment. 第1の実施形態に係る画像処理装置の処理の概要の一例を説明するための図である。It is a figure for demonstrating an example of the outline | summary of a process of the image processing apparatus which concerns on 1st Embodiment. リソース情報の一例の構成図である。It is a block diagram of an example of resource information. 第1の実施形態に係るサービス提供処理の一例のシーケンス図である。It is a sequence diagram of an example of the service provision process which concerns on 1st Embodiment. リクエスト及びレスポンスの一例を説明するための図である。It is a figure for demonstrating an example of a request and a response. URLの一例を説明するための図である。It is a figure for demonstrating an example of URL. 第1の実施形態に係るリソース情報の追加/削除処理の一例のシーケンス図である。It is a sequence diagram of an example of an addition / deletion process of resource information according to the first embodiment. 第1の実施形態に係るアプリケーションのインストール処理の一例のシーケンス図である。It is a sequence diagram of an example of an application installation process according to the first embodiment. 第1の実施形態に係るアプリケーションのアンインストール処理の一例のシーケンス図である。It is a sequence diagram of an example of an application uninstall process according to the first embodiment. 第1の実施形態に係るリソース情報の変更処理の一例のシーケンス図である。It is a sequence diagram of an example of a resource information change process according to the first embodiment. リソース情報の変更の一例を説明するための図である。It is a figure for demonstrating an example of a change of resource information. 第2の実施形態に係る画像処理装置の一例の機能構成図である。It is a function block diagram of an example of the image processing apparatus which concerns on 2nd Embodiment. 第2の実施形態に係る画像処理装置の処理の概要の一例を説明するための図である。It is a figure for demonstrating an example of the outline | summary of a process of the image processing apparatus which concerns on 2nd Embodiment. 第2の実施形態に係るリソース情報の追加/削除処理の一例のシーケンス図である。It is a sequence diagram of an example of an addition / deletion process of resource information according to the second embodiment. 第2の実施形態に係るAPIリストの表示処理の一例のシーケンス図である。It is a sequence diagram of an example of a display process of an API list according to the second embodiment. APIリストの一例を説明するための図である。It is a figure for demonstrating an example of an API list. 第2の実施形態に係るリソース情報の取得処理の一例のフローチャートである。It is a flowchart of an example of the acquisition process of the resource information which concerns on 2nd Embodiment. 第2の実施形態に係るリソース情報の取得処理の他の例のフローチャートである。It is a flowchart of the other example of the acquisition process of the resource information which concerns on 2nd Embodiment.

次に、本発明の実施の形態について、詳細に説明する。なお、以降では、本発明に係る情報処理装置を、MFP等の画像処理装置に適用した場合の実施形態について説明する。ただし、本発明に係る情報処理装置の適用先は、これに限定されるものではなく、画像処理装置以外に適用してもよい。   Next, embodiments of the present invention will be described in detail. In the following, an embodiment in which the information processing apparatus according to the present invention is applied to an image processing apparatus such as an MFP will be described. However, the application destination of the information processing apparatus according to the present invention is not limited to this and may be applied to other than the image processing apparatus.

[第1の実施形態]
<システム構成>
図1は、第1の実施形態に係る画像処理システムの一例の構成図である。図1の画像処理システム1は、1台以上の画像処理装置10と、1台以上のPC(パーソナルコンピュータ)20とが例えばLAN(Local Area Network)等のネットワークN1に有線や無線で接続されている。
[First Embodiment]
<System configuration>
FIG. 1 is a configuration diagram of an example of an image processing system according to the first embodiment. In the image processing system 1 of FIG. 1, one or more image processing apparatuses 10 and one or more PCs (personal computers) 20 are connected to a network N1 such as a LAN (Local Area Network) by wire or wirelessly. Yes.

画像処理装置10は、情報処理装置の一例である。画像処理装置10は、PC20や他の画像処理装置10等の機器からの要求に応じて、コピー、ファックス、プリンタ、スキャナ等の画像処理に係るサービスを提供するMFPである。ただし、画像処理装置10はMFPに限定されるものではなく、他の機器に対して各種サービスを提供することができる装置であればよい。   The image processing apparatus 10 is an example of an information processing apparatus. The image processing apparatus 10 is an MFP that provides services related to image processing such as copying, faxing, printers, and scanners in response to requests from devices such as the PC 20 and other image processing apparatuses 10. However, the image processing apparatus 10 is not limited to the MFP, and may be any apparatus that can provide various services to other devices.

また、画像処理装置10は、PC20や他の画像処理装置10等の機器が上記サービスを利用するためのAPIを有する。画像処理装置10は、上記サービスが利用する機能を追加・削除することができるとともに、サービスを提供するためのアプリケーションをインストール又はアンインストールすることにより、サービスを追加・削除することができる。   Further, the image processing apparatus 10 has an API for devices such as the PC 20 and other image processing apparatuses 10 to use the service. The image processing apparatus 10 can add / delete functions used by the service, and can add / delete services by installing or uninstalling an application for providing the service.

例えば、画像処理装置10は、コピーサービスを提供するコピーアプリケーションの
インストール又はアンインストールにより、コピーサービスの追加又は削除を行うことができる。また、例えば、コピーサービスが利用する機能(例えば両面コピー機能、2in1コピー機能等)の追加又は削除を行うことができる。
For example, the image processing apparatus 10 can add or delete a copy service by installing or uninstalling a copy application that provides the copy service. Further, for example, functions used by the copy service (for example, double-sided copy function, 2-in-1 copy function, etc.) can be added or deleted.

PC20は、機器の一例である。PC20は、PC(パーソナルコンピュータ)に限られない。PC20は、例えば、タブレット端末、スマートフォンや携帯電話、PDA等の携帯情報端末、電子ホワイトボード等の表示装置、プロジェクタ等の投影装置、画像処理装置10と連携したサービスを提供するためのクラウドサーバ等でもよい。PC20は、画像処理装置10が有するAPIを利用することで、画像処理に係るサービスの提供を要求することができる。   The PC 20 is an example of a device. The PC 20 is not limited to a PC (personal computer). The PC 20 is, for example, a tablet terminal, a smart phone or a mobile phone, a personal digital assistant such as a PDA, a display device such as an electronic whiteboard, a projection device such as a projector, a cloud server for providing a service in cooperation with the image processing device 10, etc. But you can. The PC 20 can request the provision of services related to image processing by using the API of the image processing apparatus 10.

なお、本実施形態に係る画像処理装置10は、図1の画像処理システムのように、当該画像処理装置10以外の機器からサービスの要求を受ける画像処理装置10に限らない。例えば、画像処理装置10が、互いに独立したOS(Operating System)を搭載した画像処理装置本体と操作部とが有線や無線で接続された構成となっており、画像処理装置本体が操作部からサービスの提供要求を受けるものであってもよい。つまり、画像処理装置本体が、ネットワークを介して接続された機器である操作部からサービスの提供要求を受けるものである場合、この画像処理装置本体を本実施形態における「画像処理装置10」として捉えることもできる。   The image processing apparatus 10 according to the present embodiment is not limited to the image processing apparatus 10 that receives a service request from a device other than the image processing apparatus 10 as in the image processing system of FIG. For example, the image processing apparatus 10 has a configuration in which an image processing apparatus body equipped with an OS (Operating System) independent of each other and an operation unit are connected by wire or wirelessly, and the image processing apparatus body is serviced from the operation unit. You may receive a request for provision. That is, when the image processing apparatus main body receives a service provision request from an operation unit that is a device connected via a network, the image processing apparatus main body is regarded as the “image processing apparatus 10” in the present embodiment. You can also.

<ハードウェア構成>
《画像処理装置》
画像処理装置10は、例えば図2に示すようなハードウェア構成により実現される。図2は、第1の実施形態に係る画像処理装置の一例のハードウェア構成図である。
<Hardware configuration>
<Image processing device>
The image processing apparatus 10 is realized by a hardware configuration as shown in FIG. FIG. 2 is a hardware configuration diagram of an example of the image processing apparatus according to the first embodiment.

図2に示すように、画像処理装置10は操作部100と本体部110とを有する。   As illustrated in FIG. 2, the image processing apparatus 10 includes an operation unit 100 and a main body 110.

操作部100は、LCD(Liquid Crystal Display)デバイスやタッチパネル、ハードキー等を備えるユーザインタフェースであり、画像処理装置10に対して、ユーザが各種操作を行う。   The operation unit 100 is a user interface including an LCD (Liquid Crystal Display) device, a touch panel, a hard key, and the like, and the user performs various operations on the image processing apparatus 10.

本体部110は、コントローラ120と、ファックス制御ユニット140と、エンジン群150とを有する。さらに、ファックス制御ユニット140は、G3規格対応ユニット141と、G4規格対応ユニット142とを有する。また、エンジン群150は、プロッタエンジン151と、スキャナエンジン152と、その他のハードウェアリソース153とを有する。   The main body 110 includes a controller 120, a fax control unit 140, and an engine group 150. Further, the fax control unit 140 includes a G3 standard compatible unit 141 and a G4 standard compatible unit 142. The engine group 150 includes a plotter engine 151, a scanner engine 152, and other hardware resources 153.

コントローラ120は、CPU121と、ASIC122と、HDD(Hard Disk Drive)123と、システムメモリ(MEM−P)124と、ローカルメモリ(MEM−C)125と、ノースブリッジ(以下、NBと表す)126とを有する。また、シリアルバス127と、NIC(Network Interface Card)128と、USBデバイス129とを有する。さらに、IEEE802.11bデバイス130と、IEEE1394デバイス131と、USBホスト132と、メモリカードI/F133とを有する。   The controller 120 includes a CPU 121, an ASIC 122, an HDD (Hard Disk Drive) 123, a system memory (MEM-P) 124, a local memory (MEM-C) 125, a north bridge (hereinafter referred to as NB) 126, Have In addition, a serial bus 127, a NIC (Network Interface Card) 128, and a USB device 129 are included. Furthermore, it has an IEEE 802.11b device 130, an IEEE 1394 device 131, a USB host 132, and a memory card I / F 133.

また、シリアルバス127、NIC128、USBデバイス129、IEEE802.11bデバイス130、IEEE1394デバイス131、USBホスト132、及びメモリカードI/F133は、NB126にPCIバスを介して接続されている。   The serial bus 127, NIC 128, USB device 129, IEEE 802.11b device 130, IEEE 1394 device 131, USB host 132, and memory card I / F 133 are connected to the NB 126 via the PCI bus.

なお、コントローラ120において、ASIC122には、ローカルメモリ125、HDD123等が接続されている。また、CPU121とASIC122とは、CPUチップセットのNB126を介して接続されている。さらに、ファックス制御ユニット140及びエンジン群150は、ASIC122にPCIバスを介して接続されている。   In the controller 120, a local memory 125, an HDD 123, and the like are connected to the ASIC 122. Further, the CPU 121 and the ASIC 122 are connected via the NB 126 of the CPU chip set. Further, the fax control unit 140 and the engine group 150 are connected to the ASIC 122 via a PCI bus.

CPU121は、画像処理装置10の全体を制御するものである。CPU121は、各種サービスを起動して実行する。   The CPU 121 controls the entire image processing apparatus 10. The CPU 121 activates and executes various services.

NB126は各要素を接続するためのブリッジである。具体的には、CPU121、システムメモリ124、ASIC122、シリアルバス127、NIC128、USBデバイス129を接続する。さらに、IEEE802.11bデバイス130、IEEE1394デバイス131、USBホスト132、及びメモリカードI/F133を接続する。   The NB 126 is a bridge for connecting each element. Specifically, the CPU 121, the system memory 124, the ASIC 122, the serial bus 127, the NIC 128, and the USB device 129 are connected. Further, the IEEE802.11b device 130, the IEEE1394 device 131, the USB host 132, and the memory card I / F 133 are connected.

システムメモリ124は、画像処理装置10の描画用メモリ等として用いるメモリ(記憶装置)である。また、ローカルメモリ125は、コピー用画像バッファ、符号バッファ等として用いるメモリ(記憶装置)である。   The system memory 124 is a memory (storage device) used as a drawing memory or the like of the image processing apparatus 10. The local memory 125 is a memory (storage device) used as a copy image buffer, a code buffer, or the like.

ASIC122は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)である。また、HDD123は、各種情報を蓄積するためのストレージ(記憶装置)である。なお、HDD123に蓄積される情報には、例えば、ファクシミリ送信のための宛先データや電子メールの宛先データ(すなわち、アドレス帳データ)等が含まれる。また、ファクシミリ送信や電子メール送信等の送信履歴を記憶するための履歴データや、プリントジョブのデータである蓄積画像データや蓄積文書データが含まれる。その他、例えば、課金データやユーザ認証を行うためのユーザ認証情報、各種プログラム、フォントデータ、フォームデータ等が含まれる。   The ASIC 122 is an IC (Integrated Circuit) for image processing having hardware elements for image processing. The HDD 123 is a storage (storage device) for storing various types of information. The information stored in the HDD 123 includes, for example, destination data for facsimile transmission, e-mail destination data (that is, address book data), and the like. Also included is history data for storing a transmission history such as facsimile transmission and e-mail transmission, and stored image data and stored document data which are print job data. In addition, for example, accounting data, user authentication information for performing user authentication, various programs, font data, form data, and the like are included.

シリアルバス127、NIC128、USBデバイス129、IEEE802.11bデバイス130、IEEE1394デバイス131、USBホスト132、メモリカードI/F133は、各々が対応する規格の可搬型記憶装置と接続するインタフェースである。例えば、図2に示すように、USBホスト132には、USBメモリ161を接続することができ、メモリカードI/F133には、メモリカード162を接続することができる。   The serial bus 127, NIC 128, USB device 129, IEEE 802.11b device 130, IEEE 1394 device 131, USB host 132, and memory card I / F 133 are interfaces that connect to portable storage devices of the corresponding standards. For example, as shown in FIG. 2, a USB memory 161 can be connected to the USB host 132, and a memory card 162 can be connected to the memory card I / F 133.

《PC》
PC20は、例えば図3に示すようなハードウェア構成により実現される。図3は、第1の実施形態に係るPCの一例のハードウェア構成図である。
<< PC >>
The PC 20 is realized by a hardware configuration as shown in FIG. 3, for example. FIG. 3 is a hardware configuration diagram of an example of the PC according to the first embodiment.

図3に示したPC20は、入力装置201と、表示装置202と、外部I/F203と、RAM(Random Access Memory)204と、ROM(Read Only Memory)205と、CPU206と、通信I/F207と、HDD208とを備える。また、これらの各装置はそれぞれがバスBで相互に接続されている。   3 includes an input device 201, a display device 202, an external I / F 203, a RAM (Random Access Memory) 204, a ROM (Read Only Memory) 205, a CPU 206, a communication I / F 207, and the like. HDD208. These devices are connected to each other by a bus B.

入力装置201は、キーボードやマウス、タッチパネル等を含み、PC20に各操作信号を入力するのに用いられる。表示装置202は、LCDやCRT(Cathode Ray Tube)等を含み、PC20による処理結果を表示する。   The input device 201 includes a keyboard, a mouse, a touch panel, and the like, and is used to input each operation signal to the PC 20. The display device 202 includes an LCD, a CRT (Cathode Ray Tube), and the like, and displays a processing result by the PC 20.

外部I/F203は、外部装置とのインタフェースである。外部装置には、記録媒体203a等がある。記録媒体203aには、例えば、画像処理装置10から提供されるサービスを用いた各種処理(例えばコピー処理)の対象となる各種データ等を格納することができる。PC20は外部I/F203を介して、記録媒体203aの読み取り及び/又は書き込みを行うことができる。記録媒体203aにはUSBメモリ、SDメモリカード(SD Memory card)、DVD(Digital Versatile Disk)、CD(Compact Disk)、フレキシブルディスク等の記録媒体を用いることができる。   The external I / F 203 is an interface with an external device. The external device includes a recording medium 203a. The recording medium 203a can store, for example, various data to be subjected to various processing (for example, copy processing) using services provided from the image processing apparatus 10. The PC 20 can read and / or write the recording medium 203a via the external I / F 203. As the recording medium 203a, a recording medium such as a USB memory, an SD memory card, a DVD (Digital Versatile Disk), a CD (Compact Disk), or a flexible disk can be used.

RAM204は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。   The RAM 204 is a volatile semiconductor memory (storage device) that temporarily stores programs and data.

ROM205は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。ROM205には、PC20の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定等のプログラムやデータが格納されている。   The ROM 205 is a nonvolatile semiconductor memory (storage device) that can retain programs and data even when the power is turned off. The ROM 205 stores programs and data such as BIOS (Basic Input / Output System), OS settings, and network settings that are executed when the PC 20 is started up.

CPU206は、ROM205やHDD208等の記憶装置からプログラムやデータをRAM204上に読み出し、処理を実行することで、PC20全体の制御や機能を実現する演算装置である。   The CPU 206 is an arithmetic device that realizes control and functions of the entire PC 20 by reading a program and data from a storage device such as the ROM 205 and the HDD 208 onto the RAM 204 and executing processing.

通信I/F装置207は、ネットワークに接続するインタフェースである。これにより、PC20は通信I/F装置207を介して画像処理装置10等とデータ通信を行うことができる。   The communication I / F device 207 is an interface connected to a network. Thereby, the PC 20 can perform data communication with the image processing apparatus 10 and the like via the communication I / F device 207.

HDD208は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、例えば、PC20全体を制御する基本ソフトウェアであるOSや、OS上において各種機能を提供するアプリケーションソフトウェア等がある。HDD208は格納しているプログラムやデータを所定のファイルシステム及び/又はDB(Data Base)等により管理している。   The HDD 208 is a non-volatile storage device that stores programs and data. The stored programs and data include, for example, an OS that is basic software for controlling the entire PC 20, application software that provides various functions on the OS, and the like. The HDD 208 manages stored programs and data using a predetermined file system and / or DB (Data Base).

本実施形態に係る画像処理装置10及びPC20は、例えば上記のハードウェア構成を有することにより、後述するような各種処理を実現することができる。   For example, the image processing apparatus 10 and the PC 20 according to the present embodiment have the above-described hardware configuration, and can implement various processes as described below.

<機能構成>
次に、第1の実施形態に係る画像処理装置10の機能構成について説明する。図4は、第1の実施形態に係る画像処理装置の一例の機能構成図である。図4に示すように、画像処理装置10は、大別すると、ソフトウェア群401と、フレームワーク420とに分けられる。
<Functional configuration>
Next, the functional configuration of the image processing apparatus 10 according to the first embodiment will be described. FIG. 4 is a functional configuration diagram of an example of the image processing apparatus according to the first embodiment. As shown in FIG. 4, the image processing apparatus 10 is roughly divided into a software group 401 and a framework 420.

ソフトウェア群401は、アプリケーション層402とサービスモジュール層403とを有する。   The software group 401 includes an application layer 402 and a service module layer 403.

アプリケーション層402は、コピー、ファックス、プリンタ、及びスキャナ等の画像処理に係るサービスとして、それぞれ固有の処理を行うプログラムを有する。ここで、図4に示すアプリケーション層402には、例えば、コピー用のアプリケーションであるコピーアプリケーション431、ファックス用のアプリケーションであるファックスアプリケーション432、プリンタ用のアプリケーションであるプリンタアプリケーション433、スキャナ用のアプリケーションであるスキャナアプリケーション434等が含まれる。   The application layer 402 includes programs for performing unique processes as services relating to image processing such as copying, faxing, printers, and scanners. Here, the application layer 402 shown in FIG. 4 includes, for example, a copy application 431 that is a copy application, a fax application 432 that is a fax application, a printer application 433 that is a printer application, and a scanner application. A scanner application 434 and the like are included.

サービスモジュール層403は、アプリケーション層402の各アプリケーションからの処理要求を解釈して共通の機能や制御を行うモジュールを有する。また、サービスモジュール層403は、アプリケーション層402の各アプリケーションからの処理要求を解釈して、例えばエンジン群150等のハードウェア資源の獲得要求を発生し、獲得したハードウェア資源の管理等を行うモジュールを有する。これらのサービスモジュール層403の各モジュールは、予め定義された関数等によりアプリケーション層402からの処理要求を受信する内部API440を介して、アプリケーション層402の各アプリケーションから利用することができる。   The service module layer 403 includes a module that interprets processing requests from each application in the application layer 402 and performs common functions and control. The service module layer 403 interprets processing requests from each application in the application layer 402, generates a request for acquiring hardware resources such as the engine group 150, and manages the acquired hardware resources. Have Each module of the service module layer 403 can be used from each application of the application layer 402 via the internal API 440 that receives a processing request from the application layer 402 by a predefined function or the like.

ここで、図4に示すサービスモジュール層403には、例えば、システム制御サービス451、ファックス制御サービス452、エンジン制御サービス453、メモリ制御サービス454、ネットワーク制御サービス455、ログ制御サービス456、電源制御サービス457、認証制御サービス458、アドレス帳管理サービス459等が含まれる。   Here, the service module layer 403 shown in FIG. 4 includes, for example, a system control service 451, a fax control service 452, an engine control service 453, a memory control service 454, a network control service 455, a log control service 456, and a power control service 457. Authentication control service 458, address book management service 459, and the like.

ここで、ソフトウェア群401は、OS460上において実行される。OS460は、アプリケーション層402及びサービスモジュール層403のソフトウェア群401のそれぞれのソフトウェアをプロセスとして並列実行する。   Here, the software group 401 is executed on the OS 460. The OS 460 executes the software of the software group 401 of the application layer 402 and the service module layer 403 in parallel as processes.

なお、ソフトウェア群401が有する各種サービスは、それぞれ1以上の機能を有している。この機能のことをリソースとも称する。例えばコピーアプリケーション431は、片面コピーを行うためのリソース、両面コピーを行うためのリソース、2in1コピーを行うためのリソース等を有している。また、例えばアドレス帳管理サービス459は、アドレス帳のアドレスを全件取得するためのリソース、アドレス帳のアドレスを1件取得するためのリソース、アドレス帳の状態を取得するためのリソース等を有している。このように、ソフトウェア群401が有する各種サービスは、リソースとも称される1以上の機能をそれぞれ有している。   Note that the various services included in the software group 401 each have one or more functions. This function is also called a resource. For example, the copy application 431 has a resource for performing single-sided copying, a resource for performing double-sided copying, a resource for performing 2-in-1 copying, and the like. Further, for example, the address book management service 459 has a resource for acquiring all addresses in the address book, a resource for acquiring one address in the address book, a resource for acquiring the status of the address book, and the like. ing. As described above, the various services included in the software group 401 each have one or more functions that are also referred to as resources.

PC20や他の画像処理装置10は、ソフトウェア群401によって実現される各種サービスを、PC20や他の画像処理装置10からの処理要求を受信するWebAPI410を介して利用することができる。   The PC 20 and other image processing apparatuses 10 can use various services realized by the software group 401 via the Web API 410 that receives processing requests from the PC 20 and other image processing apparatuses 10.

フレームワーク420は、WebAPI410が受信したPC20や他の画像処理装置10からの処理要求を解釈し、ソフトウェア群401の各種サービスに対して処理要求を行う。フレームワーク420は、要求管理部421、API制御部422、API管理部423、結果応答部424、API情報変更部425を有する。   The framework 420 interprets processing requests from the PC 20 and other image processing apparatuses 10 received by the Web API 410 and makes processing requests to various services of the software group 401. The framework 420 includes a request management unit 421, an API control unit 422, an API management unit 423, a result response unit 424, and an API information change unit 425.

WebAPI410は、例えば外部の機器(PC20や他の画像処理装置10等)が画像処理装置10が提供する各種サービスを利用するためのAPIの集まりである。画像処理装置10は、WebAPI410に含まれるAPI毎に、外部の機器からの要求を受け付ける。   The Web API 410 is a collection of APIs for using various services provided by the image processing apparatus 10 by, for example, an external device (such as the PC 20 or another image processing apparatus 10). The image processing apparatus 10 receives a request from an external device for each API included in the Web API 410.

要求管理部421は、例えばCPU121等により実現され、WebAPI410から処理要求を受信し、API制御部422に処理を依頼する。また、要求管理部421は、結果応答部424から処理結果を受信し、WebAPI410に処理結果を送信する。   The request management unit 421 is realized by, for example, the CPU 121 or the like, receives a processing request from the Web API 410, and requests the API control unit 422 to perform processing. Further, the request management unit 421 receives the processing result from the result response unit 424 and transmits the processing result to the Web API 410.

API制御部422は、例えばCPU121等により実現され、API管理部423からリソース情報を取得し、ソフトウェア群401の各種サービスに処理を要求する。ここで、リソース情報とは、ソフトウェア群401の各アプリケーションや各モジュールが、要求された機能を実行するために利用するリソース(機能)に関する情報である。リソース情報の詳細については後述する。   The API control unit 422 is realized by, for example, the CPU 121 and the like, acquires resource information from the API management unit 423, and requests processing of various services of the software group 401. Here, the resource information is information on resources (functions) used by each application and each module of the software group 401 to execute a requested function. Details of the resource information will be described later.

API管理部423は、例えばCPU121等により実現され、リソース情報の登録要求があった場合、リソース情報を画像処理装置10のフレームワーク420の例えばHDD123の所定の記憶領域に記憶する。また、API管理部423は、リソース情報の取得要求があった場合、リソース情報を画像処理装置10のフレームワーク420の所定の記憶領域から取得する。   The API management unit 423 is realized by the CPU 121 or the like, for example, and stores the resource information in a predetermined storage area of, for example, the HDD 123 of the framework 420 of the image processing apparatus 10 when there is a resource information registration request. In addition, when there is a request for acquiring resource information, the API management unit 423 acquires the resource information from a predetermined storage area of the framework 420 of the image processing apparatus 10.

結果応答部424は、例えばCPU121等により実現され、ソフトウェア群401の各アプリケーションや各モジュールが実行した機能の処理結果を作成し、要求管理部421に送信する。   The result response unit 424 is realized by the CPU 121 or the like, for example, and creates a processing result of the function executed by each application or each module of the software group 401 and transmits it to the request management unit 421.

API情報変更部425は、例えばCPU121等により実現され、フレームワーク420の所定の記憶領域に記憶されているリソース情報を変更する。   The API information changing unit 425 is realized by the CPU 121, for example, and changes resource information stored in a predetermined storage area of the framework 420.

<処理の概要>
次に、第1の実施形態に係る画像処理装置の処理の概要について説明する。図5は、第1の実施形態に係る画像処理装置の処理の概要の一例を説明するための図である。
<Outline of processing>
Next, an outline of processing of the image processing apparatus according to the first embodiment will be described. FIG. 5 is a diagram for explaining an example of an outline of processing of the image processing apparatus according to the first embodiment.

図5(a)は、例えばPC20や他の画像処理装置10等からサービスの提供要求あった場合の画像処理装置10の処理の概要の一例を説明するための図である。   FIG. 5A is a diagram for explaining an example of an outline of processing of the image processing apparatus 10 when a service provision request is received from the PC 20 or another image processing apparatus 10, for example.

まず、画像処理装置10のWebAPI410は、例えばPC20や他の画像処理装置10等から、サービスと、このサービスが利用するリソース(機能)とを指定したHTTP(HyperText Transfer Protocol)リクエストを受信する。サービスは、ソフトウェア群401の各アプリケーションや各モジュールのことであり、例えばファックスアプリケーション432やアドレス帳管理サービス459である。リソースは、ソフトウェア群401の各アプリケーションや各モジュールが実行する機能のことであり、例えばアドレス帳管理サービス459においてアドレス帳のアドレスを全件取得する機能である。ユーザが例えばファックス操作においてファックスの送信先の候補となるアドレスの一覧を取得したい場合、サービスとしてアドレス帳管理サービス459、リソースとしてアドレス帳一覧を取得する機能(アドレス帳の取得(全件))を指定することでアドレス帳のアドレス一覧を取得することができる。   First, the Web API 410 of the image processing apparatus 10 receives an HTTP (HyperText Transfer Protocol) request specifying a service and a resource (function) used by the service, for example, from the PC 20 or another image processing apparatus 10. The service refers to each application or each module of the software group 401, such as a fax application 432 or an address book management service 459. The resource is a function executed by each application or each module of the software group 401. For example, the address book management service 459 acquires all addresses in the address book. For example, when a user wants to acquire a list of addresses that are candidates for a fax destination in a fax operation, an address book management service 459 as a service and a function to acquire an address book list as a resource (acquisition of address book (all cases)) By specifying, you can get a list of addresses in the address book.

次に、要求管理部421は、WebAPI410から呼び出されるとHTTPリクエストを受け取り、API制御部422に処理要求を行う。そして、API制御部422は、API管理部423を介してリソース情報を取得し、HTTPリクエストにより呼び出されたAPI(WebAPI410)を特定する。なお、APIの特定には、リソース情報に含まれるURLで判断する。リソース情報の詳細については後述する。   Next, when called from the Web API 410, the request management unit 421 receives an HTTP request and makes a processing request to the API control unit 422. Then, the API control unit 422 acquires resource information via the API management unit 423, and specifies the API (WebAPI 410) called by the HTTP request. Note that the API is determined by the URL included in the resource information. Details of the resource information will be described later.

API制御部422は、該当のサービスに対して、リソースを指定(図5(a)の例では、サービス1に対してリソースAを指定)して操作要求を行う。そして、サービス1は、リソースAに対応する処理を実行し、処理結果の応答要求を結果応答部424に行う。   The API control unit 422 makes an operation request by specifying a resource for the corresponding service (in the example of FIG. 5A, the resource A is specified for the service 1). Then, the service 1 executes processing corresponding to the resource A, and sends a processing result response request to the result response unit 424.

そして、結果応答部424は、HTTPレスポンスを作成し、要求管理部421に送信要求を行う。要求管理部421は、結果応答部424からHTTPレスポンスを受け取ると、WebAPI410を介してHTTPリクエストの送信元のPC20等にHTTPレスポンスを送信する。   Then, the result response unit 424 creates an HTTP response and makes a transmission request to the request management unit 421. Upon receiving the HTTP response from the result response unit 424, the request management unit 421 transmits the HTTP response to the PC 20 or the like that is the transmission source of the HTTP request via the Web API 410.

次に、図5(b)は、画像処理装置10にサービスやリソースの登録をする場合の画像処理装置10の処理の概要の一例を説明するための図である。図5(b)では、画像処理装置10に対してリソースCを有するサービス2を新たに登録する場合について説明する。   Next, FIG. 5B is a diagram for explaining an example of an outline of processing of the image processing apparatus 10 when a service or resource is registered in the image processing apparatus 10. FIG. 5B illustrates a case where a service 2 having a resource C is newly registered in the image processing apparatus 10.

ユーザは、例えばネットワークN1等を介して、リソースCを有するサービス2を画像処理装置10にインストールする。すると、API管理部423は、リソースCのリソース情報をフレームワーク420の所定の記憶領域に登録する。リソース情報を登録することで、このリソース情報に含まれるURLをPC20や他の画像処理装置10等から利用可能なAPIとして提供することができる。これにより、画像処理装置10に新たにサービスやリソースが追加された場合、追加されたリソースに関するリソース情報をAPI管理部423を介して所定の記憶領域に登録することで、外部から利用可能なAPIを提供することができる。   The user installs the service 2 having the resource C in the image processing apparatus 10 via the network N1 or the like, for example. Then, the API management unit 423 registers the resource information of the resource C in a predetermined storage area of the framework 420. By registering the resource information, the URL included in the resource information can be provided as an API that can be used from the PC 20 or another image processing apparatus 10 or the like. As a result, when a service or resource is newly added to the image processing apparatus 10, an API that can be used from the outside can be obtained by registering resource information regarding the added resource in a predetermined storage area via the API management unit 423. Can be provided.

次に、図5(c)は、フレームワーク420の所定の記憶領域に記憶されているリソース情報の変更を行う場合の画像処理装置10の処理の概要の一例を説明するための図である。   Next, FIG. 5C is a diagram for explaining an example of an outline of processing performed by the image processing apparatus 10 when resource information stored in a predetermined storage area of the framework 420 is changed.

API情報変更部425は、例えば画像処理装置10の所定の記憶装置の残容量が、所定の基準値未満になったことを検知すると、API管理部423に対してリソース情報の変更を要求する。すると、API管理部423は、例えばPC20等から受信可能なデータ量の上限値が、より小さい値となるようにリソース情報を変更する。これにより、例えばPC20等がAPIを介して画像処理装置10に対して送信可能なデータ量が少なくなるように変更される。後述するように、図5(b)及び図5(c)で説明したリソース情報の登録や変更は、画像処理装置10において動的に行われる。したがって、例えば、既に登録済みのリソース情報に対して変更の必要が生じた場合でも、画像処理装置10を再起動させることなく、変更を行うことができる。   For example, when the API information changing unit 425 detects that the remaining capacity of a predetermined storage device of the image processing apparatus 10 is less than a predetermined reference value, the API information changing unit 425 requests the API management unit 423 to change the resource information. Then, the API management unit 423 changes the resource information so that the upper limit value of the data amount that can be received from the PC 20 or the like becomes a smaller value, for example. Thereby, for example, the PC 20 or the like is changed so as to reduce the amount of data that can be transmitted to the image processing apparatus 10 via the API. As will be described later, the registration or change of the resource information described in FIGS. 5B and 5C is dynamically performed in the image processing apparatus 10. Therefore, for example, even when the resource information that has already been registered needs to be changed, the change can be made without restarting the image processing apparatus 10.

次に、リソース情報の詳細について説明する。図6は、リソース情報の一例の構成図である。図6に示すように、リソース情報は、URL、メソッド、システム、アクセス、認証方式等のデータ項目を有する。   Next, details of the resource information will be described. FIG. 6 is a configuration diagram of an example of resource information. As shown in FIG. 6, the resource information includes data items such as URL, method, system, access, authentication method, and the like.

URLは、サービス部及びリソース部のデータ項目を有する。サービス部は、例えばプリンタアプリケーション433やアドレス帳管理サービス459等のサービスを特定する情報である。リソース部は、各サービスが有するリソース(機能)を特定する情報である。例えば、サービス部「printer」は、プリンタの状態を表示させる機能に関するリソース「status」と、プリントを実行する機能に関するリソース「job」の2つのリソースを有する。後述するように、サービス部(サービス名)とリソース部(リソース名)とを、例えばスラッシュ「/」で連結させてURL形式とすることで、外部(PC20や他の画像処理装置10等)から利用可能なAPIとして提供することができる。なお、リソース名は、同一のサービスにおいて一意(ユニーク)であればよい。   The URL has data items of a service part and a resource part. The service unit is information for specifying services such as the printer application 433 and the address book management service 459, for example. The resource part is information for specifying resources (functions) possessed by each service. For example, the service unit “printer” has two resources, a resource “status” related to a function for displaying the status of the printer and a resource “job” related to a function for executing printing. As will be described later, a service part (service name) and a resource part (resource name) are linked with, for example, a slash “/” to form a URL format, so that an external (PC 20 or other image processing apparatus 10 or the like) can be used. It can be provided as an available API. The resource name may be unique (unique) in the same service.

メソッドは、HTTPのメソッドを示しており、GET、POST、PUT、DELETE等がある。また、各メソッドは、上限及び権限等のデータ項目を有する。メソッドのデータ項目は、リソース部で指定されたリソースを利用したサービスを利用したい場合に、どのメソッドが定義されたHTTPリクエストで利用することができるかを示す項目である。このとき、HTTPリクエストのボディ部(メッセージボディ)に指定することができるデータの容量の上限(データ量の上限値)と、リソースを利用することができる権限とがそれぞれ上限及び権限のデータ項目で指定されている。   The method indicates an HTTP method, such as GET, POST, PUT, and DELETE. Each method has data items such as an upper limit and authority. The method data item is an item indicating which method can be used in the defined HTTP request when a service using the resource specified in the resource part is desired. At this time, the upper limit of the data capacity that can be specified in the body part (message body) of the HTTP request (the upper limit value of the data amount) and the authority to use the resource are the upper limit and authority data items, respectively. It is specified.

例えば、アドレス帳のアドレス情報を取得したい場合、URLとして「/addressbook/entries」、メソッドとして「GET」を指定すればよい。また、このメソッドの権限は、「管理者」が指定されているため、このリソースを利用することができるのは例えば管理者権限のユーザである。換言すれば、PC20や他の画像処理装置10等に、管理者権限のユーザとしてログインしているユーザが、アドレス帳のアドレス情報を取得するためのリソースを利用することができる。なお、GETメソッドは、Body部を指定しないため、上限のデータ項目には「0」が指定されている。   For example, when it is desired to acquire address information of the address book, “/ addressbook / entries” as a URL and “GET” as a method may be specified. In addition, since “administrator” is designated as the authority of this method, a user having administrator authority can use this resource. In other words, a user who is logged in to the PC 20 or another image processing apparatus 10 as a user with administrator authority can use resources for acquiring address information in the address book. Since the GET method does not specify the Body part, “0” is specified in the upper limit data item.

また、例えば、アドレス帳にアドレス情報を追加したい場合、URLとして「/addressbook/entries」、メソッドとして「POST」を指定すればよい。このメソッドの権限も「管理者」が指定されているため、このリソースを利用することができるのも例えば管理者権限のユーザである。さらに、上限のデータ項目には「1000」が指定されているため、POSTメソッドのHTTPリクエストのボディ部には、容量が1000バイトまでのデータを指定できることを示している。換言すれば、一度のHTTPリクエストで、データ容量が1000バイトまでのアドレス情報を追加することができることを示している。   For example, when adding address information to the address book, “/ addressbook / entries” as a URL and “POST” as a method may be specified. Since “administrator” is also designated for the authority of this method, it is also possible to use this resource, for example, by a user with administrator authority. Furthermore, since “1000” is designated in the upper limit data item, it is indicated that data having a capacity of up to 1000 bytes can be designated in the body part of the HTTP request of the POST method. In other words, it is indicated that address information with a data capacity of up to 1000 bytes can be added with a single HTTP request.

なお、利用することができないメソッドは、上限及び権限のデータ項目に「−」(ハイフン)が指定されている。例えば、プリンタの状態を表示させる機能を利用したい場合(サービス部「printer」、リソース部「status」)には、POSTメソッドやPUTメソッド、DELETEメソッドを定義したHTTPリクエストを利用することはできない。   For methods that cannot be used, “-” (hyphen) is specified in the upper limit and authority data items. For example, when it is desired to use a function for displaying the status of a printer (service part “printer”, resource part “status”), an HTTP request that defines a POST method, a PUT method, and a DELETE method cannot be used.

システム、アクセス、認証方式の各データ項目は、リソース部で指定されたリソースを利用したサービスを利用したい場合に、それぞれ、必要なシステム条件、アクセス条件、利用する認証方式を示す項目である。電力制御はリソースの利用中に電力制御を行うか否か、ロックはリソースの利用中に他のリソースの利用を制限するか否かを示す。また、リモートのデータ項目は画像処理装置10とネットワークを介したPC20などからリソースの利用が可能か否か、他方、操作部のデータ項目は画像処理装置10を操作部100を介して直接操作する場合にリソースの利用が可能か否かを示す。   The system, access, and authentication method data items are items indicating necessary system conditions, access conditions, and authentication methods to be used, respectively, when it is desired to use a service that uses the resource specified in the resource section. The power control indicates whether or not to perform power control during use of the resource, and the lock indicates whether or not use of other resources is restricted during use of the resource. In addition, whether or not resources can be used for remote data items from the image processing apparatus 10 and the PC 20 via the network, on the other hand, data items on the operation unit directly operate the image processing apparatus 10 via the operation unit 100. Indicates whether the resource can be used.

認証方式は、リソースの利用に際して使用する認証方式である。例えば、リソース部で指定されるリソースを利用する際に、認証方式としてBASIC認証を使用できるか否か、Digest認証を使用できるか否かを示す。   The authentication method is an authentication method used when resources are used. For example, it indicates whether BASIC authentication can be used as an authentication method and Digest authentication can be used when using a resource specified in the resource unit.

なお、以上に示したリソース情報のデータ項目は一例であり、他のデータ項目を有していてもよい。   Note that the data items of the resource information described above are examples, and other data items may be included.

<処理の詳細>
次に、第1の実施形態に係る画像処理システム1の処理の詳細について説明する。
<Details of processing>
Next, details of processing of the image processing system 1 according to the first embodiment will be described.

≪サービス提供処理≫
図7は、第1の実施形態に係るサービス提供処理の一例のシーケンス図である。
≪Service provision processing≫
FIG. 7 is a sequence diagram of an example of service providing processing according to the first embodiment.

ステップS101において、PC20等は、サービスとリソースとを指定したリクエストを画像処理装置10に送信する。そして、画像処理装置10のWebAPI410はPC20等からのリクエストを受信する。以降では一例として、PC20は、サービスとしてアドレス帳管理サービス459、リソースとしてアドレス帳の状態を取得する機能を指定したHTTPリクエストを送信したものとする。図8(a)は、HTTPリクエストの一例の説明図である。   In step S101, the PC 20 or the like transmits a request designating a service and a resource to the image processing apparatus 10. Then, the Web API 410 of the image processing apparatus 10 receives a request from the PC 20 or the like. Hereinafter, as an example, it is assumed that the PC 20 has transmitted an HTTP request specifying the address book management service 459 as a service and the function of acquiring the status of the address book as a resource. FIG. 8A is an explanatory diagram of an example of an HTTP request.

図8(a)のHTTPリクエストは、リクエスト部1001、ヘッダ部1002を有する。リクエスト部1001に指定された「http://192.168.1.1:8080」の部分は画像処理装置10のIPアドレス及びポート番号である。「/rws/addressbook/status」の部分は、サービス名とリソース名とから構成されるURLを含む情報である。この情報に含まれるURL(サービス名及びリソース名)により、API制御部422はAPIを特定し、該当のサービスの該当のリソースに操作を要求することができる。   The HTTP request in FIG. 8A has a request part 1001 and a header part 1002. The part of “http://192.168.1.1:8080” specified in the request unit 1001 is the IP address and port number of the image processing apparatus 10. The “/ rws / addressbook / status” portion is information including a URL composed of a service name and a resource name. Based on the URL (service name and resource name) included in this information, the API control unit 422 can specify the API and request an operation from the corresponding resource of the corresponding service.

なお、一般にHTTPリクエストは、リクエスト部、ヘッダ部、ボディ部から構成されている。図8(a)の例では、データの取得(アドレス帳の状態の取得)を行うためのメソッドであるGETが指定されているため、ボディ部は定義されていない。なお、例えばアドレス帳に新たにアドレスを追加する場合は、HTTPリクエストのリクエスト部にPOSTメソッドを指定し、ボディ部に追加するアドレスの情報(データ)を例えばXML(Extensible Markup Language)形式やJSON(JavaScript Object Notation)形式、バイナリ形式等で指定(記述)する。   In general, an HTTP request includes a request part, a header part, and a body part. In the example of FIG. 8A, since GET which is a method for performing data acquisition (acquisition of the address book state) is specified, the body part is not defined. For example, when a new address is added to the address book, a POST method is designated in the request part of the HTTP request, and information (data) of the address to be added to the body part is, for example, an XML (Extensible Markup Language) format or JSON ( Specify (describe) JavaScript Object Notation) format, binary format, etc.

ステップS102において、要求管理部421は、WebAPI410からHTTPリクエストを受け取り、API制御部422に処理要求を行う。   In step S <b> 102, the request management unit 421 receives an HTTP request from the Web API 410 and makes a processing request to the API control unit 422.

ステップS103において、API制御部422は、API管理部423にリソース情報の取得要求を行う。そして、API管理部423はリソース情報を画像処理装置10の所定の記憶領域から取得し、この取得したリソース情報をAPI制御部422に送信する。   In step S103, the API control unit 422 makes a resource information acquisition request to the API management unit 423. Then, the API management unit 423 acquires resource information from a predetermined storage area of the image processing apparatus 10, and transmits the acquired resource information to the API control unit 422.

ステップS104において、API制御部422は、API管理部423から取得したリソース情報に基づいてAPIを特定する。すなわち、HTTPリクエストに指定されているURLとリソース情報に含まれるURLとに基づきAPIを特定する。図8(a)の例では、HTTPリクエストのリクエスト部の「http://192.168.1.1:8080/rws/addressbook/status」と図6のリソース情報に含まれるサービス部とリソース部とに基づきAPI(URL)は「/addressbook/status」と特定することができる。これにより、図8(a)のHTTPリクエストは、アドレス帳管理サービス459のアドレス帳の状態の取得するためのAPIを介して要求されたものであることを特定することができる。   In step S <b> 104, the API control unit 422 specifies the API based on the resource information acquired from the API management unit 423. That is, the API is specified based on the URL specified in the HTTP request and the URL included in the resource information. In the example of FIG. 8A, the API is based on “http://192.168.1.1:8080/rws/addressbook/status” of the request part of the HTTP request and the service part and resource part included in the resource information of FIG. (URL) can be specified as “/ addressbook / status”. Thereby, it is possible to specify that the HTTP request in FIG. 8A is requested through the API for acquiring the address book status of the address book management service 459.

このようにWebAPI410のAPIを特定することで、API制御部422は、後述の処理において操作要求を行うサービス及びリソースを特定することができる。   By specifying the API of the Web API 410 in this way, the API control unit 422 can specify a service and a resource that make an operation request in a process described later.

ステップS105において、API制御部422は、HTTPリクエストを解析する。解析とは、例えばHTTPリクエストのボディ部にXML形式やJSON形式等で記述されている情報をプログラムやアプリケーション(例えば、アドレス帳管理サービス459)が扱うことができるデータ形式に変換することをいう。   In step S105, the API control unit 422 analyzes the HTTP request. The analysis refers to, for example, converting information described in the XML format, the JSON format, or the like in the body part of the HTTP request into a data format that can be handled by a program or an application (for example, the address book management service 459).

ステップS106において、API制御部422は、アドレス帳管理サービス459のアドレス帳状態の取得に関するリソース(リソース名「status」)に対して操作要求を行う。   In step S <b> 106, the API control unit 422 makes an operation request to the resource (resource name “status”) related to the acquisition of the address book status of the address book management service 459.

ステップS107において、アドレス帳管理サービス459は、アドレス帳の状態を取得する。アドレス帳の状態とは、例えば、アドレス帳に登録されているアドレス情報の総件数等の情報である。   In step S107, the address book management service 459 acquires the status of the address book. The address book state is information such as the total number of address information registered in the address book, for example.

ステップS108において、アドレス帳管理サービス459は、ステップS107における処理の処理結果を含む応答要求を結果応答部424に対して行う。   In step S108, the address book management service 459 makes a response request including the processing result of the processing in step S107 to the result response unit 424.

ステップS109において、結果応答部424は、受信した処理結果を含む応答要求からHTTPレスポンスを生成する。図8(b)は、HTTPレスポンスの一例の説明図である。   In step S109, the result response unit 424 generates an HTTP response from the response request including the received processing result. FIG. 8B is an explanatory diagram of an example of an HTTP response.

図8(b)のHTTPレスポンスのレスポンス部2001にはステータスコードが記述されている。図8(b)の例では、HTTPリクエストは成功し、要求に応じた情報が返信された旨のステータスコード(200 OK)が記述されている。ヘッダ部2002には、このHTTPレスポンスが作成された日時やボディ部2003で記述されているデータのデータ形式等が記述されている。ボディ部2003では、HTTPリクエストの要求に応じた情報が記述されている。図8(b)の例では、アドレス帳状態に関する情報などが記述されている。例えば、アドレス帳に500件のデータ(エントリ)が格納されていることを示す情報(entryNum:500)等である。   A status code is described in the response part 2001 of the HTTP response in FIG. In the example of FIG. 8B, a status code (200 OK) indicating that the HTTP request is successful and information corresponding to the request is returned is described. The header portion 2002 describes the date and time when this HTTP response was created, the data format of data described in the body portion 2003, and the like. In the body part 2003, information corresponding to the request for the HTTP request is described. In the example of FIG. 8B, information about the address book status is described. For example, information (entryNum: 500) indicating that 500 pieces of data (entries) are stored in the address book.

ステップS110において、結果応答部424は、生成したHTTPレスポンスの送信要求を要求管理部421に対して行う。   In step S <b> 110, the result response unit 424 sends a transmission request for the generated HTTP response to the request management unit 421.

ステップS111において、要求管理部421は、HTTPレスポンスをWebAPI410を介して、HTTPリクエストを送信した送信元のPC20等に送信する。   In step S111, the request management unit 421 transmits an HTTP response via the Web API 410 to the transmission source PC 20 or the like that transmitted the HTTP request.

以上により、画像処理装置10の外部に存在するPC20や他の画像処理装置10等は、画像処理装置10に対してサービスとリソースとを指定したリクエストを送信することにより、このリソースを利用したサービスを実行させることができる。言い換えれば、PC20や他の画像処理装置10等は、ネットワーク等を介して画像処理装置10に搭載されている機能を利用することができる。   As described above, the PC 20 or the other image processing apparatus 10 existing outside the image processing apparatus 10 transmits a request designating the service and the resource to the image processing apparatus 10, so that the service using the resource is used. Can be executed. In other words, the PC 20 and other image processing apparatuses 10 can use functions installed in the image processing apparatus 10 via a network or the like.

ここで、HTTPリクエストのリクエスト部に指定されるサービス名とリソース名とから構成されるURLについて、他の例を説明する。図9は、URLの一例を説明するための図である。   Here, another example of the URL configured by the service name and the resource name specified in the request part of the HTTP request will be described. FIG. 9 is a diagram for explaining an example of the URL.

例えばユーザがアドレス帳のアドレス情報を全件取得したい場合、HTTPリクエストのリクエスト部において、GETメソッドで画像処理装置10のIPアドレス(http://192.168.1.1:8080)に続けて、「/rws/addressbook/entries」と指定すればよい。   For example, when the user wants to acquire all address information in the address book, in the request part of the HTTP request, after the IP address (http://192.168.1.1:8080) of the image processing apparatus 10 by the GET method, “/ rws Specify / addressbook / entries ”.

また、例えばアドレス帳のアドレス情報を1件取得したい場合、HTTPリクエストのリクエスト部において、GETメソッドで画像処理装置10のIPアドレス(http://192.168.1.1:8080)に続けて、「/rws/addressbook/entries/123」(「123」は、エントリID等のアドレス帳のアドレス情報を一意に識別する情報)と指定すればよい。なお、例えばアドレス帳にアドレス情報を追加する場合は、POSTメソッドで上記と同様に画像処理装置10のIPアドレスに続けて、「/rws/addressbook/entries/234」等と指定すればよい。これにより、エントリID「234」のアドレス情報がアドレス帳に追加される。また、同様に、PUTメソッドでアドレス情報の更新、DELETEメソッドでアドレス情報の削除等を行うことができる。なお、POSTメソッドやPUTメソッドを指定する場合、HTTPリクエストのボディ部に、追加するアドレス情報又は更新するアドレス情報を記述する。   For example, when one address information of the address book is to be acquired, in the request part of the HTTP request, after the IP address (http://192.168.1.1:8080) of the image processing apparatus 10 by the GET method, “/ rws / addressbook / entries / 123 ”(“ 123 ”is information for uniquely identifying address book address information such as an entry ID). For example, when adding address information to the address book, “/ rws / addressbook / entries / 234” or the like may be specified following the IP address of the image processing apparatus 10 in the POST method, as described above. As a result, the address information of the entry ID “234” is added to the address book. Similarly, address information can be updated using the PUT method, address information can be deleted using the DELETE method, and the like. When a POST method or a PUT method is specified, address information to be added or address information to be updated is described in the body part of the HTTP request.

≪リソース情報の追加/削除処理≫
次に、画像処理装置10に搭載されているサービスに対して、新たにリソースを追加した場合又はリソースを削除した場合の処理について説明する。図10は、第1の実施形態に係るリソース情報の追加/削除処理の一例のシーケンス図である。
≪Resource information addition / deletion processing≫
Next, processing when a resource is newly added to or deleted from a service installed in the image processing apparatus 10 will be described. FIG. 10 is a sequence diagram of an example of resource information addition / deletion processing according to the first embodiment.

ステップS201において、ユーザは、サービスにリソースの追加又サービスからリソースの削除を行う。リソースの追加は、リソースに関する情報を例えばネットワークを介したインストールや外部記憶媒体からのインストールなどの方法により行うことができる。すなわち、例えば、画像処理装置10に既にインストールされているアプリケーションに対してプラグイン等をインストールすることにより機能(リソース)が追加される。他方、リソースの削除は、画像処理装置10に既にインストールされているアプリケーションからプラグイン等をアンインストールすることにより行うことができる。   In step S201, the user adds a resource to the service or deletes a resource from the service. The addition of resources can be performed by a method such as installation via a network or installation from an external storage medium. That is, for example, a function (resource) is added by installing a plug-in or the like for an application already installed in the image processing apparatus 10. On the other hand, the resource can be deleted by uninstalling a plug-in or the like from an application already installed in the image processing apparatus 10.

ステップS202において、ユーザは、リソースの追加又は削除を行ったサービスを起動する。   In step S202, the user activates the service to which the resource has been added or deleted.

ステップS203において、画像処理装置10のサービスは、追加したリソースの情報の設定の追加又は削除したリソースの情報の設定の削除を行う。すなわち、サービスは追加したリソースの情報又は削除したリソースの情報を設定ファイル等に反映させる。このように、画像処理装置10は、サービスに対して新たにリソースを追加することにより、追加したリソースを用いた機能を提供することができるようになる。また、画像処理装置10は、サービスからリソースを削除することにより、削除したリソースを用いた機能を削除することができる。   In step S <b> 203, the service of the image processing apparatus 10 adds the setting of the added resource information or deletes the setting of the deleted resource information. That is, the service reflects the added resource information or the deleted resource information in the setting file or the like. As described above, the image processing apparatus 10 can provide a function using the added resource by newly adding the resource to the service. Further, the image processing apparatus 10 can delete a function using the deleted resource by deleting the resource from the service.

ステップS204において、サービスは、API管理部423に対してリソース情報の登録又は削除要求を行う。   In step S <b> 204, the service issues a resource information registration or deletion request to the API management unit 423.

ステップS205において、API管理部423は、画像処理装置10の所定の記憶領域に追加したリソースのリソース情報の登録又は削除したリソースのリソース情報の削除を行う。   In step S <b> 205, the API management unit 423 registers the resource information of the resource added to the predetermined storage area of the image processing apparatus 10 or deletes the resource information of the deleted resource.

なお、API管理部423は、追加したリソースのリソース情報が画像処理装置10の所定の記憶領域に既に登録されている場合、リソース情報の登録を行わない。すなわち、API管理部423は、リソース情報の重複があるか否かのチェックを行い、重複したリソース情報が存在する場合、リソース情報の登録を行わない。   Note that the API management unit 423 does not register the resource information when the resource information of the added resource is already registered in a predetermined storage area of the image processing apparatus 10. That is, the API management unit 423 checks whether there is duplication of resource information, and does not register the resource information when duplicate resource information exists.

以上により、画像処理装置10のサービスに新たにリソースが追加された場合、追加されたリソースのリソース情報をAPI管理部423を介して画像処理装置10の所定の記憶領域に登録することができる。これにより、このリソースを利用するための外部から利用可能なAPIの追加をリソースの追加と同時に行うことができる。   As described above, when a new resource is added to the service of the image processing apparatus 10, the resource information of the added resource can be registered in a predetermined storage area of the image processing apparatus 10 via the API management unit 423. As a result, an API that can be used from the outside for using this resource can be added simultaneously with the addition of the resource.

また、画像処理装置10のサービスからリソースを削除する場合、削除されたリソースのリソース情報をAPI管理部423を介して画像処理装置10の所定の記憶領域から削除することができる。これにより、このリソースを利用するための外部から利用可能なAPIの削除をリソースの削除と同時に行うことができる。   When deleting a resource from the service of the image processing apparatus 10, the resource information of the deleted resource can be deleted from a predetermined storage area of the image processing apparatus 10 via the API management unit 423. As a result, the API that can be used from the outside for using this resource can be deleted simultaneously with the deletion of the resource.

≪アプリケーションのインストール処理≫
次に、画像処理装置10に新たにアプリケーションをインストールした場合の処理について説明する。画像処理装置10にアプリケーションをインストールすることにより、サービスが追加される。図11は、第1の実施形態に係るアプリケーションのインストール処理の一例のシーケンス図である。
≪Application installation process≫
Next, processing when an application is newly installed in the image processing apparatus 10 will be described. A service is added by installing an application in the image processing apparatus 10. FIG. 11 is a sequence diagram illustrating an example of an application installation process according to the first embodiment.

ステップS301において、ユーザは、画像処理装置10にアプリケーション(サービス)をインストールする。なお、アプリケーションは、例えばコピーアプリケーション431等のサービスを提供するソフトウェア等である。また、インストールされるアプリケーション(サービス)は、例えば片面コピーを行うためのリソース(機能)等、1以上のリソースを有する。   In step S <b> 301, the user installs an application (service) in the image processing apparatus 10. The application is, for example, software that provides services such as the copy application 431. The installed application (service) has one or more resources such as a resource (function) for performing single-sided copying.

ステップS302において、ユーザは、画像処理装置10にインストールされたアプリケーション(サービス)を起動する。   In step S <b> 302, the user activates an application (service) installed in the image processing apparatus 10.

ステップS303において、アプリケーション(サービス)は、リソースの情報を設定する。このリソースの情報の設定により、例えばコピーアプリケーション431(サービス)において片面コピー機能(リソース)を実行することができるようになる。   In step S303, the application (service) sets resource information. By setting the resource information, for example, the single-sided copy function (resource) can be executed in the copy application 431 (service).

ステップS304において、アプリケーション(サービス)は、API管理部423に対してリソース情報の登録要求を行う。   In step S <b> 304, the application (service) issues a resource information registration request to the API management unit 423.

ステップS305において、API管理部423は、画像処理装置10の所定の記憶領域に、インストールしたアプリケーションのリソース情報を登録する。   In step S <b> 305, the API management unit 423 registers the resource information of the installed application in a predetermined storage area of the image processing apparatus 10.

なお、API管理部423は、インストールしたアプリケーション(サービス)のリソース情報が画像処理装置10の所定の記憶領域に登録されている場合、リソース情報の登録を行わない。すなわち、API管理部423は、リソース情報の重複があるか否かのチェックを行い、重複したリソース情報が存在する場合、リソース情報の登録を行わない。   The API management unit 423 does not register the resource information when the resource information of the installed application (service) is registered in a predetermined storage area of the image processing apparatus 10. That is, the API management unit 423 checks whether there is duplication of resource information, and does not register the resource information when duplicate resource information exists.

以上により、画像処理装置10に新たにアプリケーションをインストールし、サービスが追加された場合、このサービスが利用するリソースのリソース情報をAPI管理部423を介して画像処理装置10の所定の記憶領域に登録することができる。これにより、このリソースを利用するための外部から利用可能なAPIの追加をサービスの追加と同時に行うことができる。   As described above, when a new application is installed in the image processing apparatus 10 and a service is added, resource information of resources used by this service is registered in a predetermined storage area of the image processing apparatus 10 via the API management unit 423. can do. As a result, an API that can be used from the outside for using this resource can be added simultaneously with the addition of the service.

≪アプリケーションのアンインストール処理≫
次に、画像処理装置10からアプリケーションをアンインストールした場合の処理について説明する。画像処理装置10からアプリケーションをアンインストールすることにより、サービス及びこのサービスが利用するリソースが削除される。図12は、第1の実施形態に係るアプリケーションのアンインストール処理の一例のシーケンス図である。
≪Application uninstall process≫
Next, processing when an application is uninstalled from the image processing apparatus 10 will be described. By uninstalling the application from the image processing apparatus 10, the service and the resources used by the service are deleted. FIG. 12 is a sequence diagram illustrating an example of an application uninstall process according to the first embodiment.

ステップS401において、ユーザは、画像処理装置10からアプリケーション(サービス)をアンインストールする。   In step S <b> 401, the user uninstalls the application (service) from the image processing apparatus 10.

ステップS402において、アプリケーション(サービス)は、API管理部423に対してリソース情報の削除要求を行う。   In step S402, the application (service) issues a resource information deletion request to the API management unit 423.

ステップS403において、API管理部423は、画像処理装置10の所定の記憶領域からアンインストールしたアプリケーションのリソース情報を削除する。このとき、API管理部423は、アンインストールしたアプリケーション(サービス)が複数のリソースを有していた場合、すべてのリソースのリソース情報を削除する。   In step S403, the API management unit 423 deletes the resource information of the uninstalled application from the predetermined storage area of the image processing apparatus 10. At this time, if the uninstalled application (service) has a plurality of resources, the API management unit 423 deletes the resource information of all resources.

以上により、画像処理装置10からアプリケーションがアンインストールされ、サービスが削除された場合、このサービスが利用するリソースのリソース情報を、API管理部423を介して画像処理装置10の所定の記憶領域から削除することができる。これにより、このリソースを利用するための外部から利用可能なAPIの削除をサービスの削除と同時に行うことができる。   As described above, when the application is uninstalled from the image processing apparatus 10 and the service is deleted, the resource information of the resource used by the service is deleted from the predetermined storage area of the image processing apparatus 10 via the API management unit 423. can do. As a result, the API that can be used from the outside for using this resource can be deleted simultaneously with the deletion of the service.

≪リソース情報の変更処理≫
次に、画像処理装置10の所定の記憶領域に記憶されているリソース情報を変更する場合の処理について説明する。図13は、第1の実施形態に係るリソース情報の変更処理の一例のシーケンス図である。
≪Resource information change process≫
Next, processing for changing resource information stored in a predetermined storage area of the image processing apparatus 10 will be described. FIG. 13 is a sequence diagram illustrating an example of a resource information change process according to the first embodiment.

ステップS501において、API情報変更部425は、リソース情報の変更が必要であることを検知する。API情報変更部425は、例えば、以下のような場合にリソース情報の変更が必要であることを検知する。
(1)PC20等からサービス名とリソース名とを指定したリソース情報の変更要求を受け付けた場合
(2)画像処理装置10の記憶装置(例えば、システムメモリ124、ローカルメモリ125、又はHDD123等)の残容量が、予め設定された基準容量を下回った(又は上回った)場合
(3)画像処理装置10のハードウェア(例えば、システムメモリ124、ローカルメモリ125、又はHDD123等)が交換等されて記憶装置の容量(総容量)が変化した場合
なお、上記の(1)の場合、PC20等から受け付けた変更要求には、リソース情報の変更対象のデータ項目(例えば、「上限」や「権限」等)と、変更後のデータ項目値とが含まれる。このようなデータ項目とデータ項目値は、PC20等のユーザにより指定される。他方、上記の(2)及び(3)の場合、リソース情報の変更対象のデータ項目は「上限」となり、変更後のデータ項目値は例えばユーザ又はプログラム等により指定される。
In step S501, the API information changing unit 425 detects that resource information needs to be changed. For example, the API information changing unit 425 detects that the resource information needs to be changed in the following case.
(1) When a resource information change request specifying a service name and a resource name is received from the PC 20 or the like (2) The storage device (for example, the system memory 124, the local memory 125, or the HDD 123) of the image processing apparatus 10 When the remaining capacity falls below (or exceeds) a preset reference capacity (3) Hardware of the image processing apparatus 10 (for example, the system memory 124, the local memory 125, or the HDD 123) is replaced and stored. When the capacity (total capacity) of the device has changed Note that in the case of (1) above, the change request received from the PC 20 or the like includes the data items (for example, “upper limit”, “authority”, etc.) to be changed in the resource information ) And the changed data item value. Such data items and data item values are designated by a user such as the PC 20. On the other hand, in the cases (2) and (3) above, the data item to be changed in the resource information is “upper limit”, and the changed data item value is specified by, for example, a user or a program.

ステップS502において、API情報変更部425は、API管理部423に対して、リソース情報の変更要求を行う。なお、リソース情報の変更要求には、変更対象のリソース情報のサービス名及びリソース名並びに変更対象のデータ項目及び変更後のデータ項目値等が含まれる。   In step S <b> 502, the API information change unit 425 makes a resource information change request to the API management unit 423. The resource information change request includes the service name and resource name of the resource information to be changed, the data item to be changed, the data item value after the change, and the like.

ステップS503において、API管理部423は、画像処理装置10の所定の記憶領域に記憶されているリソース情報を、受信した変更要求に基づき変更する。すなわち、API管理部423は、変更要求に含まれる変更対象のリソース情報のサービス名及びリソース名並びに変更対象のデータ項目から該当のリソース情報のデータ項目を特定し、特定したデータ項目を、変更要求に含まれる変更後のデータ項目値に変更する。   In step S503, the API management unit 423 changes the resource information stored in the predetermined storage area of the image processing apparatus 10 based on the received change request. In other words, the API management unit 423 identifies the data item of the corresponding resource information from the service name and resource name of the resource information to be changed included in the change request and the data item to be changed, and changes the specified data item to the change request. Change to the changed data item value included in.

例えば、変更要求に含まれるサービス名が「addressbook」、リソース名が「groups」、データ項目がPOSTの「上限」及びPUTの「上限」、変更後のデータ項目値が「1000」である場合、図14に示すように、上限値を「5000」から「1000」に変更する。   For example, when the service name included in the change request is “addressbook”, the resource name is “groups”, the data items are “upper limit” of POST and “upper limit” of PUT, and the data item value after change is “1000”, As shown in FIG. 14, the upper limit value is changed from “5000” to “1000”.

以上により、画像処理装置10の所定の記憶領域に記憶されているリソース情報を動的に変更することができる。換言すれば、画像処理装置10の再起動等を行う必要なく、リソース情報の変更を行うことができる。したがって、例えば、画像処理装置10に搭載されたメモリの残量が少なくなった場合(又は残量が増えた場合)等において、APIを介してPC20等から受信するデータ量の上限値を動的に変更(増加又は減少)することができる。   As described above, the resource information stored in the predetermined storage area of the image processing apparatus 10 can be dynamically changed. In other words, the resource information can be changed without having to restart the image processing apparatus 10 or the like. Therefore, for example, when the remaining amount of the memory mounted in the image processing apparatus 10 decreases (or when the remaining amount increases), the upper limit value of the data amount received from the PC 20 or the like via the API is dynamically set. Can be changed (increased or decreased).

なお、上記では、画像処理装置10がAPIを介してPC20等から受信するデータ量の上限を変更する場合について説明したが、これに限られず、変更要求に応じてリソース情報の他のデータ項目を変更してもよい。例えば、データ項目「権限」を「一般ユーザ」から「管理者」に変更する、電力制御を「×」から「○」に変更する等である。   In the above description, the case where the image processing apparatus 10 changes the upper limit of the amount of data received from the PC 20 or the like via the API has been described. However, the present invention is not limited to this, and other data items of the resource information are changed according to the change request. It may be changed. For example, the data item “authority” is changed from “general user” to “manager”, and the power control is changed from “×” to “◯”.

<まとめ>
以上のように、本実施形態に係る画像処理装置10は、PC20や他の画像処理装置10からの機能の実行要求に応じて、機能を実行することができる。
<Summary>
As described above, the image processing apparatus 10 according to the present embodiment can execute a function in response to a function execution request from the PC 20 or another image processing apparatus 10.

また、本実施形態に係る画像処理装置10はPC20や他の画像処理装置10からの機能の実行要求を受け付けるためのWebAPI410を有する。そして、PC20や他の画像処理装置10は、このWebAPI410を利用して画像処理装置10に対して機能の実行を要求することができる。   In addition, the image processing apparatus 10 according to the present embodiment includes a Web API 410 for receiving a function execution request from the PC 20 or another image processing apparatus 10. Then, the PC 20 or another image processing apparatus 10 can request the image processing apparatus 10 to execute a function using the Web API 410.

また、本実施形態に係る画像処理装置10は、アプリケーションのインストール/アンインストールによりサービスの追加/削除を行うことができる。また、本実施形態に係る画像処理装置10は、サービスが利用するリソースの追加/削除を行うことができる。そして、本実施形態に係る画像処理装置10は、上記サービスの追加/削除、リソースの追加/削除の際、追加又は削除したリソースのリソース情報を画像処理装置10の所定の記憶領域に登録又は削除することができる。   In addition, the image processing apparatus 10 according to the present embodiment can add / delete services by installing / uninstalling applications. Further, the image processing apparatus 10 according to the present embodiment can add / delete resources used by the service. The image processing apparatus 10 according to the present embodiment registers or deletes resource information of the added or deleted resource in a predetermined storage area of the image processing apparatus 10 when adding / deleting the service or adding / deleting the resource. can do.

また、本実施形態に係る画像処理装置10が有するリソース情報に含まれるURLは、PC20や他の画像処理装置10から利用可能なAPIとして提供することができる。したがって、画像処理装置10の所定の記憶領域にリソース情報が登録/削除されることで、外部から利用可能なAPIが同時に登録/削除されることになる。これにより、本実施形態に係る画像処理装置10は、サービスやリソースが追加/削除された場合でも動的にAPIを追加/削除することができる。さらに、画像処理装置10の所定の木尾工領域に登録されているリソース情報を動的に変更することができる。すなわち、本実施形態に係る画像処理装置10は、サービスやリソースが追加/削除された場合や登録済みのリソース情報が変更された場合において、APIの追加、削除、変更に伴う再ビルドやオブジェクトの再作成などを行う必要がない。   The URL included in the resource information included in the image processing apparatus 10 according to the present embodiment can be provided as an API that can be used from the PC 20 or another image processing apparatus 10. Accordingly, by registering / deleting resource information in a predetermined storage area of the image processing apparatus 10, APIs that can be used from the outside are simultaneously registered / deleted. Thus, the image processing apparatus 10 according to the present embodiment can dynamically add / delete APIs even when services / resources are added / deleted. Furthermore, the resource information registered in a predetermined woodwork area of the image processing apparatus 10 can be dynamically changed. In other words, the image processing apparatus 10 according to the present embodiment can perform rebuilds and object changes associated with addition, deletion, and change of APIs when services or resources are added / deleted or when registered resource information is changed. There is no need to recreate it.

[第2の実施形態]
次に、第2の実施形態に係る画像処理システム1について説明する。本実施形態においては、画像処理装置10において利用可能なAPIのリストをPC20に提供する。なお、システム構成及びハードウェア構成については、第1の実施形態と同様であるため説明を省略する。
[Second Embodiment]
Next, an image processing system 1 according to the second embodiment will be described. In the present embodiment, a list of APIs that can be used in the image processing apparatus 10 is provided to the PC 20. Since the system configuration and the hardware configuration are the same as those in the first embodiment, description thereof will be omitted.

<機能構成>
図15は、第2の実施形態に係る画像処理装置の一例の機能構成図である。第2の実施形態に係る画像処理装置10は、APIリスト作成部426を有する点が第1の実施形態に係る画像処理装置10と異なる。なお、第2の実施形態に係る画像処理装置10においてAPIリスト作成部426以外の各構成は、第1と実施形態と同様であるため、説明を省略する。
<Functional configuration>
FIG. 15 is a functional configuration diagram of an example of an image processing apparatus according to the second embodiment. The image processing apparatus 10 according to the second embodiment is different from the image processing apparatus 10 according to the first embodiment in that an API list creation unit 426 is included. Note that in the image processing apparatus 10 according to the second embodiment, the components other than the API list creation unit 426 are the same as those in the first and the embodiments, and thus the description thereof is omitted.

APIリスト作成部426は、PC20等が画像処理装置10において利用可能なAPIの一覧(以降、「APIリスト」という。)を作成する。また、APIリスト作成部426は、PC20等がAPIリストを要求するためのリソース情報の登録要求をAPI管理部423に対して行う。   The API list creation unit 426 creates a list of APIs that the PC 20 or the like can use in the image processing apparatus 10 (hereinafter referred to as “API list”). Further, the API list creation unit 426 makes a resource information registration request to the API management unit 423 so that the PC 20 or the like requests an API list.

<処理の概要>
次に、第1の実施形態に係る画像処理装置の処理の概要について説明する。図16は、第2の実施形態に係る画像処理装置の処理の概要の一例を説明するための図である。
<Outline of processing>
Next, an outline of processing of the image processing apparatus according to the first embodiment will be described. FIG. 16 is a diagram for explaining an example of an outline of processing of the image processing apparatus according to the second embodiment.

図16(a)は、PC20がAPIリストを画像処理装置10から取得するためのリソース情報を登録する場合の画像処理装置10の処理の概要の一例を説明するための図である。   FIG. 16A is a diagram for explaining an example of an outline of processing of the image processing apparatus 10 when the PC 20 registers resource information for acquiring the API list from the image processing apparatus 10.

ユーザは、例えばネットワークN1等を介して、フレームワーク420にAPIリスト作成部426を追加する。すると、API管理部423は、APIリスト作成部426のリソース情報を画像処理装置10のフレームワーク420所定の記憶領域に登録する。このようにリソース情報を登録することで、このリソース情報に含まれるURLをPC20や他の画像処理装置10等から利用可能なAPIとして提供することができる。   The user adds an API list creation unit 426 to the framework 420 via, for example, the network N1 or the like. Then, the API management unit 423 registers the resource information of the API list creation unit 426 in a predetermined storage area of the framework 420 of the image processing apparatus 10. By registering the resource information in this way, the URL included in the resource information can be provided as an API that can be used from the PC 20 or another image processing apparatus 10 or the like.

PC20や他の画像処理装置10等は、APIリスト作成部426のリソース情報に含まれるURLをAPIとして利用することで、このPC20や他の画像処理装置10等が利用可能なAPIリストを取得することができる。   The PC 20 and other image processing apparatuses 10 use the URL included in the resource information of the API list creation unit 426 as an API to obtain an API list that can be used by the PC 20 and other image processing apparatuses 10. be able to.

図16(b)は、例えばPC20や他の画像処理装置10等からAPIリストの取得要求があった場合の画像処理装置10の処理の概要の一例を説明するための図である。   FIG. 16B is a diagram for explaining an example of an outline of processing of the image processing apparatus 10 when an API list acquisition request is received from the PC 20 or another image processing apparatus 10, for example.

まず、画像処理装置10のWebAPI410は、例えばPC20や他の画像処理装置10等からAPIリストの取得要求に係るHTTPリクエストを受信する。次に、要求管理部421は、WebAPI410から呼び出されるとAPIリストの取得要求に係るHTTPリクエストを受け取り、API制御部422に処理要求を行う。そして、API制御部422は、API管理部423を介してリソース情報を取得し、HTTPリクエストにより呼び出されたAPI(WebAPI410)を特定する。なお、このとき、呼び出されたAPIはAPIリストの取得要求に係るAPIである。   First, the Web API 410 of the image processing apparatus 10 receives an HTTP request related to an API list acquisition request from, for example, the PC 20 or another image processing apparatus 10. Next, when called from the Web API 410, the request management unit 421 receives an HTTP request related to an API list acquisition request, and makes a processing request to the API control unit 422. Then, the API control unit 422 acquires resource information via the API management unit 423, and specifies the API (WebAPI 410) called by the HTTP request. At this time, the called API is an API related to an API list acquisition request.

API制御部422は、APIリスト作成部426に対して操作要求を行う。続いて、APIリスト作成部426は、API管理部423を介して画像処理装置10に登録されているリソース情報を取得する。そして、APIリスト作成部426は、取得したリソース情報に基づきAPIリストを作成し、応答要求を結果応答部424に行う。   The API control unit 422 makes an operation request to the API list creation unit 426. Subsequently, the API list creation unit 426 acquires resource information registered in the image processing apparatus 10 via the API management unit 423. Then, the API list creation unit 426 creates an API list based on the acquired resource information, and sends a response request to the result response unit 424.

結果応答部424は、APIリストを含むHTTPレスポンスを作成し、要求管理部421に送信要求を行う。要求管理部421は、結果応答部424からHTTPレスポンスを受け取ると、WebAPI410を介してHTTPリクエストの送信元のPC20等にHTTPレスポンスを送信する。   The result response unit 424 creates an HTTP response including the API list and makes a transmission request to the request management unit 421. Upon receiving the HTTP response from the result response unit 424, the request management unit 421 transmits the HTTP response to the PC 20 or the like that is the transmission source of the HTTP request via the Web API 410.

これにより、ユーザは、例えばPC20等を操作して、このPC20が利用可能な画像処理装置10のAPIの一覧(APIリスト)を取得することができる。したがって、ユーザは、例えば、この取得したAPIリストから所望のAPIを選択し、画像処理装置10の機能を利用することができる。   Thus, the user can acquire a list of APIs (API list) of the image processing apparatus 10 that can be used by the PC 20, for example, by operating the PC 20. Therefore, for example, the user can select a desired API from the acquired API list and use the function of the image processing apparatus 10.

<処理の詳細>
次に、第2の実施形態に係る画像処理システム1の処理の詳細について説明する。
<Details of processing>
Next, details of processing of the image processing system 1 according to the second embodiment will be described.

≪リソース情報の追加/削除処理≫
まず、画像処理装置10に対して、この画像処理装置10において利用可能なAPIリストを取得するためのリソース情報を登録する処理について説明する。これにより、PC20等が利用可能なAPIが画像処理装置10に登録される。図17は、第2の実施形態に係るリソース情報の追加/削除処理の一例のシーケンス図である。
≪Resource information addition / deletion processing≫
First, a process for registering resource information for acquiring an API list that can be used in the image processing apparatus 10 to the image processing apparatus 10 will be described. As a result, an API that can be used by the PC 20 or the like is registered in the image processing apparatus 10. FIG. 17 is a sequence diagram of an example of resource information addition / deletion processing according to the second embodiment.

ステップS601において、ユーザは、例えばネットワークN1を介して、フレームワーク420にAPIリスト作成部426を追加又は削除する。これは、例えば、ネットワークN1を介して、APIリスト作成部426を追加又は削除するための所定のインストーラ等を取得し、このインストーラを実行することでAPIリスト作成部426を追加又は削除することができる。すると、APIリスト作成部426は、API管理部423に対してリソース情報の登録又は削除要求を行う。   In step S601, the user adds or deletes the API list creation unit 426 to the framework 420 via the network N1, for example. For example, a predetermined installer or the like for adding or deleting the API list creation unit 426 is acquired via the network N1, and the API list creation unit 426 is added or deleted by executing this installer. it can. Then, the API list creation unit 426 makes a resource information registration or deletion request to the API management unit 423.

ステップS602において、API管理部423は、画像処理装置10の所定の記憶領域に、APIリストを取得するためのリソース情報の登録又は削除を行う。   In step S <b> 602, the API management unit 423 registers or deletes resource information for acquiring an API list in a predetermined storage area of the image processing apparatus 10.

以上により、画像処理装置10のフレームワーク420の所定の記憶領域に対して、PC20等がこの画像処理装置10において利用可能なAPIリストを取得するためのリソース情報の登録又は削除を行うことができる。これにより、APIリストを取得するためのAPIが画像処理装置10のWebAPI410に登録又はWebAPI410から削除される。後述するように、PC20や他の画像処理装置10等は、ここで登録されたAPIを利用して、画像処理装置10において利用可能なAPIリストを取得することができる。   As described above, the resource information for the PC 20 or the like to acquire an API list that can be used in the image processing apparatus 10 can be registered or deleted in a predetermined storage area of the framework 420 of the image processing apparatus 10. . As a result, the API for acquiring the API list is registered in the Web API 410 of the image processing apparatus 10 or deleted from the Web API 410. As will be described later, the PC 20 and other image processing apparatuses 10 and the like can acquire an API list usable in the image processing apparatus 10 by using the API registered here.

≪APIリストの表示処理≫
次に、ユーザがPC20等を操作して、このPC20が画像処理装置10において利用可能なAPIの一覧(APIリスト)を表示させるための処理について説明する。図18は、第2の実施形態に係るAPIリストの表示処理の一例のシーケンス図である。
≪API list display process≫
Next, processing for causing the user to operate the PC 20 or the like and display a list of APIs (API list) that can be used by the PC 20 in the image processing apparatus 10 will be described. FIG. 18 is a sequence diagram illustrating an example of an API list display process according to the second embodiment.

ステップS701において、PC20等はサービスとリソースとを指定したHTTPリクエストを画像処理装置10に送信する。ここで指定されるサービス及びリソースは、APIリストを取得するためのリソース及びサービスである。例えば、PC20は、サービスとしてAPIリスト作成部426、リソースとしてAPIリストを取得する機能を示すURL「resourcelist/entries」と、メソッドにGETメソッドとを指定したHTTPリクエストを画像処理装置10に送信する。   In step S <b> 701, the PC 20 or the like transmits an HTTP request designating a service and a resource to the image processing apparatus 10. The services and resources specified here are resources and services for obtaining the API list. For example, the PC 20 transmits an HTTP request specifying the API list creation unit 426 as a service, a URL “resourcelist / entries” indicating a function of acquiring an API list as a resource, and a GET method as a method to the image processing apparatus 10.

ステップS702において、要求管理部421は、WebAPI410からHTTPリクエストを受け取り、API制御部422に処理要求を行う。   In step S <b> 702, the request management unit 421 receives an HTTP request from the Web API 410 and makes a processing request to the API control unit 422.

ステップS703において、API制御部422は、API管理部423にリソース情報の取得要求を行う。そして、API管理部423は、リソース情報を画像処理装置10所定の記憶領域から取得し、この取得したリソース情報をAPI制御部422に送信する。   In step S <b> 703, the API control unit 422 makes a resource information acquisition request to the API management unit 423. Then, the API management unit 423 acquires resource information from a predetermined storage area of the image processing apparatus 10 and transmits the acquired resource information to the API control unit 422.

ステップS704において、API制御部422は、API管理部423から取得したリソース情報に基づいてAPIを特定する。すなわち、HTTPリクエストに指定されているURLとリソース情報に含まれるURLとに基づいてAPIを特定する。ここでは、WebAPI410のAPIとして、APIリストを取得するためのAPI(例えば、URLとして「resourcelist/entries」で指定されるAPI)が特定される。   In step S704, the API control unit 422 identifies the API based on the resource information acquired from the API management unit 423. That is, the API is specified based on the URL specified in the HTTP request and the URL included in the resource information. Here, an API for acquiring an API list (for example, an API specified by “resourcelist / entries” as a URL) is specified as the API of the Web API 410.

ステップS705において、API制御部422は、HTTPリクエストを解析する。   In step S705, the API control unit 422 analyzes the HTTP request.

ステップS706において、API制御部422は、APIリスト作成部426に対して操作要求を行う。   In step S706, the API control unit 422 makes an operation request to the API list creation unit 426.

ステップS707において、APIリスト作成部426は、API管理部423に対して画像処理装置10の所定の記憶領域に登録されているリソース情報の取得要求を行う。そして、API管理部423は、PC20等が利用可能なリソース情報を画像処理装置10の所定の記憶領域から取得し、この取得したリソース情報をAPIリスト作成部426に送信する。このステップS707の処理の詳細については後述する。   In step S <b> 707, the API list creation unit 426 sends an acquisition request for resource information registered in a predetermined storage area of the image processing apparatus 10 to the API management unit 423. Then, the API management unit 423 acquires resource information that can be used by the PC 20 or the like from a predetermined storage area of the image processing apparatus 10, and transmits the acquired resource information to the API list creation unit 426. Details of the processing in step S707 will be described later.

ステップS708において、APIリスト作成部426は、API管理部423から取得したリソース情報に基づいてAPIリストを作成する。ここで作成されるAPIリストは、例えば図19に示されるような情報である。図19は、APIリストの一例を説明するための図である。図19に示されるAPIリスト3000は、APIリストの取得を要求したPC20等が利用可能な画像処理装置10のサービス及びリソースのリソース情報3001とリソース情報3002とが記述されている。また、各リソース情報はAPIを利用するためのURLやこのAPIを利用する際に指定することができるメソッド等が記述されている。すなわち、APIリストには、図16で示したリソース情報の各データ項目の値が記述されている。   In step S708, the API list creation unit 426 creates an API list based on the resource information acquired from the API management unit 423. The API list created here is information as shown in FIG. 19, for example. FIG. 19 is a diagram for explaining an example of an API list. The API list 3000 shown in FIG. 19 describes resource information 3001 and resource information 3002 of services and resources of the image processing apparatus 10 that can be used by the PC 20 or the like that requested acquisition of the API list. Each resource information describes a URL for using the API, a method that can be specified when using the API, and the like. That is, the value of each data item of the resource information shown in FIG. 16 is described in the API list.

ステップS709において、APIリスト作成部426は、APIリストを含む応答要求を結果応答部424に対して行う。   In step S709, the API list creation unit 426 makes a response request including the API list to the result response unit 424.

ステップS710において、結果応答部424は、応答要求からHTTPレスポンスを生成する。なお、このとき生成されるHTTPレスポンスのボディ部には、上記のステップS708で作成されたAPIリストが所定のデータ形式で記述(指定)される。   In step S710, the result response unit 424 generates an HTTP response from the response request. Note that the API list created in step S708 is described (specified) in a predetermined data format in the body part of the HTTP response generated at this time.

ステップS711において、結果応答部424は、生成されたHTTPレスポンスの送信要求を要求管理部421に対して行う。   In step S <b> 711, the result response unit 424 sends a transmission request for the generated HTTP response to the request management unit 421.

ステップS712において、要求管理部421は、HTTPレスポンスをWebAPI410を介して、HTTPリスクエストの送信元のPC20等に送信する。   In step S712, the request management unit 421 transmits the HTTP response to the PC 20 or the like that is the transmission source of the HTTP request via the Web API 410.

ステップS713において、PC20は、HTTPレスポンスを受け取ると、このHTTPレスポンスに含まれるAPIリストに基づきAPIリストの表示画面を作成し、表示装置202等に表示させる。これにより、ユーザは、PC20等が利用することができる画像処理装置10のAPIを知ることができる。なお、ユーザは、PC20や他の画像処理装置10等に限らず、例えば、画像処理装置10の操作部100を操作して、この操作部100が利用可能な画像処理装置10のAPIリストを取得してもよい。   In step S713, when receiving the HTTP response, the PC 20 creates an API list display screen based on the API list included in the HTTP response, and displays it on the display device 202 or the like. Thereby, the user can know the API of the image processing apparatus 10 that can be used by the PC 20 or the like. Note that the user is not limited to the PC 20 or the other image processing apparatus 10 or the like, and for example, operates the operation unit 100 of the image processing apparatus 10 to obtain the API list of the image processing apparatus 10 that can be used by the operation unit 100. May be.

以上により、ユーザは、PC20等を用いて、このPC20が利用可能な画像処理装置10のAPIリストを取得することができる。ユーザは、表示されたAPIリストから所望のAPIを選択等することで、画像処理装置10が提供するAPIを利用することができる。なお、上記においては、PC20等が利用可能な画像処理装置10のAPIリストを取得したが、例えば、利用可能か否かに関わらず画像処理装置10が提供するすべてのAPIのリストを取得するようにしてもよい。   As described above, the user can acquire the API list of the image processing apparatus 10 that can be used by the PC 20 using the PC 20 or the like. The user can use an API provided by the image processing apparatus 10 by selecting a desired API from the displayed API list. In the above description, the API list of the image processing apparatus 10 that can be used by the PC 20 or the like is acquired. However, for example, a list of all APIs provided by the image processing apparatus 10 is acquired regardless of whether or not it can be used. It may be.

≪リソース情報の取得処理≫
次に、図18を用いて説明したAPIリストの表示処理におけるステップS707の処理(リソース情報の取得処理)の詳細について説明する。図20は、第2の実施形態に係るリソース情報の取得処理の一例のフローチャートである。
≪Resource information acquisition process≫
Next, details of the processing in step S707 (resource information acquisition processing) in the API list display processing described with reference to FIG. 18 will be described. FIG. 20 is a flowchart of an example of a resource information acquisition process according to the second embodiment.

ステップS801において、API管理部423は、APIリスト作成部426からリソース情報の取得要求を受け取ると、取得済みのリソース情報の数が画像処理装置10の所定の記憶領域に登録されているリソース情報の数未満か否かを判定する。換言すれば、API管理部423は、画像処理装置10の所定の記憶領域に登録されているすべてのリソース情報を取得したか否かを判定する。すべてのリソース情報を取得していない場合、ステップS802に進み、他方、すべてのリソース情報を取得済の場合、処理を終了させる。   In step S <b> 801, when the API management unit 423 receives a resource information acquisition request from the API list creation unit 426, the number of acquired resource information is the number of resource information registered in a predetermined storage area of the image processing apparatus 10. Determine if it is less than a number. In other words, the API management unit 423 determines whether or not all resource information registered in a predetermined storage area of the image processing apparatus 10 has been acquired. If all the resource information has not been acquired, the process proceeds to step S802. On the other hand, if all the resource information has been acquired, the process is terminated.

ステップS802において、API管理部423は、画像処理装置10の所定の記憶領域からリソース情報を1件取得する。   In step S <b> 802, the API management unit 423 acquires one piece of resource information from a predetermined storage area of the image processing apparatus 10.

ステップS803において、API管理部423は、上記のステップS802で取得したリソース情報について、PC20等が利用可能なAPIであるか否かを判定する。利用可能である場合、ステップS804に進み、他方、利用することができない場合、ステップS801に戻る。   In step S803, the API management unit 423 determines whether the resource information acquired in step S802 is an API that can be used by the PC 20 or the like. If it can be used, the process proceeds to step S804. On the other hand, if it cannot be used, the process returns to step S801.

ここで、上記のステップS803で取得したリソース情報に係るAPIについて、PC20が利用可能であるか否かは、例えば、図6に示したリソース情報の権限やアクセス等のデータ項目に基づいて判定される。例えば、図6に示す権限のデータ項目が「管理者」であり、PC20にログインしているユーザが「一般ユーザ」である場合、権限のデータ項目が「管理者」であるリソース情報に係るAPIは利用することができないと判定される。また、例えば、図16に示すアクセスのデータ項目について、リモートが「×」、操作部が「○」であるリソース情報である場合、画像処理装置10とネットワークN1を介して接続されたPC20からは利用することができないと判定され、他方、画像処理装置10の操作部100からは利用することができると判定される。   Here, for the API related to the resource information acquired in step S803 above, whether or not the PC 20 can be used is determined based on the data items such as authority and access of the resource information shown in FIG. The For example, when the authority data item shown in FIG. 6 is “administrator” and the user logged in to the PC 20 is “general user”, the API related to the resource information whose authority data item is “administrator” is shown. Is determined to be unavailable. Further, for example, in the case of the access data item shown in FIG. 16, when the resource information is “×” for the remote and “O” for the operation unit, the PC 20 connected to the image processing apparatus 10 via the network N1 It is determined that it cannot be used, and on the other hand, it is determined that it can be used from the operation unit 100 of the image processing apparatus 10.

ステップS804において、API管理部423は、上記のステップS803において取得したリソース情報を一時的に保持する。すなわち、ここでAPI管理部423が保持したリソース情報がAPIリスト作成部426に送信される。そして、図18のステップS708で説明したように、APIリスト作成部426は、API管理部423から送信されたリソース情報に基づきAPIリストを作成する。なお、API管理部423は、取得したリソース情報を一時的に保持せずに、APIリスト作成部426に即座に送信してもよい。   In step S804, the API management unit 423 temporarily holds the resource information acquired in step S803. That is, the resource information held by the API management unit 423 is transmitted to the API list creation unit 426 here. Then, as described in step S708 of FIG. 18, the API list creation unit 426 creates an API list based on the resource information transmitted from the API management unit 423. Note that the API management unit 423 may immediately transmit the acquired resource information to the API list creation unit 426 without temporarily storing the acquired resource information.

以上により、API管理部423は、画像処理装置10の所定の記憶領域に登録されているリソース情報からAPIリストの取得要求を行ったPC20等が利用することができるAPIのリソース情報を取得する。これにより、PC20等において、自身が利用することができる画像処理装置10のAPIリストを表示等させることができる。   As described above, the API management unit 423 acquires API resource information that can be used by the PC 20 or the like that has requested acquisition of the API list from the resource information registered in a predetermined storage area of the image processing apparatus 10. As a result, the API list of the image processing apparatus 10 that can be used by the PC 20 or the like can be displayed.

<まとめ>
以上のように、本実施形態に係る画像処理装置10は、PC20や他の画像処理装置10、さらには画像処理装置10の操作部100からのAPIリスト取得要求に応じて、これらのPC20等が利用可能な画像処理装置10のAPIリストを返信する。したがって、PC20等は、自身が利用可能な画像処理装置10のAPIリストを表示装置202等などに表示させることができる。その後、ユーザは、例えば表示装置202等に表示されているAPIリストから自身が利用したい所望のAPIを選択することで、この選択したAPIを利用することができる。
<Summary>
As described above, the image processing apparatus 10 according to the present embodiment includes the PC 20, the other image processing apparatus 10, and these PCs 20 according to an API list acquisition request from the operation unit 100 of the image processing apparatus 10. An API list of the available image processing apparatus 10 is returned. Therefore, the PC 20 or the like can display the API list of the image processing apparatus 10 that can be used by the PC 20 or the like on the display device 202 or the like. Thereafter, the user can use the selected API by selecting a desired API that the user wants to use from, for example, an API list displayed on the display device 202 or the like.

[第3の実施形態]
次に、第3の実施形態に係る画像処理システム1について説明する。本実施形態においては、画像処理装置10において利用可能なAPIのリストをPC20に提供するに際し、API管理部423が取得したリソース情報をキャッシュとして保存する。なお、システム構成、機能構成及びハードウェア構成については、第2の実施形態と同様であるため説明を省略する。
[Third Embodiment]
Next, an image processing system 1 according to the third embodiment will be described. In this embodiment, when providing a list of APIs available in the image processing apparatus 10 to the PC 20, the resource information acquired by the API management unit 423 is stored as a cache. Note that the system configuration, functional configuration, and hardware configuration are the same as those in the second embodiment, and a description thereof will be omitted.

<処理の詳細>
次に、第3の実施形態に係る画像処理システム1の処理の詳細について説明する。本実施形態は、図18におけるステップS707のリソース情報の取得処理が第2の実施形態と異なる。したがって、以降ではリソース情報の取得処理のみ説明する。図21は、第2の実施形態に係るリソース情報の取得処理の他の例のフローチャートである。なお、図21においてステップS902〜ステップS905の処理は、それぞれ図20で説明したステップS801〜ステップS804の処理と同様であるため、これらの処理についても説明を省略する。
<Details of processing>
Next, details of processing of the image processing system 1 according to the third embodiment will be described. This embodiment is different from the second embodiment in the resource information acquisition process in step S707 in FIG. Therefore, only resource information acquisition processing will be described below. FIG. 21 is a flowchart of another example of the resource information acquisition process according to the second embodiment. In FIG. 21, the processing in steps S902 to S905 is the same as the processing in steps S801 to S804 described in FIG.

ステップS901において、API管理部423は、リソース情報がキャッシュに存在するか否かを判定する。リソース情報がキャッシュに存在しない場合、ステップS902に進み、他方、リソース情報がキャッシュに存在する場合、ステップS906に進む。   In step S901, the API management unit 423 determines whether the resource information exists in the cache. If the resource information does not exist in the cache, the process proceeds to step S902. On the other hand, if the resource information exists in the cache, the process proceeds to step S906.

ここで、キャッシュとは、リソース情報の取得処理において、API管理部423が取得したリソース情報を保存するために、例えば画像処理装置10のHDD123等に確保された記憶領域である。   Here, the cache is a storage area secured in, for example, the HDD 123 of the image processing apparatus 10 in order to save the resource information acquired by the API management unit 423 in the resource information acquisition process.

ステップS906において、API管理部423は、キャッシュ作成後に、画像処理装置10の所定の記憶領域にリソース情報が登録、削除、又は変更されたか否かを判定する。キャッシュ作成後にリソース情報が登録、削除、又は変更された場合、ステップS902に進み、他方、キャッシュ作成後にリソース情報が登録、削除、及び変更されていない場合、ステップS907に進む。   In step S906, the API management unit 423 determines whether the resource information has been registered, deleted, or changed in a predetermined storage area of the image processing apparatus 10 after the cache is created. If the resource information is registered, deleted, or changed after the cache is created, the process proceeds to step S902. On the other hand, if the resource information is not registered, deleted, or changed after the cache is created, the process proceeds to step S907.

ステップS907において、API管理部423は、キャッシュに保存されているリソース情報を取得する。   In step S907, the API management unit 423 acquires resource information stored in the cache.

ステップS908において、API管理部423は、取得したリソース情報をキャッシュに保存する。なお、上記のステップS907においてキャッシュに保存されているリソース情報を取得した場合には、キャッシュの内容に変更はないが、本処理を行うことにより例えばキャッシュのタイムスタンプを更新させることができる。したがって、キャッシュが一定期間経過により削除されるような場合、本処理により、キャッシュの保存期間がリフレッシュされる。   In step S908, the API management unit 423 stores the acquired resource information in a cache. Note that when the resource information stored in the cache is acquired in step S907 described above, the cache contents are not changed, but by performing this processing, for example, the cache time stamp can be updated. Therefore, when the cache is deleted after a certain period of time, the cache retention period is refreshed by this processing.

このように、キャッシュにリソース情報が存在し、かつ、キャッシュ作成後にリソース情報が登録、削除、変更されていない場合は、キャッシュに保存されているリソース情報をAPIリスト作成部426に送信する。したがって、この場合、ステップS902〜905の処理を行う必要がないため、PC20等はAPIリストの取得を高速に行うことができる。   As described above, when the resource information exists in the cache and the resource information is not registered, deleted, or changed after the cache is created, the resource information stored in the cache is transmitted to the API list creating unit 426. Therefore, in this case, since it is not necessary to perform the processing of steps S902 to S905, the PC 20 or the like can acquire the API list at high speed.

<まとめ>
以上のように、本実施形態に係る画像処理装置10は、画像処理装置10において利用可能なAPIのリストをPC20等に提供するに際し、API管理部423が取得したリソース情報をキャッシュとして保存する。また、キャッシュにリソース情報が存在し、かつ、キャッシュ作成後にリソース情報の登録、削除、変更がされていない場合は、キャッシュに保存されているリソース情報をAPIリスト作成部426に送信する。これにより、キャッシュにリソース情報が存在する場合は、PC20はAPIリストの取得を高速に行うことができる。したがって、PC20等からのAPIリストの取得要求に対するレスポンスが第2の実施形態と比較して高速になる。
<Summary>
As described above, the image processing apparatus 10 according to the present embodiment stores the resource information acquired by the API management unit 423 as a cache when providing a list of APIs available in the image processing apparatus 10 to the PC 20 or the like. If the resource information exists in the cache and the resource information is not registered, deleted, or changed after the cache is created, the resource information stored in the cache is transmitted to the API list creation unit 426. Thereby, when the resource information exists in the cache, the PC 20 can acquire the API list at high speed. Therefore, the response to the API list acquisition request from the PC 20 or the like is faster than in the second embodiment.

なお、API管理部423は、API管理手段の一例である。WebAPI410は、インタフェース手段の一例である。API制御部422は、サービス提供手段の一例である。API情報変更部425は、変更手段の一例である。APIリスト作成部426は、取得手段及びリスト生成手段の一例である。   The API management unit 423 is an example of an API management unit. The web API 410 is an example of an interface unit. The API control unit 422 is an example of a service providing unit. The API information changing unit 425 is an example of a changing unit. The API list creation unit 426 is an example of an acquisition unit and a list generation unit.

本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。   The present invention is not limited to the specifically disclosed embodiments, and various modifications and changes can be made without departing from the scope of the claims.

1 画像処理システム
10 画像処理装置
20 PC
410 WebAPI
420 フレームワーク
421 要求管理部
422 API制御部
423 API管理部
424 結果応答部
424API情報変更部
426 APIリスト作成部
DESCRIPTION OF SYMBOLS 1 Image processing system 10 Image processing apparatus 20 PC
410 WebAPI
420 Framework 421 Request Management Unit 422 API Control Unit 423 API Management Unit 424 Result Response Unit 424 API Information Change Unit 426 API List Creation Unit

特開2005−339520号公報JP 2005-339520 A

Claims (10)

ネットワークを介して接続された機器からの要求に応じて所定の機能を利用したサービスを提供する情報処理装置であって、
前記サービスと該サービスが利用する機能毎に、前記機器から前記機能を利用したサービスの要求を受け付けるためのAPIを示す情報と、該APIを用いて提供される機能に関する情報とを関連付けて所定の記憶領域に記憶させるAPI管理手段と、
前記機器から前記要求を前記API毎に受け付けるインタフェース手段と、
前記インタフェース手段により前記要求を受け付けると、前記機能に関する情報に基づき、前記要求に対応するサービスの機能を実行させて、該サービスを提供するサービス提供手段と、
前記機器からの要求又は前記情報処理装置の状態に応じて前記所定の記憶領域に記憶されている前記機能に関する情報を動的に変更する変更手段と、
を有する情報処理装置。
An information processing apparatus that provides a service using a predetermined function in response to a request from a device connected via a network,
For each function used by the service and the function used by the service, information indicating an API for accepting a request for a service using the function from the device and information regarding a function provided using the API are associated with each other in a predetermined manner. API management means for storing in the storage area;
Interface means for receiving the request from the device for each API;
When receiving the request by the interface means, based on information on the function, a service providing means for executing the function of the service corresponding to the request and providing the service;
Changing means for dynamically changing information on the function stored in the predetermined storage area in response to a request from the device or a state of the information processing apparatus;
An information processing apparatus.
前記要求を受け付けると、該要求を受け付けたインタフェース手段に対応するAPIを特定する特定手段を有し、
前記サービス提供手段は、
前記特定されたAPIに対応する機能に関する情報に基づき、該APIと対応するサービスの機能を実行させて、該サービスを提供する、請求項1記載の情報処理装置。
When the request is received, a specifying unit that specifies an API corresponding to the interface unit that has received the request includes:
The service providing means includes:
The information processing apparatus according to claim 1, wherein the service is provided by executing a function of a service corresponding to the API based on information regarding a function corresponding to the specified API.
前記機能に関する情報は、該機能に関する情報に対応する機能を利用したサービスを提供する場合に前記情報処理装置が前記機器から受信可能なデータの上限値を含み、
前記変更手段は、
前記機器からの前記機能に関する情報の変更要求、又は、前記情報処理装置に搭載されている所定の記憶装置の総容量の変化若しくは該所定の記憶装置の残容量の変化に応じて、前記所定の記憶領域に記憶されている前記機能に関する情報に含まれる前記上限値を動的に変更する、請求項1又は2記載の情報処理装置。
The information on the function includes an upper limit value of data that the information processing apparatus can receive from the device when providing a service using a function corresponding to the information on the function,
The changing means is
In response to a request to change information related to the function from the device, a change in the total capacity of a predetermined storage device installed in the information processing apparatus, or a change in the remaining capacity of the predetermined storage device The information processing apparatus according to claim 1, wherein the upper limit value included in the information related to the function stored in a storage area is dynamically changed.
前記情報処理装置に搭載されている所定の記憶装置は、RAM又はHDDである、請求項3記載の情報処理装置。   The information processing apparatus according to claim 3, wherein the predetermined storage device mounted on the information processing apparatus is a RAM or an HDD. 前記APIは、サービスのサービス名と、該サービスが利用する機能のリソース名とを連結させてURL形式で表した情報である、請求項1ないし4のいずれか1項に記載の情報処理装置。   5. The information processing apparatus according to claim 1, wherein the API is information represented in a URL format by concatenating a service name of a service and a resource name of a function used by the service. 6. 前記API管理手段は、
前記サービスが利用する機能が追加された場合、前記機器から前記追加された機能を利用したサービスの要求を受け付けるためのAPIを示す情報と、前記追加された機能に関する情報とを関連付けて前記所定の記憶領域に記憶させる、請求項1ないし5のいずれか1項に記載の情報処理装置。
The API management means includes:
When a function used by the service is added, information indicating an API for accepting a request for a service using the added function from the device and information regarding the added function are associated with each other and the predetermined The information processing apparatus according to claim 1, wherein the information processing apparatus is stored in a storage area.
前記API管理手段は、
前記サービスが利用する機能が削除された場合、前記機器から前記削除された機能を利用したサービスの要求を受け付けるためのAPIを示す情報と、該APIを示す情報と関連付けて前記所定の記憶領域に記憶されている前記削除された機能に関する情報とを削除する、請求項1ないし6のいずれか1項に記載の情報処理装置。
The API management means includes:
When a function used by the service is deleted, information indicating an API for accepting a request for a service using the deleted function from the device, and information indicating the API are associated with the predetermined storage area. The information processing apparatus according to claim 1, wherein the information regarding the deleted function stored therein is deleted.
前記インタフェース手段により前記機器から前記情報処理装置が提供するサービスのリストの取得要求を受け付けると、前記所定の記憶領域に記憶されているAPIを示す情報と、該APIを用いて提供される機能に関する情報とを取得する取得手段と、
前記取得手段により取得された前記APIを示す情報及び前記機能に関する情報のうち、前記機器が利用することができるサービス及び機能に対応する前記APIを示す情報を含むリストを生成するリスト生成手段と、
を有する請求項1ないし7のいずれか1項に記載の情報処理装置。
When a request for acquiring a list of services provided by the information processing apparatus is received from the device by the interface unit, information indicating an API stored in the predetermined storage area and a function provided using the API Obtaining means for obtaining information;
List generating means for generating a list including information indicating the API corresponding to a service and a function that can be used by the device among information indicating the API acquired by the acquiring means and information related to the function;
The information processing apparatus according to claim 1, comprising:
機器と、該機器からの要求に応じて所定の機能を利用したサービスを提供する情報処理装置とがネットワークを介して接続された情報処理システムであって、
前記サービスと該サービスが利用する機能毎に、前記機器から前記機能を利用したサービスの要求を受け付けるためのAPIを示す情報と、該APIを用いて提供される機能に関する情報とを関連付けて所定の記憶領域に記憶させるAPI管理手段と、
前記機器から前記要求を前記API毎に受け付けるインタフェース手段と、
前記インタフェース手段により前記要求を受け付けると、前記機能に関する情報に基づき、前記要求に対応するサービスの機能を実行させて、該サービスを提供するサービス提供手段と、
前記機器からの要求又は前記情報処理装置の状態に応じて前記所定の記憶領域に記憶されている前記機能に関する情報を動的に変更する変更手段と、
を有する情報処理システム。
An information processing system in which a device and an information processing apparatus that provides a service using a predetermined function in response to a request from the device are connected via a network,
For each function used by the service and the function used by the service, information indicating an API for accepting a request for a service using the function from the device and information regarding a function provided using the API are associated with each other in a predetermined manner. API management means for storing in the storage area;
Interface means for receiving the request from the device for each API;
When receiving the request by the interface means, based on information on the function, a service providing means for executing the function of the service corresponding to the request and providing the service;
Changing means for dynamically changing information on the function stored in the predetermined storage area in response to a request from the device or a state of the information processing apparatus;
An information processing system.
ネットワークを介して接続された機器からの要求に応じて所定の機能を利用したサービスを提供する情報処理装置における情報処理方法であって、
前記サービスと該サービスが利用する機能毎に、前記機器から前記機能を利用したサービスの要求を受け付けるためのAPIを示す情報と、該APIを用いて提供される機能に関する情報とを関連付けて所定の記憶領域に記憶させるAPI管理手順と、
前記機器から前記要求を前記API毎に受け付けるインタフェース手順と、
前記インタフェース手順により前記要求を受け付けると、前記機能に関する情報に基づき、前記要求に対応するサービスの機能を実行させて、該サービスを提供するサービス提供手順と、
前記機器からの要求又は前記情報処理装置の状態に応じて前記所定の記憶領域に記憶されている前記機能に関する情報を動的に変更する変更手順と、
を有する情報処理方法。
An information processing method in an information processing apparatus that provides a service using a predetermined function in response to a request from a device connected via a network,
For each function used by the service and the function used by the service, information indicating an API for accepting a request for a service using the function from the device and information regarding a function provided using the API are associated with each other in a predetermined manner. API management procedure to be stored in the storage area;
An interface procedure for receiving the request from the device for each API;
When the request is accepted by the interface procedure, a service providing procedure for providing the service by executing the function of the service corresponding to the request based on the information on the function;
A change procedure for dynamically changing information on the function stored in the predetermined storage area in accordance with a request from the device or a state of the information processing apparatus;
An information processing method comprising:
JP2014225208A 2014-11-05 2014-11-05 Information processing apparatus, information processing system, and information processing method Active JP6365247B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014225208A JP6365247B2 (en) 2014-11-05 2014-11-05 Information processing apparatus, information processing system, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014225208A JP6365247B2 (en) 2014-11-05 2014-11-05 Information processing apparatus, information processing system, and information processing method

Publications (2)

Publication Number Publication Date
JP2016091311A JP2016091311A (en) 2016-05-23
JP6365247B2 true JP6365247B2 (en) 2018-08-01

Family

ID=56017030

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014225208A Active JP6365247B2 (en) 2014-11-05 2014-11-05 Information processing apparatus, information processing system, and information processing method

Country Status (1)

Country Link
JP (1) JP6365247B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020088593A (en) * 2018-11-26 2020-06-04 セイコーエプソン株式会社 Electronic apparatus, image reading method, and print processing method
JP2020204950A (en) * 2019-06-18 2020-12-24 コニカミノルタ株式会社 Information processing system, method of controlling information processing system, apparatus thereof, and control program therefor
JP7234849B2 (en) * 2019-08-05 2023-03-08 富士通株式会社 Information processing device, access control system and access control program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4274227B2 (en) * 2006-10-26 2009-06-03 コニカミノルタビジネステクノロジーズ株式会社 Image processing apparatus and program
JP2010067156A (en) * 2008-09-12 2010-03-25 Kubota Corp Client-server system
JP6098095B2 (en) * 2012-09-28 2017-03-22 ブラザー工業株式会社 Specific server and communication device

Also Published As

Publication number Publication date
JP2016091311A (en) 2016-05-23

Similar Documents

Publication Publication Date Title
JP5929210B2 (en) Information processing program, information processing apparatus, and information processing apparatus control method
JP6364738B2 (en) Information processing system, information processing apparatus, program, and process execution method
US9710432B2 (en) System, information processing apparatus, and method of controlling display
JP2013088950A (en) Printing system and printing method
JP5321929B2 (en) Universal device driver, device control program, information processing apparatus, server apparatus, and method
US10686958B2 (en) Updating settings of a plurality of image forming apparatuses
JP6787115B2 (en) Image forming device, function addition method, program,
US20120096465A1 (en) Image forming apparatus, log management method, and storage medium
JP2009054027A (en) Information processor, display screen customizing method, and display screen customizing program
US8488170B2 (en) Print job management apparatus, system, and method
US9218149B2 (en) Output system, terminal apparatus, and method of outputting data
US20110292460A1 (en) Information processing system, information processing apparatus, control method thereof, and storage medium
JP5728896B2 (en) Printing system and program
US20110157623A1 (en) Screen image management apparatus, screen image management method, and computer readable medium storing program therefor
JP6365247B2 (en) Information processing apparatus, information processing system, and information processing method
JP6234130B2 (en) Information processing system, information processing apparatus, information processing method, and program
JP2018194910A (en) Information processing device, driver installation method and program
JP2018156129A (en) Information processing system, information processing apparatus and information processing method
US20120033258A1 (en) Image processing apparatus, control method of image processing apparatus, and storage medium
JP5332343B2 (en) Information processing apparatus, electronic manual management method, and electronic manual management program
US9612788B2 (en) Terminal apparatus, information processing system, and output method
US10338857B2 (en) Information processing apparatus, information processing system, and information processing method
US11388300B2 (en) Appliance setting apparatus and non-transitory computer-readable recording medium storing appliance setting program
JP6265745B2 (en) Information processing terminal
US10602011B2 (en) Image forming apparatus, 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: 20171025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180523

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: 20180605

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180618

R151 Written notification of patent or utility model registration

Ref document number: 6365247

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151