このページは機械翻訳を使用して翻訳されました。元の英語を参照するには、ここをクリックします。
デスクトップ MQTT クライアントを使用したチャネルのパブリッシュとサブスクライブ
この例では、デスクトップ MQTT クライアントを使用してチャネルをパブリッシュおよびサブスクライブする方法を示します。この例では、EMQ によってオープンソース化された MQTT 5.0 デスクトップ クライアントである MQTT X を使用します。ThingSpeak™に送信したいセンサー値が複数ある場合は、複数の値をチャネルフィードに公開することを選択できます。センサーが 1 つだけの場合は、単一の値をチャネル フィールドにパブリッシュできます。
ソフトウェアの準備
1) Collect Data in a New Channelに示すように、新しいチャネルを作成します。
2) ThingSpeakページの上部にある デバイス > MQTT をクリックし、次に デバイスの追加 をクリックして、新しい MQTT デバイスを作成します。デバイスをセットアップするときに、新しいチャネルを追加します。詳細については、ThingSpeak MQTT デバイスの作成を参照してください。
3) 新しいデバイスを追加するときに、Download Credentials > Plain Text をクリックします。このダウンロードしたファイルは、以下の「設定」セクションでアクセスできるように保管してください。
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
メッセージは、指定したチャネルの Field 1 に 45 の値をパブリッシュします。
参考
Publish to a Channel Field Feed | Publish to a Channel Feed