JP6802893B1 - Scenario execution device, scenario execution method and program - Google Patents
Scenario execution device, scenario execution method and program Download PDFInfo
- Publication number
- JP6802893B1 JP6802893B1 JP2019165559A JP2019165559A JP6802893B1 JP 6802893 B1 JP6802893 B1 JP 6802893B1 JP 2019165559 A JP2019165559 A JP 2019165559A JP 2019165559 A JP2019165559 A JP 2019165559A JP 6802893 B1 JP6802893 B1 JP 6802893B1
- Authority
- JP
- Japan
- Prior art keywords
- execution
- scenario
- user
- unit
- notification
- 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
Links
- 238000000034 method Methods 0.000 title claims description 52
- 238000012545 processing Methods 0.000 claims abstract description 182
- 230000004044 response Effects 0.000 claims abstract description 123
- 238000006243 chemical reaction Methods 0.000 claims description 123
- 230000005540 biological transmission Effects 0.000 claims description 37
- 238000010586 diagram Methods 0.000 abstract description 14
- 230000006870 function Effects 0.000 description 42
- 230000008569 process Effects 0.000 description 41
- 238000004891 communication Methods 0.000 description 25
- 230000009471 action Effects 0.000 description 10
- 238000012790 confirmation Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 230000010365 information processing Effects 0.000 description 4
- 238000005401 electroluminescence Methods 0.000 description 3
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 241000251468 Actinopterygii Species 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 235000012055 fruits and vegetables Nutrition 0.000 description 1
- 235000013372 meat Nutrition 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004801 process automation Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】自動化ツールのシナリオの実行途中においてシナリオの実行に関するユーザーの指示を受ける。【解決手段】シナリオ実行装置の機能実行部は、ユーザー操作に従って所定の機能を実行する。読出部は、機能実行部に対するユーザー操作を表すユーザー操作モジュール、又は、ユーザーへの通知及び応答の受信を行うインタフェースの利用を表すユーザーインタフェースモジュールである処理モジュールと、処理モジュールの実行順とを示すシナリオファイルから実行順に処理モジュールを読み出す。ユーザー操作モジュールが読み出された場合、操作制御部は、当該ユーザー操作モジュールが示すユーザー操作を行うよう入力部を制御する。ユーザーインタフェースモジュールが読み出された場合、通知部は、当該ユーザーインタフェースモジュールが示すユーザーへの通知を行い、実行制御部は、受信した応答に基づいてシナリオファイルの実行の継続又は中止を行う。【選択図】図2PROBLEM TO BE SOLVED: To receive a user's instruction regarding execution of a scenario during execution of a scenario of an automation tool. A function execution unit of a scenario execution device executes a predetermined function according to a user operation. The reading unit indicates a processing module which is a user operation module representing a user operation on a function executing unit or a user interface module representing the use of an interface for receiving a notification and a response to a user, and an execution order of the processing modules. Read the processing modules from the scenario file in the order of execution. When the user operation module is read, the operation control unit controls the input unit to perform the user operation indicated by the user operation module. When the user interface module is read, the notification unit notifies the user indicated by the user interface module, and the execution control unit continues or stops the execution of the scenario file based on the received response. [Selection diagram] Fig. 2
Description
本発明は、シナリオ実行装置、シナリオ実行方法及びプログラムに関する。 The present invention relates to a scenario execution device, a scenario execution method, and a program.
自動化ツールの一種であるRPA(Robotic Process Automation)は、PC(パーソナルコンピュータ)等の情報処理装置のユーザーインタフェースを操作して人手で行っていた定型的な作業を自動で実行可能な技術である。例えば、作業手順を記述したシナリオを作成し(例えば、特許文献1参照)、PCがそのシナリオの記述に基づいて作業を実行することで、人手で行っていた作業を自動で再現する(例えば、特許文献2参照)。RPAにより、時間的コストや人的コストを削減し、作業ミスを低減することもできる。一方で、PCが、ユーザーにより指定されたトリガの発生を検出した際に自動的にアプリケーションプログラムを開始し、ユーザーに通知を行う技術がある(例えば、特許文献3)。 RPA (Robotic Process Automation), which is a kind of automation tool, is a technology that can automatically perform routine work that has been performed manually by operating the user interface of an information processing device such as a PC (personal computer). For example, a scenario describing a work procedure is created (see, for example, Patent Document 1), and a PC executes the work based on the description of the scenario to automatically reproduce the work performed manually (for example,). See Patent Document 2). With RPA, time cost and human cost can be reduced, and work mistakes can be reduced. On the other hand, there is a technique in which a PC automatically starts an application program when it detects the occurrence of a trigger specified by the user and notifies the user (for example, Patent Document 3).
上述したように、RPAは、ユーザーインタフェースを用いた人手による一連の定型的な操作をシナリオに記述し、PCに自動で実行させる。よって、シナリオが実行されている間、ユーザーがPCに指示を入力するための操作を行う必要がない。しかし、ユーザーの判断によりPCに実行させる操作を指示したい場合があった。 As described above, RPA describes a series of routine manual operations using a user interface in a scenario, and causes a PC to automatically execute the operations. Therefore, it is not necessary for the user to perform an operation for inputting an instruction to the PC while the scenario is being executed. However, there are cases where the user wants to instruct the operation to be executed by the PC at his / her discretion.
上記事情に鑑み、本発明は、自動化ツールのシナリオの実行途中においてシナリオの実行に関するユーザーの指示を受けることができるシナリオ実行装置、シナリオ実行方法及びプログラムを提供することを目的としている。 In view of the above circumstances, an object of the present invention is to provide a scenario execution device, a scenario execution method, and a program capable of receiving a user's instruction regarding the execution of a scenario during the execution of a scenario of an automation tool.
本発明の一態様は、ユーザー操作を入力する入力部と、前記入力部によるユーザー操作に従って所定の機能を実行する機能実行部と、前記機能実行部に対するユーザー操作を表すユーザー操作モジュールである又はユーザーへの通知及び当該通知に対する応答の受信を行うインタフェースの利用を表すユーザーインタフェースモジュールである1以上の処理モジュールと、前記処理モジュールの実行順とを示すシナリオファイルを記憶する記憶部と、実行対象の前記シナリオファイルから前記実行順に前記処理モジュールを読み出す読出部と、前記読出部が読み出した前記処理モジュールが前記ユーザー操作モジュールであるか前記ユーザーインタフェースモジュールであるかを判断する判断部と、前記判断部が前記ユーザー操作モジュールであると判断した場合、当該ユーザー操作モジュールにより示される前記ユーザー操作を行うよう前記入力部を制御する操作制御部と、前記判断部が前記ユーザーインタフェースモジュールであると判断した場合、当該ユーザーインタフェースモジュールにより示されるユーザーへの通知を行う通知部と、前記通知部による前記通知に対応して受信した応答に基づいて前記シナリオファイルの実行の継続又は終了あるいは他のシナリオファイルの実行を行う実行制御部と、を備えるシナリオ実行装置である。 One aspect of the present invention is an input unit for inputting a user operation, a function execution unit that executes a predetermined function according to the user operation by the input unit, and a user operation module representing a user operation on the function execution unit. A storage unit that stores one or more processing modules that are user interface modules that represent the use of an interface that receives a notification to and a response to the notification, a scenario file that indicates the execution order of the processing modules, and an execution target. A reading unit that reads the processing module from the scenario file in the order of execution, a determination unit that determines whether the processing module read by the reading unit is the user operation module or the user interface module, and the determination unit. When it is determined that the user operation module is the operation control unit which controls the input unit so as to perform the user operation indicated by the user operation module, and when it is determined that the determination unit is the user interface module. , The notification unit that notifies the user indicated by the user interface module, and the continuation or termination of the execution of the scenario file or the execution of another scenario file based on the response received in response to the notification by the notification unit. It is a scenario execution device including an execution control unit for performing the above.
本発明の一態様は、上述のシナリオ実行装置であって、前記ユーザーインタフェースモジュールは、指示内容と、前記シナリオファイルの実行の継続又は終了あるいは他のシナリオファイルの実行を表す後続処理情報とを対応付けた情報を含み、前記実行制御部は、受信した前記応答が示す指示内容に対応して前記ユーザーインタフェースモジュールに設定されている前記後続処理情報に従って、前記シナリオファイルの実行の継続又は終了あるいは他のシナリオファイルの実行を行う。 One aspect of the present invention is the above-mentioned scenario execution device, and the user interface module corresponds to an instruction content and subsequent processing information indicating continuation or termination of execution of the scenario file or execution of another scenario file. The execution control unit includes the attached information, and the execution control unit continues or ends the execution of the scenario file, or other, according to the subsequent processing information set in the user interface module in response to the instruction content indicated by the received response. Execute the scenario file of.
本発明の一態様は、上述のシナリオ実行装置であって、前記後続処理情報は、前記シナリオファイルの実行の継続の場合は次に実行する前記処理モジュールの情報を含む。 One aspect of the present invention is the scenario execution device described above, and the subsequent processing information includes information on the processing module to be executed next in the case of continuation of execution of the scenario file.
本発明の一態様は、上述のシナリオ実行装置であって、前記実行制御部は、前記ユーザーインタフェースモジュールに応答を受信しない旨の情報が設定されている場合、前記通知部が前記通知を行った後、実行対象の前記シナリオファイルの実行を継続する。 One aspect of the present invention is the above-mentioned scenario execution device, and when the execution control unit is set with information that the user interface module does not receive a response, the notification unit gives the notification. After that, the execution of the scenario file to be executed is continued.
本発明の一態様は、上述のシナリオ実行装置であって、前記応答は、変数の設定値を含み、前記実行制御部は、前記シナリオファイルの実行により前記通知の送信前に得られた前記変数の値を前記応答に含まれる当該変数の前記設定値に更新し、更新された当該変数を用いて実行対象の前記シナリオファイルの実行を継続する。 One aspect of the present invention is the scenario execution device described above, wherein the response includes a set value of a variable, and the execution control unit executes the scenario file to obtain the variable before transmission of the notification. The value of is updated to the set value of the variable included in the response, and the execution of the scenario file to be executed is continued using the updated variable.
本発明の一態様は、上述のシナリオ実行装置であって、前記応答は、前記処理モジュールに関する設定を表すプロパティ情報の設定値を含み、前記実行制御部は、実行対象の前記シナリオファイルの実行を継続する際に、前記応答に含まれる前記プロパティ情報の前記設定値を用いて前記シナリオファイルに含まれる前記処理モジュールを実行する。 One aspect of the present invention is the scenario execution device described above, wherein the response includes a setting value of property information representing a setting related to the processing module, and the execution control unit executes the execution of the scenario file to be executed. When continuing, the processing module included in the scenario file is executed using the set value of the property information included in the response.
本発明の一態様は、上述のシナリオ実行装置であって、前記通知は、実行対象の前記シナリオファイルの実行により前記通知の送信前に得られた変数の値を含む。 One aspect of the present invention is the scenario execution device described above, wherein the notification includes the value of a variable obtained by executing the scenario file to be executed before the transmission of the notification.
本発明の一態様は、上述のシナリオ実行装置であって、前記通知部による前記通知は、変換装置によってデータ形式が変換された後に、前記ユーザーの端末装置に送信され、前記実行制御部は、前記端末装置から返送され、前記変換装置によってデータ形式が変換された前記応答を受信する。 One aspect of the present invention is the above-mentioned scenario execution device, in which the notification by the notification unit is transmitted to the user's terminal device after the data format is converted by the conversion device, and the execution control unit is used. The response returned from the terminal device and whose data format has been converted by the conversion device is received.
本発明の一態様は、上述のシナリオ実行装置であって、前記変換装置は、チャット、電子メール、又は、電話により前記端末装置への前記通知の送信及び前記端末装置からの前記応答の受信を行う。 One aspect of the present invention is the scenario execution device described above, wherein the conversion device transmits the notification to the terminal device and receives the response from the terminal device by chat, e-mail, or telephone. Do.
本発明の一態様は、シナリオ実行装置が実行するシナリオ実行方法であって、入力部によるユーザー操作に従って所定の機能を実行する機能実行ステップと、前記機能実行ステップにより前記機能を実行させるためのユーザー操作を表すユーザー操作モジュールである又はユーザーへの通知及び当該通知に対する応答の受信を行うインタフェースの利用を表すユーザーインタフェースモジュールである1以上の処理モジュールと、前記処理モジュールの実行順とを示す実行対象のシナリオファイルから前記実行順に前記処理モジュールを読み出す読出ステップと、前記読出ステップにおいて読み出した前記処理モジュールが前記ユーザー操作モジュールであるか前記ユーザーインタフェースモジュールであるかを判断する判断ステップと、前記判断ステップにおいて前記ユーザー操作モジュールであると判断した場合、当該ユーザー操作モジュールにより示される前記ユーザー操作を行うよう入力部を制御する操作制御ステップと、前記判断ステップにおいて前記ユーザーインタフェースモジュールであると判断した場合、当該ユーザーインタフェースモジュールにより示されるユーザーへの通知を行う通知ステップと、前記通知ステップによる前記通知に対応して受信した応答に基づいて前記シナリオファイルの実行の継続又は終了あるいは他のシナリオファイルの実行を行う実行制御ステップと、を有するシナリオ実行方法である。 One aspect of the present invention is a scenario execution method executed by a scenario execution device, in which a function execution step for executing a predetermined function according to a user operation by an input unit and a user for executing the function by the function execution step. An execution target indicating one or more processing modules that are user operation modules that represent operations or user interface modules that represent the use of an interface that notifies the user and receives a response to the notification, and the execution order of the processing modules. A read step of reading the processing modules from the scenario file in the order of execution, a determination step of determining whether the processing module read in the read step is the user operation module or the user interface module, and the determination step. When it is determined that the user operation module is the user operation module, the operation control step for controlling the input unit to perform the user operation indicated by the user operation module, and when it is determined to be the user interface module in the determination step, Continuation or termination of execution of the scenario file or execution of another scenario file based on the notification step for notifying the user indicated by the user interface module and the response received in response to the notification by the notification step. It is a scenario execution method having an execution control step to be performed.
本発明の一態様は、コンピュータを、上述したシナリオ実行装置として機能させるためのプログラムである。 One aspect of the present invention is a program for causing a computer to function as the above-mentioned scenario execution device.
本発明により、自動化ツールのシナリオの実行途中においてシナリオの実行に関するユーザーの指示を受けることができる。 According to the present invention, it is possible to receive a user's instruction regarding execution of a scenario during execution of a scenario of an automation tool.
以下、図面を参照しながら本発明の実施形態を詳細に説明する。
図1は、本発明の一実施形態によるシナリオ実行システム100の構成図である。シナリオ実行システム100は、RPAを利用するユーザーのシナリオ実行装置1及び端末装置3と、事業者の変換装置5とを備える。RPAは、自動化ツールの一例である。ユーザーの例は、企業、学校、団体などであるが、これらに限らない。同図では、シナリオ実行装置1及び端末装置3をそれぞれ1台のみ示しているが、ユーザーの数と、各ユーザーが使用するシナリオ実行装置1及び端末装置3の数は任意である。変換装置5を保有する事業者は、RPAサービスを提供する事業者でもよく、他の事業者でもよい。シナリオ実行装置1、端末装置3及び変換装置5は、ネットワーク9に無線又は有線により接続される。ネットワーク9は、例えば、インターネットや携帯電話網などの公衆網であるが、LAN(Local Area Network)などの私設網でもよく、公衆網と私設網の組み合わせでもよい。ネットワーク9には、ネットワーク9を用いたコミュニケーションサービスを提供する事業者のサービス提供装置7が接続される。ネットワーク9に接続されるサービス提供装置7の数は任意である。ユーザーが変換装置5やサービス提供装置7を有してもよい。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a configuration diagram of a
シナリオ実行装置1は、PCなどの情報処理装置であり、RPAのシナリオを実行する。シナリオは、ユーザーインタフェースによりシナリオ実行装置1に行われる操作と、その操作の実行順とを示す。端末装置3は、例えば、スマートフォン、タブレット端末、PC、携帯電話などである。変換装置5は、例えば、サーバコンピュータなどの情報処理装置で実現される。変換装置5は、シナリオ実行中のシナリオ実行装置1から受信した端末装置3宛ての通知を、サービス提供装置7が提供するネットワークサービスに応じたデータ形式に変換し、サービス提供装置7に送信する。また、変換装置5は、送信した通知に対応して端末装置3が返送した応答をサービス提供装置7から受信する。変換装置5は、受信した応答のデータ形式をシナリオ実行装置1が受信可能なデータ形式に変換し、シナリオ実行装置1に送信する。シナリオ実行装置1は、応答が示すユーザーの指示に従ってシナリオの実行を継続又は終了したり、他のシナリオを実行したりする。サービス提供装置7が提供するコミュニケーションサービスは、SNS(Social Networking Service)等を用いたメッセンジャーサービス、電子メール、SMS(ショートメッセージサービス)、電話などである。メッセンジャーサービスの例は、LINE(登録商標)、Slack(登録商標)、TEAMS(登録商標)などのチャットツールである。
The
図2は、本発明の一実施形態によるシナリオ実行装置1の構成を示す機能ブロック図であり、本実施形態と関係する機能ブロックのみを抽出して示してある。シナリオ実行装置1は、通信部11と、記憶部12と、入力部13と、表示部14と、処理部15とを備える。通信部11は、ネットワーク9を介して他の装置と通信する。記憶部12は、シナリオファイルを記憶する。シナリオファイルは、シナリオが記述されたファイルである。シナリオは、処理モジュールと、処理モジュールの実行順とを示す。処理モジュールには、ユーザー操作モジュールと、ユーザーインタフェースモジュールとがある。ユーザー操作モジュールは、ユーザーインタフェースを用いたユーザー操作を表す。ユーザー操作の対象は、例えば、シナリオ実行装置1において実行されているアプリケーションプログラム(以下、アプリとも記載する。)やOS(Operation System)などである。ユーザーインタフェースモジュールは、ユーザーへの通知、及び、通知に対するユーザーからの応答の受信を行うインタフェースの利用を表す。ユーザーへの通知、及び、通知に対する応答の受信は、例えば、ネットワーク9を介して行われる。ユーザーインタフェースモジュールは、ユーザーへの通知のみを行ってもよい。ユーザーインタフェースモジュールには、ユーザーへの通知の内容と、通知に対応して受信した応答別の後続処理情報とが付加される。後続処理情報は、応答に応じて行う処理を示す。例えば、後続処理情報は、実行中のシナリオファイルの実行継続、実行中のシナリオファイルの実行終了、実行中のシナリオファイルとは異なる他のシナリオファイルの実行開始などである。
FIG. 2 is a functional block diagram showing the configuration of the
入力部13は、キーボード、ポインティングデバイス(マウス、タブレット等)、ボタン、タッチパネル等の既存の入力装置を用いて構成される。入力部13は、ユーザーの指示をシナリオ実行装置1に入力する際にユーザーによって操作されるユーザーインタフェースである。表示部14は、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ等の画像表示装置である。
The
処理部15は、シナリオ作成部16と、シナリオ実行管理部17と、シナリオ実行部18と、機能X実行部19とを有する。
The
シナリオ作成部16は、作成情報受信部161と、画面表示制御部162と、シナリオ登録部163とを備える。作成情報受信部161は、入力部13によりユーザーが入力した、シナリオの作成に関する情報を受ける。画面表示制御部162は、シナリオ作成画面を表示部14に表示する。シナリオ作成画面は、シナリオ作成に使用可能な処理モジュールのリストと、作成中のシナリオを構成する処理モジュール及びその実行順の情報を表示する。シナリオ登録部163は、ユーザーがシナリオ作成画面を用いて行った処理モジュールの選択及び選択された処理モジュールの実行順の指定に基づいて作成したシナリオが記述されたシナリオファイルを生成する。処理モジュールには、入力部13によりユーザーが入力したプロパティ情報の値が付加される。プロパティ情報は、処理モジュールに関する設定を表す変数とその値とを含む。シナリオ登録部163は、生成したシナリオファイルを記憶部12に登録する。
The
シナリオ実行管理部17は、シナリオの実行を管理する。シナリオ実行管理部17は、ユーザーが入力部13により入力した指示に従って、シナリオの実行スケジュールを記憶部12に記憶してもよい。シナリオ実行管理部17は、記憶された実行スケジュールに従ってシナリオの実行をシナリオ実行部18に指示する。
The scenario
シナリオ実行部18は、読出部181と、判断部182と、操作制御部183と、通知部184と、実行制御部185とを備える。読出部181は、シナリオ実行管理部17により実行が指示されたシナリオが記述されたシナリオファイルから実行順に処理モジュールを読み出す。判断部182は、読出部181が読み出した処理モジュールがユーザー操作モジュールであるかユーザーインタフェースモジュールであるかを判断する。操作制御部183は、判断部182がユーザー操作モジュールであると判断した場合、当該ユーザー操作モジュールにより示されるユーザー操作を行うよう入力部13を制御する。
The
通知部184は、判断部182がユーザーインタフェースモジュールであると判断した場合、当該ユーザーインタフェースモジュールにより示されるユーザーへの通知を変換装置5に送信する。実行制御部185は、通知部184による通知に対応して端末装置3が送信した応答を変換装置5から受信する。実行制御部185は、受信した応答に対応してユーザーインタフェースモジュールに設定されている後続処理情報に従って、シナリオファイルの実行の継続又は中断、あるいは、他のシナリオファイルの実行を行う。シナリオファイルの実行の継続の場合、ユーザーが入力した変数の設定値が応答に含まれ得る。実行制御部185は、シナリオファイルの実行により通知の送信前に得られた変数の値を、応答に含まれる当該変数の設定値に更新し、更新された設定値の変数を用いてシナリオファイルの実行を継続する。また、シナリオファイルの実行の継続の場合、プロパティ情報の設定値が応答に含まれ得る。実行制御部185は、継続してシナリオファイルを実行する際に、応答に含まれるプロパティ情報の設定値を用いて、シナリオファイルに含まれる処理モジュールを実行する。
When the
機能X実行部19は、入力部13を用いた操作に従って機能Xを実行する。機能Xは、シナリオの実行に使用され得る機能であり、任意の機能とすることができる。機能Xは、CPUがアプリケーションプログラムを実行することによって実現されてもよい。例えば、機能Xは、表計算、文書編集、ウェブブラウザ、はがき作成、図形描画等、PCに実装される任意の機能とすることができる。同図では、機能Xを実行する機能X実行部19(X=A、B、C)を、機能A実行部19a、機能B実行部19b、機能C実行部19cと記載している。
The function X execution unit 19 executes the function X according to an operation using the
図3は、端末装置3の構成を示す機能ブロック図であり、本実施形態と関係する機能ブロックのみを抽出して示してある。端末装置3は、通信部31と、制御部32と、表示部33と、入力部34とを備える。通信部31は、ネットワーク9を介して他の装置と通信する。制御部32は、通信部31を介して受信したデータを表示部33へ表示する処理や、入力部34により入力された指示に従って、通信部31を介して情報を送受信する処理を行う。表示部33は、CRTディスプレイ、液晶ディスプレイ、有機ELディスプレイ等の画像表示装置である。入力部34は、キーボード、ポインティングデバイス、ボタン、タッチパネル等の既存の入力装置を用いて構成される。端末装置3がスマートフォンや携帯電話である場合、端末装置3は、通話のための受話部及び送話部をさらに備える。
FIG. 3 is a functional block diagram showing the configuration of the
図4は、変換装置5の構成を示す機能ブロック図であり、本実施形態と関係する機能ブロックのみを抽出して示してある。変換装置5は、通信部51と、記憶部52と、変換部53とを有する。通信部51は、ネットワーク9を介して他の装置と通信する。記憶部52は、ネットワークサービス毎のデータ形式の変換ルールを記憶する。変換部53は、シナリオ実行装置1から受信した端末装置3宛ての通知を、記憶部52に記憶される変換ルールに従って、サービス提供装置7が提供するネットワークサービスに応じたデータ形式に変換して出力する。また、変換部53は、端末装置3からシナリオ実行装置1に返送された応答をサービス提供装置7から受信し、記憶部52に記憶される変換ルールに従って、受信した応答のデータ形式をシナリオ実行装置1が受信可能なデータ形式に変換して出力する。チャットを利用して端末装置3と通信を行う場合、変換部53は、チャットボットの機能を有してもよい。また例えば、電話を利用して端末装置3と通信を行う場合、変換部53は、テキストを音声に変換して出力する音声合成装置と、入力した音声をテキストに変換する音声認識装置とを有する。
FIG. 4 is a functional block diagram showing the configuration of the conversion device 5, and only the functional blocks related to the present embodiment are extracted and shown. The conversion device 5 includes a
図5〜図10は、シナリオ実行装置1における画面表示例を示す図である。図5に示すシナリオ作成画面200aは、ライブラリ表示領域201及びシナリオ作成領域202を有する。ライブラリ表示領域201は、利用可能な処理モジュールのリストをモジュール名により表示する領域である。モジュール名は、処理モジュールの名称である。処理モジュールのリストには、ユーザー操作モジュール及びユーザーインタフェースモジュールが含まれる。シナリオ作成領域202は、処理モジュールの実行順を指定する領域である。
5 to 10 are diagrams showing an example of screen display in the
ここでは、ユーザーインタフェースモジュールとして、ユーザー通知モジュールと、プロパティ設定モジュールとがある場合について説明する。ユーザー通知モジュールは、ユーザーへの通知のみを行うか、ユーザーへの通知とユーザーからの応答受信を行い、応答に設定されたユーザー指示に応じて後続処理を決定する。プロパティ設定モジュールは、ユーザーへの通知とユーザーからの応答受信を行い、応答に設定されたプロパティ情報の設定値をシナリオ内の処理モジュールのプロパティ情報に設定して、シナリオの実行を継続する。 Here, a case where there are a user notification module and a property setting module as user interface modules will be described. The user notification module only notifies the user, or notifies the user and receives the response from the user, and determines the subsequent processing according to the user instruction set in the response. The property setting module notifies the user and receives the response from the user, sets the setting value of the property information set in the response to the property information of the processing module in the scenario, and continues the execution of the scenario.
ユーザーは、マウス等の入力部13により、ライブラリ表示領域201に表示される処理モジュールの一覧の中から、追加する処理モジュールのモジュール名を選択する。追加する処理モジュールを追加処理モジュールと記載する。同図では、追加処理モジュールがユーザー通知モジュールである場合を例に示している。「ユーザー通知」は、ユーザー通知モジュールのモジュール名である。ユーザーは、マウスにより、選択した追加処理モジュールを、シナリオ作成領域202までドラッグする(ドラッグアンドドロップ)。これにより、図6に示すシナリオ作成画面200bが表示される。
The user selects the module name of the processing module to be added from the list of processing modules displayed in the
シナリオ実行装置1は、図6に示すシナリオ作成画面200bのシナリオ作成領域202におけるドラッグの終了位置に、追加処理モジュールのモジュール名を表示する処理シンボル212−1を追加表示する。終了位置は、シナリオの開始を表すノード211−1と、シナリオの終了を表すノード211−2との間である。ユーザーが、マウス等の入力部13により処理シンボル212−1のプロパティ入力を指示した場合、シナリオ実行装置1は、図7に示すプロパティ入力画面220を表示する。処理シンボル212−1のプロパティ入力の指示は、例えば、処理シンボル212−1の表示上でダブルクリックする操作などとすることができる。
The
プロパティ入力画面220は、対象アプリケーション入力フィールド221と、接続設定入力フィールド222と、発話の種類の選択ボタン223a、223bと、発話設定領域224とを含む。対象アプリケーション入力フィールド221は、ユーザーの端末装置3への通知に用いるネットワークサービスのアプリケーションを指定する。指定されるアプリケーションは、各種のメッセンジャーサービス、電子メール、独自UI(ユーザーインタフェース)、ユーザーのロカールアプリケーション、電話などである。接続設定入力フィールド222には、対象アプリケーション入力フィールド221において選択されたアプリケーションを用いた通知の送信先をテキストにより入力する。チャットなどのメッセンジャーサービスの場合、そのメッセンジャーサービスにおいて宛先として用いられるユーザーのIDや名前が設定される。電子メールの場合、メールアドレスが設定される。また、電話の場合、電話番号が設定される。選択ボタン223a、223bはそれぞれ、発話の種類が通知のみであるか、又は、ユーザー応答有りかを選択する。ユーザー応答有とは、通知を行い、さらに、その通知に対するユーザーの応答を受信することをいう。
The
発話設定領域224は、発話の種類が通知のみかユーザー応答有りかによって異なる。発話設定が通知のみの場合、発話設定領域224は、通知メッセージ入力フィールド225及び通知変数入力フィールド226を有する。発話設定がユーザー応答有りの場合、発話設定領域224は、通知メッセージ入力フィールド225及び通知変数入力フィールド226に加え、ユーザー応答用ボタン設定領域227及び通知間隔選択ボタン228を有する。
The
通知メッセージ入力フィールド225には、ユーザーに通知するメッセージがテキストにより入力される。通知変数入力フィールド226には、シナリオの実行によって得られた変数のうち、ユーザーに値を通知する変数を入力する。変数はプルダウンメニューにより選択され、通知を行うときに用いる変数名をテキストにより入力される。プルダウンメニューには、シナリオ内で使用されている変数がメニュー表示される。
In the notification
ユーザー応答用ボタン設定領域227では、通知を受信した端末装置3においてユーザーが応答を行うためのボタンを設定する。ユーザー応答用ボタン設定領域227は、ボタン表示名入力フィールド2271と、ボタンが選択された場合のアクション(動作)を選択するアクション選択フィールド2272と、ユーザーが値を設定する変数を選択する変数選択フィールド2273とを含む。
In the user response
ボタン表示名入力フィールド2271には、ユーザーが応答を入力するためのボタンに表示する文字列を入力する。アクション選択フィールド2272に設定されるアクション及び変数選択フィールド2273に設定される変数は、後続処理情報として用いられる。アクションは、シナリオ内の指定の処理モジュールを実行(シナリオの実行継続)、変数に値を設定してシナリオ内の指定の処理モジュールを実行(シナリオの実行継続)、シナリオの実行終了、指定のシナリオの実行、保留などである。同図に示すアクション選択フィールド2272では、プルダウンメニューによりアクションを選択可能である。シナリオの実行継続である場合、ユーザーは、次に実行する処理モジュールを選択する。例えば、ユーザー通知モジュールに後続する処理モジュールのモジュール名をプルダウンメニューに含めて表示し、後続する処理モジュールをユーザーに選択させる。なお、ユーザー通知モジュールに後続する処理モジュールが一つの場合は、モジュール名の指定を省略してもよい。変数に値を設定してシナリオ内の指定の処理モジュールを実行の場合、変数選択フィールド2273にシナリオ内に用いられている変数をプルダウンメニューにより表示し、値を設定する変数をユーザーに選択させる。指定のシナリオの実行の場合、アクション選択フィールド2272にシナリオファイル名をプルダウンメニューに含めて表示し、実行させるシナリオのシナリオファイル名をユーザーに選択させる。通知間隔選択ボタン228は、ユーザーへ通知した応答が受信できなかった場合、又は、アクションが保留である場合に、通知の再送を行う時間間隔を選択するためのボタンである。
In the button display
ユーザーが入力部13によりプロパティ入力画面220のOKボタン229をクリックするなど保存操作を行うと、シナリオ実行装置1は、処理シンボル212−1が表すユーザー通知モジュールと対応付けて、プロパティ入力画面220に入力された設定値のプロパティ情報を記憶する。
When the user performs a save operation such as clicking the
図7には、端末装置3の表示部33に表示される通知画面400の例がさらに示されている。端末装置3は、実装しているメッセンジャーサービスのアプリを用いて変換装置5から通知を受信し、通知画面400を表示する。通知内容は、プロパティ入力画面220に設定された内容に基づいており、変換装置5はこの設定内容をシナリオ実行装置1から受信する。テキスト401は、通知メッセージ入力フィールド225に入力されたテキストの表示である。テキスト402は、通知変数入力フィールド226において入力された変数名と、その変数名が設定された変数の値との表示である。ボタン403a、403b、403c、403dは、ボタン表示名入力フィールド2271に入力されたボタン表示名を表示する。ユーザーがいずれかのボタン403a、403b、403c、403dを選択すると、端末装置3は、選択されたボタンの識別情報を指示内容として設定した応答を送信する。
FIG. 7 further shows an example of the
図8は、シナリオ完成後のシナリオ作成画面200cを示している。シナリオ作成領域202には、ユーザーが入力部13により選択した処理モジュールのモジュール名が記述された矩形の処理シンボル212−1〜212−4が表示されている。矢印213−1〜213−6は、処理モジュールの実行順を表す。開始を表すノード211−1からの矢印213−1は、シナリオ開始後に、矢印の先の処理シンボル212−2が表す処理モジュール実行することを示す。矢印213−2は、矢印の根元の処理シンボル212−2が表す処理モジュールを実行した後に、矢印の先の処理シンボル212−1が表す処理モジュールを実行することを表す。矢印213−3は、矢印の根元の処理シンボル212−1が表す処理モジュールを実行した後に、矢印の先の処理シンボル212−3が表す処理モジュールを実行することを表す。矢印213−4は、矢印の根元の処理シンボル212−1が表す処理モジュールを実行した後に、矢印の先の処理シンボル212−4が表す処理モジュールを実行することを表す。処理シンボル212−1のユーザー通知モジュールを実行した後、処理シンボル212−3と処理シンボル212−4とのいずれが表す処理モジュールを実行するかは、プロパティ入力画面220のユーザー応答用ボタン設定領域227に設定された内容及びユーザーからの応答に従う。
FIG. 8 shows a
図9は、プロパティ設定モジュールを用いてシナリオを作成したシナリオ作成画面200dを示している。シナリオ作成領域202には、ユーザーが入力部13により選択した処理モジュールのモジュール名が記述された矩形の処理シンボル215−1〜215−3が表示されている。矢印216−1〜216−4は、処理モジュールの実行順が、処理シンボル215−1、215−2、215−3であることを表す。処理シンボル215−1及び215−3は、ユーザー操作モジュールを表し、処理シンボル215−2は、プロパティ設定モジュールを表す。
FIG. 9 shows a scenario creation screen 200d in which a scenario is created using the property setting module. In the
ユーザーが、マウス等の入力部13により処理シンボル215−1の表示上でダブルクリックするなど、処理シンボル215−1のプロパティ入力を指示した場合、シナリオ実行装置1は、処理Aのユーザー操作モジュールのプロパティ入力画面を表示する。ユーザーは、入力部13により、プロパティ入力画面に、処理Aのプロパティ情報の設定値を入力する。ユーザーが、入力部13によりプロパティ情報の保存操作を行うと、シナリオ実行装置1は、処理シンボル215−1が表す処理Aのユーザー操作モジュールと対応付けて、プロパティ入力画面に入力された処理Aのプロパティ情報を記憶する。
When the user instructs the property input of the processing symbol 215-1 such as double-clicking on the display of the processing symbol 215-1 by the
同様に、ユーザーが、入力部13により処理シンボル215−3のプロパティ入力を指示した場合、シナリオ実行装置1は、処理Bのユーザー操作モジュールのプロパティ入力画面を表示する。ユーザーは、入力部13により、プロパティ入力画面に、処理Bのプロパティ情報の設定値を入力する。ユーザーが、入力部13によりプロパティ情報の保存操作を行うと、シナリオ実行装置1は、処理シンボル215−3が表す処理Bのユーザー操作モジュールと対応付けて、プロパティ入力画面に入力された処理Bのプロパティ情報を記憶する。
Similarly, when the user instructs the property input of the processing symbol 215-3 by the
本実施形態のプロパティ情報は、1以上の変数それぞれの識別情報と、各変数の値と、変数の説明との情報を含む。変数の識別情報として、例えば、変数が属するグループ名と、変数名との組み合わせを用いる。プロパティ情報はさらに、変数のデータ形式の情報を含んでもよい。なお、複数のユーザー操作モジュールのプロパティ情報に、同じ変数を使用し得る。例えば、処理Aのユーザー操作モジュールのプロパティ情報に用いられる変数を、処理Bのユーザー操作モジュールのプロパティ情報で用いてもよい。 The property information of the present embodiment includes identification information of each of one or more variables, value of each variable, and description of the variable. As the variable identification information, for example, a combination of the group name to which the variable belongs and the variable name is used. The property information may further include information in the data format of the variable. The same variable can be used for the property information of multiple user operation modules. For example, the variables used for the property information of the user operation module of process A may be used for the property information of the user operation module of process B.
ユーザーが、入力部13により処理シンボル215−2のプロパティ入力を指示した場合、シナリオ実行装置1は表示部14に、図10に示すプロパティ入力画面250を表示する。プロパティ入力画面250は、対象アプリケーション入力フィールド251と、接続設定入力フィールド252と、発話設定領域253とを含む。対象アプリケーション入力フィールド251は、対象アプリケーション入力フィールド221(図7)と同様に、ユーザーの端末装置3への通知に用いるネットワークサービスのアプリケーションを指定する。接続設定入力フィールド252には、接続設定入力フィールド222(図7)と同様に、対象アプリケーション入力フィールド251において選択されたアプリケーションを用いた通知の送信先をテキストにより入力する。
When the user instructs the property input of the processing symbol 215-2 by the
発話設定領域253は、ウェルカムメッセージ入力フィールド254と、クローズメッセージ入力フィールド255と、設定プロパティ情報入力領域256と、通知間隔選択ボタン257とを有する。ウェルカムメッセージ入力フィールド254には、ウェルカムメッセージをテキストで記述する。ウェルカムメッセージは、プロパティ設定モジュールの開始により最初にユーザーに通知するメッセージである。クローズメッセージ入力フィールド255には、クローズメッセージをテキストで記述する。クローズメッセージは、ユーザーから指示の受信を終了する際に通知するメッセージである。
The
設定プロパティ情報入力領域256には、プロパティ情報の変数のうち、ユーザーに値の設定を要求する変数の識別情報と、その変数の設定値の回答方式とを入力する。設定プロパティ情報入力領域256は、グループ名入力フィールド2561、変数名入力フィールド2562、説明入力フィールド2563、種別入力フィールド2564及び表示入力フィールド2565を含む。グループ名入力フィールド2561、変数名入力フィールド2562、説明入力フィールド2563にはそれぞれ、シナリオ内の1以上の処理モジュールのプロパティ情報に用いられている変数のグループ名、変数名、説明が設定される。なお、シナリオ実行装置1は、シナリオ内の各処理モジュールのプロパティ情報に使用されている全ての変数を一覧表示し、その表示の中からユーザーが入力部13により変数を選択してもよい。シナリオ実行装置1は、選択された変数のグループ名、変数名、説明をそれぞれ、グループ名入力フィールド2561、変数名入力フィールド2562、説明入力フィールド2563に入力する。
In the setting property
種別入力フィールド2564は、設定値の回答方式の種別をプルダウンメニューの中から選択する。種別は、例えば、日付、ボタン、テキスト、数値などである。表示入力フィールド2565は、種別がボタンである場合に、ボタンに表示する表示名を設定する。この表示名は、変数の設定値として用いられる。通知間隔選択ボタン257は、ユーザーへ通知した応答が受信できなかった場合に、通知の再送を行う時間間隔を選択するためのボタンである。
The
ユーザーが入力部13によりプロパティ入力画面250のOKボタン258をクリックするなど保存操作を行うと、シナリオ実行装置1は、処理シンボル215−2が表すプロパティ設定モジュールと対応付けて、プロパティ入力画面250に入力された設定値のプロパティ情報を記憶する。なお、シナリオ実行装置1は、プロパティ設定モジュールのプロパティ情報に、ユーザー応答有を示す発話の種類、又は、通知及びプロパティ設定を示す発話の種類を設定してもよい。また、シナリオ実行装置1は、プロパティ情報に、応答受信と対応付けて、プロパティ情報を更新してシナリオ実行継続を示す後続処理情報を設定してもよい。すなわち、応答受信後に実行する処理モジュールとして、プロパティ設定モジュールの次の処理モジュールが指定される。
When the user performs a save operation such as clicking the
図11は、端末装置3の表示部33に表示される通知画面410の例を示す図である。端末装置3は、実装しているメッセンジャーサービスのアプリを用いて変換装置5から通知を受信し、通知画面410を表示する。通知内容は、プロパティ入力画面250に設定された内容に基づいており、変換装置5はこの設定内容をシナリオ実行装置1から受信する。最初に変換装置5から送信されたメッセージ421は、ウェルカムメッセージ入力フィールド254に入力されたウェルカムメッセージの表示である。
FIG. 11 is a diagram showing an example of a
メッセージ422〜428は、設定プロパティ情報入力領域256に入力された内容に基づく。変換装置5から送信されたメッセージ422は、設定プロパティ情報の1番目に入力された変数名「開始日」の設定値を要求するメッセージである。端末装置3から送信されたメッセージ423は、ユーザーが端末装置3に入力した開始日の設定値である。変換装置5から送信されたメッセージ424は、設定プロパティ情報の2番目に入力された変数名「終了日」の設定値を要求するメッセージである。端末装置3から送信されたメッセージ425は、ユーザーが端末装置3に入力した終了日の設定値である。
The
変換装置5から送信されたメッセージ426は、設定プロパティ情報の3番目に入力された変数名「カテゴリ」の設定値を要求するメッセージである。変数名「カテゴリ」の変数の種別入力フィールド2564には「ボタン」が設定されているため、変換装置5は、設定値を選択するためのボタン427−1〜427−4を表示するための表示データを端末装置3に送信する。ボタン427−1〜427−4はそれぞれ、表示入力フィールド2565に設定された「青果」、「鮮魚」、「精肉」、「すべて」をボタン名として表示する。ユーザーが、端末装置3に表示されたボタン427−1〜427−4のいずれかを選択すると、端末装置3は、選択されたボタンのボタン名をメッセージ428として変換装置5に送信する。
The
変換装置5は、設定プロパティ情報入力領域256に設定された全変数の設定値を受信すると、各変数の設定値を表示して設定内容が正しいかの確認を要求するメッセージ429と、設定内容が正しいか否かの応答を入力するためのボタン430−1、430−2を表示するための表示データを送信する。ユーザーが、端末装置3に表示されたボタン430−1、430−2のいずれかを選択すると、端末装置3は、選択されたボタンのボタン名をメッセージ431として変換装置5に送信する。変換装置5は、設定内容が正しいことが設定された応答を受信し、メッセージ432を端末装置3に送信する。メッセージ432は、クローズメッセージ入力フィールド255に入力されたクローズメッセージの表示である。
When the conversion device 5 receives the setting values of all the variables set in the setting property
なお、上記では、ユーザーインタフェースモジュールとしてユーザー通知モジュールとプロパティ設定モジュールの2種類を用いたが、ユーザー通知モジュールとプロパティ設定モジュールとを一つのユーザーインタフェースモジュールとしてもよい。この場合、ユーザーインタフェースモジュールのプロパティ入力画面は、図7に示すプロパティ入力画面220に対し、発話の種類として、例えば、通知及びプロパティ設定を選択するボタンを追加したものを使用することができる。ユーザーが通知及びプロパティ設定を選択した場合、シナリオ実行装置1は、プロパティ入力画面220の発話設定領域224に代えて、発話設定領域253を表示する。
In the above, two types of user interface modules, a user notification module and a property setting module, are used, but the user notification module and the property setting module may be used as one user interface module. In this case, the property input screen of the user interface module can use, for example, a
図12は、シナリオ実行装置1におけるシナリオ生成処理を示すフロー図である。シナリオ実行装置1の作成情報受信部161は、処理モジュールの追加が入力されたか否かを判定する(ステップS110)。例えば、ユーザーは、マウス等の入力部13により、シナリオ作成画面のライブラリ表示領域201に表示される処理モジュールの一覧の中から、追加処理モジュールを選択し、シナリオ作成領域202までドラッグする。この場合、作成情報受信部161は、選択された追加処理モジュールの情報と、ドラッグの終了位置の情報とを入力部13から受信し、処理モジュールの追加が入力されたと判定する(ステップS110:YES)。画面表示制御部162は、ドラッグの終了位置に、追加処理モジュールの処理モジュール名を表示する処理シンボルを追加表示する(ステップS115)。シナリオ作成部16は、ステップS110の処理に戻る。
FIG. 12 is a flow chart showing a scenario generation process in the
一方、作成情報受信部161は、処理モジュールの追加が入力されなかったと判定した場合(ステップS110:NO)、プロパティ設定指示が入力されたか否かを判定する(ステップS120)。例えば、ユーザーは、入力部13により、プロパティ設定対象の処理モジュールを表す処理シンボルをダブルクリックする。プロパティ設定対象の処理モジュールを、設定対象処理モジュールと記載する。作成情報受信部161は、プロパティ設定指示の操作が行われた処理シンボルの情報を入力部13から受信し、プロパティ設定指示が入力されたと判定する(ステップS120:YES)。画面表示制御部162は、プロパティ設定指示が行われた処理シンボルが表す設定対象処理モジュールのプロパティ入力画面を表示する(ステップS125)。ユーザーは、プロパティ入力画面に設定対象処理モジュールのプロパティ情報に用いられる各種変数の設定値を入力し、OKボタンを操作する(ステップS130)。作成情報受信部161は、設定対象処理モジュールと、入力された各種変数の設定値を含むプロパティ情報とを対応付けて記憶する。シナリオ作成部16は、ステップS110の処理に戻る。
On the other hand, when the creation
作成情報受信部161は、ステップS120においてプロパティ設定指示が入力されなかったと判定した場合(ステップS120:NO)、シナリオ作成終了が入力されたか否かを判定する(ステップS135)。作成情報受信部161は、シナリオ作成終了が入力されなかったと判定した場合(ステップS135:NO)、ユーザー操作に応じた処理を行って(ステップS140)、ステップS110の処理に戻る。一方、作成情報受信部161は、シナリオ作成終了が入力されたと判定した場合(ステップS135:YES)、シナリオ登録部163に処理を指示する。シナリオ登録部163は、作成されたシナリオを記述したシナリオファイルを生成して記憶部12に書き込み、シナリオ生成フローを終了する(ステップS145)。
When it is determined in step S120 that the property setting instruction has not been input (step S120: NO), the creation
なお、上記においては、ライブラリ表示領域201に表示される処理モジュールの一覧の中から、追加処理モジュールを選択したが、ユーザー操作モジュールを任意に生成することも可能である。例えば、作成情報受信部161は、ユーザーが入力部13により操作記録開始指示を入力してから操作記録終了指示を入力するまでに入力部13により行った指示を記録し、記録した内容を実行する処理モジュールを生成する。ユーザーは、この生成された処理モジュールを、追加処理モジュールとして選択可能である。
In the above, the additional processing module is selected from the list of processing modules displayed in the
図13及び図14は、シナリオ実行装置1におけるシナリオ実行処理を示すフロー図である。シナリオ実行装置1のシナリオ実行管理部17は、入力部13により実行対象のシナリオの情報と、実行開始とが入力されたことを検出する(ステップS210)。あるいは、シナリオ実行管理部17は、予め登録していた実行スケジュールが示す実行対象のシナリオの実行タイミングになったことを検出する。読出部181は、実行対象のシナリオが記述されたシナリオファイルを記憶部12から読み出す(ステップS215)。読出部181は、シナリオファイルに記述されている最初の処理モジュールを実行対象モジュールとする(ステップS220)。
13 and 14 are flow charts showing a scenario execution process in the
読出部181は、シナリオファイルから実行対象モジュールの情報を読み出す(ステップS225)。実行対象モジュールの情報は、実行対象モジュールの種別と、実行対象モジュールのプロパティ情報の各変数の設定値と、実行対象モジュールの次の実行順の処理モジュールとを含む。判断部182は、処理対象モジュールの種別がユーザー操作モジュールであるかユーザーインタフェースモジュールであるかを判断する(ステップS230)。
The
判断部182は、処理対象モジュールの種別がユーザー操作モジュールであると判断した場合(ステップS230:ユーザー操作モジュール)、操作制御部183に処理を指示する。操作制御部183は、処理対象モジュールにより示されるユーザー操作を行うよう入力部13を制御する(ステップS235)。
When the
読出部181は、処理対象モジュールの次の実行順が終了ノードか否かを判定する(ステップS240)。読出部181は、次の実行順が終了ノードであると判断した場合(ステップS240:YES)、シナリオの実行を終了する(ステップS245)。一方、読出部181は、次の実行順が終了ノードではないと判断した場合(ステップS240:NO)、次の実行順の処理モジュールを新たな実行対象モジュールとし(ステップS250)、ステップS225からの処理を繰り返す。
The
ステップS230において判断部182は、処理対象モジュールの種別がユーザーインタフェースモジュールであると判断した場合(ステップS230:ユーザーインタフェースモジュール)、通知部184に処理を指示する。通知部184は、実行対象モジュールのプロパティ情報が示す設定値に従ってユーザーへの通知を設定した通知送信要求を生成する(ステップS255)。通知部184は、生成した通知送信要求を変換装置5に送信する(ステップS260)。通知部184は、ユーザーインタフェースモジュールのプロパティ情報に通知のみが設定されているか否かを判定する(ステップS265)。通知部184は、通知のみが設定されていると判定した場合(ステップS265:YES)、ステップS240の処理に進む。ステップS240において、読出部181は、次の実行順が終了ノードか否かを判定する。
When the
一方、通知部184は、プロパティ情報にユーザー応答有、又は、通知及びプロパティ設定が設定されている、あるいは、処理対象モジュールがプロパティ設定モジュールである場合、通知のみが設定されていないと判定する(ステップS265:NO)。この場合、通知部184は、プロパティ情報に設定されている通知間隔が示す時間のタイマを起動する(ステップS270)。通知部184は、応答を受信しない場合(ステップS275:NO)、タイマが満了を検出したか否かを判定する(ステップS280)。通知部184が、タイマの満了を検出していないと判定した場合(ステップS280:NO)、ステップS275からの処理を繰り返す。
On the other hand, the
通知部184は、応答を受信した場合(ステップS275:YES)、図14の処理を実行する。通知部184は、タイマをリセットし、応答を実行制御部185に出力する(ステップS310)。実行制御部185は、受信した応答が示す指示内容に対応する後続処理情報を、処理対象モジュールであるユーザーインタフェースモジュールのプロパティ情報から読み出す。実行制御部185は、読み出した後続処理情報の種別を判定する(ステップS315)。
When the
実行制御部185は、後続処理情報の種別が保留であると判定した場合、通知部184に処理を指示する。通知部184は、図13のステップS270からの処理を行う。実行制御部185は、後続処理情報の種別が指定の処理モジュールの実行であると判定した場合、指定の処理モジュールを次の実行順の処理モジュールとする(ステップS320)。読出部181は、ステップS225からの処理を行う。
When the
実行制御部185は、後続処理情報の種別が変数に値を設定して指定の処理モジュールの実行であると判定した場合、シナリオの実行により得られた変数の値を、応答に設定されている当該変数の値に更新した後(ステップS325)、ステップS320の処理を行う。
When the
実行制御部185は、後続処理情報の種別が指定のシナリオの実行を示す場合、現在実行中のシナリオの実行を終了し(ステップS330)、指定のシナリオの開始指示をシナリオ実行管理部17に出力する(ステップS335)。シナリオ実行管理部17は、指定のシナリオについて新たに、図13及び図14に示すシナリオ実行処理を開始する。
When the type of subsequent processing information indicates the execution of the specified scenario, the
実行制御部185は、後続処理情報の種別がシナリオの実行終了を示す場合、現在実行中のシナリオの実行を終了する(ステップS340)。
When the type of subsequent processing information indicates the end of execution of the scenario, the
実行制御部185は、後続処理情報の種別がプロパティ情報を更新してシナリオ実行継続を示す場合、ステップS345の処理を行う。なお、実行制御部185は、処理対象モジュールがプロパティ設定モジュールであることを、プロパティ情報を更新してシナリオ実行継続を示す後続処理情報であるとみなしてもよい。実行制御部185は、応答に設定されているプロパティ情報の変数の設定値により、シナリオ内の処理モジュールに対応付けられたプロパティ情報に含まれる当該変数の設定値を更新する(ステップS345)。実行制御部185は、図13のステップS240(又はステップS250)からの処理を行う。
When the type of subsequent processing information updates the property information to indicate continuation of scenario execution, the
なお、通知部184がステップS280においてタイマの満了を検出したと判定した場合(ステップS280:YES)、通知送信要求の送信回数が予め定められた上限に達した場合、あるいは、最初の通知送信要求の送信から所定時間が経過した場合は、シナリオを終了するなど、任意のエラー処理を行ってもよい。
When the
図15は、ユーザーインタフェースモジュール実行時のシナリオ実行システム100のシーケンス図である。まず、ユーザー通知モジュール実行時の処理を説明する。シナリオ実行装置1の通知部184はユーザー通知モジュールのプロパティ情報に設定された値に従って通知送信要求を生成する(ステップS410)。通知送信要求には、対象アプリケーションと、通知の送信先と、発話の種類と、ユーザーに通知するメッセージと、ユーザーに通知する変数の変数名及び値と、ユーザー応答用ボタンのボタン番号及びボタン表示名と、ユーザーが設定する変数の変数名とが設定される。例えば、ボタン番号は、ボタン表示名の入力順に付与される。ユーザーに通知するメッセージと、ユーザーに通知する変数の変数名及び値と、ユーザー応答用ボタンのボタン番号及びボタン表示名と、ユーザーが設定する変数の変数名とのうち一部が通知送信要求に設定されてもよい。通知部184は、通知送信要求の送信元に、自装置のアドレス情報を設定する。通信部11は、通知部184が生成した通知送信要求を、変換装置5に送信する(ステップS415)。
FIG. 15 is a sequence diagram of the
変換装置5の通信部51は、受信した通知送信要求を変換部53に出力する。変換部53は、対象アプリケーションが表すネットワークサービスに対応した変換ルールを記憶部52から読み出す。変換部53は、シナリオ実行装置1から受信した通知送信要求を、読み出した変換ルールに従って変換し、端末装置3宛てのユーザー通知を生成する(ステップS420)。ユーザー通知には、通知の送信先と、ユーザーに通知するメッセージと、ユーザーに通知する変数の変数名及び値と、各ボタン表示名のボタンの表示させるためのボタン表示用データと、ユーザーが設定する変数の変数名とが含まれる。なお、ネットワークサービスが電子メールの場合、ボタン表示用データに代えて、ボタン番号とボタン表示名とを対応付けたテキストをユーザー通知に設定する。変換装置5の通信部51は、生成したユーザー通知をサービス提供装置7に送信する(ステップS425)。
The
サービス提供装置7は、受信したユーザー通知を、通知の送信先が示す端末装置3に送信する(ステップS430)。ユーザーの端末装置3の制御部32は、通信部31が受信したユーザー通知を表示部33に表示する(ステップS435)。例えば、端末装置3は、図7に示す通知画面400を表示する。ユーザーは、表示させる内容を確認し、応答が必要な場合には、表示されるボタンのいずれかを入力部34により選択する(ステップS440)。制御部32は、選択されたボタンのボタン番号又はボタン表示名を指示内容として設定した応答を、サービス提供装置7に送信する(ステップS445)。変数の値の設定が必要な場合、制御部32は、さらに、ユーザーが入力部34により入力した変数の値を設定した応答を送信する。サービス提供装置7は、端末装置3から受信した応答を、変換装置5へ送信する(ステップS450)。なお、電子メールの場合、ユーザーは、ボタン番号や変数の値を指示内容として本文又は件名に記述した電子メールを返信する。サービス提供装置7は、端末装置3から返送された電子メールを、通知に対する応答として変換装置5へ送信する。
The service providing device 7 transmits the received user notification to the
変換装置5の通信部51は、サービス提供装置7から応答を受信する。変換装置5の変換部53は、通知送信要求の発話種別が通知のみを示す場合、応答を破棄する。変換装置5の変換部53は、通知送信要求の発話種別が通知及びユーザー応答を示す場合、受信した応答に用いられているネットワークサービスの種別に応じた変換ルールを記憶部52から読み出す。変換部53は、変換ルールに従って応答のデータ形式を変換し(ステップS455)、変換後の応答をシナリオ実行装置1に送信する(ステップS460)。シナリオ実行装置1の通知部184は、通信部31が受信した応答から指示内容を取得する(ステップS465)。
The
上記により、例えば、変換装置5は、シナリオ実行装置1から受信した通知送信要求を元に、チャットインターフェースにより端末装置3に通知を送信する。端末装置3は、チャットインターフェースにより受信した通知を表示し、ユーザーは表示を確認して指示を応答する。チャットインターフェースにより送信された指示内容は、変換装置5宛てに返送され、変換装置5は、指示内容をシナリオ実行装置1に送信する。シナリオ実行装置1は、受信した指示内容に応じた後続処理を実行する。
According to the above, for example, the conversion device 5 transmits a notification to the
なお、対象アプリケーションとして電話が選択された場合、変換装置5の変換部53は、音声合成装置及び音声認識装置とを用いて変換を行う。変換部53は、変換ルールに従って、通知送信要求に設定されているメッセージと、ユーザーに通知する変数の変数名及び値と、各ボタン番号又はボタン表示名とを、定型文の所定の位置に埋め込んだテキストメッセージを生成する。例えば、ボタン番号「1」のボタン表示名が「シナリオBを実行」、ボタン番号「2」のボタン表示名が「シナリオAを終了」であるとする。変換部53は、「<シナリオBを実行>のときには<1>を、<シナリオAを終了>のときには<2>を押すか話してください。」のように、定型文にボタン番号及びボタン表示名を<>で囲まれた位置に埋め込んでテキストデータを生成する。
When a telephone is selected as the target application, the
変換部53は、通知送信要求に設定されている端末装置3の電話番号に電話をかける。端末装置3が応答し、変換装置5と端末装置3とが通話状態になると、変換部53は、テキストメッセージを音声合成して出力する。ユーザーはメッセージを聞くと、端末装置3により指示内容を発話するか、指示内容を表す数字ボタンを押す。変換装置5の変換部53は、ユーザーの発話内容又はプッシュボタン音を音声認識してテキストの指示内容に変換するか、押されたボタンの番号を信号で受信する。
The
なお、図15のステップS420〜ステップS435までの処理S1と、ステップS440〜ステップS450までの処理S2とは必要に応じて繰り返されてもよい。例えば、通知画面400の内容を、複数回に分けて送信してもよい。
The process S1 from step S420 to step S435 in FIG. 15 and the process S2 from step S440 to step S450 may be repeated as necessary. For example, the content of the
次に、プロパティ設定モジュール実行時の処理を説明する。なお、ユーザー通知モジュール実行時と同様に、シナリオ実行装置1は通信部11を介して変換装置5とデータを送受信し、変換装置5は通信部51を介してシナリオ実行装置1及びサービス提供装置7とデータを送受信し、端末装置3は通信部31を介してサービス提供装置7とデータを送受信するが、以下ではこれらの処理の記載を省略する。
Next, the processing at the time of executing the property setting module will be described. As in the case of executing the user notification module, the
シナリオ実行装置1の通知部184はプロパティ設定モジュールのプロパティ情報を設定した通知送信要求を生成する(ステップS410)。通知送信要求には、対象アプリケーションと、通知の送信先と、通知及びプロパティ設定を示す発話の種類と、ウェルカムメッセージ及びクローズメッセージと、設定プロパティ情報入力領域256に入力された各変数の番号、変数名、種別及び表示とが設定される。番号は、設定プロパティ情報入力領域256への入力順に付与される。通知部184は、通知送信要求の送信元に、自装置のアドレス情報を設定し、変換装置5に送信する(ステップS415)。
The
変換装置5の変換部53は、シナリオ実行装置1から受信した通知送信要求から対象アプリケーションを読み出し、読み出した対象アプリケーションが表すネットワークサービスに対応した変換ルールを記憶部52から読み出す。変換部53は、シナリオ実行装置1から受信した通知送信要求を、読み出した変換ルールに従って変換し、端末装置3宛てのユーザー通知を生成する(ステップS420)。まず、変換部53は、ウェルカムメッセージを設定した端末装置3宛てのユーザー通知を生成し、サービス提供装置7に送信する(ステップS425)。サービス提供装置7は、受信したユーザー通知を、ユーザー通知の送信先が示す端末装置3に送信する(ステップS430)。端末装置3の制御部32は、サービス提供装置7から受信したユーザー通知を表示部33に表示する(ステップS435)。例えば、表示部33に、メッセージ421(図11)が表示される。
The
次に、変換装置5の変換部53は、番号1の変数の変数名を表示し、その変数の設定値の送信を要求するメッセージを設定した端末装置3宛てのユーザー通知を生成し(ステップS420)、サービス提供装置7に送信する(ステップS425)。サービス提供装置7は、受信したユーザー通知を、ユーザー通知の送信先が示す端末装置3に送信する(ステップS430)。端末装置3の制御部32は、サービス提供装置7から受信したユーザー通知を表示部33に表示する(ステップS435)。例えば、表示部33に、メッセージ422(図11)が表示される。
Next, the
ユーザーは、表示部33に表示された内容に従い設定値を入力し、送信操作を行う(ステップS440)。制御部32は、入力された設定値を設定した応答を送信する(ステップS445)。サービス提供装置7は、端末装置3から受信した応答を、変換装置5へ送信する(ステップS450)。
The user inputs a set value according to the content displayed on the
変換装置5の変換部53は、応答を受信すると、通知送信要求に含まれる設定対象の変数のうち、設定値を受信していない変数があるか否かを判断する。変換部53は、設定値を受信していない変数があると判断した場合、次の番号の変数について、番号1の変数と同様のユーザー通知を生成し(ステップS420)、サービス提供装置7に送信する(ステップS425)。
Upon receiving the response, the
なお、変換部53は、変数にボタンを示す種別及び表示が付加されている場合、各表示が示すテキストをボタン名としてボタンを表示するためのボタン表示用データを生成する。変換部53は、ユーザー通知に生成したボタン表示用データを付加して送信する。これにより、例えば、端末装置3の制御部32は、メッセージ426及びボタン427−1〜427−4(図11)を表示部33に表示する。ユーザーがいずれかのボタンを選択すると(ステップS440)、制御部32は、選択されたボタンの表示名又はそのボタンの識別情報を設定した応答を送信する(ステップS445)。
When the type and display indicating the button are added to the variable, the
変換装置5の変換部53は、サービス提供装置7から応答を受信し、通知送信要求に含まれる全ての設定対象の変数の設定値を受信したと判断した場合、設定値の確認のためのユーザー通知を生成する(ステップS420)。例えば、変換部53は、受信した各変数の設定値を表示し、設定内容が正しいかの確認を要求するメッセージを含んだ端末装置3宛てのユーザー通知を生成し、サービス提供装置7へ送信する(ステップS425)。なお、変換部53は、ユーザー通知に、設定内容が正しいか否かの応答を入力するためのボタンを表示するためのボタン表示用データを付加して送信してもよい。サービス提供装置7は、受信したユーザー通知を、通知の送信先が示す端末装置3に送信する(ステップS430)。ユーザーの端末装置3の制御部32は、サービス提供装置7から受信したユーザー通知を表示部33に表示する(ステップS435)。例えば、表示部33に、メッセージ424及びボタン430−1、430−2(図11)が表示される。
When the
ユーザーは、表示部33に表示された内容に従い、端末装置3に確認結果を入力する(ステップS440)。制御部32は、入力された確認結果を設定した応答を送信する(ステップS445)。例えば、確認結果は、ユーザーが選択したボタンを特定する情報である。サービス提供装置7は、端末装置3から受信した応答を、変換装置5へ送信する(ステップS450)。
The user inputs the confirmation result to the
変換装置5の変換部53は、設定値が正しいことを示す確認結果が設定された応答を受信すると、クローズメッセージを設定した端末装置3宛てのユーザー通知を生成し(ステップS420)、サービス提供装置7に送信する(ステップS425)。サービス提供装置7は、受信したユーザー通知を、通知の送信先が示す端末装置3に送信する(ステップS430)。ユーザーの端末装置3の制御部32は、サービス提供装置7から受信したユーザー通知を表示部33に表示する(ステップS435)。例えば、表示部33に、メッセージ432(図11)が表示される。
When the
さらに、変換装置5の変換部53は、変換ルールに従ってデータ形式を変換することにより、サービス提供装置7から受信した応答から取得した各変数の設定値が設定された応答を生成し(ステップS455)、シナリオ実行装置1に送信する(ステップS460)。シナリオ実行装置1の通知部184は、受信した応答から指示内容として各変数の設定値を取得する(ステップS465)。
Further, the
上記により、例えば、変換装置5は、シナリオ実行装置1から受信した通知送信要求を元に、チャットインターフェースにより端末装置3からプロパティ情報の設定値を受信する。変換装置5は、端末装置3から受信したプロパティ情報の設定値をシナリオ実行装置1に送信する。シナリオ実行装置1は、受信したプロパティ情報の設定値を用いて、シナリオを実行する。
According to the above, for example, the conversion device 5 receives the set value of the property information from the
なお、電子メールの場合、変換装置5の変換部53は、通知送信要求から読み出したウェルカムメッセージと、各変数の変数名の一覧と、変数名にボタン及び表示が付けられている場合にはその表示とを含んだ電子メールをユーザー通知として設定する。ユーザーは、端末装置3から各変数の値を記述した電子メールを返信する。サービス提供装置7は、端末装置3から返送された電子メールを、通知に対する応答として変換装置5へ送信する。
In the case of e-mail, the
また、対象アプリケーションとして電話が選択された場合、変換装置5の変換部53は、通知送信要求に設定されている端末装置3の電話番号に電話をかける。端末装置3が応答し、変換装置5と端末装置3とが通話状態になると、変換部53は、上述したユーザー通知の内容を音声合成して出力する。ユーザーはメッセージを聞くと、端末装置3により上述した設定値を発話する。変換装置5の変換部53は、ユーザーの発話内容を音声認識して設定値を得る。
When a telephone is selected as the target application, the
なお、シナリオ実行システム100は、シナリオ実行装置1がユーザー通知モジュールを実行することにより、ユーザーの端末装置3から変数の設定値を受信するための処理を、シナリオ実行装置1がプロパティ設定モジュールを実行することにより、プロパティ情報の各変数の設定値を受信するときの処理と同様に行ってもよい。
In the
また、シナリオ実行装置1と端末装置3とが同一の装置であってもよい。シナリオ実行装置1と端末装置3とが同一の装置の場合、シナリオ実行装置1が、ネットワーク9を介した装置間のデータの送受信の機能を除き、チャットサービスに関する変換装置5の機能及びサービス提供装置7の機能を有してもよい。この場合、シナリオ実行装置1は、ネットワーク9を介することなく、ユーザーのへの通知及び通知に対するユーザーからの応答の受信を行うことができる。また、シナリオ実行装置1と端末装置3とが同一の装置であり、かつ、シナリオ実行装置1が音声合成装置及び音声認識装置を利用した変換装置5の変換部53の機能を有する場合、シナリオ実行装置1は、ネットワーク9を介することなく、ユーザーのへの音声による通知及びユーザーの発話による応答の受信を行うことができる。
Further, the
以上説明した実施形態によれば、シナリオ実行装置が自動化ツールのシナリオの実行途中においてシナリオの実行に関するユーザーの指示を受け、指示に従って後続の処理を行うことができる。 According to the embodiment described above, the scenario execution device receives a user's instruction regarding the execution of the scenario during the execution of the scenario of the automation tool, and can perform the subsequent processing according to the instruction.
例えば、ユーザー通知モジュールの実行順をシナリオの終了ノードの直前としたり、シナリオにおいてエラーが発生したときのルートにユーザー通知モジュールを配置したりすることで、シナリオの実行完了や、エラーの発生をユーザーに通知することができる。例えば、ユーザーは、別の場所で業務を行っている間や、出張などで外出している間に、シナリオ実行装置にシナリオを実行させることで、効率的に業務を遂行することができる。しかし、従来、次のシナリオを実行させるために現在実行中のシナリオの実行が終了したことや、シナリオの実行が何らかの原因により中断したことを知るためには、実際にユーザーがシナリオ実行装置を確認する必要があった。そのため、別の場所で業務を行っているユーザーが頻繁にシナリオ実行装置を確認しに行ったり、シナリオ実行装置の前で監視を行ったりしていた。また、ユーザーは、出張前に実行を指示したシナリオがエラー発生によって中断したことを帰社するまで知ることができないこともあった。 For example, by setting the execution order of the user notification module to just before the end node of the scenario, or by arranging the user notification module on the route when an error occurs in the scenario, the user can complete the execution of the scenario or generate an error. Can be notified to. For example, a user can efficiently execute a business by causing a scenario execution device to execute a scenario while performing business at another place or going out on a business trip or the like. However, in the past, in order to know that the execution of the currently executing scenario was completed in order to execute the next scenario, or that the execution of the scenario was interrupted for some reason, the user actually checked the scenario execution device. I had to do it. Therefore, a user who works in another place frequently goes to check the scenario execution device or monitors in front of the scenario execution device. In addition, the user may not know until returning to work that the scenario instructed to execute before the business trip was interrupted due to an error.
本実施形態のシナリオ実行装置によれば、シナリオ実行が完了したことや、シナリオの実行中に何等かの原因により中断したことなどを、ユーザーに通知することが可能になる。よって、ユーザーは、シナリオ実行装置のシナリオ実行状態を頻繁に確認するような監視を行う必要ない。また、通知を受けたユーザーは、遠隔でシナリオ実行装置に作業の指示を行うことにより、シナリオ実行装置の動作を制御することが可能になる。従って、ユーザーは、時間と場所に縛られることなく自身の業務を行いながら、シナリオ実行装置に自動で作業を行わるせることができるため、従来よりも効果的に業務の効率化を図ることが可能となる。 According to the scenario execution device of the present embodiment, it is possible to notify the user that the scenario execution has been completed or that the scenario has been interrupted for some reason during the execution of the scenario. Therefore, the user does not need to perform monitoring to frequently check the scenario execution status of the scenario execution device. In addition, the user who receives the notification can remotely control the operation of the scenario execution device by instructing the scenario execution device to perform the work. Therefore, the user can have the scenario execution device automatically perform the work while performing his / her own work without being restricted by time and place, so that the work efficiency can be improved more effectively than before. It will be possible.
また、ユーザーは、同じシナリオであっても、プロパティ情報を変更してからシナリオ実行装置に実行させる場合がある。従来は、シナリオ実行装置が表示するプロパティ入力画面に直接プロパティ情報の設定値を入力するか、シナリオ実行時にテキストファイルなどに入力した設定値をシナリオ実行装置が読み取っていた。この場合、ユーザーは、意識してプロパティ情報の設定を変更する必要があり、直感的にプロパティ情報を変更し、シナリオを実行させることは困難であった。本実施形態のシナリオ実行装置によれば、シナリオの冒頭にプロパティ設定モジュールを配置することにより、シナリオ実行時に、ローカル環境であるユーザーの端末装置にチャットウィンドを表示し、対話形式で確認しながらプロパティ情報の設定内容を変更することも可能となる。このように、ユーザー対話形式で確認を行いながらプロパティ情報を設定することができるため、RPAに関するスキルが高くないユーザーであっても、直感的にプロパティ情報を設定し、設定誤りを低減してシナリオを実行させることが可能になる。 Further, even in the same scenario, the user may change the property information before causing the scenario execution device to execute the scenario. In the past, the property information setting value was directly input to the property input screen displayed by the scenario execution device, or the scenario execution device read the setting value input to a text file or the like when executing the scenario. In this case, the user needs to consciously change the property information setting, and it is difficult to intuitively change the property information and execute the scenario. According to the scenario execution device of the present embodiment, by arranging the property setting module at the beginning of the scenario, the chat window is displayed on the terminal device of the user in the local environment at the time of scenario execution, and the property is confirmed interactively. It is also possible to change the information settings. In this way, property information can be set while checking in a user-interactive format, so even users with low RPA skills can intuitively set property information and reduce setting errors in scenarios. Can be executed.
上記においては、ユーザーは、シナリオ実行装置1を用いてシナリオを生成しているが、シナリオ実行装置1とは異なるPCなどのシナリオ作成装置(情報処理装置)を用いてシナリオを作成してもよい。この場合、シナリオ作成装置は、入力部13、表示部14、シナリオ作成部16を備え、さらに通信部11及びシナリオ実行管理部17等の他の機能部を備えてもよい。
In the above, the user creates the scenario using the
上述した実施形態におけるシナリオ実行装置1、端末装置3、変換装置5及びサービス提供装置7の機能をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
The functions of the
以上説明した実施形態によれば、シナリオ実行装置は、入力部と、機能実行部と、記憶部と、読出部と、判断部と、操作制御部と、通知部と、実行制御部とを備える。入力部は、ユーザー操作を入力する。機能実行部は、入力部によるユーザー操作に従って所定の機能を実行する。機能実行部は、例えば、機能A実行部19a、機能B実行部19b、機能C実行部19cである。記憶部は、ユーザー操作モジュール又はユーザーインタフェースモジュールである1以上の処理モジュールと、それら処理モジュールの実行順とを示すシナリオファイルを記憶する。ユーザー操作モジュールは、機能実行部に対するユーザー操作を表す。ユーザーインタフェースモジュールは、ユーザーへの通知及びユーザーからの応答の受信を行うインタフェースの利用を表す。読出部は、実行対象のシナリオファイルから実行順に処理モジュールを読み出す。判断部は、読出部が読み出した処理モジュールがユーザー操作モジュールであるかユーザーインタフェースモジュールであるかを判断する。操作制御部は、判断部がユーザー操作モジュールであると判断した場合、当該ユーザー操作モジュールにより示されるユーザー操作を行うよう入力部を制御する。通知部は、判断部がユーザーインタフェースモジュールであると判断した場合、ユーザーインタフェースモジュールにより示されるユーザーへの通知を行う。通知は、実行対象のシナリオファイルの実行により当該通知の送信前に得られた変数の値を含んでもよい。実行制御部は、通知部による通知に対応して受信した応答に基づいてシナリオファイルの実行の継続又は終了あるいは他のシナリオファイルの実行を行う。
According to the embodiment described above, the scenario execution device includes an input unit, a function execution unit, a storage unit, a reading unit, a determination unit, an operation control unit, a notification unit, and an execution control unit. .. The input unit inputs user operations. The function execution unit executes a predetermined function according to a user operation by the input unit. The function execution unit is, for example, a function
ユーザーインタフェースモジュールは、指示内容と、シナリオファイルの実行の継続又は終了あるいは他のシナリオファイルの実行を表す後続処理情報とを対応付けた情報を含んでもよい。実行制御部は、受信した応答が示す指示内容に対応してユーザーインタフェースモジュールに設定されている後続処理情報に従って、シナリオファイルの実行の継続又は終了あるいは他のシナリオファイルの実行を行う。後続処理情報は、シナリオファイルの実行の継続の場合は次に実行する処理モジュールの情報を含んでもよい。 The user interface module may include information in which the instruction content is associated with the continuation or termination of the execution of the scenario file or the subsequent processing information indicating the execution of another scenario file. The execution control unit continues or ends the execution of the scenario file or executes another scenario file according to the subsequent processing information set in the user interface module in response to the instruction content indicated by the received response. The subsequent processing information may include information on the processing module to be executed next when the execution of the scenario file is continued.
実行制御部は、ユーザーインタフェースモジュールに通知のみなど、応答を受信しない旨の情報が設定されている場合、通知部が通知を行った後、シナリオファイルの実行を継続する。 When the user interface module is set with information that the response is not received, such as notification, the execution control unit continues the execution of the scenario file after the notification unit notifies.
応答は、変数の設定値を含んでもよい。実行制御部は、シナリオファイルの実行により通知の送信前に得られた変数の値を、受信した応答に含まれる当該変数の設定値に更新し、更新された当該変数を用いて実行対象のシナリオファイルの実行を継続する。 The response may include variable settings. The execution control unit updates the value of the variable obtained before sending the notification by executing the scenario file to the setting value of the variable included in the received response, and uses the updated variable to execute the scenario to be executed. Continue executing the file.
また、応答は、処理モジュールに関する設定を表すプロパティ情報の設定値を含んでもよい。実行制御部は、実行対象のシナリオファイルの実行を継続する場合、受信した応答に含まれるプロパティ情報の設定値を用いてシナリオファイルに含まれる処理モジュールを実行する。 In addition, the response may include a setting value of property information representing a setting related to the processing module. When the execution control unit continues the execution of the scenario file to be executed, the execution control unit executes the processing module included in the scenario file by using the setting value of the property information included in the received response.
通知部による通知は、変換装置によってデータ形式が変換された後に、ユーザーの端末装置に送信される。実行制御部は、端末装置から返送され、変換装置によってデータ形式が変換された応答を受信する。変換装置は、例えば、チャット、電子メール、又は、電話により端末装置への通知の送信と端末装置からの応答の受信とを行う。 The notification by the notification unit is transmitted to the user's terminal device after the data format is converted by the conversion device. The execution control unit receives the response returned from the terminal device and whose data format has been converted by the conversion device. The conversion device transmits a notification to the terminal device and receives a response from the terminal device by, for example, chatting, e-mail, or telephone.
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 Although the embodiments of the present invention have been described in detail with reference to the drawings, the specific configuration is not limited to this embodiment, and the design and the like within a range not deviating from the gist of the present invention are also included.
1…シナリオ実行装置, 3…端末装置, 5…変換装置, 7…サービス提供装置, 9…ネットワーク, 11…通信部, 12…記憶部, 13…入力部, 14…表示部, 15…処理部, 16…シナリオ作成部, 17…シナリオ実行管理部, 18…シナリオ実行部, 19a…機能A実行部, 19b…機能B実行部, 19c…機能C実行部, 31…通信部, 32…制御部, 33…表示部, 34…入力部, 51…通信部, 52…記憶部, 53…変換部, 100…シナリオ実行システム, 161…作成情報受信部, 162…画面表示制御部, 163…シナリオ登録部, 181…読出部, 182…判断部, 183…操作制御部, 184…通知部, 185…実行制御部 1 ... Scenario execution device, 3 ... Terminal device, 5 ... Conversion device, 7 ... Service providing device, 9 ... Network, 11 ... Communication unit, 12 ... Storage unit, 13 ... Input unit, 14 ... Display unit, 15 ... Processing unit , 16 ... Scenario creation unit, 17 ... Scenario execution management unit, 18 ... Scenario execution unit, 19a ... Function A execution unit, 19b ... Function B execution unit, 19c ... Function C execution unit, 31 ... Communication unit, 32 ... Control unit , 33 ... Display unit, 34 ... Input unit, 51 ... Communication unit, 52 ... Storage unit, 53 ... Conversion unit, 100 ... Scenario execution system, 161 ... Creation information receiving unit, 162 ... Screen display control unit, 163 ... Scenario registration Unit, 181 ... Reading unit, 182 ... Judgment unit, 183 ... Operation control unit, 184 ... Notification unit, 185 ... Execution control unit
Claims (11)
前記入力部によるユーザー操作に従って所定の機能を実行する機能実行部と、
前記機能実行部に対するユーザー操作を表すユーザー操作モジュールである又はユーザーへの通知及び当該通知に対する応答の受信を行うインタフェースの利用を表すユーザーインタフェースモジュールである1以上の処理モジュールと、前記処理モジュールの実行順とを示すシナリオファイルを記憶する記憶部と、
実行対象の前記シナリオファイルから前記実行順に前記処理モジュールを読み出す読出部と、
前記読出部が読み出した前記処理モジュールが前記ユーザー操作モジュールであるか前記ユーザーインタフェースモジュールであるかを判断する判断部と、
前記判断部が前記ユーザー操作モジュールであると判断した場合、当該ユーザー操作モジュールにより示される前記ユーザー操作を行うよう前記入力部を制御する操作制御部と、
前記判断部が前記ユーザーインタフェースモジュールであると判断した場合、当該ユーザーインタフェースモジュールにより示されるユーザーへの通知を行う通知部と、
前記通知部による前記通知に対応して受信した応答に基づいて前記シナリオファイルの実行の継続又は終了あるいは他のシナリオファイルの実行を行う実行制御部と、
を備えるシナリオ実行装置。 Input section for inputting user operations and
A function execution unit that executes a predetermined function according to a user operation by the input unit,
One or more processing modules that are user operation modules that represent user operations on the function execution unit or user interface modules that represent the use of interfaces that notify users and receive responses to the notifications, and execution of the processing modules. A storage unit that stores scenario files that indicate the order,
A reading unit that reads the processing module from the scenario file to be executed in the order of execution, and
A determination unit that determines whether the processing module read by the reading unit is the user operation module or the user interface module, and
When it is determined that the determination unit is the user operation module, the operation control unit that controls the input unit to perform the user operation indicated by the user operation module, and the operation control unit.
When the determination unit determines that the user interface module is the user interface module, the notification unit that notifies the user indicated by the user interface module and the notification unit.
An execution control unit that continues or terminates the execution of the scenario file or executes another scenario file based on the response received in response to the notification by the notification unit.
A scenario execution device equipped with.
前記実行制御部は、受信した前記応答が示す指示内容に対応して前記ユーザーインタフェースモジュールに設定されている前記後続処理情報に従って、前記シナリオファイルの実行の継続又は終了あるいは他のシナリオファイルの実行を行う、
請求項1に記載のシナリオ実行装置。 The user interface module includes information in which an instruction content is associated with subsequent processing information indicating the continuation or termination of execution of the scenario file or the execution of another scenario file.
The execution control unit continues or ends the execution of the scenario file or executes the other scenario file according to the subsequent processing information set in the user interface module in response to the instruction content indicated by the received response. Do, do
The scenario execution device according to claim 1.
請求項2に記載のシナリオ実行装置。 The subsequent processing information includes information on the processing module to be executed next in the case of continuation of execution of the scenario file.
The scenario execution device according to claim 2.
請求項3に記載のシナリオ実行装置。 When the user interface module is set with information that the user interface module does not receive a response, the execution control unit continues to execute the scenario file to be executed after the notification unit gives the notification.
The scenario execution device according to claim 3.
前記実行制御部は、前記シナリオファイルの実行により前記通知の送信前に得られた前記変数の値を前記応答に含まれる当該変数の前記設定値に更新し、更新された当該変数を用いて実行対象の前記シナリオファイルの実行を継続する、
請求項1から請求項3のいずれか一項に記載のシナリオ実行装置。 The response contains a variable setting.
The execution control unit updates the value of the variable obtained before the transmission of the notification by executing the scenario file to the set value of the variable included in the response, and executes using the updated variable. Continue execution of the target scenario file,
The scenario execution device according to any one of claims 1 to 3.
前記実行制御部は、実行対象の前記シナリオファイルの実行を継続する際に、前記応答に含まれる前記プロパティ情報の前記設定値を用いて前記シナリオファイルに含まれる前記処理モジュールを実行する、
請求項1又は請求項2に記載のシナリオ実行装置。 The response includes a setting value of property information representing a setting related to the processing module.
When the execution control unit continues the execution of the scenario file to be executed, the execution control unit executes the processing module included in the scenario file by using the set value of the property information included in the response.
The scenario execution device according to claim 1 or 2.
請求項1から請求項6のいずれか一項に記載のシナリオ実行装置。 The notification includes the values of variables obtained before the transmission of the notification by executing the scenario file to be executed.
The scenario execution device according to any one of claims 1 to 6.
前記実行制御部は、前記端末装置から返送され、前記変換装置によってデータ形式が変換された前記応答を受信する、
請求項1から請求項7のいずれか一項に記載のシナリオ実行装置。 The notification by the notification unit is transmitted to the user's terminal device after the data format is converted by the conversion device.
The execution control unit receives the response returned from the terminal device and whose data format has been converted by the conversion device.
The scenario execution device according to any one of claims 1 to 7.
請求項8に記載のシナリオ実行装置。 The conversion device transmits the notification to the terminal device and receives the response from the terminal device by chat, e-mail, or telephone.
The scenario execution device according to claim 8.
入力部によるユーザー操作に従って所定の機能を実行する機能実行ステップと、
前記機能実行ステップにより前記機能を実行させるためのユーザー操作を表すユーザー操作モジュールである又はユーザーへの通知及び当該通知に対する応答の受信を行うとの間のインタフェースの利用を表すユーザーインタフェースモジュールである1以上の処理モジュールと、前記処理モジュールの実行順とを示す実行対象のシナリオファイルから前記実行順に前記処理モジュールを読み出す読出ステップと、
前記読出ステップにおいて読み出した前記処理モジュールが前記ユーザー操作モジュールであるか前記ユーザーインタフェースモジュールであるかを判断する判断ステップと、
前記判断ステップにおいて前記ユーザー操作モジュールであると判断した場合、当該ユーザー操作モジュールにより示される前記ユーザー操作を行うよう入力部を制御する操作制御ステップと、
前記判断ステップにおいて前記ユーザーインタフェースモジュールであると判断した場合、当該ユーザーインタフェースモジュールにより示されるユーザーへの通知を行う通知ステップと、
前記通知ステップによる前記通知に対応して受信した応答に基づいて前記シナリオファイルの実行の継続又は終了あるいは他のシナリオファイルの実行を行う実行制御ステップと、
を有するシナリオ実行方法。 It is a scenario execution method executed by the scenario execution device.
A function execution step that executes a predetermined function according to a user operation by the input unit,
It is a user operation module that represents a user operation for executing the function by the function execution step, or a user interface module that represents the use of an interface between notifying the user and receiving a response to the notification. A read step of reading the processing modules from the execution target scenario file indicating the above processing modules and the execution order of the processing modules in the execution order.
A determination step for determining whether the processing module read in the read step is the user operation module or the user interface module, and
When it is determined in the determination step that the user operation module is used, the operation control step for controlling the input unit to perform the user operation indicated by the user operation module, and the operation control step.
When it is determined that the user interface module is the user interface module in the determination step, the notification step for notifying the user indicated by the user interface module and the notification step.
An execution control step for continuing or terminating the execution of the scenario file or executing another scenario file based on the response received in response to the notification by the notification step.
Scenario execution method with.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019165559A JP6802893B1 (en) | 2019-09-11 | 2019-09-11 | Scenario execution device, scenario execution method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019165559A JP6802893B1 (en) | 2019-09-11 | 2019-09-11 | Scenario execution device, scenario execution method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6802893B1 true JP6802893B1 (en) | 2020-12-23 |
JP2021043716A JP2021043716A (en) | 2021-03-18 |
Family
ID=73836063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019165559A Active JP6802893B1 (en) | 2019-09-11 | 2019-09-11 | Scenario execution device, scenario execution method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6802893B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112800741A (en) * | 2021-01-29 | 2021-05-14 | 远光软件股份有限公司 | Task execution method, electronic device and storage medium |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022259497A1 (en) * | 2021-06-10 | 2022-12-15 | 日本電信電話株式会社 | Scenario setting device, scenario setting method, and scenario setting program |
WO2023144940A1 (en) * | 2022-01-26 | 2023-08-03 | 日本電信電話株式会社 | Editing assistance device, editing assistance method, and editing assistance program |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7164422B1 (en) * | 2000-07-28 | 2007-01-16 | Ab Initio Software Corporation | Parameterized graphs with conditional components |
JP3839784B2 (en) * | 2003-04-10 | 2006-11-01 | 日本電信電話株式会社 | Dialog scenario generation method, dialog scenario generation apparatus, dialog scenario generation program |
JP4808558B2 (en) * | 2006-07-12 | 2011-11-02 | 日本電信電話株式会社 | Cooperation scenario creation support system, method and program thereof |
JP4883638B2 (en) * | 2007-10-18 | 2012-02-22 | 日本電信電話株式会社 | User interface integration system and method |
JP2009199127A (en) * | 2008-02-19 | 2009-09-03 | Oki Electric Ind Co Ltd | Information system for providing clerical service |
JP5026451B2 (en) * | 2009-02-26 | 2012-09-12 | 日本電信電話株式会社 | Scenario editing method, apparatus and program thereof |
JP2011003135A (en) * | 2009-06-22 | 2011-01-06 | Nec System Technologies Ltd | Screen job system, method for structuring the same, and program |
JP6326742B2 (en) * | 2013-08-29 | 2018-05-23 | 富士通株式会社 | Scenario generation program, scenario execution program, scenario generation method, scenario execution method, scenario generation apparatus, and scenario execution apparatus |
JP7164288B2 (en) * | 2017-06-28 | 2022-11-01 | キヤノンメディカルシステムズ株式会社 | Medical diagnostic imaging equipment and magnetic resonance imaging equipment |
-
2019
- 2019-09-11 JP JP2019165559A patent/JP6802893B1/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112800741A (en) * | 2021-01-29 | 2021-05-14 | 远光软件股份有限公司 | Task execution method, electronic device and storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP2021043716A (en) | 2021-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6802893B1 (en) | Scenario execution device, scenario execution method and program | |
US7552177B2 (en) | Method for determining availability of participation in instant messaging | |
JP5312725B2 (en) | Method and system for notifying user when communication is possible | |
KR101251862B1 (en) | Presenting and manipulating electronic mail conversations | |
US8832569B2 (en) | Scrolling chat for participation in multiple instant messaging conversations | |
RU2430405C2 (en) | Dragging and dropping objects between local and remote modules | |
JP6000191B2 (en) | Raising context-based options for responding to notifications | |
JP5619861B2 (en) | Method for linking instant message and online document and mobile terminal | |
CN112313921A (en) | Facilitating conference joining | |
JP2018525751A (en) | Interactive control method and apparatus for voice and video calls | |
US8380794B2 (en) | Generating context aware data and conversation's mood level to determine the best method of communication | |
JP2007531943A (en) | System and method for providing user selectable electronic message action selection and processing | |
US20210160335A1 (en) | Contextually-based presence status | |
US20070239830A1 (en) | Method and apparatus for instant message notification and forwarding | |
US8909715B2 (en) | References to history points in a chat history | |
JP5165052B2 (en) | Enhanced native contact book application | |
JP2004192297A (en) | Condition display method, condition display system and its program | |
JP2019145019A (en) | Information processing device and program | |
US20090199203A1 (en) | Interacting with applications via an instant messaging client to perform application specific tasks | |
CN115639939A (en) | Method and device for initiating to-do flow, electronic equipment and readable storage medium | |
JPH0836538A (en) | Work flow management system | |
JP7304569B2 (en) | Message transmission/reception application software | |
JP6166390B2 (en) | Social network server, screen display method and program | |
WO2021095263A1 (en) | Service linkage program, service linkage method, and information processing device | |
KR102018321B1 (en) | User terminal device for providing chat rooms list |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190911 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200908 |
|
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: 20201104 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201127 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6802893 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |