检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
Paho、使用Java语言编写的MQTT客户端。支持Windows、Mac和Linux操作系统,可用于模拟设备通过MQTTS/MQTT协议连接华为云IoTDA并通过Topic发布和订阅消息。本文以Windows系统为例,介绍如何使用MQTT.fx接入华为云IoTDA并进行消息收发。 图1 MQTT.fx与IoTDA的消息交互流程
-out rootCA.crt “-days”后的参数值指定了该证书的有效天数,此处示例为50000天,您可根据实际业务场景和需要进行调整。 上传并验证CA证书 登录设备发放控制台,进入“证书”界面,单击右上角“上传CA证书”,填写“证书名称”并上传上述“制作CA证书”步骤后生成的“CA证书(rootCA
“查询设备”接口 前置条件 下载并安装Postman。若未安装,请参考安装Postman进行安装。 下载Collection。 已在管理控制台完成产品模型和编解码插件的开发。 安装并配置Postman 安装Postman。 访问Postman官网,下载并安装Windows 64位Postman最新版本。
自签名证书仅用于调测阶段,在商用时,您需要向知名CA机构申请证书,否则可能会带来安全风险。 在浏览器中访问这里,下载并安装OpenSSL工具。 以管理员身份运行cmd命令行窗口。 执行cd c:\openssl\bin(请替换为openssl实际安装路径),进入openssl命令视图。 执行如下命令生成CA根证书私钥文件ca_private
MQTT接入相关问题 物联网平台MQTT协议设备接入域名和端口号是什么? 登录设备接入服务控制台,在左侧菜单栏单击“IoTDA实例”,选择您的实例并单击实例卡片进入。 图1 实例管理-切换实例 在左侧导航栏单击总览,单击“接入信息”,找到您的平台接入地址。 图2 总览-获取接入信息 进行
添加自定义策略 新增注册组 图2 新增注册组 图3 添加云证书自定义策略注册组 创建并下载设备证书 图4 创建云证书注册组设备证书 图5 创建云证书注册组设备证书详情 设备证书创建成功后,单击“下载”设备证书和私钥,并烧录到设备。 图6 下载云证书注册组设备证书 连接鉴权 MQTT.fx 是目前主流的MQTT桌面客户端,它支持
所属资源空间 确保和创建的产品归属在同一个资源空间。 所属产品 选择步骤2创建的产品。 设备标识码 即nodeID,设备唯一物理标识。可自定义,由英文字母和数字组成。 设备名称 即device_name,可自定义,如streetlight。 设备认证类型 选择“密钥”。 密钥 此处不填写,物联网平台会自动生成。
订阅:物联网平台支持基于MQTT协议实现设备间的消息通信,用户可通过控制台创建规则,也可以通过调用物联网平台的创建规则触发条件、创建规则动作、修改规则触发条件接口配置并激活规则,向平台获取设备上报的消息。设备订阅只支持消息上报。 推送:订阅成功后,物联网平台会将设备上报的消息推送到指定的MQTT Topic
台通信功能,如需进行商用,可以参考资源获取获取对应语言的IoT Device SDK进行集成。 前提条件 环境要求:Linux操作系统上,并安装好gcc(建议4.8及以上版本)。 库依赖:openssl库(MQTTS需要),paho库。 已在管理控制台获取设备接入地址。获取地址的操作步骤,请参考平台对接信息。
odeId,完成设备的接入鉴权;当设备采用加密方式接入时,加密业务数据交互端口为5684,使用DTLS/DTLS+传输层安全协议通道接入,并携带nodeId和密钥以完成设备的接入鉴权。 使用LwM2M/CoAP协议接入的鉴权流程 图1 LwM2M/CoAP协议接入鉴权流程图 通过
05 实践 通过实际场景展示IoTDA服务的能力。 数据转发 数据转发至OBS长期存储 使用自定义Topic进行通信 设备联动 设备触发告警并邮件或短信通知 温度过高时自动关闭设备 煤气浓度过高自动打开推窗器 设备接入 基于NB-IoT小熊派开发智慧路灯 基于NB-IoT小熊派的智慧烟感
Topic的前缀已经规定好,固定为:$oc/devices/{device_id}/user/,其中{device_id}为标识符变量,实际发布和订阅过程中需要替换为实际的设备ID。用户自定义Topic的格式必须以“/”进行分层。 长度限制为1-64位,只允许输入数字、大小写字母、下划线、斜杠符。其中,斜杠符不能连续。
所属资源空间 确保和所属产品归属在同一个资源空间。 所属产品 选择对应产品。 设备标识码 即nodeID,设备唯一物理标识。可自定义,由英文字母和数字组成。 设备名称 即device_name,可自定义。 设备认证类型 选择“密钥”。 密钥 此处如不填写,物联网平台会自动生成。 图10
默认每个用户最多支持5个自定义鉴权模板,只能启用一个激活状态的模板。 鉴权模板函数嵌套最大深度为5层。 模板内容体最大长度不能超过4000字符,且不能包含中文字符。 设备为密钥认证类型时,模板密码函数必须包含设备原始密钥参数(iotda::device::secret)。 使用模板鉴权时,鉴权参数
(test111)的MQTT.fx的“Publish”页面中,输入topic“/test/M2M/${任意单词}”(其中“${任意单词}”替换成任意单词) ,在内容输入框中输入要发送的消息(如:hello)单击“Publish”即可发送。 图12 设备A Publish页面输入消息
集设备运行数据和环境监控数据,并实时计算分析设备运行状态,对异常或者故障的设备可以进行预测和告警,还可以远程对设备进行维护升级。 解决方案:工厂设备和环境数据可以通过华为云IoT边缘实现OT数据采集,通过工业网关上报到华为云物联网平台IoTDA上,并支持流转到其他云服务做数据转换
选择“MQTT推送消息队列” 推送Topic 输入要转发的MQTT Topic。 Topic队列名称自定义且单个租户名下唯一,最大长度 128位,支持大小写英文字符串、数字、下划线(_)、中划线(-)和斜杠(/),不支持除此之外的其他字符。 第一次使用的Topic会归属于该规则创建选择的资源空间,后
MQTT客户端接入说明 在调用创建规则触发条件、创建规则动作和修改规则触发条件配置并激活规则后,您需要参考本文将MQTT客户端接入物联网平台,成功接入后,在您的服务端运行MQTT客户端,即可接收订阅的消息。 连接配置说明 MQTT客户端接入物联网平台的连接地址和连接认证参数说明如下:
的资源(如产品、设备等)都需要归属到某个资源空间,您可以基于资源空间实现多业务应用的分域管理。 物联网平台允许用户最多创建10个资源空间,并默认首次开通服务时平台为用户自动创建的空间为默认资源空间。 创建资源空间时,物联网平台会分配一个app_id(接口调用时参数名为app_id)作为资源空间的唯一标识。
设置阈值规则 设置告警基本信息:在“规则名称”文本框中输入阈值规则名称,并根据需要填写规则的描述信息。 图2 设置告警基本信息 设置告警规则的详细信息。 设置“规则类型”为“阈值规则”。 设置“监控对象”为“命令行输入”,并输入相应的命令。 图3 设置监控对象 命令行输入使用Promet