跳到主要内容

如何通过 MQTT 将 -NB 和 -CB 系列设备数据上报到 Thingseye

1. 简介

本文档将指导你如何把 Dragino -NB-CB 系列设备的数据集成到 Thingseye 中。

NB 系列 设备以 -NB 结尾,CB 系列 设备以 -CB 结尾。例如,S31B-NBNB 设备,而 S31-CBCB 设备

2. 前置条件

完成本教程前,你需要准备证书文件。lns1.thingseye.io 是 Dragino 的 MQTT Broker,使用时需要提供 CA certificate、Certificate 和 Private key 文件。

如果客户需要通过 MQTT 将数据接入 Thingseye,需要联系 TE 团队获取这三份授权文件,或者点击此 link 下载证书。

ins1.png

3. 配置 Thingseye 集成

3.1 创建新的 MQTT 集成

在左侧导航中点击 Integrations center,然后点击 Integrations

Integrations 页面中,点击 + 按钮。

1743578691561-822.png

此时会弹出 Add integration 窗口。

Add integration 窗口中,按如下方式配置:

基础设置:

  • Integration type:MQTT
  • Name:MQTT integration
  • Enable integration:YES
  • Debug mode:YES
  • Allows create devices or assets:YES

点击 Next 按钮。

1743578960106-916.png

Uplink / downlink data converter:

  • 接下来,直接选择新建 Uplink data converter。

点击 Next 按钮。

1743581191958-140.png

Downlink data converter:

  • 接下来,直接选择新建 Downlink data converter。

点击 Skip 按钮。

1743581287837-189.png

连接设置:

  • Hostlns1.thingseye.io
  • Port:8883
  • Credentials:PEM(将下方 3 个证书内容粘贴到对应输入框中)。证书可通过此 link 下载。
  • Password:可填写密码,也可留空
  • Enable SSL:YES
  • Topic必须与设备端的 Topic 保持一致。
  • QoS:0 - At most once,或其他 MQTT QoS 级别

点击 Skip 按钮。

1743579352961-586.png

1743584347047-327.png

点击 Add 按钮。

完成后,你应该可以在 Integrations 页面中看到新建的集成。

由于设备尚未上报数据,集成 Status 会显示为 Pending;一旦收到数据,则会显示为 Active

1743580606618-281.png

4. 配置 Thingseye 数据转换器

首先,你需要下载 MQTT uplink/downlink JS code

Thingseye 中,Data Converters 用于在不同格式之间转换输入或输出数据,通常是把设备的原始遥测数据转换为 Thingseye 可以识别的结构化格式,反之亦然。

4.1 上行

  • Uplink Converter

解码函数的作用是把接收到的数据和元数据解析成 ThingsBoard / Thingseye 可识别的格式。

进入 Integrations center -> Data converters 页面,找到在创建集成时自动新建的 MQTT uplink converter。

1743581830822-223.png

进入编辑模式,并把 MQTT uplink JS code 应用到该 uplink converter 中。

1743581965585-763.png

4.2 下行

  • Downlink Converter

进入 Integrations center -> Data converters 页面,找到在创建集成时自动新建的 MQTT downlink converter。

进入编辑模式,并把 MQTT downlink JS code 应用到该 downlink converter 中。

1743582084494-111.png

4.3 使用 MQTT.fx 模拟

image-20241126191118-18.png

image-20241126193252-25.png

5. 测试连接

AT 命令

  • AT+PRO=3,5 // 使用 MQTT 连接和 JSON Payload
  • AT+SERVADDR=lns1.thingseye.io,8883
  • AT+SUBTOPIC=8899 // 必须与 ThingsEye 中创建的 MQTT integration 的 Topic 保持一致
  • AT+PUBTOPIC=8899 // 必须与 ThingsEye 中创建的 MQTT integration 的 Topic 保持一致
  • AT+CLIENT=NULL
  • AT+UNAME=NULL
  • AT+PWD=NULL
  • AT+TLSMOD=1,2

请注意,Topic 必须在设备端与服务端保持一致。如果你的设备并非 Dragino 设备,那么地址应与所使用 Broker 的地址保持一致。

长按设备按钮 1 到 3 秒测试上行。Thingseye 中的 MQTT integration 可查看来自设备的上行数据:

进入 Device -> Search Device,输入设备的 IMEI 来查找设备。