Module mqtt

Dieses Modul erlaubt es SmartHomeNG über das MQTT Protokoll zu kommunizieren. Es stellt ein einfach zu nutzendes Interface für Logiken und Plugins zur Verfügung. Dabei kann das mqtt Modul von mehreren Logiken und/oder Plugins gleichzeitig genutzt werden.

  • Informationen zur Nutzung in Logiken sind im Abschnitt Logiken der Anwender Dokumentation zu finden.

  • Informationen zur Nutzung in Plugins sind im Abschnitt Development of Plugins der Entwickler Dokumentation zu finden.

Aktuell unterstützt das Modul MQTT bis zur Protokoll Version 3.1.1. Sobald das verwendete Python Package des Eclipse Projektes auch die Version MQTT v5.0 unterstützt, wird das SmartHomeNG Modul entsprechend erweitert.

Konfiguration

Datei ../etc/module.yaml

../etc/module.yaml
# etc/module.yaml
mqtt:
    module_name: mqtt
    # enabled: False
    # broker_host: 127.0.0.1
    # broker_port: 1883
    # broker_client: MQTT-module
    # user: Benutzer
    # password: Geheim
    # broker_monitoring: False
    # qos: 1
    # bool_values: ['Falsch', 'Wahr']
    # last_will_topic: devices/shng-module/$online
    # last_will_payload: 'False'
    # birth_topic: devices/shng-module/$online
    # birth_payload: 'True'

Bemerkung

Die Konfigurationsparameter des mqtt Modules die in dieser Datei konfiguriert werden, können auch über das graphische Administrations-Interface geändert werden.

Parameter

Bemerkung

enabled

MQTT Unterstützung aktivieren oder deaktivieren.

broker_host

Optional: DNS Name oder IP Adresse des MQTT Brokers. Wird broker_host nicht angegeben, wird angenommen, dass der Broker auf dem selben Rechner läuft wie SmartHomeNG und es wird 127.0.0.1 (localhost) genutzt.

broker_port

Optional: Port auf dem der MQTT Broker hört. Wird broker_port nicht angegeben, wird der Standard Port 1883 genutzt.

broker_client

Optional: Client Name für die Broker Kommunikation - Muss nur angegeben werden, falls mehrere SmartHomeNG Installationen zeitgleich mit dem selben Broker kommunizieren sollen.

user

Optional: Benutzername des MQTT Brokers, falls dieser ein Login erfordert.

password

Optional: Password des MQTT Brokers, falls dieser ein Login erfordert.

broker_monitoring

Optional: Wenn dieser Parameter auf True gesetzt wird, werden Informationen des Brokers zum Message Durchsatz abgefragt und können im Admin-Interface angezeigt werden.

qos

Optional: Legt fest, welche Quality-of-Service Anforderungen MQTT Messages beim Publish mitgegeben werden soll. Wird der Parameter nicht angegeben, wird als Standardwert 1 verwendet.

bool_values

Optional: Legt fest, welche Werte als Payload für Topics verwendet werden sollen, wenn Werte vom Typ bool versendet werden sollen. Außerdem werden diese Werte auch auf eingehende MQTT Messages angewendet, die in Variablen des Typ bool eingelesen werden sollen. Für den Parameter bool_values muss eine Liste mit zwei Werten angegeben werden, wobei der erste Wert für False steht und der zweiter Wert für True

last_will_topic

Optional: Legt den Topic der MQTT last_will Message fest. Wird der Parameter nicht angegeben, wird beim Verbindungsaufbau keine last_will Message festgelegt.

last_will_payload

Optional: Legt die Payload der MQTT last_will Message fest. Wird der Parameter nicht angegeben, wird beim Verbindungsaufbau eine last_will Message ohne Payload festgelegt.

birth_topic

Optional: Analog zur MQTT last_will Message implementiert das SmartHomeNG mqtt Modul eine birth Message, die beim Aufbau der Verbindung zum MQTT Broker versendet wird. Wird dieser Parameter nicht angegeben, wird beim Verbindungsaufbau keine birth Message versendet.

birth_payload

Optional: Legt die Payload der birth Message fest. Wird der Parameter nicht angegeben, wird beim Verbindungsaufbau eine birth Message ohne Payload versendet.