FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: klaus.schauer am 27 März 2026, 11:06:24

Titel: MQTT2_DEVICE: Ersetzungen in der readingList
Beitrag von: klaus.schauer am 27 März 2026, 11:06:24
Ersetzungen für z. B.
wb4136601/lmo:.* lmo
mit
wb4136601/lmo:.* {$EVENT =~ s/3/default/g; $EVENT =~ s/4/awattar/g; $EVENT =~ s/5/automaticStop/g; readingsSingleUpdate($defs{"wb4136601"}, 'lmo', $EVENT, '-')}
funktioniert. Gibt es das dennoch was einfaches "von der Stange"?
Titel: Aw: MQTT2_DEVICE: Ersetzungen in der readingList
Beitrag von: TomLee am 27 März 2026, 11:26:31
https://wiki.fhem.de/wiki/MQTT2-Module_-_Praxisbeispiele#Einfache_Payload

?
Titel: Aw: MQTT2_DEVICE: Ersetzungen in der readingList
Beitrag von: rudolfkoenig am 27 März 2026, 11:40:29
Fuer JSON Payload gibts jsonMap, alternativ gibts noch eventMap.

Wenn beides nicht hilft, dann bleibt die obige Methode, obwohl ich den anders bauen wuerde:
wb4136601/lmo:.* {my %map=(3=>"default",4=>"awattar",5=>"automaticStop");; { lmo=>$map{$EVENT}||$EVENT } }
Das ist wie im Wiki, zusaetzlich wird ein WARNING bei unbekannten Werten vermieden.
Titel: Aw: MQTT2_DEVICE: Ersetzungen in der readingList
Beitrag von: klaus.schauer am 27 März 2026, 19:15:42
Danke an euch beide. Das ist um Welten besser, als die erste Variante und vermutlich erheblich performanter. Rudi Du hast - wie meist - die eleganteste Variante.