MQTT: Unterschied zwischen den Versionen

Aus FHEMWiki
K (Kategorie wieder mit ! versehen)
(Warnung vor unbeabsichtigten Schleifen eingebaut)
Zeile 7: Zeile 7:


== FHEM und MQTT ==
== FHEM und MQTT ==
{{Randnotiz|RNTyp=r|RNText=Bitte allgemein beachten: Bei Verwendung von MQTT ist unbedingt darauf zu achten, dass die Topic-Struktur in Sende- und Empfangsrichtung unterschiedlich ausgestaltet ist. Andernfalls kommt es ggf. zu unbeabsichtigten Schleifen!}}
Für die Nutzung von MQTT muss ein zentraler MQTT-Server (''Broker'' in alter Nomenklatur) verfügbar sein. Dies kann ein separater Serverdienst wie ''mosquitto'' sein, FHEM selbst kann mit Hilfe des Moduls {{Link2CmdRef|Anker=MQTT2_SERVER|Lang=en|Label=MQTT2_SERVER}} selbst die Funktion des Brokers übernehmen. Dieser bietet zwar weniger Optionen als ein vollwertiger MQTT-Server, ist jedoch für kleinere Installationen völlig ausreichend. Ein MQTT-Server kann eine Vielzahl von FHEM-Installationen bedienen<ref>Dies gilt sowohl für einen klassichen Broker wie für einen MQTT2_SERVER.</ref>.
Für die Nutzung von MQTT muss ein zentraler MQTT-Server (''Broker'' in alter Nomenklatur) verfügbar sein. Dies kann ein separater Serverdienst wie ''mosquitto'' sein, FHEM selbst kann mit Hilfe des Moduls {{Link2CmdRef|Anker=MQTT2_SERVER|Lang=en|Label=MQTT2_SERVER}} selbst die Funktion des Brokers übernehmen. Dieser bietet zwar weniger Optionen als ein vollwertiger MQTT-Server, ist jedoch für kleinere Installationen völlig ausreichend. Ein MQTT-Server kann eine Vielzahl von FHEM-Installationen bedienen<ref>Dies gilt sowohl für einen klassichen Broker wie für einen MQTT2_SERVER.</ref>.


Zeile 27: Zeile 28:


=== MQTT_GENERIC_BRIDGE ===
=== MQTT_GENERIC_BRIDGE ===
Das Modul {{Link2CmdRef|Anker=MQTT_GENERIC_BRIDGE|Lang=en|Label=MQTT_GENERIC_BRIDGE}} kann seit November 2018 mit allen drei IO-Modul-Varianten zusammen eingesetzt werden, also sowohl mit MQTT2_SERVER bzw. MQTT2_CLIENT oder MQTT  
Das Modul {{Link2CmdRef|Anker=MQTT_GENERIC_BRIDGE|Lang=en|Label=MQTT_GENERIC_BRIDGE}} kann seit November 2018 mit allen drei IO-Modul-Varianten zusammen eingesetzt werden, also sowohl mit MQTT2_SERVER bzw. MQTT2_CLIENT oder MQTT


== Links ==
== Links ==

Version vom 22. Dezember 2018, 14:24 Uhr

MQTT ist ein Protokoll ("Message Queue Telemetry Transport"), mit dem Daten und Befehle zwischen verschiedenen Geräten ausgetauscht werden. Die Kommunikation erfolgt dabei über einen Broker, den so genannten MQTT-Broker.

MQTT wurde entwickelt, um möglichst effizient, sicher und mit wenig Datenlast zu kommunizieren.

Eine sehr kurze Einführung in MQTT

...ist auf dieser Seite hier zu finden.

FHEM und MQTT

X mark.svgBitte allgemein beachten: Bei Verwendung von MQTT ist unbedingt darauf zu achten, dass die Topic-Struktur in Sende- und Empfangsrichtung unterschiedlich ausgestaltet ist. Andernfalls kommt es ggf. zu unbeabsichtigten Schleifen!

Für die Nutzung von MQTT muss ein zentraler MQTT-Server (Broker in alter Nomenklatur) verfügbar sein. Dies kann ein separater Serverdienst wie mosquitto sein, FHEM selbst kann mit Hilfe des Moduls MQTT2_SERVER selbst die Funktion des Brokers übernehmen. Dieser bietet zwar weniger Optionen als ein vollwertiger MQTT-Server, ist jedoch für kleinere Installationen völlig ausreichend. Ein MQTT-Server kann eine Vielzahl von FHEM-Installationen bedienen[1].

MQTT2

Seit November 2018 ist es mit MQTT2_CLIENT möglich, MQTT2_DEVICE-Geräte einzurichten, ohne dass MQTT2_SERVER auf derselben Installation vorhanden sein muss. MQTT2_CLIENT kann auch mit einem klassischen Broker wie mosquitto betrieben werden.

Kurzübersicht:

a) MQTT-Gerät, z.B. ein Shelly oder Sonoff <=> MQTT2_SERVER <=> MQTT2_DEVICE

b) MQTT-Gerät, z.B. ein Shelly oder Sonoff <=> (externer) MQTT-Server, z.B. mosquitto [2] <=> MQTT2_CLIENT <=> MQTT2_DEVICE

Weitere Hinweise zur Verwendung der MQTT2-Module sind in den Praxisbeispielen zu finden.

MQTT2_SERVER und MQTT2_CLIENT ermöglichen - im Unterschied zur klassischen Einbindung - passwortgeschütze Datenübertragungen zwischen den einzelnen Komponenten.

Klassische Einbindung

Wird in obiger MQTT Einführung beschrieben, Kurzübersicht: MQTT-Gerät, z.B. ein Sonoff <=> (externer) MQTT-Server, z.B. mosquitto [3] <=> MQTT <=> MQTT_DEVICE

MQTT_GENERIC_BRIDGE

Das Modul MQTT_GENERIC_BRIDGE kann seit November 2018 mit allen drei IO-Modul-Varianten zusammen eingesetzt werden, also sowohl mit MQTT2_SERVER bzw. MQTT2_CLIENT oder MQTT

Links

Hinweise

  1. Dies gilt sowohl für einen klassichen Broker wie für einen MQTT2_SERVER.
  2. oder auch ein MQTT2_SERVER in einer anderen FHEM-Installation
  3. oder auch ein MQTT2_SERVER in einer anderen FHEM-Installation