Node-RED: Verbindung zu MQTT über WebSockets

Diese Dokumentation ist Teil des MQTT-Server-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Wie Sie Node-RED mit dem Mosquitto MQTT-Server verbinden.

Willkommen in der Stackhero-Dokumentation

Stackhero bietet Ihnen eine vollständig verwaltete Node-RED Cloud Umgebung, mit der Sie Workflows schnell erstellen können:

  • Integrierter MQTT-Server (Mosquitto) für nahtlose IoT-Integration.
  • Voller Zugriff auf die Node-RED Admin-Oberfläche zur Verwaltung von Flows und Einstellungen.
  • Node-RED Dashboard inklusive für Echtzeit-Visualisierung.
  • Dedizierter SMTP-E-Mail-Server inklusive, ohne Versandlimits.
  • Mühelose One-Click-Updates, damit Ihre Instanz immer aktuell bleibt.
  • Eigene Domainnamen mit automatischem HTTPS: zum Beispiel https://node-red.ihr-unternehmen.com.
  • Hohe Performance und starke Sicherheit durch private, dedizierte Infrastruktur.

Sie können in etwa 5 Minuten eine sichere, produktionsreife Node-RED Cloud Hosting Instanz bereitstellen. Stackhero übernimmt Einrichtung, Updates und Infrastruktur, sodass Sie sich ganz auf die Entwicklung Ihrer Automatisierungen konzentrieren können.

Sie haben die Möglichkeit, sich entweder über das MQTT-Protokoll oder über WebSockets mit dem Mosquitto MQTT-Server zu verbinden.

Das MQTT-Protokoll ist sehr ressourcenschonend und eignet sich hervorragend für IoT-Geräte, wird jedoch von Webbrowsern nicht nativ unterstützt. Wenn Sie von einem Browser aus mit Ihrem MQTT-Server interagieren möchten, empfiehlt sich die Nutzung von WebSockets. Damit wird der MQTT-Datenverkehr im WebSocket-Protokoll gekapselt, was nahtlos mit den Stackhero-Services funktioniert.

Um die WebSocket-Konnektivität zu aktivieren, schalten Sie einfach die Option "WebSocket Support" in Ihrem Stackhero-Dashboard ein. Nach der Aktivierung können Sie Ihren Client so konfigurieren, dass er die WebSocket-URL verwendet: wss://<XXXXXX>.stackhero-network.com:443/mqtt. Ersetzen Sie für browserbasierte Verbindungen die Standard-URL mqtts://<XXXXXX>.stackhero-network.com durch diese WebSocket-URL.

Für die Entwicklung empfiehlt sich insbesondere die Bibliothek "MQTT.js". Sie ist eine leistungsfähige JavaScript-Bibliothek, die sowohl mit Node.js als auch in Browser-Umgebungen kompatibel ist. Weitere Informationen finden Sie im offiziellen Repository.

Ein praktisches Beispiel, wie Sie von Ihrem Browser aus per WebSockets eine Verbindung zum MQTT-Server herstellen, finden Sie in diesem Repository: https://github.com/stackhero-io/mqttWebSocketGettingStarted. Sie können die Datei src/index.html mit der url, dem username und dem password Ihres Servers an Ihre Umgebung anpassen.

MQTT WebSocket BeispielMQTT WebSocket Beispiel

Bevor Sie diese Konfiguration testen, stellen Sie bitte sicher, dass der WebSocket-Support in Ihrem Stackhero-Dashboard aktiviert ist. So ist ein reibungsloser Ablauf für browserbasierte Verbindungen gewährleistet.