Hauptmenü

DOIF Lampenstatus

Begonnen von FHEM-Wohnung, 23 Oktober 2018, 19:02:01

Vorheriges Thema - Nächstes Thema

FHEM-Wohnung

Hallo,

ich hätte gerne ein Dummy (dummy_Wohnung_Licht) welche jeweils ein Reading mit dem Raumnamen bekommt.
Sobald irgendein Licht zum Beispiel Wohnzimmer_Licht.* eingeschaltet ist und die Haustür offen steht, soll das Reading im Dummy auf on stehen.

Sobald ALLE Lichter aus sind, soll das Reading auf off springen.

Hier wäre mein DOIF:

((["Wohnzimmer_Licht:on"]) and [Flur_Wohnungstuer] eq "open")
  (setreading dummy_Wohnung_Licht Wohnzimmer on)
DOELSEIF (["Wohnzimmer_Licht:off"])
  (setreading dummy_Wohnung_Licht Wohnzimmer off)


Leider funktioniert dieses nicht könnte mir jemand bitte helfen?

Otto123

#1
Das "funktioniert nicht" solltest Du besser erläutern.

Funktioniert der Befehl setreading dummy_Wohnung_Licht Wohnzimmer off in der FHEM Kommandozeile?

Du triggerst auf den Event
Zitat Commandref
Zitat["FS:temp"] triggert auf alle Devices, die "FS" im Namen und "temp" im Event beinhalten
gibt es denn einen entsprechenden Event?
Eventmonitor geschaut?

Hinweise
Deine Aufgabe wird so sowieso nicht erfüllt werden können, bei jedem Event ["Wohnzimmer_Licht:off"] wird das Reading auf off gehen, nicht erst wenn alle off sind.
(["Wohnzimmer_Licht:on"]) die Klamemrn sind unnötig -> ["Wohnzimmer_Licht:on"]

Wenn Du alle Lichter einfach in eine structure packst, wäre die zweite Aufgabe zumindest schon einfach erfüllt.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

satprofi

versuche mal set statt setreading

Gesendet mit Tapatalk

gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

FHEM-Wohnung

Super mit dem Structure funktioniert es :) Wollte eigentlich eine Lösung welche das Manuelle hinzufügen erspart aber so klappt das auch!
Vielen Dank!

Damian

Zitat von: FHEM-Wohnung am 23 Oktober 2018, 20:52:33
Super mit dem Structure funktioniert es :) Wollte eigentlich eine Lösung welche das Manuelle hinzufügen erspart aber so klappt das auch!
Vielen Dank!

Nur als Ergänzung, hier ein Einzeiler ohne "Handarbeit":

DOIF {set_Reading (AttrVal("$DEVICE","room",0),[#"Licht":state:$room =~ AttrVal("$DEVICE","room",0) and $_ eq "on"])}

Wenn irgendwo ein Device mit "Licht" im Namen geschaltet wird, wird im DOIF im Reading mit dem Raumnamen des Devices, welches geschaltet wurde die Anzahl der noch eingeschalteten Lampen gespeichert. Wenn das letzte Licht des Raumes ausgeschaltet wird steht dort 0.


Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Streba

Ich muss noch einmal auf dieses alte Thema zurückkommen.
Das DOIF macht genau das, was auch ich benötige. Ich habe ja leider (noch) nicht so viel Ahnung und mir daher den Code nur kopiert und angepasst.

Einziges Problem: Das Reading wird nicht automatisch aktualisiert, sondern nur per Seiten-Reload im Browser. Ist das normal?
Kann man das ändern, sodass sich der Wert nach jeder Schalterbetätigung automatisch aktualisiert?

Vielen Dank für Eure Hilfe!