MQTT协议接入
# MQTT协议接入
MQTT是基于TCP/IP协议栈构建的异步通信消息协议,是一种轻量级的发布、订阅信息传输协议。可在不可靠的网络环境中进行扩展,适用于设备硬件存储空间或网络带宽有限的场景。使用MQTT协议,消息发送者与接收者不受时间和空间的限制。物联网平台支持设备使用MQTT协议接入。
# 支持版本
目前物联网平台支持MQTT标准协议接入,兼容5.0、3.1.1和3.1版本协议,具体的协议请参见MQTT 5.0 (opens new window)、MQTT 3.1.1 (opens new window)和 MQTT 3.1 (opens new window)协议文档。
# MQTT客户端直连
使用MQTT客户端连接服务器。连接方法,请参见开源MQTT客户端 (opens new window)。
如果需了解MQTT协议,请参见 MQTT官方文档 (opens new window) 。
开发者接入物联网平台,连接参数如下。
接入类型 参数 描述 设备端接入 clientId {Meta}{DeviceId}
注意:
{Meta} 元字节编码
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Bit7-6 $Type : 00 device, 01 gateway, 10, 11 预留编码设备类型
Bit5-4 $Mode : 00 mqtt/ws, 01 mqtts/wss, 10, 11 预留协议类型
Bit3-2 $Algr : 00 hmacsha1, 01 sha256, 10 sha512, 11 plain
Bit1 $Format : 0 zljson, 1 encrypt(aes-128-cbc)
Bit0 : 1 固定为1, 0 保留位
{DeviceId}设备idusername {DeviceId}&{ModelId}&{TimeStamp}
{DeviceId} 设备id
{ModelId} 模型id
{TimeStamp} 时间戳password sign_hmac({DeviceToken},{Content}) 用户接入 clientId ˆ{Uid}, ˆ和Uid拼接作为mqtt客户端 id username {Token},设备Token作为mqtt客户端用户名 password {Uid},Uid 作为 mqtt 客户端密码
上次更新: 2021-12-03 21:23:34