[发明专利]一种任务自动执行方法及装置有效
申请号: | 201611192281.0 | 申请日: | 2016-12-21 |
公开(公告)号: | CN106844016B | 公开(公告)日: | 2018-09-25 |
发明(设计)人: | 李俊 | 申请(专利权)人: | 广州市申迪计算机系统有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫 |
地址: | 510000 广东省广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 任务 自动 执行 方法 装置 | ||
本发明提出了一种任务自动执行方法及装置,包括获取待执行任务,所述待执行任务包括执行事件和响应于所述执行事件的关联事件,以及运行环境参数;根据所述运行环境参数连接用于执行所述待执行任务的目标设备;向所述目标设备发送所述执行事件对应的控制指令以使得所述目标设备能够执行所述执行事件;获取执行结果;所述执行结果为来自所述目标设备的执行所述执行事件的结果;根据所述执行结果执行响应于所述执行事件的关联事件。本发明可支持需要与其它设备交互的复杂的任务流程的执行。
技术领域
本发明涉及计算机领域,具体涉及一种任务自动执行方法及装置。
背景技术
在电信领域或IP领域,经常要与大量机器交互以进行批量作业。现有技术中可以通过Expectit或者Perl的expect模块实现交互的任务,但是Expectit和Perl的expect模块均有其缺点。
Perl的expect模块的缺点为:
(1)不能与java或者Junit很好的集成;
(2)安装相对复杂:除了安装perl,还需要另外安装expect模块以及其它相关模块。一般需要通过源码编译安装。相比java,在跨平台(unix、linux、windows)方面,处于劣势;
(3)只提供最基础的发送命令跟匹配返回的功能,难以实现其他复杂的逻辑,例如单独设计一个或多个带分支执行的命令流程文件或数据;
(4)在匹配返回的终端结果的时候,如果关键字过于简单,例如命令提示符(#$>),可能会由于返回结果里面带有多个这样的关键字,而匹配了第一个,然后就发送下一个命令,这样会导致不可预知的错误。
Expectit的缺点为:
(1)只提供最基础的发送命令跟匹配返回的功能,难以实现其他复杂的逻辑,例如单独设计一个或多个带分支执行的命令流程文件或数据;
(2)在匹配返回的终端结果的时候,如果关键字过于简单,例如命令提示符(#$>),可能会由于返回结果里面带有多个这样的关键字,而匹配了第一个,然后就发送下一个命令,这样会导致不可预知的错误。
发明内容
为了解决上述技术问题,本发明提出了一种任务自动执行方法及装置。
本发明是以如下技术方案实现的:
一种任务自动执行方法,包括:
获取待执行任务,所述待执行任务包括执行事件和响应于所述执行事件的关联事件,以及运行环境参数;
根据所述运行环境参数连接用于执行所述待执行任务的目标设备;
向所述目标设备发送所述执行事件对应的控制指令以使得所述目标设备能够执行所述执行事件;
获取执行结果;所述执行结果为来自所述目标设备的执行所述执行事件的结果;
根据所述执行结果执行响应于所述执行事件的关联事件。
进一步地,所述执行事件包括执行参数和执行指令,所述向所述目标设备发送所述执行事件对应的控制指令以使得所述目标设备能够执行所述执行事件包括:
根据执行参数获取所述执行事件的实际参数;
根据所述实际参数和所述执行指令得到所述执行事件对应的控制指令;
将所述控制指令发送至目标设备。
进一步地,所述向所述目标设备发送所述执行事件对应的控制指令以使得所述目标设备能够执行所述执行事件之后,还包括:
若在预设的时间阈值之内未收到所述执行事件的执行结果,则进行超时处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州市申迪计算机系统有限公司,未经广州市申迪计算机系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611192281.0/2.html,转载请声明来源钻瓜专利网。