このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。
デスクトップ MQTT クライアントを使用してチャネルを公開およびサブスクライブする
この例では、デスクトップ MQTT クライアントを使用してチャネルをパブリッシュおよびサブスクライブする方法を示します。この例では、EMQ によってオープンソース化された MQTT 5.0 デスクトップ クライアントである MQTT X を使用します。ThingSpeak ™ に送信するセンサー値が複数ある場合は、複数の値をチャネルフィードに公開することを選択できます。センサーが 1 つしかない場合は、チャネルフィールドに 1 つの値を公開できます。
ソフトウェアの準備
1) 新しいチャネルでデータを収集する に示すように、新しいチャネルを作成します。
2) ThingSpeak ページの上部にある [Devices] > [MQTT] をクリックし、[Add Device] をクリックして、新しい MQTT デバイスを作成します。デバイスをセットアップするときに、新しいチャネルを追加します。詳細は、ThingSpeak MQTTデバイスを作成するを参照してください。
3) 新しいデバイスを追加する際に、[Download Credentials] > [Plain Tex] をクリックします。以下の構成セクションでアクセスできるように、ダウンロードしたファイルを保存しておきます。
4) MQTT X をダウンロードしてインストールします。
MQTT Xクライアントの設定
デスクトップ MQTT クライアントの接続プロファイルを構成します。
1) 新しい接続、または左側のペインのプラス (+) アイコンをクリックします。
2) [一般設定] ボックスに次の情報を入力します。
名前:MyChannel
(このMQTT X接続に使用する任意の名前)
クライアント ID: ENTER_YOUR_MQTT_CLIENT_ID
(保存された資格情報ファイルから)
ホスト: mqtt:// mqtt3.thingspeak.com
ポート: 1883
ユーザー名: ENTER_YOUR_MQTT_USERNAME
(保存された資格情報ファイルから、クライアント ID と同じになる場合があります)
パスワード: ENTER_YOUR_MQTT_PASSWORD
(保存された資格情報ファイルから)
3) 詳細構成ボックスで:
クリーンセッション: 最高のパフォーマンスを得るには true
(
、最高のパフォーマンスを得るには )
MQTT バージョン: 3.1.1
4) 接続をクリックします。
チャネルフィードを購読する
チャネルを購読するには:
1) + 新しいサブスクリプションをクリックします。
2) 「新しいサブスクリプション」ダイアログで次のフィールドを設定します。
トピック: channels/<channelID>/subscribe
(準備セクションで作成したチャネル番号を使用)
QoS: 0
3) Click
Confirm
.
チャネルフィードに公開
右側のペインの下部には、チャネルに公開するための領域があります。
1) 次のフィールドに入力します。
ペイロード: Plaintext
QoS: 0
トピック: channels/<channelID>/publish
(<channelID>
をチャネルID に置き換えてください)
データフィールド: field1=45&field2=60&status=MQTTPUBLISH
2) 送信矢印をクリックします。
ログには、パブリッシュとサブスクリプションの両方の結果が表示されます。
Topic: channels/33301/publishQoS: 0 field1=45&field2=60&status=MQTTPUBLISH Topic: channels/33301/subscribeQoS: 0 {"channel_id":33301,"created_at":"2021-04-29T19:45:43Z","entry_id":23, "field1":"45","field2":"60","field3":null,"field4":null,"field5":null, "field6":null,"field7":null,"field8":null,"latitude":null,"longitude":null, "elevation":null,"status":"MQTTPUBLISH"}
チャネルフィールドに公開
あるいは、以下を入力して単一のチャネルフィールドに公開することもできます。
トピック: channels/<channelID>/publish/fields/field1
データフィールド: 45
<channelID>
をチャネルID に置き換えます。この PUBLISH
メッセージは、指定されたチャネルのフィールド 1 に値 45 を公開します。
参考
Publish to a Channel Field Feed | Publish to a Channel Feed