【物联网】Qinghub MQTT 连接协议

基础信息

组件名称 : mqtt-connector

组件版本: 1.0.0

组件类型: 系统默认

状 态: 正式发布

组件描述:通过MQTT 连接网关,发布或订阅MQTT broker相关的数据信息。

配置文件:

配置文件作为MQTT配置界面元素的基础,MQTT 所有高级配置均可以通过重构该配置文件体现在前端界面上。配置参数分为三组: 基础配置,连接配置,高级配置,一般情况可以随意扩展高级配置。

注: 配置文件仅供修改升级组件式利用,一般情况下对用户透明。无需做任何更改,除非用户需要手动维护组件心跳或通信端口时,一般情况下禁止修改。

yaml 复制代码
df:
  component:
    name: mqtt-connector
    type: 2   #1:采集器;2:接收器;3:转换器;4:存储器;5:解析器;6:状态解析器:7:同步器;8:消息通知
    transportPort: 49096    #内部akka通信端口
    heartbeatCron: 0/30 * * ? * * *       #网关心跳数据上报时间
    parameter:
      connection[0]:
        name: Mqtt Broker
        key: url
        required: true
        input-type: input
        description: Mqtt Broker 地址包括主机和端口如tcp://127.0.0.1:8883
        value-type: string
      connection[1]:
        name: 认证类别
        key: auth-type
        required: true
        value-type: string
        default-value: USERNAME #NONE, USERNAME, X509;
        input-type: select
        select-option: NONE|NONE,USERNAME|USERNAME,X509|X509
      connection[2]:
        name: Username
        key: username
        required: false
        value-type: string
        input-type: input
      connection[3]:
        name: Password
        key: password
        required: false
        input-type: input
        value-type: string
      connection[4]:
        name: CA
        key: ca
        required: false
        input-type: input
        value-type: string
      connection[5]:
        name: CRT
        key: crt
        required: false
        input-type: input
        value-type: string
      connection[6]:
        name: KEY
        key: key
        required: false
        input-type: input
        value-type: string
      connection[7]:
        name: KEY-PASS
        key: keyPass
        required: false
        input-type: input
        value-type: string
      base[0]:
        name: receive topics
        key: receive-topics
        required: false
        default-value: wmiot/+/+/data/post
        value-type: string
        input-type: input
        description: 可以配置多个topic,各个topic之间用英文逗号,分隔,支持mqtt  topic通配符。
      base[1]:
        name: receive qos
        key: receive-qos
        required: false
        value-type: int
        input-type: select
        select-option: 0|0,1|1,2|2
        default-value: 1
      advance[0]:
        name: 客户端编号
        key: client
        required: false
        value-type: string
        input-type: input
        default-value: iotmqttclient-1
        description: 客户端标识
      advance[1]:
        name: Keep alive
        key: keep-alive
        required: false
        value-type: int
        default-value: 15
        input-type: input
      advance[2]:
        name: Timeout
        key: completion-timeout
        required: false
        value-type: int
        default-value: 3000
        input-type: input
      advance[3]:
        name: Default topic
        key: default-send-topic
        required: false
        value-type: string
        default-value: default/wmiotmqtt
        input-type: input
      advance[4]:
        name: Default QoS
        key: default-send-qos
        required: false
        value-type: int
        default-value: 1
        input-type: select
        select-option: 0|0,1|1,2|2

组件测试

  1. 配置网关

从组件列表中选择mqtt-connector并拖动到作业设计器。

  1. 修改参数

修改右侧配置参数并保存,参数使用说明可以通过每个参数旁边的?查看。

配置带*号的必填项,重要参数: Mqtt broker ,认证方式,receiver topics。认证方式目前支持NONE和用户密码的方式,receiver topics支持多个并支持通配符,每个topic之间用英文逗号分割。如上图所示做好相关的基础配置。

  1. 启动网关

注意观察执行日志,确保网关正常运行,状态status 字段为1时表示正常运行中

  1. 测试验证

1)前提准备:

已经安装并启动MQTT Broker,本例采用EMQX, 安装配置过程略。

MQTT broker 信息: 地址:192.168.3.192, 端口: 1883, 用户名:develop,密码: 123456

准备好MQTT 客户端工具并启动,本例采用MQTTX。连接到EMQX:

测试该工具能正常发送topic到EMQX:

2)进入到轻云UC通用设计中心,进入到设计器,并拖动mqtt-connector组件到画板。

按规划中的信息配置好mqtt-connector配置信息:

这里的receiver topic指令为: qingcloudtech/iot/+/+/data/put,qingcloudtech/iot/+/+/data/receiver。即通过该topic 收到来自设备端的数据信息。本实例只说明设备数据采集过程,指令下行相关的操作说明请参见另外的操作手册。

3)切换到UC设计器,重启mqtt网关,可以从执行日志板块看到心跳数据。

4)通过mqttx发送数据。

切换的UC设计器,从日志记录中看到如下信息,表明设备信息发送成功。

相关推荐
UestcXiye4 小时前
《TCP/IP网络编程》学习笔记 | Chapter 3:地址族与数据序列
c++·计算机网络·ip·tcp
vfbox33986 小时前
C-DTL698电表 转 IEC61850 协议项目案例
物联网·iec61850·vfbox·协议转换工业网关·c-dtl698
石牌桥网管6 小时前
OpenSSL 生成根证书、中间证书和网站证书
网络协议·https·openssl
易云码7 小时前
信息安全建设方案,网络安全等保测评方案,等保技术解决方案,等保总体实施方案(Word原件)
数据库·物联网·安全·web安全·低代码
阿尔帕兹13 小时前
构建 HTTP 服务端与 Docker 镜像:从开发到测试
网络协议·http·docker
FeelTouch Labs13 小时前
Netty实现WebSocket Server是否开启压缩深度分析
网络·websocket·网络协议
Oo_Amy_oO15 小时前
【极限编程(XP)】
低代码·极限编程
千天夜15 小时前
使用UDP协议传输视频流!(分片、缓存)
python·网络协议·udp·视频流
follycat16 小时前
[极客大挑战 2019]HTTP 1
网络·网络协议·http·网络安全
Thanks_ks16 小时前
探索计算机互联网的奇妙世界:从基础到前沿的无尽之旅
物联网·云计算·区块链·tcp/ip协议·计算机互联网·万维网·未来科技