我的云文档怎么没有了(我的云文档怎么找)
2690
2022-05-29
根据参考文档实现,个人能力有限,如有不足或者错误之处,请批评指正。
参考文档:开发文档 。
实践简述:通过MQTT.fx工具,以MQTT协议接入华为物联网平台。给大家分享一下过程总结。
目录
一、平台创建设备
获取ip地址
创建MQTT产品
注册设备
二、安装MQTT.fx、生成连接信息
安装MQTT.fx工具
获取鉴权信息
三、与平台连接
一、平台创建设备
进入iot物联网->设备管理->立即使用,即可进入物联网平台控制台
首先查看自己的应用和设备接入地址。保存自己的MQTT的协议地址以及端口号即可。(用于建立TCP连接)
创建MQTT产品
a.在快捷操作中,点击“创建产品”进入"IoT Platform"界面
b.点击“新增产品模型”进行MQTT模型添加(即创建产品)
点击手动创建,填入自己相应的信息即可(用于测试,可以随意填入)
注册设备
在左侧导航栏中,选择设备->设备注册,在设备注册页面点击“+创建”,进行设备添加。
注意:设备识别码可以随意填入,但是要求唯一。
完成后,记得保存自己的设备ID以及密码哦。
至此,平台端设备创建完成。可在IoT Platform页面查看设备相关信息。
二、安装MQTT.fx、生成连接信息
参考:鉴权信息
安装MQTT.fx
访问 MQTT.fx下载网页,下载并安装MQTT.fx(最新版本即可)。
运行mqttfx.exe即可。
获取鉴权信息
a.通过jar工具生成
下载 工具jar包,然后在相应目录的cmd运行jar包 (java -jar 包名.jar)
填入刚刚保存的设备ID以及密码,即可生成
注意:cmd一定要是对应的jar包目录;需要java环境。
b.自己手动生成
当自己没有java环境时,可以手动生成。一定要参考官方文档。
clientId : 设备ID_0_0_当前时间戳(如:2020040821);
username :设备ID
password采用的是“HMACSHA256”加密,密钥为时间戳(如:2020040821),当然,我们设置的是不检验时间戳的正确性,但时间戳不能少。
三、与平台连接
当以及获取鉴权信息后,即可通过MQTT协议接入华为物联网平台。
打开MQTT.fx,填入相关信息。
完成后,点击Connect,即可连接。
查看平台设备信息,显示在线,成功接入。
注意:本次没有进行时间戳校验,因此接入相对简单容易。
四.Pulish
(1)Pulish,顾名思义就是发布主题。连接MQTT服务器后,发布自己的消息主题,可推送给订阅者。
(2)三种服务质量等级
注:??为16进制消息体
华为云物联网平台不支持QoS2。个人认为,应该是Qos2没有必要,占用资源多,且数据可以通过软件判断是否到达。
上报数据示例:
{ "services": [{ "service_id": "Temperature", "properties": { "value": 23 }, "event_time": "20151212T121212Z" }, { "service_id": "Battery", "properties": { "level": 80 }, "event_time": "20151212T121212Z" } ] }
(3)在华为云物联网平台操作注意事项
发布的topic需要有固定的开头,形式为$oc/devices/{device_id}/sys/properties/report。
device_id:设备ID
分隔符用"/"
五.Subcribe
Subcribe的操作和Pulish差不多。只不过是订阅别人的主题。当订阅的topic有消息发布时,服务器会推送给订阅者。
同理,也和publish一样有Qos0,Qos1,Qos2。
使用华为云物联网平台,订阅topic时,topic名称是$oc/devices/{device_id}/sys/command/#。
六.retain
注:华为物联网平台不支持retian msg
retain,即持久消息,消息一直保留在服务器上,不仅推送给当前订阅者,且当此后有新的订阅者订阅时,也是推送此消息。
也就是可以让新的订阅者获取上一次的topic信息。
七.will
注:华为物联网平台不支持will
will,遗嘱。
当设备与服务器建立连接时约定好了遗嘱消息,服务器会存储此消息。当客户端异常断开(非自动断开)时,会向服务端发送约定好的遗嘱消息。
最后,再说一遍(踩坑经验),设备通过MQTT协议接入华为IoTDA后,topic格式需要是固定的,用户不能自定义,不然设备订阅/发布topic时会出错。
设备接入 IoTDA IoT 设备管理 IoTDM
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。