一种基于RPA机器人的触发运行方法与流程

文档序号:28327728发布日期:2022-01-05 01:33阅读:221来源:国知局
一种基于RPA机器人的触发运行方法与流程
一种基于rpa机器人的触发运行方法
技术领域
1.本发明涉及rpa技术领域,具体涉及一种基于rpa机器人的触发运行方法。


背景技术:

2.机器人流程自动化rpa(robotic process automation)是以软件机器人为基础的业务过程自动化处理软件。该技术可以模拟人类的行为,将现有的手动任务或流程进行自动化操作,实现了许多场景的自动化应用,用rpa替代高频低效的手工操作释放人力,同时规避人工操作存在的错误风险。
3.随着各行各业信息化程度逐渐提高,业务融合的场景逐渐扩展和领域逐步深入。为了兼顾客户信息技术现状和满足客户信息的传递,用户经常需要通过电子邮件进行通讯,并进行文件下载等处理步骤。当从电子邮箱接收大量的信息内容后,需要将必要的信息筛选过滤出来后汇总保存,保存后又会使得相关的文件夹内的数据发生变动,这就会造成用户难以对电子邮箱的收件以及下载的文件或变动文件进行清晰的辨认,难以避免的发生失误,影响工作效率。同时存在人工处理工作量大,失误率高的问题。企业也希望从这种工作中释放出更多的生产力来从事更多高价值产出的工作。


技术实现要素:

4.本发明的目的在于,提供一种基于rpa机器人的触发运行方法。本发明可以使用户通过rpa机器人来监听电子邮箱和文件夹,并能及时进行响应和处理,提高工作效率,降低人工成本。
5.为解决上述技术问题,本发明提供的技术方案如下:1、一种基于rpa机器人的触发运行方法,包括:
6.在rpa机器人中通过指令编排搭建rpa应用;
7.通过rpa应用对电子邮箱和/或文件夹进行监听,在接收到新的邮件和/或监听到文件夹中文件变动操作后,触发所设置的rpa应用。
8.上述的基于rpa机器人的触发运行方法,对于电子邮箱的监听触发,采用邮箱监听器获取邮箱的用户授权登录,启用定时器定时查询收件箱邮件,对指定时间戳范围收到的邮件进行读取内容,通过邮件筛选器筛选出正确的邮件,获取到邮件参数和rpa应用的参数,调用读取邮件参数模块将邮件内容读取并保存到缓存中,调用rpa应用的参数触发rpa应用,rpa应用运行时从缓存中获取到邮件内容并展示。
9.前述的基于rpa机器人的触发运行方法,通过检测邮件时间戳,符合要求时间戳的邮件全部添加到缓存列表中,然后遍历邮件缓存列表,根据自定义输入的邮件筛选规则,符合筛选要求的邮件并调用读取邮件参数模块来读取邮件内容,将读取的邮件内容保存到缓存中;所述邮件内容包括邮件发件人、邮件主题、邮件正文和邮件附件列表。
10.前述的基于rpa机器人的触发运行方法,对于文件夹的监听触发,通过文件夹监听器对文件夹进行监听,在监听到文件夹中文件变动时,获取到文件变动参数和rpa应用的参
数,调用读取文件参数模块获取文件变动的参数并保存到缓存中,调用rpa应用的参数触发rpa应用,rpa应用运行时从缓存中获取到文件变动参数并展示。
11.前述的基于rpa机器人的触发运行方法,所述的文件夹监听器是通过调用windows系统提供的文件系统监听接口来注册文件操作回调方法,运行文件夹监听功能。
12.前述的基于rpa机器人的触发运行方法,所述文件夹监听功能实现如下:
13.步骤s1、输入关键参数,包括所监听文件夹的绝对路径、所监听的文件类型、是否监听子路径和监听事件类型;
14.步骤s2、检测监听文件夹路径是否存在,如果不存在,则创建路径;
15.步骤s3、设置所监听的文件类型和是否监听子路径;
16.步骤s4、根据监听事件类型注册相应的文件操作回调接口,监听事件类型包括文件创建、文件删除、文件修改和文件重命名;
17.步骤s5、运行文件夹监听器。
18.前述的基于rpa机器人的触发运行方法,还包括应用执行模块和应用执行队列模块;所述应用执行模块用于触发执行rpa机器人中任意的rpa应用;所述的rpa应用执行队列进行对触发执行的rpa应用进行排队执行,用于防止多个监听触发同时触发造成rpa应用并发执行的冲突的问题。
19.前述的基于rpa机器人的触发运行方法,所述的rpa应用执行队列进行对触发执行的rpa应用进行排队执行具体过程如下:
20.步骤t1、当监听到一个或多个触发时,封装对应触发的rpa应用的参数以及对应触发的电子邮箱的邮件参数和/或文件夹的文件变动参数;
21.步骤t2、将封装好的参数一并传入添加rpa应用执行队列中;
22.步骤t3、检测当前是否有rpa应用正在运行,若没有,则直接调用该rpa应用对应的参数以及对应触发的电子邮箱的邮件参数和/或文件夹的文件变动参数并执行该rpa应用;若有,则执行步骤t4;
23.步骤t4、将该rpa应用参数添加到执行队列中;
24.步骤t5、在执行队列的上一rpa应用触发执行完毕后,应用执行模块从队列中获取到该rpa应用对应的参数以及对应触发的电子邮箱的邮件参数和/或文件夹的文件变动参数,调用参数并执行该rpa应用。
25.前述的基于rpa机器人的触发运行方法,所述指令编排包括指令添加,指令编辑和指令折叠;
26.所述指令添加是将指令集列表中的指令添加到rpa机器人的流程设计器中;
27.所述指令编辑是对添加到流程设计器中的指令进行编辑;
28.所述指令折叠是将流程设计器中指定位置和数量的指令进行折叠,并添加注释。
29.与现有技术相比,本发明通过在rpa机器人中通过指令编排搭建rpa应用,用户可以便捷地将指令进行编排形成积木式的排列组合,从而完成rpa应用的设计。本发明利用指令构成的排列组合来形成一整条rpa应用,通过rpa应用来执行相应的操作,使用户通过rpa机器人来监听电子邮箱和文件夹,并能及时进行响应和处理,简便了人工操作,提高了工作效率,节省了人工成本。此外,本发明的rpa应用搭建可以实现low

code(低代码)甚至是no

code(无代码)的rpa产品。本发明进一步的优化了指令编排、模块化设计和流程调试的步
骤,使得用户可以简单便捷的进行rpa应用设计,降低了rpa应用设计的难度,提高了上手度,方便了工作者的使用。本发明还支持调用python脚本,用户可以自主进行python编程供应用流程调用,极大提高了可扩展性。
附图说明
30.图1是本发明的rpa机器人示意图;
31.图2是本发明对于邮箱监听触发设置的示意图;
32.图3是本发明对于邮箱监听触发设置的另一示意图;
33.图4是本发明对于文件夹监听触发设置的示意图。
具体实施方式
34.下面结合实施例和附图对本发明作进一步的说明,但并不作为对本发明限制的依据。
35.实施例:一种基于rpa机器人的触发运行方法,如图1所示,包括rpa机器人,所述rpa机器人由指令集,流程设计器,结果调试器,流程管理器,全局变量管理器以及工具栏组成。
36.图1中指令集1:用于存放管理rpa指令,用户可以选择需要的指令通过双击或者拖拽的方式添加到流程设计器,进行自由设计。
37.图1中流程设计器2:为用户提供可视化rpa流程编辑平台。
38.图1中结果调试器3:用于显示程序错误信息,日志信息以及其他调试数据。
39.图1中流程管理器4:管理rpa流程以及python脚本等流程文件。
40.图1中全局变量管理器5:管理全局变量。
41.工具栏:包含了流程编排和调试功能。
42.利用rpa机器人进行rpa流程的可视化设计,其步骤包括:
43.一、指令编排,用于在rpa机器人搭建rpa应用,形成应用主流程;所述指令编排包括指令添加、指令编辑和指令折叠;
44.所述指令添加是将指令集列表中的指令安装运行逻辑添加到流程设计器,具体实现如下:
45.a1、所述流程设计器检测到新增指令,判断指令新增的方式,如果是拖拽方式,则执行步骤a2;如果是双击方式,则执行步骤a3;
46.a2、检测到为拖拽添加方式,获取鼠标拖拽的坐标位置,根据坐标得出最佳指令放置位置;
47.a3、检测到为双击添加方式,获取当前流程设计器中选中的流程所在位置,设置新增指令位置为选中位置加一;流程设计器本质上是一个列表容器,每一个指令单元都是添加到列表当中,在列表里肯定就会有顺序和编号,也就是位置,例如:当前选中的指令在第三行,那么双击的新增指令就会自动添加到第四行,如果第四行已有指令,则原第四行指令以及后继的所有指令都会往后挪一个单元位置,给新增指令腾地方,删除也一样,删掉某个指令后,该指令后继所有指令都会凑上来,补齐这个空位;
48.a4、确定添加指令位置后,在流程设计器的指令列表中指定位置插入新增指令,再
刷新指令列表;具体是,
49.a4.1、检测拖拽放置坐标处是否已有指令,如果没有,直接添加到当前流程设计器列表的最新位置(最后一个位置,当一条指令都没有的时候也就是第一位置),如果已有指令,执行a4.2;
50.a4.2、计算当前鼠标位置在这个已有指令界面上的相对坐标,如果相对坐标的y坐标小于指令界面高度的一半(也就是在这个指令界面的上半段),就插到这个指令的前面去,反之,则执行a4.3;
51.a4.3、如果相对坐标的y坐标大于或者等于指令界面高度的一半(也就是在这个指令界面的下半段),则插入到这条指令的后面去;
52.a5、检测所添加的指令是否有参数需要配置,如果没有,添加完成;如果有,则执行步骤s6。
53.a6、弹出新增指令的参数配置界面,完成参数配置,在参数配置中如果点击【确认】,则添加完成;如果点击【取消】,则取消添加。
54.所述指令编辑是对添加到流程设计器中的指令进行编辑;所述指令编辑包括指令移动、指令复制、指令剪切、指令粘贴、指令删除、指令撤销和指令重做;
55.所述指令移动是将指令集列表中的指令移动到流程设计器中或在流程设计器内移动指令从而调整指令的位置顺序;
56.所述指令复制是获取到当前所有选中的指令信息,将所有的指令信息转化成文本内容并保存到平台的剪切板中;
57.所述指令剪切是获取到当前所有选中的指令信息,将所有的指令信息转化成文本内容并保存到剪切板中,并删除所有选中的指令;
58.所述指令粘贴是从剪切板中获取指令信息,并插入指定位置;包括从rpa机器人剪切板中获取指令信息列表,再获取到当前需要插入的列表位置,完成指令信息列表插入操作,并刷新设计器流程列表。
59.所述指令删除是对当前选中的所有指令进行删除操作;包括获取当前所有选中的指令信息,将获取到的指令信息列表进行排序,再将排序后的指令信息列表从后往前进行删除操作,完成所有指令的删除,最后刷新当前设计器内容。
60.所述指令撤销是通过注册操作行为响应函数,获取用户的每一次操作信息,并将相应信息存储到缓存列表中,使用撤销操作时,从缓存列表中获取最后一个操作信息,将其恢复到前一步状态;具体包括
61.步骤y1、创建撤销操作信息列表,注册操作行为响应函数。
62.步骤y2、获取到用户操作信息。
63.步骤y3、清除重做操作信息列表。在撤销操作信息列表最后节点添加新的操作信息。
64.步骤y4、检测撤销操作信息列表长度是否超过上限,如果超过,则删除列表第一个节点信息。
65.在用户使用撤销操作时,实现步骤包括:
66.步骤p1、调用撤销函数,检测撤销信息列表长度是否为0,如果是,则返回不进行任何操作;如果不是,则执行步骤s2。
67.步骤p2、将撤销信息列表最后一个节点弹出,并获取该节点信息。
68.步骤p3、调用该节点的撤销操作。
69.步骤p4、将该节点信息添加到重做操作列表最后一个节点。
70.所述指令重做操作依赖于是否调用过指令撤销,实现步骤包括:
71.步骤q1、检测重做信息列表长度是否为0,如果是,则返回不进行任何处理;如果不是,则执行步骤s2。
72.步骤q1.检测重做信息列表长度是否为0,如果是,则返回不进行任何处理;如果不是,则执行步骤s2。
73.步骤q2.将重做信息列表最后一个节点弹出,并获取该节点信息。
74.步骤q3.调用该节点的重做操作。
75.步骤q4.将该节点信息添加到撤销操作列表最后一个节点。
76.所述指令重做是把指令撤销操作的动作保存起来,让用户恢复到指令撤销的前一步状态。
77.所述指令折叠是将流程设计器中指定位置和数量的指令进行折叠,并添加注释,提高流程指令的管理效率。
78.所述指令折叠具体实现如下:
79.b1、判断应用主流程当前是否在运行或者暂停状态,如果是,则停止折叠操作;如果不是,则执行步骤b2;
80.b2、在流程设计器中获取选中的指令列表;
81.b3、检测选中指令列表长度,如果长度为0,则停止当前操作;如果长度大于0,则执行步骤b4;
82.b4、获取列表中第一个指令所在位置序列号startindex和最后一个指令所在位置序列号endindex;
83.b5、在startindex位置插入折叠开始指令;在endindex+1的位置插入折叠结束指令,完成指令折叠。
84.b6、刷新流程设计器。
85.二、模块化设计,用于将rpa应用功能进行模块划分,并将其封装成模块子流程,在应用主流程中进行调用。
86.所述模块化设计包括子流程设计、子流程调用以及参数传递;
87.所述子流程设计用于将rpa应用功能进行模块划分,并将其封装成模块子流程,其中模块子流程中的指令编排与应用主流程流程一致,为此本发明不在具体赘述;
88.所述子流程调用是在应用主流程中调用模块子流程,具体包括:
89.步骤h1、添加【调用流程】指令。
90.步骤h2、配置【调用流程】指令参数,选择要调用的子流程。
91.参数传递,对于流程间互相调用必不可少的传参,本发明为每个流程都配备了参数列表,用于配置任意类型的输入与输出参数,具体包括:
92.步骤l1.选择指定流程,打开“流程参数”界面,创建流程参数。
93.步骤l2、修改参数名称,参数方向,参数类型,根据需要设置默认值和参数描述,保存流程参数。
94.步骤l3、打开调用了该流程的【调用流程】指令配置页面,可以发现页面上自动加载了已配置好的参数列表。
95.步骤l4、在【调用流程】指令配置页面设置各参数。
96.三、流程的调试,用于实现应用主流程和模块子流程运行的调试,所述流程的调试通过流程调试器进行断点调试和单步调试,使其从任意位置指令开始调试运行,并通过日志系统显示流程运行日志,具体实现如下:
97.步骤y1、启动调试器,保存当前指令,流程变量等一切相关数据。
98.步骤y3、获取所有的断点信息,并设置到调试器中。
99.步骤y4、启动运行调试器,注册调试信息响应函数。
100.步骤y5、当正常运行到断点指令或者单步运行操作时,获取到指令调试信息并输出到界面。
101.运行日志:本发明的日志系统支持显示通用流程运行日志,调用【打印日志】指令输出的日志,异常消息日志。当日志信息太多时,支持清空日志信息,当需要导出日志时,支持日志内容一键导出。
102.本发明通过rpa应用对电子邮箱和/或文件夹进行监听,在接收到新的邮件和/或获取到新的文件操作后,触发所设置的rpa应用。
103.在一种实施例中,本发明实现对于电子邮箱的监听触发,如图2和图3所示,采用邮箱监听器获取邮箱的用户授权登录,启用定时器定时查询收件箱邮件,对指定时间戳范围收到的邮件进行读取内容,通过邮件筛选器筛选出正确的邮件,获取到邮件参数和rpa应用的参数,调用读取邮件参数模块将邮件内容读取并保存到缓存中,调用rpa应用的参数触发rpa应用,rpa应用运行时从缓存中获取到邮件内容并展示。邮箱监听器、定时器为常见的应用程序,属于本领域技术人员所熟知并掌握的技术手段,为此本发明不在具体赘述。邮件筛选器采用的是正则表达式对邮件进行筛选,正则表达式,又称规则表达式。(英语:regular expression,在代码中常简写为regex、regexp或re),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
104.优选的,本实施例通过检测邮件时间戳,将符合需求时间戳的邮件全部添加到缓存列表中,然后遍历邮件缓存列表,根据自定义输入的邮件筛选规则(该筛选规则可以根据用户所需进行自由设置,本发明不对其进行具体的限定),符合筛选要求的邮件并调用读取邮件参数模块来读取邮件内容,将读取的邮件内容保存到缓存中;所述邮件内容包括邮件发件人、邮件主题、邮件正文和邮件附件列表。
105.在一种实施例中,本发明实现对于文件夹的监听触发,如图4所示,通过文件夹监听器(所述的文件夹监听器是通过调用windows系统提供的文件系统监听接口来注册文件操作回调方法,运行文件夹监听功能)对文件夹进行监听,在监听到文件夹中文件变动时,获取到文件变动参数和rpa应用的参数,调用读取文件参数模块获取文件变动的参数并保存到缓存中,调用rpa应用的参数触发rpa应用,rpa应用运行时从缓存中获取到文件变动参数并展示。具体的,所述读取文件参数模块,是指运行在指令当中,用于获取文件触发的参数,其中包括文件变动类型、旧文件路径和新文件路径,文件事件触发后,对应的文件变动参数保存到缓存中,应用运行过程中,从缓存中获取文件变动参数,用于rpa应用运行,实现如下:
106.步骤s1、输入关键参数,包括所监听文件夹的绝对路径、所监听的文件类型、是否监听子路径和监听事件类型;
107.步骤s2、检测监听文件夹路径是否存在,如果不存在,则创建路径;
108.步骤s3、设置所监听的文件类型和是否监听子路径;
109.步骤s4、根据监听事件类型注册相应的文件操作回调接口,监听事件类型包括文件创建、文件删除、文件修改和文件重命名;
110.步骤s5、运行文件夹监听器。
111.在另外一种实施例中,本发明实现对于电子邮箱的监听触发和对于文件夹的监听触发,触发方法与上述实施例中的方法一致,为此不在具体赘述。
112.优选的,在实现对于电子邮箱的监听触发和对于文件夹的监听触发时,还设置应用执行模块和应用执行队列模块;所述应用执行模块用于触发执行rpa机器人中任意的rpa应用;所述的rpa应用执行队列进行对触发执行的rpa应用进行排队执行,用于防止多个监听触发同时触发造成rpa应用并发执行的冲突的问题。
113.所述的rpa应用执行队列进行对触发执行的rpa应用进行排队执行具体过程如下:
114.步骤t1、当监听到一个或多个触发时,封装对应触发的rpa应用的参数以及对应触发的电子邮箱的邮件参数和/或文件夹的文件变动参数;
115.步骤t2、将封装好的参数一并传入添加rpa应用执行队列中;
116.步骤t3、检测当前是否有rpa应用正在运行,若没有,则直接调用该rpa应用对应的参数以及对应触发的电子邮箱的邮件参数和/或文件夹的文件变动参数并执行该rpa应用;若有,则执行步骤t4;
117.步骤t4、将该rpa应用参数添加到执行队列中;
118.步骤t5、在执行队列的上一rpa应用触发执行完毕后,应用执行模块从队列中获取到该rpa应用对应的参数以及对应触发的电子邮箱的邮件参数和/或文件夹的文件变动参数,调用参数并执行该rpa应用。
119.通过上述方法避免多个监听触发同时触发造成rpa应用并发执行的冲突的问题。
120.综上所述,本发明通过在rpa机器人中通过指令编排搭建rpa应用,用户可以便捷地将指令进行编排形成积木式的排列组合,从而完成rpa应用的设计。本发明利用指令构成的排列组合来形成一整条rpa应用,通过rpa应用来执行相应的操作,使用户通过rpa机器人来监听电子邮箱和文件夹,并能及时进行响应和处理,简便了人工操作,提高了工作效率,节省了人工成本。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1