Dieser Artikel beschreibt eine einfache Möglichkeit, Daten zwischen zwei ioBroker-Instanzen (in beide Richtingungen) auszutauschen. Generell gibt es für die Synchronisation von ioBroker Objekten zwischen zwei oder mehreren Instanzen diverse Möglichkeiten, z.B. den Master-Slave-Betrieb, allerdings reicht für unseren Anwendungsfall die einfache Übertragung der Werte über MQTT aus.
Der Anwendungsfall ist einfach Beschrieben. In Objekt A ist eine PV-Anlage an einem smarten Stromzähler aktiv. In Objekt B läuft eine umfassende ioBroker-Instanz, mit der die Leistung der PV-Anlage gespeichert und visualisiert werden soll. Hierzu sind in beiden Objekten zwei Fritz-Boxen aktiv, die über eine VPN-Verbindung Daten austauschen können.
Wir lesen in Objekt A den Leistungswert des Stromzähler mithilfe eines ioBroker aus (Anleitung) und wollen den Leistungswert in den ioBroker-Objekten an den ioBroker in Objekt B übertragen.
Hierzu nutzen wir MQTT. Im ersten Schritt installieren wir den MQTT-Adapter auf dem Ziel-ioBroker in Objekt B, hierzu nutzen wir den klassischen Weg über die Adapter-Installation. In den Eigenschaften des Adapters müssen wir lediglich einen Benutzernamen und ein Passwort definieren.
Auf dem ioBroker in Objekt A installieren wir den MQTT-Client Adapter über den klassischen Installationsweg. Neben den Einstellungen des MQTT-Client-Adapters müssen wir zusätzlich noch die Übertragung des ioBroker-Objekt-Wertes konfigurieren.
In den MQTT-Client-Einstellungen nutzen wir die weiter oben definierten Zugangsdaten und speichern die Konfiguration. Wir wechseln in die ioBroker-Objekte und suchen den Leistungswert des Stromzählers. In den Speicherungs-Eigenschaften können wir unter dem Tab MQTT-Client die entsprechenden Eigenschaften vornehmen:
Im Topic können wir einen beliebigen Pfad angeben, dieser Pfad wird im Ziel-MQTT-Adapter in den Objekten angelegt.
Sobald wir die Übertragung speichern, werden alle Änderungen des Objektes direkt via MQTT an den entfernten ioBroker gesendet und dort in Objekten des MQTT-Adapters aktualisiert.
Der ioBroker in Objekt B verfügt über eine leistungsfähige Datenbank, weswegen auch die Historisierung der Werte (und auch die Visualisierung) dort vorgenommen wird.
Hi, funktionieren denn die Objekteinstellungen in v6.3.5 noch? Bei mir kann ich dort nur influx’dB und Telegram Objekt Daten konfigurieren. mqtt taucht an dieser Stelle nicht (mehr?) auf. Das ein zuverlässiges automatische senden ist nicht möglich.
Gibt es hierfür eine andere Lösung??