このページは機械翻訳を使用して翻訳されました。元の英語を参照するには、ここをクリックします。
Publish to a Channel Feed
MQTT で複数のチャネルフィールドを同時に更新するメッセージをパブリッシュする
トピック
channels/<channelID>/publish
説明
channels/
は、指定されたトピックにメッセージを公開することでチャネルフィードを更新します。<channelID>
/publish<channelID>
をThingSpeakチャネルID に置き換えます。チャネルの構成の詳細については、チャネルのプロパティを参照してください。複数のパラメーターを同時に更新するには、ペイロード パラメーターを参照してください。
必要なペイロード パラメーターを追加します。
QoS
値が0
となるようにPUBLISH
メッセージを設定します。接続
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
チャネルの Field 1 に入力されるデータ。
次に例を示します。
field1=100
fieldx
チャネルの Field x に入力されるデータ。チャネル設定でフィールドが有効になっていることを確認してくください。
次に例を示します。
fieldx=100
x は、許可されるフィールドの数である 8 以下である必要があります。
lat
緯度形式のチャネルの位置。
次に例を示します。
lat=10.45
long
経度形式のチャネルの位置。
次に例を示します。
long=35.4
elevation
地表からのチャネルの高度 (メートル単位)。
次に例を示します。
elevation=100
status
チャネルのステータス メッセージ。
次に例を示します。
status=Message
twitter
Twitter® ThingTweet アカウントのユーザー名。
次に例を示します。
twitter=nohans
tweet
Twitter アカウントのステータス メッセージの更新。
次に例を示します。
tweet=Tweet from my channel
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
メッセージは、45
の値をfield1
に公開し、 60
をfield2
に公開します。チャネル33301
の$$ とステータス メッセージMQTTPUBLISH
。