您好,欢迎来到星星旅游。
搜索
您的当前位置:首页脚本扩展方法、装置、计算机设备和存储介质[发明专利]

脚本扩展方法、装置、计算机设备和存储介质[发明专利]

来源:星星旅游
(19)中华人民共和国国家知识产权局

(12)发明专利申请

(10)申请公布号 CN 112306637 A(43)申请公布日 2021.02.02

(21)申请号 202011227806.6(22)申请日 2020.11.06

(71)申请人 深圳市广和通无线股份有限公司

地址 518100 广东省深圳市南山区南海大

道1057号科技大厦二期A栋501A号(72)发明人 张天瑜 张建国 许宁 舒敏 

张东锋 候旭东 (74)专利代理机构 广州华进联合专利商标代理

有限公司 44224

代理人 吴平(51)Int.Cl.

G06F 9/455(2006.01)G06F 9/445(2018.01)G06F 9/4401(2018.01)

权利要求书2页 说明书10页 附图5页

()发明名称

脚本扩展方法、装置、计算机设备和存储介质

(57)摘要

本申请涉及一种脚本扩展方法、装置、计算机设备和存储介质。所述方法包括:加载扩展脚本;所述扩展脚本是用于实现定制化功能的预先编写的脚本;通过脚本解释器,将所述扩展脚本解释成执行任务引擎所能识别的执行任务命令;通过虚拟通道将所述执行任务命令发送至所述执行任务引擎;通过所述执行任务引擎执行所述执行任务命令,生成执行结果并返回至所述虚拟通道;将所述执行结果通过所述虚拟通道返回至规则引擎,以与外部进行交互。采用本方法能够节约硬件成本。CN 112306637 ACN 112306637 A

权 利 要 求 书

1/2页

1.一种脚本扩展方法,其特征在于,所述方法包括:加载扩展脚本;所述扩展脚本是用于实现定制化功能的预先编写的脚本;通过脚本解释器,将所述扩展脚本解释成执行任务引擎所能识别的执行任务命令;通过虚拟通道将所述执行任务命令发送至所述执行任务引擎;通过所述执行任务引擎执行所述执行任务命令,生成执行结果并返回至所述虚拟通道;

将所述执行结果通过所述虚拟通道返回至规则引擎,以与外部进行交互。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:通过规则引擎执行开机脚本;在执行开机脚本后,通过所述规则引擎检测是否存在待执行的扩展脚本;当检测到存在待执行的所述扩展脚本时,则执行所述加载所述扩展脚本的步骤以及后续步骤,直至将所述执行结果通过所述虚拟通道返回至规则引擎,以实现对所述扩展脚本的执行。

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:若待执行的扩展脚本为多个,则在执行当前的扩展脚本后、且达到预设时间间隔时,将下一个扩展脚本作为当前的扩展脚本,返回执行所述加载所述扩展脚本的步骤以及后续步骤,以执行所述下一个扩展脚本。

4.根据权利要求2所述的方法,其特征在于,所述方法还包括:当检测到不存在待执行的所述扩展脚本时,则通过所述规则引擎执行休眠脚本,以进入休眠状态。

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:进入休眠状态后,通过所述规则引擎继续检测是否存在待执行的扩展脚本;当检测到存在待执行的扩展脚本时,则执行唤醒脚本,并在唤醒后,返回执行所述加载所述扩展脚本的步骤。6.根据权利要求1所述的方法,其特征在于,所述通过虚拟通道将所述执行任务命令发送至所述执行任务引擎之后,所述方法还包括:

若所述执行任务命令的字段为所述执行任务引擎所能识别的字段,则执行所述通过所述执行任务引擎执行所述执行任务命令的步骤;

当所述执行任务命令的字段包含所述执行任务引擎无法识别的字段,则通过所述虚拟通道通知脚本解释器对所述扩展脚本重新解析。

7.根据权利要求1至6中任一项所述的方法,其特征在于,针对一个扩展脚本解释得到的执行任务命令为多个;

所述通过所述执行任务引擎执行所述执行任务命令,生成执行结果包括:在通过所述执行任务引擎执行多个所述执行任务命令的过程中,将针对在先的目标执行任务命令的输出,重定向为下一条执行任务命令的输入,直至执行完多个所述执行任务命令,生成执行结果;

其中,所述在先的目标执行任务命令,是在先已执行完的、且需要将输出做重定向输入的执行任务命令。

2

CN 112306637 A

权 利 要 求 书

2/2页

8.一种脚本扩展装置,其特征在于,所述装置包括:加载模块,用于加载扩展脚本;所述扩展脚本是用于实现定制化功能的预先编写的脚本;

解释模块,用于通过脚本解释器,将所述扩展脚本解释成执行任务引擎所能识别的执行任务命令;

发送模块,用于通过虚拟通道将所述执行任务命令发送至所述执行任务引擎;生成模块,用于通过所述执行任务引擎执行所述执行任务命令,生成执行结果并返回至所述虚拟通道;

返回模块,用于将所述执行结果通过所述虚拟通道返回至规则引擎,以与外部进行交互。

9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。

3

CN 112306637 A

说 明 书

脚本扩展方法、装置、计算机设备和存储介质

1/10页

技术领域

[0001]本申请涉及计算机技术领域,特别是涉及一种脚本扩展方法、装置、计算机设备和存储介质。

背景技术

[0002]随着计算机技术的发展,相关技术人员为了实现通信设备与外部设备的交互,通常需要给通信设备定制相关功能。实现给通信设备定制相关功能的传统方法,要么是通过在开放式计算机系统中加入与定制的相关功能对应的代码这种方法来实现,要么是通过增加微控制单元这种方法来实现。

[0003]在开放式计算机系统中加入与定制的相关功能对应的代码这种传统方法,对内存以及闪存的要求较高。通过增加微控制单元这种传统方法,则需要额外购置微控制单元。所以,传统方法都需要较高的硬件成本。发明内容

[0004]基于此,有必要针对上述技术问题,提供一种能够节省硬件成本的脚本扩展方法、装置、计算机设备和存储介质。[0005]一种脚本扩展方法,所述方法包括:[0006]加载扩展脚本;所述扩展脚本是用于实现定制化功能的预先编写的脚本;[0007]通过脚本解释器,将所述扩展脚本解释成执行任务引擎所能识别的执行任务命令;

[0008]通过虚拟通道将所述执行任务命令发送至所述执行任务引擎;[0009]通过所述执行任务引擎执行所述执行任务命令,生成执行结果并返回至所述虚拟通道;

[0010]将所述执行结果通过所述虚拟通道返回至规则引擎,以与外部进行交互。[0011]在其中一个实施例中,所述方法还包括:[0012]通过规则引擎执行开机脚本;[0013]在执行开机脚本后,通过所述规则引擎检测是否存在待执行的扩展脚本;[0014]当检测到存在待执行的所述扩展脚本时,则执行所述加载所述扩展脚本的步骤以及后续步骤,直至将所述执行结果通过所述虚拟通道返回至规则引擎,以实现对所述扩展脚本的执行。

[0015]在其中一个实施例中,所述方法还包括:[0016]若待执行的扩展脚本为多个,则[0017]在执行当前的扩展脚本后、且达到预设时间间隔时,将下一个扩展脚本作为当前的扩展脚本,返回执行所述加载所述扩展脚本的步骤以及后续步骤,以执行所述下一个扩展脚本。

[0018]在其中一个实施例中,所述方法还包括:

4

CN 112306637 A[0019]

说 明 书

2/10页

当检测到不存在待执行的所述扩展脚本时,则通过所述规则引擎执行休眠脚本,

以进入休眠状态。

[0020]在其中一个实施例中,所述方法还包括:[0021]进入休眠状态后,通过所述规则引擎继续检测是否存在待执行的扩展脚本;当检测到存在待执行的扩展脚本时,则[0022]执行唤醒脚本,并在唤醒后,返回执行所述加载所述扩展脚本的步骤。[0023]在其中一个实施例中,所述通过虚拟通道将所述执行任务命令发送至所述执行任务引擎之后,所述方法还包括:

[0024]若所述执行任务命令的字段为所述执行任务引擎所能识别的字段,则执行所述通过所述执行任务引擎执行所述执行任务命令的步骤;

[0025]当所述执行任务命令的字段包含所述执行任务引擎无法识别的字段,则通过所述虚拟通道通知脚本解释器对所述扩展脚本重新解析。[0026]在其中一个实施例中,针对一个扩展脚本解释得到的执行任务命令为多个;[0027]所述通过所述执行任务引擎执行所述执行任务命令,生成执行结果包括:[0028]在通过所述执行任务引擎执行多个所述执行任务命令的过程中,将针对在先的目标执行任务命令的输出,重定向为下一条执行任务命令的输入,直至执行完多个所述执行任务命令,生成执行结果;[0029]其中,所述在先的目标执行任务命令,是在先已执行完的、且需要将输出做重定向输入的执行任务命令。

[0030]一种脚本扩展装置,所述装置包括:[0031]加载模块,用于加载扩展脚本;所述扩展脚本是用于实现定制化功能的预先编写的脚本;

[0032]解释模块,用于通过脚本解释器,将所述扩展脚本解释成执行任务引擎所能识别的执行任务命令;[0033]发送模块,用于通过虚拟通道将所述执行任务命令发送至所述执行任务引擎;[0034]生成模块,用于通过所述执行任务引擎执行所述执行任务命令,生成执行结果并返回至所述虚拟通道;[0035]返回模块,用于将所述执行结果通过所述虚拟通道返回至规则引擎,以与外部进行交互。

[0036]一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:[0037]加载扩展脚本;所述扩展脚本是用于实现定制化功能的预先编写的脚本;[0038]通过脚本解释器,将所述扩展脚本解释成执行任务引擎所能识别的执行任务命令;

[0039]通过虚拟通道将所述执行任务命令发送至所述执行任务引擎;[0040]通过所述执行任务引擎执行所述执行任务命令,生成执行结果并返回至所述虚拟通道;

[0041]将所述执行结果通过所述虚拟通道返回至规则引擎,以与外部进行交互。[0042]一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执

5

CN 112306637 A

说 明 书

3/10页

行时实现以下步骤:[0043]加载扩展脚本;所述扩展脚本是用于实现定制化功能的预先编写的脚本;[0044]通过脚本解释器,将所述扩展脚本解释成执行任务引擎所能识别的执行任务命令;

[0045]通过虚拟通道将所述执行任务命令发送至所述执行任务引擎;[0046]通过所述执行任务引擎执行所述执行任务命令,生成执行结果并返回至所述虚拟通道;

[0047]将所述执行结果通过所述虚拟通道返回至规则引擎,以与外部进行交互。[0048]上述脚本扩展方法、装置、计算机设备和存储介质,通过加载扩展脚本,并通过脚本解释器解释成执行任务引擎所能识别的执行任务命令,再通过所述虚拟通道将执行任务命令发送给执行任务引擎以完成执行。无需额外增加硬件成本即可通过执行任务引擎完成执行任务命令的执行并生成执行结果。最后,将生成的所述执行结果通过所述虚拟通道返回至规则引擎以与外部进行交互。无需额外增加用于控制终端与外部进行交互的硬件单元,即可将生成的执行结果传送到外部进行交互。整个过程中,没有涉及额外的硬件成本花销,因此,该脚本扩展方法能够节省硬件成本。附图说明

[0049]图1为一个实施例中脚本扩展方法的流程示意图;[0050]图2为一个实施例中脚本扩展步骤的流程示意图;[0051]图3为一个实施例中脚本扩展步骤的流程示意图;[0052]图4为一个实施例中脚本扩展装置的结构框图;[0053]图5为一个实施例中脚本扩展装置的结构框图;[00]图6为一个实施例中计算机设备的内部结构图。

具体实施方式

[0055]为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

[0056]在一个实施例中,如图1所示,提供了一种脚本扩展方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,终端可以是移动终端、计算机或者专用设备等。其中,移动终端比如手机、平板电脑、手持式POS(point of sale,即销售终端)机。计算机比如台式计算机、笔记本电脑等。具有调制解调功能的专用设备比如调制解调器(英文名Modem),俗称“猫”等。该脚本扩展方法具体包括以下步骤:[0057]步骤102,加载扩展脚本;扩展脚本是用于实现定制化功能的预先编写的脚本。[0058]具体地,用户根据需要实现的定制化功能预先编写了扩展脚本。终端加载该扩展脚本。

[0059]在一个实施例中,用户根据需要实现的定制化功能预先编写了扩展脚本并上传到预置的服务器。终端可以在预置的服务器下载扩展脚本。[0060]步骤104,通过脚本解释器,将扩展脚本解释成执行任务引擎所能识别的执行任务

6

CN 112306637 A

说 明 书

4/10页

命令。

其中,脚本解释器,是将扩展脚本翻译成执行任务引擎所能识别的执行任务命令

的解释器。执行任务引擎,是用于执行任务命令的引擎。执行任务命令,是与扩展脚本具有同样的功能、且只有执行任务引擎才能执行的命令。[0062]具体地,终端将加载的扩展脚本通过脚本解释器进行解释,以将扩展脚本解释成执行任务引擎所能识别的执行任务命令。[0063]在一个实施例中,执行任务命令,可以是“AT(attention)”命令。[00]在一个实施例中,执行任务引擎,可以是“AT”引擎。[0065]可以理解,针对一个扩展脚本解释得到的执行任务命令可以为一个或多个。多个即为至少两个。

[0066]可以理解,直接将扩展脚本解释成执行任务引擎所能识别的执行任务命令,由于执行任务命令的功能流已知,若执行任务命令的过程出现问题,可以直接根据功能流快速定位出现问题的执行任务命令,从而可以快速纠正出现问题的执行任务命令,提高了生成执行结果的效率。[0067]步骤106,通过虚拟通道将执行任务命令发送至执行任务引擎。[0068]其中,虚拟通道,是用于实现执行任务引擎的输入和输出的逻辑通道。[0069]可以理解,终端上的脚本解释器通过虚拟通道向执行任务引擎输入所解释得到的执行任务命令,而执行任务引擎则可以将执行结果通过虚拟通道输出给规则引擎。因此,由虚拟通道实现执行任务引擎的输入和输出。[0070]其中,执行结果,是执行任务引擎执行完执行任务命令后生成的结果。规则引擎,是根据预选设定的规则来执行对应的脚本的引擎。规则引擎除了用于支持执行任务命令的执行外,由于本身自带脚本语言都支持的条件判断、字符比较等功能,还可以用于支持用户定义简单的数据处理流程。[0071]步骤108,通过执行任务引擎执行该执行任务命令,生成执行结果并返回至虚拟通道。

[0072]具体地,终端上的执行任务引擎通过虚拟通道接收到脚本解释器发送的执行任务命令。执行任务引擎可以执行该执行任务命令,生成执行结果。进一步,终端上的执行任务引擎将生成的执行结果返回到虚拟通道。[0073]可以理解,当针对一个扩展脚本解释得到的执行任务命令为多个时,执行任务引擎则可以执行完所有的执行任务命令后,生成最终的一个执行结果。[0074]步骤110,将执行结果通过虚拟通道返回至规则引擎,以与外部进行交互。[0075]具体地,终端上的规则引擎通过虚拟通道接收到执行结果。进一步地,终端上的规则引擎将执行结果发送到外部,以与外部进行交互。[0076]上述脚本扩展方法、装置、计算机设备和存储介质,通过加载扩展脚本,并通过脚本解释器解释成执行任务引擎所能识别的执行任务命令,再通过虚拟通道将执行任务命令发送给执行任务引擎以完成执行。无需额外增加硬件成本即可通过执行任务引擎完成执行任务命令的执行并生成执行结果。最后,将生成的执行结果通过虚拟通道返回至规则引擎以与外部进行交互。无需额外增加用于控制终端与外部进行交互的硬件单元,即可将生成的执行结果传送到外部进行交互。整个过程中,没有涉及额外的硬件成本花销,因此,该脚

7

[0061]

CN 112306637 A

说 明 书

5/10页

本扩展方法能够节省硬件成本。[0077]在一个实施例中,方法还包括:通过规则引擎执行开机脚本;在执行开机脚本后,通过规则引擎检测是否存在待执行的扩展脚本;当检测到存在待执行的扩展脚本时,则执行加载扩展脚本的步骤以及后续步骤,直至将执行结果通过虚拟通道返回至规则引擎,以实现对扩展脚本的执行。[0078]其中,开机脚本,是执行后能够使终端开机的脚本。[0079]具体地,终端上的规则引擎执行开机脚本。终端上的规则引擎在执行开机脚本后,进一步检测是否存在待执行的扩展脚本。当终端上的规则引擎检测到存在待执行的扩展脚本时,则可以执行该扩展脚本。可以理解,上述步骤102~110即为执行每个扩展脚本的具体步骤,因此,可以执行加载扩展脚本的步骤以及后续步骤,直至将执行结果通过虚拟通道返回至规则引擎,以实现对扩展脚本的执行。[0080]在一个实施例中,开机脚本,只在终端通电的时候执行,以完成终端上的外部设备的初始状态的配置。例如终端上的规则引擎执行开机脚本,以完成GPIO的高低电平的设置,以及通电时外挂设备的初始化等,还可以完成配置项的设置,例如设置定时任务对应的预设时间间隔等。

[0081]在一个实施例中,当检测到存在待执行的扩展脚本时,则可以定时执行该扩展脚本。可以理解,待执行的扩展脚本可以为一个或多个,当有多个待执行的扩展脚本时,则可以定时地依次执行各个扩展脚本。[0082]本实施例中,通过终端上的规则引擎先检测是否存在待执行的扩展脚本,存在待执行的扩展脚本再执行加载扩展脚本的步骤以及后续步骤,能够避免不存在待执行的扩展脚本时,终端执行了无用的步骤,节省了终端的能耗。[0083]在一个实施例中,方法还包括:若待执行的扩展脚本为多个,则在执行当前的扩展脚本后、且达到预设时间间隔时,将下一个扩展脚本作为当前的扩展脚本,返回执行加载扩展脚本的步骤以及后续步骤,以执行下一个扩展脚本。[0084]具体地,若待执行的扩展脚本为多个,终端上的规则引擎则在执行当前的扩展脚本后、且达到预设时间间隔时,将下一个扩展脚本作为当前的扩展脚本,返回执行加载扩展脚本的步骤以及后续步骤,以执行下一个扩展脚本。即,针对每个扩展脚本可以执行步骤102~110,以实现对该扩展脚本的执行,当执行一个扩展脚本后,则定时地执行下一个扩展脚本,即继续针对下一个扩展脚本执行步骤102~110,以实现对下一个扩展脚本的执行。[0085]本实施例中,终端上的规则引擎在执行当前的扩展脚本后、且达到预设时间间隔时,再将下一个扩展脚本作为当前的扩展脚本,返回执行加载扩展脚本的步骤以及后续步骤,以执行下一个扩展脚本。由此,终端上的规则引擎便可以有条理地将所有的待执行的扩展脚本有序地执行完,且待执行的扩展脚本之间的执行互不影响。[0086]在一个实施例中,方法还包括:当检测到不存在待执行的扩展脚本时,则通过规则引擎执行休眠脚本,以进入休眠状态。[0087]其中,休眠脚本,是执行后用于使终端进入休眠状态的脚本。[0088]具体地,当终端上的规则引擎检测到不存在待执行的扩展脚本时,则执行休眠脚本。终端上的规则引擎执行完休眠脚本,终端便进入休眠状态。[00]本实施例中,终端上的规则引擎检测到不存在待执行的扩展脚本时,通过执行休

8

CN 112306637 A

说 明 书

6/10页

眠脚本,使终端进入休眠状态,能够节省终端的能耗。[0090]在一个实施例中,方法还包括:进入休眠状态后,通过规则引擎继续检测是否存在待执行的扩展脚本;当检测到存在待执行的扩展脚本时,则执行唤醒脚本,并在唤醒后,返回执行加载扩展脚本的步骤。[0091]其中,唤醒脚本,是执行后能够使休眠状态的终端恢复成进入休眠前的状态。[0092]具体地,终端进入休眠状态后,通过规则引擎继续检测是否存在待执行的扩展脚本。当终端上的规则引擎检测到存在待执行的扩展脚本时,则执行唤醒脚本。终端上的规则引擎将终端唤醒后,返回执行加载扩展脚本的步骤以及后续步骤。[0093]本实施例中,通过终端上的规则引擎检测到存在待执行的扩展脚本时,则执行唤醒脚本,能够使终端从节省能耗的休眠状态迅速恢复到休眠前的状态,以执行加载扩展脚本的步骤以及后续步骤。[0094]在一个实施例中,通过虚拟通道将执行任务命令发送至执行任务引擎之后,方法还包括:若执行任务命令的字段为执行任务引擎所能识别的字段,则执行通过执行任务引擎执行该执行任务命令的步骤;当执行任务命令的字段包含执行任务引擎无法识别的字段,则通过虚拟通道通知脚本解释器对扩展脚本重新解析。[0095]具体地,若执行任务命令的字段均为能识别的字段,终端上的执行任务引擎执行该执行任务命令,生成执行结果并返回至虚拟通道;将执行结果通过虚拟通道返回至规则引擎,以与外部进行交互。若执行任务命令的字段存在不能识别的字段,终端上的执行任务引擎则通过虚拟通道通知脚本解释器对扩展脚本重新解析。[0096]在一个实施例中,脚本解释器接收到通知后,可以只重新解释存在不能识别的字段的执行任务命令,也可以将整个加载的扩展脚本重新解析。[0097]本实施例中,若存在不能识别的字段的执行任务命令就通过虚拟通道通知脚本解释器对扩展脚本重新解析,可以确保执行任务引擎能够顺利完成执行任务命令的执行。[0098]在一个实施例中,针对一个扩展脚本解释得到的执行任务命令为多个;通过执行任务引擎执行该执行任务命令,生成执行结果包括:在通过执行任务引擎执行多个执行任务命令的过程中,将针对在先的目标执行任务命令的输出,重定向为下一条执行任务命令的输入,直至执行完多个执行任务命令,生成执行结果;其中,在先的目标执行任务命令,是在先已执行完的、且需要将输出做重定向输入的执行任务命令。[0099]其中,重定向(Redirect),是将在先执行任务命令的执行结果重新定位,以作为在后执行任务命令的输入。[0100]可以理解,比如,下一条执行任务命令是将两个因子相加,通过重定向,可以将在先的目标执行任务命令执行后生成的第一输出结果和第二输出结果,重定向为下一条执行任务命令的第一输入因子和第二输入因子,以执行下一条执行任务命令,即完成两个因子相加。

[0101]具体地,在通过执行任务引擎执行多个执行任务命令的过程中,终端上的执行任务引擎将针对在先的目标执行任务命令的输出,作为重定向对应的下一条执行任务命令的输入,直至执行完多个执行任务命令,生成执行结果。[0102]本实施例中,通过将针对在先的目标执行任务命令的输出,重定向为下一条执行任务命令的输入,能够使执行任务引擎根据所规定的方向完成执行任务命令的执行,以生

9

CN 112306637 A

说 明 书

7/10页

成执行结果。

[0103]在一个实施例中,如图2的脚本扩展步骤的流程示意图,终端加载扩展脚本。终端上的脚本解释器通过虚拟通道,将扩展脚本解释成执行任务引擎所能识别的执行任务命令发送至执行任务引擎。若执行任务命令的字段存在不能识别的字段,终端上的执行任务引擎则通过虚拟通道通知脚本解释器对扩展脚本重新解析。若执行任务命令的字段均为能识别的字段,终端上的执行任务引擎执行则执行该执行任务命令。终端上的执行任务引擎执行将根据执行任务命令生成的执行结果通过虚拟通道返回至规则引擎。终端上的规则引擎将执行结果发送到外部,以与外部进行交互。[0104]在一个实施例中,如图3的脚本扩展步骤的流程示意图,终端接通电源(即“模块上电”),通过规则引擎执行开机脚本。终端上的规则引擎在执行开机脚本后,进一步检测是否存在待执行的扩展脚本。若待执行的扩展脚本为多个,终端上的规则引擎则在执行当前的扩展脚本后、且达到预设时间间隔时,将下一个扩展脚本作为当前的扩展脚本,返回执行加载扩展脚本的步骤以及后续步骤,以执行下一个扩展脚本。当终端上的规则引擎检测到不存在待执行的扩展脚本时,则执行休眠脚本。终端上的规则引擎执行完休眠脚本,终端便进入休眠状态。终端进入休眠状态后,通过规则引擎继续检测是否存在待执行的扩展脚本。当终端上的规则引擎检测到存在待执行的扩展脚本时,则执行唤醒脚本。终端上的规则引擎将终端唤醒后,返回执行加载扩展脚本的步骤。当终端上的规则引擎超过时长阈值仍未检测到存在待执行的扩展脚本时,则中断唤醒。[0105]应该理解的是,虽然图1至图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序,这些步骤可以以其它的顺序执行。而且,图1至图3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

[0106]在一个实施例中,如图4所示,提供了一种脚本扩展装置400,包括:加载模块404、解释模块406、发送模块408、执行模块410和返回模块412,其中:[0107]加载模块404,用于加载扩展脚本;扩展脚本是用于实现定制化功能的预先编写的脚本。

[0108]解释模块406,用于通过脚本解释器,将扩展脚本解释成执行任务引擎所能识别的执行任务命令。

[0109]发送模块408,用于通过虚拟通道将执行任务命令发送至执行任务引擎。[0110]执行模块410,用于通过执行任务引擎执行该执行任务命令,生成执行结果并返回至虚拟通道。

[0111]返回模块412,用于将执行结果通过虚拟通道返回至规则引擎,以与外部进行交互。

[0112]在一个实施例中,开机模块401,用于通过规则引擎执行开机脚本;在执行开机脚本后,通过规则引擎检测是否存在待执行的扩展脚本;当检测到存在待执行的扩展脚本时,则执行加载扩展脚本的步骤以及后续步骤,直至将执行结果通过虚拟通道返回至规则引

10

CN 112306637 A

说 明 书

8/10页

擎,以实现对扩展脚本的执行。[0113]在一个实施例中,定时模块402,用于若待执行的扩展脚本为多个,则在执行当前的扩展脚本后、且达到预设时间间隔时,将下一个扩展脚本作为当前的扩展脚本,返回执行加载扩展脚本的步骤以及后续步骤,以执行下一个扩展脚本。[0114]在一个实施例中,休眠模块414,用于当检测到不存在待执行的扩展脚本时,则通过规则引擎执行休眠脚本,以进入休眠状态。[0115]如图5所示,在一个实施例中,该装置还包括:开机模块401、定时模块402、休眠模块414和唤醒模块416;[0116]唤醒模块416,用于进入休眠状态后,通过规则引擎继续检测是否存在待执行的扩展脚本;当检测到存在待执行的扩展脚本时,则执行唤醒脚本,并在唤醒后,返回执行加载扩展脚本的步骤。

[0117]在一个实施例中,执行模块410,还用于若执行任务命令的字段为执行任务引擎所能识别的字段,则执行通过执行任务引擎执行该执行任务命令的步骤;当执行任务命令的字段包含执行任务引擎无法识别的字段,则通过虚拟通道通知脚本解释器对扩展脚本重新解析。

[0118]在一个实施例中,执行模块410,还用于在通过执行任务引擎执行多个执行任务命令的过程中,将针对在先的目标执行任务命令的输出,重定向为下一条执行任务命令的输入,直至执行完多个执行任务命令,生成执行结果;其中,在先的目标执行任务命令,是在先已执行完的、且需要将输出做重定向输入的执行任务命令。

[0119]关于脚本扩展装置的具体限定可以参见上文中对于脚本扩展方法的限定,在此不再赘述。上述脚本扩展装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。[0120]在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种脚本扩展方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。[0121]本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。[0122]在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:[0123]加载扩展脚本;扩展脚本是用于实现定制化功能的预先编写的脚本;

11

CN 112306637 A[0124]

说 明 书

9/10页

通过脚本解释器,将扩展脚本解释成执行任务引擎所能识别的执行任务命令;

[0125]通过虚拟通道将执行任务命令发送至执行任务引擎;[0126]通过执行任务引擎执行该执行任务命令,生成执行结果并返回至虚拟通道;[0127]将执行结果通过虚拟通道返回至规则引擎,以与外部进行交互。[0128]在一个实施例中,处理器执行计算机程序时还实现以下步骤:通过规则引擎执行开机脚本;在执行开机脚本后,通过规则引擎检测是否存在待执行的扩展脚本;当检测到存在待执行的扩展脚本时,则执行加载扩展脚本的步骤以及后续步骤,直至将执行结果通过虚拟通道返回至规则引擎,以实现对扩展脚本的执行。[0129]在一个实施例中,处理器执行计算机程序时还实现以下步骤:若待执行的扩展脚本为多个,则在执行当前的扩展脚本后、且达到预设时间间隔时,将下一个扩展脚本作为当前的扩展脚本,返回执行加载扩展脚本的步骤以及后续步骤,以执行下一个扩展脚本。[0130]在一个实施例中,处理器执行计算机程序时还实现以下步骤:当检测到不存在待执行的扩展脚本时,则通过规则引擎执行休眠脚本,以进入休眠状态。[0131]在一个实施例中,处理器执行计算机程序时还实现以下步骤:进入休眠状态后,通过规则引擎继续检测是否存在待执行的扩展脚本;当检测到存在待执行的扩展脚本时,则执行唤醒脚本,并在唤醒后,返回执行加载扩展脚本的步骤。在一个实施例中,处理器执行计算机程序时还实现以下步骤:若执行任务命令的字段为执行任务引擎所能识别的字段,则执行通过执行任务引擎执行该执行任务命令的步骤;当执行任务命令的字段包含执行任务引擎无法识别的字段,则通过虚拟通道通知脚本解释器对扩展脚本重新解析。[0132]在一个实施例中,处理器执行计算机程序时还实现以下步骤:在通过执行任务引擎执行多个执行任务命令的过程中,将针对在先的目标执行任务命令的输出,重定向为下一条执行任务命令的输入,直至执行完多个执行任务命令,生成执行结果;其中,在先的目标执行任务命令,是在先已执行完的、且需要将输出做重定向输入的执行任务命令。[0133]在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:[0134]加载扩展脚本;扩展脚本是用于实现定制化功能的预先编写的脚本;[0135]通过脚本解释器,将扩展脚本解释成执行任务引擎所能识别的执行任务命令;[0136]通过虚拟通道将执行任务命令发送至执行任务引擎;[0137]通过执行任务引擎执行该执行任务命令,生成执行结果并返回至虚拟通道;[0138]将执行结果通过虚拟通道返回至规则引擎,以与外部进行交互。[0139]在一个实施例中,计算机程序被处理器执行时还实现以下步骤:通过规则引擎执行开机脚本;在执行开机脚本后,通过规则引擎检测是否存在待执行的扩展脚本;当检测到存在待执行的扩展脚本时,则执行加载扩展脚本的步骤以及后续步骤,直至将执行结果通过虚拟通道返回至规则引擎,以实现对扩展脚本的执行。[0140]在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若待执行的扩展脚本为多个,则在执行当前的扩展脚本后、且达到预设时间间隔时,将下一个扩展脚本作为当前的扩展脚本,返回执行加载扩展脚本的步骤以及后续步骤,以执行下一个扩展脚本。[0141]在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当检测到不存在待执行的扩展脚本时,则通过规则引擎执行休眠脚本,以进入休眠状态。

12

CN 112306637 A[0142]

说 明 书

10/10页

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:进入休眠状态后,

通过规则引擎继续检测是否存在待执行的扩展脚本;当检测到存在待执行的扩展脚本时,则执行唤醒脚本,并在唤醒后,返回执行加载扩展脚本的步骤。[0143]在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若执行任务命令的字段为执行任务引擎所能识别的字段,则执行通过执行任务引擎执行该执行任务命令的步骤;当执行任务命令的字段包含执行任务引擎无法识别的字段,则通过虚拟通道通知脚本解释器对扩展脚本重新解析。[0144]在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在通过执行任务引擎执行多个执行任务命令的过程中,将针对在先的目标执行任务命令的输出,重定向为下一条执行任务命令的输入,直至执行完多个执行任务命令,生成执行结果;其中,在先的目标执行任务命令,是在先已执行完的、且需要将输出做重定向输入的执行任务命令。[0145]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。

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

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

13

CN 112306637 A

说 明 书 附 图

1/5页

图1

14

CN 112306637 A

说 明 书 附 图

2/5页

图2

15

CN 112306637 A

说 明 书 附 图

3/5页

图3

16

CN 112306637 A

说 明 书 附 图

4/5页

图4

图5

17

CN 112306637 A

说 明 书 附 图

5/5页

图6

18

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- stra.cn 版权所有 赣ICP备2024042791号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务