JP6544133B2 - INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD - Google Patents

INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD Download PDF

Info

Publication number
JP6544133B2
JP6544133B2 JP2015160422A JP2015160422A JP6544133B2 JP 6544133 B2 JP6544133 B2 JP 6544133B2 JP 2015160422 A JP2015160422 A JP 2015160422A JP 2015160422 A JP2015160422 A JP 2015160422A JP 6544133 B2 JP6544133 B2 JP 6544133B2
Authority
JP
Japan
Prior art keywords
information
processing
series
unit
application
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
JP2015160422A
Other languages
Japanese (ja)
Other versions
JP2017041669A (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 JP2015160422A priority Critical patent/JP6544133B2/en
Publication of JP2017041669A publication Critical patent/JP2017041669A/en
Application granted granted Critical
Publication of JP6544133B2 publication Critical patent/JP6544133B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimiles In General (AREA)

Description

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

近年、クラウドコンピューティング等により多種多様な外部サービスが提供されるようになった。例えば、ユーザにより指定された電子データを外部のストレージに保管する外部サービスが知られている。   In recent years, various external services have come to be provided by cloud computing and the like. For example, an external service is known that stores electronic data designated by a user in an external storage.

また、例えば、画像形成装置で原稿をスキャンして取得した画像データを外部ストレージに保管する技術が知られている(例えば特許文献1参照)。このように、画像形成装置と外部サービスとが連携して処理を行う技術が従来から知られている。   Further, for example, there is known a technology for storing image data acquired by scanning an original with an image forming apparatus in an external storage (see, for example, Patent Document 1). As described above, there is conventionally known a technology in which an image forming apparatus and an external service cooperate to perform processing.

しかしながら、上記の従来技術においては、外部サービスと連携して処理を行うためには画像形成装置に搭載されるアプリケーションの開発が必要となる。また、ある外部サービスが固有の機能(他の外部サービスが提供していない機能)を提供するようになった場合には、当該固有の機能を利用するためのモジュールやプラグイン等を開発する必要がある。したがって、画像形成装置に搭載されるアプリケーションの追加や修正等の開発に要する工数が大きくなる場合があった。   However, in the above-described prior art, in order to perform processing in cooperation with an external service, it is necessary to develop an application installed in the image forming apparatus. In addition, when an external service comes to provide a unique function (a function not provided by another external service), it is necessary to develop a module, plug-in, etc. for using the specific function. There is. Therefore, the number of man-hours required for development such as addition or correction of an application installed in the image forming apparatus may be increased.

本発明の実施の形態は、上記の点に鑑みてなされたもので、外部サービスと連携した処理を行うためのアプリケーションの開発を支援することを目的とする。   The embodiment of the present invention has been made in view of the above-described point, and an object thereof is to support development of an application for performing processing in cooperation with an external service.

上記目的を達成するため、本発明の実施の形態は、1以上の情報処理装置が含まれる情報処理システムであって、電子データを用いた一連の処理を外部サービスと連携して実行するアプリケーション毎に、該アプリケーションを識別するアプリ識別情報と、該一連の処理に関する情報と、該一連の処理に用いる前記電子データを指定させる画面の画面情報と、を関連付けて記憶する記憶手段と、前記情報処理システムに接続される1以上の機器のうちの一の機器から前記アプリ識別情報を含む第1の要求を受け付けると、該第1の要求に含まれる該アプリ識別情報に関連付けて前記記憶手段に記憶されている前記画面情報を、要求元の前記一の機器に送信する第1の送信手段と、前記第1の送信手段により送信された前記画面情報に基づき前記一の機器に表示された画面を介してユーザにより指定された電子データに関する情報を含む第2の要求を前記一の機器から受け付けると、前記アプリ識別情報に関連付けて前記記憶手段に記憶されている前記一連の処理に関する情報に基づく一連の処理を示す情報と、前記一の機器との接続を特定する情報と、を関連付けた処理情報を生成する生成手段と、前記一連の処理を、前記第2の要求に含まれる前記電子データに関する情報により指定される電子データに対して実行する処理実行手段と、
前記処理実行手段により実行された前記一連の処理の処理結果を、前記生成手段により生成された前記処理情報に含まれる前記接続を特定する情報に基づき前記一の機器に送信する第2の送信手段とを有する。
In order to achieve the above object, an embodiment of the present invention is an information processing system including one or more information processing apparatuses, and for each application that executes a series of processing using electronic data in cooperation with an external service. Storage means for associating and storing application identification information for identifying the application, information on the series of processes, and screen information of a screen for designating the electronic data used for the series of processes, and the information processing When a first request including the application identification information is received from one of the one or more devices connected to the system, it is stored in the storage means in association with the application identification information included in the first request First transmitting means for transmitting the screen information being requested to the one device of the request source, and the preceding one based on the screen information transmitted by the first transmitting means When a second request including information on electronic data designated by the user via a screen displayed on one device is received from the one device, the second request is stored in the storage means in association with the application identification information A generation unit configured to generate processing information in which information indicating a series of processes based on the information related to the series of processes and information identifying a connection with the one device; Processing execution means for executing on electronic data specified by the information related to the electronic data included in the request of
A second transmission unit that transmits processing results of the series of processing executed by the processing execution unit to the one device based on the information specifying the connection included in the processing information generated by the generation unit And.

本発明の実施の形態によれば、外部サービスと連携した処理を行うためのアプリケーションの開発を支援することができる。   According to the embodiment of the present invention, development of an application for performing processing in cooperation with an external service can be supported.

本実施形態に係る情報処理システムの一例のシステム構成を示す図である。It is a figure showing the system configuration of an example of the information processing system concerning this embodiment. 本実施形態に係るサービス提供システムの一例のハードウェア構成を示す図である。It is a figure which shows the hardware constitutions of an example of the service provision system which concerns on this embodiment. 本実施形態に係る画像形成装置の一例のハードウェア構成を示す図である。FIG. 2 is a diagram illustrating a hardware configuration of an example of the image forming apparatus according to the present embodiment. 本実施形態に係る情報処理システムの一例の処理ブロックを示す図である。It is a figure showing the processing block of an example of the information processing system concerning this embodiment. 共通I/F及び固有I/Fの一例を示す図である。It is a figure which shows an example of common I / F and intrinsic | native I / F. 画面定義の一例を示す図である。It is a figure which shows an example of screen definition. 処理内容の一例を示す図である。It is a figure showing an example of processing contents. 処理情報の一例を示す図である。It is a figure which shows an example of process information. クライアントアプリ情報の一例を示す図である。It is a figure which shows an example of client application information. 本実施形態に係るスキャン配信サービスのアプリ画面の表示処理の一例を示す図である。It is a figure which shows an example of a display process of the application screen of the scan delivery service concerning this embodiment. スキャン配信サービスのアプリ画面の一例を示す図である。It is a figure which shows an example of the application screen of a scan delivery service. 本実施形態に係るスキャン配信サービスの全体処理の一例を示す図である。It is a figure which shows an example of the whole process of the scan delivery service which concerns on this embodiment. 本実施形態に係るロジック処理部の一例の処理ブロックを示す図である。It is a figure which shows the process block of an example of the logic process part which concerns on this embodiment. 型変換テーブルの一例を示す図である。It is a figure which shows an example of a type conversion table. 本実施形態に係るOCRから配信実行までの処理の一例のシーケンスを示す図である。It is a figure showing the sequence of an example of processing from OCR to distribution execution concerning this embodiment. 本実施形態に係るクラウドプリントサービスのアプリ画面の表示処理の一例のシーケンスを示す図である。It is a figure which shows the sequence of an example of a display process of the application screen of the cloud print service which concerns on this embodiment. クラウドプリントサービスのアプリ画面の一例を示す図である。It is a figure which shows an example of the application screen of cloud print service. 本実施形態に係るクラウドプリントサービスの全体処理の一例のシーケンスを示す図である。It is a figure which shows the sequence of an example of the whole process of the cloud print service which concerns on this embodiment. 本実施形態に係るファイル取得から印刷変換までの処理の一例のシーケンスを示す図である。It is a figure which shows the sequence of an example of the process from file acquisition to printing conversion which concerns on this embodiment.

以下、本発明の実施形態について図面を参照しながら詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

<システム構成>
まず、本実施形態に係る情報処理システム1のシステム構成について、図1を参照しながら説明する。図1は、本実施形態に係る情報処理システムの一例のシステム構成を示す図である。
<System configuration>
First, the system configuration of the information processing system 1 according to the present embodiment will be described with reference to FIG. FIG. 1 is a diagram showing a system configuration of an example of an information processing system according to the present embodiment.

図1に示す情報処理システム1は、サービス提供環境E1、ユーザ環境E2、及び外部ストレージシステム30を含み、インターネット等の広域的なネットワークN1を介して通信可能に接続されている。   An information processing system 1 shown in FIG. 1 includes a service providing environment E1, a user environment E2, and an external storage system 30, and is communicably connected via a wide area network N1 such as the Internet.

サービス提供環境E1は、ネットワークN1を介してクラウドサービス等の外部サービスを提供するシステム環境である。なお、本実施形態では、外部サービスの具体例としてクラウドサービスを採用して説明するが、ASP(Application Service Provider)によって提供されるサービスやWebサービス等、ネットワークを介して提供されるサービスに関して本実施形態が適用されても良い。   The service providing environment E1 is a system environment that provides an external service such as a cloud service via the network N1. In the present embodiment, a cloud service is adopted and described as a specific example of the external service, but the present embodiment can be applied to a service provided by an application service provider (ASP) or a service provided via a network, such as a web service. A form may be applied.

サービス提供環境E1は、一台以上の情報処理装置で実現されるサービス提供システム10を有する。サービス提供システム10は、ネットワークN1を介して所定のサービスを提供する。例えば、サービス提供システム10は、ユーザ環境E2の画像形成装置20において原稿をスキャンして生成された電子ファイルを、OCR(Optical Character Reader)処理して、外部ストレージシステム30に保存するサービス(スキャン配信サービス)を提供する。また、例えば、サービス提供システム10は、外部ストレージシステム30に保存されている電子ファイルを、ユーザ環境E2の画像形成装置20で印刷するサービス(クラウドプリントサービス)を提供する。本実施形態では、サービス提供システム10は、このようなスキャン配信サービス及びクラウドプリントサービスを提供するものとして説明する。   The service providing environment E1 has a service providing system 10 realized by one or more information processing apparatuses. The service providing system 10 provides a predetermined service via the network N1. For example, the service providing system 10 performs an OCR (Optical Character Reader) process on an electronic file generated by scanning a document in the image forming apparatus 20 of the user environment E2, and stores the file in the external storage system 30 (scan distribution Provide services). Also, for example, the service providing system 10 provides a service (cloud print service) for printing the electronic file stored in the external storage system 30 by the image forming apparatus 20 of the user environment E2. In the present embodiment, the service providing system 10 will be described as providing such scan distribution service and cloud print service.

ただし、サービス提供システム10により提供されるサービスは、これらに限られず、例えば、外部ストレージシステム30に保存されている電子ファイルを、ユーザ環境E2のプロジェクタで投影するサービス等であっても良い。また、画像形成装置20において原稿をスキャンして生成された電子ファイルを、OCR処理した後、所定の言語に翻訳(例えば、英語から日本語に翻訳)して、外部ストレージシステム30に保存するサービス等であっても良い。   However, the service provided by the service providing system 10 is not limited to these, and may be, for example, a service that projects an electronic file stored in the external storage system 30 with the projector of the user environment E2. In addition, after an electronic file generated by scanning a document in the image forming apparatus 20 is subjected to OCR processing, it is translated into a predetermined language (for example, translated from English into Japanese) and stored in the external storage system 30 Or the like.

なお、サービス提供システム10の全部又は一部は、ユーザ環境E2に設置されていても良い。すなわち、サービス提供システム10を構成する情報処理装置の全部又は一部は、ユーザ環境E2に包含されていても良い。   Note that all or part of the service providing system 10 may be installed in the user environment E2. That is, all or a part of the information processing apparatus constituting the service providing system 10 may be included in the user environment E2.

ユーザ環境E2は、例えば、画像形成装置20を使用するユーザである企業等におけるシステム環境である。ユーザ環境E2は、一台以上の画像形成装置20が、例えばLAN(Local Area Network)等のネットワークを介して接続されている。   The user environment E2 is, for example, a system environment in a company or the like who is a user who uses the image forming apparatus 20. In the user environment E2, one or more image forming apparatuses 20 are connected via a network such as a LAN (Local Area Network), for example.

本実施形態に係る画像形成装置20は、プリント機能及びスキャン機能を有するMFP(Multifunction Peripheral)等の複合機である。なお、画像形成装置20は、プリント機能及びスキャン機能以外に、コピー機能やファクス(FAX)通信機能等を備えていても良い。   The image forming apparatus 20 according to the present embodiment is a multifunction peripheral such as MFP (Multifunction Peripheral) having a print function and a scan function. The image forming apparatus 20 may have a copy function, a fax (FAX) communication function, and the like in addition to the print function and the scan function.

外部ストレージシステム30は、ネットワークN1を介してストレージサービス(又はオンラインストレージ)と呼ばれるクラウドサービスを提供するコンピュータシステムである。   The external storage system 30 is a computer system that provides a cloud service called storage service (or online storage) via the network N1.

ストレージサービスとは、外部ストレージシステム30のストレージの記憶領域を貸し出すサービスである。本実施形態では、スキャン配信サービスにおいて、外部ストレージシステム30によって貸し出される記憶領域に、OCR処理された電子ファイルを保存(アップロード)する。また、本実施形態では、クラウドプリントサービスにおいて、外部ストレージシステム30によって貸し出される記憶領域から印刷対象となる電子ファイルを取得(ダウンロード)する。   The storage service is a service that lends the storage area of the storage of the external storage system 30. In the present embodiment, in the scan distribution service, the OCR processed electronic file is stored (uploaded) in the storage area lent by the external storage system 30. Further, in the present embodiment, in the cloud print service, the electronic file to be printed is acquired (downloaded) from the storage area lent out by the external storage system 30.

なお、以降では、複数の外部ストレージシステム30について、各々を区別するときは、「外部ストレージシステム30」、「外部ストレージシステム30」等と添え字を用いて記載する。また、外部ストレージシステム30によって提供されるサービスの名称を「ストレージサービスA」、ストレージシステム30によって提供されるサービスの名称を「ストレージサービスB」等とする。 In the following, the plurality of external storage systems 30 will be described using suffixes such as “external storage system 30 1 ”, “external storage system 30 2 ”, etc. Further, "Storage Service A" the name of the service provided by the external storage system 30 1, and the like "storage service B" the name of the service provided by the storage system 30 2.

外部ストレージシステム30は、複数台の情報処理装置によって実現されるシステムであっても良い。また、図1に示される情報処理システム1の構成は一例であって、他の構成であっても良い。例えば、ユーザ環境E2は、画像形成装置20に加えて又は画像形成装置20に代えて、プロジェクタ、電子黒板等の各種機器を有していても良い。   The external storage system 30 may be a system realized by a plurality of information processing devices. The configuration of the information processing system 1 shown in FIG. 1 is an example, and may be another configuration. For example, the user environment E2 may include various devices such as a projector and an electronic blackboard in addition to or in place of the image forming apparatus 20.

<ハードウェア構成>
≪サービス提供システム≫
サービス提供システム10のハードウェア構成について、図2を参照しながら説明する。図2は、本実施形態に係るサービス提供システムの一例のハードウェア構成を示す図である。
<Hardware configuration>
«Service provision system»
The hardware configuration of the service providing system 10 will be described with reference to FIG. FIG. 2 is a diagram showing a hardware configuration of an example of the service providing system according to the present embodiment.

図2に示すサービス提供システム10は、入力装置11、表示装置12、外部I/F13、及びRAM(Random Access Memory)14を有する。また、サービス提供システム10は、ROM(Read Only Memory)15、CPU(Central Processing Unit)16、通信I/F17、及びHDD(Hard Disk Drive)18を有する。これらの各ハードウェアは、それぞれがバスBで接続されている。   The service providing system 10 illustrated in FIG. 2 includes an input device 11, a display device 12, an external I / F 13, and a random access memory (RAM) 14. The service providing system 10 further includes a read only memory (ROM) 15, a central processing unit (CPU) 16, a communication I / F 17, and a hard disk drive (HDD) 18. Each of these pieces of hardware is connected by a bus B.

入力装置11は、キーボードやマウス、タッチパネル等を含み、ユーザが各操作信号を入力するのに用いられる。表示装置12は、ディスプレイ等を含み、サービス提供システム10による処理結果を表示する。なお、入力装置11及び表示装置12は、必要なときにバスBに接続して利用する形態であっても良い。   The input device 11 includes a keyboard, a mouse, a touch panel, and the like, and is used by the user to input each operation signal. The display device 12 includes a display and the like, and displays the processing result by the service providing system 10. The input device 11 and the display device 12 may be connected to the bus B when necessary and used.

通信I/F17は、サービス提供システム10をネットワークN1に接続するインタフェースである。これにより、サービス提供システム10は、通信I/F17を介してデータ通信を行うことができる。   The communication I / F 17 is an interface that connects the service providing system 10 to the network N1. Thus, the service providing system 10 can perform data communication via the communication I / F 17.

HDD18は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、サービス提供システム10全体を制御する基本ソフトウェアであるOS(Operating System)、及びOS上において各種機能を提供するアプリケーションソフトウェア等がある。   The HDD 18 is a non-volatile storage device storing programs and data. The programs and data to be stored include an operating system (OS) which is basic software for controlling the entire service providing system 10, application software for providing various functions on the OS, and the like.

なお、サービス提供システム10は、HDD108に代えて又はHDD108に加えて、フラッシュメモリを用いるドライブ装置(例えばソリッドステートドライブ:SSD)を利用しても良い。また、HDD108は、格納しているプログラムやデータを所定のファイルシステム及び/又はDBにより管理している。   The service providing system 10 may use a drive device (for example, solid state drive: SSD) that uses a flash memory, instead of or in addition to the HDD 108. Further, the HDD 108 manages stored programs and data by a predetermined file system and / or DB.

外部I/F13は、外部装置とのインタフェースである。外部装置には、記録媒体13a等がある。これにより、サービス提供システム10は、外部I/F13を介して記録媒体13aの読み取り及び/又は書き込みを行うことができる。記録媒体13aには、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。   The external I / F 13 is an interface with an external device. The external device is, for example, a recording medium 13a. Thereby, the service providing system 10 can read and / or write the recording medium 13 a via the external I / F 13. The recording medium 13a includes a flexible disk, a CD, a DVD, an SD memory card, a USB memory, and the like.

ROM15は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ROM15には、サービス提供システム10の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定等のプログラムやデータが格納されている。RAM14は、プログラムやデータを一時保持する揮発性の半導体メモリである。   The ROM 15 is a non-volatile semiconductor memory that can hold programs and data even after the power is turned off. The ROM 15 stores programs and data such as a BIOS (Basic Input / Output System), an OS setting, and a network setting which are executed when the service providing system 10 is started. The RAM 14 is a volatile semiconductor memory that temporarily holds programs and data.

CPU16は、ROM15やHDD18等からプログラムやデータをRAM14上に読み出し、処理を実行することで、サービス提供システム10全体の制御や機能を実現する演算装置である。   The CPU 16 is an arithmetic device that implements control and functions of the entire service providing system 10 by reading programs and data from the ROM 15, the HDD 18 or the like onto the RAM 14 and executing processing.

本実施形態に係るサービス提供システム10は、上記のハードウェア構成を有することにより、後述するような各種処理を実現できる。   The service providing system 10 according to the present embodiment can realize various processes as described later by having the above hardware configuration.

≪画像形成装置≫
画像形成装置20のハードウェア構成について、図3を参照しながら説明する。図3は、本実施形態に係る画像形成装置の一例のハードウェア構成を示す図である。
<< image forming device >>
The hardware configuration of the image forming apparatus 20 will be described with reference to FIG. FIG. 3 is a diagram showing a hardware configuration of an example of the image forming apparatus according to the present embodiment.

図3に示す画像形成装置20は、コントローラ21、操作パネル22、外部I/F23、通信I/F24、プリンタ25、及びスキャナ26を有する。また、コントローラ21は、CPU211、RAM212、ROM213、NVRAM214、及びHDD215を有する。   The image forming apparatus 20 illustrated in FIG. 3 includes a controller 21, an operation panel 22, an external I / F 23, a communication I / F 24, a printer 25, and a scanner 26. The controller 21 further includes a CPU 211, a RAM 212, a ROM 213, an NVRAM 214, and an HDD 215.

ROM213は、各種プログラムやデータを格納する。RAM212は、プログラムやデータを一時保持する。NVRAM214は、例えば設定情報等が格納されている。また、HDD215は、各種プログラムやデータを格納する。   The ROM 213 stores various programs and data. The RAM 212 temporarily holds programs and data. The NVRAM 214 stores, for example, setting information and the like. The HDD 215 also stores various programs and data.

CPU211は、ROM213やNVRAM214、HDD215等からプログラムやデータ、設定情報等をRAM212上に読み出し、処理を実行することで、画像形成装置20全体の制御や機能を実現する。   The CPU 211 reads programs, data, setting information, and the like from the ROM 213, the NVRAM 214, the HDD 215, and the like onto the RAM 212 and executes processing to realize control and functions of the entire image forming apparatus 20.

操作パネル22は、ユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部I/F23は、外部装置とのインタフェースである。外部装置には、記録媒体23a等がある。これにより、画像形成装置20は、外部I/F23を介して記録媒体23aの読み取り及び/又は書き込みを行うことができる。記録媒体23aにはICカード、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。   The operation panel 22 includes an input unit that receives an input from a user, and a display unit that performs display. The external I / F 23 is an interface with an external device. The external device is, for example, a recording medium 23a. Thereby, the image forming apparatus 20 can read and / or write the recording medium 23 a via the external I / F 23. The recording medium 23a includes an IC card, a flexible disk, a CD, a DVD, an SD memory card, a USB memory, and the like.

通信I/F24は、画像形成装置20をネットワークN1に接続するインタフェースである。これにより、画像形成装置20は通信I/F24を介してデータ通信を行うことができる。プリンタ25は、印刷データを印刷するための印刷装置である。スキャナ26は原稿を読み取り画像ファイル(電子ファイル)を生成するための読取装置である。   The communication I / F 24 is an interface that connects the image forming apparatus 20 to the network N1. Thus, the image forming apparatus 20 can perform data communication via the communication I / F 24. The printer 25 is a printing device for printing print data. The scanner 26 is a reading device for reading an original and generating an image file (electronic file).

本実施形態に係る画像形成装置20は、上記のハードウェア構成を有することにより、後述するような各種処理を実現できる。   The image forming apparatus 20 according to the present embodiment can realize various processes to be described later by having the above-described hardware configuration.

<ソフトウェア構成>
次に、本実施形態に係る情報処理システム1の処理ブロックについて、図4を参照しながら説明する。図4は、本実施形態に係る情報処理システムの一例の処理ブロックを示す図である。
<Software configuration>
Next, processing blocks of the information processing system 1 according to the present embodiment will be described with reference to FIG. FIG. 4 is a diagram showing processing blocks of an example of the information processing system according to the present embodiment.

≪サービス提供システム≫
図4に示すサービス提供システム10は、サービス処理部110、ドキュメントサービス部120、及びストレージサービス連携部130を有する。これら各部は、サービス提供システム10に搭載(インストール)された1以上のプログラムが、CPU16に実行させる処理により実現される。
«Service provision system»
The service providing system 10 illustrated in FIG. 4 includes a service processing unit 110, a document service unit 120, and a storage service cooperation unit 130. These units are realized by processing that one or more programs installed (installed) in the service providing system 10 cause the CPU 16 to execute.

また、サービス提供システム10は、アプリ情報記憶部160、及び処理情報記憶部170を有する。これら各記憶部は、HDD18により実現可能である。なお、アプリ情報記憶部160及び/又は処理情報記憶部170は、サービス提供システム10とネットワークを介して接続される記憶装置等により実現されても良い。   Further, the service providing system 10 includes an application information storage unit 160 and a processing information storage unit 170. Each of these storage units can be realized by the HDD 18. The application information storage unit 160 and / or the processing information storage unit 170 may be realized by a storage device or the like connected to the service providing system 10 via a network.

サービス処理部110は、アプリ管理部111、ロジック処理部112、データI/F部113、通信中継部114、結果通知生成部115、及び処理状態監視部116を有する。   The service processing unit 110 includes an application management unit 111, a logic processing unit 112, a data I / F unit 113, a communication relay unit 114, a result notification generation unit 115, and a processing state monitoring unit 116.

アプリ管理部111は、画像形成装置20からの要求に応じて、アプリ情報1000に含まれる画面定義を返信する。これにより、画像形成装置20の操作パネル22上に、サービス提供システム10により提供されるサービスを利用するためのアプリ画面が表示される。   In response to a request from the image forming apparatus 20, the application management unit 111 sends back the screen definition included in the application information 1000. As a result, an application screen for using the service provided by the service providing system 10 is displayed on the operation panel 22 of the image forming apparatus 20.

ここで、アプリ情報1000とは、アプリ画面を画像形成装置20に表示させるための画面定義と、当該アプリ情報1000により実現されるサービスの処理内容とが含まれた情報であり、アプリ情報記憶部160に記憶されている。なお、以降では、アプリ情報1000には、一の画面定義と、一の処理内容とが含まれるものとして説明するが、これに限られず、アプリ情報1000には、1以上の画面定義と、1以上の処理内容とが含まれていても良い。   Here, the application information 1000 is information including a screen definition for causing the image forming apparatus 20 to display the application screen and the processing content of the service realized by the application information 1000, and the application information storage unit It is stored in 160. In the following, the application information 1000 will be described as including one screen definition and one process content, but the application information 1000 is not limited to this and one or more screen definitions and one The above processing content may be included.

また、アプリ管理部111は、ロジック処理部112からの要求に応じて、アプリ情報1000に含まれる処理内容を返信する。処理内容とは、スキャン配信サービスやクラウドプリントサービス等のサービス提供システム10により提供されるサービスを実現するための一連の処理が記述されている。なお、このような一連の処理は、処理フローとも称される。   Further, in response to a request from the logic processing unit 112, the application management unit 111 sends back processing content included in the application information 1000. The process content describes a series of processes for realizing a service provided by the service providing system 10 such as a scan distribution service or a cloud print service. Such a series of processing is also referred to as a processing flow.

ロジック処理部112は、画像形成装置20からの要求に応じて、アプリ管理部111から処理内容を取得する。そして、ロジック処理部112は、取得した処理内容に基づく一連の処理を実行する。すなわち、ロジック処理部112は、ドキュメントサービス部120又は/及びストレージサービス連携部130のファイル処理部140に対して、処理内容に従った処理の実行を要求することで、当該一連の処理を実行する。これにより、サービス提供システム10が提供する各種サービスが画像形成装置20に提供される。   The logic processing unit 112 acquires processing content from the application management unit 111 in response to a request from the image forming apparatus 20. Then, the logic processing unit 112 executes a series of processing based on the acquired processing content. That is, the logic processing unit 112 executes the series of processes by requesting the document service unit 120 and / or the file processing unit 140 of the storage service cooperation unit 130 to execute the process according to the process content. . Thus, various services provided by the service providing system 10 are provided to the image forming apparatus 20.

また、ロジック処理部112は、処理内容に基づく一連の処理を実行する際に、当該一連の処理に関する情報を示す処理情報を生成して、処理情報記憶部170に格納する。そして、ロジック処理部112は、処理情報記憶部170に格納した処理情報の更新有無の監視を処理状態監視部116に要求する。   When the logic processing unit 112 executes a series of processing based on the processing content, the logic processing unit 112 generates processing information indicating information on the series of processing, and stores the processing information in the processing information storage unit 170. Then, the logic processing unit 112 requests the processing state monitoring unit 116 to monitor whether or not the processing information stored in the processing information storage unit 170 is updated.

さらに、ロジック処理部112は、処理内容に基づく一連の処理の実行が完了した場合や処理内容に基づく一連の処理の実行中にエラーが発生した場合、当該一連の処理に対応する処理情報を更新する。すなわち、ロジック処理部112は、一連の処理の実行が完了した場合、処理情報に含まれる処理結果を「完了」に更新し、一連の処理の実行中にエラーが発生した場合、処理情報に含まれる処理結果を「エラー」に更新する。なお、ロジック処理部112の詳細な処理ブロックについては、後述する。   Furthermore, the logic processing unit 112 updates processing information corresponding to the series of processes when execution of the series of processes based on the process contents is completed or when an error occurs during execution of the series of processes based on the process contents. Do. That is, the logic processing unit 112 updates the processing result included in the processing information to “completed” when the execution of the series of processing is completed, and includes the processing information when an error occurs during the execution of the series of processing. Update the processing result to "error". The detailed processing blocks of the logic processing unit 112 will be described later.

データI/F部113は、画像形成装置20からの要求に応じて、ストレージサービス連携部130のデータ処理部150に対して、例えば、フォルダ一覧の取得やファイル一覧の取得等を要求する。   In response to a request from the image forming apparatus 20, the data I / F unit 113 requests, for example, acquisition of a folder list and acquisition of a file list to the data processing unit 150 of the storage service cooperation unit 130.

通信中継部114は、画像形成装置20から受け取った各種要求を他の各部に転送する。すなわち、通信中継部114は、サービス処理部110に含まれる他の各部と、画像形成装置20との間の通信を中継する。   The communication relay unit 114 transfers various requests received from the image forming apparatus 20 to other units. That is, the communication relay unit 114 relays communication between the other units included in the service processing unit 110 and the image forming apparatus 20.

結果通知生成部115は、処理状態監視部116からの要求に応じて、ロジック処理部112により実行された一連の処理の処理結果を含む結果通知を生成し、当該結果通知を画像形成装置20に返信する。   The result notification generation unit 115 generates a result notification including the processing result of the series of processing executed by the logic processing unit 112 in response to the request from the processing state monitoring unit 116, and transmits the result notification to the image forming apparatus 20. Send back.

処理状態監視部116は、ロジック処理部112からの要求に応じて、処理情報記憶部170に記憶された処理情報の更新有無を監視する。そして、処理状態監視部116は、処理情報記憶部170に記憶された処理情報に含まる処理結果が更新された場合、結果通知生成部115に対して、処理結果の生成を要求する。   The processing state monitoring unit 116 monitors, in response to a request from the logic processing unit 112, whether or not the processing information stored in the processing information storage unit 170 is updated. Then, when the process result included in the process information stored in the process information storage unit 170 is updated, the process state monitoring unit 116 requests the result notification generation unit 115 to generate the process result.

ドキュメントサービス部120は、サービス提供システム10により提供されるサービスを実現するためのプログラム(モジュール)群である。ドキュメントサービス部120には、例えば、電子ファイルに対してOCR処理を実行するOCR処理121や電子ファイルを画像形成装置20が印刷可能なデータ形式(印刷データ)に変換する印刷変換処理122等が含まれる。   The document service unit 120 is a group of programs (modules) for realizing the service provided by the service providing system 10. The document service unit 120 includes, for example, an OCR process 121 for executing an OCR process on an electronic file, and a print conversion process 122 for converting an electronic file into a data format (print data) that can be printed by the image forming apparatus 20. Be

なお、ドキュメントサービス部120には、これら以外にも、例えば、電子ファイルを圧縮又は解凍するためのプログラム、電子ファイルのデータ形式を変換(例えば、PDF形式に変換)するためのプログラム等、各種の処理を実行するプログラムが含まれていても良い。   In the document service unit 120, various programs such as a program for compressing or decompressing an electronic file, a program for converting the data format of the electronic file (for example, conversion to a PDF format), etc. A program for executing the process may be included.

ストレージサービス連携部130は、ロジック処理部112及びデータI/F部113からの要求に応じて、外部ストレージシステム30に対して、各種処理の実行を要求する。   The storage service cooperation unit 130 requests the external storage system 30 to execute various processes in response to requests from the logic processing unit 112 and the data I / F unit 113.

ここで、サービス提供システム10は、外部ストレージシステム30毎に、ストレージサービス連携部130を有する。すなわち、サービス提供システム10は、外部ストレージシステム30に対して処理を要求するためのストレージサービスA連携部130、外部ストレージシステム30に対して処理を要求するためのストレージサービスB連携部130等を有する。このように、サービス提供システムは、連携して処理を行う外部ストレージシステム30毎に、それぞれの外部ストレージシステム30に対応するストレージサービス連携部130を有する。 Here, the service providing system 10 has a storage service cooperation unit 130 for each external storage system 30. That is, the service providing system 10, the storage service A linkage unit 130 1 for requesting processing to the external storage system 30 1, a storage service B cooperation unit 130 for requesting the processing to the external storage system 30 2 It has 2 mag. As described above, the service providing system includes the storage service cooperation unit 130 corresponding to each external storage system 30 for each external storage system 30 that performs processing in cooperation.

なお、以降では、複数のストレージサービス連携部130について、各々を区別するときは、「ストレージサービスA連携部130」、「ストレージサービスB連携部130」等と添え字を用いて記載する。 Hereinafter, the plurality of storage service cooperation units 130 will be described using subscripts such as “storage service A cooperation unit 130 1 ”, “storage service B cooperation unit 130 2 ”, etc.

ファイル処理部140は、外部ストレージシステム30に保存されている電子ファイルに対する操作(例えば、取得、保存、編集等)を行うための(Application Programming Interface)が定義された共通I/F141及び固有I/F142を有する。   The file processing unit 140 has a common I / F 141 in which an (Application Programming Interface) for performing an operation (for example, acquisition, storage, editing, etc.) on an electronic file stored in the external storage system 30 defined, and a unique I / F. It has F142.

共通I/F141は、複数の外部ストレージシステム30間で共通に利用できるAPIであり、例えば図5(a)に示すようなAPIが挙げられる。換言すれば、ファイル処理部140の共通I/F141は、すべての外部ストレージシステム30が利用できるファイル操作に関する機能(例えば、ファイルの取得、保存等)を利用するためのAPI群である。   The common I / F 141 is an API that can be commonly used among a plurality of external storage systems 30, and, for example, an API as shown in FIG. 5A can be mentioned. In other words, the common I / F 141 of the file processing unit 140 is an API group for using functions (for example, acquisition and storage of files, etc.) related to file operations that all external storage systems 30 can use.

一方、固有I/F142は、特定の外部ストレージシステム30において利用できるAPIであり、例えば図5(b)に示すようなAPIが挙げられる。換言すれば、ファイル処理部140の固有I/F142は、特定の外部ストレージシステム30において利用できるファイル操作に関する機能(例えば、ファイルの編集等)を利用するためのAPI群である。   On the other hand, the unique I / F 142 is an API that can be used in a specific external storage system 30, and, for example, an API as shown in FIG. 5B can be mentioned. In other words, the unique I / F 142 of the file processing unit 140 is an API group for using a function related to file operation (for example, file editing etc.) that can be used in a specific external storage system 30.

したがって、共通I/F141は、すべてのストレージサービス連携部130に対して同様に定義される。一方で、固有I/F142は、当該固有I/F142で定義されるAPIが利用可能な特定の外部ストレージシステム30に対応するストレージサービス連携部130に対して定義される。   Therefore, the common I / F 141 is similarly defined for all the storage service linkage units 130. On the other hand, the unique I / F 142 is defined with respect to the storage service cooperation unit 130 corresponding to the specific external storage system 30 in which the API defined by the unique I / F 142 can be used.

また、データ処理部150は、外部ストレージシステム30で保存されている電子ファイルの書誌情報等のメタデータ(例えば、ファイル一覧、フォルダ一覧等)を取得等するためのAPIが定義された共通I/F151及び固有I/F152を有する。   Also, the data processing unit 150 is a common I / I that defines an API for acquiring metadata (eg, file list, folder list, etc.) such as bibliographic information of electronic files stored in the external storage system 30. It has F151 and the intrinsic | native I / F152.

共通I/F151は、複数の外部ストレージシステム30間で共通に利用できるAPIであり、例えば図5(c)に示すようなAPIが挙げられる。換言すれば、データ処理部150の共通I/F151は、すべての外部ストレージシステム30で利用できるメタデータ取得等の機能を利用するためのAPI群である。   The common I / F 151 is an API that can be commonly used among a plurality of external storage systems 30, and, for example, an API as shown in FIG. In other words, the common I / F 151 of the data processing unit 150 is an API group for using a function such as metadata acquisition that can be used by all the external storage systems 30.

一方、固有I/F152は、特定の外部ストレージシステム30において利用できるAPIであり、例えば図5(d)に示すようなAPIが挙げられる。換言すれば、データ処理部150の固有I/F152は、特定の外部ストレージシステム30において利用できるメタデータ取得等の機能(例えば、画像ファイル一覧の取得等)を利用するためのAPI群である。   On the other hand, the unique I / F 152 is an API that can be used in a specific external storage system 30, and for example, an API as shown in FIG. In other words, the unique I / F 152 of the data processing unit 150 is an API group for using a function (for example, acquisition of an image file list, etc.) such as metadata acquisition that can be used in a specific external storage system 30.

したがって、共通I/F151は、すべてのストレージサービス連携部130に対して同様に定義される。一方で、固有I/F151は、当該固有I/F181で定義されるAPIが利用可能な特定の外部ストレージシステム30に対応するストレージサービス連携部130に対して定義される。   Therefore, the common I / F 151 is similarly defined for all the storage service linkage units 130. On the other hand, the unique I / F 151 is defined with respect to the storage service cooperation unit 130 corresponding to the specific external storage system 30 in which the API defined by the unique I / F 181 can be used.

以上のように、本実施形態に係るサービス提供システム10は、連携して処理を行う外部ストレージシステム30毎に、それぞれの外部ストレージシステム30に対応するストレージサービス連携部130を有する。このため、連携先となる外部ストレージシステム30を追加等する場合には、当該外部ストレージシステム30に対応するストレージサービス連携部130をサービス提供システム10に追加等すれば良い。   As described above, the service providing system 10 according to the present embodiment has the storage service cooperation unit 130 corresponding to each external storage system 30 for each external storage system 30 that performs processing in cooperation. Therefore, when adding an external storage system 30 to be a cooperation destination, the storage service cooperation unit 130 corresponding to the external storage system 30 may be added to the service providing system 10.

したがって、連携先となる外部ストレージシステム30の追加等に伴う影響を局所化することができる。換言すれば、他の処理ブロック(サービス処理部110やドキュメントサービス部120等)に影響を与えることなく(すなわち、他の処理ブロックを修正等する必要なく)、連携先となる外部ストレージシステム30の追加等を行うことができる。これにより、連携先の外部ストレージシステム30の追加等の開発に要する工数を削減することができる。なお、ストレージサービス連携部130の追加等は、SDK(Software Development Kit)を用いて行うことができる。   Therefore, it is possible to localize the influence accompanying the addition of the external storage system 30 which is the cooperation destination. In other words, without affecting other processing blocks (such as the service processing unit 110 and the document service unit 120) (that is, there is no need to modify the other processing blocks, etc.), It is possible to add and so on. As a result, it is possible to reduce the number of man-hours required for development such as addition of the external storage system 30 of the cooperation destination. The addition of the storage service cooperation unit 130 can be performed using a software development kit (SDK).

また、ストレージサービス連携部130は、共通I/F141及び固有I/F142をそれぞれ異なるモジュール等で定義している。また、共通I/F141及び固有I/F142で定義されるAPIは、「ストレージサービス名」(外部サービス名)を指定することで利用することができる(すなわち、「ストレージサービス名」(外部サービス名)が可変部分となっている)。   In addition, the storage service cooperation unit 130 defines the common I / F 141 and the unique I / F 142 with different modules and the like. Also, the API defined by common I / F 141 and unique I / F 142 can be used by specifying "storage service name" (external service name) (ie, "storage service name" (external service name) ) Is a variable part).

したがって、連携先の外部ストレージシステム30を追加する場合には、他のストレージサービス連携部130に定義されている共通I/F141を再利用することができる。換言すれば、連携先の外部ストレージシステム30を追加する場合には、当該追加する外部ストレージシステム30の固有I/F142のみを開発すれば良い。これにより、連携先の外部ストレージシステム30の追加等の開発に要する工数をさらに削減することができる。なお、このことは、データ処理部150の共通I/F151及び固有I/F152に関しても同様である。   Therefore, when the external storage system 30 of the cooperation destination is added, the common I / F 141 defined in the other storage service cooperation unit 130 can be reused. In other words, when adding the external storage system 30 of the cooperation destination, it is sufficient to develop only the unique I / F 142 of the external storage system 30 to be added. As a result, it is possible to further reduce the number of man-hours required for development such as addition of the external storage system 30 of the cooperation destination. The same applies to the common I / F 151 and the unique I / F 152 of the data processing unit 150.

アプリ情報記憶部160は、アプリ情報1000を記憶する。アプリ情報1000は、アプリ画面を画像形成装置20に表示させるための画面定義と、サービスを実現するための処理内容とを含み、アプリ情報1000を一意に識別するためのアプリID毎に、アプリ情報記憶部160に記憶されている。   The application information storage unit 160 stores application information 1000. The application information 1000 includes a screen definition for displaying the application screen on the image forming apparatus 20 and processing contents for realizing the service, and application information for each application ID for uniquely identifying the application information 1000. It is stored in the storage unit 160.

本実施形態では、ストレージサービスAと連携したスキャン配信サービスを実現するためのアプリ情報1000を「アプリ情報1000」とし、当該アプリ情報1000のアプリIDを「app001」とする。また、本実施形態では、ストレージサービスAと連携したクラウドプリントサービスを実現するためのアプリ情報1000を「アプリ情報1000」とし、当該アプリ情報1000のアプリIDを「app002」とする。 In this embodiment, the application information 1000 for realizing the scan distribution service in cooperation with the storage service A is “application information 1000 1 ”, and the application ID of the application information 1000 1 is “app001”. Further, in the present embodiment, the application information 1000 for realizing the cloud print service in cooperation with the storage service A is “application information 1000 2 ”, and the application ID of the application information 1000 2 is “app002”.

ここで、アプリ情報1000に含まれる画面定義及びアプリ情報1000に含まれる画面定義を、それぞれ図6(a)及び図6(b)に示す。 Here, the screen definition included in the screen definition and application information 1000 2 included in the application information 1000 1, in FIGS 6 (a) and 6 (b).

画面定義には、画像形成装置20の操作パネル22等に表示されるアプリ画面の入力欄(入力ボックス)や選択欄(選択ボックス)等を構成するための情報が記述されている。   The screen definition describes information for configuring an input field (input box) and a selection field (selection box) of an application screen displayed on the operation panel 22 or the like of the image forming apparatus 20.

例えば、図6(a)に示す画面定義のデータ定義部1101では、スキャンにより生成される電子ファイルのファイル名をユーザが入力するための入力欄を構成するための情報が記述されている。また、図6(b)に示す画面定義のデータ定義部1102では、ストレージサービスAにおける保存先フォルダを選択するための選択欄を構成するための情報が記述されている。なお、データ定義部1102の「data_source」には選択欄の各選択要素(ここでは、保存先候補のフォルダ名及びフォルダID)の取得先のURL(Uniform Resource Locator)が記述されている。   For example, in the data definition unit 1101 of the screen definition shown in FIG. 6A, information for forming an input field for the user to input the file name of the electronic file generated by the scan is described. Further, in the data definition unit 1102 of the screen definition shown in FIG. 6B, information for configuring a selection field for selecting a storage destination folder in the storage service A is described. In “data_source” of the data definition unit 1102, a URL (Uniform Resource Locator) of acquisition destination of each selection element (here, folder name and folder ID of storage destination candidate) of the selection column is described.

同様に、図6(b)に示す画面定義におけるデータ定義部1201では、ストレージサービスAに保存されているファイルを選択するための選択欄を構成するための情報が記述されている。なお、データ定義部1201の「data_source」には選択欄の各選択要素(ここでは、ストレージサービスAに保存されているファイルのファイルID)の取得先のURLが記述されている。   Similarly, in the data definition unit 1201 in the screen definition shown in FIG. 6B, information for configuring a selection field for selecting a file stored in the storage service A is described. The “data_source” of the data definition unit 1201 describes the URL of the acquisition destination of each selection element of the selection column (here, the file ID of the file stored in the storage service A).

次に、アプリ情報1000に含まれる処理内容及びアプリ情報1000に含まれる処理内容を、それぞれ図7(a)及び図7(b)に示す。処理内容は、サービス提供システム10により提供されるサービスを実現する一連の処理(すなわち、処理フロー)が記述されたものである。 Next, the processing contents included in the processing content and application information 1000 2 included in the application information 1000 1, in FIGS. 7 (a) and FIG. 7 (b). The processing content describes a series of processing (that is, processing flow) for realizing the service provided by the service providing system 10.

例えば、図7(a)に示す処理内容は、本実施形態に係るスキャン配信サービスを実現するための一連の処理が記述されている。すなわち、図7(a)に示す処理内容には、スキャンされた電子ファイルをOCR処理した後、ストレージサービスAの指定されたフォルダに配信する一連の処理が記述されている。   For example, in the processing content shown in FIG. 7A, a series of processing for realizing the scan distribution service according to the present embodiment is described. That is, in the processing content shown in FIG. 7A, a series of processing is described which distributes the scanned electronic file to a designated folder of the storage service A after the OCR processing.

同様に、図7(b)に示す処理内容は、本実施形態に係るクラウドプリントサービスを実現するための一連の処理が記述されている。すなわち、図7(b)に示す処理内容には、ストレージサービスAから電子ファイルを取得した後、印刷データに変換する一連の処理が記述されている。   Similarly, in the processing content shown in FIG. 7B, a series of processing for realizing the cloud print service according to the present embodiment is described. That is, in the process content shown in FIG. 7B, a series of processes for converting the print data into print data after acquiring the electronic file from the storage service A is described.

以上のように、本実施形態に係るサービス提供システム10は、画像形成装置20に青プリ画面を表示させるための画面定義と、サービスを実現するための一連の処理が記述された処理内容とが含まれるアプリ情報1000を利用してサービスを提供する。このため、サービス提供システム10により提供されるサービスを追加等する場合には、アプリ情報記憶部160にアプリ情報1000を追加等すれば良い。   As described above, in the service providing system 10 according to the present embodiment, the screen definition for causing the image forming apparatus 20 to display the blue prescreen and the process content in which a series of processes for realizing the service are described are included. A service is provided using the included application information 1000. Therefore, when adding a service provided by the service providing system 10, the application information 1000 may be added to the application information storage unit 160.

また、アプリ情報1000を追加するには、画面定義及び処理内容を記述すれば良いため、簡易に開発を行うことができる。したがって、サービスの追加・変更等に伴う開発工数を削減させることができるとともに、例えばサードベンダー等によるサービスの追加・変更等を容易に行うことができる。   Further, in order to add the application information 1000, the screen definition and the processing content may be described, so that development can be easily performed. Therefore, while being able to reduce the development man-hour accompanying the addition, change of service, etc., the addition, change, etc. of service by a third vendor etc. can be performed easily, for example.

処理情報記憶部170は、ロジック処理部112により実行される一連の処理に関する情報である処理情報を記憶する。ここで、処理情報記憶部170に記憶される処理情報の詳細について、図8を参照しながら説明する。図8は、処理情報の一例を示す図である。   The processing information storage unit 170 stores processing information which is information related to a series of processing executed by the logic processing unit 112. Here, the details of the process information stored in the process information storage unit 170 will be described with reference to FIG. FIG. 8 is a diagram showing an example of processing information.

図8に示すように、処理情報は、データ項目として、処理ID、アプリID、コネクションID、及び処理結果を有する。処理IDは、ロジック処理部112により実行される一連の処理を一意に識別する識別情報である。アプリIDは、当該一連の処理が記述された処理内容を含むアプリ情報1000のアプリIDである。   As shown in FIG. 8, the process information has, as data items, a process ID, an application ID, a connection ID, and a process result. The process ID is identification information that uniquely identifies a series of processes executed by the logic processing unit 112. The application ID is an application ID of the application information 1000 including processing content in which the series of processing is described.

コネクションIDは、当該一連の処理の実行を要求した画像形成装置20との間のコネクション(論理的な通信路)を一意に識別する接続情報である。処理結果は、当該一連の処理の実行結果である。処理結果は、例えば、当該一連の処理の実行が正常に終了した場合に、ロジック処理部112により「処理完了」と更新され、当該一連の処理の実行中にエラーが発生した場合、ロジック処理部112により「エラー」と更新される。   The connection ID is connection information that uniquely identifies a connection (logical communication path) with the image forming apparatus 20 that has requested execution of the series of processes. The processing result is the execution result of the series of processing. The processing result is updated, for example, as “processing completed” by the logic processing unit 112 when the execution of the series of processing ends normally, and when an error occurs during the execution of the series of processing, the logic processing unit At 112, "error" is updated.

以上のように、本実施形態に係るサービス提供システム10は、画像形成装置20から実行が要求された処理内容に基づく一連の処理について、当該一連の処理に関する情報を処理情報として記憶する。これにより、本実施形態に係るサービス提供システム10では、当該一連の処理の実行を要求した画像形成装置20との間のコネクションや、当該一連の処理の処理結果等を管理することができる。   As described above, the service providing system 10 according to the present embodiment stores, as processing information, information on the series of processing based on the processing content requested to be executed by the image forming apparatus 20. Thus, the service providing system 10 according to the present embodiment can manage the connection with the image forming apparatus 20 that has requested execution of the series of processes, and the processing result of the series of processes.

≪画像形成装置≫
図4に示す画像形成装置20は、通信中継部210を有する。通信中継部210は、画像形成装置20に搭載(インストール)された1以上のプログラムが、CPU211に実行させる処理により実現される。
<< image forming device >>
The image forming apparatus 20 shown in FIG. 4 has a communication relay unit 210. The communication relay unit 210 is realized by processing that the CPU 211 executes one or more programs installed (installed) in the image forming apparatus 20.

また、画像形成装置20は、クライアントアプリ管理情報記憶部230を有する。クライアントアプリ管理情報記憶部230は、HDD215により実現可能である。   The image forming apparatus 20 further includes a client application management information storage unit 230. The client application management information storage unit 230 can be realized by the HDD 215.

さらに、画像形成装置20は、1以上のクライアントアプリケーション220が搭載(インストール)されている。クライアントアプリケーション220は、サービス提供システム10により提供されるサービスを利用するプログラムである。クライアントアプリケーション220は、例えば、サービス提供システム10が画像形成装置20に公開するWebAPIを用いて、当該サービス提供システム10により提供されるサービスを利用する。なお、以降では、クライアントアプリケーション220を、「クライアントアプリ220」と省略して記載する。   Furthermore, in the image forming apparatus 20, one or more client applications 220 are installed (installed). The client application 220 is a program that uses a service provided by the service providing system 10. The client application 220 uses the service provided by the service providing system 10 using, for example, a Web API that the service providing system 10 publishes to the image forming apparatus 20. In the following, the client application 220 will be abbreviated as “client application 220”.

画像形成装置20は、クライアントアプリ220により、サービス提供システム10により提供されるサービスを実現するための処理の実行要求等を行うことができる。なお、以降では、画像形成装置20に搭載されたクライアントアプリ220について、各々を区別するときは、「クライアントアプリ220」、「クライアントアプリ220」等と添え字を用いて記載する。 The image forming apparatus 20 can use the client application 220 to make an execution request of processing for realizing the service provided by the service providing system 10 or the like. Hereinafter, the client applications 220 installed in the image forming apparatus 20 will be described using subscripts such as “client application 220 1 ” and “client application 220 2 ” when they are distinguished.

また、以降では、スキャン配信サービスを利用するクライアントアプリ220を「クライアントアプリ220」、クラウドプリントサービスを利用するクライアントアプリ220を「クライアントアプリ220」とする。 Further, hereinafter, the client application 220 using the scan delivery service is referred to as “client application 220 1 ”, and the client application 220 using the cloud print service is referred to as “client application 220 2 ”.

通信中継部210は、サービス提供システム10に対して、処理の実行要求等の各種の要求を送信する。また、通信中継部210は、例えば、処理の実行要求に対する結果通知等を受け取った場合に、クライアントアプリ管理情報記憶部230に記憶されたクライアントアプリ管理情報を参照して、該当のクライアントアプリ220に当該結果通知を送信する。   The communication relay unit 210 transmits various requests such as processing execution requests to the service providing system 10. In addition, when the communication relay unit 210 receives, for example, a notification of the result in response to the process execution request, the communication relay unit 210 refers to the client application management information stored in the client application management information storage unit 230 and Send the result notification.

クライアントアプリ管理情報記憶部230は、クライアントアプリ220が利用するサービスを実現するアプリ情報1000と、当該クライアントアプリ220とが対応付けられたクライアントアプリ管理情報を記憶する。ここで、クライアントアプリ管理情報記憶部230に記憶されたクライアントアプリ管理情報の詳細について、図9を参照しながら説明する。図9は、クライアントアプリ情報の一例を示す図である。   The client application management information storage unit 230 stores application information 1000 for realizing the service used by the client application 220 and client application management information in which the client application 220 is associated. Here, the details of the client application management information stored in the client application management information storage unit 230 will be described with reference to FIG. FIG. 9 is a diagram showing an example of client application information.

図9に示すように、クライアントアプリ管理情報は、データ項目として、アプリID、及びコールバック先を有する。アプリIDは、サービス提供システム10により提供されるサービスを実現するアプリ情報1000を識別する識別情報である。コールバック先は、当該アプリIDのアプリ情報1000により実現されるサービスを利用するクライアントアプリ220を識別する識別情報である。コールバック先として指定されるクライアントアプリ220の識別情報は、例えば、クライアントアプリ220のアプリケーションIDや、クライアントアプリ220の格納先のアドレス(パス)を用いれば良い。   As shown in FIG. 9, the client application management information has an application ID and a callback destination as data items. The application ID is identification information that identifies the application information 1000 that implements the service provided by the service providing system 10. The callback destination is identification information that identifies the client application 220 that uses the service realized by the application information 1000 of the application ID. For example, an application ID of the client application 220 or an address (path) of a storage destination of the client application 220 may be used as identification information of the client application 220 designated as a callback destination.

以上のように、本実施形態に係る画像形成装置20では、サービス提供システム10により提供されるサービスを実現するアプリ情報1000のアプリIDと、当該サービスを利用するクライアントアプリ220とを対応付けて管理する。これにより、本実施形態に係る画像形成装置20では、サービス提供システム10から処理の実行要求に対する結果通知を受け取った場合に、当該実行要求を行ったクライアントアプリ220に当該結果通知を渡すことができる。   As described above, in the image forming apparatus 20 according to the present embodiment, the application ID of the application information 1000 for realizing the service provided by the service providing system 10 and the client application 220 for using the service are associated and managed. Do. Thereby, in the image forming apparatus 20 according to the present embodiment, when receiving a result notification for the process execution request from the service providing system 10, the result notification can be passed to the client application 220 that has made the execution request. .

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

≪スキャン配信サービスのアプリ画面の表示処理≫
以降では、本実施形態に係るスキャン配信サービスを利用するためのアプリ画面を画像形成装置20に表示させる処理について、図10を参照しながら説明する。図10は、本実施形態に係るスキャン配信サービスのアプリ画面の表示処理の一例を示す図である。
«Display process of scan delivery service application screen»
Hereinafter, a process of displaying an application screen for using the scan distribution service according to the present embodiment on the image forming apparatus 20 will be described with reference to FIG. FIG. 10 is a view showing an example of display processing of an application screen of the scan distribution service according to the present embodiment.

まず、画像形成装置20のユーザは、クライアントアプリ220を用いて、スキャン配信サービスを利用するためのアプリ画面の表示操作を行う。すると、画像形成装置20のクライアントアプリ220は、当該表示操作を受け付ける(ステップS1001)。 First, the user of the image forming apparatus 20 uses the client application 220 1 performs display operation of the application screen for using the scan delivery service. The client application 220 1 of the image forming apparatus 20 receives the display operation (step S1001).

クライアントアプリ220は、当該表示操作を受け付けると、通信中継部210に対して、アプリ画面を表示させるための画面定義の取得要求を送信する(ステップS1002)。なお、画面定義の取得要求には、スキャン配信サービスを実現するアプリ情報1000のアプリID「app001」が含まれる。 Client application 220 1 accepts the display operation, and transmits to the communication relay unit 210, an acquisition request for screen definition for displaying the application screen (step S1002). It should be noted that the acquisition request of the screen definition, includes the application ID of the application information 1000 1 to realize a scan delivery service "app001".

通信中継部210は、クライアントアプリ220から画面定義の取得要求を受け取ると、サービス提供システム10のサービス処理部110に対して、当該取得要求を送信する(ステップS1003)。 Communication relay unit 210 receives the acquisition request of the screen definition from the client applicant 220 1, the service processing unit 110 of the service providing system 10, and transmits the acquisition request (step S1003).

サービス処理部110の通信中継部114は、画像形成装置20から画面定義の取得要求を受け取ると、当該取得要求をアプリ管理部111に転送する(ステップS1004)。アプリ管理部111は、通信中継部114から画面定義の取得要求を受け取ると、当該取得要求に含まれるアプリID「app001」のアプリ情報1000に含まれる画面定義を、アプリ情報記憶部160から取得する。そして、アプリ管理部111は、取得した画面情報をアプリID「app001」とともに画像形成装置20に返信する。 When the communication relay unit 114 of the service processing unit 110 receives a screen definition acquisition request from the image forming apparatus 20, the communication relay unit 114 transfers the acquisition request to the application management unit 111 (step S1004). The application management unit 111, when the communication relay unit 114 receives the acquisition request of the screen definition, acquires screen definition included in the application information 1000 1 app ID included in the obtaining request "app001", from the application information storing unit 160 Do. Then, the application management unit 111 sends back the acquired screen information to the image forming apparatus 20 together with the application ID “app001”.

画像形成装置20の通信中継部210は、サービス処理部110から画面定義とアプリID「app001」を受け取ると、クライアントアプリ管理情報記憶部230から当該アプリID「app001」に対応するコールバック先「/apps/01」を取得する(ステップS1005)。そして、通信中継部210は、取得したコールバック先「/apps/01」に対応するクライアントアプリ220に画面定義を送信する。 When the communication relay unit 210 of the image forming apparatus 20 receives the screen definition and the application ID "app001" from the service processing unit 110, the communication relay unit 210 of the call application corresponding to the application ID "app001" from the client application management information storage unit 230 "/ "apps / 01" is acquired (step S1005). Then, the communication relay section 210 transmits the screen definition to the client applicant 220 1 corresponding to the obtained call back destination "/ apps / 01".

次に、画像形成装置20のクライアントアプリ220は、画面定義を受け取ると、通信中継部210に対して、当該画面定義の表示用情報の取得要求を送信する(ステップS1006)。通信中継部210は、クライアントアプリ220から表示用情報の取得要求を受け取ると、サービス提供システム10のサービス処理部110に対して、当該取得要求を送信する(ステップS1007)。なお、表示用情報の取得要求には、スキャン配信サービスを実現するアプリ情報1000のアプリID「app001」が含まれる。 Next, the client application 220 1 of the image forming apparatus 20 receives the screen definition, the communication relay section 210 transmits the acquisition request of the display information of the screen definition (step S1006). Communication relay unit 210 receives the acquisition request of the display information from the client applicant 220 1, the service processing unit 110 of the service providing system 10, and transmits the acquisition request (step S1007). It should be noted that the acquisition request of the display information, includes the application ID of the application information 1000 1 to realize a scan delivery service "app001".

ここで表示用情報とは、例えばアプリ画面の選択欄の各選択要素のことである。すなわち、本実施形態では、スキャン配信サービスの配信先(保存先)となるストレージサービスAのフォルダの一覧の取得要求を送信する。このような要求は、図6(a)のデータ定義部1102に記述されている「"data_source"」に定義されているURL「http://sample.xxx.co.jp/service-a/data/folders」にHTTPリクエストを送信することで行うことができる。   Here, the display information is, for example, each selection element of the selection field of the application screen. That is, in this embodiment, the acquisition request for the list of folders of the storage service A, which is the delivery destination (storage destination) of the scan delivery service, is transmitted. Such a request is defined by the URL “http://sample.xxx.co.jp/service-a/data” defined in ““ data_source ”described in the data definition unit 1102 of FIG. It can be done by sending an HTTP request to / folders ".

なお、当該URLのうち、「http://sample.xxx.co.jp」の部分がサービス提供システム10のホスト名、「/service-a/data/folders」の部分がストレージサービス連携部130におけるAPI(すなわち、図5に示すAPI)の指定となる。   In the URL, the "http://sample.xxx.co.jp" portion is the host name of the service providing system 10, and the "/ service-a / data / folders" portion is the storage service linkage unit 130. It becomes specification of API (that is, API shown in FIG. 5).

次に、サービス処理部110の通信中継部114は、画像形成装置20から表示用情報の取得要求を受け取ると、当該取得要求をデータI/F部113に転送する(ステップS1008)。データI/F部113は、通信中継部114から表示用情報の取得要求を受け取ると、当該取得要求を対応するストレージサービス連携部130のデータ処理部150に送信する(ステップS1009)。すなわち、データI/F部113は、上記のURLに含まれる「service-a」(外部サービス名)に基づき、当該取得要求をストレージサービスA連携部130のデータ処理部150に送信する。 Next, when receiving the acquisition request for display information from the image forming apparatus 20, the communication relay unit 114 of the service processing unit 110 transfers the acquisition request to the data I / F unit 113 (step S1008). When the data I / F unit 113 receives the acquisition request for display information from the communication relay unit 114, the data I / F unit 113 transmits the acquisition request to the data processing unit 150 of the corresponding storage service cooperation unit 130 (step S1009). That is, the data I / F unit 113, based on contained in the above URL "service-a" (external service name), and transmits the acquisition request to the data processing unit 150 1 of the Storage Service A linkage unit 130 1.

データ処理部150は、データI/F部113から表示用情報の取得要求を受け取ると、当該取得要求に含まれるURLに基づき、該当の外部ストレージシステム30に対して、フォルダ一覧の取得要求を送信する(ステップS1010)。すなわち、データ処理部150は、データI/F部113から受け取った表示用情報の取得要求に含まれるURLに基づき、共通I/F151に定義されているAPIを利用して、外部ストレージシステム30に処理を要求する。   When the data processing unit 150 receives an acquisition request for display information from the data I / F unit 113, the data processing unit 150 transmits a folder list acquisition request to the corresponding external storage system 30 based on the URL included in the acquisition request. (Step S1010). That is, based on the URL included in the acquisition request for display information received from data I / F unit 113, data processing unit 150 uses the API defined in common I / F 151 to transmit data to external storage system 30. Request processing

より具体的には、データ処理部150は、表示用情報の取得要求に含まれるURLの「/service-a/data/folders」に基づき、共通I/F151に定義されているAPIを用いて、外部ストレージシステム30にフォルダ一覧の取得を要求する。 More specifically, the data processing unit 150 1, based on the "/ service-a / data / folders" in the URL included in the acquisition request of the display information, using the API defined in a common I / F151 1 Te, to request the acquisition of the folder list to the external storage system 30 1.

そして、サービス処理部110は、ストレージサービスA連携部130により取得されたフォルダ一覧をアプリID「app001」とともに画像形成装置20に返信する。なお、フォルダ一覧は、本実施形態に係るスキャン配信サービスにおいて、電子ファイルの保存先の候補となるストレージサービスAのフォルダ名及びフォルダID等の情報である。 The service processing unit 110 sends back to the image forming apparatus 20 to the folder list acquired by the storage service A linkage unit 130 1 together with the application ID "app001". The folder list is information such as the folder name and folder ID of the storage service A which is a candidate of the storage destination of the electronic file in the scan distribution service according to the present embodiment.

画像形成装置20の通信中継部210は、サービス処理部110からフォルダ一覧とアプリID「app001」を受け取ると、クライアントアプリ管理情報記憶部230から当該アプリIDに対応するコールバック先「/apps/01」を取得する(ステップS1011)。そして、通信中継部210は、取得したコールバック先「/apps/01」に対応するクライアントアプリ220にフォルダ一覧を送信する。 When the communication relay unit 210 of the image forming apparatus 20 receives the folder list and the application ID "app001" from the service processing unit 110, the communication relay unit 210 corresponding to the application ID from the client application management information storage unit 230 "/ apps / 01 Is acquired (step S1011). Then, the communication relay section 210 transmits the folder list to the client application 220 1 corresponding to the acquired callback destination "/ apps / 01".

次に、クライアントアプリ220は、画面定義とフォルダ一覧に基づいて、例えば図11に示すようなアプリ画面2000を、操作パネル22に表示させる(ステップS1012)。 Next, the client application 220 1, based on the screen definition and the folder list, for example, the application screen 2000 as shown in FIG. 11, is displayed on the operation panel 22 (step S1012).

ここで、図11に示すアプリ画面2000は、スキャン配信サービスを利用するための画面であり、ファイル名入力欄2001、保存先フォルダ選択欄2002、及びスキャン実行ボタン2003を含む。このようなファイル名入力欄2001は、クライアントアプリ220により、図6(a)に示す画面定義に含まれるデータ定義部1101に基づいて生成される。同様に、保存先フォルダ選択欄2002は、クライアントアプリ220により、図6(a)に示す画面定義に含まれるデータ定義部1102と、フォルダ一覧とに基づいて生成される。 Here, the application screen 2000 shown in FIG. 11 is a screen for using a scan distribution service, and includes a file name input field 2001, a storage destination folder selection field 2002, and a scan execution button 2003. Such file name input field 2001, the client application 220 1, is generated based on data definition unit 1101 included in the screen definition shown in Figure 6 (a). Similarly, the destination folder selection field 2002, the client application 220 1, and the data definition unit 1102 included in the screen definition shown in FIG. 6 (a), is generated on the basis of the folder list.

以上により、本実施形態に係る画像形成装置20の操作パネル22に、スキャン配信サービスを利用するためのアプリ画面2000が表示される。   As described above, the application screen 2000 for using the scan distribution service is displayed on the operation panel 22 of the image forming apparatus 20 according to the present embodiment.

≪スキャン配信サービスの全体処理≫
以降では、本実施形態に係るスキャン配信サービスの全体処理について、図12を参照しながら説明する。図12は、本実施形態に係るスキャン配信サービスの全体処理の一例を示す図である。
«Overall processing of scan delivery service»
Hereinafter, the entire process of the scan distribution service according to the present embodiment will be described with reference to FIG. FIG. 12 is a diagram showing an example of the entire process of the scan distribution service according to the present embodiment.

まず、画像形成装置20のユーザは、図11に示すアプリ画面2000において、ファイル名入力欄2001に所望のファイル名を入力して、保存先フォルダ選択欄2002から所望の保存先フォルダを選択する。そして、画像形成装置20のスキャナ26に原稿をセットして、スキャン実行ボタン2003を押下する(ステップS1201)。   First, the user of the image forming apparatus 20 inputs a desired file name in the file name input field 2001 on the application screen 2000 shown in FIG. 11 and selects the desired storage destination folder from the storage destination folder selection field 2002. Then, the document is set on the scanner 26 of the image forming apparatus 20, and the scan execution button 2003 is pressed (step S1201).

ここで、ユーザはファイル名入力欄2001にファイル名「test」を入力し、保存先フォルダ選択欄2002から「FolderB」を選択して、スキャン実行ボタン2003を押下したものとする。これにより、画像形成装置20のスキャナ26により原稿が読み取られ、ファイル名「test」の電子ファイルが生成される(ステップS1202)。   Here, it is assumed that the user inputs the file name “test” in the file name input field 2001, selects “Folder B” from the storage destination folder selection field 2002, and presses the scan execution button 2003. As a result, the document is read by the scanner 26 of the image forming apparatus 20, and an electronic file having the file name "test" is generated (step S1202).

すると、クライアントアプリ220は、通信中継部210に対して、スキャン配信サービスの処理の実行要求を送信する(ステップS1203)。なお、当該実行要求には、アプリID「app001」と、ステップS1202において生成された電子ファイルと、選択された保存先フォルダ「FolderB」のフォルダID「folder_id_b」とが含まれる。 The client application 220 1, to the communication relay section 210 transmits the execution request of the processing of the scan delivery service (step S1203). The execution request includes the application ID “app001”, the electronic file generated in step S1202, and the folder ID “folder_id_b” of the selected storage destination folder “Folder B”.

通信中継部210は、クライアントアプリ220から処理の実行要求を受け取ると、サービス提供システム10のサービス処理部110に対して、当該実行要求を送信する(ステップS1204)。 Communication relay unit 210 receives the processing execution request from the client applicant 220 1, the service processing unit 110 of the service providing system 10, and transmits the execution request (step S1204).

サービス処理部110の通信中継部114は、画像形成装置20から処理の実行要求を受け取ると、当該実行要求をロジック処理部112に転送する(ステップS1205)。   When the communication relay unit 114 of the service processing unit 110 receives a processing execution request from the image forming apparatus 20, the communication relay unit 114 transfers the execution request to the logic processing unit 112 (step S1205).

そして、ロジック処理部112は、通信中継部114から処理の実行要求を受け取ると、アプリ管理部111を介して、当該実行要求に含まれるアプリIDのアプリ情報1000に含まれる処理内容を取得する(ステップS1206)。より具体的には、ロジック処理部112は、アプリ管理部111対して、アプリID「app001」を含む処理内容の取得要求を送信する。すると、アプリ管理部111は、当該取得要求に含まれるアプリID「app001」のアプリ情報1000に含まれる処理内容をアプリ情報記憶部160から取得し、当該処理内容をロジック処理部112に返信する。 Then, when the logic processing unit 112 receives the process execution request from the communication relay unit 114, the logic processing unit 112 acquires the process content included in the application information 1000 of the application ID included in the execution request via the application management unit 111 ( Step S1206). More specifically, the logic processing unit 112 transmits, to the application management unit 111, an acquisition request for processing content including the application ID “app001”. Then, the application management unit 111 obtains the processing content included in the application information 1000 1 app ID "app001" included in the acquisition request from the application information storing unit 160, and returns the processing contents to the logic processing unit 112 .

次に、ロジック処理部112は、アプリ管理部111から処理内容を受け取ると、処理情報を生成して、処理情報記憶部170に格納する(ステップS1207)。より具体的には、ロジック処理部112は、処理内容に基づく一連の処理を一意に識別する処理IDを生成する。そして、ロジック処理部112は、当該処理IDを、ステップS1204で画像形成装置20から処理の実行要求を受け取った際に用いたコネクション(論理的な通信路)のコネクションIDと、アプリID「app001」とに関連付けて処理情報を生成する。なお、このとき、処理結果には、ブランク(空白)や空値(NULL値)が設定されていれば良い。   Next, upon receiving the processing content from the application management unit 111, the logic processing unit 112 generates processing information and stores the processing information in the processing information storage unit 170 (step S1207). More specifically, the logic processing unit 112 generates a process ID that uniquely identifies a series of processes based on the process content. Then, the logic processing unit 112 determines that the process ID is the connection ID of the connection (logical communication path) used when the process execution request is received from the image forming apparatus 20 in step S 1204, and the application ID “app001”. And generate processing information in association with At this time, blank (blank) or null value (NULL value) may be set as the processing result.

以降では、処理ID「420676」、アプリID「app001」、及びコネクションID「5」を含む処理情報が生成されたものとして説明を続ける。   Hereinafter, the description will be continued on the assumption that the process information including the process ID “420676”, the application ID “app001”, and the connection ID “5” is generated.

続いて、ロジック処理部112は、処理状態監視部116に対して、ステップS1207で生成された処理情報の監視を要求する(ステップS1208)。なお、当該監視要求には、ステップS1207で生成された処理情報の処理ID「420676」が含まれる。   Subsequently, the logic processing unit 112 requests the processing state monitoring unit 116 to monitor the processing information generated in step S1207 (step S1208). The monitoring request includes the process ID “420676” of the process information generated in step S1207.

これにより、処理状態監視部116は、受け取った監視要求に含まれる処理ID「420676」の処理情報の更新有無(すなわち、処理状態に含まれるデータ項目「処理結果」が更新されたか否か)を監視する。   Thereby, the processing state monitoring unit 116 determines whether the processing information of the processing ID “420676” included in the received monitoring request is updated (that is, whether the data item “processing result” included in the processing state has been updated). Monitor.

次に、ロジック処理部112は、アプリID「app001」のアプリ情報1000に含まれる処理内容に基づき、OCRから配信実行までの処理を実行する(ステップS1209)。なお、OCRから配信実行処理の詳細については後述する。 Next, the logic processing unit 112, based on the processing contents included in the application information 1000 1 app ID "app001", executes the processing to delivery run from the OCR (step S1209). The details of the distribution execution process from the OCR will be described later.

次に、ロジック処理部112は、ステップS1209のOCRから配信実行までの処理の結果に応じて、処理ID「420676」の処理情報の処理結果を更新する(ステップS1210)。すなわち、ロジック処理部112は、OCRから配信実行処理の実行が完了した場合、当該処理情報に含まれる処理結果を「完了」に更新する。一方、ロジック処理部112は、OCRから配信実行までの処理の実行中にエラーが発生した場合、当該処理情報に含まれる処理結果を「エラー」に更新する。   Next, the logic processing unit 112 updates the processing result of the processing information of the processing ID “420676” according to the processing result from the OCR in step S1209 to the distribution execution (step S1210). That is, when the execution of the distribution execution processing from the OCR is completed, the logic processing unit 112 updates the processing result included in the processing information to “completion”. On the other hand, when an error occurs during execution of processing from OCR to distribution execution, the logic processing unit 112 updates the processing result included in the processing information to “error”.

続いて、処理状態監視部116は、ロジック処理部112により処理情報が更新されると、これを検知する。そして、処理状態監視部116は、結果通知生成部115に対して、結果通知の生成要求を送信する(ステップS1211)。なお、当該生成要求には、更新が検知された処理情報の処理ID「420676」が含まれる。   Subsequently, when the processing information is updated by the logic processing unit 112, the processing state monitoring unit 116 detects this. Then, the processing state monitoring unit 116 transmits a generation request for result notification to the result notification generation unit 115 (step S1211). The generation request includes the process ID “420676” of the process information for which the update has been detected.

結果通知生成部115は、結果通知の生成要求を受け取ると、当該生成要求に含まれる処理ID「420676」の処理情報からアプリID「app001」及び処理結果を取得して、結果通知を生成する(ステップS1212)。そして、結果通知生成部115は、通信中継部114に対して、生成した結果通知を送信する(ステップS1213)。   When the result notification generation unit 115 receives the generation request for the result notification, the result notification generation unit 115 obtains the application ID “app001” and the processing result from the process information of the process ID “420676” included in the generation request, and generates the result notification ( Step S1212). Then, the result notification generation unit 115 transmits the generated result notification to the communication relay unit 114 (step S1213).

通信中継部114は、結果通知生成部115から結果通知を受け取ると、当該結果通知を画像形成装置20に送信する(ステップS1214)。このとき、通信中継部114は、当該結果通知に対応する処理の実行要求を受け取ったコネクションを用いて、当該実行要求の送信元の画像形成装置20に対して、当該結果通知を送信する。すなわち、通信中継部114は、コネクションID「5」で識別されるコネクションを用いて、実行要求の送信元の画像形成装置20に対して、当該結果通知を送信する。   When the communication relay unit 114 receives the result notification from the result notification generation unit 115, the communication relay unit 114 transmits the result notification to the image forming apparatus 20 (step S1214). At this time, the communication relay unit 114 transmits the result notification to the image forming apparatus 20 that is the transmission source of the execution request, using the connection that has received the processing execution request corresponding to the result notification. That is, the communication relay unit 114 transmits the result notification to the image forming apparatus 20 that is the transmission source of the execution request, using the connection identified by the connection ID “5”.

画像形成装置20の通信中継部210は、サービス処理部110から結果通知を受け取ると、当該結果通知に含まれるアプリID「app001」に対応するコールバック先「/apps/01」を取得する(ステップS1215)。そして、通信中継部210は、取得したコールバック先「/apps/01」に対応するクライアントアプリ220に当該結果通知を送信する(ステップS1216)。これにより、本実施形態に係るスキャン配信サービスの処理の実行要求を行ったクライアントアプリ220に対して、当該実行要求に対する処理結果を含む結果通知が送信される。なお、クライアントアプリ220は、受け取った結果通知に応じて、例えば、結果画面等を操作パネル22に表示させれば良い。 When receiving the result notification from the service processing unit 110, the communication relay unit 210 of the image forming apparatus 20 acquires the callback destination "/ apps / 01" corresponding to the application ID "app001" included in the result notification (step S1215). Then, the communication relay section 210 transmits the result notification to the client applicant 220 1 corresponding to the obtained call back destination "/ apps / 01" (step S1216). Thus, the client application 220 1 the execution request was carried out in the process of scanning and delivery service according to the present embodiment, the result notification including the processing result with respect to the execution request is transmitted. Incidentally, the client application 220 1, in accordance with the received result notice, for example, it is sufficient to display a result screen or the like on the operation panel 22.

≪OCRから配信実行までの処理≫
以降では、図12のステップS1209の処理の詳細について説明する。この処理は、主に、ロジック処理部112により実行される。したがって、図12のステップS1209の処理の詳細についてする前に、ロジック処理部112の詳細な処理ブロックについて、図13を参照しながら説明する。図13は、本実施形態に係るロジック処理部の一例の処理ブロックを示す図である。
«Process from OCR to delivery execution»
Hereinafter, details of the process of step S1209 of FIG. 12 will be described. This process is mainly performed by the logic processing unit 112. Therefore, before the details of the process of step S1209 in FIG. 12, the detailed processing blocks of the logic processing unit 112 will be described with reference to FIG. FIG. 13 is a diagram illustrating processing blocks of an example of the logic processing unit according to the present embodiment.

ロジック処理部112は、フロー実行部181、コンポーネント管理部182、コンポーネント群183、型変換管理部184、及び型変換群185を有する。また、ロジック処理部112は、型変換テーブル3000を利用する。   The logic processing unit 112 includes a flow execution unit 181, a component management unit 182, a component group 183, a type conversion management unit 184, and a type conversion group 185. Also, the logic processing unit 112 uses the type conversion table 3000.

フロー実行部181は、通信中継部114から処理の実行要求を受け取ると、アプリ管理部111を介して、当該実行要求に対応する処理内容をアプリ情報1000から取得する。そして、フロー実行部181は、取得した処理内容に従ってコンポーネントに対して処理の実行を要求する。ここで、コンポーネントとは、処理内容に含まれる一の処理を実行するためのモジュール等であり、例えばクラスや関数等で定義される。   When the flow execution unit 181 receives a process execution request from the communication relay unit 114, the flow execution unit 181 acquires the process content corresponding to the execution request from the application information 1000 via the application management unit 111. Then, the flow execution unit 181 requests the component to execute processing in accordance with the acquired processing content. Here, the component is a module or the like for executing one process included in the process content, and is defined by, for example, a class or a function.

コンポーネント管理部182は、フロー実行部181からの要求に応じて、コンポーネントの生成を行う。なお、コンポーネントの生成とは、例えばクラスで定義されたコンポーネントを、メモリ(例えばRAM14)上に展開することを意味する。   The component management unit 182 generates a component in response to a request from the flow execution unit 181. The generation of the component means, for example, expanding the component defined by the class on the memory (for example, the RAM 14).

コンポーネント群183は、コンポーネントの集合である。コンポーネント群183には、外部ストレージシステム30に電子ファイルを配信するための配信コンポーネント1831、外部ストレージシステム30から電子ファイルを取得するための取得コンポーネント1832が含まれる。また、コンポーネント群183には、電子ファイルにOCR処理を行うためのOCRコンポーネント1833、電子ファイルを印刷データに変換するための印刷変換コンポーネント1834等が含まれる。   The component group 183 is a collection of components. The component group 183 includes a distribution component 1831 for distributing the electronic file to the external storage system 30, and an acquisition component 1832 for acquiring the electronic file from the external storage system 30. The component group 183 also includes an OCR component 1833 for performing an OCR process on the electronic file, a print conversion component 1834 for converting the electronic file into print data, and the like.

さらに、これらの各コンポーネントは、コンポーネント共通I/F1830を有する。コンポーネント共通I/F1830は、各コンポーネントに対して共通に定義されたAPIであり、コンポーネントを生成するためのAPIと、コンポーネントに対して処理の実行を要求するためのAPIとが含まれる。   Furthermore, each of these components has a component common I / F 1830. The component common I / F 1830 is an API defined commonly for each component, and includes an API for generating a component and an API for requesting a component to execute processing.

このように、各コンポーネントがコンポーネント共通I/F1830を有することで、コンポーネントの追加等に伴う影響を局所化することができる。換言すれば、フロー実行部181及びコンポーネント管理部182に影響を与えることなく、コンポーネントの追加等を行うことができる。このため、コンポーネントの追加等の開発に要する工数を削減することができる。   In this manner, each component may include the component common I / F 1830 to localize the effects associated with the addition of components and the like. In other words, components can be added without affecting the flow execution unit 181 and the component management unit 182. Therefore, it is possible to reduce the number of man-hours required for development such as addition of components.

型変換管理部184は、データ型の型変換を管理する。ここで、各コンポーネントは、自身が扱えるデータ型が予め定められている。したがって、型変換管理部184は、コンポーネントからの要求に応じて、図14に示すような型変換テーブル3000を参照して、型変換群185に定義されている型変換を生成する。   The type conversion management unit 184 manages type conversion of data types. Here, each component has a predetermined data type that can be handled by itself. Therefore, the type conversion management unit 184 generates type conversion defined in the type conversion group 185 by referring to the type conversion table 3000 as shown in FIG. 14 in response to a request from the component.

ここで、図14に示す型変換テーブル3000は、変換前のデータ型、変換後のデータ型、及び生成する型変換のデータ項目を有する型変換情報を格納する。これにより、例えば、コンポーネントから「InputStream」のデータ型を「LocalFilePath」のデータ型に変換する要求を受け取った場合、型変換管理部184は、後述する第1の型変換1851を生成する。   Here, the type conversion table 3000 shown in FIG. 14 stores type conversion information having a data type before conversion, a data type after conversion, and data items of type conversion to be generated. Thus, for example, when receiving from the component a request to convert the data type of “InputStream” to the data type of “LocalFilePath”, the type conversion management unit 184 generates a first type conversion 1851 described later.

そして、型変換管理部184は、生成された型変換に対して型変換処理の実行を要求する。ここで、型変換とは、データ型の型変換処理を実行するためのモジュール等であり、例えばクラスや関数等で定義される。   Then, the type conversion management unit 184 requests the generated type conversion to execute the type conversion process. Here, type conversion is a module or the like for executing type conversion processing of data type, and is defined by, for example, a class or function.

なお、型変換の生成とは、例えばクラスで定義された型変換を、メモリ(例えばRAM14)上に展開することを意味する。また、データ型には、例えば、ストリームデータを示すデータ型「InputStream」、記憶装置等に格納されている電子ファイルのパス(アドレス)を示す「LocalFilePath」、電子ファイルの実体を示す「File」等が挙げられる。   Note that generation of type conversion means that, for example, type conversion defined by a class is expanded on a memory (for example, the RAM 14). Further, as data types, for example, data type “InputStream” indicating stream data, “Local File Path” indicating a path (address) of an electronic file stored in a storage device or the like, “File” indicating an entity of the electronic file, etc. Can be mentioned.

型変換群185は、型変換の集合である。型変換群185には、データ型「InputStream」を「LocalFilePath」に変換する第1の型変換1851、「LocalFilePath」を「File」に変換する第2の型変換1852等が含まれる。   The type conversion group 185 is a set of type conversions. The type conversion group 185 includes a first type conversion 1851 that converts the data type “InputStream” to “LocalFilePath”, and a second type conversion 1852 that converts “LocalFilePath” to “File”.

さらに、これらの各型変換は、型変換共通I/F1850を有する。型変換共通I/F1850は、各型変換に対して共通に定義されたAPIであり、型変換を生成するためのAPIと、型変換に対して処理の実行を要求するためのAPIとが含まれる。このように、各型変換が型変換共通I/F1850を有するようにすることで、型変換の追加等に伴う影響を局所化することができる。換言すれば、型変換管理部184に影響を与えることなく、コンポーネントの追加等を行うことができる。これにより、型変換の追加等の開発に要する工数を削減することができる。   Furthermore, each of these type conversions has a type conversion common I / F 1850. The type conversion common I / F 1850 is an API defined commonly for each type conversion, and includes an API for generating type conversion and an API for requesting execution of processing for type conversion. Be As described above, by causing each type conversion to have a type conversion common I / F 1850, it is possible to localize the effects accompanying the addition of type conversion and the like. In other words, components can be added without affecting the type conversion management unit 184. This can reduce the number of man-hours required for development such as addition of type conversion.

続いて、図12のステップS1209の処理の詳細について、図15を参照しながら説明する。図15は、本実施形態に係るOCRから配信実行までの処理の一例のシーケンスを示す図である。   Subsequently, the details of the process of step S1209 of FIG. 12 will be described with reference to FIG. FIG. 15 is a diagram showing a sequence of an example of processing from OCR to delivery execution according to the present embodiment.

フロー実行部181は、アプリ管理部111から取得した処理内容に従って、コンポーネント管理部182に対して、コンポーネントの取得を要求する(ステップS1501)。より具体的には、フロー実行部181は、図7(a)に示す処理内容の「From("file:input")」の次に指定されている「.to("process:ocr")」に基づき、コンポーネント管理部182に対して、OCRコンポーネント1833の取得を要求する。   The flow execution unit 181 requests the component management unit 182 to acquire a component according to the processing content acquired from the application management unit 111 (step S1501). More specifically, the flow execution unit 181 selects ".to (" process: ocr ")" specified next to "From (" file: input ")" of the processing content shown in FIG. 7A. And requests the component management unit 182 to acquire the OCR component 1833.

コンポーネント管理部182は、OCRコンポーネント1833の取得要求を受け取ると、OCRコンポーネント1833を生成する(ステップS1502)。OCRコンポーネント1833の生成は、コンポーネント共通I/F1830に定義されたコンポーネントを生成するためのAPIを用いて行うことができる。   When receiving the acquisition request for the OCR component 1833, the component management unit 182 generates the OCR component 1833 (step S1502). The generation of the OCR component 1833 can be performed using an API for generating a component defined in the component common I / F 1830.

そして、OCRコンポーネント1833が生成されると、コンポーネント管理部182は、フロー実行部181に対して、OCRコンポーネント1833を返信する。これは、例えば、コンポーネント管理部182は、OCRコンポーネント1833が展開されたメモリ(例えばRAM14)上のアドレスを、フロー実行部181に返信すれば良い。   Then, when the OCR component 1833 is generated, the component management unit 182 returns the OCR component 1833 to the flow execution unit 181. For example, the component management unit 182 may return the address on the memory (for example, the RAM 14) in which the OCR component 1833 is expanded to the flow execution unit 181.

フロー実行部181は、OCRコンポーネント1833が生成されると、当該OCRコンポーネント1833に対して、データを指定して処理の実行を要求する(ステップS1503)。なお、ここで指定されるデータは、データ型が「InputStream」としてクライアントアプリ220から渡された電子ファイルである。 When the OCR component 1833 is generated, the flow execution unit 181 designates data and requests the OCR component 1833 to execute processing (step S1503). It should be noted that the data that is specified here, is an electronic file that data type is passed from the client application 220 1 as "InputStream".

すなわち、フロー実行部181は、クライアントアプリ220からデータ型「InputStream」として渡される電子ファイルを、単に「データ」として(データ型を意識することなく)、OCRコンポーネント1833に渡して処理の実行を要求する。図15では、このようにデータ型を意識することなく渡される電子ファイル等を、単に「データ」と表す。 That is, the flow execution unit 181, an electronic file to be passed from the client applicant 220 first data type as "InputStream" simply as "data" (without regard to data type), the execution of the transfer processing in the OCR component 1833 To request. In FIG. 15, an electronic file or the like passed without being aware of the data type is simply referred to as "data".

OCRコンポーネント1833は、フロー実行部181から実行要求を受け取ると、型変換管理部184に対して、型変換を要求する(ステップS1504)。なお、当該型変換要求には、データと、OCRコンポーネント1833が扱うことができるデータ型を示す「LocalFilePath」の指定とが含まれる。   When the OCR component 1833 receives the execution request from the flow execution unit 181, it requests the type conversion management unit 184 for type conversion (step S1504). The type conversion request includes data and designation of “LocalFilePath” indicating a data type that the OCR component 1833 can handle.

型変換管理部184は、OCRコンポーネント1833から型変換要求を受け取ると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする(ステップS1505)。ここでは、受け取った型変換要求に含まれるデータのデータ型は「InputStream」である一方、指定されたデータ型は「LocalFilePath」であるから、一致しないものと判断される。   When receiving a type conversion request from the OCR component 1833, the type conversion management unit 184 checks whether the data type of the data included in the type conversion request matches the designated data type (step S1505). . Here, since the data type of the data included in the received type conversion request is “InputStream”, and the designated data type is “LocalFilePath”, it is determined that they do not match.

すると、型変換管理部184は、型変換テーブル3000を参照して、「InputStream」を「LocalFilePath」に変換するための型変換を特定して(ここでは、第1の型変換1851が特定される)、当該特定された型変換を生成する(ステップS1506)。   Then, the type conversion management unit 184 refers to the type conversion table 3000 and specifies type conversion for converting “InputStream” to “LocalFilePath” (here, the first type conversion 1851 is specified. And generates the identified type conversion (step S1506).

次に、型変換管理部184は、生成された第1の型変換1851に対して、データを指定して型変換処理の実行を要求する(ステップS1507)。すると、第1の型変換1851は、指定されたデータのデータ型を「InputStream」から「LocalFilePath」に変換して(ステップS1508)、当該変換後のデータを型変換管理部184に返信する。そして、型変換管理部184は、型変換後のデータをOCRコンポーネント1833に返信する(ステップS1509)。   Next, the type conversion management unit 184 requests the generated first type conversion 1851 to execute the type conversion process by designating data (step S1507). Then, the first type conversion 1851 converts the data type of the designated data from “InputStream” to “LocalFilePath” (step S1508), and sends the converted data to the type conversion management unit 184. Then, the type conversion management unit 184 sends back the data after type conversion to the OCR component 1833 (step S1509).

OCRコンポーネント1833は、型変換管理部184から型変換後のデータを受け取ると、処理を実行する(ステップS1510)。すなわち、OCRコンポーネント1833は、データ型「LocalFilePath」のデータ(すなわち、パス又はアドレス)により示される電子ファイルに対して、OCR処理を実行する。より具体的には、OCRコンポーネント1833は、ドキュメントサービス部120のOCR処理121に処理を要求し、OCR処理121が当該電子ファイルに対して処理を実行する。   Upon receiving the data after type conversion from the type conversion management unit 184, the OCR component 1833 executes processing (step S1510). That is, the OCR component 1833 performs an OCR process on the electronic file indicated by data (that is, a path or an address) of the data type “LocalFilePath”. More specifically, the OCR component 1833 requests processing to the OCR processing 121 of the document service unit 120, and the OCR processing 121 executes processing on the electronic file.

そして、OCRコンポーネント1833は、データをフロー実行部181に返信する。なお、ここで、返信されるデータは、OCR処理後の電子ファイルを示すパス又はアドレスである(すなわち、返信されるデータのデータ型は「LocalFilePath」である。)。   Then, the OCR component 1833 sends the data back to the flow execution unit 181. Here, the data to be returned is a path or an address indicating the electronic file after the OCR processing (that is, the data type of the data to be returned is “Local File Path”).

次に、フロー実行部181は、アプリ管理部111から取得した処理内容に従って、コンポーネント管理部182に対して、コンポーネントの取得を要求する(ステップS1511)。より具体的には、フロー実行部181は、図7(a)に示す処理内容の「.to("process:ocr")」の次に指定されている「.to("strage:send_to_folder?type=service-a")」に基づき、コンポーネント管理部182に対して、配信コンポーネント1831の取得を要求する。   Next, the flow execution unit 181 requests the component management unit 182 to acquire a component according to the processing content acquired from the application management unit 111 (step S1511). More specifically, the flow execution unit 181 selects “.to (“ strage: send_send_to_folder? Type) ”which is specified next to“ .to (“process: ocr”) ”of the processing content shown in FIG. Based on “service−a”) ”, the component management unit 182 is requested to acquire the distribution component 1831.

なお、ここで指定されている処理内容のうち「?type=service-a」の部分はオプションパラメータと称され、配信コンポーネント1831の処理によるデータのアップロード先のストレージサービスが「ストレージサービスA」であることを示している。また、上記の指定されている処理内容に、図12のステップS1205の実行要求に含まれる保存先(保存先フォルダのフォルダID)をオプションパラメータとして付加して「.to("strage:send_to_folder? type=service-a&folder_id_b")」としても良い。   Of the processing content specified here, the part of “? Type = service-a” is called an optional parameter, and the storage service of the data upload destination by the processing of distribution component 1831 is “storage service A”. It is shown that. In addition, the storage destination (folder ID of the storage destination folder) included in the execution request in step S1205 of FIG. 12 is added as an optional parameter to the above-described designated processing content, and the ".to (" strage: send_to_folder? = service-a & folder_id_b ")".

コンポーネント管理部182は、配信コンポーネント1831の取得要求を受け取ると、配信コンポーネント1831を生成する(ステップS1512)。配信コンポーネント1831の生成は、コンポーネント共通I/F1830に定義されたコンポーネントを生成するためのAPIを用いて行うことができる。   When the component management unit 182 receives the acquisition request for the distribution component 1831, the component management unit 182 generates the distribution component 1831 (step S1512). The generation of the distribution component 1831 can be performed using an API for generating a component defined in the component common I / F 1830.

そして、配信コンポーネント1831が生成されると、コンポーネント管理部182は、配信コンポーネント1831をフロー実行部181に返信する。これは、例えば、コンポーネント管理部182は、配信コンポーネント1831が展開されたメモリ(例えばRAM14)上のアドレスを、フロー実行部181に返信すれば良い。   Then, when the distribution component 1831 is generated, the component management unit 182 sends the distribution component 1831 back to the flow execution unit 181. For example, the component management unit 182 may return the address on the memory (for example, the RAM 14) where the distribution component 1831 is expanded to the flow execution unit 181.

フロー実行部181は、配信コンポーネント1831が生成されると、当該配信コンポーネント1831に対して、データを指定して処理の実行を要求する(ステップS1513)。なお、ここで指定されたデータのデータ型は「LocalFilePath」である。   When the distribution component 1831 is generated, the flow execution unit 181 requests the distribution component 1831 to execute data processing by specifying data (step S1513). The data type of the data specified here is "Local File Path".

配信コンポーネント1831は、フロー実行部181から実行要求を受け取ると、型変換管理部184に対して、型変換を要求する(ステップS1514)。なお、当該型変換要求には、データと、配信コンポーネント1831が扱うことができるデータ型を示す「LocalFilePath」の指定とが含まれる。   When the distribution component 1831 receives the execution request from the flow execution unit 181, the distribution component 1831 requests the type conversion management unit 184 for type conversion (step S1514). The type conversion request includes data and designation of “LocalFilePath” indicating a data type that can be handled by the distribution component 1831.

型変換管理部184は、配信コンポーネント1831から型変換要求を受け取ると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする(ステップS1515)。ここでは、受け取った型変換要求に含まれるデータのデータ型は「LocalFilePath」であり、指定されたデータ型も「LocalFilePath」であるから、一致するものと判断される。   When receiving the type conversion request from the distribution component 1831, the type conversion management unit 184 checks whether the data type of the data included in the type conversion request matches the designated data type (step S 1515). . Here, since the data type of the data included in the received type conversion request is “Local File Path” and the designated data type is also “Local File Path”, it is determined that they match.

そして、型変換管理部184は、型変換要求に含まれていたデータを、そのまま配信コンポーネント1831に送信する(ステップS1516)。このように、データ型チェック(ステップS1515の処理)で両者のデータ型が一致する場合には、型変換管理部184は型変換の生成を行わない。   Then, the type conversion management unit 184 sends the data included in the type conversion request as it is to the distribution component 1831 (step S1516). As described above, when the data types of the two coincide with each other in the data type check (processing of step S1515), the type conversion management unit 184 does not generate the type conversion.

配信コンポーネント1831は、型変換管理部184からデータを受け取ると、処理を実行する(ステップS1517)。すなわち、本実施形態では、配信コンポーネント1831は、ストレージサービスA連携部130のファイル処理部140に対して、共通I/F141として定義されているファイル保存のAPIを用いて、データの配信実行を要求する。 Upon receiving the data from the type conversion management unit 184, the distribution component 1831 executes a process (step S1517). That is, in this embodiment, the distribution component 1831, the file processing unit 140 1 of the Storage Service A linkage unit 130 1, using the API of the file storage that is defined as a common I / F 141 1, the distribution of the data Request execution.

より具体的には、配信コンポーネント1831は、ストレージサービスA連携部130のファイル処理部140に対して、図5(a)に示されるようにAPIとして「service-a/process/folder」を用いてデータの配信実行を要求する。これにより、ストレージサービスAのフォルダ「FolderB」に、ファイル名「test」の電子ファイル(スキャンにより生成された電子ファイルに対してOCR処理した電子ファイル)が保存される。 More specifically, the distribution component 1831, the file processing unit 140 1 of the Storage Service A linkage unit 130 1, a "service-a / process / folder" as API, as shown in FIGS. 5 (a) Use to request data delivery execution. As a result, an electronic file with the file name “test” (an electronic file obtained by performing an OCR process on an electronic file generated by scanning) is stored in the folder “Folder B” of the storage service A.

そして、配信コンポーネント1831は、フロー実行部181に対して、データを返信する。ここで、返信されるデータは、配信コンポーネント1831による配信結果である。   Then, the distribution component 1831 returns data to the flow execution unit 181. Here, the data to be returned is the distribution result by the distribution component 1831.

以上により、本実施形態に係るスキャン配信サービスにおけるOCRから配信実行までの一連の処理が完了する。   As described above, a series of processes from OCR to delivery execution in the scan delivery service according to the present embodiment are completed.

≪クラウドプリントサービスのアプリ画面の表示処理≫
以降では、本実施形態に係るクラウドプリントサービスを利用するためのアプリ画面を画像形成装置20に表示させる処理について、図16を参照しながら説明する。図16は、本実施形態に係るクラウドプリントサービスのアプリ画面の表示処理の一例のシーケンスを示す図である。
«Display processing of cloud print service application screen»
In the following, the process of causing the image forming apparatus 20 to display an application screen for using the cloud print service according to the present embodiment will be described with reference to FIG. FIG. 16 is a diagram showing a sequence of an example of display processing of an application screen of the cloud print service according to the present embodiment.

まず、画像形成装置20のユーザは、クライアントアプリ220を用いて、クラウドプリントサービスを利用するためのアプリ画面の表示操作を行う。すると、画像形成装置20のクライアントアプリ220は、当該表示操作を受け付ける(ステップS1601)。 First, the user of the image forming apparatus 20 uses the client application 220 2 performs display operation of the application screen for using the cloud print service. The client application 220 2 of the image forming apparatus 20 receives the display operation (step S1601).

クライアントアプリ220は、当該表示操作を受け付けると、通信中継部210に対して、アプリ画面を表示させるための画面定義の取得要求を送信する(ステップS1602)。なお、画面定義の取得要求には、クラウドプリントサービスを実現するアプリ情報1000のアプリID「app002」が含まれる。 Client application 220 2 accepts the display operation, and transmits to the communication relay unit 210, an acquisition request for screen definition for displaying the application screen (step S1602). It should be noted that the acquisition request of the screen definition, includes the application ID of the application information 1000 2 to realize the cloud print service "app002".

通信中継部210は、クライアントアプリ220から画面定義の取得要求を受け取ると、サービス提供システム10のサービス処理部110に対して、当該取得要求を送信する(ステップS1603)。 Communication relay unit 210 receives the acquisition request of the screen definition from the client applicant 220 2, to the service processing unit 110 of the service providing system 10, and transmits the acquisition request (step S1603).

サービス処理部110の通信中継部114は、画像形成装置20から画面定義の取得要求を受け取ると、当該取得要求をアプリ管理部111に転送する(ステップS1604)。アプリ管理部111は、通信中継部114から画面定義の取得要求を受け取ると、当該取得要求に含まれるアプリID「app002」のアプリ情報1000に含まれる画面定義を、アプリ情報記憶部160から取得する。そして、アプリ管理部111は、取得した画面情報をアプリID「app002」とともに画像形成装置20に返信する。 When receiving the screen definition acquisition request from the image forming apparatus 20, the communication relay unit 114 of the service processing unit 110 transfers the acquisition request to the application management unit 111 (step S1604). The application management unit 111, when the communication relay unit 114 receives the acquisition request of the screen definition, acquires screen definition included in the application information 1000 and second application ID "app002" included in the acquisition request, from the application information storing unit 160 Do. Then, the application management unit 111 sends the acquired screen information to the image forming apparatus 20 together with the application ID “app002”.

画像形成装置20の通信中継部210は、サービス処理部110から画面定義とアプリID「app002」を受け取ると、クライアントアプリ管理情報記憶部230から当該アプリID「app002」に対応するコールバック先「/apps/02」を取得する(ステップS1605)。そして、通信中継部210は、取得したコールバック先「/apps/02」に対応するクライアントアプリ220に画面定義を送信する。 When the communication relay unit 210 of the image forming apparatus 20 receives the screen definition and the application ID “app002” from the service processing unit 110, the communication relay unit 210 of the call application destination “/ app002” from the client application management information storage unit 230 "apps / 02" is acquired (step S1605). Then, the communication relay section 210 transmits the screen definition to the client applicant 220 2 corresponding to the acquired call back destination "/ apps / 02".

次に、画像形成装置20のクライアントアプリ220は、画面定義を受け取ると、通信中継部210に対して、当該画面定義の表示用情報の取得要求を送信する(ステップS1606)。通信中継部210は、クライアントアプリ220から表示用情報の取得要求を受け取ると、サービス提供システム10のサービス処理部110に対して、当該取得要求を送信する(ステップS1607)。なお、表示用情報の取得要求には、クラウドプリントサービスを実現するアプリ情報1000のアプリID「app002」が含まれる。 Next, the client application 220 2 of the image forming apparatus 20 receives the screen definition, the communication relay section 210 transmits the acquisition request of the display information of the screen definition (step S1606). Communication relay unit 210 receives the acquisition request of the display information from the client applicant 220 2, to the service processing unit 110 of the service providing system 10, and transmits the acquisition request (step S1607). It should be noted that the acquisition request of the display information, includes the application ID of the application information 1000 2 to realize the cloud print service "app002".

すなわち、クライアントアプリ220は、クラウドプリントサービスの印刷対象の候補となるストレージサービスAの電子ファイルの一覧の取得要求を送信する。このような要求は、図6(b)のデータ定義部1201に記述されている「"data_source"」に定義されているURL「http://sample.xxx.co.jp/service-a/data/files」にHTTPリクエストを送信することで行うことができる。 That is, the client application 220 2 transmits a request to obtain a list of electronic file storage service A to be printed in the candidate cloud print service. Such a request is defined by the URL "http://sample.xxx.co.jp/service-a/data" defined in "" data_source "" described in the data definition unit 1201 of FIG. 6B. It can be done by sending an HTTP request to "/ files".

次に、サービス処理部110の通信中継部114は、画像形成装置20から表示用情報の取得要求を受け取ると、当該取得要求をデータI/F部113に転送する(ステップS1608)。データI/F部113は、通信中継部114から表示用情報の取得要求を受け取ると、当該取得要求を対応するストレージサービス連携部130のデータ処理部150に送信する(ステップS1609)。すなわち、データI/F部113は、上記のURLに含まれる「service-a」(外部サービス名)に基づき、当該取得要求をストレージサービスA連携部130のデータ処理部150に送信する。 Next, when receiving the acquisition request for display information from the image forming apparatus 20, the communication relay unit 114 of the service processing unit 110 transfers the acquisition request to the data I / F unit 113 (step S1608). When the data I / F unit 113 receives an acquisition request for display information from the communication relay unit 114, the data I / F unit 113 transmits the acquisition request to the data processing unit 150 of the corresponding storage service cooperation unit 130 (step S1609). That is, the data I / F unit 113, based on contained in the above URL "service-a" (external service name), and transmits the acquisition request to the data processing unit 150 1 of the Storage Service A linkage unit 130 1.

データ処理部150は、データI/F部113から表示用情報の取得要求を受け取ると、当該取得要求に含まれるURLに基づき、該当の外部ストレージシステム30に対してファイル一覧の取得要求を送信する(ステップS1610)。すなわち、データ処理部150は、データI/F部113から受け取った表示用情報の取得要求に含まれるURLに基づき、共通I/F151に定義されているAPIを利用して、該当の外部ストレージシステム30に処理を要求する。   When the data processing unit 150 receives an acquisition request for display information from the data I / F unit 113, the data processing unit 150 transmits a file list acquisition request to the corresponding external storage system 30 based on the URL included in the acquisition request. (Step S1610). That is, the data processing unit 150 uses the API defined in the common I / F 151 based on the URL included in the acquisition request for display information received from the data I / F unit 113 to use the corresponding external storage system. Request 30 for processing.

より具体的には、データ処理部150は、表示用情報の取得要求に含まれるURLの「/service-a/data/files」に基づき、共通I/F151に定義されているAPIを用いて、外部ストレージシステム30にフォルダ一覧の取得を要求する。 More specifically, the data processing unit 150 1, based on the "/ service-a / data / files" on the URL included in the acquisition request of the display information, using the API defined in a common I / F151 1 Te, to request the acquisition of the folder list to the external storage system 30 1.

そして、サービス処理部110は、ストレージサービスA連携部130により取得されたファイル一覧をアプリID「app002」とともに画像形成装置20に返信する。なお、ファイル一覧は、本実施形態に係るクラウドプリントサービスにおいて、印刷対象の候補となるストレージサービスAに保存されている電子ファイルのファイル名及びファイルID等の情報である。 The service processing unit 110 sends back to the image forming apparatus 20 a list of files that have been acquired by the storage service A linkage unit 130 1 together with the application ID "app002". The file list is information such as the file name and the file ID of an electronic file stored in the storage service A which is a candidate for printing in the cloud print service according to the present embodiment.

画像形成装置20の通信中継部210は、サービス処理部110からファイル一覧とアプリID「app002」を受け取ると、クライアントアプリ管理情報記憶部230から当該アプリIDに対応するコールバック先「/apps/02」を取得する(ステップS1611)。そして、通信中継部210は、取得したコールバック先「/apps/01」に対応するクライアントアプリ220にファイル一覧を送信する。 When the communication relay unit 210 of the image forming apparatus 20 receives the file list and the application ID "app002" from the service processing unit 110, the call relay destination "/ apps / 02" corresponding to the application ID from the client application management information storage unit 230. Is acquired (step S1611). Then, the communication relay unit 210 transmits the file list to the client application 220 2 corresponding to the acquired callback destination "/ apps / 01".

次に、クライアントアプリ220は、画面定義とファイル一覧に基づいて、例えば図17に示すようなアプリ画面4000を、操作パネル22に表示させる(ステップS1612)。 Next, the client application 220 2, based on the screen definition and the file list, for example, the application screen 4000 as shown in FIG. 17, is displayed on the operation panel 22 (step S1612).

ここで、図17に示すアプリ画面4000は、クラウドプリントサービスを利用するための画面であり、印刷対象ファイルを選択するためのファイル選択欄4001、及びプリント実行ボタン4002を含む。このようなファイル選択欄4001は、クライアントアプリ220により、図6(b)に示す画面定義に含まれるデータ定義部1201と、ファイル一覧とに基づいて生成される。 Here, the application screen 4000 shown in FIG. 17 is a screen for using the cloud print service, and includes a file selection field 4001 for selecting a print target file, and a print execution button 4002. Such file selection field 4001, the client application 220 2, a data definition unit 1201 included in the screen definition shown in FIG. 6 (b), is generated on the basis of the file list.

以上により、本実施形態に係る画像形成装置20の操作パネル22に、クラウドプリントサービスを利用するためのアプリ画面4000が表示される。   As described above, the application screen 4000 for using the cloud print service is displayed on the operation panel 22 of the image forming apparatus 20 according to the present embodiment.

≪クラウドプリントサービスの全体処理≫
以降では、本実施形態に係るクラウドプリントサービスの全体処理について、図18を参照しながら説明する。図18は、本実施形態に係るクラウドプリントサービスの全体処理の一例のシーケンスを示す図である。
«Overall processing of cloud print service»
Hereinafter, the overall processing of the cloud print service according to the present embodiment will be described with reference to FIG. FIG. 18 is a diagram showing a sequence of an example of the overall processing of the cloud print service according to the present embodiment.

まず、画像形成装置20のユーザは、図17に示すアプリ画面4000において、ファイル選択欄4001から所望のファイルを選択して、プリント実行ボタン4002を押下する(ステップS1801)。ここで、ユーザは、ファイル選択欄4001から「FileA」を選択して、プリント実行ボタン4002を押下したものとする。   First, the user of the image forming apparatus 20 selects a desired file from the file selection field 4001 on the application screen 4000 shown in FIG. 17 and presses the print execution button 4002 (step S1801). Here, it is assumed that the user selects “File A” from the file selection field 4001 and presses the print execution button 4002.

すると、クライアントアプリ220は、通信中継部210に対して、クラウドプリントサービスの処理の実行要求を送信する(ステップS1802)。なお、当該実行要求には、アプリID「app002」と、ファイル選択欄4001から選択されたファイル名「FileA」のファイルID「file_id_a」とが含まれる。 The client application 220 2, the communication relay section 210 transmits the execution request of the processing of the cloud print service (step S1802). The execution request includes the application ID “app002” and the file ID “file_id_a” of the file name “FileA” selected from the file selection field 4001.

通信中継部210は、クライアントアプリ220から処理の実行要求を受け取ると、サービス提供システム10のサービス処理部110に対して、当該実行要求を送信する(ステップS1803)。 Communication relay unit 210 receives the processing execution request from the client applicant 220 2, to the service processing unit 110 of the service providing system 10, and transmits the execution request (step S1803).

サービス処理部110の通信中継部114は、画像形成装置20から処理の実行要求を受け取ると、当該実行要求をロジック処理部112に転送する(ステップS1804)。   When the communication relay unit 114 of the service processing unit 110 receives a process execution request from the image forming apparatus 20, the communication relay unit 114 transfers the execution request to the logic processing unit 112 (step S1804).

そして、ロジック処理部112は、通信中継部114から処理の実行要求を受け取ると、アプリ管理部111を介して、当該実行要求に含まれるアプリIDのアプリ情報1000に含まれる処理内容を取得する(ステップS1805)。より具体的には、ロジック処理部112は、アプリ管理部111対して、アプリID「app002」を含む処理内容の取得要求を送信する。すると、アプリ管理部111は、当該取得要求に含まれるアプリID「app002」のアプリ情報1000に含まれる処理内容をアプリ情報記憶部160から取得し、当該処理内容をロジック処理部112に返信する。 Then, when the logic processing unit 112 receives the process execution request from the communication relay unit 114, the logic processing unit 112 acquires the process content included in the application information 1000 of the application ID included in the execution request via the application management unit 111 ( Step S1805). More specifically, the logic processing unit 112 transmits, to the application management unit 111, an acquisition request for processing content including the application ID “app002”. Then, the application management unit 111 obtains the processing content included in the application information 1000 and second application ID "app002" included in the acquisition request from the application information storing unit 160, and returns the processing contents to the logic processing unit 112 .

次に、ロジック処理部112は、アプリ管理部111から処理内容を受け取ると、処理情報を生成して、処理情報記憶部170に格納する(ステップS1806)。より具体的には、ロジック処理部112は、処理内容に基づく一連の処理を一意に識別する処理IDを生成する。そして、ロジック処理部112は、当該処理IDを、ステップS1803で画像形成装置20から処理の実行要求を受け取った際に用いたコネクション(論理的な通信路)のコネクションIDと、アプリID「app002」とに関連付けて処理情報を生成する。なお、このとき、処理結果には、ブランク(空白)や空値(NULL値)が設定されていれば良い。   Next, when receiving the processing content from the application management unit 111, the logic processing unit 112 generates processing information and stores the processing information in the processing information storage unit 170 (step S1806). More specifically, the logic processing unit 112 generates a process ID that uniquely identifies a series of processes based on the process content. Then, the logic processing unit 112 determines that the process ID is the connection ID of the connection (logical communication path) used when the process execution request is received from the image forming apparatus 20 in step S1803, and the application ID “app002”. And generate processing information in association with At this time, blank (blank) or null value (NULL value) may be set as the processing result.

以降では、処理ID「420677」、アプリID「app002」、及びコネクションID「6」を含む処理情報が生成されたものとして説明を続ける。   Hereinafter, the description will be continued on the assumption that the process information including the process ID “420677”, the application ID “app002”, and the connection ID “6” is generated.

続いて、ロジック処理部112は、処理状態監視部116に対して、ステップS1806で生成された処理情報の監視を要求する(ステップS1807)。なお、当該監視要求には、ステップS1806で生成された処理情報の処理ID「420677」が含まれる。   Subsequently, the logic processing unit 112 requests the processing state monitoring unit 116 to monitor the processing information generated in step S1806 (step S1807). The monitoring request includes the process ID “420677” of the process information generated in step S1806.

これにより、処理状態監視部116は、受け取った監視要求に含まれる処理ID「420677」の処理情報の更新有無(すなわち、処理状態に含まれるデータ項目「処理結果」が更新されたか否か)を監視する。   Thereby, the processing status monitoring unit 116 determines whether the processing information of the processing ID “420677” included in the received monitoring request is updated (that is, whether the data item “processing result” included in the processing status has been updated). Monitor.

次に、ロジック処理部112は、アプリID「app002」のアプリ情報1000に含まれる処理内容に基づき、ファイル取得から印刷変換までの処理を実行する(ステップS1808)。なお、ファイル取得から印刷変換処理の詳細については後述する。 Next, the logic processing unit 112, based on the processing contents included in the application information 1000 and second application ID "app002", it executes the processing up to printing conversion from the file acquisition (step S1808). Details of the file acquisition to print conversion processing will be described later.

次に、ロジック処理部112は、ステップS1808のファイル取得から印刷変換処理の結果に応じて、処理ID「420677」の処理情報の処理結果を更新する(ステップS1809)。すなわち、ロジック処理部112は、ファイル取得から印刷変換処理の実行が完了した場合、当該処理情報に含まれる処理結果を「完了」に更新する。一方、ロジック処理部112は、ファイル取得から印刷変換までの処理の実行中にエラーが発生した場合、当該処理情報に含まれる処理結果を「エラー」に更新する。   Next, the logic processing unit 112 updates the processing result of the processing information of the processing ID “420677” according to the result of the file conversion in step S1808 to the print conversion processing (step S1809). That is, when execution of print conversion processing from file acquisition is completed, the logic processing unit 112 updates the processing result included in the processing information to “completion”. On the other hand, when an error occurs during execution of processing from file acquisition to print conversion, the logic processing unit 112 updates the processing result included in the processing information to “error”.

続いて、処理状態監視部116は、ロジック処理部112により処理情報が更新されると、これを検知する。そして、処理状態監視部116は、結果通知生成部115に対して、結果通知の生成要求を送信する(ステップS1810)。なお、当該生成要求には、更新が検知された処理情報の処理ID「420677」が含まれる。   Subsequently, when the processing information is updated by the logic processing unit 112, the processing state monitoring unit 116 detects this. Then, the processing state monitoring unit 116 transmits a generation request for result notification to the result notification generation unit 115 (step S1810). The generation request includes the process ID “420677” of the process information in which the update is detected.

結果通知生成部115は、結果通知の生成要求を受け取ると、当該生成要求に含まれる処理ID「420677」の処理情報からアプリID「app002」及び処理結果を取得して、結果通知を作成する(ステップS1811)。そして、結果通知生成部115は、通信中継部114に対して、生成した結果通知を送信する(ステップS1812)。   When the result notification generation unit 115 receives the generation request for the result notification, the result notification generation unit 115 obtains the application ID “app002” and the processing result from the process information of the process ID “420677” included in the generation request, and generates the result notification ( Step S1811). Then, the result notification generation unit 115 transmits the generated result notification to the communication relay unit 114 (step S1812).

通信中継部114は、結果通知生成部115から結果通知を受け取ると、当該結果通知を画像形成装置20に送信する(ステップS1813)。このとき、通信中継部114は、当該結果通知に対応する処理の実行要求を受け取ったコネクションを用いて、当該実行要求の送信元の画像形成装置20に対して、当該結果通知を送信する。すなわち、通信中継部114は、コネクションID「6」で識別されるコネクションを用いて、実行要求の送信元の画像形成装置20に対して、当該結果通知を送信する。   When the communication relay unit 114 receives the result notification from the result notification generation unit 115, the communication relay unit 114 transmits the result notification to the image forming apparatus 20 (step S1813). At this time, the communication relay unit 114 transmits the result notification to the image forming apparatus 20 that is the transmission source of the execution request, using the connection that has received the processing execution request corresponding to the result notification. That is, the communication relay unit 114 transmits the result notification to the image forming apparatus 20 that is the transmission source of the execution request, using the connection identified by the connection ID “6”.

画像形成装置20の通信中継部210は、サービス処理部110から結果通知を受け取ると、当該結果通知に含まれるアプリID「app002」に対応するコールバック先「/apps/02」を取得する(ステップS1814)。そして、通信中継部210は、取得したコールバック先「/apps/02」に対応するクライアントアプリ220に当該結果通知を送信する(ステップS1815)。これにより、本実施形態に係るクラウドプリントサービスの処理の実行要求を行ったクライアントアプリ220に対して、当該実行要求に対する処理結果を含む結果通知が送信される。なお、クライアントアプリ220は、受け取った結果通知に応じて、例えば、結果画面等を操作パネル22に表示させれば良い。 When receiving the result notification from the service processing unit 110, the communication relay unit 210 of the image forming apparatus 20 acquires the callback destination "/ apps / 02" corresponding to the application ID "app002" included in the result notification (Step S1814). Then, the communication relay section 210 transmits the result notification to the client applicant 220 2 corresponding to the acquired call back destination "/ apps / 02" (step S1815). Thus, the client application 220 2 performing the execution request of the processing of the cloud print service according to the present embodiment, the result notification including the processing result with respect to the execution request is transmitted. Incidentally, the client application 220 2, in accordance with the received result notice, for example, it is sufficient to display a result screen or the like on the operation panel 22.

≪ファイル取得から印刷変換までの処理≫
以降では、図18のステップS1808の処理の詳細について、図19を参照しながら説明する。図19は、本実施形態に係るファイル取得から印刷変換までの処理の一例のシーケンスを示す図である。
<< Processing from file acquisition to print conversion >>
Hereinafter, the details of the process of step S1808 in FIG. 18 will be described with reference to FIG. FIG. 19 is a diagram showing a sequence of an example of processing from file acquisition to print conversion according to the present embodiment.

フロー実行部181は、アプリ管理部111から取得した処理内容に従って、コンポーネント管理部182に対して、コンポーネントの取得を要求する(ステップS1901)。より具体的には、フロー実行部181は、図7(b)に示す処理内容の「From("file:input")」の次に指定されている「.to("storage:receive_from_file? type=service-a")」に基づき、コンポーネント管理部182に対して、取得コンポーネント1832の取得を要求する。   The flow execution unit 181 requests the component management unit 182 to acquire the component according to the processing content acquired from the application management unit 111 (step S1901). More specifically, the flow execution unit 181 sets “.to (“ storage: receive_from_file? Type =) specified next to “From (“ file: input ”)” of the processing content shown in FIG. 7 (b). Based on "service-a"), the component management unit 182 is requested to acquire the acquisition component 1832.

なお、ここで指定されている処理内容のうち「?type=service-a」の部分はオプションパラメータと称され、取得コンポーネント1832の処理による電子ファイルの取得(ダウンロード)先ストレージサービスが「ストレージサービスA」であることを示している。また、上記の指定されている処理内容に、図18のS1803の実行要求に含まれる印刷対象のファイルである「FileA」のファイルIDをオプションパラメータとして付加して「.to("storage:receive_from_file?type=service-a&file_id_a")」としても良い。   Of the processing content specified here, the portion “? Type = service-a” is referred to as an optional parameter, and the acquisition (download) destination storage service of the electronic file by the processing of the acquisition component 1832 is “storage service A It shows that it is ". In addition, the file ID of “File A”, which is the file to be printed that is included in the execution request of S 1803 in FIG. 18, is added as an optional parameter to the above-described designated processing content, “.to (“ storage: receive_from_file? It is good also as type = service-a & file_id_a ").

コンポーネント管理部182は、取得コンポーネント1832の取得要求を受け取ると、取得コンポーネント1832を生成する(ステップS1902)。取得コンポーネント1832の生成は、コンポーネント共通I/F1830に定義されたコンポーネントを生成するためのAPIを用いて行うことができる。   When the component management unit 182 receives the acquisition request for the acquisition component 1832, the component management unit 182 generates the acquisition component 1832 (step S1902). The generation of the acquisition component 1832 can be performed using an API for generating a component defined in the component common I / F 1830.

そして、取得コンポーネント1832が生成されると、コンポーネント管理部182は、フロー実行部181に対して、取得コンポーネント1832を返信する。これは、例えば、コンポーネント管理部182は、取得コンポーネント1832が展開されたメモリ(例えばRAM14)上のアドレスを、フロー実行部181に返信すれば良い。   Then, when the acquisition component 1832 is generated, the component management unit 182 returns the acquisition component 1832 to the flow execution unit 181. For example, the component management unit 182 may return the address on the memory (for example, the RAM 14) in which the acquisition component 1832 is expanded to the flow execution unit 181.

フロー実行部181は、取得コンポーネント1832が生成されると、当該取得コンポーネント1832に対して、データを指定して処理の実行を要求する(ステップS1903)。なお、ここで指定されるデータは、データ型が「InputStream」としてクライアントアプリ220から渡された印刷対象のファイル「FileA」のファイルIDである。 When the acquisition component 1832 is generated, the flow execution unit 181 requests the acquisition component 1832 to execute processing by specifying data (step S1903). The data that is specified here, the data type is a file ID of print object passed from the client applicant 220 2 as "InputStream" File "FileA".

すなわち、フロー実行部181は、クライアントアプリ220からデータ型「InputStream」として渡されるファイルIDを、単に「データ」として(データ型を意識することなく)、取得コンポーネント1832に渡して処理の実行を要求する。図19では、このようにデータ型を意識することなく渡される電子ファイル等を、単に「データ」と表す。 That is, the flow execution unit 181, a file ID to be passed from the client applicant 220 2 as the data type "InputStream" simply as "data" (without regard to data type), the execution of the process by passing the acquisition component 1832 To request. In FIG. 19, an electronic file or the like passed without being aware of the data type is simply referred to as "data".

取得コンポーネント1832は、フロー実行部181から実行要求を受け取ると、型変換管理部184に対して、型変換を要求する(ステップS1904)。なお、当該型変換要求には、データと、取得コンポーネント1832が扱うことができるデータ型を示す「LocalFilePath」の指定とが含まれる。   When the acquisition component 1832 receives the execution request from the flow execution unit 181, the acquisition component 1832 requests the type conversion management unit 184 for type conversion (step S1904). The type conversion request includes data and designation of “LocalFilePath” indicating a data type that can be handled by the acquisition component 1832.

型変換管理部184は、取得コンポーネント1832から型変換要求を受け取ると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする(ステップS1905)。ここでは、受け取った型変換要求に含まれるデータのデータ型は「InputStream」である一方、指定されたデータ型は「LocalFilePath」であるから、一致しないものと判断される。   When receiving the type conversion request from the acquisition component 1832, the type conversion management unit 184 checks whether the data type of the data included in the type conversion request matches the designated data type (step S1905). . Here, since the data type of the data included in the received type conversion request is “InputStream”, and the designated data type is “LocalFilePath”, it is determined that they do not match.

すると、型変換管理部184は、型変換テーブル3000を参照して、「InputStream」を「LocalFilePath」に変換するための型変換を特定して(ここでは、第1の型変換1851が特定される)、当該特定された型変換を生成する(ステップS1906)。   Then, the type conversion management unit 184 refers to the type conversion table 3000 and specifies type conversion for converting “InputStream” to “LocalFilePath” (here, the first type conversion 1851 is specified. ), And generates the identified type conversion (step S1906).

次に、型変換管理部184は、生成された第1の型変換1851に対して、データを指定して型変換処理の実行を要求する(ステップS1907)。すると、第1の型変換1851は、指定されたデータのデータ型を「InputStream」から「LocalFilePath」に変換して(ステップS1908)、当該変換後のデータを型変換管理部184に返信する。そして、型変換管理部184は、型変換後のデータを取得コンポーネント1832に返信する(ステップS1909)。   Next, the type conversion management unit 184 requests the generated first type conversion 1851 to execute type conversion processing by specifying data (step S1907). Then, the first type conversion 1851 converts the data type of the designated data from “InputStream” to “LocalFilePath” (step S1908), and sends the converted data to the type conversion management unit 184. Then, the type conversion management unit 184 returns the data after type conversion to the acquisition component 1832 (step S1909).

取得コンポーネント1832は、型変換管理部184から型変換後のデータを受け取ると、処理を実行する(ステップS1910)。すなわち、取得コンポーネント1832は、ストレージサービスA連携部130のファイル処理部140に対して、共通I/F141として定義されているファイル取得のAPIを用いて、ファイル取得を要求する。 The acquisition component 1832, upon receiving the data after type conversion from the type conversion management unit 184, executes processing (step S1910). That is, acquisition component 1832, the file processing unit 140 1 of the Storage Service A linkage unit 130 1, using the API of the file acquisition defined as a common I / F 141 1, it requests the file acquisition.

より具体的には、取得コンポーネント1832は、ストレージサービスA連携部130のファイル処理部140に対して、図5(a)に示されるようにAPIとして「service-a/process/file」を用いてファイル取得を要求する。これにより、外部ストレージシステム30からファイルID「file_id_a」の電子ファイル(すなわち、ファイル名「FileA」の電子ファイル)が取得(ダウンロード)される。 More specifically, acquisition component 1832, the file processing unit 140 1 of the Storage Service A linkage unit 130 1, a "service-a / process / file" as API, as shown in FIGS. 5 (a) Use to request file acquisition. Thus, an electronic file from the external storage system 30 1 file ID of "file_id_a" (i.e., an electronic file with the file name "FileA") is acquired (downloaded).

そして、取得コンポーネント1832は、データをフロー実行部181に返信する。なお、ここで、返信されるデータは、外部ストレージシステム30から取得(ダウンロード)された電子ファイルを示すパス又はアドレスである(すなわち、返信されるデータのデータ型は「LocalFilePath」である。)。 Then, the acquisition component 1832 sends the data back to the flow execution unit 181. Here, the data sent back is the path or address indicating the electronic file acquired from the external storage system 30 1 (download) (i.e., the data type of data returned is "LocalFilePath".) .

次に、フロー実行部181は、アプリ管理部111から取得した処理内容に従って、コンポーネント管理部182に対して、コンポーネントの取得を要求する(ステップS1911)。より具体的には、フロー実行部181は、図7(b)に示す処理内容の「.to("storage:receive_from_file?type=service-a")」の次に指定されている「.to("process:conv")」に基づき、印刷変換コンポーネント1834の取得を、コンポーネント管理部182に要求する。   Next, the flow execution unit 181 requests the component management unit 182 to acquire a component according to the processing content acquired from the application management unit 111 (step S1911). More specifically, the flow execution unit 181 selects “.to (.to (“ storage: receive_from_file? Type = service-a ”)” specified in the processing content shown in FIG. Based on “process: conv”), the component management unit 182 is requested to obtain the print conversion component 1834.

コンポーネント管理部182は、印刷変換コンポーネント1834の取得要求を受け取ると、印刷変換コンポーネント1834を生成する(ステップS1912)。印刷変換コンポーネント1834の生成は、コンポーネント共通I/F1830に定義されたコンポーネントを生成するためのAPIを用いて行うことができる。   When the component managing unit 182 receives the acquisition request for the print conversion component 1834, the component management unit 182 generates the print conversion component 1834 (step S1912). The generation of the print conversion component 1834 can be performed using an API for generating a component defined in the component common I / F 1830.

そして、印刷変換コンポーネント1834が生成されると、コンポーネント管理部182は、印刷変換コンポーネント1834をフロー実行部181に返信する。これは、例えば、コンポーネント管理部182は、印刷変換コンポーネント1834が展開されたメモリ(例えばRAM14)上のアドレスを、フロー実行部181に返信すれば良い。   Then, when the print conversion component 1834 is generated, the component management unit 182 sends the print conversion component 1834 back to the flow execution unit 181. For example, the component management unit 182 may return the address on the memory (for example, the RAM 14) in which the print conversion component 1834 is expanded to the flow execution unit 181.

フロー実行部181は、印刷変換コンポーネント1834が生成されると、当該印刷変換コンポーネント1834に対して、データを指定して処理の実行を要求する(ステップS1913)。なお、ここで指定されたデータのデータ型は「LocalFilePath」である。   When the print conversion component 1834 is generated, the flow execution unit 181 requests the print conversion component 1834 to execute processing by designating data (step S1913). The data type of the data specified here is "Local File Path".

印刷変換コンポーネント1834は、フロー実行部181から実行要求を受け取ると、型変換管理部184に対して、型変換を要求する(ステップS1914)。なお、当該型変換要求には、データと、印刷変換コンポーネント1834が扱うことができるデータ型を示す「File」の指定とが含まれる。   Upon receiving the execution request from the flow execution unit 181, the print conversion component 1834 requests the type conversion management unit 184 for type conversion (step S1914). The type conversion request includes data and designation of “File” indicating a data type that the print conversion component 1834 can handle.

型変換管理部184は、印刷変換コンポーネント1834から型変換要求を受け取ると、当該型変換要求に含まれるデータのデータ型と、指定されたデータ型とが一致するか否かをチェックする(ステップS1915)。ここでは、受け取った型変換要求に含まれるデータのデータ型は「LocalFilePath」であり、指定されたデータ型は「File」であるから、一致しないものと判断される。   When receiving the type conversion request from the print conversion component 1834, the type conversion management unit 184 checks whether the data type of the data included in the type conversion request matches the designated data type (step S1915). ). Here, since the data type of the data included in the received type conversion request is “Local File Path” and the specified data type is “File”, it is determined that they do not match.

すると、型変換管理部184は、型変換テーブル3000を参照して、「LocalFilePath」を「File」に変換するための型変換を特定して(ここでは、第2の型変換1852が特定される)、当該特定された型変換を生成する(ステップS1916)。   Then, the type conversion management unit 184 refers to the type conversion table 3000 and specifies type conversion for converting “LocalFilePath” to “File” (here, the second type conversion 1852 is specified). ), And generates the identified type conversion (step S1916).

次に、型変換管理部184は、生成された第2の型変換1852に対して、データを指定して型変換処理の実行を要求する(ステップS1917)。すると、第2の型変換1852は、指定されたデータのデータ型を「LocalFilePath」から「File」に変換して(ステップS1918)、当該変換後のデータを型変換管理部184に返信する。そして、型変換管理部184は、型変換後のデータを印刷変換コンポーネント1834に返信する(ステップS1919)。   Next, the type conversion management unit 184 requests the generated second type conversion 1852 to execute type conversion processing by specifying data (step S1917). Then, the second type conversion 1852 converts the data type of the designated data from "Local File Path" to "File" (step S1918), and sends the converted data to the type conversion management unit 184. Then, the type conversion management unit 184 sends back the data after type conversion to the print conversion component 1834 (step S1919).

印刷変換コンポーネント1834は、型変換管理部184から型変換後のデータを受け取ると、処理を実行する(ステップS1920)。すなわち、印刷変換コンポーネント1834は、データ型「File」のデータ(すなわち、電子ファイル)を、画像形成装置20が印刷可能なデータ形式である印刷データに変換する処理を実行する。より具体的には、印刷変換コンポーネント1834は、ドキュメントサービス部120の印刷変換処理122に処理を要求し、印刷変換処理122がデータ(電子ファイル)に対して処理を実行する。   Upon receiving the data after type conversion from the type conversion management unit 184, the print conversion component 1834 executes processing (step S1920). That is, the print conversion component 1834 executes processing for converting data of the data type “File” (that is, an electronic file) into print data in a data format that can be printed by the image forming apparatus 20. More specifically, the print conversion component 1834 requests the print conversion process 122 of the document service unit 120 to perform the process, and the print conversion process 122 executes the process on the data (electronic file).

そして、印刷変換コンポーネント1834は、フロー実行部181に対して、データを返信する。ここで、返信されるデータは、印刷データである。   Then, the print conversion component 1834 returns data to the flow execution unit 181. Here, the data to be returned is print data.

以上により、本実施形態に係るクラウドプリントサービスにおけるファイル取得から印刷変換までの一連の処理が完了する。   As described above, a series of processes from file acquisition to print conversion in the cloud print service according to the present embodiment is completed.

<まとめ>
以上のように、本実施形態に係る情報処理システム1によれば、サービス提供システム10により外部サービスと連携したサービスを画像形成装置20に提供することができる。
<Summary>
As described above, according to the information processing system 1 according to the present embodiment, the service providing system 10 can provide the image forming apparatus 20 with a service in cooperation with an external service.

また、本実施形態に係るサービス提供システム10では、連携先の外部サービスの追加。変更を容易に行うことができるとともに、画像形成装置20に提供するサービスの追加・変更等(すなわち、アプリ情報1000の追加・変更等)を容易に行うことができる。このため、本実施形態に係るサービス提供システム10では、サービスの追加・変更等に伴う開発・維持に要する工数を削減することができる。   Further, in the service providing system 10 according to the present embodiment, the addition of the external service of the cooperation destination. The change can be easily performed, and the addition / change of the service provided to the image forming apparatus 20 (that is, the addition / change of the application information 1000, etc.) can be easily performed. For this reason, in the service providing system 10 according to the present embodiment, it is possible to reduce the number of man-hours required for development and maintenance accompanying the addition and change of the service.

さらに、本実施形態に係るサービス提供システム10は、サービスを実現する処理実行要求の送信元の画像形成装置20との間のコネクションを識別するコネクションIDを含む処理情報を管理する。これにより、本実施形態に係るサービス提供システム10では、複数の画像形成装置20に対してサービスを提供することができる。   Furthermore, the service providing system 10 according to the present embodiment manages processing information including a connection ID for identifying a connection with the image forming apparatus 20 that is the transmission source of the processing execution request for realizing the service. Thus, the service providing system 10 according to the present embodiment can provide a service to a plurality of image forming apparatuses 20.

また、本実施形態に係る画像形成装置20に搭載されているクライアントアプリ220は、複数のクライアントアプリ220が同時にサービス提供システム10を利用することができるようになる。このため、本実施形態に係る画像形成装置20では、効率的に通信リソースを利用することができる。   Further, with the client application 220 installed in the image forming apparatus 20 according to the present embodiment, the plurality of client applications 220 can use the service providing system 10 simultaneously. Therefore, in the image forming apparatus 20 according to the present embodiment, communication resources can be efficiently used.

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

1 情報処理システム
10 サービス提供システム
20 画像形成装置
30 外部ストレージシステム
110 サービス処理部
111 アプリ管理部
112 ロジック処理部
113 データI/F部
114 通信中継部
115 結果通知生成部
116 処理状態監視部
120 ドキュメントサービス部
121 OCR処理
122 印刷変換処理
130 ストレージサービス連携部
140 ファイル処理部
150 データ処理部
160 アプリ情報記憶部
170 処理情報記憶部
181 フロー実行部
182 コンポーネント管理部
183 コンポーネント群
184 型変換管理部
185 型変換群
210 通信中継部
220 クライアントアプリケーション
230 クライアントアプリ管理情報記憶部
1000 アプリ情報
3000 型変換テーブル
Reference Signs List 1 information processing system 10 service providing system 20 image forming apparatus 30 external storage system 110 service processing unit 111 application management unit 112 logic processing unit 113 data I / F unit 114 communication relay unit 115 result notification generation unit 116 processing state monitoring unit 120 document Service unit 121 OCR processing 122 Print conversion processing 130 Storage service linkage unit 140 File processing unit 150 Data processing unit 160 Application information storage unit 170 Processing information storage unit 181 Flow execution unit 182 Component management unit 183 Component group 184 Type conversion management unit 185 type Conversion group 210 Communication relay unit 220 Client application 230 Client application management information storage unit 1000 Application information 3000 Type conversion table

特開2014−032659号公報JP, 2014-032659, A

Claims (7)

1以上の情報処理装置が含まれる情報処理システムであって、
電子データを用いた一連の処理を外部サービスと連携して実行するアプリケーション毎に、該アプリケーションを識別するアプリ識別情報と、該一連の処理に関する情報と、該一連の処理に用いる前記電子データを指定させる画面の画面情報と、を関連付けて記憶する記憶手段と、
前記情報処理システムに接続される1以上の機器のうちの一の機器から前記アプリ識別情報を含む第1の要求を受け付けると、該第1の要求に含まれる該アプリ識別情報に関連付けて前記記憶手段に記憶されている前記画面情報を、要求元の前記一の機器に送信する第1の送信手段と、
前記第1の送信手段により送信された前記画面情報に基づき前記一の機器に表示された画面を介してユーザにより指定された電子データに関する情報とアプリ識別情報とを含む第2の要求を前記一の機器から受け付けると、前記アプリ識別情報に関連付けて前記記憶手段に記憶されている前記一連の処理に関する情報に基づく一連の処理を示す情報と、前記一の機器との接続を特定する情報と、を関連付けた処理情報を生成する生成手段と、
前記一連の処理を、前記第2の要求に含まれる前記電子データに関する情報により指定される電子データに対して実行する処理実行手段と、
前記処理実行手段により実行された前記一連の処理の処理結果を、前記生成手段により生成された前記処理情報に含まれる前記接続を特定する情報に基づき前記一の機器に送信する第2の送信手段と
前記処理情報が更新されたことを検知する検知手段と、
新たなアプリケーションを前記情報処理システムに追加する場合、該新たなアプリケーションを識別するアプリ識別情報と、前記新たなアプリケーションが実行する一連の処理に関する情報と、前記新たなアプリケーションが実行する一連の処理に用いる電子データを指定させる画面の画面情報とを関連付けて前記記憶手段に記憶させる保存手段と、
を有し、
前記処理実行手段は、
前記一連の処理の実行が完了した場合、又は前記一連の処理の実行中にエラーが発生した場合、前記処理情報を更新し、
前記第2の送信手段は、
前記検知手段により前記処理情報の更新が検知されると、前記処理実行手段により実行された前記一連の処理の処理結果を、前記生成手段により生成された前記処理情報に含まれる前記接続を特定する情報に基づき前記一の機器に送信する、情報処理システム。
An information processing system including one or more information processing apparatuses, wherein
For each application executing a series of processes using electronic data in cooperation with an external service, application identification information for identifying the application, information on the series of processes, and the electronic data used for the series of processes are specified Storage means for storing the screen information of the screen to be displayed in association with each other;
When a first request including the application identification information is received from one of the one or more devices connected to the information processing system, the storage is associated with the application identification information included in the first request. First transmission means for transmitting the screen information stored in the means to the one device of the request source;
A second request including information on electronic data designated by the user via the screen displayed on the one device based on the screen information transmitted by the first transmission means and application identification information; Information indicating a series of processes based on the information on the series of processes stored in the storage unit in association with the application identification information, information identifying a connection with the one apparatus, and Generating means for generating processing information in which
A processing execution unit that executes the series of processing on electronic data specified by the information related to the electronic data included in the second request;
A second transmission unit that transmits processing results of the series of processing executed by the processing execution unit to the one device based on the information specifying the connection included in the processing information generated by the generation unit and,
Detection means for detecting that the processing information has been updated;
When adding a new application to the information processing system, application identification information identifying the new application, information on a series of processes executed by the new application, and a series of processes executed by the new application Storage means for storing in the storage means in association with screen information of a screen for designating electronic data to be used;
I have a,
The process execution means is
If the execution of the series of processes is completed, or if an error occurs during the execution of the series of processes, the process information is updated.
The second transmission means is
When an update of the processing information is detected by the detection unit, a processing result of the series of processing executed by the processing execution unit is used to specify the connection included in the processing information generated by the generation unit. An information processing system for transmitting to the one device based on information.
前記生成手段は、
前記第1の送信手段により送信された前記画面情報に基づき前記一の機器に表示された画面を介してユーザにより指定された電子データに関する情報を含む第2の要求を前記一の機器から受け付けると、前記アプリ識別情報に関連付けて前記記憶手段に記憶されている前記一連の処理に関する情報に基づく一連の処理を示す情報と、前記一の機器との接続を特定する情報と、を関連付けた処理情報を生成する、請求項1に記載の情報処理システム。
The generation means is
When a second request including information on electronic data designated by the user via the screen displayed on the one device based on the screen information transmitted by the first transmission unit is received from the one device Processing information in which information indicating a series of processes based on the information on the series of processes stored in the storage unit in association with the application identification information is associated with information specifying a connection with the one device The information processing system according to claim 1, which generates
前記処理実行手段は、
電子データに対して、それぞれ所定の処理を行う複数のコンポーネントを有し、
前記第2の要求に含まれる前記電子データに関する情報により指定される電子データに対して実行する前記一連の処理を、該一連の処理に含まれる処理を行うコンポーネントを組み合わせることで実行する、請求項1又は2に記載の情報処理システム。
The process execution means is
It has a plurality of components that perform predetermined processing on electronic data,
The series of processes to be performed on electronic data specified by the information related to the electronic data included in the second request is performed by combining components that perform the processes included in the series of processes. The information processing system according to 1 or 2 .
前記処理実行手段は、
さらに、電子データに対して、該電子データのデータ型を所定のデータ型に変換する型変換手段を1以上有し、
前記第2の要求に含まれる前記電子データに関する情報により指定される電子データに対して実行する前記一連の処理を、1以上の前記型変換手段と、該一連の処理に含まれる処理を行うコンポーネントとを組み合わせて、前記電子データに関する情報により指定される電子データのデータ型を前記型変換手段により前記コンポーネントが処理可能な所定のデータ型に変換した後、該コンポーネントにより所定の処理を行うことにより実行する、請求項記載の情報処理システム。
The process execution means is
The electronic data further comprises one or more type conversion means for converting the data type of the electronic data into a predetermined data type,
Component for performing the series of processes to be executed on electronic data specified by the information on the electronic data included in the second request, the one or more of the type conversion means, and the processes included in the series of processes By converting the data type of electronic data specified by the information related to the electronic data into a predetermined data type that can be processed by the component by the type conversion means, and then performing predetermined processing by the component The information processing system according to claim 3 , which executes.
前記複数のコンポーネントは、外部サービスに関する処理を実行するコンポーネントを含み、
前記外部サービスに関する処理を実行するコンポーネントは、
外部サービスに対して電子データをアップロードする処理を行うコンポーネント及び外部サービスから電子データをダウンロードする処理を行うコンポーネントを少なくとも含む、請求項又はに記載の情報処理システム。
The plurality of components include components that execute processing related to an external service,
The component that executes the process related to the external service is
At least includes a component that performs the process of downloading electronic data from components and external service to perform the process of uploading electronic data to the external service, the information processing system according to claim 3 or 4.
情報処理装置であって、
電子データを用いた一連の処理を外部サービスと連携して実行するアプリケーション毎に、該アプリケーションを識別するアプリ識別情報と、該一連の処理に関する情報と、該一連の処理に用いる前記電子データを指定させる画面の画面情報と、を関連付けて記憶する記憶手段と、
前記情報処理装置に接続される1以上の機器のうちの一の機器から前記アプリ識別情報を含む第1の要求を受け付けると、該第1の要求に含まれる該アプリ識別情報に関連付けて前記記憶手段に記憶されている前記画面情報を、要求元の前記一の機器に送信する第1の送信手段と、
前記第1の送信手段により送信された前記画面情報に基づき前記一の機器に表示された画面を介してユーザにより指定された電子データに関する情報とアプリ識別情報とを含む第2の要求を前記一の機器から受け付けると、前記アプリ識別情報に関連付けて前記記憶手段に記憶されている前記一連の処理に関する情報に基づく一連の処理を示す情報と、前記一の機器との接続を特定する情報と、を関連付けた処理情報を生成する生成手段と、
前記一連の処理を、前記第2の要求に含まれる前記電子データに関する情報により指定される電子データに対して実行する処理実行手段と、
前記処理実行手段により実行された前記一連の処理の処理結果を、前記生成手段により生成された前記処理情報に含まれる前記接続を特定する情報に基づき前記一の機器に送信する第2の送信手段と
前記処理情報が更新されたことを検知する検知手段と、
新たなアプリケーションを前記情報処理装置に追加する場合、該新たなアプリケーションを識別するアプリ識別情報と、前記新たなアプリケーションが実行する一連の処理に関する情報と、前記新たなアプリケーションが実行する一連の処理に用いる電子データを指定させる画面の画面情報とを関連付けて前記記憶手段に記憶させる保存手段と、
を有し、
前記処理実行手段は、
前記一連の処理の実行が完了した場合、又は前記一連の処理の実行中にエラーが発生した場合、前記処理情報を更新し、
前記第2の送信手段は、
前記検知手段により前記処理情報の更新が検知されると、前記処理実行手段により実行された前記一連の処理の処理結果を、前記生成手段により生成された前記処理情報に含まれる前記接続を特定する情報に基づき前記一の機器に送信する、情報処理装置。
An information processing apparatus,
For each application executing a series of processes using electronic data in cooperation with an external service, application identification information for identifying the application, information on the series of processes, and the electronic data used for the series of processes are specified Storage means for associating and storing screen information of the screen to be displayed;
When a first request including the application identification information is received from one of the one or more devices connected to the information processing apparatus, the storage is associated with the application identification information included in the first request. First transmission means for transmitting the screen information stored in the means to the one device of the request source;
A second request including information on electronic data designated by the user via the screen displayed on the one device based on the screen information transmitted by the first transmission means and application identification information; Information indicating a series of processes based on the information on the series of processes stored in the storage unit in association with the application identification information, information identifying a connection with the one apparatus, and Generating means for generating processing information in which
A processing execution unit that executes the series of processing on electronic data specified by the information related to the electronic data included in the second request;
A second transmission unit that transmits processing results of the series of processing executed by the processing execution unit to the one device based on the information specifying the connection included in the processing information generated by the generation unit and,
Detection means for detecting that the processing information has been updated;
When a new application is added to the information processing apparatus, application identification information for identifying the new application, information on a series of processes executed by the new application, and a series of processes executed by the new application Storage means for storing in the storage means in association with screen information of a screen for designating electronic data to be used;
I have a,
The process execution means is
If the execution of the series of processes is completed, or if an error occurs during the execution of the series of processes, the process information is updated.
The second transmission means is
When an update of the processing information is detected by the detection unit, a processing result of the series of processing executed by the processing execution unit is used to specify the connection included in the processing information generated by the generation unit. An information processing apparatus that transmits to the one device based on information.
1以上の情報処理装置が含まれる情報処理システムであって、電子データを用いた一連の処理を外部サービスと連携して実行するアプリケーション毎に、該アプリケーションを識別するアプリ識別情報と、該一連の処理に関する情報と、該一連の処理に用いる前記電子データを指定させる画面の画面情報と、を関連付けて記憶する記憶手段を有する情報処理システムに用いられる情報処理方法において、
前記情報処理システムに接続される1以上の機器のうちの一の機器から前記アプリ識別情報を含む第1の要求を受け付けると、該第1の要求に含まれる該アプリ識別情報に関連付けて前記記憶手段に記憶されている前記画面情報を、要求元の前記一の機器に送信する第1の送信手順と、
前記第1の送信手順により送信された前記画面情報に基づき前記一の機器に表示された画面を介してユーザにより指定された電子データに関する情報とアプリ識別情報とを含む第2の要求を前記一の機器から受け付けると、前記アプリ識別情報に関連付けて前記記憶手段に記憶されている前記一連の処理に関する情報に基づく一連の処理を示す情報と、前記一の機器との接続を特定する情報と、を関連付けた処理情報を生成する生成手順と、
前記一連の処理を、前記第2の要求に含まれる前記電子データに関する情報により指定される電子データに対して実行する処理実行手順と、
前記処理実行手順により実行された前記一連の処理の処理結果を、前記生成手順により生成された前記処理情報に含まれる前記接続を特定する情報に基づき前記一の機器に送信する第2の送信手順と
前記処理情報が更新されたことを検知する検知手順と、
新たなアプリケーションを前記情報処理システムに追加する場合、該新たなアプリケーションを識別するアプリ識別情報と、前記新たなアプリケーションが実行する一連の処理に関する情報と、前記新たなアプリケーションが実行する一連の処理に用いる電子データを指定させる画面の画面情報とを関連付けて前記記憶手段に記憶させる保存手順と、
を有し、
前記処理実行手順は、
前記一連の処理の実行が完了した場合、又は前記一連の処理の実行中にエラーが発生した場合、前記処理情報を更新し、
前記第2の送信手順は、
前記検知手順により前記処理情報の更新が検知されると、前記処理実行手順により実行された前記一連の処理の処理結果を、前記生成手順により生成された前記処理情報に含まれる前記接続を特定する情報に基づき前記一の機器に送信する、情報処理方法。
An information processing system including one or more information processing apparatuses, for each application that executes a series of processing using electronic data in cooperation with an external service, application identification information for identifying the application, and the series An information processing method for use in an information processing system including storage means for storing information related to processing and screen information of a screen for specifying the electronic data used for the series of processing in association with each other;
When a first request including the application identification information is received from one of the one or more devices connected to the information processing system, the storage is associated with the application identification information included in the first request. A first transmission procedure for transmitting the screen information stored in the means to the one device of the request source;
A second request including information on electronic data designated by the user via the screen displayed on the one device based on the screen information transmitted by the first transmission procedure and application identification information; Information indicating a series of processes based on the information on the series of processes stored in the storage unit in association with the application identification information, information identifying a connection with the one apparatus, and Generation procedure for generating processing information in which
A process execution procedure for executing the series of processes on electronic data specified by the information on the electronic data included in the second request;
A second transmission procedure for transmitting the processing result of the series of processing executed by the processing execution procedure to the one device based on the information specifying the connection included in the processing information generated by the generation procedure and,
A detection procedure for detecting that the processing information has been updated;
When adding a new application to the information processing system, application identification information identifying the new application, information on a series of processes executed by the new application, and a series of processes executed by the new application A storage procedure for storing in the storage means in association with screen information of a screen for designating electronic data to be used;
I have a,
The process execution procedure is
If the execution of the series of processes is completed, or if an error occurs during the execution of the series of processes, the process information is updated.
The second transmission procedure is
When an update of the processing information is detected by the detection procedure, a processing result of the series of processing executed by the processing execution procedure is specified to the connection included in the processing information generated by the generation procedure. An information processing method for transmitting to the one device based on information.
JP2015160422A 2015-08-17 2015-08-17 INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD Active JP6544133B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015160422A JP6544133B2 (en) 2015-08-17 2015-08-17 INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015160422A JP6544133B2 (en) 2015-08-17 2015-08-17 INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD

Publications (2)

Publication Number Publication Date
JP2017041669A JP2017041669A (en) 2017-02-23
JP6544133B2 true JP6544133B2 (en) 2019-07-17

Family

ID=58206721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015160422A Active JP6544133B2 (en) 2015-08-17 2015-08-17 INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD

Country Status (1)

Country Link
JP (1) JP6544133B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11310372B2 (en) 2019-12-27 2022-04-19 Ricoh Company, Ltd. Service providing system, information processing system, and information processing method for transmitting data to application with authority to store in external service system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3702284B2 (en) * 1996-04-04 2005-10-05 パナソニック コミュニケーションズ株式会社 E-mail device and relay transfer method
JP2007299270A (en) * 2006-05-01 2007-11-15 Yokogawa Electric Corp Information management system, method and program
JP5056874B2 (en) * 2010-03-17 2012-10-24 コニカミノルタビジネステクノロジーズ株式会社 Information processing system, information processing apparatus, linked job execution method, and linked job execution program
JP5409529B2 (en) * 2010-07-01 2014-02-05 三菱電機株式会社 Application execution apparatus and program
JP6229279B2 (en) * 2013-03-08 2017-11-15 ブラザー工業株式会社 Relay device, relay device program, and communication method

Also Published As

Publication number Publication date
JP2017041669A (en) 2017-02-23

Similar Documents

Publication Publication Date Title
JP6439370B2 (en) Information processing system, information processing method, information processing apparatus, and program
US10122870B2 (en) Information processing system, information processing apparatus, and information processing method
JP7158864B2 (en) System and method of using it
JP5921165B2 (en) Printing system, relay server, printing system control method, and computer program
JP5424614B2 (en) Information processing system, information processing apparatus, Web server, control method, and program
JP5388541B2 (en) Image processing apparatus, image processing system, control method thereof, program, and storage medium
JP6859620B2 (en) Information processing system, information processing device, information processing method, and information processing program
JP6701961B2 (en) Information processing system, information processing apparatus, information processing method, and program
US11252283B2 (en) Storage medium, and method and apparatus for managing printing
CN105404440A (en) Information Processing System, Information Processing Apparatus, Method Of Controlling The Same, And Storage Medium
JP2020017217A (en) Image forming apparatus, system, method for controlling these, and program
JP2016165046A (en) Information processing system, information processor, information processing method, and program
CN103116478A (en) Information processing system, information processing apparatus, button processing method, and storage medium
JP2016162286A (en) Information processing system, information processing method, information processing device and program
JP6756270B2 (en) Information processing system, information processing device, information processing method, and program
JP2011041214A (en) Document management system and method for controlling the same and information processing apparatus
US20100220352A1 (en) Image forming apparatus, image forming system, and information processing method
JP2018037746A (en) Information processing system, information processor, and information processing method
JP6413686B2 (en) Information processing system, information processing apparatus, and information processing method
US8902462B1 (en) System and control method
JP6544133B2 (en) INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD
JP6406867B2 (en) Management device, computer program, and management method
JP2009110050A (en) Information processor, information processing system, display control method, display control program, and recording medium
JP2006302145A (en) Document registration system, image forming device and information processor
JP2010055559A (en) Document management device, document management method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180709

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190312

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190510

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190603

R151 Written notification of patent or utility model registration

Ref document number: 6544133

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151