关于设备掉线的原因分析
设备成功登陆上m2m服务器后,设备再掉线,通常是由于网络不稳定或设备长时间没有向m2m服务器发送心跳导致的。关于心跳。设备登陆m2m服务器的时候(MQTT CONNECT),需要由设备指定一个心跳时间间隔(KeepAlive)。之后设备必须定期在这个心跳时间间隔内向m2m服务器发送心跳请求(MQTT PINGREQ),服务器收到心跳请求后会回复心跳响应(MQTT PINGRESP),否则服务器会认为设备已不在线了并主动断开该设备的连接。
心跳时间间隔(KeepAlive)建议设为60秒到600秒之间,设备定期发送心跳的时间间应小于KeepAlive的值(如KeepAlive - 10s),因为这样可以保证这个心跳请求在心跳间隔时间内有足够的时间通过网络传送到服务器。如设备在心跳时间间隔内不停有数据发往m2m服务器,可以不用再显式发送心跳,以节省网络开销。
关于MQTT的协议内容,请参考http://club.gizwits.com/forum.php?mod=viewthread&tid=714&extra=page%3D1
学习了但是 现在微信一直显示不在线不知道什么原因 微信显示不在线的时候,可以先看看已经绑定的APP中设备的状态。如果也不在线,建议把设备重新配置一遍。
微信显示不在线,已经绑定的APP中显示“局域网在线”,怎么办?
局域网在线,表示设备在本地。微信不在线,手机没有连外网?
页:
[1]