物联网设备在线状态识别方法、在线信息平台及服务器技术

技术编号:22977306 阅读:43 留言:0更新日期:2020-01-01 00:23
本发明专利技术实施例提供一种物联网设备在线状态识别方法、在线信息平台及服务器,该方法包括:接收EMQ服务器发送的每一客户端的状态信息;从所述状态信息中解析出每一客户端的在线状态;其中,所述EMQ服务器与所有客户端相连,所述EMQ服务器已接收客户端上下线主题订阅,所述状态信息为所述EMQ服务器检测到客户端上下线状态变化后发送。在线信息平台无需与每一客户端建立识别在线状态的连接,若发生程序异常结束,异常恢复后能够从EMQ服务器中获取客户端的在线状态,有效避免直接判断客户端在线状态出现的判断失误。在线信息平台与客户端之间进行断线重连后,不会影响断线重连的逻辑,进而保证了客户端在线状态监测的可控性。

Online state identification method, online information platform and server of Internet of things equipment

【技术实现步骤摘要】
物联网设备在线状态识别方法、在线信息平台及服务器
本专利技术涉及物联网领域,尤其涉及一种物联网设备在线状态识别方法、在线信息平台及服务器。
技术介绍
目前,物联网时代正在兴起,众多物联网设备开始普及。例如,门锁、考勤设备、共享单车等设备纷纷有了联网需求。门锁是安装在不可控的场景中的,那么就产生了判断门锁的在线状态的需求。现有的HTTP的连接不能很好地满足这种网络状态差、判断连接状态的情况,于是选择使用MQTT协议。目前的方法主要为,通过MQTT连接中的MqttCallback接口来判断,该接口中提供了connectionLost回调函数,通过回调查询连接是否断开。现有的MQTT服务端并不能很好的支持门锁设备在线状态的查询。例如,MQTT服务端出现程序异常结束时,MQTT服务器与客户端的连接异常,则无法准确的判断当前连接状态。MQTT服务器与客户端之间进行断线重连后,在线状态的识别会影响断线重连的逻辑,不能很好的支持门锁设备在线状态的查询。
技术实现思路
为了解决上述问题,本专利技术实施例提供一种物联网设备在线状态识别方法、在线信息平台及服务器。第一方面,本专利技术实施例提供一种物联网设备在线状态识别方法,包括:接收EMQ服务器发送的每一客户端的状态信息;从所述状态信息中解析出每一客户端的在线状态;其中,所述EMQ服务器与所有客户端相连,所述EMQ服务器已接收客户端上下线主题订阅,所述状态信息为所述EMQ服务器检测到客户端上下线状态变化后发送。进一步地,所述接收EMQ服务器发送的每一客户端的状态信息之前,还包括:使用通配符匹配所有客户端后,向所述EMQ服务器发送客户端上下线主题订阅请求信息。进一步地,所述向所述EMQ服务器发送客户端上下线主题订阅请求信息之后,还包括:开启会话重用机制,并将持久化消息参数的状态值设置为使能。进一步地,所述接收EMQ服务器发送的每一客户端的状态信息,具体为接收EMQ服务器发送的MqttTopic主题,相应地,所述从所述状态信息中解析出每一客户端的在线状态,包括:从messageArrived回调函数中提取MqttTopic主题,从所述MqttTopic主题中获取客户端上下线状态对应的标识,确定每一客户端的在线状态。第二方面,本专利技术实施例提供一种物联网设备在线状态识别方法,包括:EMQ服务器若检测到客户端上下线状态变化,则向在线信息平台发送所述客户端的状态信息,以供所述在线信息平台从所述状态信息中解析出所述客户端的在线状态;其中,所述EMQ服务器与所有客户端相连,所述EMQ服务器已接收在线信息平台对于客户端上下线主题的订阅。进一步地,所述向在线信息平台发送所述客户端的状态信息之前,还包括:接收在线信息平台使用通配符匹配所有客户端后,向所述EMQ服务器发送的客户端上下线主题订阅请求信息。第三方面,本专利技术实施例提供一种在线信息平台,包括:接收模块,用于接收EMQ服务器发送的每一客户端的状态信息;处理模块,用于从所述状态信息中解析出每一客户端的在线状态;其中,所述EMQ服务器与所有客户端相连,所述EMQ服务器已接收客户端上下线主题订阅,所述状态信息为所述EMQ服务器检测到客户端上下线状态变化后发送。第四方面,本专利技术实施例提供一种服务器,包括:发送模块,用于若检测到客户端上下线状态变化,则向在线信息平台发送客户端的状态信息,以供所述在线信息平台从所述状态信息中解析出所述客户端的在线状态;其中,所述服务器为EMQ服务器,与所有客户端相连,所述EMQ服务器已接收在线信息平台对于客户端上下线主题的订阅。第五方面,本专利技术实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现本专利技术第一方面或第二方面物联网设备在线状态识别方法的步骤。第六方面,本专利技术实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本专利技术第一方面或第二方面物联网设备在线状态识别方法的步骤。本专利技术实施例提供的物联网设备在线状态识别方法、在线信息平台及服务器,在线信息平台接收EMQ服务器发送的每一客户端的状态信息,而非从每一客户端接收状态信息,无需与每一客户端建立识别在线状态的连接。若在线信息平台发生程序异常结束,异常恢复后能够从EMQ服务器中获取客户端的在线状态,有效避免直接判断客户端在线状态出现的判断失误。在线信息平台与客户端之间进行断线重连后,由于无需与每一客户端建立在线状态识别的连接,从而不会影响断线重连的逻辑,进而保证了客户端在线状态监测的可控性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的物联网设备在线状态识别方法流程图;图2为本专利技术实施例提供的在线信息平台结构图;图3为本专利技术实施例提供的一种电子设备的实体结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供一种物联网设备在线状态识别方法,基于MQTT协议实现。该方法可应用于
技术介绍
中判断智能门锁的在线状态的场景,也可以用于其它物联网设备的在线状态判断的场景,如考勤设备、共享单车等,本专利技术实施例对此不作具体限定。图1为本专利技术实施例提供的物联网设备在线状态识别方法流程图,如图1所示,本专利技术实施例提供一种物联网设备在线状态识别方法,包括:101,接收EMQ服务器发送的每一客户端上下线后的状态信息;102,从状态信息中解析出每一客户端的在线状态;其中,EMQ服务器与所有客户端相连,EMQ服务器已接收客户端上下线主题订阅,状态信息为EMQ服务器检测到客户端上下线状态变化后发送。在101中,MQTT(消息队列遥测传输)是ISO标准下基于发布/订阅范式的消息协议。它工作在TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议。EMQ(Erlang/Enterprise/ElasticMQTTBroker)是基于Erlang/OTP平台开发的开源物联网MQTT消息服务器。Erlang/OTP是出色的软实时(Soft-Realtime)、低延时(Low-Latency)、分布式(Distributed)的语言平台。在本专利技术实施例中,由在线信息平台作为执行主体实现。在线信息平台相当于一个MQTT服务器,用于获取物联网客户端的在线本文档来自技高网
...

【技术保护点】
1.一种物联网设备在线状态识别方法,其特征在于,包括:/n接收EMQ服务器发送的每一客户端的状态信息;/n从所述状态信息中解析出每一客户端的在线状态;/n其中,所述EMQ服务器与所有客户端相连,所述EMQ服务器已接收客户端上下线主题订阅,所述状态信息为所述EMQ服务器检测到客户端上下线状态变化后发送。/n

【技术特征摘要】
1.一种物联网设备在线状态识别方法,其特征在于,包括:
接收EMQ服务器发送的每一客户端的状态信息;
从所述状态信息中解析出每一客户端的在线状态;
其中,所述EMQ服务器与所有客户端相连,所述EMQ服务器已接收客户端上下线主题订阅,所述状态信息为所述EMQ服务器检测到客户端上下线状态变化后发送。


2.根据权利要求1所述的物联网设备在线状态识别方法,其特征在于,所述接收EMQ服务器发送的每一客户端的状态信息之前,还包括:
使用通配符匹配所有客户端后,向所述EMQ服务器发送客户端上下线主题订阅请求信息。


3.根据权利要求2所述的物联网设备在线状态识别方法,其特征在于,所述向所述EMQ服务器发送客户端上下线主题订阅请求信息之后,还包括:
开启会话重用机制,并将持久化消息参数的状态值设置为使能。


4.根据权利要求1所述的物联网设备在线状态识别方法,其特征在于,所述接收EMQ服务器发送的每一客户端的状态信息,具体为接收EMQ服务器发送的MqttTopic主题,相应地,所述从所述状态信息中解析出每一客户端的在线状态,包括:
从messageArrived回调函数中提取MqttTopic主题,从所述MqttTopic主题中获取客户端上下线状态对应的标识,确定每一客户端的在线状态。


5.一种物联网设备在线状态识别方法,其特征在于,包括:
EMQ服务器若检测到客户端上下线状态变化,则向在线信息平台发送所述客户端的状态信息,以供所述在线信息平台从所述状态信息中解析出所述客户端的在线状态;
其...

【专利技术属性】
技术研发人员:张立彭骏吉纲陈琦王卓黄刚张艳君
申请(专利权)人:武汉普利商用机器有限公司精伦电子股份有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1