FHEM - Hausautomations-Systeme > MQTT

[Gelöst] Sonoff RF Bridge und MQTT

(1/2) > >>

eisi:
Hallo, ich habe mal wieder ein kleines (hoffentlich) Problem.

Ich habe eine Sonoff RF-Bridge, die per MQTT Daten an FHEM sendet.
3 Bewegungsmelder im Haus nutzen diese Bridge per 433Mhz. Alle geben einen anderen Datenwert raus:
RfReceived_Data oder Data: E7D74E zum Beispiel.

Wenn sich nun irgendwer im Haus bewegt und es dunkel genug ist, soll das FLurlicht für kurze Zeit angehen.

--- Code: ---defmod Flur_Bewegung_oben DOIF ([MQTT2_Wlan_Bridge_01:Data] eq 'E7369E' and [MQTT2_Sensor_Schlafzimmer:BH1750_Illuminance]<=20 and [Licht_automatik] eq 'on') (set MQTT2_Wlan_Steckdose_21 on-for-timer 120;;set MQTT2_Wlan_Steckdose_20 on-for-timer 120)

--- Ende Code ---

Jetzt kommt das Problem:
Beim 1. Mal pro Bewegungsmelder geht es.
Sollte sich wer das 2. Mal durch denselben Bewegungsmelderbereich gehen, geht nichts.

Was ich schon gefunden habe:
Der Sonoff-RF gibt jedes Mal eine volle Meldung:


--- Code: ---18:02:05.325 MQT: tele/Wlan-Bridge-01/RESULT = {"Time":"2021-10-16T18:02:05","RfReceived":{"Sync":12520,"Low":420,"High":1220,"Data":"E7D74E","RfKey":"None"}}

--- Ende Code ---

Nur in FHEM wird, wenn es derselbe Code ist, das Reading:  RfReceived_Data oder Data nicht geändert.
Es werden nur die Readings: Sync, Low, High und Time geändert.
Damit triggert das DOIF auch nicht.

Was kann man tun?
Lieben Gruß,
Ingo

Beta-User:

--- Zitat von: eisi am 16 Oktober 2021, 19:14:38 ---Was kann man tun?

--- Ende Zitat ---
a) vollständige Infos liefern (z.B. wie event-on-change-Attribute gesetzt sind)?
b) im richtigen Bereich posten.

Das hier ist m.E. kein MQTT(2?)-"Problem", sondern eher ein Einsteiger-DOIF-Thema, das nach ELSE oder repeatsame riecht (nicht meine Stärke, würde das vermutlich über ein notify lösen, wenn man die Events kennen würde (=> Siehe a)))...

eisi:
Zu a) Da habe ich bis eben nichts verstellt.
Zu b) Das ist kein DoIF Thema, da das DOIF nur dann getriggert werden kann, wenn sich der Wert für Data ändert, was er bis eben nicht tat. :-)

Lösung:
event-on-update-reading data

Damit wird auch der Datawert immer neu mitübertragen, auch wenn sich an dem Wert nichts geändert hat.
Aber Danke für den richtigen Pfad :-)

Beta-User:
 ::) schön, wenn's irgendwie geholfen hat...

(da sind gleich ein paar Dinge "unsauber" formuliert, aber ohne a) tappe ich auch weiter nur im Dunkeln, wie es vorher "eingestellt" war. So habe ich immerhin die Idee, dass das ein MQTT2_DEVICE sein könnte, bei dem attrTemplate "tasmota_rf" gesetzt war... Das ist experimentell, und eventuell könnte ich das ja irgendwohin schreiben, wenn man mir sinnvolle Rückmeldung gibt, wie und wo...!)

eisi:
Für a) Ich habe noch nie (seit 2015) daran etwas verstellt. Ich wusste nicht, dass es das so gibt.
Es ist ein MQTT2 Device mit Tasmota RF
Was möchtest du genau wissen?
Wenn es ums entwickeln geht, bin  ich gerne behilflich.

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln