Autor Thema: Beispiel: MQTT_Bridge mit Rückmeldung  (Gelesen 2638 mal)

Offline blecher-at

  • Jr. Member
  • **
  • Beiträge: 58
Beispiel: MQTT_Bridge mit Rückmeldung
« am: 01 Dezember 2017, 18:47:12 »
Usecase: MQTT wird als fhem2fhem-Alternative verwendet um ein remote-gerät (simples beispiel mit einer led) zu steuern.
Hier eine Zusammenfassung meiner Config die ich aus einigen Beiträgen hier im Forum und viel code-reading zusammengestellt habe, vielleicht nützt sie jemandem.

Bis der SLAVE für die publishState on/off zurückmeldet, bleibt der status am master auf set_on/set_off. Erst das reading im rückkanal setzt den status auf on/off.
Damit wird ein ausfall oder schlechte performance des slave sofort in der GUI sichtbar.

MASTER-FHEM:

define ALARM_LED MQTT_DEVICE
attr ALARM_LED IODev MQTT
attr ALARM_LED autoSubscribeReadings SLAVE1/ALARM_LED/+
attr ALARM_LED publishSet on off SLAVE1/ALARM_LED/state/set
attr ALARM_LED eventMap { usr=>{"on"=>"set_on", "off"=>"set_off"} }
attr ALARM_LED stateFormat state

SLAVE-FHEM der eine GPIO-LED steuert:
define ALARM_LED RPI_GPIO 1
attr ALARM_LED direction output
attr ALARM_LED eventMap { dev=>{}, usr=>{"set_on"=>"on", "set_off"=>"off"} }

define MQTT_ALARM_LED MQTT_BRIDGE ALARM_LED
attr MQTT_ALARM_LED IODev MQTT
attr MQTT_ALARM_LED publish-topic-base SLAVE1/ALARM_LED/
attr MQTT_ALARM_LED publishState SLAVE1/ALARM_LED/state
attr MQTT_ALARM_LED subscribeSet SLAVE1/ALARM_LED/state/set
Gefällt mir Gefällt mir x 5 Liste anzeigen