Veröffentlichen und Abonnieren eines Kanals mit dem Desktop-MQTT-Client
Dieses Beispiel zeigt, wie Sie einen Desktop-MQTT-Client zum Veröffentlichen und Abonnieren eines Kanals verwenden. Das Beispiel verwendet MQTT X, einen von EMQ als Open Source bereitgestellten MQTT 5.0-Desktop-Client. Wenn Sie mehr als einen Sensorwert haben, den Sie an ThingSpeak ™ senden möchten, können Sie mehrere Werte in einem Kanal-Feed veröffentlichen. Wenn Sie nur einen Sensor haben, können Sie einen einzelnen Wert in einem Kanalfeld veröffentlichen.
Software vorbereiten
1) Erstellen Sie einen neuen Kanal, wie unter Daten in einem neuen Kanal sammeln gezeigt.
2) Erstellen Sie ein neues MQTT-Gerät, indem Sie oben auf der Seite ThingSpeak auf Geräte > MQTT und dann auf Gerät hinzufügen klicken. Fügen Sie beim Einrichten des Geräts Ihren neuen Kanal hinzu. Einzelheiten finden Sie unter Erstellen Sie ein ThingSpeak MQTT-Gerät.
3) Klicken Sie beim Hinzufügen des neuen Geräts auf Anmeldeinformationen herunterladen > Nur Text. Bewahren Sie diese heruntergeladene Datei für den Zugriff im Abschnitt „Konfigurieren“ weiter unten auf.
4) Laden Sie MQTT X herunter und installieren Sie es.
MQTT X-Client konfigurieren
Konfigurieren Sie das Verbindungsprofil für den Desktop-MQTT-Client.
1) Klicken Sie auf Neue Verbindung oder auf das Pluszeichen (+) im linken Bereich.
2) Geben Sie im Feld „Allgemeine Konfiguration“ die folgenden Informationen ein:
Name: MyChannel (Beliebiger Name, den Sie für diese MQTT X-Verbindung verwenden möchten)
Client-ID: ENTER_YOUR_MQTT_CLIENT_ID (aus der gespeicherten Anmeldeinformationsdatei)
Host: mqtt:// mqtt3.thingspeak.com
Port: 1883
Username: ENTER_YOUR_MQTT_USERNAME (aus der gespeicherten Anmeldeinformationsdatei, kann mit der Client-ID identisch sein)
Passwort: ENTER_YOUR_MQTT_PASSWORD (aus der gespeicherten Anmeldeinformationsdatei)
3) Im Feld „Advanced configuration“:
Clean Session: true ( für beste Leistung )
MQTT-Version: 3.1.1
4) Klicken Sie auf Connect.
Abonnieren eines Kanal-Feeds
So abonnieren Sie einen Kanal:
1) Klicken Sie auf + New Subscription.
2) Legen Sie im Dialogfeld „New Subscription“ die folgenden Felder fest:
Thema: channels/<channelID>/subscribe (verwenden Sie die im Abschnitt „Vorbereiten“ erstellte Kanalnummer)
QoS: 0
3) Click Confirm.
Im Kanal-Feed veröffentlichen
Unten im rechten Fensterbereich befindet sich der Bereich zum Veröffentlichen in einem Kanal.
1) Füllen Sie die folgenden Felder aus:
Payload: Plaintext
QoS: 0
Topic: channels/<channelID>/publish (ersetzen Sie <channelID> durch die Kanal-ID)
Datenfeld: field1=45&field2=60&status=MQTTPUBLISH
2) Klicken Sie auf den Sendepfeil.
Das Protokoll zeigt sowohl die Veröffentlichungs- als auch die Abonnementergebnisse:
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"}
Im Kanal-Feld veröffentlichen
Alternativ können Sie Folgendes eingeben, um in einem einzelnen Kanalfeld zu veröffentlichen.
Topic: channels/<channelID>/publish/fields/field1
Data field: 45
Ersetzen Sie <channelID> durch die Kanal-ID. Diese PUBLISH-Nachricht veröffentlicht einen Wert von 45 in Feld 1 des angegebenen Kanals.
Siehe auch
Publish to a Channel Field Feed | Publish to a Channel Feed