掌桥专利:专业的专利平台
掌桥专利
首页

自动化任务发放方法、执行方法、设备及存储介质

文献发布时间:2023-06-19 09:43:16


自动化任务发放方法、执行方法、设备及存储介质

技术领域

本发明涉及流程自动化技术领域,尤其涉及一种自动化任务发放方法、执行方法、设备及存储介质。

背景技术

软件流程自动化RPA,即Robotic Process Automation,是指用软件自动化方式实现在各个行业中本来是人工操作计算机完成的业务,让软件自动化机器人自动处理大量重复的、基于规则的工作流程任务。软件自动化机器人能准确快速完成这些工作,能减少人工错误、确保零失误、提高效率、大幅度降低运营成本。

现有技术中,RPA机器人通常是单机处理任务,机器人数量少,且运行环境单一、独立且配置复杂,当出现某些任务,需要跨计算机、跨系统操作时,往往需要任务脚本开发人员借助外部数据库,或者引入数据中间件来解决,无法做到全流程自动化,且增加了人力成本。

发明内容

本发明提供一种自动化任务发放方法、执行方法、设备及存储介质,能够达到全流程自动化,提高自动化脚本编写效率、自动化任务发放、执行效率,降低运营成本的目的。

为解决上述技术问题,本发明采用的一个技术方案是:提供一种自动化任务发放方法,所述自动化任务发放方法包括:

获取自动化机器人配置信息;

获取待执行任务流,所述待执行任务流包括至少一个待执行任务,所述待执行任务包括执行所述待执行任务所需的机器人类型;

按照所述待执行任务流的任务执行顺序,依次执行如下步骤:

依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人,并将所述当前待执行任务发放至所述自动化机器人;

接收反馈信息,所述反馈信息包括事件信息,所述事件信息用于指定当前执行的待执行任务所依赖的其他待执行任务;

若所述反馈信息为事件信息,则从所述待执行任务流中获取所述事件信息指定的待执行任务,依据所述事件信息指定的待执行任务中的所述机器人类型从所述自动化机器人配置信息中选取另一自动化机器人,将所述事件信息指定的待执行任务发放至所述另一自动化机器人。

根据本发明的一种实施例,所述待执行任务流为双向链表,所述双向链表包括一个头节点及至少一个成员节点,所述头节点上存储有所述待执行任务流的全局变量,每个所述成员节点上存储有一个所述待执行任务的任务脚本、任务参数及所述待执行任务所需的机器人类型,

所述依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人,并将所述当前待执行任务发放至所述自动化机器人,包括:

依据当前待执行任务对应成员节点上的机器人类型从所述自动化机器人配置信息中选取所述自动化机器人;

将所述当前待执行任务对应成员节点上的所述任务脚本、所述任务参数及所述头节点上的所述全局变量发放至所述自动化机器人。

根据本发明的一种实施例,所述头节点还存储有所述待执行任务流支持的事件编号,所述事件信息包括所述当前待执行任务所依赖的其他待执行任务的事件编号,

判断所述待执行任务流支持的事件编号中是否包括所述事件信息中的事件编号,若包括,则获取所述头节点上存储的所述待执行任务流支持的事件编号与所述成员节点的匹配关系;

依据所述事件信息中的事件编号、所述匹配关系获取对应的所述成员节点;

依据所述成员节点获取对应的所述待执行任务。

根据本发明的一种实施例,所述反馈信息还包括事件反馈信息,所述事件反馈信息为所述事件信息指定执行的所述待执行任务的反馈信息,所述事件反馈信息包括所述事件编号、事件执行结果,所述事件执行结果为所述事件信息指定执行的所述待执行任务执行后的返回数据,所述自动化任务发放方法还包括:

若所述反馈信息为所述事件反馈信息,则依据所述事件编号将所述事件执行结果发送给对应的所述自动化机器人。

根据本发明的一种实施例,所述成员节点上还存储有节点状态,所述反馈信息还包括完成信息,所述完成信息包括所述待执行任务的完成状态、返回数据,所述返回数据为所述待执行任务执行后的结果数据,所述自动化任务发放方法还包括:

若所述反馈信息为所述当前待执行任务的完成信息,则设置所述当前待执行任务对应的所述成员节点的节点状态为所述完成状态,并依据所述返回数据更新所述成员节点上的所述任务参数。

根据本发明的一种实施例,所述完成状态包括异常态,所述自动化任务发放方法还包括:

若所述反馈信息为所述当前待执行任务的完成信息,则当所述完成状态为所述异常态时,设置所述当前待执行任务对应的所述成员节点的节点状态为异常态,并发送异常通知。

根据本发明的一种实施例,所述完成状态还包括完成态,所述成员节点上还存储有节点入口条件,所述依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人前,还包括:

按照所述待执行任务流的任务执行顺序判断所述当前待执行任务对应的成员节点的前一个成员节点上的所述节点状态是否为所述完成态,

若是,则判断所述当前待执行任务对应的成员节点上的所述节点入口条件是否满足,

若满足,则获取所述当前待执行任务对应的成员节点上的所述机器人类型。

此外,为解决上述技术问题,本发明还采用的一个技术方案是:提供一种自动化任务发放装置,所述自动化任务发放装置包括:

获取模块,用于获取自动化机器人配置信息;及获取待执行任务流,所述待执行任务流包括至少一个待执行任务,所述待执行任务包括执行所述待执行任务所需的机器人类型;

任务下发模块,用于按照所述待执行任务流的任务执行顺序,依次执行如下步骤:

依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人,并将所述当前待执行任务发放至所述自动化机器人;

接收反馈信息,所述反馈信息包括事件信息,所述事件信息用于指定当前执行的待执行任务所依赖的其他待执行任务;

若所述反馈信息为事件信息,则从所述待执行任务流中获取所述事件信息指定的待执行任务,依据所述事件信息指定的待执行任务中的所述机器人类型从所述自动化机器人配置信息中选取另一自动化机器人,将所述事件信息指定的待执行任务发放至所述另一自动化机器人。此外,为解决上述技术问题,本发明还采用的一个技术方案是:提供一种自动化任务发放设备,所述自动化任务发放设备包括处理器、与所述处理器耦接的存储器,其中,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如上述任一项所述自动化任务发放方法的步骤。

此外,为解决上述技术问题,本发明还采用的一个技术方案是:提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如上述任一项所述自动化任务发放方法的步骤。

本发明提出的自动化任务发放方法、执行方法、设备及存储介质,通过所述待执行任务流开展自动化任务,并通过接收所述事件信息,触发在当前待执行任务的执行过程中调用另一待执行任务的执行,并且通过选择不同自动化机器人分别执行两个存在调用关系的待执行任务,任务执行过程中多个任务互不影响,全流程无需人工参与,实现全流程自动化,提高了流程自动化效率,节约了人力成本。

进一步地,所述待执行任务流采用双向链表结构,用头节点存储全局变量,每个成员节点代表一个具体的待执行任务,待执行任务间相互独立,并且,使用双向链表结构在存在任务依赖时,可以不受所述待执行任务流的任务执行顺序的限制对任务进行调用,待执行任务的任务脚本编写不用考虑及设计任务的依赖关系,使任务脚本的编写更加简便,不同待执行任务配置相应的机器人类型,通过不同类型的机器人执行不同的待执行任务,不用受限于机器人的配置环境,减小了脚本编写及机器人环境配置的难度及耦合度,提高了自动化任务的编写效率及适用性。

进一步地,通过在头节点上存储有所述待执行任务流支持的事件编号可以实现当前待执行任务在执行过程中的对依赖任务的调用判断,并且通过对事件编号的修改即可以实现对支持的依赖任务的更新,提升了脚本编写效率,用户体验更佳。

进一步地,通过设置任务入口条件,可以在任务执行前先依据上一节点的状态信息和当前节点的入口条件先对任务执行的条件准备是否满足进行判断,避免了因条件不满足造成任务执行异常,提高了自动化任务的执行效率和准确性。

附图说明

图1是本发明一种实施例的自动化任务执行系统的结构示意图;

图2是本发明一种实施例的自动化任务发放方法的流程示意图;

图3是本发明一种实施例的自动化任务下发装置1的结构示意图;

图4是本发明一种实施例的自动化任务发放设备的结构示意图;

图5是本发明一种实施例的存储介质的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。本申请实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

请参阅图1,图1是本发明一种实施例的自动化任务执行系统100的结构示意图。所述自动化任务执行系统100包括下发自动化任务的服务器端110、执行自动化任务的机器人端120,所述服务器端可以是本地服务器、云服务平台,可以是独立的服务器,也可以是集群服务器,所述服务器端用于管理自动化任务,所述机器人端包括至少一个执行自动化任务的自动化机器人,不同的所述自动化机器人可以配置不同的运行环境,如可访问的网络范围、机器人的运行系统等,不同所述自动化机器人在收到所述自动化任务后在其对应的所述运行环境下执行所述自动化任务。

请参阅图2,图2是本发明一种实施例的自动化任务发放方法的流程示意图,根据本发明的一个实施例,所述服务器端通过执行所述自动化任务发放方法向所述机器人端发放所述自动化任务。所述自动化任务发放方法包括:

步骤S101:获取自动化机器人配置信息。

需要说明的是,自动化机器人在执行所述自动化任务时需要依赖一定的配置环境,如网络环境、硬件环境、软件环境等,不同的自动化任务需要的配置环境不同,所述配置信息可以是依据所述自动化机器人的网络环境、硬件环境、软件环境等提取的所述自动化机器人的运行环境信息。所述服务器端可以通过网络连接及网络协议交互与所述机器人端建立连接,从而获取所述配置信息。

步骤S102:获取待执行任务流,所述待执行任务流包括至少一个待执行任务,所述待执行任务包括执行所述待执行任务所需的机器人类型。

根据本发明的一个实施例,所述机器人类型可以是依据所述机器人的配置信息人为设定的,如可以根据网络环境配置将所述自动化机器人分为内网机器人、公网机器人,内网机器人的网络环境配置为内网网段,所述机器人类型为内网机器人的所述自动化机器人只能访问内部网络,对于需要在内网中执行的所述待执行任务则需要指定所述机器人类型为内网机器人,公网机器人的网络环境配置为公共网段,所述机器人类型为公网机器人的所述自动化机器人可以访问外部网络,对于需要在公网中执行的所述待执行任务则需要指定所述机器人类型为公网机器人,还可以根据所述自动化机器人应用领域将所述自动化机器人分为数据统计机器人等,所述数据统计机器人为使用操作数据统计类的应用程序完成所述待执行任务的所述自动化机器人,对于数据统计类的所述待执行任务则可以指定所述机器人类型为数据统计机器人。

步骤S102中,所述服务器端可以将至少一个所述待执行任务组成的所述待执行任务流进行整个自动化流程的所述待执行任务的下发,根据本发明的另一个实施例,当用户需要启动自动化任务时,可以对所述服务器端下发一个开始下发任务的执行指令,所述服务器端接收到所述执行指令后,可以从内部或外部存储设备中读取所述执行指令对应的所述待执行任务流,从而获取所述待执行任务。

步骤S103:按照所述待执行任务流的任务执行顺序,依次执行如下步骤:

步骤S103a:依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人,并将所述当前待执行任务发放至所述自动化机器人。

其中,所述待执行任务流可以按一定的任务执行顺序依次执行,所述任务执行顺序可以依据实际需求人为设定,如顺序执行、随机执行等,当执行到所述当前待执行任务时,所述服务器端可以依据所述当前待执行任务中的所述机器人类型从所述自动化机器人配置信息中选取自动化机器人,并将所述当前待执行任务发送至所述自动化机器人。

根据本发明的另一实施例,所述自动化机器人配置信息还可以包括所述自动化机器人的运行状态,所述运行状态可以包括空闲态、占用态,所述服务器端还可以依据所述待执行任务的所述机器人类型从所述自动化机器人配置信息中选取与所述机器人类型相匹配的候选机器人,然后依据所述候选机器人的所述运行状态选择所述运行状态为所述空闲态的所述候选机器人作为执行所述当前待执行任务的所述自动化机器人。通过所述自动化机器人的所述配置信息选择所述自动化机器人可以避免因自动化机器人的环境配置不满足导致所述待执行任务运行失败或异常的情况,提高了所述自动化机器人选择的正确率及保障了所述待执行任务的执行效率和成功率。

步骤S103b:接收任务反馈信息,若所述反馈信息为事件信息,则从所述待执行任务流中获取所述事件信息指定的待执行任务,依据所述事件信息指定的待执行任务中的所述机器人类型从所述自动化机器人配置信息中选取另一自动化机器人,将所述事件信息指定的待执行任务发放至所述另一自动化机器人。

其中,所述反馈信息包括事件信息,所述事件信息用于指定当前执行的待执行任务所依赖的其他待执行任务,当所述自动化机器人在执行所述当前待执行任务时,发现所述当前待执行任务需要依赖其他待执行任务的运行结果数据作为运行输入时,则会向所述服务器端反馈所述事件信息,同时,所述自动化机器人会将所述当前待执行任务的执行进行暂停,等待所述依赖的待执行任务的执行结果。

具体的,所述服务器端在所述当前待执行任务下发完毕后,所述服务器端还需要等待所述当前待执行任务的任务反馈信息,当接收到所述任务反馈信息后,先判断所述任务反馈信息是否为事件信息,当所述当前待执行任务的执行需要所依赖的其他待执行任务的运行结果时,执行所述当前待执行任务的所述自动化机器人会向所述服务器端发送所述事件信息。与步骤S103a类似,所述服务器端依据所述事件信息在所述待执行任务流中获取到当前待执行任务所依赖的其他待执行任务后,可以依据所依赖的其他待执行任务的所述机器人类型选择另一自动化机器人,并将所述待执行任务发送至所述另一机器人,使所述另一机器人可以来执行所依赖的其他待执行任务。

本实施例的一种自动化任务发放方法,以所述待执行任务流将所述待执行任务进行组合实现全流程自动化,并通过接收所述事件信息,触发在当前待执行任务的执行过程中调用另一待执行任务的执行,并且依据不同待执行任务对自动化机器人类型的需求在执行过程中选择不同的自动化机器人进行执行,任务执行过程中多个任务互不影响,全流程无需人工参与,实现全流程自动化,提高了流程自动化效率,节约了人力成本。

根据本发明的另一种实施例,所述待执行任务流可以为双向链表,所述双向链表包括一个头节点及至少一个成员节点,所述头节点上存储有所述待执行任务流的全局变量,每个所述成员节点上存储有一个所述待执行任务的任务脚本、任务参数及所述待执行任务所需的机器人类型,可以理解,所述双向链表的读取顺序即为所述待执行任务流的任务执行顺序,步骤S103a还可以包括以下步骤:

步骤111:依据当前待执行任务对应成员节点上的机器人类型从所述自动化机器人配置信息中选取所述自动化机器人。

其中,所述待执行任务可以按读取所述成员节点进行发放,本实施例中,所述待执行任务流的所述任务执行顺序可以设置为按所述成员节点的顺序依次读取,当执行所述当前待执行任务对应的成员节点时,先从所述成员节点上获取所述成员节点上存储的所述机器人类型,然后从所述自动化机器人配置信息中选取匹配的所述自动化机器人。

步骤112:将所述当前待执行任务对应成员节点上的所述任务脚本、所述任务参数及所述头节点上的所述全局变量发放至所述自动化机器人。

进一步地,将所述当前待执行任务对应成员节点上的所述任务脚本、所述任务参数及所述头节点上的所述全局变量发放至所述自动化机器人,所述自动化机器人接收到所述当前待执行任务后,可以在其对应的运行环境上将所述任务参数、所述全局变量代入所述任务脚本,从而开始执行所述当前待执行任务。

本实施例的一种自动化任务发放方法,通过采用双向链表结构将各待执行任务的任务脚本、任务参数独立存储于所述成员节点上,在待执行任务的执行过程中按人为设置的成员节点的读取顺序进行任务的下发,在存在任务依赖时,可以不受所述待执行任务流的任务执行顺序的限制对任务进行调用,脚本编写相互独立,低耦合,不用考虑及设计任务的依赖关系,通过头节点存储全局变量,使任务结构简单,降低了自动化任务脚本的开发难度,进一步提高了自动化任务的发放、执行效率。

根据本发明的另一种实施例,所述头节点还可以存储有所述待执行任务流支持的事件编号,本实施例中,所述事件信息包括所述当前待执行任务所依赖的其他待执行任务的事件编号,可以理解,所述待执行任务依赖的待执行任务通常是具有通用性的常用基础任务,例如,所述当前待执行任务为将邮件发件人及其对应的答复内容收集到意见收集表中,那么所述当前待执行任务依赖一个获取邮件内容的待执行任务,而获取邮件内容的待执行任务也可以作为多个待执行任务的依赖任务,具有通用性,故可以把依赖获取邮件内容的待执行任务设置一个事件编号,如设置所述获取邮件内容的待执行任务的事件编号为001,当所述自动化机器人在执行过程中需要获取邮件内容时即可以发送事件编号为001的所述事件信息。本实施例中,步骤S103b中的所述从所述待执行任务流中获取所述事件信息指定的待执行任务还可以包括以下步骤:

步骤121:判断所述待执行任务流支持的事件编号中是否包括所述事件信息中的事件编号,若包括,则获取所述头节点上存储的所述待执行任务流支持的事件编号与所述成员节点的匹配关系。

其中,所述待执行任务流支持的事件编号为所述待执行任务流支持的至少一个事件编号的集合,可以理解,在接收到所述事件信息后,所述服务器端可以先根据所述待执行任务流支持的事件编号判断所述事件信息中的事件编号是否是所述待执行任务流中支持的任务,通过判断步骤,可以在任务下发前检查任务的合理性,避免所述服务器端在所述成员节点中依次查找,提高了自动化任务发放的效率。当所述待执行任务流支持的事件编号中包括所述事件信息中的所述事件编号则获取所述头节点上存储的所述待执行任务流支持的事件编号与所述成员节点的匹配关系。所述匹配关系为所述事件编号与所述待执行任务的对应关系,所述对应关系可以存储在所述服务器端上,

步骤122:依据所述事件信息中的事件编号、所述匹配关系获取对应的所述成员节点。

步骤123:依据所述成员节点获取对应的所述待执行任务。

通过所述成员节点即可以得到所述待执行任务及其任务脚本、任务参数和对应的机器人类型。例如所述头节点上存储的支撑的事件编号为001、002、003,当所述服务器端收到事件编号为001的所述事件信息后,通过与所述头节点上存储的所述待执行任务流支持的事件编号进行对比判断可以发现事件编号001是所述待执行任务流支持的事件编号,然后通过读取内部存储或者外部存储的所述头节点上存储的所述待执行任务流支持的事件编号与所述成员节点的匹配关系,如事件编号001对应的所述双向链表上的第一个成员节点,事件编号002对应的所述双向链表上的第五个成员节点,则可以获得事件编号001的所述事件信息对应的所述待执行任务为所述双向链表上的第一个成员节点,通过所述第一个成员节点即可以获得所述成员节点上对应的所述待执行任务。

根据本发明的另一实施例,所述匹配关系可以存储在外置的事件管理器上,然后所述服务器通过网络连接访问所述事件管理器获取所述匹配关系,通过外置的所述事件管理器对所述匹配关系进行管理,可以在集群等多个服务器进行任务发放的场景下不用分别维护,多个服务器均访问所述事件管理器即可获得所述匹配关系,便于维护,降低了维护成本。

根据本发明的另一种实施例,所述反馈信息还包括事件反馈信息,可以理解,所述事件信息其实也是在调用所述服务器端下发所述待执行任务,所以所述服务器端也需要获知所述事件信息对应的所述待执行任务的执行结果,故所述事件反馈信息为所述事件信息指定执行的所述待执行任务的反馈信息,所述事件反馈信息可以包括所述事件编号、事件执行结果,所述事件执行结果为所述事件信息指定执行的所述待执行任务执行后的返回数据,所述自动化任务发放方法还包括:

步骤131:若所述反馈信息为所述事件反馈信息,则依据所述事件编号将所述事件执行结果发送给所述自动化机器人。

如前所述,当前执行的所述待执行任务如果需要依赖其他待执行任务的运行结果时,会向所述服务器端反馈一个事件信息,所述事件信息中包括事件编号,当依赖的所述待执行任务执行完毕后,由于此待执行任务是由事件信息触发的,所以会反馈一个事件反馈信息,其中所述事件反馈信息也会同样包括所述事件信息的事件编号,因此依据所述事件编号可以将所述事件执行结果发送给所述自动化机器人。

本实施例中,将所述事件执行结果发送给所述自动化机器人后,所述自动化机器人就可以继续执行暂停的所述当前待执行任务了。

本实施例的一种自动化任务发放方法,通过所述事件反馈信息完成多个存在依赖关系的待执行任务间的数据传递,简便、高效、易实现,进一步提高了所述自动化任务发放及执行的效率。

根据本发明的另一种实施例,所述成员节点上还存储有节点状态,所述反馈信息还包括完成信息,所述完成信息包括所述待执行任务的完成状态、返回数据,所述返回数据为所述待执行任务执行后的结果数据,所述自动化任务发放方法还可以包括:

步骤141:若所述反馈信息为所述当前待执行任务的完成信息,则设置所述当前待执行任务对应的所述成员节点的节点状态为所述完成状态,并依据所述返回数据更新所述成员节点上的所述任务参数。

当所述当前待执行任务执行完毕后,所述服务器端可以收到所述完成信息,并依据所述完成信息设置所述节点状态,通过所述节点状态可以获知所述当前待执行任务的完成情况,并通过所述完成信息的返回数据刷新所述成员节点上的所述任务参数,完成所述当前待执行任务的发放。

具体的,所述完成状态包括异常态,当所述当前待执行任务因异常导致执行结束时,所述完成状态为所述异常态,当所述完成状态为所述异常态时,所述服务器端还可以发送异常通知,通知维护人员进行问题定位。

在另一实施例中,所述成员节点上还可以存储有节点入口条件,所述完成状态还包括完成态,所述步骤S103a前还可以包括以下步骤:

步骤151:按照所述待执行任务流的任务执行顺序判断所述当前待执行任务对应的成员节点的前一个成员节点上的所述节点状态是否为所述完成态,若是,则判断所述当前待执行任务对应的成员节点上的所述节点入口条件是否满足,若满足,则获取所述当前待执行任务对应的成员节点上的所述机器人类型。

具体的,本实施例中,按照所述待执行任务流的任务执行顺序即按所述双向链表的所述成员节点的排列顺序依次顺序执行所述成员节点上的所述待执行任务,当前一节点的所述节点状态是否为所述完成态,且当前节点的入口条件满足时,开始当前节点的任务执行。

通过对前一成员节点的节点状态的判断,可以排除任务执行过程中的异常情况,并通过当前成员节点入口条件检查任务发放的条件是否满足,避免了因条件不满足造成任务执行异常,提高了自动化任务的执行效率和准确性。

请参阅图3,图3是本发明一种实施例的自动化任务下发装置1的结构示意图,根据本发明的一个实施例,所述自动化任务下发装置1包括获取模块11、任务下发模块12。

获取模块11,用于获取自动化机器人配置信息;及获取待执行任务流,所述待执行任务流包括至少一个待执行任务,所述待执行任务包括执行所述待执行任务所需的机器人类型;

任务下发模块12,用于按照所述待执行任务流的任务执行顺序,依次执行如下步骤:

依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人,并将所述当前待执行任务发放至所述自动化机器人;

接收反馈信息,所述反馈信息包括事件信息,所述事件信息用于指定当前执行的待执行任务所依赖的其他待执行任务;

若所述反馈信息为事件信息,则从所述待执行任务流中获取所述事件信息指定的待执行任务,依据所述事件信息指定的待执行任务中的所述机器人类型从所述自动化机器人配置信息中选取另一自动化机器人,将所述事件信息指定的待执行任务发放至所述另一自动化机器人。

根据本发明的一种实施例,所述待执行任务流为双向链表,所述双向链表包括一个头节点及至少一个成员节点,所述头节点上存储有所述待执行任务流的全局变量,每个所述成员节点上存储有一个所述待执行任务的任务脚本、任务参数及所述待执行任务所需的机器人类型,所述任务下发模块12,还用于依据当前待执行任务对应成员节点上的机器人类型从所述自动化机器人配置信息中选取所述自动化机器人;将所述当前待执行任务对应成员节点上的所述任务脚本、所述任务参数及所述头节点上的所述全局变量发放至所述自动化机器人。

根据本发明的一种实施例,所述头节点还存储有所述待执行任务流支持的事件编号,所述事件信息包括所述当前待执行任务所依赖的其他待执行任务的事件编号,所述任务下发模块12,还用于判断所述待执行任务流支持的事件编号中是否包括所述事件信息中的事件编号,若包括,则获取所述头节点上存储的所述待执行任务流支持的事件编号与所述成员节点的匹配关系;依据所述事件信息中的事件编号、所述匹配关系获取对应的所述成员节点;依据所述成员节点获取对应的所述待执行任务。

根据本发明的一种实施例,所述反馈信息还包括事件反馈信息,所述事件反馈信息为所述事件信息指定执行的所述待执行任务的反馈信息,所述事件反馈信息包括所述事件编号、事件执行结果,所述事件执行结果为所述事件信息指定执行的所述待执行任务执行后的返回数据,所述任务下发模块12,还用于若所述反馈信息为所述事件反馈信息,则依据所述事件编号将所述事件执行结果发送给对应的所述自动化机器人。

根据本发明的一种实施例,所述成员节点上还存储有节点状态,所述反馈信息还包括完成信息,所述完成信息包括所述待执行任务的完成状态、返回数据,所述返回数据为所述待执行任务执行后的结果数据,所述任务下发模块12,还用于若所述反馈信息为所述当前待执行任务的完成信息,则设置所述当前待执行任务对应的所述成员节点的节点状态为所述完成状态,并依据所述返回数据更新所述成员节点上的所述任务参数。

根据本发明的一种实施例,所述完成状态包括异常态,所述任务下发模块12,还用于若所述反馈信息为所述当前待执行任务的完成信息,则当所述完成状态为所述异常态时,设置所述当前待执行任务对应的所述成员节点的节点状态为异常态,并发送异常通知。

根据本发明的一种实施例,所述完成状态还包括完成态,所述成员节点上还存储有节点入口条件,所述任务下发模块12,还用于按照所述待执行任务流的任务执行顺序判断所述当前待执行任务对应的成员节点的前一个成员节点上的所述节点状态是否为所述完成态,若是,则判断所述当前待执行任务对应的成员节点上的所述节点入口条件是否满足,若满足,则获取所述当前待执行任务对应的成员节点上的所述机器人类型。

可以理解的是,上述实时车辆违章检测装置的各模块实现各功能的具体方式可参阅上述实施例对应的具体步骤,故在此不作赘述。

请参阅图4,图4是本发明一种实施例的自动化任务发放设备30的结构示意图。如图4所示,所述自动化任务发放设备30包括存储器32、处理器31及存储在所述存储器32上并可在所述处理器31上运行的计算机程序,所述处理器31执行所述计算机程序时实现以下步骤:获取自动化机器人配置信息;获取待执行任务流,所述待执行任务流包括至少一个待执行任务,所述待执行任务包括执行所述待执行任务所需的机器人类型;按照所述待执行任务流的任务执行顺序,依次执行如下步骤:依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人,并将所述当前待执行任务发放至所述自动化机器人;接收反馈信息,所述反馈信息包括事件信息,所述事件信息用于指定当前执行的待执行任务所依赖的其他待执行任务;若所述反馈信息为事件信息,则从所述待执行任务流中获取所述事件信息指定的待执行任务,依据所述事件信息指定的待执行任务中的所述机器人类型从所述自动化机器人配置信息中选取另一自动化机器人,将所述事件信息指定的待执行任务发放至所述另一自动化机器人。

根据本发明的一个实施例,所述待执行任务流为双向链表,所述双向链表包括一个头节点及至少一个成员节点,所述头节点上存储有所述待执行任务流的全局变量,每个所述成员节点上存储有一个所述待执行任务的任务脚本、任务参数及所述待执行任务所需的机器人类型,所述依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人,并将所述当前待执行任务发放至所述自动化机器人,包括:依据当前待执行任务对应成员节点上的机器人类型从所述自动化机器人配置信息中选取所述自动化机器人;将所述当前待执行任务对应成员节点上的所述任务脚本、所述任务参数及所述头节点上的所述全局变量发放至所述自动化机器人。

根据本发明的一个实施例,所述头节点还存储有所述待执行任务流支持的事件编号,所述事件信息包括所述当前待执行任务所依赖的其他待执行任务的事件编号,所述从所述待执行任务流中获取所述事件信息指定的待执行任务,包括:判断所述待执行任务流支持的事件编号中是否包括所述事件信息中的事件编号,若包括,则获取所述头节点上存储的所述待执行任务流支持的事件编号与所述成员节点的匹配关系;依据所述事件信息中的事件编号、所述匹配关系获取对应的所述成员节点;依据所述成员节点获取对应的所述待执行任务。

根据本发明的一个实施例,所述反馈信息还包括事件反馈信息,所述事件反馈信息为所述事件信息指定执行的所述待执行任务的反馈信息,所述事件反馈信息包括所述事件编号、事件执行结果,所述事件执行结果为所述事件信息指定执行的所述待执行任务执行后的返回数据,所述自动化任务发放方法还包括:若所述反馈信息为所述事件反馈信息,则依据所述事件编号将所述事件执行结果发送给对应的所述自动化机器人。

根据本发明的一个实施例,所述成员节点上还存储有节点状态,所述反馈信息还包括完成信息,所述完成信息包括所述待执行任务的完成状态、返回数据,所述返回数据为所述待执行任务执行后的结果数据,所述自动化任务发放方法还包括:若所述反馈信息为所述当前待执行任务的完成信息,则设置所述当前待执行任务对应的所述成员节点的节点状态为所述完成状态,并依据所述返回数据更新所述成员节点上的所述任务参数。

根据本发明的一个实施例,所述完成状态包括异常态,所述自动化任务发放方法还包括:若所述反馈信息为所述当前待执行任务的完成信息,则当所述完成状态为所述异常态时,设置所述当前待执行任务对应的所述成员节点的节点状态为异常态,并发送异常通知。

根据本发明的一个实施例,所述完成状态还包括完成态,所述成员节点上还存储有节点入口条件,所述依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人前,还包括:按照所述待执行任务流的任务执行顺序判断所述当前待执行任务对应的成员节点的前一个成员节点上的所述节点状态是否为所述完成态,若是,则判断所述当前待执行任务对应的成员节点上的所述节点入口条件是否满足,若满足,则获取所述当前待执行任务对应的成员节点上的所述机器人类型。

参阅图5,图5是本发明一种实施例的存储介质的结构示意图。如图5所示存储有计算机可读指令41的存储介质,该计算机可读指令41被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:

获取自动化机器人配置信息;获取待执行任务流,所述待执行任务流包括至少一个待执行任务,所述待执行任务包括执行所述待执行任务所需的机器人类型;按照所述待执行任务流的任务执行顺序,依次执行如下步骤:依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人,并将所述当前待执行任务发放至所述自动化机器人;接收反馈信息,所述反馈信息包括事件信息,所述事件信息用于指定当前执行的待执行任务所依赖的其他待执行任务;若所述反馈信息为事件信息,则从所述待执行任务流中获取所述事件信息指定的待执行任务,依据所述事件信息指定的待执行任务中的所述机器人类型从所述自动化机器人配置信息中选取另一自动化机器人,将所述事件信息指定的待执行任务发放至所述另一自动化机器人。

根据本发明的一个实施例,所述待执行任务流为双向链表,所述双向链表包括一个头节点及至少一个成员节点,所述头节点上存储有所述待执行任务流的全局变量,每个所述成员节点上存储有一个所述待执行任务的任务脚本、任务参数及所述待执行任务所需的机器人类型,所述依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人,并将所述当前待执行任务发放至所述自动化机器人,包括:依据当前待执行任务对应成员节点上的机器人类型从所述自动化机器人配置信息中选取所述自动化机器人;将所述当前待执行任务对应成员节点上的所述任务脚本、所述任务参数及所述头节点上的所述全局变量发放至所述自动化机器人。

根据本发明的一个实施例,所述头节点还存储有所述待执行任务流支持的事件编号,所述事件信息包括所述当前待执行任务所依赖的其他待执行任务的事件编号,所述从所述待执行任务流中获取所述事件信息指定的待执行任务,包括:判断所述待执行任务流支持的事件编号中是否包括所述事件信息中的事件编号,若包括,则获取所述头节点上存储的所述待执行任务流支持的事件编号与所述成员节点的匹配关系;依据所述事件信息中的事件编号、所述匹配关系获取对应的所述成员节点;依据所述成员节点获取对应的所述待执行任务。

根据本发明的一个实施例,所述反馈信息还包括事件反馈信息,所述事件反馈信息为所述事件信息指定执行的所述待执行任务的反馈信息,所述事件反馈信息包括所述事件编号、事件执行结果,所述事件执行结果为所述事件信息指定执行的所述待执行任务执行后的返回数据,所述自动化任务发放方法还包括:若所述反馈信息为所述事件反馈信息,则依据所述事件编号将所述事件执行结果发送给对应的所述自动化机器人。

根据本发明的一个实施例,所述成员节点上还存储有节点状态,所述反馈信息还包括完成信息,所述完成信息包括所述待执行任务的完成状态、返回数据,所述返回数据为所述待执行任务执行后的结果数据,所述自动化任务发放方法还包括:若所述反馈信息为所述当前待执行任务的完成信息,则设置所述当前待执行任务对应的所述成员节点的节点状态为所述完成状态,并依据所述返回数据更新所述成员节点上的所述任务参数。

根据本发明的一个实施例,所述完成状态包括异常态,所述自动化任务发放方法还包括:若所述反馈信息为所述当前待执行任务的完成信息,则当所述完成状态为所述异常态时,设置所述当前待执行任务对应的所述成员节点的节点状态为异常态,并发送异常通知。

根据本发明的一个实施例,所述完成状态还包括完成态,所述成员节点上还存储有节点入口条件,所述依据所述待执行任务流中的当前待执行任务的机器人类型从所述自动化机器人配置信息中选取自动化机器人前,还包括:按照所述待执行任务流的任务执行顺序判断所述当前待执行任务对应的成员节点的前一个成员节点上的所述节点状态是否为所述完成态,若是,则判断所述当前待执行任务对应的成员节点上的所述节点入口条件是否满足,若满足,则获取所述当前待执行任务对应的成员节点上的所述机器人类型。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

相关技术
  • 自动化任务发放方法、执行方法、设备及存储介质
  • 任务自动化执行方法、装置、电子设备及存储介质
技术分类

06120112278681