このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。
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=100fieldxチャネルのフィールド x に入力されるデータ。チャネル設定でフィールドが有効になっていることを確認してください。
以下に例を示します。
fieldx=100x は、許可されるフィールドの数である 8 以下である必要があります。
lat緯度形式でのチャネルの位置。
以下に例を示します。
lat=10.45longチャネルの位置を経度形式で表示します。
以下に例を示します。
long=35.4elevationチャネルの地上からの標高(メートル単位)。
以下に例を示します。
elevation=100statusあなたのチャネルのステータスメッセージ。
以下に例を示します。
status=Messagecreated_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 に公開します。