使用MQTT连接阿里云的物联网云平台(2)
上一篇讲到在阿里云的物联网平台建立物理模型(即数据点),以及如何使用虚拟设备查看设备上线时上报的JSON格式和云平台下发的JSON格式,这点对于后面项目开发来说很重要。
本篇将讲述如何使用MQTT.fx连接阿里云。
首先介绍MQTT.fx对于开发者来说是个什么样的东西,MQTT.fx能够有效的模拟设备连接云平台,相对于在云平台的虚拟设备,它还需要用户提供IP地址,用户名,密码等(可以通过证书或密钥方式),另外任何支持MQTT协议的云平台都可以使用MQTT.fx,对于不同平台,根据平台的开发文档有所不同。
MQTT.fx可以通过百度获取,这里就不进行提供了。
接下来上主菜了!
登录阿里云的物联网平台,找到自己想连接的设备,点击进去查看 如何按箭头所指获取三元 接下来需要使用到一个小工具阿里云参数小工具
可以获取到 域名:一般都是以(华东2(上海)),ProductKey + “.iot-as-mqtt.cn-shanghai.aliyuncs.com” 端口:固定1883 ClientID:deviceName + “|securemode=3,signmethod=hmacmd5|” username:deviceName & ProductKey password: 这个是hmacmd5对deviceSecret加密后得出的数据
接下来使用MQTT.fx了 然后点击OK后 Connect的 按图所示,连接成功后,填写发布的主题和订阅的主题
根据上一篇所说的 发布的主题为
/sys/{ProductKey}/{DeviceName}/thing/event/property/post
订阅的主题为
/sys/{ProductKey}/{DeviceName}/thing/service/property/set
设备上报的JSON格式
{"id":1626879369379,
"params":{"PowerSwitch":1},
"version":"1.0","method":"thing.event.property.post"
}
云平台下发设置的JSON格式
{"method":"thing.service.property.set",
"id":"1656973952",
"params":{"PowerSwitch":0},"version":"1.0.0"}
这里就不在MQTT.fx演示了,各位小伙伴自己实践一下可以加深映像哦! 没看过上一篇的可以在这点击,理解起来更容易
|