このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。
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
例
チャネルフィードを更新するために PUBLISH
メッセージを送信するように MQTT X を構成します。
[新しい接続] ダイアログで、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
ペイロード ペインで、次の設定を使用します。
Topic: channels/33301/publish Payload: field1=45&field2=60&status=MQTTPUBLISH
この PUBLISH
メッセージは、ステータス メッセージ MQTTPUBLISH
とともに、チャネル33301
の 45
の値を field1
に、60
の値を field2
に公開します。