如何计算MQTT连接参数
设备通过您自研的MQTT接入工具连接物联网平台时,需输入MQTT的签名认证参数username、passwd和mqttClientId。本文介绍获取MQTT连接签名参数值的方法。
概述
您可根据实际业务需要,选择如下方法获取MQTT签名参数值。
方法 | 说明 |
复制页面数据直接使用。 注意:页面默认提供的1883是TCP连接,是不安全的,可以在测试验证时使用,不建议生产环境使用,安全的连接见MQTT连接 | |
支持签名算法为hmacmd5和hmacsha1。 | |
支持签名算法为hmacsha256。 设备的ClientId默认为 |
直接在物联网平台获取
登录物联网平台控制台。
在左侧导航栏,选择设备管理 > 设备列表,进入设备列表页面。
在设备列表中,单击目标设备对应的详情按钮,进入设备详情页面。
在设备信息页签下,单击连接参数右侧的查看,获取MQTT签名参数信息。
其中clientId是mqttClientId值,请勿与设备的clientId混淆。MQTT连接参数的详细说明,请参见MQTT-TCP连接通信。
使用网页工具计算
单击下载MQTT_Password工具包,然后解压。
在文件夹MQTT_Password下,使用浏览器打开sign.html文件。
在MQTT签名计算页面,根据页面提示,输入对应信息,如下图所示。
参数 | 说明 |
productKey | 您添加设备后,保存的设备证书信息,请参见单个创建设备。 您可在控制台中设备的设备详情页面查看。 |
deviceName | |
deviceSecret | |
timestamp | 时间戳。当前时间毫秒值,自动填充。每刷新一次页面,更新一次。 |
clientId | 设备的Client ID信息,可自定义,长度在64个字符以内。建议使用您设备的MAC地址或SN码,方便您识别区分不同的设备。 |
method | 签名算法类型,支持hmacmd5和hmacsha1。 |
单击Generate,计算结果显示签名参数值
使用java语言计算连接参数并使用paho进行连接
代码展示了三种连接平台的方式,运行对应的main方法连接并进行发布和订阅
使用TCP建立不加密,不安全的连接,见ConnectTuyaIotPlatformTcpDemo
使用标准证书,建立安全的TLS连接,见ConnectTuyaIotPlatformStandardCertDemo
使用Tuya自签证书,建立安全的TLS连接,见ConnectTuyaIotPlatformSelfSignCertDemo
代码实现了连接参数的计算,需要您替换代码里面的变量productKey、deviceName、deviceSecret、endpoint