设备上线,即设备端成功连接上物联网开发平台,设备状态显示为在线;设备下线,即设备端断开与物联网开发平台的连接,设备状态显示为离线。
设备上线
设备端通过 MQTT 接入物联网开发平台。
说明:
1. 物联网开发平台提供了多种语言的 设备端 SDK,这些 SDK 已封装了设备端与物联网开发平台的交互协议。
2. 开发设备端时,需在设备端上配置设备三元组,用于设备接入物联网开发平台时,进行身份验证。
3. 设备端 SDK 安装在物理设备上。
4. 设备通电联网后,接入物联网开发平台,如果设备第一次成功连接物联网开发平台,设备状态会由“未激活”变更成“在线”。
设备下线
设备下线后,该设备在物联网平台上的状态为“离线”。设备下线分为:
设备主动下线:设备端主动断开与物联网开发平台的 MQTT 连接。
设备被动下线:物联网开发平台主动断开与设备的连接。场景如下:
有其他设备使用相同的设备三元组接入物联网平台,导致当前设备被迫下线。
您在物联网开发平台上,删除或禁用了该设备等。
MQTT 保活
MQTT 连接心跳时间为30秒至900秒,心跳时间不在此区间内,物联网开发平台会拒绝连接。 建议取值300秒以上。
从物联网开发平台发送 CONNACK 响应 CONNECT 消息时,开始心跳计时。收到 PUBLISH、SUBSCRIBE、PING 或 PUBACK 消息时,会重置计时器。物联网开发平台会定期检测设备的保活心跳,设备上线时间点与最近一次检测时间点之间的间隔即为定时检测的等待时间。最大超时时间定义为:保活心跳时间 × 1.5。若超过最大超时时间未收到设备消息,物联网开发平台将会自动断开连接。