当前位置: 首页 >应用方案 >技术应用 >

通过MQTT协议接入OneNet平台教程2:MQTT连接通讯配置

前文介绍了通过MQTT协议接入OneNet平台教程1:OneNet平台配置,通过第一段步骤教程,成功创建OneNet产品后,准备MQTT连接通讯所需的三要素及订阅发布主题。


MQTT三要素

使用标准的MQTT三要素通讯,需要了解产品的连接地址、端口、ClientID、UserName、Password。连接地址、端口在产品相关手册中可以找到。在产品文档中搜索“MQTT地址”即可快速定位到接入地址及端口。

1  MQTT连接通讯配置

2  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/{产品id}
设备级格式为:products/{产品id}/devices/{设备名字}
区别见res使用场景说明

products/123123
products/123123/devices/78329710

et

int

访问过期时间expirationTime,unix时间
当一次访问参数中的et时间小于当前时间时,平台会认为访问参数过期从而拒绝该访问

1537255523
(代表北京时间2018-09-18 15:25:23)

method

string

签名方法signatureMethod
支持md5、sha1、sha256

sha256(代表使用hmacsha1算法)

sign

string

签名结果字符串signature

rBYeJXTp2q4V3C2aj4DBzjaydcw%3D

根据手册中的介绍格式:products/{产品ID}/devices/{设备名称},将产品ID与设备名称进行修改,即可得到res值。

et为时间戳,填写过期时间。这里为了演示,直接填写「9999999999」。

注意:et是unix时间,通常不建议直接设置为9999999999。

3  MQTT连接通讯配置

key是设备密钥,将对应的值填入即可。确认填入信息无误后,即可生成MQTT连接需要的Password。

4   MQTT连接通讯配置

到这里我们就准备好了MQTT连接的所有要素连接地址、端口、ClientID,UserName,Password


订阅与发布主题

接下来,还需要获取上报与接受的订阅发布主题。同样,这里我们通过手册也可以找到官方发布的订阅与发布主题属性。

5  MQTT连接通讯配置

这里需要根据实际的使用情况选用适合的订阅与发布。这里找到我们需要的订阅与发布主题。这里演示使用订阅全部主题以及上报数据点这两个订阅与发布主题。

订阅全部物模型相关主题:$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电话咨询技术专员!


相关阅读:

1、MQTT通信协议报文详解

2、串口服务器快速接入MQTT3.1协议服务器链接配置教程

3、MQTT协议详解及物联网应用特点



亿佰特官网 4000-330-990

https://www.wjx.cn/jq/84863372.aspx