System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及无线通信,特别涉及一种蓝牙通信动态调整方法、装置、设备及存储介质。
技术介绍
1、在当前智能家居的网关应用中,有一种典型的场景需求,也即网关需要获知其下面的子设备的在线或离线状态,以便在子设备上线或离线的时候及时通知用户,如果子设备处于离线状态,则表征子设备可能电池耗尽或者出现了损坏。
2、如果用户没有控制子设备或者子设备没有变化的状态需要上报,那么网关和子设备之间是没有消息交互的,子设备大部分时间都处于空闲状态,在空闲状态下,网关无法知道子设备是否在线。为了实现在空闲时也能监测子设备的在离线状态,现有技术的做法一般是让子设备在空闲时周期性的发送消息给网关,称之为“心跳”,若网关发现一段时间内收不到子设备的心跳消息,则表征子设备处于离线状态。
3、通过心跳机制可以实现网关对子设备在线或离线状态的监测,但随着子设备数量的增长,网络中心跳消息的数量也随之增长,这些心跳消息可能会导致网络阻塞,增加网关的处理负担。现有技术中,为了避免消息堵塞,大多在施工时,根据现场的子设备数量,为每个子设备配置单独的心跳间隔,或在由网关周期性询问每个子设备是否在线。但上述两种方法,前者增加了人工成本,且一旦改变了子设备数量后,需要再次配置心跳间隔;后者额外增加了网关发送的询问消息,导致总消息数量增加了一倍,当子设备的离线状态变化后,网关需要较长的时间才能获知。
技术实现思路
1、有鉴于此,本专利技术的目的在于提供一种蓝牙通信动态调整方法、装置、设备及存储介质,可以根据
2、第一方面,本申请公开了一种蓝牙通信动态调整方法,应用于控制网关,包括:
3、基于初始心跳时间间隔接收子设备基于延迟时间发送的心跳消息,并通过所述心跳消息确定所述子设备的当前在线设备数量;
4、通过所述当前在线设备数量计算当前最佳心跳时间间隔,并将所述当前最佳心跳时间间隔发送至所有子设备,以便所述子设备基于所述当前最佳心跳时间间隔调整所述延迟时间,并通过得到的更新后延迟时间重新发送所述心跳消息;
5、基于所述当前最佳心跳时间间隔重新接收所述心跳消息,以进行下一轮的蓝牙通信动态调整。
6、可选的,所述基于初始心跳时间间隔接收子设备基于延迟时间发送的心跳消息,并通过所述心跳消息确定所述子设备的当前在线设备数量之前,还包括:
7、接收间隔定义指令,以基于所述间隔定义指令确定接收心跳消息的时间范围,并将所述时间范围确定为初始心跳时间间隔。
8、可选的,所述基于初始心跳时间间隔接收子设备基于延迟时间发送的心跳消息,并通过所述心跳消息确定所述子设备的当前在线设备数量,包括:
9、基于预设计时器确定当前运行时间,并判断所述当前运行时间是否大于所述初始心跳时间间隔;
10、若所述当前运行时间在所述初始心跳时间间隔的范围内,则接收子设备基于延迟时间发送的心跳消息;所述延迟时间为所述子设备基于所述初始心跳时间间隔生成的在所述初始心跳时间间隔范围内的时间间隔;
11、基于接收到的所述心跳消息统计所述子设备的当前在线设备数量。
12、可选的,所述通过所述当前在线设备数量计算当前最佳心跳时间间隔,并将所述当前最佳心跳时间间隔发送至所有子设备,以便所述子设备基于所述当前最佳心跳时间间隔调整所述延迟时间,并通过得到的更新后延迟时间重新发送所述心跳消息,包括:
13、基于预设时间间隔计算规则和所述当前在线设备数量计算与所述当前在线设备对应的当前最佳心跳时间间隔;
14、将所述当前最佳心跳时间间隔发送至与本地连接的所有子设备,以便所述所有子设备基于所述当前最佳心跳时间间隔对所述延迟时间进行更新,得到更新后延迟时间,并基于所述更新后延迟时间重新发送所述心跳消息。
15、可选的,所述基于预设时间间隔计算规则和所述当前在线设备数量计算与所述当前在线设备对应的当前最佳心跳时间间隔,包括:
16、基于所述延迟时间以及所述当前在线设备数量计算与所述当前在线设备对应的当前最佳心跳时间间隔。
17、可选的,所述基于所述当前最佳心跳时间间隔重新接收所述心跳消息,以进行下一轮的蓝牙通信动态调整,包括:
18、基于所述当前最佳心跳时间间隔重新接收所述心跳消息,以基于所述心跳消息确定新一轮当前在线设备数量,并跳转至所述通过所述当前在线设备数量计算当前最佳心跳时间间隔的步骤,以进行下一轮的蓝牙通信动态调整。
19、可选的,所述蓝牙通信动态调整方法,还包括:
20、判断本地消息队列是否出现消息堵塞,若是,则中断蓝牙通信动态调整,并基于预设间隔阈值增加所述当前最佳心跳时间间隔,得到调整后心跳时间间隔;
21、将所述调整后心跳时间间隔发送至所述所有子设备,以基于所述调整后心跳时间间隔重新进行下一轮蓝牙通信动态调整。
22、第二方面,本申请公开了一种蓝牙通信动态调整装置,应用于控制网关,包括:
23、在线设备数量确定模块,用于基于初始心跳时间间隔接收子设备基于延迟时间发送的心跳消息,并通过所述心跳消息确定所述子设备的当前在线设备数量;
24、信息发送模块,用于通过所述当前在线设备数量计算当前最佳心跳时间间隔,并将所述当前最佳心跳时间间隔发送至所有子设备,以便所述子设备基于所述当前最佳心跳时间间隔调整所述延迟时间,并通过得到的更新后延迟时间重新发送所述心跳消息;
25、通信动态调整模块,用于基于所述当前最佳心跳时间间隔重新接收所述心跳消息,以进行下一轮的蓝牙通信动态调整。
26、第三方面,本申请公开了一种电子设备,包括:
27、存储器,用于保存计算机程序;
28、处理器,用于执行所述计算机程序以实现如前述的蓝牙通信动态调整方法。
29、第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现如前述的蓝牙通信动态调整方法。
30、本申请中,首先基于初始心跳时间间隔接收子设备基于延迟时间发送的心跳消息,并通过所述心跳消息确定所述子设备的当前在线设备数量,然背后通过所述当前在线设备数量计算当前最佳心跳时间间隔,并将所述当前最佳心跳时间间隔发送至所有子设备,以便所述子设备基于所述当前最佳心跳时间间隔调整所述延迟时间,并通过得到的更新后延迟时间重新发送所述心跳消息,最后基于所述当前最佳心跳时间间隔重新接收所述心跳消息,以进行下一轮的蓝牙通信动态调整。由此可见,通过本申请的方法需要根据当前接受的心跳消息确定子设备当前在线设备数量,然后根据当前在线设备数量计算当前最佳心跳时间间隔,以便所有的子设备基于当前最佳心跳时间间隔调整发送心跳消息延迟时间,并根据更新后的延迟时间重新发送心跳消息,当网关接收到新一轮的心跳消息本文档来自技高网...
【技术保护点】
1.一种蓝牙通信动态调整方法,其特征在于,应用于控制网关,包括:
2.根据权利要求1所述的蓝牙通信动态调整方法,其特征在于,所述基于初始心跳时间间隔接收子设备基于延迟时间发送的心跳消息,并通过所述心跳消息确定所述子设备的当前在线设备数量之前,还包括:
3.根据权利要求1所述的蓝牙通信动态调整方法,其特征在于,所述基于初始心跳时间间隔接收子设备基于延迟时间发送的心跳消息,并通过所述心跳消息确定所述子设备的当前在线设备数量,包括:
4.根据权利要求1所述的蓝牙通信动态调整方法,其特征在于,所述通过所述当前在线设备数量计算当前最佳心跳时间间隔,并将所述当前最佳心跳时间间隔发送至所有子设备,以便所述子设备基于所述当前最佳心跳时间间隔调整所述延迟时间,并通过得到的更新后延迟时间重新发送所述心跳消息,包括:
5.根据权利要求4所述的蓝牙通信动态调整方法,其特征在于,所述基于预设时间间隔计算规则和所述当前在线设备数量计算与所述当前在线设备对应的当前最佳心跳时间间隔,包括:
6.根据权利要求1所述的蓝牙通信动态调整方法,其特征在于,所述
7.根据权利要求1至6任一项所述的蓝牙通信动态调整方法,其特征在于,还包括:
8.一种蓝牙通信动态调整装置,其特征在于,应用于控制网关,包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的蓝牙通信动态调整方法。
...【技术特征摘要】
1.一种蓝牙通信动态调整方法,其特征在于,应用于控制网关,包括:
2.根据权利要求1所述的蓝牙通信动态调整方法,其特征在于,所述基于初始心跳时间间隔接收子设备基于延迟时间发送的心跳消息,并通过所述心跳消息确定所述子设备的当前在线设备数量之前,还包括:
3.根据权利要求1所述的蓝牙通信动态调整方法,其特征在于,所述基于初始心跳时间间隔接收子设备基于延迟时间发送的心跳消息,并通过所述心跳消息确定所述子设备的当前在线设备数量,包括:
4.根据权利要求1所述的蓝牙通信动态调整方法,其特征在于,所述通过所述当前在线设备数量计算当前最佳心跳时间间隔,并将所述当前最佳心跳时间间隔发送至所有子设备,以便所述子设备基于所述当前最佳心跳时间间隔调整所述延迟时间,并通过得到的更新后延迟时间重新发送所述心跳消...
【专利技术属性】
技术研发人员:杨诗伟,
申请(专利权)人:上海庆科信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。