物联网设备状态事件的处理方法、装置和电子设备转让专利

申请号 : CN202110066260.9

文献号 : CN112398955B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 蔡孟宏黄胜

申请人 : 树根互联技术有限公司

摘要 :

本发明提供了一种物联网设备状态事件的处理方法、装置和电子设备,包括:获取目标物联网设备当前时刻的状态区段;当接收到目标物联网设备上传的状态事件后,基于状态事件中携带的变更状态值和变更时刻对状态区段进行更新,得到更新后的状态区段。本发明的方法在处理状态事件时,只是根据物联网设备上传的状态事件进行的,无需额外的定时器逻辑,简单,节省物联网平台资源,另外,若因网络原因目标物联网设备无法上传状态事件,可以在网络恢复后,再进行状态事件的上传,该方法还能根据上述状态事件返回对之前时刻的状态值进行变更处理,更加准确。

权利要求 :

1.一种物联网设备状态事件的处理方法,其特征在于,包括:获取目标物联网设备当前时刻的状态区段,其中,所述状态区段包括:状态值、所述状态值生效的开始时刻和所述状态值生效的结束时刻,所述状态区段用于表征所述目标物联网设备在生效时间段内的状态值,当所述当前时刻为初始时刻时,所述状态区段中所有时间段的状态都为无状态;

当接收到所述目标物联网设备上传的状态事件后,基于所述状态事件中携带的变更状态值和变更时刻对所述状态区段进行更新,得到更新后的状态区段;

其中,基于所述状态事件中携带的变更状态值和变更时刻对所述状态区段进行更新,包括:

获取预设超时时长;

在所述状态区段中确定所述变更时刻所属的目标状态区段;

判断所述变更状态值与所述目标状态区段的状态值是否相同;

若相同,则判断所述变更时刻与所述预设超时时长的和是否大于所述目标状态区段的结束时刻;

若大于,则将所述目标状态区段的结束时刻更新为所述变更时刻与所述预设超时时长的和,得到更新后的结束时刻;

将所述目标状态区段的开始时刻与所述更新后的结束时刻所对应的状态值更新为所述变更状态值,进而得到更新后的状态区段。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:若不同,则判断所述变更时刻、所述变更时刻与所述预设超时时长的和是否属于所述目标状态区段的开始时刻和结束时刻;

若属于,则将所述目标状态区段划分为第一子状态区段和第二子状态区段,并创建第一新状态区段,其中,所述第一子状态区段的开始时刻为所述目标状态区段的开始时刻,所述第一子状态区段的结束时刻为所述变更时刻,所述第二子状态区段的开始时刻为所述变更时刻与所述预设超时时长的和,所述第二子状态区段的结束时刻为所述目标状态区段的结束时刻,所述第一新状态区段的开始时刻为所述变更时刻,所述第一新状态区段的结束时刻为所述变更时刻与所述预设超时时长的和,且所述第一新状态区段的状态值为所述变更状态值。

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:若不属于,则将所述目标状态区段的结束时刻更新为所述变更时刻;

判断所述变更时刻、所述变更时刻与所述预设超时时长的和之间是否存在不是无状态的状态区段;

若不存在,则将所述变更时刻与所述预设超时时长的和确定为目标时刻;

若存在,则在所述变更时刻、所述变更时刻与所述预设超时时长的和之间确定第一个状态值不是无状态的状态区段的开始时刻,并将所述第一个状态值不是无状态的状态区段的开始时刻作为所述目标时刻;

判断所述变更时刻和所述目标时刻之间是否存在状态值为无状态的状态区段;

若存在,则清除所述变更时刻和所述目标时刻之间的状态值为无状态的区段,并创建第二新状态区段,其中,所述第二新状态区段的开始时刻为所述变更时刻,所述第二新状态区段的结束时刻为所述目标时刻,且所述第二新状态区段的状态值为所述变更状态值。

4.根据权利要求3所述的方法,其特征在于,所述方法还包括:若所述变更时刻和所述目标时刻之间不存在状态值为无状态的状态区段,则创建所述第二新状态区段。

5.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取所述目标物联网设备的状态查询请求,其中,所述状态查询请求中携带有待查询时间段,或,待查询状态;

根据所述状态查询请求显示所述目标物联网设备的状态查询结果。

6.一种物联网设备状态事件的处理装置,其特征在于,包括:获取单元,用于获取目标物联网设备当前时刻的状态区段,其中,所述状态区段包括:状态值、所述状态值生效的开始时刻和所述状态值生效的结束时刻,所述状态区段用于表征所述目标物联网设备在生效时间段内的状态值,当所述当前时刻为初始时刻时,所述状态区段中所有时间段的状态都为无状态;

更新单元,用于当接收到所述目标物联网设备上传的状态事件后,基于所述状态事件中携带的变更状态值和变更时刻对所述状态区段进行更新,得到更新后的状态区段;

其中,所述更新单元还用于:

获取预设超时时长;

在所述状态区段中确定所述变更时刻所属的目标状态区段;

判断所述变更状态值与所述目标状态区段的状态值是否相同;

若相同,则判断所述变更时刻与所述预设超时时长的和是否大于所述目标状态区段的结束时刻;

若大于,则将所述目标状态区段的结束时刻更新为所述变更时刻与所述预设超时时长的和,得到更新后的结束时刻;

将所述目标状态区段的开始时刻与所述更新后的结束时刻所对应的状态值更新为所述变更状态值,进而得到更新后的状态区段。

7.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至5中任一项所述的方法的步骤。

8.一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行上述权利要求1至5中任一项所述的方法的步骤。

说明书 :

物联网设备状态事件的处理方法、装置和电子设备

技术领域

[0001] 本发明涉及物联网的技术领域,尤其是涉及一种物联网设备状态事件的处理方法、装置和电子设备。

背景技术

[0002] 在物联网领域中,物联网设备的状态(例如,离线状态、在线状态、故障状态或过载状态等)通常以事件(可能是只有0或1的布林资料类型,也可能是支持多种状态的整数资料
类型)的形式上传至物联网平台。
[0003] 与普通设备数据不同的是,设备状态数据并不会不间断的产生并上传,而是只有在物联网设备的状态发生改变时,才会以事件的方式产生并将产生的状态事件上传至物联
网平台。即当物联网平台收到物联网设备发送的状态事件后,表示该物联网设备的状态发
生了改变。例如,物联网设备A在1:30时为1状态,在1:50时,物联网设备A的状态变更为了2
状态,那么物联网设备就会在将携带时间信息1:50的2状态事件发送至物联网平台,物联网
平台在接收到物联网设备A上传的上述状态事件后,表示物联网设备的状态发生了改变,也
就是物联网设备状态的改变是由物联网设备上传的状态事件决定的。但是,很多时候,物联
网设备状态的改变还与物联网设备多久没有上传状态事件有关,即在物联网平台中,除了
有正常的收取物联网设备的状态事件的处理外,还有另外一套定时器的逻辑,具体过程为
通过特定的定时器侦测物联网设备没有上传状态事件的持续时间,当没有上传状态事件的
持续时间大于预设时间阈值时,即判定物联网设备的状态变更为了无状态的情况,上述物
联网设备状态事件的处理方法需要额外的定时器处理逻辑,处理过程复杂,且容易出错。例
如,物联网设备A在1:30时为状态1,在2:10时状态1变更为了状态2,但是,在2:09至2:11时,
物联网设备A与物联网平台之间的网络出现了断路,这样,物联网设备A将无法把携带有时
间信息的状态2的事件上传至物联网平台,而此时物联网平台的定时器也在实时侦测物联
网设备A没有上传状态事件的持续时间,侦测到1:30至2:11之间都没有上传状态事件,持续
时间为41分钟,大于预设时间阈值40分钟,那么,就会将该物联网设备A在2:10的状态变更
为无状态的情况,而实际上2:10应该为状态2的情况,这样就会出现错误。另外,上述方法还
需要针对每台物联网设备都要设置一套独立的定时器逻辑,耗费物联网平台资源。
[0004] 综上,现有的物联网设备状态事件的处理方法复杂、易出错、且耗费物联网平台资源。

发明内容

[0005] 有鉴于此,本发明的目的在于提供一种物联网设备状态事件的处理方法、装置和电子设备,以缓解现有的物联网设备状态事件的处理方法复杂、易出错、且耗费物联网平台
资源的技术问题。
[0006] 第一方面,本发明实施例提供了一种物联网设备状态事件的处理方法,包括:
[0007] 获取目标物联网设备当前时刻的状态区段,其中,所述状态区段包括:状态值、所述状态值生效的开始时刻和所述状态值生效的结束时刻,所述状态区段用于表征所述目标
物联网设备在生效时间段内的状态值,当所述当前时刻为初始时刻时,所述状态区段中所
有时间段的状态都为无状态;
[0008] 当接收到所述目标物联网设备上传的状态事件后,基于所述状态事件中携带的变更状态值和变更时刻对所述状态区段进行更新,得到更新后的状态区段。
[0009] 进一步的,基于所述状态事件中携带的变更状态值和变更时刻对所述状态区段进行更新,包括:
[0010] 获取预设超时时长;
[0011] 在所述状态区段中确定所述变更时刻所属的目标状态区段;
[0012] 判断所述变更状态值与所述目标状态区段的状态值是否相同;
[0013] 若相同,则判断所述变更时刻与所述预设超时时长的和是否大于所述目标状态区段的结束时刻;
[0014] 若大于,则将所述目标状态区段的结束时刻更新为所述变更时刻与所述预设超时时长的和,得到更新后的结束时刻;
[0015] 将所述目标状态区段的开始时刻与所述更新后的结束时刻所对应的状态值更新为所述变更状态值,进而得到更新后的状态区段。
[0016] 进一步的,所述方法还包括:
[0017] 若不同,则判断所述变更时刻、所述变更时刻与所述预设超时时长的和是否属于所述目标状态区段的开始时刻和结束时刻;
[0018] 若属于,则将所述目标状态区段划分为第一子状态区段和第二子状态区段,并创建第一新状态区段,其中,所述第一子状态区段的开始时刻为所述目标状态区段的开始时
刻,所述第一子状态区段的结束时刻为所述变更时刻,所述第二子状态区段的开始时刻为
所述变更时刻与所述预设超时时长的和,所述第二子状态区段的结束时刻为所述目标状态
区段的结束时刻,所述第一新状态区段的开始时刻为所述变更时刻,所述第一新状态区段
的结束时刻为所述变更时刻与所述预设超时时长的和,且所述第一新状态区段的状态值为
所述变更状态值。
[0019] 进一步的,所述方法还包括:
[0020] 若不属于,则将所述目标状态区段的结束时刻更新为所述变更时刻;
[0021] 判断所述变更时刻、所述变更时刻与所述预设超时时长的和之间是否存在不是无状态的状态区段;
[0022] 若不存在,则将所述变更时刻与所述预设超时时长的和确定为目标时刻;
[0023] 若存在,则在所述变更时刻、所述变更时刻与所述预设超时时长的和之间确定第一个状态值不是无状态的状态区段的开始时刻,并将所述第一个状态值不是无状态的状态
区段的开始时刻作为所述目标时刻;
[0024] 判断所述变更时刻和所述目标时刻之间是否存在状态值为无状态的状态区段;
[0025] 若存在,则清除所述变更时刻和所述目标时刻之间的状态值为无状态的区段,并创建第二新状态区段,其中,所述第二新状态区段的开始时刻为所述变更时刻,所述第二新
状态区段的结束时刻为所述目标时刻,且所述第二新状态区段的状态值为所述变更状态
值。
[0026] 进一步的,所述方法还包括:
[0027] 若所述变更时刻和所述目标时刻之间不存在状态值为无状态的状态区段,则创建所述第二新状态区段。
[0028] 进一步的,所述方法还包括:
[0029] 获取所述目标物联网设备的状态查询请求,其中,所述状态查询请求中携带有待查询时间段,或,待查询状态;
[0030] 根据所述状态查询请求显示所述目标物联网设备的状态查询结果。
[0031] 第二方面,本发明实施例还提供了一种物联网设备状态事件的处理装置,包括:
[0032] 获取单元,用于获取目标物联网设备当前时刻的状态区段,其中,所述状态区段包括:状态值、所述状态值生效的开始时刻和所述状态值生效的结束时刻,所述状态区段用于
表征所述目标物联网设备在生效时间段内的状态值,当所述当前时刻为初始时刻时,所述
状态区段中所有时间段的状态都为无状态;
[0033] 更新单元,用于当接收到所述目标物联网设备上传的状态事件后,基于所述状态事件中携带的变更状态值和变更时刻对所述状态区段进行更新,得到更新后的状态区段。
[0034] 进一步的,所述更新单元还用于:
[0035] 获取预设超时时长;
[0036] 在所述状态区段中确定所述变更时刻所属的目标状态区段;
[0037] 判断所述变更状态值与所述目标状态区段的状态值是否相同;
[0038] 若相同,则判断所述变更时刻与所述预设超时时长的和是否大于所述目标状态区段的结束时刻;
[0039] 若大于,则将所述目标状态区段的结束时刻更新为所述变更时刻与所述预设超时时长的和,得到更新后的结束时刻;
[0040] 将所述目标状态区段的开始时刻与所述更新后的结束时刻所对应的状态值更新为所述变更状态值,进而得到更新后的状态区段。
[0041] 第三方面,本发明实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现
上述第一方面任一项所述的方法的步骤。
[0042] 第四方面,本发明实施例提供了一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行上述第一方面任一项所述的方法的步骤。
[0043] 在本发明实施例中,提供了一种物联网设备状态事件的处理方法,该方法包括:获取目标物联网设备当前时刻的状态区段,其中,状态区段包括:状态值、状态值生效的开始
时刻和状态值生效的结束时刻,当当前时刻为初始时刻时,状态区段中所有时间段的状态
值都为无状态;当接收到目标物联网设备上传的状态事件后,基于状态事件中携带的变更
状态值和变更时刻对状态区段进行更新,得到更新后的状态区段。通过上述描述可知,在初
始时刻,目标物联网设备的状态区段中所有时间的状态都为无状态,当接收到目标物联网
设备上传的状态事件后,直接根据其中的变更状态值和变更时刻更新状态区段,可见,本发
明的方法在处理状态事件时,只是根据物联网设备上传的状态事件进行的,无需额外的定
时器逻辑,简单,节省物联网平台资源,另外,若因网络原因目标物联网设备无法上传状态
事件,可以在网络恢复后,再进行状态事件的上传,该方法还能根据上述状态事件返回对之
前时刻的状态值进行变更处理,更加准确,缓解了现有的物联网设备状态事件的处理方法
复杂、易出错、且耗费物联网平台资源的技术问题。

附图说明

[0044] 为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的
附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前
提下,还可以根据这些附图获得其他的附图。
[0045] 图1为本发明实施例提供的一种物联网设备状态事件的处理方法的流程示意图;
[0046] 图2为本发明实施例提供的基于状态事件中携带的变更状态值和变更时刻对状态区段进行更新的方法流程图;
[0047] 图3为本发明实施例提供的另一种物联网设备状态事件的处理方法的流程图;
[0048] 图4为本发明实施例提供的目标物联网设备开机状态事件的示意图;
[0049] 图5为本发明实施例提供的目标物联网设备多状态的示意图;
[0050] 图6为本发明实施例提供的一种物联网设备状态事件的处理装置的示意图。

具体实施方式

[0051] 下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技
术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范
围。
[0052] 为便于对本实施例进行理解,首先对本发明实施例所公开的一种物联网设备状态事件的处理方法进行详细介绍。
[0053] 实施例一:
[0054] 为便于对本实施例进行理解,首先对本发明实施例所公开的一种物联网设备状态事件的处理方法进行详细介绍,参见图1所示的一种物联网设备状态事件的处理方法的流
程示意图,主要包括以下步骤:
[0055] 步骤S102,获取目标物联网设备当前时刻的状态区段,其中,状态区段包括:状态值、状态值生效的开始时刻和状态值生效的结束时刻,状态区段用于表征目标物联网设备
在生效时间段内的状态值,当当前时刻为初始时刻时,状态区段中所有时间段的状态都为
无状态;
[0056] 在本发明实施例中,状态数据采用状态区段的形式来进行管理和存储,该状态区段包括:状态值、状态值生效的开始时刻和状态值生效的结束时刻,还可以包括状态类型以
及设备ID等信息,上述状态值可以为布林资料型态支持双态状态,也可以为整数资料型态
支持多态状态。
[0057] 在目标物联网设备的初始时刻(该初始时刻可以为目标物联网设备与物联网平台建立连接的时刻),目标物联网设备的所有状态区段中的所有时间段的状态都为无状态。
[0058] 上述无状态可以根据需要进行状态的表示,例如,可以将无状态表示为设备停机,也可以将无状态表示为设备断线,本发明实施例对上述具体表示情况不进行限定。
[0059] 步骤S104,当接收到目标物联网设备上传的状态事件后,基于状态事件中携带的变更状态值和变更时刻对状态区段进行更新,得到更新后的状态区段。
[0060] 下文中再对该过程进行详细描述,在此不再赘述。
[0061] 在本发明实施例中,提供了一种物联网设备状态事件的处理方法,该方法包括:获取目标物联网设备当前时刻的状态区段,其中,状态区段包括:状态值、状态值生效的开始
时刻和状态值生效的结束时刻,当当前时刻为初始时刻时,状态区段中所有时间段的状态
值都为无状态;当接收到目标物联网设备上传的状态事件后,基于状态事件中携带的变更
状态值和变更时刻对状态区段进行更新,得到更新后的状态区段。通过上述描述可知,在初
始时刻,目标物联网设备的状态区段中所有时间的状态都为无状态,当接收到目标物联网
设备上传的状态事件后,直接根据其中的变更状态值和变更时刻更新状态区段,可见,本发
明的方法在处理状态事件时,只是根据物联网设备上传的状态事件进行的,无需额外的定
时器逻辑,简单,节省物联网平台资源,另外,若因网络原因目标物联网设备无法上传状态
事件,可以在网络恢复后,再进行状态事件的上传,该方法还能根据上述状态事件返回对之
前时刻的状态值进行变更处理,更加准确,缓解了现有的物联网设备状态事件的处理方法
复杂、易出错、且耗费物联网平台资源的技术问题。
[0062] 上述内容对本发明的物联网设备状态事件的处理方法进行了简要介绍,下面对其中涉及到的具体内容进行详细介绍。
[0063] 在本发明的一个可选实施例中,参考图2,基于状态事件中携带的变更状态值和变更时刻对状态区段进行更新,包括:
[0064] 步骤S201,获取预设超时时长;
[0065] 上述预设超时时长表示目标物联网设备超过这个时长若没有任何状态更新上传,其状态值就会被设置为“无状态”或任何使用者指定的状态值。
[0066] 步骤S202,在状态区段中确定变更时刻所属的目标状态区段;
[0067] 步骤S203,判断变更状态值与目标状态区段的状态值是否相同;若相同,执行步骤S204;若不同,执行步骤S208;
[0068] S204,判断变更时刻与预设超时时长的和是否大于目标状态区段的结束时刻;若大于,执行步骤S205;若不大于,执行步骤S207;
[0069] S205,将目标状态区段的结束时刻更新为变更时刻与预设超时时长的和,得到更新后的结束时刻;
[0070] S206,将目标状态区段的开始时刻与更新后的结束时刻所对应的状态值更新为变更状态值,进而得到更新后的状态区段;
[0071] 步骤S207,不进行任何操作;
[0072] 步骤S208,判断变更时刻、变更时刻与预设超时时长的和是否属于目标状态区段的开始时刻和结束时刻;若属于,执行步骤S209;若不属于,执行步骤S210;
[0073] 步骤S209,将目标状态区段划分为第一子状态区段和第二子状态区段,并创建第一新状态区段,其中,第一子状态区段的开始时刻为目标状态区段的开始时刻,第一子状态
区段的结束时刻为变更时刻,第二子状态区段的开始时刻为变更时刻与预设超时时长的
和,第二子状态区段的结束时刻为目标状态区段的结束时刻,第一新状态区段的开始时刻
为变更时刻,第一新状态区段的结束时刻为变更时刻与预设超时时长的和,且第一新状态
区段的状态值为变更状态值;
[0074] 步骤S210,将目标状态区段的结束时刻更新为变更时刻;变更时刻之外的状态为无状态;
[0075] 步骤S211,判断变更时刻、变更时刻与预设超时时长的和之间是否存在不是无状态的状态区段;若不存在,执行步骤S212;若存在,执行步骤S213;
[0076] 步骤S212,将变更时刻与预设超时时长的和确定为目标时刻;
[0077] 步骤S213,在变更时刻、变更时刻与预设超时时长的和之间确定第一个状态值不是无状态的状态区段的开始时刻,并将第一个状态值不是无状态的状态区段的开始时刻作
为目标时刻;
[0078] 步骤S214,判断变更时刻和目标时刻之间是否存在状态值为无状态的状态区段;若存在,执行步骤S215;若不存在,执行步骤S216;
[0079] 步骤S215,清除变更时刻和目标时刻之间的状态值为无状态的区段,并创建第二新状态区段,其中,第二新状态区段的开始时刻为变更时刻,第二新状态区段的结束时刻为
目标时刻,且第二新状态区段的状态值为变更状态值;
[0080] 步骤S216,创建第二新状态区段。
[0081] 图3是以变更状态值为state,变更时刻为t1,目标状态区段为s1,预设超时时长为timeout为例对本发明的物联网设备状态事件的处理方法进行的介绍。
[0082] 为了对本发明的物联网设备状态事件的处理方法更好的理解,参考图4,下面以一个目标物联网设备开机的状态为例进行介绍(其中,预设超时时长设置为2个小时)。
[0083] S1初始时刻,设置所有时间段的状态都为无状态(即停机),图4中用off表示,此时的状态区段为(0,‑∞,∞),其中状态区段中的0表示无状态,‑∞表示无状态生效的开始时
刻,∞表示无状态生效的结束时刻,下述状态区段中的各参量的含义与这里的含义相似,后
续内容中不再展开描述;
[0084] S2收到目标物联网设备上传的开机的状态事件(1,5:00),其中状态事件中的1表示开机状态,即变更状态值,5:00表示开机的时刻,即变更时刻(下述状态事件的含义与此
相似,后续内容中不再展开介绍),按照本发明的处理方法进行处理后,得到的更新后的状
态区段为:(0,‑∞,5:00),(1,5:00,7:00),(0,7:00,∞),原先的无状态被拆成了两段,其中
一段开机状态为5点至7点,当查询开机的状态时,对应的时间段为5点至7点;
[0085] S3收到目标物联网设备上传的开机的状态事件(1,6:00),按照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,5:00),(1,5:00,8:00),(0,8:00,∞),原
来5点至7点的开机状态延长为5点至8点,当查询开机的状态时,对应的时间段为5点至8点;
[0086] S4收到目标物联网设备上传的开机的状态事件(1,10:00),按照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,5:00),(1,5:00,8:00),(0,8:00,10:
00),(1,10:00,12:00),(0,12:00,∞),新加了一段10点到12点的开机区段,当查询开机的
状态时,对应的时间段就有两段;
[0087] S5收到目标物联网设备上传的开机的状态事件(1,12:00),按照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,5:00),(1,5:00,8:00),(0,8:00,10:
00),(1,10:00,14:00),(0,14:00,∞),原来10点至12点的开机区段延长为10点至14点,当
查询开机的状态时,对应的时间段还是两段;
[0088] S6收到目标物联网设备回补的开机的状态事件(1,2:30),按照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,2:30),(1,2:30,4:30),(0,4:30,5:00),
(1,5:00,8:00),(0,8:00,10:00),(1,10:00,14:00),(0,14:00,∞),多了一段2:30至4:30
的开机时段,并把原来的无状态拆成了两段;
[0089] S7收到目标物联网设备回补的开机的状态事件(1,4:00),按照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,2:30),(1,2:30,8:00,(0,8:00,10:00),
(1,10:00,14:00),(0,14:00,∞),原来的2:30至4:30和5:00至8:00因为4:00的开机状态合
并成一段,从2:30至8:00都为开机状态。
[0090] 为了对本发明的物联网设备状态事件的处理方法更好的理解,参考图5,下面以一个目标物联网设备多状态的例子进行介绍(其中,预设超时时长设置为2个小时)。
[0091] S1初始时刻,设置所有时间段的状态都为无状态,图5中用off表示,此时的状态区段为(0,‑∞,∞),其中状态区段中的0表示无状态,‑∞表示无状态生效的开始时刻,∞表示
无状态生效的结束时刻,下述状态区段中的各参量的含义与这里的含义相似,后续内容中
不再展开描述;
[0092] S2收到目标物联网设备上传的状态事件(1,5:00),其中状态事件中的1表示变更状态值,5:00表示变更时刻(下述状态事件的含义与此相似,后续内容中不再展开介绍),按
照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,5:00),(1,5:00,7:
00),(0,7:00,∞),原先的无状态被拆成了两段,状态1为5点至7点;
[0093] S3收到目标物联网设备上传的状态事件(2,6:00),按照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,5:00),(1,5:00,6:00),(2,6:00,8:00),(0,8:
00,∞),5点至6点为状态1,6点至8点为状态2;
[0094] S4收到目标物联网设备上传的状态事件(3,10:00),按照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,5:00),(1,5:00,6:00),(2,6:00,8:00),(0,
8:00,10:00),(3,10:00,12:00),(0,12:00,∞),新加了一段10点到12点的状态3区段;
[0095] S5收到目标物联网设备上传的状态事件(3,12:00),按照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,5:00),(1,5:00,8:00),(2,6:00,8:00),(0,
8:00,10:00),(3,10:00,14:00),(0,14:00,∞),原来10点至12点的状态3区段延长至10点
至14点;
[0096] S6收到目标物联网设备回补的状态事件(1,2:30),按照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,2:30),(1,2:30,4:30),(0,4:30,5:00),(1,5:
00,6:00),(2,6:00,8:00),(0,8:00,10:00),(3,10:00,14:00),(0,14:00,∞),多了一段2:
30至4:30的状态1的区段;
[0097] S7收到目标物联网设备回补的状态事件(1,4:00),按照本发明的处理方法进行处理后,得到的更新后的状态区段为:(0,‑∞,2:30),(1,2:30,6:00),(2,6:00,8:00),(0,8:
00,10:00),(3,10:00,14:00),(0,14:00,∞),原来的2:30至4:30和5:00至6:00因为4:00的
状态1合并成一段,从2:30至6:00都为状态1。
[0098] 在本发明的一个可选实施例中,该方法还包括:获取目标物联网设备的状态查询请求,其中,状态查询请求中携带有待查询时间段,或,待查询状态;根据状态查询请求显示
目标物联网设备的状态查询结果。
[0099] 具体的,查询目标物联网设备的状态时,可直接用时间段来查询目标物联网设备在某个时间段的状态,以图5最后的结果(最后一行)为例,该台物联网设备在6点至8点间的
状态为2,到了8点,因为超过了预设超时时长2小时未上传状态事件,会查询到8点至10点中
间是无状态,10点之后就能查询到状态变为3了,断线状态回补成功的把2:30至5点中间的
设备状态更正为状态1(回补前为无状态);也可以用状态查询目标物联网设备在某个状态
的时间段。
[0100] 本发明的物联网设备状态事件的处理方法可高效处理物联网设备的状态事件,不需要使用定时器来特殊处理设备停机、断线等造成的状态数据上传中断(即传统方案中,是
采用定时器的逻辑来特殊处理设备的停机、断线等情况的),直接支持查询设备状态并包括
无状态的各个时间段。
[0101] 实施例二:
[0102] 本发明实施例还提供了一种物联网设备状态事件的处理装置,该物联网设备状态事件的处理装置主要用于执行本发明实施例上述内容所提供的物联网设备状态事件的处
理方法,以下对本发明实施例提供的物联网设备状态事件的处理装置做具体介绍。
[0103] 图6是本发明实施例的一种物联网设备状态事件的处理装置的示意图,如图6所示,该物联网设备状态事件的处理装置主要包括:获取单元10和更新单元20,其中:
[0104] 获取单元,用于获取目标物联网设备当前时刻的状态区段,其中,状态区段包括:状态值、状态值生效的开始时刻和状态值生效的结束时刻,状态区段用于表征目标物联网
设备在生效时间段内的状态值,当当前时刻为初始时刻时,状态区段中所有时间段的状态
都为无状态;
[0105] 更新单元,用于当接收到目标物联网设备上传的状态事件后,基于状态事件中携带的变更状态值和变更时刻对状态区段进行更新,得到更新后的状态区段。
[0106] 在本发明实施例中,提供了一种物联网设备状态事件的处理装置,该装置包括:获取目标物联网设备当前时刻的状态区段,其中,状态区段包括:状态值、状态值生效的开始
时刻和状态值生效的结束时刻,当当前时刻为初始时刻时,状态区段中所有时间段的状态
值都为无状态;当接收到目标物联网设备上传的状态事件后,基于状态事件中携带的变更
状态值和变更时刻对状态区段进行更新,得到更新后的状态区段。通过上述描述可知,在初
始时刻,目标物联网设备的状态区段中所有时间的状态都为无状态,当接收到目标物联网
设备上传的状态事件后,直接根据其中的变更状态值和变更时刻更新状态区段,可见,本发
明的方法在处理状态事件时,只是根据物联网设备上传的状态事件进行的,无需额外的定
时器逻辑,简单,节省物联网平台资源,另外,若因网络原因目标物联网设备无法上传状态
事件,可以在网络恢复后,再进行状态事件的上传,该方法还能根据上述状态事件返回对之
前时刻的状态值进行变更处理,更加准确,缓解了现有的物联网设备状态事件的处理装置
复杂、易出错、且耗费物联网平台资源的技术问题。
[0107] 可选地,更新单元还用于:获取预设超时时长;在状态区段中确定变更时刻所属的目标状态区段;判断变更状态值与目标状态区段的状态值是否相同;若相同,则判断变更时
刻与预设超时时长的和是否大于目标状态区段的结束时刻;若大于,则将目标状态区段的
结束时刻更新为变更时刻与预设超时时长的和,得到更新后的结束时刻;将目标状态区段
的开始时刻与更新后的结束时刻所对应的状态值更新为变更状态值,进而得到更新后的状
态区段。
[0108] 可选地,更新单元还用于:若不同,则判断变更时刻、变更时刻与预设超时时长的和是否属于目标状态区段的开始时刻和结束时刻;若属于,则将目标状态区段划分为第一
子状态区段和第二子状态区段,并创建第一新状态区段,其中,第一子状态区段的开始时刻
为目标状态区段的开始时刻,第一子状态区段的结束时刻为变更时刻,第二子状态区段的
开始时刻为变更时刻与预设超时时长的和,第二子状态区段的结束时刻为目标状态区段的
结束时刻,第一新状态区段的开始时刻为变更时刻,第一新状态区段的结束时刻为变更时
刻与预设超时时长的和,且第一新状态区段的状态值为变更状态值。
[0109] 可选地,更新单元还用于:若不属于,则将目标状态区段的结束时刻更新为变更时刻;判断变更时刻、变更时刻与预设超时时长的和之间是否存在不是无状态的状态区段;若
不存在,则将变更时刻与预设超时时长的和确定为目标时刻;若存在,则在变更时刻、变更
时刻与预设超时时长的和之间确定第一个状态值不是无状态的状态区段的开始时刻,并将
第一个状态值不是无状态的状态区段的开始时刻作为目标时刻;判断变更时刻和目标时刻
之间是否存在状态值为无状态的状态区段;若存在,则清除变更时刻和目标时刻之间的状
态值为无状态的区段,并创建第二新状态区段,其中,第二新状态区段的开始时刻为变更时
刻,第二新状态区段的结束时刻为目标时刻,且第二新状态区段的状态值为变更状态值。
[0110] 可选地,更新单元还用于:若变更时刻和目标时刻之间不存在状态值为无状态的状态区段,则创建第二新状态区段。
[0111] 可选地,该装置还用于:获取目标物联网设备的状态查询请求,其中,状态查询请求中携带有待查询时间段,或,待查询状态;根据状态查询请求显示目标物联网设备的状态
查询结果。
[0112] 本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
[0113] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。本
申请实施例提供的物联网设备状态事件的处理装置与上述实施例提供的物联网设备状态
事件的处理方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效
果。
[0114] 另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可
以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是
两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本
发明中的具体含义。
[0115] 所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说
对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计
算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个
人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存
储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0116] 在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了
便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、
以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、
“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
[0117] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依
然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进
行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术
方案的范围。