MQTT: Unterschied zwischen den Versionen
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
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
- Thread, zur Entstehungsgeschichte von MQTT2_CLIENT
- Ankündigungsthread zur MQTT2-Erweiterung der MQTT_GENERIC_BRIDGE