Publish to a Channel Feed
使用 MQTT 发布消息同时更新多个通道字段
主题
channels/<channelID>/publish
描述
channels/
通过向指定主题发布消息来更新通道源。将 <channelID>
/publish<channelID>
替换为您的 ThingSpeak 通道 ID。要了解有关配置通道的更多信息,请参阅 通道属性。要同时更新多个参数,请参阅 有效载荷参数。
添加任何必要的 有效载荷参数。
将
PUBLISH
消息设置为具有QoS
值的0
。将连接
RETAIN
标志设置为0
(关闭)。将连接
CleanSession
标志设置为1
(true
)。
要了解有关这些标志的更多信息,请参阅 MQTT v3.1.1 设定。
输入参数
有效载荷参数
将 PUBLISH
消息的可选有效负载参量指定为带有 Name=Value
参量的字符串,并以 &
分隔。例如:field1=100&field2=50&lat=30.61&long=40.35
如果参数定义字符串包含任何特殊字符,则必须进行 URL(百分比)编码 (application/x-www-form-urlencoded)。
field1
要在通道的字段 1 中输入的数据。
例如:
field1=100
fieldx
要在通道的字段 x 中输入的数据。确保该字段在通道设置中已启用。
例如:
fieldx=100
x 必须小于或等于 8(允许的字段数)。
lat
以纬度形式表示的通道位置。
例如:
lat=10.45
long
以经度形式表示的通道位置。
例如:
long=35.4
elevation
您的通道距地面的海拔高度(以米为单位)。
例如:
elevation=100
status
您的通道的状态消息。
例如:
status=Message
created_at
采用 ISO 8601 格式的源条目日期。
例如:
created_at=2014-12-31 23:59:59
示例
配置 MQTT X 发送 PUBLISH
消息来更新通道源。
在新建连接对话框中,使用以下连接设置,以及在 ThingSpeak 中创建 MQTT 设备时派生的客户端 ID、用户名和密码:
Name: MyChanName Client ID: ENTER_MQTT_DEVICE_CLIENT_ID Host: mqtt:// mqtt3.thingspeak.com Port: 1883 Username: ENTER_MQTT_DEVICE_USERNAME Password: ENTER_MQTT_DEVICE_PASSWORD Clean Session: true
在 Payload 窗格中,使用以下设置:
Topic: channels/33301/publish Payload: field1=45&field2=60&status=MQTTPUBLISH
此 PUBLISH
消息将值 45
发布到通道 field1
的 60
和 field2
到 33301
,以及状态消息 MQTTPUBLISH
。