前文介绍了通过MQTT协议接入OneNet平台教程1:OneNet平台配置,通过第一段步骤教程,成功创建OneNet产品后,准备MQTT连接通讯所需的三要素及订阅发布主题。
使用标准的MQTT三要素通讯,需要了解产品的连接地址、端口、ClientID、UserName、Password。连接地址、端口在产品相关手册中可以找到。在产品文档中搜索“MQTT地址”即可快速定位到接入地址及端口。
连接协议 | 证书 | 地址 |
MQTT | — | mqtts.heclouds.com:1883 |
MQTTS | 证书下载 | mqttstls.heclouds.com:8883 |
注意⚠️:
MQTT接入地址可能发生变化,实际接入地址请以实际文档说明为准。
ClientID、UserName在设备详情中可以直接得到,password需要经过key计算得到token。
参数 | 是否必须 | 参数说明 |
clientId | 是 | 设备名称 |
username | 是 | 平台分配的产品ID |
password | 是 | 填写经过key 计算的 token |
具体的Token算法可以通过产品手册了解。这里使用官方提供的工具进行计算。
官方下载地址:https://open.iot.10086.cn/college/video/onenet-portal/2024-04-19/17134946071850.exe
镜像下载地址:17134946071850.exe
软件中的「res」在手册中阐述了相关参数。「et」为时间戳:
名称 | 类型 | 是否必须 | 参数说明 | 参数示例 |
version | string | 是 | 参数组版本号,日期格式,目前仅支持"2018-10-31" | 2018-10-31 |
res | string | 是 | 访问资源resource | products/123123 |
et | int | 是 | 访问过期时间expirationTime,unix时间 | 1537255523 |
method | string | 是 | 签名方法signatureMethod | sha256(代表使用hmacsha1算法) |
sign | string | 是 | 签名结果字符串signature | rBYeJXTp2q4V3C2aj4DBzjaydcw%3D |
根据手册中的介绍格式:products/{产品ID}/devices/{设备名称},将产品ID与设备名称进行修改,即可得到res值。
et为时间戳,填写过期时间。这里为了演示,直接填写「9999999999」。
注意:et是unix时间,通常不建议直接设置为9999999999。
key是设备密钥,将对应的值填入即可。确认填入信息无误后,即可生成MQTT连接需要的Password。
到这里我们就准备好了MQTT连接的所有要素连接地址、端口、ClientID,UserName,Password。
接下来,还需要获取上报与接受的订阅发布主题。同样,这里我们通过手册也可以找到官方发布的订阅与发布主题属性。
这里需要根据实际的使用情况选用适合的订阅与发布。这里找到我们需要的订阅与发布主题。这里演示使用订阅全部主题以及上报数据点这两个订阅与发布主题。
订阅全部物模型相关主题:$sys/{pid}/{device-name}/#
设备上传数据点请求:$sys/{pid}/{device-name}/dp/post/json
根据手册中的要求,将「设备名称」以及「产品ID」填入即可。
确认连接地址与订阅发布主题后,了解发布消息时使用的格式。这里演示使用数据流payload格式进行发布。payload示例如下:
{
"id": 123,
"dp": {
"数据流名称": [{
"v": #值
}],
"数据流名称": [{
"v": #值
}]
}
}
这里演示上报的是温度与湿度,将准备的温度与湿度名称填入即可。
以上就是全部的通过MQTT协议接入OneNet平台教程第二步:准备MQTT连接通讯所需的三要素及订阅发布主题。下文我们将介绍通过MQTT协议接入OneNet平台链接通讯测试配置教程。
今天的分享就到这里啦,EBYTE每一天都致力于更好的助力物联化、智能化、自动化的发展,提升资源利用率,更多产品更多资料,感兴趣的小伙伴可以登录我们的亿佰特官网和企业公众号(微信号:cdebyte)进行了解,也可以直接拨打400电话咨询技术专员!
相关阅读:
7 X 24 销售服务热线
4000-330-990深圳办事处柯经理:18218726658 杭州办事处戴经理:17512568697
常州办事处崔经理:15906110783 南京办事处葛经理:17626012283
业务邮箱:support@cdebyte.com
全国销售投诉电话:19934352316
地址:四川省成都市高新西区西区大道199号B5栋(前台座机:028-61543675)
©© 成都亿佰特电子科技有限公司【版权所有】 蜀ICP备13019384号-3