FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: Michael am 31 August 2019, 10:27:34

Titel: Anzahl offen Fenster
Beitrag von: Michael am 31 August 2019, 10:27:34
Moin @all

Ja, ich hatte die Hilfe benutzt und bin mit keinem der Ansätze klargekommen.  :(

Daher brauche eure Hilfe.

Ich möchte nur die Anzahl der offenen Fenster ermitteln und zwar wenn ein Event derer Ausgelöst wird.

Was ich bis jetzt habe ist dies.
defmod di_window DOIF ##
attr di_window alias di_window
attr di_window do always
attr di_window room FS20
attr di_window state [#"^Fenster_:state":state:"open","0"]


Kann mir jemand Helfen.  :-[
Titel: Antw:Anzahl offen Fenster
Beitrag von: Damian am 31 August 2019, 11:36:32
Zitat von: Michael am 31 August 2019, 10:27:34
Moin @all

Ja, ich hatte die Hilfe benutzt und bin mit keinem der Ansätze klargekommen.  :(

Daher brauche eure Hilfe.

Ich möchte nur die Anzahl der offenen Fenster ermitteln und zwar wenn ein Event derer Ausgelöst wird.

Was ich bis jetzt habe ist dies.
defmod di_window DOIF ##
attr di_window alias di_window
attr di_window do always
attr di_window room FS20
attr di_window state [#"^Fenster_:state":state:"open","0"]


Kann mir jemand Helfen.  :-[

Poste mal list von einem offenen Fenster.
Titel: Antw:Anzahl offen Fenster
Beitrag von: Michael am 31 August 2019, 12:23:51
Moin Damian

Ich hoffe das ist das was du wolltest.
Dies ist ein Fenster Device:
Internals:
   CFGFN      /opt/fhem/cfg/Fenster.cfg
   CHANGED   
   DEF        105c28831bb2
   DeviceID   105c28831bb2
   FUUID      5c488f11-f33f-ac33-2480-0d1a3a0893283463
   LASTInputDev MobileAlertsGateway
   MSGCNT     11
   MobileAlertsGateway_MSGCNT 11
   MobileAlertsGateway_TIME 2019-08-31 09:05:35
   NAME       Fenster_Bad
   NR         515
   STATE      open
   TYPE       MOBILEALERTS
   OLDREADINGS:
   READINGS:
     2019-02-19 19:17:03   actStatus       switchedOff
     2019-01-30 22:48:27   deviceType      MA10800
     2019-08-31 09:05:04   lastEvent       0
     2019-08-31 09:05:04   lastEventString 0 s
     2019-08-31 09:05:26   lastRcv         2019-08-31 09:05:26
     2019-08-31 09:05:20   state           open
     2019-08-31 09:05:20   txCounter       3124
Attributes:
   alias      Fenster_Bad
   devStateIcon open:fts_window_1w_open@red closed:fts_window_1w@green
   group      Fenster
   room       Technik
   userattr   Fenster_ElternRechts Fenster_ElternRechts_map structexclude
Titel: Antw:Anzahl offen Fenster
Beitrag von: Damian am 31 August 2019, 13:04:26
Das Wort "state" kommt bekanntlich im Event selbst nicht vor (siehe Events im Eventmonitor), daher:
attr di_window state [#"^Fenster_":state:"open","0"]
Titel: Antw:Anzahl offen Fenster
Beitrag von: meikelS am 01 September 2019, 16:06:42
Ich hatte das vor langer Zeit mal in einer Funktion ausgelagert.
Habs mal hier (aus dem Kopf und ohne Syntaxprüfung) aufgeschrieben.
Sah dann ungefähr so aus.



my $cnt = 0;
foreach my $window (fhem("list kontakt.*")) # Alle Fenster durchlaufen...
{
if(Value($window) eq OPEN) # Wenn es offen ist, dann zählen.
{
$cnt++;
}
}