华为IoTDA平台下发MQTT消息

华为IoTDA平台消息下发指南

前一篇博文介绍了如何使用MQTTX连接华为IoTDA平台并上报消息,本文介绍一下如何下发消息。

IoT设备接入平台支持MQTT协议设备进行命令下发,属性设置,属性查询以及消息下发等操作。
在进入指定设备的页面后,选择“云端下发”,然后点击“下发消息”即可发送消息。

 消息下发不依赖产品模型,平台会以异步方式(消息下发后无需等待设备侧回复响应)下发消息给设备。当前仅MQTT设备支持消息下发。在下发消息对话框中选定topic,并输入内容就可以下发消息。

MQTTX在收到服务器消息后会进行显示。

 

下位机与华为云平台IOTDA)通过MQTT协议建立连接,不同类型的下位机有不同的连接方式: ### MQTT设备建链 MQTT设备可通过MQTT协议连接,若集成了华为IoT Device SDK或使用原生MQTT协议接入,以json数据格式传输给平台时,平台无需使用编解码插件;若为二进制上传,则需先开发编解码插件。MQTT是长连接,需先建链才能进行数据传输,可通过安全加密方式8883端口接入(推荐),也可通过非安全加密方式1883端口接入[^3]。 ### NB - IOT模块(M5311)连接 使用MQTT协议对接华为云IOT平台时,相关AT指令参数需根据实际情况修改。具体步骤如下: ```plaintext AT+MQTTCFG="iot-mqtts.cn-north-4.myhuaweicloud.com",1883,"5eaaa3ed3766a6040511451a_123_0_0_2020043018",120,"5eaaa3ed3766a6040511451a_123","35415eb57f16397205d0056ca4269fa90fc17c4dbcbc8a8f717b48dcea70d3a3",1 ``` 说明: - 第三个参数“客户端ID”必须按照华为云平台要求的格式,即:设备ID + 下划线 + 0或1 + 下划线 + 0或1 + 下划线 + 时间戳(具体参考平台官方文档中:”文档首页 > 设备接入IoTDA > API参考 > 设备MQTT接口参考 > 设备连接鉴权“有关内容)。 - 第四个参数“用户名”即华为云平台中的设备ID。 - 第五个参数“密码”的值为使用“HMACSHA256”算法以时间戳为密钥,对平台密钥(创建设备时设置的)进行加密后的值。平台开发文档中提供了一个软件,可生成该值后复制到程序中。 发送连接建立请求: ```plaintext AT+MQTTOPEN=1,1,0,0,0,"","" ``` 之后可根据需求订阅平台命令下发topic和平台设置属性主题: ```plaintext AT+MQTTSUB="$oc/devices/5eaaa3ed3766a6040511451a_123/sys/commands/#",0 AT+MQTTSUB="$oc/devices/5eaaa3ed3766a6040511451a_123/sys/properties/set/#",0 ``` 注意新老版本的主要区别之一是平台默认的topic不同,若需要老版本V3版本的topic可去开发文档里找[^4]。 ### 4G模块A7680连接 使用如下AT指令连接到华为云: ```plaintext AT+CMQTTCONNECT=0,"tcp://a1469f2300.st1.iotda-device.cn-east-3.myhuaweicloud.com:1883",60,1,"6865fd3d94a9a05c336eb16e_TEST","18e387f98207544bb8dee6a1e2c5e6496553cd3a5553de84de825dda082d75ae" ``` [^5] ### C#编写的上位机连接 若使用C#编写的上位机,前期需要准备VS2019和华为云平台。项目中使用到第三方库MQTTnet(v3.0.11)和MQTTnet.Extensions.ManagedClient(v3.0.11)。代码目录包含App.config(Server地址和设备信息配置文件)、EncryptUtil.cs(设备密钥加密辅助类)、FrmMqttDemo.cs(窗体界面)、Program.cs(Demo程序启动入口)等。通过设备MQTTS/MQTT协议接入平台,可通过平台接口实现“数据上报”、“命令下发”的功能[^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神一样的老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值