联动控制方法及装置、计算机可读存储介质与流程

文档序号:11518299阅读:134来源:国知局
联动控制方法及装置、计算机可读存储介质与流程

本申请涉及物联网设备技术领域,尤其涉及一种联动控制方法及装置、计算机可读存储介质。



背景技术:

随着物联网技术的发展,物联网设备广泛应用于人们的生活中。用户可以向物联网设备下达定时联动请求(其中包含定时联动信息,比如在8:00打开摄像头x录制视频),以使得物联网设备在相应时间段内执行特定的联动操作。因此,服务端需要每天生成针对定时联动信息的定时任务,以在相应时刻向物联网设备下发联动控制指令(比如在8:00向摄像头x发送录制视频的指令)。

在相关技术中,服务端针对每一定时联动信息生成相应的控制信息(包含物联网设备的标识信息和相应的联动控制指令),再针对每一控制信息创建定时任务以在相应时刻向物联网设备下发联动控制指令。

然而,针对每条联动信息服务端均需要创建相应的定时任务,导致服务端需要创建大量的定时任务,从而降低了对物联网设备进行联动控制的效率。同时,创建大量的定时任务占用了服务端大量的处理资源,降低了服务端的性能。



技术实现要素:

有鉴于此,本申请提供一种联动控制方法及装置,可以减少服务端创建定时任务的数量,从而提升服务端对物联网设备进行联动控制的效率。同时,还可以提高服务端的性能。

为实现上述目的,本申请提供技术方案如下:

根据本申请的第一方面,提出了一种联动控制方法,应用于服务端,包括:

确定当前时间段对应的定时任务;其中,每一定时任务中聚合有相应时间段内的所有控制信息,控制信息由用户针对物联网设备定义的定时联动信息生成;

解析确定出的定时任务中聚合的各个控制信息,以得到各个控制信息对应的物联网设备和联动控制指令;

向所述物联网设备下发相应的联动控制指令。

根据本申请的第二方面,提出了一种联动控制装置,应用于服务端,包括:

确定单元,确定当前时间段对应的定时任务;其中,每一定时任务中聚合有相应时间段内的所有控制信息,控制信息由用户针对物联网设备定义的定时联动信息生成;

解析单元,解析确定出的定时任务中聚合的各个控制信息,以得到各个控制信息对应的物联网设备和联动控制指令;

下发单元,向所述物联网设备下发相应的联动控制指令。

根据本申请的第三方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述方法中任一项所述方法的步骤。

由以上技术方案可见,在本申请的技术方案中,按照时间段将每个控制周期内的控制信息聚合至相应的定时任务中,使得服务端所需创建的定时任务大大减少,从而提升了服务端对物联网设备进行联动控制的效率,提高了服务端的性能。

附图说明

图1是相关技术中服务端创建定时任务的示意图。

图2是本申请一示例性实施例示出的一种联动控制方法的流程图。

图3是本申请一示例性实施例示出的另一种联动控制方法的流程图。

图4是本申请一示例性实施例示出的服务端创建定时任务的示意图。

图5是本申请一示例性实施例示出的服务端监控定时任务的流程图。

图6是本申请一示例性实施例示出的一种电子设备的结构示意图。

图7是本申请一示例性实施例示出的一种联动控制装置的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

在相关技术中,为了在相应时刻能够向物联网设备下发联动控制指令,服务端需要针对每一定时联动信息生成相应的控制信息,再针对每一控制信息创建相应的定时任务。举例而言,如图1所示,假定服务端接收到72000条定时联动请求,即共有72000条定时联动信息。那么服务端需要针对每一定时联动信息对应的控制信息,创建共计72000个定时任务以在相应时刻向各个物联网设备下发相应的联动控制指令。

可见,在相关技术中,针对每条联动信息服务端均需要创建相应的定时任务,导致服务端需要创建大量的定时任务,从而降低了对物联网设备进行联动控制的效率。同时,创建大量的定时任务占用了服务端大量的处理资源,降低了服务端的性能。

因此,本申请通过改进创建定时任务的方式,以解决相关技术中存在的上述技术问题。为对本申请的技术方案进行进一步说明,提供下列实施例:

图2是本申请一示例性实施例示出的一种联动控制方法的流程图。如图2所示,该方法应用于服务端,可以包括以下步骤:

步骤202,确定当前时间段对应的定时任务。

在本实施例中,每一定时任务中聚合有相应时间段内的所有控制信息,控制信息由用户针对物联网设备定义的定时联动信息生成。其中,用户自定义的定时联动信息存储于预配置的数据库中。通过将每个控制周期内的控制信息按照时间段聚合至相应的定时任务中,即属于同一时间段的控制信息均被聚合至同一定时任务中,使得服务端所需创建的定时任务大大减少,从而可以提升服务端对物联网设备进行联动控制的效率,提高服务端的性能。

步骤204,解析确定出的定时任务中聚合的各个控制信息,以得到各个控制信息对应的物联网设备和联动控制指令。

步骤206,向所述物联网设备下发相应的联动控制指令。

在本实施例中,服务端中预配置有多个定时任务集合,定时任务集合用于存储预设控制周期内各个时间段的定时任务。基于上述对定时任务集合的配置,在任一控制周期内的全部定时任务均完成后,清空所述任一控制周期对应的定时任务集合中各个定时任务聚合的控制信息,以用于存储后续控制周期内各个时间段的定时任务聚合的控制信息。通过按照控制周期对定时任务集合中创建的定时任务进行循环利用,可以大大减少对服务端的处理资源的占用,从而提高服务端的性能。

在本实施例中,当接收到针对任一定时联动信息的修改请求时,可以根据所述修改请求对所述任一定时联动信息进行修改,再根据修改后的联动信息生成相应的控制信息,并将生成的控制信息聚合至相应的定时任务中。

在本实施例中,为了确保服务端对物联网设备的联动控制正常进行,可以对定时任务的执行情况进行监控。比如,监控所述当前时间段对应的定时任务的执行情况,并在所述定时任务中存在下发失败的联动控制指令时,重新下发所述下发失败的联动控制指令。

由以上技术方案可见,在本申请的技术方案中,按照时间段将每个控制周期内的控制信息聚合至相应的定时任务中,使得服务端所需创建的定时任务大大减少,从而提升了服务端对物联网设备进行联动控制的效率。同时,对定时任务集合中创建的定时任务进行循环利用,大大减少了对服务端的处理资源的占用,提高了服务端的性能。

为了便于理解,下面结合附图对本申请的技术方案进行详细说明。请参见图3,图3是本申请一示例性实施例示出的另一种联动控制方法的流程图。如图3所示,该方法应用于服务端,可以包括以下步骤:

步骤302,确定当前时间段对应的定时任务。

在本实施例中,服务端中预配置有多个定时任务集合,定时任务集合用于存储预设控制周期内各个时间段的定时任务。其中,每一定时任务中聚合有相应时间段内的所有控制信息,控制信息由用户针对物联网设备定义的定时联动信息生成,用户自定义的定时联动信息存储于预配置的数据库(比如,可以是redis或者其他任意数据库)中。

举例而言,如图4所示:可以将控制周期设置为一天(1440分钟),并将控制周期平均分为1440个时间段,即一天内的每分钟为一个时间段,然后再针对每个时间段创建相应的定时任务(共创建定时任务0-1399);又由于控制信息由定时联动信息生成,因此可以将控制信息按照时间段聚合至各自所属的定时任务中。例如,针对定时联动信息“在8:00打开摄像头x录制视频”,生成的控制信息为在8:00向摄像头x发送录制视频的联动控制指令,那么可以将该控制信息聚合至定时任务480中(8:00对应于第481分钟内)。假定在5月3日根据用户自定义的定时联动信息共生成72000条控制信息,其中包括:对应于00:00(即第1分钟内)的控制信息有50条(控制信息0-49)、对应于00:01(即第2分钟内)的控制信息有21条(控制信息50-70)、对应于00:02(即第3分钟内)的控制信息有59条(控制信息71-129)……对应于23:58(即第1399分钟内)的控制信息有150条(控制信息71800-71949)、对应于23:59(即第1400分钟内)的控制信息有50条(控制信息71950-71999),则将控制信息0-49聚合至定时任务0中、将控制信息50-70聚合至定时任务1中、将控制信息71-129聚合至定时任务2中……将控制信息71800-71949聚合至定时任务1398中、将控制信息71950-71999聚合至定时任务1399中。相比于相关技术中需创建72000个定时任务,通过本申请中按照时间段创建相应定时任务的方式,服务端所需创建的定时任务的数量大大减少(比如在图4的举例中仅需创建1440个定时任务),从而可以提升服务端对物联网设备进行联动控制的效率,提高服务端的性能。

在本实施例中,还可以将控制周期设置为12小时,并将控制周期平均分为360个时间段,即每2分钟为1个时间段;然后针对每个时间段创建相应的定时任务(共创建定时任务0-359),再将控制信息按照时间段聚合至各自所属的定时任务中。当然,也可以将控制周期和时间段设置为其他任意时长,本申请对此并不进行限制。

步骤304,解析确定出的定时任务中聚合的各个控制信息,以得到各个控制信息对应的物联网设备和联动控制指令。

步骤306,向物联网设备下发相应的联动控制指令。

在本实施例中,承接于图4中的举例,比如当前时间为9:00(对应的当前时间段为第541分钟),则可以确定当前时间段对应的定时任务为定时任务540。然后再解析定时任务540中聚合的各个控制信息,得到相应的物联网设备和联动控制指令。假定定时任务540中聚合的控制信息包含“在9:00向摄像头y发送录制视频的联动控制指令”,则在解析该控制信息并得到相应的物联网设备(摄像头y)和联动控制指令(录制视频)后,向摄像头y发送录制视频的联动控制指令。

在本实施例中,由于可能存在用户需要修改针对物联网设备的定时联动信息的情况,所以当服务端接收到针对任一定时联动信息的修改请求时,可以根据接收到的修改请求对该任一定时联动信息进行修改,再根据修改后的联动信息生成相应的控制信息,并将生成的控制信息聚合至相应的定时任务中。举例而言,承接于图4中的举例,假定用户需要将定时联动信息“在8:00打开摄像头x录制视频”修改为“在7:00打开摄像头x录制视频”,则当服务端接收到用户通过客户端发送的针对该定时联动信息的修改请求(包含修改的内容,即“在7:00打开摄像头x录制视频”)时,将定时联动信息“在8:00打开摄像头x录制视频”修改为“在7:00打开摄像头x录制视频”,再根据修改后的联动信息生成控制信息“在7:00向摄像头x发送录制视频的联动控制指令”,并将生成的控制信息聚合至定时任务420中,即将之前对应于定时联动信息“在8:00打开摄像头x录制视频”的控制信息“在8:00向摄像头x发送录制视频的联动控制指令”,修改为“在7:00向摄像头x发送录制视频的联动控制指令”。

在本实施例中,为了确保服务端对物联网设备的联动控制正常进行,可以对定时任务的执行情况进行监控。其监控过程如图5所示,可以包括以下步骤:

步骤502,监控当前时间段对应的定时任务的执行情况。

步骤504,判断定时任务中是否存在下发失败的联动控制指令,若存在,则转入步骤506,否则返回步骤502。

步骤506,重新下发该下发失败的联动控制指令。

在本实施例中,举例而言,在根据定时任务中的控制信息“在8:00向摄像头x发送录制视频的联动控制指令”下发联动控制指令时,若检测到向摄像头x下发录制视频的联动控制指令的操作执行失败,则重新向摄像头x下发录制视频的联动控制指令。

在本申请的技术方案中,基于服务端中配置有多个定时任务集合,可以在任一控制周期内的全部定时任务均完成后,清空该任一控制周期对应的定时任务集合中各个定时任务聚合的控制信息,以用于存储后续控制周期内各个时间段的定时任务聚合的控制信息。通过按照控制周期对定时任务集合中创建的定时任务进行循环利用,可以大大减少对服务端的处理资源的占用,从而提高服务端的性能。比如,假定当前时间为5月3日,服务端中配置有定时任务集合a和定时任务集合b,控制周期设置为一天。其中,定时任务集合a用于存储5月2日内各个时间段的定时任务聚合的控制信息,定时任务集合b用于存储5月3日内各个时间段的定时任务聚合的控制信息。由于定时任务集合a中的定时任务均执行完毕,服务端可以将定时任务集合a中各个定时任务聚合的控制信息清空,以用于存储5月4日内各个时间段的定时任务聚合的控制信息。或者,也可以新创建定时任务集合c,用于存储5月4日内各个时间段的定时任务聚合的控制信息。当然,本申请对此并不进行限制。

由以上技术方案可见,在本申请的技术方案中,按照时间段将每个控制周期内的控制信息聚合至相应的定时任务中,使得服务端所需创建的定时任务大大减少,从而提升了服务端对物联网设备进行联动控制的效率。同时,对定时任务集合中创建的定时任务进行循环利用,大大减少了对服务端的处理资源的占用,提高了服务端的性能。

图6示出了根据本申请的一示例性实施例的电子设备的结构示意图。请参考图6,在硬件层面,该电子设备包括处理器602、内部总线604、网络接口606、内存608以及非易失性存储器610,当然还可能包括其他业务所需要的硬件。处理器602从非易失性存储器610中读取对应的计算机程序到内存608中然后运行,在逻辑层面上形成联动控制装置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。

请参考图7,在软件实施方式中,该联动控制装置可以包括确定单元701、解析单元702和下发单元703。其中:

确定单元701,确定当前时间段对应的定时任务;其中,每一定时任务中聚合有相应时间段内的所有控制信息,控制信息由用户针对物联网设备定义的定时联动信息生成;

解析单元702,解析确定出的定时任务中聚合的各个控制信息,以得到各个控制信息对应的物联网设备和联动控制指令;

下发单元703,向所述物联网设备下发相应的联动控制指令。

可选的,所述服务端中预配置有多个定时任务集合,定时任务集合用于存储预设控制周期内各个时间段的定时任务;所述装置还包括:

清空单元704,在任一控制周期内的全部定时任务均完成后,清空所述任一控制周期对应的定时任务集合中各个定时任务聚合的控制信息,以用于存储后续控制周期内各个时间段的定时任务聚合的控制信息。

可选的,还包括:

修改单元705,当接收到针对任一定时联动信息的修改请求时,根据所述修改请求对所述任一定时联动信息进行修改;

生成单元706,根据修改后的联动信息生成相应的控制信息,并将生成的控制信息聚合至相应的定时任务中。

可选的,还包括:

监控单元707,监控所述当前时间段对应的定时任务的执行情况;

处理单元708,当所述定时任务中存在下发失败的联动控制指令时,重新下发所述下发失败的联动控制指令。

可选的,用户自定义的定时联动信息存储于预配置的数据库中。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由联动控制装置的处理器执行以完成上述方法,该方法可以包括:

确定当前时间段对应的定时任务;其中,每一定时任务中聚合有相应时间段内的所有控制信息,控制信息由用户针对物联网设备定义的定时联动信息生成;

解析确定出的定时任务中聚合的各个控制信息,以得到各个控制信息对应的物联网设备和联动控制指令;

向所述物联网设备下发相应的联动控制指令。

可选的,所述服务端中预配置有多个定时任务集合,定时任务集合用于存储预设控制周期内各个时间段的定时任务;所述方法还包括:

在任一控制周期内的全部定时任务均完成后,清空所述任一控制周期对应的定时任务集合中各个定时任务聚合的控制信息,以用于存储后续控制周期内各个时间段的定时任务聚合的控制信息。

可选的,还包括:

当接收到针对任一定时联动信息的修改请求时,根据所述修改请求对所述任一定时联动信息进行修改;

根据修改后的联动信息生成相应的控制信息,并将生成的控制信息聚合至相应的定时任务中。

可选的,还包括:

监控所述当前时间段对应的定时任务的执行情况;

当所述定时任务中存在下发失败的联动控制指令时,重新下发所述下发失败的联动控制指令。

可选的,用户自定义的定时联动信息存储于预配置的数据库中。

其中,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等,本申请并不对此进行限制。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

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