メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

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 仕様を参照してください。

入力引数

すべて展開する

公開ターゲットのチャネルID。正の整数として指定します。

ペイロードパラメーター

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 とともに、チャネル3330145 の値を field1 に、60 の値を field2 に公開します。