(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-27
(45)【発行日】2024-03-06
(54)【発明の名称】操作自動化装置、操作自動化システム、操作自動化方法、及び操作自動化プログラム
(51)【国際特許分類】
G06Q 10/10 20230101AFI20240228BHJP
【FI】
G06Q10/10
(21)【出願番号】P 2019204798
(22)【出願日】2019-11-12
【審査請求日】2022-10-05
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【氏名又は名称】家入 健
(72)【発明者】
【氏名】植村 新一郎
【審査官】菅原 浩二
(56)【参考文献】
【文献】特開2020-003905(JP,A)
【文献】特開2015-041327(JP,A)
【文献】特開2012-079289(JP,A)
【文献】特開2009-151374(JP,A)
【文献】特開2017-045359(JP,A)
【文献】特開2019-050552(JP,A)
【文献】特開2018-206288(JP,A)
【文献】米国特許出願公開第2019/0138596(US,A1)
【文献】特開2014-219763(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記第1シナリオの開始条件が満たされたか否かを判断する第1判断手段と、
前記第1判断手段の判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての前記通知を行う、第1シナリオ実行手段と、を備え
、
前記第1シナリオ実行手段は、文字列を入力可能な前記操作対象アプリケーションを起動し、所定の文字列を入力する操作を行い、前記所定の文字列を含む通知情報を前記通知として送信し、
センサの測定結果を取得する測定結果取得手段をさらに備え、
前記第1判断手段は、前記測定結果が閾値を超えた場合に前記第1シナリオの開始条件が満たされたと判断する、
操作自動化装置。
【請求項2】
前記第1シナリオおよび前記第2シナリオをユーザーの入力に応じて作成するシナリオ作成手段と、
前記第2シナリオを前記他の操作自動化装置に対して送信する、第2シナリオ送信手段と、をさらに備えた請求項1に記載の操作自動化装置。
【請求項3】
前記第1シナリオおよび前記第2シナリオを管理するサーバから前記第1シナリオを取得する、第1シナリオ取得手段をさらに備える、請求項1または2のいずれかに記載の操作自動化装置。
【請求項4】
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記第1シナリオの開始条件が満たされたか否かを判断する第1判断手段と、
前記第1判断手段の判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての第1の操作自動化装置から第2の操作自動化装置に対しての前記通知を行う、第1シナリオ実行手段と、
前記通知に基づいて前記第2シナリオの開始条件が満たされたか否かを判断する第2判断手段と、
前記第2判断手段の判断結果に基づいて、前記第2の操作自動化装置において前記第2シナリオに記録された操作を実行する、第2シナリオ実行手段と、
を備え
、
前記第1シナリオ実行手段は、文字列を入力可能な前記操作対象アプリケーションを起動し、所定の文字列を入力する操作を行い、前記所定の文字列を含む通知情報を前記通知として送信し、
センサの測定結果を取得する測定結果取得手段をさらに備え、
前記第1判断手段は、前記測定結果が閾値を超えた場合に前記第1シナリオの開始条件が満たされたと判断する、
操作自動化システム。
【請求項5】
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記第1シナリオの開始条件が満たされたか否かを判断する第1判断ステップと、
前記第1判断ステップの判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての前記通知を行う、第1シナリオ実行ステップと、を備え
、
前記第1シナリオ実行ステップは、文字列を入力可能な前記操作対象アプリケーションを起動し、所定の文字列を入力する操作を行い、前記所定の文字列を含む通知情報を前記通知として送信し、
センサの測定結果を取得する測定結果取得ステップをさらに備え、
前記第1判断ステップは、前記測定結果が閾値を超えた場合に前記第1シナリオの開始条件が満たされたと判断する、
操作自動化方法。
【請求項6】
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記第1シナリオの開始条件が満たされたか否かを判断する第1判断ステップと、
前記第1判断ステップの判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての前記通知を行うための所定の操作を前記操作対象アプリケーションに対して行わせる、第1シナリオ実行ステップと、
センサの測定結果を取得する測定結果取得ステップと、をコンピュータに対して実行させる、
操作自動化プログラムであって、
前記第1シナリオ実行ステップは、文字列を入力可能な前記操作対象アプリケーションを起動し、所定の文字列を入力する操作を行い、前記所定の文字列を含む通知情報を前記通知として送信し、
前記第1判断ステップは、前記測定結果が閾値を超えた場合に前記第1シナリオの開始条件が満たされたと判断する、
操作自動化プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、操作自動化装置、操作自動化システム、操作自動化方法、及び操作自動化プログラムに関する。
【背景技術】
【0002】
RPA(Robotic Process Automation)による業務の自動化が提案されている。RPAは、ユーザーがアプリケーションソフトウェアに対して行う操作を記録し、当該操作をコンピュータに自動実行させる技術である。RPAによって、定型業務を効率化し生産性を向上することが可能となる。
【0003】
一方、特許文献1は、複数の機器または機能を連携させることを目的として、予め連携動作を情報処理装置に登録する技術を開示している。ユーザーは、登録された連携動作を情報処理装置に実行させることが可能となる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記の様に、特許文献1に開示された技術は、複数の機能を予め連携動作として登録するものであり、複数の連携動作をさらに連携させることは困難である。したがって、操作を自動実行する複数の装置を連携させることはできないという問題があった。
【0006】
本開示は上記課題を解決するためにされたものであって、操作を自動実行する複数の装置を連携させることが可能な操作自動化装置、操作自動化システム、操作自動化方法および操作自動化プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本開示にかかる操作自動化装置は、操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、前記第1シナリオの開始条件が満たされたか否かを判断する第1判断手段と、前記第1判断手段の判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての前記通知を行う、第1シナリオ実行手段と、を備えるものである。
【0008】
本開示にかかる操作自動化装置は、操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、前記通知に基づいて前記第2シナリオの開始条件が満たされたか否かを判断する第2判断手段と、前記第2判断手段の判断結果に基づいて、前記第2シナリオに記録された操作を実行する、第2シナリオ実行手段と、を備えるものである。
【0009】
本開示にかかる操作自動化システムは、操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、前記第1シナリオの開始条件が満たされたか否かを判断する第1判断手段と、前記第1判断手段の判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての第1の操作自動化装置から第2の操作自動化装置に対しての前記通知を行う、第1シナリオ実行手段と、前記通知に基づいて前記第2シナリオの開始条件が満たされたか否かを判断する第2判断手段と、前記第2判断手段の判断結果に基づいて、前記第2の操作自動化装置において前記第2シナリオに記録された操作を実行する、第2シナリオ実行手段と、を備えるものである。
【0010】
本開示にかかる操作自動化方法は、操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、前記第1シナリオの開始条件が満たされたか否かを判断する第1判断ステップと、前記第1判断ステップの判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての前記通知を行う、第1シナリオ実行ステップと、を備えるものである。
【0011】
本開示にかかる操作自動化方法は、操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、前記通知に基づいて前記第2シナリオの開始条件が満たされたか否かを判断する第2判断ステップと、前記第2判断ステップの判断結果に基づいて、前記第2シナリオに記録された操作を実行する、第2シナリオ実行ステップと、を備えるものである。
【0012】
本開示にかかる操作自動化プログラムは、操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、前記第1シナリオの開始条件が満たされたか否かを判断する第1判断ステップと、前記第1判断ステップの判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての前記通知を行うための所定の操作を前記操作対象アプリケーションに対して行わせる、第1シナリオ実行ステップと、をコンピュータに対して実行させるものである。
【0013】
本開示にかかる操作自動化プログラムは、操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、前記通知に基づいて前記第2シナリオの開始条件が満たされたか否かを判断する第2判断ステップと、前記第2判断ステップの判断結果に基づいて、前記第2シナリオに記録された操作を実行する、第2シナリオ実行ステップと、をコンピュータに対して実行させるものである。
【発明の効果】
【0014】
本開示によれば、操作を自動実行する複数の装置を連携させることが可能な操作自動化装置、操作自動化システム、操作自動化方法および操作自動化プログラムを提供することができる。
【図面の簡単な説明】
【0015】
【
図1】実施の形態1にかかる操作自動化システム500の構成例を示す構成図である。
【
図2】実施の形態1にかかる操作自動化装置100Aの構成を示す構成図である。
【
図3】実施の形態1にかかる操作自動化装置100Bの構成を示す構成図である。
【
図4】実施の形態2にかかる操作自動化システム500の構成を示す構成図である。
【
図5】実施の形態2にかかる操作自動化システム500の動作を示すシーケンス図である。
【
図6】操作自動化装置100のハードウェア構成例を示す構成図である。
【発明を実施するための形態】
【0016】
<実施の形態1>
図1は、実施の形態1にかかる操作自動化装置100を含む操作自動化システム500の構成例を示す構成図である。操作自動化システム500は、操作自動化装置100A、100Bを備える。操作自動化装置100A、100Bは、ネットワーク200を介して互いに接続されている。ネットワーク200は、移動体通信網、インターネット、イントラネット、LAN(Local Area Network)等の通信ネットワークである。
【0017】
操作自動化装置100A、100Bは、PC(Personal Computer)、スマートフォン等の情報処理端末である。操作自動化装置100A、100Bは、RPAアプリケーションを備えている。また、操作自動化装置100A、100Bは、RPAアプリケーション以外の操作対象となるアプリケーションを備えている。当該操作対象アプリケーションは、例えば、WEB(World Wide Web)ブラウザ、メールアプリケーション等である。RPAアプリケーションは、当該操作対象アプリケーションに対するユーザー操作を自動実行するアプリケーションである。
【0018】
RPAアプリケーションには、ユーザーが操作対象アプリケーションに対して行う操作をシナリオとして記録する。RPAソフトウェアが備えるGUI(Graphical User Interface)を用いて、シナリオの作成が可能であってもよい。シナリオを実行することにより、操作自動化装置100A、100Bは、当該シナリオに記録された操作を自動で実行する。
【0019】
本実施の形態では、操作自動化装置100Aは第1シナリオを実行し、操作自動化装置100Bは第2シナリオを実行する。第1シナリオおよび第2シナリオは、操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオである。第1シナリオは、操作自動化装置100Bに対して通知を行う操作を含む。第2シナリオは、当該通知をシナリオの開始条件とする。開始条件とは、シナリオを開始するためのトリガーとなる条件である。つまり、開始条件が満たされた場合、操作自動化装置100A、100Bは、記録された操作を自動実行する。
【0020】
図2は、本実施の形態にかかる操作自動化装置100Aの機能構成を示す構成図である。本実施の形態では、操作自動化装置100Aは、第1判断部101Aおよび第1シナリオ実行部102Aを備える。
【0021】
第1判断部101Aは、第1シナリオの開始条件が満たされたか否かを判断する。つまり、第1判断部101Aは、第1シナリオの開始条件として設定された条件が満たされたか否かを判断する。開始条件は、例えば、ユーザーによる操作自動化装置100Aに対する操作である。第1判断部101Aは、操作自動化装置100Aが備えるタッチパネルの所定のエリアへの接触を検知した場合に開始条件が満たされたと判断してよい。
【0022】
第1判断部101Aは、操作自動化装置100Aがセンサから測定結果を受信している場合、当該測定結果が所定の範囲を超えた場合に、第1シナリオの開始条件が満たされたと判断してもよい。
【0023】
第1判断部101Aは、操作自動化装置100Aが備えるアプリケーションの受信結果に基づいて、第1シナリオの開始条件が満たされたか否かを判断してもよい。例えば、第1判断部101Aは、特定の文字列をタイトルに含むメールをメールアプリケーションが受信した場合、あるいは特定の送信元からのメールをメールアプリケーションが受信した場合に、第1シナリオの開始条件が満たされたと判断してもよい。第1判断部101Aは、他のアプリケーションから通知を受けることにより開始条件が満たされたか否かを判断してもよく、他のアプリケーションを起動し受信結果を確認することによって開始条件がみたされたか否かを判断してもよい。
【0024】
第1シナリオ実行部102Aは、第1判断部101Aの判断結果に基づいて、第1シナリオに記録された操作を実行する。また、第1シナリオ実行部102Aは、操作自動化装置100Bに対して第2シナリオの開始条件として通知を行う。第1シナリオ実行部は、文字列を入力可能な操作対象アプリケーションを起動し、所定の文字列を入力する操作を行い、当該所定の文字列を含む通知情報を通知として送信してもよい。文字列を入力可能な操作対象アプリケーションとは、例えば、メールアプリケーション、メッセージアプリケーション等である。
【0025】
第1シナリオは、例えば、メールアプリケーションを起動し、送信先に操作自動化装置100Bを設定し、メール送信するというシナリオである。ここで、第1シナリオ実行部102Aは、所定の文字列を含む情報を送信してもよい。操作自動化装置100Bは、所定の文字列が含まれていることにより、第2シナリオの開始条件と判断することが可能となる。シナリオは、複数の操作対象アプリケーションに対する操作を含んでもよい。上述した例では、メール送信の前後に、WEBブラウザを起動し、情報の検索を行ってもよい。
【0026】
図3は、操作自動化装置100Bの機能構成を示す構成図である。操作自動化装置100Bは、第2判断部101Bおよび第2シナリオ実行部102Bを備える。第2判断部101Bは、通知に基づいて第2シナリオの開始条件が満たされたか否かを判断する。第2判断部101Bは、文字列を入力可能な操作対象アプリケーションを用いて受信した通知情報に所定の文字列が含まれているか否かに基づいて、第2シナリオの開始条件が満たされたか否かを判断してもよい。例えば、第2判断部101Bは、メールアプリケーションが受信したメールのタイトルが所定の文字列を含む場合に、第2シナリオの開始条件が満たされたと判断する。このような場合、第2判断部101Bは、メールアプリケーションを起動し、所定のフォルダにメールが入っているか否かを確認することにより、第2シナリオの開始条件が満たされたか否かを判断してもよい。また、第2判断部101Bは、メッセージアプリケーションで所定の送信元からメッセージを受信した場合に、第2シナリオの開始条件が満たされたと判断してもよい。
【0027】
第2シナリオ実行部102Bは、第2判断部101Bの判断結果に基づいて第2シナリオを実行する。なお、第2シナリオは、操作自動化装置100Bが受信した通知に基づいて実行されてもよい。例えば、通知がメールで行われた場合に、第2シナリオ実行部102Bは、WEBブラウザを起動し、メールの本文に記載された文字列をWEBブラウザに入力し検索するという操作を実行してもよい。
【0028】
本実施の形態では、第1シナリオを実行する操作自動化装置100Aが、操作自動化装置100Bに対して通知を行う。そして、通知を受けた操作自動化装置100Bは、第2シナリオを実行する。したがって、本実施の形態によるとシナリオを実行する複数の操作自動化装置を連携させることが可能となる。
【0029】
<実施の形態2>
図4は、実施の形態2にかかる操作自動化装置100A、100Bを含む操作自動化システム500の構成を示す構成図である。操作自動化システム500は、操作自動化装置100A、100Bおよびセンサ300を備える。以下、実施の形態1と重複する説明は省略する。
【0030】
操作自動化装置100A、100Bは、ネットワーク200を介して接続されている。ネットワーク200は、移動体通信網、インターネット、イントラネット、LAN等の通信ネットワークである。ネットワーク200は、その一部または全部が有線によって構成されてもよく、その一部または全部が無線によって構成されてもよい。
【0031】
操作自動化装置100A、100Bは、例えば、スマートフォンである。操作自動化装置100A、100Bは、RPAアプリケーションを備えている。自動化の対象となる操作は、RPAアプリケーションのGUI画面から登録される。登録された一連の操作は、シナリオと呼ぶ。
【0032】
シナリオには、操作対象アプリケーションで実行する操作、センサ300から受信する通知、及び処理の流れの制御が、順序立てて記録される。操作対象アプリケーションは、例えば、WEBブラウザ、メールアプリケーション、交通系アプリケーション等である。処理の流れの制御として、シナリオには、操作を自動実行するためのトリガーとなる事象(開始条件)が記載されている。
【0033】
センサ300は、操作自動化装置100Aと無線LANやBluetooth(登録商標)等により無線通信する。センサ300は、体温計、脈拍計等の各種センサである。
【0034】
操作自動化装置100Aは、シナリオ作成部103A、測定結果取得部104、第1判断部101A、及び第1シナリオ実行部102Aを備える。操作自動化装置100Bは、シナリオ作成部103B、第2判断部101B、及び第2シナリオ実行部102Bを備える。以下、実施の形態1と重複する説明は省略する。
【0035】
シナリオ作成部103A、103Bは、RPAアプリケーションのGUI画面に対するユーザーの入力に基づいて、シナリオを作成する。ユーザーは、シナリオ作成部103Aの機能を用いて自らシナリオを作成することが可能となる。ユーザーは、メールアプリケーション、メッセージアプリケーション等を用いて、作成したシナリオを他の操作自動化装置100A、100Bに送信してもよい。このような場合、他のユーザーも当該シナリオを利用することが可能となる。同様に、ユーザーは、メールアプリケーション、メッセージアプリケーション等を用いて、他のユーザーが作成したシナリオを受信してもよい。
【0036】
なお、操作自動化システム500は、図示しないサーバ400を備えてもよい。サーバ400は、複数のシナリオを管理し、操作自動化装置100A、100Bにシナリオを配布する。このような場合、ユーザーは、ネットワーク200を介して、サーバ400からシナリオファイルを操作自動化装置100A、100Bに取得してもよい。また、操作自動化装置100A、100Bは、ネットワーク200を介して、シナリオをサーバ400に送信してもよい。
【0037】
測定結果取得部104は、センサ300の測定結果を取得する。第1判断部101Aおよび第2判断部101Bは、トリガーとなる事象(開始条件)が発生したか否かを判断する。本実施の形態では、第1判断部101Aは、測定結果が閾値を超えた場合に開始条件が満たされたと判断する。第2判断部101Bは、操作自動化装置100Aからの通知を受信した場合に開始条件が満たされたと判断する。
【0038】
第1シナリオ実行部102Aは、第1判断部101Aの判断に基づいて、第1シナリオに記載された順序で操作を自動実行し、操作自動化装置100Bに通知を行う。第2シナリオ実行部102Bは、第2判断部101Bの判断に基づいて、第2シナリオに記載された順序で操作を自動実行する。操作自動化装置100A、100BのRPAアプリケーションを起動しシナリオを実行することにより、ユーザーは、スマートフォンの操作をせず、日常生活の事務作業を自動処理することが可能となる。
【0039】
なお、操作自動化システム500は、クラウド上でRPAアプリケーションを動作させてシナリオを実行し、結果を操作自動化装置100A、100Bに送信してもよい。また、操作自動化装置100Aが測定結果をサーバに送信し、サーバが第1判断部101Aにおける判断を行ってもよい。
【0040】
以下、本実施の形態の動作を、具体例に沿って説明する。本具体例では、保育園において子供が発病した場合に、保育士の有するスマートフォンが操作自動化装置100Aとして動作する。また、本具体例では、親の有するスマートフォンが操作自動化装置100Bとして動作する。
【0041】
本実施例において、操作自動化の対象となる作業について説明する。まず、子供の発病を、体温計による発熱、脈拍計の数値異常、または保育士の目視によって検知する。次に、保育士は、スマートフォンを使用して、親のスマートフォンへ子供の発病を連絡する。次に、親は、子供に医師の診察を受けさせるため、かかりつけの病院のWEBサイトをWEBブラウザで閲覧し、診察の待ち時間または予約状況を確認する。次に、親は、都合の良い時間帯の診察を予約する。また、親は、翌日以降に病児の子供を預けるために、病児保育の予約状況をWEBブラウザで閲覧する。親は、予約に空きがある場合、病児保育の予約を行う。
【0042】
さらに、保育士から親への連絡に、子供の症状に関する情報が記載されている場合、以下の作業を自動化する。親は、子供の症状に基づいて、疑われる病名を特定し、原因、対処方法、または注意点等の情報を入手するため、WEBブラウザで医療関連サイトを閲覧する。親は、医療関連サイトで子供の症状に基づいて検索を行い、疑われる病名、原因、対処方法、または注意点等の情報を入手する。
【0043】
また、親が行う以下の作業の自動化を行ってもよい。保育士のスマートフォンから親のスマートフォンに通知があった後、親は職場から保育園へ子供を迎えにいく。この際、親は、保育園への到着予定時刻を保育士に連絡する。
【0044】
図5は、本実施形態にかかる操作自動化システム500の動作を示すシーケンス図である。本実施例では、センサ300は、操作自動化装置100Aと無線LANまたはBluetooth(登録商標)で接続される。センサ300は、子供の発病を検知するための体温計、脈拍系、または活動量計等のIoT(Internet of Things)計測器である。
【0045】
操作自動化装置100Aは、保育士のスマートフォンであり、上述したIoT機器と接続される。操作自動化装置100Aは、メールアプリケーション、WEBブラウザ等の操作対象アプリケーションを備える。操作自動化装置100Aは、RPAアプリケーションを備える。操作自動化装置100Aは、センサ300との通信およびセンサ300の制御を行う。操作自動化装置100Aは、シナリオに記載された操作を実行することで、メールまたはWEBブラウザ等のアプリケーションの操作を実行する。
【0046】
まず、操作自動化装置100Aの測定結果取得部104が、センサ300から測定結果を取得する(ステップS101)。次に、第1判断部101Aが、開始条件が満たされているか否かを判断する(ステップS102)。
【0047】
センサ300が体温計の場合、第1判断部101Aは、センサ300から受信した体温が所定の閾値より高い場合に開始条件が満たされたと判断してもよい。センサ300が脈拍計の場合、第1判断部101Aは、子供の脈拍数が所定の範囲を超えた場合に開始条件が満たされたと判断してもよい。保育士が目視で子供の発病を検知し所定のボタンを押した場合に、第1判断部101Aが、開始条件が満たされたと判断してもよい。開始条件が満たされていない場合(ステップS102のNo)、操作自動化装置100Aは、第1シナリオを実行しない。
【0048】
第1シナリオは、「IoT体温計で子供の体温が37.5℃以上の場合」、「脈拍系が脈拍数の異常を検出した場合」、または「発病連絡のボタンが押下されたこと」のいずれかが発生したことを開始条件としてもよい。なお、発病連絡のボタンは、子供の発病を検知した保育士が押下するボタンである。発病連絡のボタンは、操作自動化装置100Aのタッチパネル上に表示されていてもよい。
【0049】
開始条件が満たされていると判断された場合(ステップS102のYes)、第1シナリオ実行部102Aは、第1シナリオを実行し(ステップS103)、操作自動化装置100Bに通知を行う(ステップS104)。本具体例では、第1シナリオ実行部102Aは、第1シナリオを自動実行してメールアプリケーションによるメールの作成および送信を行う。この際、メールの件名は「発病通知メール」のような所定の文字列とする。なお、メールの本文に、病状または連絡事項等が記載されていてもよい。また、メールの内容は、必要に応じて保育士が編集可能であってもよい。以上の動作により、保育士のスマートフォン上のRPAアプリケーションが、発病連絡メールを自動作成し、親のスマートフォン宛てに自動送信することが可能となる。
【0050】
次に、第2判断部101Bは、第2シナリオの開始条件が満たされたか否かを判断する(ステップS105)。つまり、第2判断部101Bは、メールアプリケーションによって件名が「発病通知メール」であるメールを受信したか否かを判断し、当該メールを受信した場合には第2シナリオの開始条件が満たされたと判断する。開始条件が満たされていない場合(ステップS105のNo)、第2シナリオ実行部102Bは、シナリオを実行しない。
【0051】
開始条件が満たされたと判断された場合(ステップS105のYes)、第2シナリオ実行部102Bは、第2シナリオを実行する(ステップS106)。第2シナリオ実行部102Bは、まず、WEBブラウザを起動し、予め登録された病院の診察予約状況を示すWEBページを表示し、操作待ち状態に移行する。親は、操作自動化装置100Bを操作し、都合の良い時間帯を選択し診察予約をすることが可能となる。第2シナリオ実行部102Bは、同様に、病児保育の予約状況を示すWEBページを表示してもよい。親は、操作自動化装置100Bを操作し、病児保育の予約をすることが可能となる。
【0052】
メールの本文に子供の症状に関する記載がある場合、第2シナリオ実行部102Bは、当該症状に関する検索を行ってもよい。
第2シナリオ実行部102Bは、まず、WEBブラウザを起動し、症状または病名を検索できる医療関連のサイトを開く。次に、第2シナリオ実行部102Bは、医療関連のサイトで、メール本文に記載された文字列を入力して検索を行う。検索の結果、病名の候補が、検索結果としてリストアップされることとなる。親は、当該検索結果を確認することによって、少ない操作回数で、疑わしい病名、対処方法、または注意点等の情報を入手することが可能となる。
【0053】
また、操作自動化装置100Bは、第2シナリオ以外の第3シナリオを合わせて実施してもよい。操作自動化装置100Bが、SUICA等の交通アプリケーションを備える場合について説明する。第3シナリオは、交通アプリケーションによる駅の改札への入場検知を開始条件とするシナリオである。なお、交通アプリケーションによる駅入場の検知を開始条件とせず、スマートフォンのタッチパネル上のボタンへの接触を開始条件としてもよい。当該ボタンは、「駅入場ボタン」として操作自動化装置100Bのタッチパネル上に表示されてもよい。
【0054】
第3シナリオにおいて、操作自動化装置100Bは、まず、乗換案内アプリケーションを起動し、入場駅と目的地となる保育園の最寄り駅を入力して検索を行う。入場駅および保育園の最寄り駅は、第3シナリオに予め登録されていてもよい。入場駅は、例えば、親の職場の最寄り駅が設定される。次に、操作自動化装置100Bは、検索結果から、到着予定時刻を取得する。次に、操作自動化装置100Bは、メールアプリケーションを起動し、到着予定時刻をメールに入力し、操作自動化装置100Aに送信する。親は、少ない操作回数で、保育士に対して到着時刻を連絡することが可能となる。
【0055】
以下、本実施の形態の効果について説明する。
社内における定型業務を自動化し、生産性を向上することを目的として、PC向けRPAによる業務自動化が提案されている。このような場合、各社の業務内容に応じてシナリオの作成が行われる。シナリオは、社外秘の内容が含まれることが多い。したがって、シナリオは、社内で作成され、社内のみで利用される場合が多かった。
【0056】
本実施の形態によると、スマートフォン上のRPAアプリケーションで動作するシナリオを予め作成し、必要な際に実行することで、日常生活における事務的な作業を自動化することができる。なお、本実施の形態によると、スマートフォンで複数のシナリオを予め作成することが可能である。
【0057】
本実施の形態によると、スマートフォンの通信手段により、複数のユーザー間でシナリオを共有することが可能となる。したがって、本実施の形態によると、スマートフォンを使いこなすことが出来ず、RPAアプリケーションを用いてシナリオを作成できないIT(Information Technology)弱者も操作自動化を行うことが可能となる。
【0058】
<ハードウェアの構成例>
次に、ハードウェアの構成例について述べる。
図6は、操作自動化装置100を実現するためのハードウェアを例示する図である。操作自動化装置100は、バス1020、プロセッサ1040、メモリ1060、ストレージデバイス1080、及びネットワークインタフェース1120を有する。バス1020は、プロセッサ1040、メモリ1060、ストレージデバイス1080、及びネットワークインタフェース1120が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ1040などを互いに接続する方法は、バス接続に限定されない。プロセッサ1040は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、又はFPGA(Field-Programmable Gate Array)などの種々のプロセッサである。メモリ1060は、RAM(Random Access Memory)などを用いて実現される主記憶装置である。ストレージデバイス1080は、ハードディスク、SSD(Solid State Drive)、メモリカード、又は ROM(Read Only Memory)などを用いて実現される補助記憶装置である。
【0059】
ネットワークインタフェース1120は、操作自動化装置100をネットワーク1300に接続するためのインタフェースである。このネットワークは、例えば LAN(Local Area Network)や WAN(Wide Area Network)である。ネットワークインタフェース1120がネットワークに接続する方法は、無線接続であってもよいし、有線接続であってもよい。
【0060】
ストレージデバイス1080は、操作自動化装置100の各手段を実現するプログラムモジュールを記憶している。プロセッサ1040は、これら各プログラムモジュールをメモリ1060に読み出して実行することで、各プログラムモジュールに対応する機能を実現する。
【0061】
上述の実施の形態における各種の処理は、ハードウェアでもソフトウェアでも実現できる。例えば、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。
【0062】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0063】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【0064】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0065】
(付記1)
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記第1シナリオの開始条件が満たされたか否かを判断する第1判断手段と、
前記第1判断手段の判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての前記通知を行う、第1シナリオ実行手段と、を備えた操作自動化装置。
【0066】
(付記2)
前記第1シナリオ実行手段は、文字列を入力可能な前記操作対象アプリケーションを起動し、所定の文字列を入力する操作を行い、前記所定の文字列を含む通知情報を前記通知として送信する、付記1に記載の操作自動化装置。
【0067】
(付記3)
前記第1シナリオおよび前記第2シナリオをユーザーの入力に応じて作成するシナリオ作成手段と、
前記第2シナリオを前記他の操作自動化装置に対して送信する、第2シナリオ送信手段と、をさらに備えた付記1または2のいずれかに記載の操作自動化装置。
【0068】
(付記4)
前記第1シナリオおよび前記第2シナリオを管理するサーバから前記第1シナリオを取得する、第1シナリオ取得手段をさらに備える、付記1または2のいずれかに記載の操作自動化装置。
【0069】
(付記5)
センサの測定結果を取得する測定結果取得手段をさらに備え、
前記第1判断手段は、前記測定結果が閾値を超えた場合に前記第1シナリオの開始条件が満たされたと判断する、付記1から4のいずれか1項に記載の操作自動化装置。
【0070】
(付記6)
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記通知に基づいて前記第2シナリオの開始条件が満たされたか否かを判断する第2判断手段と、
前記第2判断手段の判断結果に基づいて、前記第2シナリオに記録された操作を実行する、第2シナリオ実行手段と、を備えた操作自動化装置。
【0071】
(付記7)
前記第2判断手段は、文字列を入力可能な前記操作対象アプリケーションを用いて受信した通知情報に所定の文字列が含まれているか否かに基づいて、前記第2シナリオの開始条件が満たされたか否かを判断する、付記6に記載の操作自動化装置。
【0072】
(付記8)
前記第1シナリオおよび前記第2シナリオをユーザーの入力に応じて作成するシナリオ作成手段と、
前記第1シナリオを他の操作自動化装置に対して送信する、第1シナリオ送信手段と、をさらに備えた付記6または7のいずれかに記載の操作自動化装置。
【0073】
(付記9)
前記第1シナリオおよび前記第2シナリオを管理するサーバから前記第2シナリオを取得する、第2シナリオ取得手段をさらに備える、付記6または7のいずれかに記載の操作自動化装置。
【0074】
(付記10)
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記第1シナリオの開始条件が満たされたか否かを判断する第1判断手段と、
前記第1判断手段の判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての第1の操作自動化装置から第2の操作自動化装置に対しての前記通知を行う、第1シナリオ実行手段と、
前記通知に基づいて前記第2シナリオの開始条件が満たされたか否かを判断する第2判断手段と、
前記第2判断手段の判断結果に基づいて、前記第2の操作自動化装置において前記第2シナリオに記録された操作を実行する、第2シナリオ実行手段と、
を備えた操作自動化システム。
【0075】
(付記11)
前記第1シナリオ実行手段は、文字列を入力可能な前記操作対象アプリケーションを起動し、所定の文字列を入力する操作を行い、前記所定の文字列を含む通知情報を前記通知として送信し、
前記第2判断手段は、文字列を入力可能な前記操作対象アプリケーションを用いて受信した通知情報に前記所定の文字列が含まれているか否かに基づいて、前記第2シナリオの開始条件が満たされたか否かを判断する、付記10に記載の操作自動化システム。
【0076】
(付記12)
前記第1の操作自動化装置または前記第2の操作自動化装置において、前記第1シナリオおよび前記第2シナリオをユーザーの入力に応じて作成するシナリオ作成手段と、
前記第2シナリオを前記第1の操作自動化装置から前記第2の操作自動化装置に対して、又は前記第1シナリオを前記第2の操作自動化装置から前記第1の操作自動化装置に対して、送信する送信手段と、をさらに備えた付記10または11のいずれかに記載の操作自動化システム。
【0077】
(付記13)
前記第1シナリオおよび前記第2シナリオを管理するサーバから、前記第1の操作自動化装置において前記第1シナリオを取得する、第1シナリオ取得手段と、
前記サーバから前記第2の操作自動化装置において前記第2シナリオを取得する、第2シナリオ取得手段と、をさらに備えた付記10または11のいずれかに記載の操作自動化システム。
【0078】
(付記14)
センサの測定結果を取得する測定結果取得手段をさらに備え、
前記第1判断手段は、前記測定結果が閾値を超えた場合に前記第1シナリオの開始条件が満たされたと判断する、付記10から13のいずれか1項に記載の操作自動化システム。
【0079】
(付記15)
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記第1シナリオの開始条件が満たされたか否かを判断する第1判断ステップと、
前記第1判断ステップの判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての前記通知を行う、第1シナリオ実行ステップと、を備えた操作自動化方法。
【0080】
(付記16)
前記第1シナリオ実行ステップにおいて、文字列を入力可能なアプリケーションを起動し、所定の文字列を入力する操作を行い、前記所定の文字列を含む通知情報を前記通知として送信する、付記15に記載の操作自動化方法。
【0081】
(付記17)
前記第1シナリオおよび前記第2シナリオをユーザーの入力に応じて作成するシナリオ作成ステップと、
前記第2シナリオを前記他の通信装置に対して送信する、第2シナリオ送信ステップと、をさらに備えた付記15または16のいずれかに記載の操作自動化方法。
【0082】
(付記18)
前記第1シナリオおよび前記第2シナリオを管理するサーバから前記第1シナリオを取得する、第1シナリオ取得ステップをさらに備える、付記15または16のいずれかに記載の操作自動化方法。
【0083】
(付記19)
センサの測定結果を取得する測定結果取得ステップをさらに備え、
前記第1判断ステップにおいて、前記測定結果が閾値を超えた場合に前記第1シナリオの開始条件が満たされたと判断する、付記15から18のいずれか1項に記載の操作自動化方法。
【0084】
(付記20)
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記通知に基づいて前記第2シナリオの開始条件が満たされたか否かを判断する第2判断ステップと、
前記第2判断ステップの判断結果に基づいて、前記第2シナリオに記録された操作を実行する、第2シナリオ実行ステップと、を備えた操作自動化方法。
【0085】
(付記21)
前記第2判断ステップにおいて、文字列を入力可能なアプリケーションを用いて受信した通知情報に所定の文字列が含まれているか否かに基づいて、前記第2シナリオの開始条件が満たされたか否かを判断する、付記20に記載の操作自動化方法。
【0086】
(付記22)
前記第1シナリオおよび前記第2シナリオをユーザーの入力に応じて作成するシナリオ作成ステップと、
前記第1シナリオを他の操作自動化装置に対して送信する、第1シナリオ送信ステップと、をさらに備えた付記20または21のいずれかに記載の操作自動化方法。
【0087】
(付記23)
前記第1シナリオおよび前記第2シナリオを管理するサーバから、前記第2シナリオを取得する第2シナリオ取得ステップをさらに備える、付記20または21のいずれかに記載の操作自動化方法。
【0088】
(付記24)
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記第1シナリオの開始条件が満たされたか否かを判断する第1判断ステップと、
前記第1判断ステップの判断結果に基づいて、前記第1シナリオに記録された操作を実行し、前記第2シナリオの開始条件としての前記通知を行うための所定の操作を前記操作対象アプリケーションに対して行わせる、第1シナリオ実行ステップと、をコンピュータに対して実行させる、操作自動化プログラム。
【0089】
(付記25)
操作対象アプリケーションに対するユーザーの操作を記録した操作自動化用のシナリオであって、他の操作自動化装置に対して通知を行う操作を含む第1シナリオと、前記通知を前記シナリオの開始条件とする第2シナリオと、について、
前記通知に基づいて前記第2シナリオの開始条件が満たされたか否かを判断する第2判断ステップと、
前記第2判断ステップの判断結果に基づいて、前記第2シナリオに記録された操作を実行する、第2シナリオ実行ステップと、をコンピュータに対して実行させる、操作自動化プログラム。
【符号の説明】
【0090】
100、100A、100B 操作自動化装置
101A 第1判断部
101B 第2判断部
102A 第1シナリオ実行部
102B 第2シナリオ実行部
103A、103B シナリオ作成部
104 測定結果取得部
200、1300 ネットワーク
300 センサ
400 サーバ
500 操作自動化システム