Q群:
电话:
邮箱:
地址:
OneNET-MQTT组件是基于Paho mqtt Embedded C v1.1.0源码包上做的开发,提供自动注册设备、平台接入、主题订阅、消息发布、命令下发、心跳保持、离线重连,并支持TLS加密传输。
OneNET-MQTT 源代码目录结构如下表所示:
目录 | 说明 |
---|---|
mqtts_device | mqtt设备相关接口实现及主业务实现 |
authorization | 鉴权相关接口实现 |
cert | 存放平台根证书 |
为了保证设备在异常状态下实现快速重连,设计框架如下:
系统topic | 用途 | QoS | 可订阅 | |
---|---|---|---|---|
1 | $sys/{pid}/{device-name}/dp/post/json/accepted | 系统通知"设备上传数据点成功" | 0 | √ |
2 | $sys/{pid}/{device-name}/dp/post/json/rejected | 系统通知"设备上传数据点失败" | 0 | √ |
3 | $sys/{pid}/{device-name}/cmd/request/+ | 系统向设备下发命令 | 0 | √ |
4 | $sys/{pid}/{device-name}/cmd/response/+/+ | 系统回复"设备命令应答成功或失败" | 0 | √ |
5 | $sys/{pid}/{device-name}/image/# | 设备镜像相关所有主题 | 0 | √ |
系统topic | 用途 | QoS | 可发布 | |
---|---|---|---|---|
1 | $sys/{pid}/{device-name}/dp/post/json | 设备上传数据点 | 0/1 | √ |
2 | $sys/{pid}/{device-name}/cmd/response/{cmdid} | 设备回复命令应答 | 0/1 | √ |
3 | $sys/{pid}/{device-name}/image/update | 设备更新镜像中属性 | 0/1 | √ |
4 | $sys/{pid}/{device-name}/image/get | 设备镜像信息查询 | 0/1 | √ |
连接协议 | 地址 | 端口 | 说明 |
---|---|---|---|
MQTT | 183.230.40.16 | 8883 | 加密接口 |
MQTT | 183.230.40.96 | 1883 | 非加密接口 |
使用OneNET MQTT套件需要通过Menuconfig的图形化工具进行配置选择,配置的路径如下所示:
(Top) → Components → Cloud → OneNET → MQTT Kit
[*] Enable onenet mqtt-kit
[ ] Enable onenet device auto register
[ ] Enable mqtt-kit TLS encrypt
进行OneNET MQTT Kit 选项配置需要先在Menuconfig中选中Enable onenet mqtt-kit,然后再进行其他的配置选择。
开启OneNET MQTT组件后会自动勾选Paho MQTT组件,当用户反向取消该组件时记得手动关闭Paho MQTT组件。
开启OneNET MQTT的加密传输功能后会自动勾选Paho MQTT组件和mbedtls加密组件,当用户反向取消OneNET MQTT的加密传输功能时记得手动关闭Paho MQTT的加密配置项,并同时关闭mbedtls组件。