Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
MQTT-Nachrichten mit dem AWS IoT MQTT-Client anzeigen
In diesem Abschnitt wird beschrieben, wie Sie den AWS IoT MQTT-Testclient in der AWS IoT KonsoletopicName
durch einen beliebigen Themennamen oder Themenfilter ersetzen, der von Ihrer IoT-Lösung verwendet wird.
Geräte veröffentlichen MQTT-Nachrichten, die durch Themen gekennzeichnet sind, um ihnen ihren Status mitzuteilen AWS IoT, und AWS IoT veröffentlichen MQTT-Nachrichten, um die Geräte und Apps über Änderungen und Ereignisse zu informieren. Sie können den MQTT-Client verwenden, um diese Themen zu abonnieren und die Nachrichten zu beobachten, sobald sie auftreten. Sie können den MQTT-Testclient auch verwenden, um MQTT-Nachrichten auf abonnierten Geräten und Diensten in Ihrem zu veröffentlichen. AWS-Konto
Inhalt
Anzeigen von MQTT-Nachrichten im MQTT-Client
So zeigen Sie MQTT-Nachrichten im MQTT-Testclient an
-
Öffnen Sie die AWS IoT -Konsole
und wählen Sie im linken Menü Test, um den MQTT-Client zu öffnen. -
Geben Sie auf der Registerkarte Thema abonnieren den
topicName
ein, um das Thema zu abonnieren, zu dem Ihr Gerät veröffentlicht. Abonnieren Sie für die Beispiel-App „Erste Schritte“#
, womit alle Nachrichtenthemen abonniert werden.Um mit dem Beispiel Erste Schritte fortzufahren, geben Sie auf der Registerkarte Thema abonnieren im Feld Themenfilter
#
ein, und wählen Sie dann Abonnieren aus.Die Protokollseite der Themennachricht, #, wird geöffnet und
#
wird in der Abonnementliste angezeigt. Wenn das Gerät, auf dem Sie konfiguriert haben, das Beispielprogramm ausführt, sollten Sie die Nachrichten, an die es sendet, AWS IoT im # Message-Log sehen. Konfigurieren Ihres Geräts Die Nachrichtenprotokolleinträge werden unter dem Abschnitt Veröffentlichen angezeigt, wenn Nachrichten mit dem abonnierten Thema bei eingegangen AWS IoT sind. -
Auf der Seite # Nachrichtenprotokoll können Sie auch Nachrichten zu einem Thema veröffentlichen, dafür müssen Sie jedoch den Namen des Themas angeben. Veröffentlichen Sie eine Benachrichtigung für das Thema #.
Nachrichten, die zu abonnierten Themen veröffentlicht wurden, werden im Nachrichtenprotokoll angezeigt, sobald sie empfangen wurden, wobei die neueste Nachricht an erster Stelle steht.
Fehlerbehebung für MQTT-Nachrichten
Verwenden Sie den Themenfilter mit Platzhaltern
Wenn Ihre Nachrichten nicht wie erwartet im Nachrichtenprotokoll angezeigt werden, versuchen Sie, wie unter Themenfilter beschrieben, ein Platzhalter-Thema zu abonnieren. Der mehrstufige MQTT-Wildcard-Themenfilter ist das Hash- oder Rautenzeichen (#
) und kann als Themenfilter im Themenfeld Abonnementsthemen verwendet werden.
Wenn Sie den #
Themenfilter abonnieren, abonnieren Sie jedes Thema, das der Message Broker empfängt. Sie können den Filter eingrenzen, indem Sie Elemente des Themenfilterpfads durch ein #
Platzhalterzeichen mit mehreren Ebenen oder das einstufige Platzhalterzeichen '+' ersetzen.
Bei der Verwendung von Platzhaltern in einem Themenfilter
-
Das Platzhalterzeichen mit mehreren Ebenen muss das letzte Zeichen im Themenfilter sein.
-
Der Themenfilterpfad kann nur ein Platzhalterzeichen mit einer Ebene pro Themenebene enthalten.
Beispielsweise:
Themenfilter |
Zeigt Nachrichten an mit |
---|---|
|
Beliebiger Themenname |
|
Ein Themenname, der mit |
|
Ein Themenname, der mit |
|
Ein Themenname, der mit |
Weitere Informationen zu Filtern finden Sie unter Themenfilter.
Suchen Sie nach Fehlern beim Themennamen
MQTT-Themennamen und Themenfilter berücksichtigen Groß- und Kleinschreibung. Wenn Ihr Gerät beispielsweise Nachrichten an Topic_1
(mit einem großen T) statt an topic_1
, das Thema, das Sie abonniert haben, veröffentlicht, werden seine Nachrichten nicht im MQTT-Testclient angezeigt. Wenn Sie jedoch den Themenfilter mit Platzhaltern abonnieren, wird angezeigt, dass das Gerät gerade Nachrichten veröffentlicht, und Sie könnten sehen, dass es einen Themennamen verwendet, der nicht dem entspricht, den Sie erwartet haben.
Veröffentlichen von MQTT-Nachrichten vom MQTT-Client
So veröffentlichen Sie eine Nachricht in einem MQTT-Thema
-
Geben Sie auf der Seite des MQTT-Testclients auf der Registerkarte In einem Thema veröffentlichen im Feld Themenname den
topicName
Ihrer Nachricht ein. Verwenden Siemy/topic
in diesem Beispiel.Anmerkung
Verwenden Sie keine persönlich identifizierbaren Informationen in Themennamen, unabhängig davon, ob Sie sie im MQTT-Testclient oder in Ihrer Systemimplementierung verwenden. Themennamen können in unverschlüsselten Mitteilungen und Berichten vorkommen.
-
Geben Sie im Abschnitt für die Nachrichten-Nutzlast den folgenden JSON-Code ein:
{ "message": "Hello, world", "clientType": "MQTT test client" }
-
Wählen Sie Veröffentlichen aus, um Ihre Nachricht in AWS IoT zu veröffentlichen.
Anmerkung
Vergewissern Sie sich, dass Sie das Thema my/topic abonniert haben, bevor Sie Ihre Nachricht veröffentlichen.
-
Wählen Sie in der Spalte Abonnement die Option my/topic aus, um die Nachricht anzuzeigen. Sie sollten sehen, dass die Nachricht im MQTT-Testclient unter dem Payload-Fenster für die Nachrichtenveröffentlichung erscheint.
Sie können MQTT-Nachrichten in anderen Themen veröffentlichen, indem Sie topicName
im Feld Themenname ändern und die Veröffentlichen-Schaltfläche auswählen.
Wichtig
Wenn Sie mehrere Abonnements mit sich überschneidenden Themen erstellen (z. B. Sonde1/Temperatur und Sonde1/#), besteht die Möglichkeit, dass eine einzelne Nachricht, die zu einem Thema veröffentlicht wurde, das zu beiden Abonnements passt, mehrfach zugestellt wird, einmal für jedes sich überschneidende Abonnement.
Testen von geteilten Abonnements im MQTT-Client
In diesem Abschnitt wird beschrieben, wie Sie den AWS IoT MQTT-Client in der AWS IoT Konsole
Um ein Abonnement für ein MQTT-Thema zu teilen
-
Wählen Sie in der AWS IoT -Konsole
im Navigationsbereich Test und dann MQTT-Testclient aus. -
Geben Sie auf der Registerkarte Thema abonnieren den
topicName
ein, um das Thema zu abonnieren, zu dem Ihr Gerät veröffentlicht. Um geteilte Abonnements zu verwenden, abonnieren Sie den Themenfilter eines geteilten Abonnements wie folgt:$share/{ShareName}/{TopicFilter}
Ein Beispiel für einen Themenfilter kann
$share/group1/topic1
sein, der das Nachrichtenthematopic1
abonniert. -
Öffnen Sie einen anderen Webbrowser und wiederholen Sie Schritt 1 und Schritt 2. Auf diese Weise simulieren Sie zwei verschiedene MQTT-Clients, die dasselbe Abonnement
$share/group1/topic1
verwenden. -
Wählen Sie einen MQTT-Client aus und geben Sie auf der Registerkarte In einem Thema veröffentlichen im Feld Themenname den
topicName
Ihrer Nachricht ein. Verwenden Sietopic1
in diesem Beispiel. Versuchen Sie, die Nachricht ein paar Mal zu veröffentlichen. Aus der Abonnementliste der beiden MQTT-Clients sollten Sie erkennen können, dass die Clients die Nachricht mit einer zufälligen Verteilung empfangen. In diesem Beispiel veröffentlichen wir dreimal dieselbe Nachricht „Hallo von der AWS IoT Konsole“. Der MQTT-Client auf der linken Seite hat die Nachricht zweimal empfangen und der MQTT-Client auf der rechten Seite hat die Nachricht einmal erhalten.