一种客户端运行管理方法及客户端与流程

文档序号:15759832发布日期:2018-10-26 19:09阅读:272来源:国知局
一种客户端运行管理方法及客户端与流程

本发明涉及通信技术领域,尤其涉及一种客户端运行管理方法及客户端。



背景技术:

目前,智能家居系统中,用户可以通过安装在手机、平板电脑、笔记本电脑等智能终端上的客户端控制智能家电设备。控制智能家电设备的客户端中,用于实现智能家电设备的控制逻辑是固化在客户端应用程序中的。

如果需要在客户端中增加智能家电设备的新的控制逻辑,则需要对客户端整体修改,以将新的控制逻辑加入到该客户端,或者,需要对客户端进行整体升级以将新的控制逻辑升级到该客户端。

随着智能设备(包括智能家电设备)的种类以及型号的增加,客户端中需要不断增加新的控制逻辑,这将导致客户端占用的存储空间增大、运行时占用的内存不断增大,并且很多情况下,升级所增加的控制逻辑对用户没有用处,冗余的升级操作导致客户端的运行效率下降,降低了用户体验。

鉴于此,需要寻求一种新的客户端管理方法,以解决在需要对客户端的控制逻辑进行调整时,对客户端整体升级,所导致的客户端占用的存储空间增大、运行时占用的内存增大以及冗余增大,以及运行效率下降的问题。



技术实现要素:

本发明实施例提供一种客户端运行管理方法及客户端,用以解决在需要对客户端的控制逻辑进行调整时,对客户端整体升级所导致的客户端占用的存储空间增大、运行时占用的内存增大以及冗余增大,以及运行效率下降的问题。

本发明实施例提供的具体技术方案如下:

本发明实施例提供了一种客户端运行管理方法,包括:

客户端向云服务器发送所绑定的智能设备的设备型号指示信息,并接收所述云服务器根据所述设备型号指示信息返回的控制逻辑插件,所述控制逻辑插件用于实现对所述智能设备的控制功能;

所述客户端保存接收的所述控制逻辑插件,并选择与对所述智能设备的当前控制操作相关的控制逻辑插件,将选择的控制逻辑插件加载到内存,并运行加载到内存的控制逻辑插件。

可能的实施方式中,所述控制逻辑插件包括原始控制命令帧获取接口、状态解析接口和命令操作的互斥判断接口中的一种或多种,其中,所述控制命令帧获取接口用于获取所述客户端的控制指令并返回所述控制指令对应的原始控制命令帧,所述状态解析接口用于获取所述客户端的工作状态指示并返回所述智能设备的工作状态的解析信息,所述命令操作的互斥判断接口用于获取所述客户端的控制指令并返回是否允许发送所述控制指令的相关信息。

可能的实施方式中,所述客户端运行加载到内存的控制逻辑插件,包括:

所述客户端获取用户的控制指令,根据所述控制指令调用所述加载到内存的控制逻辑插件的原始控制命令帧获取接口,获取所述原始控制命令帧获取接口返回的、与所述控制指令对应的原始控制命令帧,将所述原始控制命令帧发送给所述智能设备;

和/或,

所述客户端接收所述智能设备发送的工作状态指示,根据所述工作状态指示调用所述加载到内存的控制逻辑插件的状态解析接口,获取所述状态解析接口返回的所述工作状态指示的解析信息,根据所述解析信息显示所述智能设备的工作状态;

和/或,

所述客户端获取用户的控制指令,根据所述控制指令调用所述加载到内存的控制逻辑插件的命令操作的互斥判断接口,获取所述命令操作的互斥判断接口返回的提示信息,所述提示信息用于提示用户是否能够发送所述控制指令,和/或用于提示用户所述智能设备执行所述控制指令之后的状态变化。

可能的实施方式中,所述控制逻辑插件还包括授权接口,所述授权接口用于获取所述客户端的授权码并返回所述控制逻辑插件对所述授权码的验证结果;

所述客户端根据所述控制指令调用所述加载到内存的控制逻辑插件的原始控制命令帧获取接口之前,或者,根据所述工作状态指示调用所述加载到内存的控制逻辑插件的状态解析接口之前,或者,根据所述控制指令调用所述加载到内存控制逻辑插件的命令操作的互斥判断接口之前,包括:

所述客户端采用预设的授权码调用所述加载到内存的控制逻辑插件的授权接口,获取所述授权接口返回的对所述验证码的验证结果,并确定所述验证结果为所述授权码有效,其中,所述控制逻辑插件中保存对所述授权码的验证结果。

可能的实施方式中,所述云服务器返回的控制逻辑插件为:

所述设备型号指示信息对应的所有控制逻辑插件,或者,所述设备型号指示信息对应的有更新的控制逻辑插件。

本发明实施例还提供了一种客户端,包括:

通信模块,用于向云服务器发送所绑定的智能设备的设备型号指示信息,并接收所述云服务器根据所述设备型号指示信息返回的控制逻辑插件,所述控制逻辑插件用于实现对所述智能设备的控制功能;

处理模块,用于保存接收的所述控制逻辑插件,并选择与对所述智能设备的当前控制操作相关的控制逻辑插件,将选择的控制逻辑插件加载到内存,并运行加载到内存的控制逻辑插件。

可能的实施方式中,所述控制逻辑插件包括原始控制命令帧获取接口、状态解析接口和命令操作的互斥判断接口中的一种或多种,其中,所述控制命令帧获取接口用于获取所述客户端的控制指令并返回所述控制指令对应的原始控制命令帧,所述状态解析接口用于获取所述客户端的工作状态指示并返回所述智能设备的工作状态的解析信息,所述命令操作的互斥判断接口用于获取所述客户端的控制指令并返回是否允许发送所述控制指令的相关信息。

可能的实施方式中,所述处理模块具体用于:

获取用户的控制指令,根据所述控制指令调用所述加载到内存的控制逻辑插件的原始控制命令帧获取接口,获取所述原始控制命令帧获取接口返回的、与所述控制指令对应的原始控制命令帧,将所述原始控制命令帧发送给所述智能设备;

和/或,

接收所述智能设备发送的工作状态指示,根据所述工作状态指示调用所述加载到内存的控制逻辑插件的状态解析接口,获取所述状态解析接口返回的所述工作状态指示的解析信息,根据所述解析信息显示所述智能设备的工作状态;

和/或,

获取用户的控制指令,根据所述控制指令调用所述加载到内存的控制逻辑插件的命令操作的互斥判断接口,获取所述命令操作的互斥判断接口返回的提示信息,所述提示信息用于提示用户是否能够发送所述控制指令,和/或用于提示用户所述智能设备执行所述控制指令之后的状态变化。

可能的实施方式中,所述控制逻辑插件还包括授权接口,所述授权接口用于获取所述客户端的授权码并返回所述控制逻辑插件对所述授权码的验证结果;

所述处理模块还用于:

根据所述控制指令调用所述加载到内存的控制逻辑插件的原始控制命令帧获取接口之前,或者,根据所述工作状态指示调用所述加载到内存的控制逻辑插件的状态解析接口之前,或者,根据所述控制指令调用所述加载到内存控制逻辑插件的命令操作的互斥判断接口之前,

采用预设的授权码调用所述加载到内存的控制逻辑插件的授权接口,获取所述授权接口返回的对所述验证码的验证结果,并确定所述验证结果为所述授权码有效,其中,所述控制逻辑插件中保存对所述授权码的验证结果。

可能的实施方式中,所述云服务器返回的控制逻辑插件为:

所述设备型号指示信息对应的所有控制逻辑插件,或者,所述设备型号指示信息对应的有更新的控制逻辑插件。

基于上述技术方案,本发明实施例中,将对智能设备的控制功能设计为独立的控制逻辑插件,与客户端分开设计,并将控制逻辑插件保存至云服务器,客户端根据需要从云服务器获取智能设备的控制逻辑插件,并且客户端在运行时可以仅将当前控制操作相关的控制逻辑插件加载到内存运行,从而避免了对客户端整体升级,减少了客户端占用的存储空间,以及减少了客户端运行时占用的内存,降低了客户端的冗余量,提高了客户端的运行效率。

附图说明

图1为本发明实施例中客户端运行管理的方法流程示意图;

图2为本发明实施例中客户端结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

本发明各实施例中,客户端安装在智能终端上,例如,安装在手机或平板电脑上。

本发明实施例中,如图1所示,客户端运行管理的详细方法流程如下:

步骤101:客户端向云服务器发送所绑定的智能设备的设备型号指示信息,并接收云服务器根据该设备型号指示信息返回的控制逻辑插件。

其中,控制逻辑插件用于实现对智能设备的控制功能。

其中,控制逻辑插件包括但不限于原始控制命令帧获取接口、状态解析接口和命令操作的互斥判断接口中的一种或多种。

其中,控制命令帧获取接口用于获取客户端的控制指令并返回该控制指令对应的原始控制命令帧。

其中,状态解析接口用于获取客户端的工作状态指示并返回智能设备的工作状态的解析信息。

其中,命令操作的互斥判断接口用于获取客户端的控制指令并返回是否允许发送该控制指令的相关信息。

可选地,控制逻辑插件还包括授权接口。其中,授权接口用于获取客户端的授权码并返回该控制逻辑插件对该授权码的验证结果。

实施中,云服务器保存有不同设备类型下各个设备型号的智能设备的控制逻辑插件库,控制逻辑插件库中包含多个控制逻辑插件。

具体地,一种设备类型或设备型号对应的控制逻辑插件库中的每个控制逻辑插件采用相同的接口形式,以便于维护。

具体地,云服务器中还保存有每个控制逻辑插件库对应的配置信息数据库,配置信息数据库可以保存控制逻辑插件库对应的智能设备的配置信息。具体实现中,控制逻辑插件库以及配置信息数据库均以设备型号作为索引。

其中,控制逻辑插件库对应的配置信息,即该控制逻辑插件库对应的设备型号的智能设备所对应的配置信息,该配置信息主要用户描述该设备型号的智能设备的哪些功能能够通过客户端控制。

客户端在获取所绑定的智能设备对应的控制逻辑插件并获取该控制逻辑插件对应的配置信息,根据该配置信息的描述配置客户端的显示界面,以使得用户能够根据显示界面的显示获知可以对智能设备的哪些功能进行操作。

其中,设备型号指示信息具体可以为设备类型和设备型号。

具体地,客户端程序在打包发布时可以不包含对应的智能设备的控制逻辑插件库。客户端在第一次绑定一种设备型号的智能设备时,向云服务器发送该智能设备的设备型号指示信息,云服务器将该设备型号相关的所有控制逻辑插件发送给该客户端。

具体地,客户端所安装的智能终端通过扫描智能设备外壳粘贴的二维码获取该智能设备的设备类型以及设备型号;也可以是,客户端获取用户通过人机交互界面输入的设备类型以及设备型号;也可以是,客户端所安装的智能终端在设备发现阶段,通过网络通信协议获取智能终端的设备类型以及设备型号。

具体地,客户端在每次启动后向云服务器发送该智能设备的设备型号指示信息;云服务器检测该设备型号对应的控制逻辑插件库是否有更新,若存在更新,则将有更新的控制逻辑插件发送给客户端;客户端接收云服务器返回的有更新的控制逻辑插件并保存至缓存,并根据需要加载到内存。客户端的控制逻辑更新过程可以在程序运行的状态下执行,耗用时间与客户端整体升级的方式相比大大缩短,并且可以降低升级对用户操作造成的影响。

步骤102:客户端保存接收的控制逻辑插件,并选择与对智能设备的当前控制操作相关的控制逻辑插件,将选择的控制逻辑插件加载到内存,并运行加载到内存的控制逻辑插件。

其中,选择与当前控制操作相关的控制逻辑插件加载到内存,可以有效减少占用的内存。

具体实施中,客户端运行加载到内存的控制逻辑插件的具体过程,可以是以下三种具体过程中的任意一种或多种的组合:

第一,客户端获取用户的控制指令,根据该控制指令调用加载到内存的控制逻辑插件的原始控制命令帧获取接口,获取该原始控制命令帧获取接口返回的、与该控制指令对应的原始控制命令帧,将该原始控制命令帧发送给智能设备。

第二,客户端接收智能设备发送的工作状态指示,根据该工作状态指示调用加载到内存的状态解析接口,获取该状态解析接口返回的工作状态指示的解析信息,根据该解析信息显示该智能设备的工作状态。

第三,客户端获取用户的控制指令,根据该控制指令调用加载到内存的控制逻辑插件的命令操作的互斥判断接口,获取该命令操作的互斥判断接口返回的提示信息,该提示信息用于提示用户是否能够发送该控制指令,和/或用于提示用户该智能设备执行该控制指令之后的状态变化。具体地,若命令操作的互斥判断接口返回的提示信息为能够发送该控制指令,则该提示信息还提供用户在发送该控制指令之后的状态变化。

实施中,为了防止控制逻辑插件被恶意调用,客户端采用预设的授权码调用控制逻辑插件的授权接口,由控制逻辑插件验证该授权码后将验证结果通过授权接口返回,客户端获取控制逻辑插件的授权接口返回的对验证码的验证结果。

其中,控制逻辑插件内保存对授权码的验证结果。

具体地,控制逻辑插件在被客户端通过原始控制命令帧获取接口调用时,判断授权码的验证结果是否为有效,若有效,则确定原始控制命令帧获取接口传入的控制指令对应的原始控制命令帧,并将该原始控制命令帧通过原始控制命令帧获取接口返回给客户端。若无效,则通过原始控制命令帧获取接口向客户端返回错误调用的提示信息。

具体地,控制逻辑插件在被客户端通过状态解析接口调用时,判断授权码的验证结果是否为有效,若有效,则确定状态解析接口传入的工作状态指示所对应的解析信息,并将该解析信息通过状态解析接口返回给客户端。若无效,则通过状态解析接口向客户端返回错误调用的提示信息。

具体地,控制逻辑插件在被客户端通过命令操作的互斥判断接口调用时,判断授权码的验证结果是否为有效,若有效,则确定是否允许发送命令操作的互斥判断接口传入的控制指令,并在确定允许发送该控制指令的情况下进一步模拟智能设备执行该控制指令之后的状态变化情况,通过命令操作的互斥判断接口向客户端返回该控制指令相关的提示信息,该提示信息用于提示用户是否能够发送该控制指令,并且在允许发送该控制指令的情况下提示用户智能设备执行该控制指令之后的状态变化。若无效,则通过命令操作的互斥判断接口向客户端返回错误调用的提示信息。

基于同一发明构思,本发明实施例中还提供了一种客户端,该客户端的具体实施可参见上述方法实施例部分关于客户端的描述,重复之处不再赘述,该客户端为安装在智能终端上的应用软件,如图2所示,该客户端主要包括:

通信模块201,用于向云服务器发送所绑定的智能设备的设备型号指示信息,并接收所述云服务器根据所述设备型号指示信息返回的控制逻辑插件,所述控制逻辑插件用于实现对所述智能设备的控制功能;

处理模块202,用于保存接收的所述控制逻辑插件,并选择与对所述智能设备的当前控制操作相关的控制逻辑插件,将选择的控制逻辑插件加载到内存,并运行加载到内存的控制逻辑插件。

实施中,所述控制逻辑插件包括原始控制命令帧获取接口、状态解析接口和命令操作的互斥判断接口中的一种或多种,其中,所述控制命令帧获取接口用于获取所述客户端的控制指令并返回所述控制指令对应的原始控制命令帧,所述状态解析接口用于获取所述客户端的工作状态指示并返回所述智能设备的工作状态的解析信息,所述命令操作的互斥判断接口用于获取所述客户端的控制指令并返回是否允许发送所述控制指令的相关信息。

实施中,所述处理模块具体用于:

获取用户的控制指令,根据所述控制指令调用所述加载到内存的控制逻辑插件的原始控制命令帧获取接口,获取所述原始控制命令帧获取接口返回的、与所述控制指令对应的原始控制命令帧,将所述原始控制命令帧发送给所述智能设备;

和/或,

接收所述智能设备发送的工作状态指示,根据所述工作状态指示调用所述加载到内存的控制逻辑插件的状态解析接口,获取所述状态解析接口返回的所述工作状态指示的解析信息,根据所述解析信息显示所述智能设备的工作状态;

和/或,

获取用户的控制指令,根据所述控制指令调用所述加载到内存的控制逻辑插件的命令操作的互斥判断接口,获取所述命令操作的互斥判断接口返回的提示信息,所述提示信息用于提示用户是否能够发送所述控制指令,和/或用于提示用户所述智能设备执行所述控制指令之后的状态变化。

实施中,所述控制逻辑插件还包括授权接口,所述授权接口用于获取所述客户端的授权码并返回所述控制逻辑插件对所述授权码的验证结果;

所述处理模块还用于:

根据所述控制指令调用所述加载到内存的控制逻辑插件的原始控制命令帧获取接口之前,或者,根据所述工作状态指示调用所述加载到内存的控制逻辑插件的状态解析接口之前,或者,根据所述控制指令调用所述加载到内存控制逻辑插件的命令操作的互斥判断接口之前,

采用预设的授权码调用所述加载到内存的控制逻辑插件的授权接口,获取所述授权接口返回的对所述验证码的验证结果,并确定所述验证结果为所述授权码有效,其中,所述控制逻辑插件中保存对所述授权码的验证结果。

实施中,所述云服务器返回的控制逻辑插件为:

所述设备型号指示信息对应的所有控制逻辑插件,或者,所述设备型号指示信息对应的有更新的控制逻辑插件。

基于上述技术方案,本发明实施例中,将对智能设备的控制功能设计为独立的控制逻辑插件,与客户端分开设计,并将控制逻辑插件保存至云服务器,客户端根据需要从云服务器获取智能设备的控制逻辑插件,并且客户端在运行时可以仅将当前控制操作相关的控制逻辑插件加载到内存运行,从而避免了对客户端整体升级,减少了客户端占用的存储空间,以及减少了客户端运行时占用的内存,降低了客户端的冗余量,提高了客户端的运行效率。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1