主要内容

本页采用了机器翻译。点击此处可查看英文原文。

使用桌面 MQTT 客户端发布和订阅通道

此示例展示如何使用桌面 MQTT 客户端发布和订阅通道。示例使用 EMQ 开源的 MQTT 5.0 桌面客户端 MQTT X。如果您有多个传感器值想要发送到 ThingSpeak™,您可以选择将多个值发布到通道源。如果您只有一个传感器,则可以将单个值发布到通道字段。

准备软件

1) 创建新的通道,如在新通道中收集数据所示。

2) 通过点击 ThingSpeak 页面顶部的 Devices > MQTT,然后点击 Add Device 来创建一个新的 MQTT 设备。当您设置设备时,添加新通道。详情请参阅创建 ThingSpeak MQTT 设备

3) 添加新设备时,点击 Download Credentials > Plain Text。保留此下载的文件以便在下面的配置部分进行访问。

4) 下载并安装 MQTT X

配置 MQTT X 客户端

配置桌面 MQTT 客户端的连接配置文件。

1) 点击 New Connection 或左侧窗格中的加号 (+) 图标。

2) 在常规配置框中,输入以下信息:

NameMyChannel(您想要用于此 MQTT X 连接的任何名称)

客户端 IDENTER_YOUR_MQTT_CLIENT_ID(来自已保存的凭证文件)

Host mqtt:// mqtt3.thingspeak.com

Port1883

UsernameENTER_YOUR_MQTT_USERNAME(来自保存的凭证文件,可能与客户端 ID 相同)

PasswordENTER_YOUR_MQTT_PASSWORD(来自已保存的凭证文件)

3) 在 Advanced 配置框中:

Clean Sessiontrue ( 以获得最佳性能 )

MQTT Version 3.1.1

4) 点击 Connect

订阅通道动态

要订阅通道:

1) 点击 + New Subscription

2) 在 New Subscription 对话框中设置以下字段:

Topicchannels/<channelID>/subscribe(使用在准备部分创建的通道号)

QoS0

3) Click Confirm.

发布至通道动态

右侧窗格的底部是发布到通道的区域。

1) 输入以下字段:

PayloadPlaintext

QoS0

Topicchannels/<channelID>/publish(将 <channelID> 替换为通道 ID)

数据字段:field1=45&field2=60&status=MQTTPUBLISH

2) 点击发送箭头。

日志显示了发布和订阅的结果:

                Topic: channels/33301/publishQoS: 0

                field1=45&field2=60&status=MQTTPUBLISH


Topic: channels/33301/subscribeQoS: 0

{"channel_id":33301,"created_at":"2021-04-29T19:45:43Z","entry_id":23,
"field1":"45","field2":"60","field3":null,"field4":null,"field5":null,
"field6":null,"field7":null,"field8":null,"latitude":null,"longitude":null,
"elevation":null,"status":"MQTTPUBLISH"}

发布至通道字段

或者,您可以输入以下内容以发布到单个通道字段。

Topicchannels/<channelID>/publish/fields/field1

数据字段:45

<channelID> 替换为通道 ID。此 PUBLISH 消息将值 45 发布到指定通道的字段 1。

另请参阅

|

主题