Raspberry Pi 2, 2 von n – Pi als IoT-Nachrichtenbroker

einführen

In diesem Artikel, dem zweiten einer Reihe, die dem erstaunlichen Raspberry Pi gewidmet ist, werden wir den Pi mithilfe von Mosquitto als MQTT-Nachrichtenbroker konfigurieren. Mosquitto ist ein leichtes und dennoch leistungsstarkes Messaging-System im Publish/Subscribe-Modell, das auf einer Vielzahl von Plattformen installiert werden kann. Ziel dieses Tutorials ist es, die Software auf einem Raspberry Pi 2 zu installieren, zu konfigurieren und zu testen und in der Lage zu sein, Nachrichten nicht nur auf dem Pi, sondern auch auf anderen Computern zu veröffentlichen und zu abonnieren.

1107378/pi2-mqtt_spy-3.png


Wenn Sie den ersten Artikel, der beschreibt, wie das Betriebssystem geladen und konfiguriert wird, nicht gelesen haben, können Sie ihn in Raspberry Pi 2, 1 von n – Ersteinrichtung oder Code lesen Projekt Finden Sie es. Auch wenn es keine Pflichtlektüre ist, empfehle ich Ihnen, es sich anzuschauen, wenn Sie neu bei Linux oder Pi sind.

Dieser Artikel ist mehr oder weniger eine Dokumentation der Schritte, die ich unternommen habe, um einen Raspberry Pi als MQTT-Nachrichtenbroker mit Mosquitto einzurichten. Ich habe das Tutorial von SwitchDoc Labs [3] als Referenz verwendet, es aber an meine speziellen Bedürfnisse angepasst. In zukünftigen Artikeln habe ich vor, verschiedene Geräte aufzuhängen, wie zum Beispiel das WiFi-Modul ESP8266-12E, eingebettete Prozessorplatinen wie das Arduino UNO und möglicherweise andere, die ich hoffentlich nutzen kann, während das Wander- und Campingwetter diesen Sommer heißer wird. Tun Sie dies.

Umfeld

Die Entwicklungsumgebung, die ich für dieses Projekt eingerichtet habe, ist;

  • Auf dem Windows-Desktop läuft das 64-Bit-Betriebssystem Windows 7 mit einem AMD-FX-8350 8-Core-Prozessor und 32 GB RAM.
  • Raspberry Pi 2, BCM2709 ARMv7 4-Core mit 1 GB RAM, mit Raspian Jesse OS. Auf der Download-Site gibt es eine neue Raspbian Jessie Lite-Version, die ich ursprünglich für das Projekt geladen und konfiguriert habe, die jedoch keine GUI hat. Ich plane, NginX und WebSockets zu verwenden, um ein Frontend für die Steuerung verschiedener Geräte in einem bereitzustellen zukünftiger Artikel Also bin ich zur Vollversion zurückgekehrt und habe die Junkware daraus entfernt. WLAN auf dem Pi wird durch den Edimax-Adapter bereitgestellt
    .
  • VirtualBox-VM mit Ubuntu 12.04 LTS, ich habe fast die gleiche Konfiguration wie der Pi, habe aber ein paar Elemente für Ubuntu geändert. Obwohl ich es für meinen eigenen Gebrauch eingerichtet habe, werde ich nicht näher darauf eingehen, wie ich das gemacht habe, sondern überlasse es Ihnen als zusätzliche Credit-Übung. Viel Glück für die Heuschrecke!

Voraussetzung – Richten Sie eine statische IP-Adresse ein

Obwohl dieser Schritt optional ist, empfehle ich dringend, eine statische IP-Adresse auf Ihrem Pi einzurichten [8,11]. Wenn Sie dies nicht tun, wählt der Pi beim Booten möglicherweise eine andere IP-Adresse und Sie müssen die Konfigurationsdatei jedes Mal bearbeiten, wenn Sie den Pi starten, was eine PITA wäre. Für mich war die Verwendung eines billigen Edimax-Dongles  ein schmerzloser Vorgang. Wenn Sie bereit sind zu warten, können Sie 802.11-Dongles über eBay für etwa 2 US-Dollar pro Stück erwerben. Ich habe einige davon bestellt und sie funktionieren einigermaßen gut, obwohl ich noch nicht entschieden habe, ob ich sie in einer Produktionsumgebung verwenden werde.

Der hier beschriebene Prozess verwendet einen Edimax-Dongle, sollte aber mit jedem kompatiblen WLAN-Dongle funktionieren, der vom Pi unterstützt wird. Bevor wir die zur Konfiguration des Netzwerks erforderlichen Systemdateien bearbeiten, müssen wir einige Informationen sammeln.

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">#To display current network info type;
ifconfig</span></span></span></span>

Die Ausgabe sollte dieser ähneln;

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">wlan0   Link encap:Ethernet HWaddr b8:<span style="color:#000080">27</span>:eb:a8:cf:a4
        inet addr:<span style="color:#000080">192</span>.<span style="color:#000080">168</span>.<span style="color:#000080">254</span>.<span style="color:#000080">20</span> Bcast:<span style="color:#000080">192</span>.<span style="color:#000080">168</span>.<span style="color:#000080">254</span>.<span style="color:#000080">255</span> Mask:<span style="color:#000080">255</span>.<span style="color:#000080">255</span>.<span style="color:#000080">255</span>.<span style="color:#000080">0</span>
        UP BROADCAST RUNNING MULTICAST MTU:<span style="color:#000080">1500</span> Metric:<span style="color:#000080">1</span>
        RX packets:<span style="color:#000080">161</span> errors:<span style="color:#000080">0</span> dropped:<span style="color:#000080">0</span> overruns:<span style="color:#000080">0</span> frame:<span style="color:#000080">0</span>
        TX packets:<span style="color:#000080">227</span> errors:<span style="color:#000080">0</span> dropped:<span style="color:#000080">0</span> overruns:<span style="color:#000080">0</span> carrier:<span style="color:#000080">0</span>
        collisions:<span style="color:#000080">0</span> txqueuelen:<span style="color:#000080">1000</span>
        RX bytes:<span style="color:#000080">26075</span> (<span style="color:#000080">25</span>.<span style="color:#000080">4</span> KiB) TX bytes:<span style="color:#000080">46356</span> (<span style="color:#000080">45</span>.<span style="color:#000080">2</span> KiB)</span></span></span></span>

Die inet addr- und Mask-Werte sind die Werte, nach denen wir suchen, in meinem Fall ist addr 192.168.254.20, , was in den meisten Fällen zutrifft. Als nächstes müssen wir die Gateway-Adresse finden. Maske ist 255.255.255.0

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">#To display network gateway address type;            
netstat -n -r</span></span></span></span>

Die Ausgabe sollte so aussehen;

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
<span style="color:#000080">0</span>.<span style="color:#000080">0</span>.<span style="color:#000080">0</span>.<span style="color:#000080">0</span>         <span style="color:#000080">192</span>.<span style="color:#000080">168</span>.<span style="color:#000080">254</span>.<span style="color:#000080">254</span>   <span style="color:#000080">0</span>.<span style="color:#000080">0</span>.<span style="color:#000080">0</span>.<span style="color:#000080">0</span>         UG        <span style="color:#000080">0</span> <span style="color:#000080">0</span>          <span style="color:#000080">0</span> eth0
<span style="color:#000080">192</span>.<span style="color:#000080">168</span>.<span style="color:#000080">254</span>.<span style="color:#000080">0</span>     <span style="color:#000080">0</span>.<span style="color:#000080">0</span>.<span style="color:#000080">0</span>.<span style="color:#000080">0</span>         <span style="color:#000080">255</span>.<span style="color:#000080">255</span>.<span style="color:#000080">255</span>.<span style="color:#000080">0</span>   U         <span style="color:#000080">0</span> <span style="color:#000080">0</span>          <span style="color:#000080">0</span> eth0</span></span></span></span>

Daraus erhalten wirDie Ziel- oder Netzwerkadresse ist 192.168.254.0,Die Gateway-Adresse ist 192.168.254.254, jetzt können wir unser Netzwerk konfigurieren.

Die erste Datei, die wir ändern müssen, ist die Datei wpa_supplicant [12]. wpa_supplicant [13] implementiert das Sicherheitsprotokoll drahtloser Netzwerke. [13]

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=<span style="color:#000080">1</span>
network={
    ssid=<span style="color:#800080">"</span><span style="color:#800080">Your SSID Here"</span>
    psk=<span style="color:#800080">"</span><span style="color:#800080">YourPresharedKeyHere"</span>
}</span></span></span></span>

Bitte beachten Sie, dass in „network={“ keine Leerzeichen enthalten sind. Dies ist beabsichtigt. Ersetzen Sie die SSID- und PSK-Werte durch die Werte Ihres drahtlosen Netzwerks, speichern und schließen Sie die Datei. Ich verwende nano, um diese Dateien zu bearbeiten, und wenn ich aufgefordert werde, die Datei zu speichern, ist der Vorgang zum Speichern und Beenden Strg+X und "Y".

Als nächstes gehen wir zur Netzwerkschnittstellendatei über, in der wir den drahtlosen Netzwerkadapter wlan0 konfigurieren. Verwenden Sie die Werte, die Sie in den vorherigen Schritten gesammelt haben, und fügen Sie sie wie unten gezeigt in die entsprechenden Bereiche der Datei ein.

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">allow-hotplug wlan0
iface <span style="color:#0000ff">default</span> inet <span style="color:#0000ff">static</span>
    wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
    address <span style="color:#000080">192</span>.<span style="color:#000080">168</span>.<span style="color:#000080">254</span>.<span style="color:#000080">20</span>
    netmask <span style="color:#000080">255</span>.<span style="color:#000080">255</span>.<span style="color:#000080">255</span>.<span style="color:#000080">0</span>
    network <span style="color:#000080">192</span>.<span style="color:#000080">168</span>.<span style="color:#000080">254</span>.<span style="color:#000080">0</span>
    gateway <span style="color:#000080">192</span>.<span style="color:#000080">168</span>.<span style="color:#000080">254</span>.<span style="color:#000080">254</span></span></span></span></span>

Starten Sie den Pi neu und versuchen Sie, von einem anderen Computer aus zu pingen, oder versuchen Sie, die Website mit dem Browser Ihrer Wahl zu besuchen. Auf Jessie ist IceWeasel, auch bekannt als Firefox, vorinstalliert. Wenn alles wie geplant verläuft, sollten Sie online und bereit sein, fortzufahren, ohne die vorherigen Schritte noch einmal durchzugehen oder nach einer Lösung für Ihre spezifische Hardwarekonfiguration zu googeln.

Installieren Sie Mosquito

Die Installation von Mosquitto ist ziemlich einfach. Wir werden den Proxy so konfigurieren, dass er zu Testzwecken auf Port 1883 lauscht. Standardmäßig ist Port 80 eingestellt.

Öffnen Sie ein Terminal auf dem Pi und geben Sie nacheinander die folgenden Befehle ein.

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">sudo wget http:<span style="color:#008000"><em>//</em></span><span style="color:#008000"><em>repo.mosquitto.org/debian/mosquitto-repo.gpg.key</em></span>
sudo apt-key <span style="color:#0000ff">add</span> mosquitto-repo.gpg.key
cd /etc/apt/sources.list.d/
sudo wget http:<span style="color:#008000"><em>//</em></span><span style="color:#008000"><em>repo.mosquitto.org/debian/mosquitto-jessie.list</em></span>
sudo apt-get update
sudo apt-get install mosquitto mosquitto-clients</span></span></span></span>
  1. wget [4] steht für „web get“ und ist ein Dienstprogramm, das Dateien und Verzeichnisstrukturen rekursiv von einer Website herunterlädt. In diesem Fall erhalten wir einen GPG (Gnu Privacy Guard Key), der es dem Anbieter ermöglicht, Ihre Daten und Kommunikation mit einem gemeinsamen Schlüsselsystem zu verschlüsseln und zu signieren.
  2. apt-key [3] wird verwendet, um die Liste der Schlüssel zu verwalten, die von apt (Advanced Packaging Tool) zur Überprüfung von Paketen verwendet werden.
  3. Wechseln Sie die Verzeichnisse und stellen Sie das Repository für apt zur Verfügung.
  4. Rufen Sie die Repository-Datei ab, die einen Link zur URL zum Herunterladen des Pakets enthält.
  5. Verwenden Sie apt-get, um Apt-Informationen zu aktualisieren[5]
  6. Abschließend installieren Sie Mosquitto und den Client. Der Client stellt die Dienstprogramme mosquitto_pub und mosquitto_sub bereit. Wir werden sie später in der Testphase verwenden!

Wenn alles nach Plan verläuft, sollte Mosquitto installiert sein und standardmäßig gestartet werden. Da wir es konfigurieren müssen, müssen wir es stoppen. Im nächsten Abschnitt erfahren Sie, wie Sie Mosquito blockieren.

Moskito starten/stoppen

Wenn der Pi hochfährt, startet er automatisch Mosquitto, daher möchten wir wissen, wie die Anwendung gestartet, gestoppt und neu gestartet wird.

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">#To start the Mosquitto service
sudo /etc/init.d/mosquitto start
#To stop the Mosquitto service
sudo /etc/init.d/mosquitto stop
#To restart the Mosquitto service
sudo /etc/init.d/mosquitto restart</span></span></span></span>

Konfigurationsvoraussetzungen – Installieren Sie mqtt_spy

Dies ist ebenfalls ein optionaler Schritt, aber ich finde, dass das Dienstprogramm mqtt_spy[7] während der Konfigurations-/Testphase äußerst wertvoll ist. mqtt-spy ist eine JavaFX-Anwendung und sollte daher theoretisch auf jedem Betriebssystem laufen, auf dem eine entsprechende Version von Java 8 installiert ist.

Wenn mqtt_spy zum ersten Mal gestartet wird, wird dem Benutzer das folgende Fenster angezeigt. Aufmerksame Beobachter werden feststellen, dass die Anwendung denkt, dass die Version, die ich habe, nicht die neueste ist, aber ist das so? Wie auch immer, der Teil, der die konfigurierten Verbindungen anzeigt, ist unser Hauptanliegen. Die Anwendung ist mit mehreren gängigen Konfigurationen wie localhost usw. vorinstalliert.

1107378/pi2-mqtt_spy-0.png

Um eine Verbindung für unsere Zwecke zu konfigurieren, wählen Sie im Hauptmenü den Menüpunkt „Verbindungen“ => „Neue Verbindung“. Daraufhin wird das angezeigte Fenster angezeigt. Geben Sie die für Ihre Konfiguration relevanten Informationen ein und speichern Sie sie unter einem geeigneten Namen.

1107378/pi2-mqtt_spy-1.png

Sobald die Verbindung hergestellt ist, können wir mit der Arbeit beginnen. Wie bereits in diesem Tutorial erwähnt, handelt es sich beim MQTT-Protokoll um ein Publish-Subscribe-Modell. Daher ist das unten gezeigte Fenster in zwei Abschnitte unterteilt: den Veröffentlichungsabschnitt oben und den Abonnementabschnitt unten.

Zuerst erstellen wir ein neues Abonnement, indem wir auf die Schaltfläche „Neu“ klicken und geben die Themeninformationen in das Popup-Dialogfeld ein. Nachdem wir das Thema eingegeben haben, klicken wir auf die Schaltfläche „Abonnieren“.

Als Nächstes veröffentlichen wir eine Nachricht zu dem Thema, das wir gerade konfiguriert haben. Geben Sie also das Thema und eine Nachricht ein und klicken Sie im Abschnitt „Veröffentlichen“ auf die Schaltfläche „Veröffentlichen“. Die Nachricht sollte im Textfeld „Daten“ im Abschnitt „Abonnements“ erscheinen. Schau, das ist alles, ist es nicht cool?

1107378/pi2-mqtt_spy-2.png

Im Rest dieses Tutorials werde ich auf das Dienstprogramm mqtt_spy verweisen. Wenn Sie es nicht installiert haben, ignorieren Sie es, da ich auch Befehlszeilenbefehle für den Mosquitto-Client bereitstellen werde, um die Konfiguration von einem Linux-Terminal aus zu testen. Wenn Sie mqtt_spy konfigurieren, klicken Sie im Hauptfenster auf die Schaltfläche „Verbinden“, um die Verbindung zu trennen. Dadurch wird die Schaltfläche rot, nehmen Sie die entsprechenden Änderungen vor und klicken Sie dann erneut auf die Schaltfläche „Verbinden“. Wenn die Verbindung erfolgreich ist, wird die Schaltfläche grün.

Konfigurieren Sie Mosquito

In den folgenden Abschnitten besprechen wir die verschiedenen Möglichkeiten, wie Mosquitto für die Ausführung konfiguriert werden kann, und die Techniken, die wir zum Testen der Konfiguration verwenden. Wenn Mosquitto startet, sucht es im Verzeichnis /etc/mosquitto/conf.d [10] nach Dateien mit der Erweiterung .conf und verwendet sie, falls gefunden, zur Konfiguration von Mosquitto. Wir erstellen eine Datei /etc/mosquitto/conf.d/mosquitto.conf und geben die im Codeabschnitt unten aufgeführten Daten ein.

Mosquitto konfigurieren – keine Sicherheit

Dies ist eine Grundkonfiguration ohne Sicherheit, die Port 80 an der IP-Adresse localhost überwacht. Bearbeiten Sie die Datei /etc/mosquitto/conf.d/mosquitto.conf mit dem Editor Ihrer Wahl, speichern Sie Mosquitto und starten Sie es neu.

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb"># <span style="color:#339999">Boolean</span> <span style="color:#339999">value</span> that determines whether clients that connect without providing a username are 
# allowed to connect. If <span style="color:#0000ff">set</span> to <span style="color:#0000ff">false</span> then another means of connection should be created to 
# control authenticated client access. Defaults to <span style="color:#0000ff">true</span>. 
allow_anonymous <span style="color:#0000ff">true</span>
#
# Listen <span style="color:#0000ff">for</span> incoming network connection on the specified port. A second optional argument 
# allows the listener to be bound to a specific ip address/hostname. If <span style="color:#0000ff">this</span> variable <span style="color:#0000ff">is</span> used 
# and neither the <span style="color:#0000ff">global</span> bind_address nor port options are used then the <span style="color:#0000ff">default</span> listener will 
# not be started.
# listener port [bind address/host]
listener <span style="color:#000080">1883</span> <span style="color:#000080">192</span>.<span style="color:#000080">168</span>.<span style="color:#000080">254</span>.<span style="color:#000080">20</span></span></span></span></span>
Testen Sie die Mosquito-Konfiguration – keine Sicherheit

Geben Sie mit dem Dienstprogramm mqtt_spy einfach die IP-Adresse in das Server-URI-Textfeld ein, übernehmen Sie die Anwendung und stellen Sie eine Verbindung her. Gehen Sie dann zum Publish/Subscribe-Fenster und geben Sie die entsprechenden Informationen ein.

Beim Testen über die Befehlszeile müssen Sie zwei Fenster öffnen: eines zum Veröffentlichen und eines zum Abonnieren. Geben Sie Folgendes auf Port 1883 ein, wobei topic = „hello/world“ lautet.

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">#In the publish terminal window
sudo mosquitto_pub -d -t hello/world -m <span style="color:#800080">'</span><span style="color:#800080">The message'</span>
                
#In the subscribeterminal window
sudo mosquitto_sub -d -t hello/world</span></span></span></span>
Konfigurieren Sie Mosquito – verwenden Sie die Passwortauthentifizierung

Um die Passwortauthentifizierung verwenden zu können, müssen wir die Datei mosquitto.conf bearbeiten und die Direktive „password_file“ zusammen mit dem Pfad zur pwfile hinzufügen.

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb"># <span style="color:#339999">Boolean</span> <span style="color:#339999">value</span> that determines whether clients that connect without providing a username are 
# allowed to connect. If <span style="color:#0000ff">set</span> to <span style="color:#0000ff">false</span> then another means of connection should be created to 
# control authenticated client access. Defaults to <span style="color:#0000ff">true</span>. 
allow_anonymous <span style="color:#0000ff">false</span>
#
# Listen <span style="color:#0000ff">for</span> incoming network connection on the specified port. A second optional argument 
# allows the listener to be bound to a specific ip address/hostname. If <span style="color:#0000ff">this</span> variable <span style="color:#0000ff">is</span> used 
# and neither the <span style="color:#0000ff">global</span> bind_address nor port options are used then the <span style="color:#0000ff">default</span> listener will 
# not be started.
#listener port [bind address/host]
listener <span style="color:#000080">1883</span> <span style="color:#000080">192</span>.<span style="color:#000080">168</span>.<span style="color:#000080">254</span>.<span style="color:#000080">20</span>
#
# Set the path to a password file. If defined, the contents of the file are used to control 
# client access to the broker. The file can be created <span style="color:#0000ff">using</span> the mosquitto_passwd(<span style="color:#000080">1</span>) utility.
# If mosquitto <span style="color:#0000ff">is</span> compiled without TLS support (it <span style="color:#0000ff">is</span> recommended that TLS support <span style="color:#0000ff">is</span> 
# included), then the password file should be a text file with each line <span style="color:#0000ff">in</span> the format 
# <span style="color:#800080">"</span><span style="color:#800080">username:password"</span>, <span style="color:#339999">where</span> the colon and password are optional but recommended. 
# If allow_anonymous <span style="color:#0000ff">is</span> <span style="color:#0000ff">set</span> to <span style="color:#0000ff">false</span>, only users defined <span style="color:#0000ff">in</span> <span style="color:#0000ff">this</span> file will be able to connect. 
# Setting allow_anonymous to <span style="color:#0000ff">true</span> <span style="color:#339999">when</span> password_fileis defined <span style="color:#0000ff">is</span> valid and could be used with 
# acl_file to have e.g. read only guest/anonymous accounts and defined users that can publish.
#password_file file path
password_file /etc/mosquitto/pwfile</span></span></span></span>

Als nächstes müssen wir mit dem Dienstprogramm mosquitto_passwd eine pwfile erstellen, indem wir Folgendes in ein Terminalfenster eingeben.

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">sudo mosquitto_passwd -c /etc/mosquitto/pwfile username</span></span></span></span>

Sie werden aufgefordert, Ihr Passwort einzugeben und zur Bestätigung ein weiteres Passwort einzugeben.

Mosquito-Test – mit Passwort-Authentifizierung

Verwenden Sie mqtt_spy, um die Menüoption Verbindungen=>Verbindungen verwalten auszuwählen, und wählen Sie dann die Registerkarte Sicherheit, Benutzerauthentifizierung aus. Etikett. Aktivieren Sie das Kontrollkästchen „Benutzerauthentifizierung aktivieren“ und geben Sie den Benutzernamen und das Kennwort ein, die bei der Konfiguration von pwfile verwendet wurden. Stellen Sie dann eine Verbindung her und konfigurieren Sie die Veröffentlichungs-/Abonnementinformationen.

Geben Sie den folgenden Befehl über das Pub/Sub-Terminal ein;

<span style="color:#111111"><span style="background-color:#ffffff"><span style="color:#000000"><span style="background-color:#fbedbb">#In the publish terminal window
sudo mosquitto_pub -d -t hello/world -p <span style="color:#000080">1883</span> -u <span style="color:#800080">'</span><span style="color:#800080">username'</span> -P <span style="color:#800080">'</span><span style="color:#800080">password'</span> -m <span style="color:#800080">'</span><span style="color:#800080">The message'</span>
                
#In the subscribeterminal window
sudo mosquitto_sub -d -t hello/world -p <span style="color:#000080">1883</span> -u <span style="color:#800080">'</span><span style="color:#800080">username'</span> -P <span style="color:#800080">'</span><span style="color:#800080">password'</span></span></span></span></span>

verallgemeinern

Ich fand Mosquitto einfach zu bedienen, leistungsstark, mit ausreichend Dokumentation und Tutorials für den Einstieg und intuitiv genug, dass ich es in kurzer Zeit installieren und konfigurieren konnte. Ich habe dieses Tutorial mehrmals durchgeführt und es ist ziemlich einfach. Daher beabsichtige ich, es in zukünftigen Artikeln und Heim-IoT-Projekten zu verwenden, was das Endziel dieser Serie sein wird.

Supongo que te gusta

Origin blog.csdn.net/arthas777/article/details/134797428
Recomendado
Clasificación