FHEM Forum

FHEM => Frontends => TabletUI => Thema gestartet von: zap am 31 Januar 2016, 15:10:17

Titel: Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: zap am 31 Januar 2016, 15:10:17
Ich würde gerne ein Fenstersymbol darstellen, das die Anzahl der offenen Fenster als Kreis in der rechten oberen Ecke darstellt. Wie lässt sich das in FTUI umsetzen? Ich habe schon in einigen Screenshots gesehen, dass das möglich ist.

Die Anzahl der offenen Fenster sowie den Gesamtstatus habe ich in einem Dummy Device in 2 Readings stehen:

STATE = "open" oder "closed", je nachdem, ob mindestens 1 Fenster offen ist
COUNT_OPEN = Anzahl der offenen Fenster

Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: roman1528 am 31 Januar 2016, 17:19:29
Zitat von: zap am 31 Januar 2016, 15:10:17
Ich würde gerne ein Fenstersymbol darstellen, das die Anzahl der offenen Fenster als Kreis in der rechten oberen Ecke darstellt. Wie lässt sich das in FTUI umsetzen? Ich habe schon in einigen Screenshots gesehen, dass das möglich ist.

Die Anzahl der offenen Fenster sowie den Gesamtstatus habe ich in einem Dummy Device in 2 Readings stehen:

STATE = "open" oder "closed", je nachdem, ob mindestens 1 Fenster offen ist
COUNT_OPEN = Anzahl der offenen Fenster

Moin.

Es würde reichen wenn dein Dummy die Anzahl der offenen Fenster erfasst. Weil bei "0" keine Fenster offen sind.
Also: STATE 5
oder: STATE 0


<div data-type="symbol"
        data-device="DUMMY"
        data-states='["0","^[01]$","^[1-9][0-9]|[2-9]$"]'
        data-icons='["ftui-window","ftui-window warn","ftui-window warn"]'
        data-colors='["#505050","#aa6900","#aa6900"]'
        data-icon="ftui-window" <!-- Das füge ich immer mit ein falls es zu Problemen kommt.-->
</div>


Viel Spaß beim testen :)

Grüße^^

EDIT

Oder du lässt dein Dummy so und liest nur "COUNT_OPEN" aus:


<div data-type="symbol"
        data-device="DUMMY"
        data-get="COUNT_OPEN"
        data-states='["0","^[01]$","^[1-9][0-9]|[2-9]$"]'
        data-icons='["ftui-window","ftui-window warn","ftui-window warn"]'
        data-colors='["#505050","#aa6900","#aa6900"]'
        data-icon="ftui-window" <!-- Das füge ich immer mit ein falls es zu Problemen kommt.-->
</div>
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: chris1284 am 09 Dezember 2016, 08:24:04
wie errechnet ihr für den dummy die anzahl offener fenster?
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 09 Dezember 2016, 08:26:10
Mit einer myUtils Funktion.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: choenig am 09 Dezember 2016, 22:57:40
Hi zap,

ich mach das wie folgt:

Einen Dummy zum nachhalten des Status:

defmod dummy_OffeneFenster dummy
attr dummy_OffeneFenster stateFormat openWindowsCount


Ein DOIF zum Ausführen der der Funktion aus 99_MyUtils.pm:

defmod doif__winOpen.StartStop DOIF ([".*:(open|tilted|closed)$"]) ({winOpenStartStop("$DEVICE", "$EVENT")})
attr doif__winOpen.StartStop do always


Eine Function in 99_MyUtils.pm:

sub winOpenStartStop($$) {
    #Als Parameter muss der device-Name übergeben werden
    my ($dev,$event)=@_;
   
    #Der dummy der verwendet wird, um die offenen Fenster/Tueren nachzuhalten
    my $dummy = 'dummy_OffeneFenster';
   
    #Erst mal prüfen, ob das übergebene device überhaupt existiert
    if ($dev =~ /[Ff]enster|Tuer/ && $defs{$dev})
    {
        my $model=AttrVal($dev,'model','');
        if ($model eq 'HM-SEC-SCo' || $model eq 'HM-SEC-RHS')
        {
            #hole die liste der Fenster, die gerade offen sind
            my $openWindows = ReadingsVal($dummy, 'openWindows', '');
            my @parts;
            @parts = split(/,/, $openWindows) if ($openWindows ne '-');

            # wenn das aktuelle Fenster noch nicht in der liste ist -> hinzufuegen
            if ($event eq 'open' || $event eq 'tilted') {
                # add element to array if not already there
                push(@parts, $dev) unless grep{$_ eq $dev} @parts;
            }
            elsif ($event eq 'closed') {
                # remove element from array
                @parts = grep {$_ ne $dev} @parts;
            }
           
            # aktualisiere die Readings des dummies
            my $openWindowsCount = scalar(@parts);
            if ($openWindowsCount > 0) { $openWindows = join(',', @parts); }
            else                       { $openWindows = '-';               }
            fhem("setreading $dummy openWindows $openWindows");
            fhem("setreading $dummy openWindowsCount $openWindowsCount");
        }
    }
}


Und mein FTUI sieht wie folgt aus:

   <div data-type="label" class="cell" >Fenster/Türen geöffnet<>
   <div data-type="symbol" data-device="dummy_OffeneFenster" data-get="openWindowsCount"
       data-get-on='["0", "^[1-9].*"]'
       data-icons='["fa-exclamation-triangle", "fa-exclamation-triangle"]'
       data-colors='["#444444","#ff0000"]'
       class="cell grande top-narrow-2x" ><>
   <div data-type="symbol" data-device="dummy_OffeneFenster" data-get="openWindowsCount"
       data-get-on='["0", "^[1-9].*"]'
       data-icons='["fa-exclamation-triangle", "fa-exclamation-triangle warn"]'
       data-colors='["transparent","transparent"]'
       class="cell bigger top-narrow-2x" style="margin-top:-188px !important;margin-left:33px !important;"><>

(Achtung: Die closing tags werden durch das Board »zerstört«)

Der FTUI Code besteht aus zwei Teilen, da ich ein möglichst großes Ausrufezeichen haben wollte, aber der warn-Indikator sollte nicht so groß sein. Das geht bestimmt auch einfacher :-).

Ich bestehe nicht darauf, dass der Code optimal ist, aber er funktioniert gut :-)

LG
Christian
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: Thyraz am 10 Dezember 2016, 08:52:51
Noch eine alternative Lösung:

Bei mir haben alle Fenster ein UserReading "windowState" welches open, closed, tilted sein kann.
Zusätzlich sind alle Fenster in der Gruppe "Fenster".

Die Anzahl der offenen Fenster bekomme ich dadurch ohne weitere Fallunterscheidungen für Sensormodelle etc. über diese 99_myUtils Funktion:


sub numberOfOpenWindows() {
my $openWindows = 0;

foreach my $windowName (devspec2array("group=Fenster")) {
if (ReadingsVal($windowName, "windowState", "closed") ne "closed") {
$openWindows++;
}
}
return $openWindows;
}


Für die FTUI Anzeige würde dann ein allgemeines Notify auf open|tilted|closed reichen, welches das DummyReading mit dem Rückgabewert der Funktion belegt.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: chris1284 am 10 Dezember 2016, 08:58:05
Zitat von: CoolTux am 09 Dezember 2016, 08:26:10
Mit einer myUtils Funktion.

hatte ich mir gedacht und die 2 zeilen code in ein notfy gepackt
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: jnewton957 am 18 Dezember 2016, 10:30:13
Zitat von: Thyraz am 10 Dezember 2016, 08:52:51
Noch eine alternative Lösung:

Bei mir haben alle Fenster ein UserReading "windowState" welches open, closed, tilted sein kann.
Zusätzlich sind alle Fenster in der Gruppe "Fenster".

Die Anzahl der offenen Fenster bekomme ich dadurch ohne weitere Fallunterscheidungen für Sensormodelle etc. über diese 99_myUtils Funktion:


sub numberOfOpenWindows() {
my $openWindows = 0;

foreach my $windowName (devspec2array("group=Fenster")) {
if (ReadingsVal($windowName, "windowState", "closed") ne "closed") {
$openWindows++;
}
}
return $openWindows;
}


Für die FTUI Anzeige würde dann ein allgemeines Notify auf open|tilted|closed reichen, welches das DummyReading mit dem Rückgabewert der Funktion belegt.

hallo,

kannst du das bitte mal komplett mit Anteil in der fhem.cfg , myUtils und dann ftui beschreiben.

Danke Danke

Jörg
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: macfly am 03 Februar 2018, 21:58:24
Zitat von: choenig am 09 Dezember 2016, 22:57:40
Hi zap,

ich mach das wie folgt:

Einen Dummy zum nachhalten des Status:

defmod dummy_OffeneFenster dummy
attr dummy_OffeneFenster stateFormat openWindowsCount


Ein DOIF zum Ausführen der der Funktion aus 99_MyUtils.pm:

defmod doif__winOpen.StartStop DOIF ([".*:(open|tilted|closed)$"]) ({winOpenStartStop("$DEVICE", "$EVENT")})
attr doif__winOpen.StartStop do always


Eine Function in 99_MyUtils.pm:

sub winOpenStartStop($$) {
    #Als Parameter muss der device-Name übergeben werden
    my ($dev,$event)=@_;
   
    #Der dummy der verwendet wird, um die offenen Fenster/Tueren nachzuhalten
    my $dummy = 'dummy_OffeneFenster';
   
    #Erst mal prüfen, ob das übergebene device überhaupt existiert
    if ($dev =~ /[Ff]enster|Tuer/ && $defs{$dev})
    {
        my $model=AttrVal($dev,'model','');
        if ($model eq 'HM-SEC-SCo' || $model eq 'HM-SEC-RHS')
        {
            #hole die liste der Fenster, die gerade offen sind
            my $openWindows = ReadingsVal($dummy, 'openWindows', '');
            my @parts;
            @parts = split(/,/, $openWindows) if ($openWindows ne '-');

            # wenn das aktuelle Fenster noch nicht in der liste ist -> hinzufuegen
            if ($event eq 'open' || $event eq 'tilted') {
                # add element to array if not already there
                push(@parts, $dev) unless grep{$_ eq $dev} @parts;
            }
            elsif ($event eq 'closed') {
                # remove element from array
                @parts = grep {$_ ne $dev} @parts;
            }
           
            # aktualisiere die Readings des dummies
            my $openWindowsCount = scalar(@parts);
            if ($openWindowsCount > 0) { $openWindows = join(',', @parts); }
            else                       { $openWindows = '-';               }
            fhem("setreading $dummy openWindows $openWindows");
            fhem("setreading $dummy openWindowsCount $openWindowsCount");
        }
    }
}


Und mein FTUI sieht wie folgt aus:

   <div data-type="label" class="cell" >Fenster/Türen geöffnet<>
   <div data-type="symbol" data-device="dummy_OffeneFenster" data-get="openWindowsCount"
       data-get-on='["0", "^[1-9].*"]'
       data-icons='["fa-exclamation-triangle", "fa-exclamation-triangle"]'
       data-colors='["#444444","#ff0000"]'
       class="cell grande top-narrow-2x" ><>
   <div data-type="symbol" data-device="dummy_OffeneFenster" data-get="openWindowsCount"
       data-get-on='["0", "^[1-9].*"]'
       data-icons='["fa-exclamation-triangle", "fa-exclamation-triangle warn"]'
       data-colors='["transparent","transparent"]'
       class="cell bigger top-narrow-2x" style="margin-top:-188px !important;margin-left:33px !important;"><>

(Achtung: Die closing tags werden durch das Board »zerstört«)

Der FTUI Code besteht aus zwei Teilen, da ich ein möglichst großes Ausrufezeichen haben wollte, aber der warn-Indikator sollte nicht so groß sein. Das geht bestimmt auch einfacher :-).

Ich bestehe nicht darauf, dass der Code optimal ist, aber er funktioniert gut :-)

LG
Christian

Hi,

auf die Gefahr hin, wie ein völliger Noob zu wirken:

woher kommt die Zahl aus deinem Icon bei offenem Fenster? Ich habe das mal nachgespielt und kann die icon-farbänderung nachvollziehen aus data-type="symbol"  und data-get-on. Ich sehe auch die Platzierung der runden roten zahl mit margin-top und margin-left. Aber woher genau bekommt ftui den Wert  aus dem dummy_OffeneFenster?  Kannst du mir mal nachhilfe in html und div-platzierung geben?

danke,
Friedhelm
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: choenig am 04 Februar 2018, 09:03:19
Hi Friedhelm,

Zitat von: macfly am 03 Februar 2018, 21:58:24
woher kommt die Zahl aus deinem Icon bei offenem Fenster?
[...]
Aber woher genau bekommt ftui den Wert  aus dem dummy_OffeneFenster?

ich versteh' die Frage(n) nicht ganz. Durch das »warn« im data-icons verwendet er den Wert des dummys als anzuzeigende Zahl.

Zitat von: macfly am 03 Februar 2018, 21:58:24
Kannst du mir mal nachhilfe in html und div-platzierung geben?

Was hast Du denn für ein Problem in »html und div-platzierung«?

LG
Christian
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: macfly am 05 Februar 2018, 10:55:56
alles klar, dein Hinweis hat mich zu https://wiki.fhem.de/wiki/FTUI_Widget_Symbol geschickt. Hatte ich garnicht so auf den Schirm, dass das "warn" solche Auswirkungen hat. Ein Beispiel auf der wiki-seite wäre cool gewesen.

Vielen Dank für deine Antwort!

schöne Grüße,
Friedhelm
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 26 März 2018, 17:15:03
Zitat von: Thyraz am 10 Dezember 2016, 08:52:51
Noch eine alternative Lösung:

Bei mir haben alle Fenster ein UserReading "windowState" welches open, closed, tilted sein kann.
Zusätzlich sind alle Fenster in der Gruppe "Fenster".

Die Anzahl der offenen Fenster bekomme ich dadurch ohne weitere Fallunterscheidungen für Sensormodelle etc. über diese 99_myUtils Funktion:


sub numberOfOpenWindows() {
my $openWindows = 0;

foreach my $windowName (devspec2array("group=Fenster")) {
if (ReadingsVal($windowName, "windowState", "closed") ne "closed") {
$openWindows++;
}
}
return $openWindows;
}


Für die FTUI Anzeige würde dann ein allgemeines Notify auf open|tilted|closed reichen, welches das DummyReading mit dem Rückgabewert der Funktion belegt.

Hallo zusammen, habe das Userreading "windowState" gesetzt und auch die Funktion in die 99_MyUtils.pm aufgenommen.
Leider stehe ich nun aber bei der Einrichtung des Dummy bzw. Notify völlig auf dem Schlauch.
Kann mir da bitte mal jemand unter die Arme greifen? :-(
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 10:03:46

sub numberOfOpenWindows() {

      return devspec2array("group=Fenster:FILTER=STATE!=closed")
}

Sollte Dir die Anzahl der nicht geschlossenen Fenster zurück geben.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 11:48:01
Hallo CoolTux,

vielen Dank erstmal für Dein Feedback.
Wenn ich Dich richtig verstehe, liefert die Funktion nun also die Anzahl der offenen Fenster zurück.
Jetzt würde ich das Ergebnis aber gerne noch in ein Dummy Device schreiben, um dieses anschließend in TabletUI anzuzeigen.

Hast Du noch nen Tipp für mich, wie ich das mache?

Vielen Dank im Voraus.
Marc
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 12:09:03
Du machst ein Notify welches auf alle Fenster triggert und startest das im Notify die Funktion. Am besten gleich mit dem set Befehl für den Dummy
Von Vorteil ist wenn man eine vernünftige Namensgebung gewählt hat.

define notifyAnzahlFenster notify FensterKontact.*:(open|tilted|closed) { CommandSet(undef,'dummyname ' . numberOfOpenWindows()) }


Notify triggert auf alle Devices die vom Namen her anfangen mit FensterKontakt und den Event open,tilted oder closed haben und führt einen set dummyname Anzahl_der_offenen_Fenster aus
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 14:02:19
Oh je... da bin ich wohl ein hoffnungsloser Fall :-(

Meine Fensterdevices haben alle eine einheitliche Benennung und beginnen mit "Fensterkontakte...".
Da ich diverse unterschiedliche Fenstersensoren verwende, die alle eine andere Schreibweise im Status haben, muss ich vermutlich noch das Event "(open|tilted|closed)" anpassen, aber das im zweiten Schritt.
Konkret bekomme ich es leider noch immer nicht hin :-(

Also ich hab jetzt folgendes eingestellt:

Dummy Device
Internals:
   CFGFN
   NAME         offeneFenster
   NR             498
   STATE        ???
   TYPE          dummy
Attributes:


notify
Internals:
    DEF                         Fensterkontakt.*:(open|tilted|closed) { CommandSet(undef, ' offeneFenster ' . numberOfOpenWindows()) }
    NAME                      notifyAnzahlFenster
    NR                          305
    NTFY_ORDER          50-notifyAnzahlFenster
    REGEXP                   Fensterkontakt.*:(open|tilted|closed)
    STATE                     active
    TYPE                       notify
    READINGS:             2018-03-27 12:50:47 state active
Attributes:


hier noch ein List von einem Beispiel-Fenstersensor
Internals:
    CHANGED
    DEF        158d0001daefe8 sensor_magnet.aq2 XiaomiGateway
    IODev XiaomiGateway
    LASTInputDev XiaomiGateway
    MODEL sensor_magnet.aq2
    MSGCNT 2
    NAME XMI_158d0001daefe8
    NR 139
    SID     158d0001daefe8
    STATE Status: close<br>Batterie: ok<br>last Change: (2018-02-22 21:42:06)
    TYPE XiaomiSmartHome_Device
    VERSION 1.20
    XiaomiGateway_MSGCNT 2
    XiaomiGateway_TIME 2018-03-27 12:56:13
READINGS: 2018-03-27 12:56:13
     battery ok 2018-03-27 12:56:13
     battery_level 3 2018-03-27 12:56:13
     heartbeat 158d0001daefe8 2018-03-27 12:56:13
     no_close 0 2018-02-22 21:42:06
     state close 2018-03-27 12:56:13
     windowState closed
Attributes: IODev XiaomiGateway
     alarmDevice Sensor alarmSettings alarm4,|XMI_158d0001daefe8:open|Fenstersensor_SchlafzimmerKeller|on
     alias Fensterkontakt_SchlafzimmerKeller
     devStateIcon open:fts_door_open@red close:fts_door@green
     event-on-change-reading .*
     group Fenstersensoren
     icon fts_window_1w
     room 02_Untergeschoss->01_Schlafzimmer,10_Sonstiges->07_Fenstersensoren,20_DeviceGroups->03_Xiaomi
     stateFormat { sprintf( "Status: %s<br>Batterie: %s<br>last Change: (%s)", ReadingsVal("XMI_158d0001daefe8", "state","?"), ReadingsVal("XMI_158d0001daefe8", "battery","?"), ReadingsTimestamp("XMI_158d0001daefe8", "state", "0000-00-00 00:00:00") ) } timestamp-on-change-reading state userReadings windowState {if(ReadingsVal("XMI_158d0001daefe8","state","?") eq "close") {return "closed"} elsif (ReadingsVal("XMI_158d0001daefe8","state","?") eq "tilted") {return "tilted"} elsif (ReadingsVal("XMI_158d0001daefe8","state","?") eq "open") {return "open"} else {return "unknown"}}


Dazu dann noch den Code in der Utils:
sub numberOfOpenWindows() {

      return devspec2array("group=Fensterkontakt:FILTER=STATE!=closed")
}


Magst Du mich nochmal ein Stück an die Hand nehmen?
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 14:09:11
Das Problem ist das die Namen Deiner Devices nicht Fensterkontakt sind sondern die Aliase.

NAME XMI_158d0001daefe8
alias Fensterkontakt_SchlafzimmerKeller


Ich empfehle alle mit rename vernünftig um zu benennen. Dann schauen wir weiter.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 16:49:29
Hi nochmal,

also erst nochmal ganz lieben Dank für Deine Geduld und Mühe.
Ich habe die Fenstersensoren jetzt umbenannt.

Beispiel
Internals:
    CHANGED
    DEF                             158d0001daefe8 sensor_magnet.aq2 XiaomiGateway
    IODev                          XiaomiGateway
    LASTInputDev             XiaomiGateway
    MODEL                        sensor_magnet.aq2
    MSGCNT                      6
    NAME                          Fensterkontakt_SchlafzimmerKeller
    NR                              139
    SID                            158d0001daefe8
    STATE                        Status: close<br>Batterie: ok<br>last Change: (2018-02-22 21:42:06)
    TYPE                          XiaomiSmartHome_Device
    VERSION                   1.20
    XiaomiGateway_MSGCNT 6
    XiaomiGateway_TIME 2018-03-27 12:56:13
READINGS: 2018-03-27 12:56:13
     battery ok 2018-03-27 12:56:13
     battery_level 3 2018-03-27 12:56:13
     heartbeat 158d0001daefe8 2018-03-27 12:56:13
     no_close 0 2018-02-22 21:42:06
     state close 2018-03-27 12:56:13
     windowState closed
Attributes: IODev XiaomiGateway
     devStateIcon open:fts_door_open@red close:fts_door@green
     event-on-change-reading .*
     group Fenstersensoren
     icon fts_window_1w
     room 02_Untergeschoss->01_Schlafzimmer,10_Sonstiges->07_Fenstersensoren,20_DeviceGroups->03_Xiaomi
     stateFormat { sprintf( "Status: %s<br>Batterie: %s<br>last Change: (%s)", ReadingsVal("Fensterkontakt_SchlafzimmerKeller", "state","?"), ReadingsVal("Fensterkontakt_SchlafzimmerKeller", "battery","?"), ReadingsTimestamp("Fensterkontakt_SchlafzimmerKeller", "state", "0000-00-00 00:00:00") ) } timestamp-on-change-reading state userReadings windowState {if(ReadingsVal("Fensterkontakt_SchlafzimmerKeller","state","?") eq "close") {return "closed"} elsif (ReadingsVal("Fensterkontakt_SchlafzimmerKeller","state","?") eq "tilted") {return "tilted"} elsif (ReadingsVal("Fensterkontakt_SchlafzimmerKeller","state","?") eq "open") {return "open"} else {return "unknown"}}


Zudem hatte ich noch einen falschen Code für die 99_myUtils gepostet. Hier jetzt wirklich vorhandene:
sub numberOfOpenWindows() {

      return devspec2array("group=Fenstersensoren:FILTER=STATE!=closed")
}
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 17:14:10
Sieht schon mal gut aus. Jetzt zeigt Dein state aber close nicht closed. Das bitte im Notify Regex und bei der myUtils beim Filter ändern.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 17:35:32
ok... da hätte ich jetzt auch selbst drauf kommen können...   ::)

Ist angepasst... aber leider weiterhin ohne Erfolg. Der Wert landet nicht im Dummy.

Zudem stellt sich jetzt natürlich auch wieder die Frage von vorhin:
ZitatDa ich diverse unterschiedliche Fenstersensoren verwende, die alle eine andere Schreibweise im Status haben, muss ich vermutlich noch das Event "(open|tilted|closed)" anpassen, aber das im zweiten Schritt.
Ich müsste also auf verschiedene Schreibweisen - sowohl im Notify als auch in der myUtils reagieren (Bsp. close/closed/Close).
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 18:00:51
Das kommt noch. Lass uns erstmal eine generelle Funktion herstellen.
triggert denn das Notify? Gib mal bitte ein list vom Notify
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 18:22:47
Ok, danke und gerne :-)
Internals:
   DEF        Fensterkontakt.*:(open|tilted|close) { CommandSet(undef, ' offeneFenster ' . numberOfOpenWindows()) }
   NAME       notifyAnzahlFenster
   NR         304
   NTFY_ORDER 50-notifyAnzahlFenster
   REGEXP     Fensterkontakt.*:(open|tilted|close)
   STATE      active
   TYPE       notify
   READINGS:
     2018-03-27 17:21:08   state           active
Attributes:
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 18:39:45
triggert nicht.

Mach mal bitte den Eventmonitor auf. Im FHEMWEB ganz unten ganz links

Bei Filter vor dem .* eingeben

Fensterkontakt

so das dann da steht

Fensterkontakt.*

und dann das Fenster mal auf machen und die Ausgabe des Eventmonitors hier posten
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 19:18:07
2018-03-27 19:16:56 XiaomiSmartHome_Device Fensterkontakt_SchlafzimmerKeller open
2018-03-27 19:16:56 XiaomiSmartHome_Device Fensterkontakt_SchlafzimmerKeller windowState: open
2018-03-27 19:16:59 XiaomiSmartHome_Device Fensterkontakt_SchlafzimmerKeller close
2018-03-27 19:16:59 XiaomiSmartHome_Device Fensterkontakt_SchlafzimmerKeller windowState: closed


gerne
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 19:26:22

Fensterkontakt.*(open|tilted|close) {  }


Ändere die DEF des Notify bitte so. Ausgeführt wird dann noch nichts aber wir sehen ob er triggert.
Im Internal STATE vom Notify muss dann der Timestamp vom Trigger drin stehen.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 19:42:27
jawohl, STATE wird dann mit dem Timestamp befüllt.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 19:49:40
Sehr schön. Nun zwischen { }

CommandSet(undef, ' offeneFenster ' . numberOfOpenWindows())

Fügen.

Und die Funktion erstmal so und die myUtils mit reload neu laden


sub numberOfOpenWindows() {
      return devspec2array("group=Fenstersensoren:FILTER=STATE!=close")
}
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 20:03:25
ok... STATE wird aktualisiert
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 20:11:01
Welcher STATE. Von Deinem Fensterzähler Dummy?

Wenn der nicht dann bitte ins Log von FHEM schauen.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 20:21:02
Nee, nur der des notify - so wie vorher auch.

Der Dummy scheint unbeeindruckt :-(

Hab das Loglevel mal hochgesetzt:
2018.03.27 20:17:15 5: XiaomiGateway: Read> Read start
2018.03.27 20:17:15 5: XiaomiGateway: Read> {"cmd":"report","model":"sensor_magnet.aq2","sid":"158d0001daefe8","short_id":52743,"data":"{\"status\":\"close\"}"}
2018.03.27 20:17:15 5: XiaomiGateway: Read> Dispatch {"cmd":"report","model":"sensor_magnet.aq2","sid":"158d0001daefe8","short_id":52743,"data":"{\"status\":\"close\"}"}
2018.03.27 20:17:15 5: XiaomiGateway: dispatch {"cmd":"report","model":"sensor_magnet.aq2","sid":"158d0001daefe8","short_id":52743,"data":"{\\"status\\":\\"close\\"}"}
2018.03.27 20:17:15 4: XiaomiGateway: DEV_Parse> IS DEFINED sensor_magnet.aq2 : 158d0001daefe8
2018.03.27 20:17:15 5: XiaomiGateway: DEV_Read> SID: 158d0001daefe8 XiaomiSmartHome_Device
2018.03.27 20:17:15 3: XiaomiGateway: DEV_Read> Name: Fensterkontakt_SchlafzimmerKeller SID: 158d0001daefe8 Type: sensor_magnet.aq2 Status: close
2018.03.27 20:17:15 5: Starting notify loop for Fensterkontakt_SchlafzimmerKeller, 2 event(s), first is close
2018.03.27 20:17:15 5: Triggering notifyAnzahlFenster
2018.03.27 20:17:15 4: notifyAnzahlFenster exec { CommandSet(undef, ' offeneFenster ' . numberOfOpenWindows()) }

2018.03.27 20:17:15 5: Cmd: >{ CommandSet(undef, ' offeneFenster ' . numberOfOpenWindows()) }
<
2018.03.27 20:17:15 3: notifyAnzahlFenster return value: Please define  first
2018.03.27 20:17:15 5: End notify loop for Fensterkontakt_SchlafzimmerKeller


Sagt Dir das irgendwas?
Vor allem das hier ist vermutlich ein Hinweis:
2018.03.27 20:17:15 3: notifyAnzahlFenster return value: Please define  first
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 20:27:11
Da ist ein Leerzeichen rein gerutscht

CommandSet(undef, ' offeneFenster ' . numberOfOpenWindows())

Ändern zu

CommandSet(undef, 'offeneFenster ' . numberOfOpenWindows())
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 20:37:05
2018.03.27 20:30:38 5: XiaomiGateway: Read> Read start
2018.03.27 20:30:38 5: XiaomiGateway: Read> {"cmd":"report","model":"sensor_magnet.aq2","sid":"158d0001daefe8","short_id":52743,"data":"{\"status\":\"close\"}"}
2018.03.27 20:30:38 5: XiaomiGateway: Read> Dispatch {"cmd":"report","model":"sensor_magnet.aq2","sid":"158d0001daefe8","short_id":52743,"data":"{\"status\":\"close\"}"}
2018.03.27 20:30:38 5: XiaomiGateway: dispatch {"cmd":"report","model":"sensor_magnet.aq2","sid":"158d0001daefe8","short_id":52743,"data":"{\\"status\\":\\"close\\"}"}
2018.03.27 20:30:38 4: XiaomiGateway: DEV_Parse> IS DEFINED sensor_magnet.aq2 : 158d0001daefe8
2018.03.27 20:30:38 5: XiaomiGateway: DEV_Read> SID: 158d0001daefe8 XiaomiSmartHome_Device
2018.03.27 20:30:38 3: XiaomiGateway: DEV_Read> Name: Fensterkontakt_SchlafzimmerKeller SID: 158d0001daefe8 Type: sensor_magnet.aq2 Status: close
2018.03.27 20:30:38 5: Starting notify loop for Fensterkontakt_SchlafzimmerKeller, 2 event(s), first is close
2018.03.27 20:30:38 5: Batteriestatus: not on any display, ignoring notify
2018.03.27 20:30:38 5: Triggering notifyAnzahlFenster
2018.03.27 20:30:38 4: notifyAnzahlFenster exec { CommandSet(undef, 'offeneFenster' . numberOfOpenWindows()) }

2018.03.27 20:30:38 5: Cmd: >{ CommandSet(undef, 'offeneFenster' . numberOfOpenWindows()) }
<
2018.03.27 20:30:38 3: notifyAnzahlFenster return value: Please define offeneFenster12 first
2018.03.27 20:30:38 5: End notify loop for Fensterkontakt_SchlafzimmerKeller
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 20:39:12
Nur das vordere Leerzeichen. Das hintere lassen

CommandSet(undef, 'offeneFenster ' . numberOfOpenWindows())
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 20:39:45
Sind übrigens 12 Fenster auf  ;D
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 20:45:38
grmpf.... Da hab ich es nur gut gemeint und wollte den nächsten Fehler direkt mit beheben :-(

So... Teilerfolg...juhhuuu :-) Die 12 stehen jetzt auch im Dummy !!!

Aber... Das kann nicht sein. Liegt aber vermutlich eher an der abweichenden Statusmeldung - wir fragen doch "nur" auf !=close ab, oder?
Damit ist dann "closed" ebenfalls geöffnet :-)

btw: Weißt du auswendig, wie man das Logfile leert? :-)
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 20:48:36
wenn ich das richtig versteh, werden doch jetzt auch "nur" alle devices berücksichtigt, die mit "Fensterkontakt" beginnen und in der Gruppe "Fenstersensoren" enthalten sind, oder?

Da hätte ich nämlich insgesamt nur 11 :-)
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 20:51:04
Leeren kannst du es über die die Linuxkonsole

> logfilename

Nicht ganz. Triggern tun nur die mit Namen Fensterkontakt. Die Zahl aber kommt aus dem tatsächlichen group=Fenstersensor und die Filter.
jetzt müssen wir das Filter erweitern.

return devspec2array("group=Fenstersensoren:FILTER=STATE!=close:FILTER=STATE!=closed")
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 21:01:26
ok... jetzt sind es nur noch 10 offene Fenster - aktuell immer noch 10 zu viel :-)

Kann ich das direkt folgendermaßen um "Close" erweitern?
devspec2array("group=Fenstersensoren:FILTER=STATE!=close:FILTER=STATE!=Close:FILTER=STATE!=closed")

Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: mumpitzstuff am 27 März 2018, 21:05:19
Schreib doch den Einzeiler gleich ins notify mit rein...

defmod nty_OffeneFenster notify FENSTER_.*:(open|tilted|closed?) { CommandSet(undef, 'dmy_OffeneFenster '.devspec2array('NAME=FENSTER_.*:FILTER=STATE!=closed?')) }

Und close oder closed sollte mit closed? gehen.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 21:08:32
Zitat von: PingPong am 27 März 2018, 21:01:26
ok... jetzt sind es nur noch 10 offene Fenster - aktuell immer noch 10 zu viel :-)

Kann ich das direkt folgendermaßen um "Close" erweitern?
devspec2array("group=Fenstersensoren:FILTER=STATE!=close:FILTER=STATE!=Close:FILTER=STATE!=closed")

Na dann zeig mal ein list von den anderen Fensterdevices. Wie ist da der STATE? Also das Internal STATE
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 21:12:42
Du kannst das ganze im übrigen in der Kommandozeile von FHEMWEB mit dem list Befehl testen
Bei mir zum Beispiel


list group=Fenster:FILTER=STATE!=closed:FILTER=STATE!=geschlossen


Und ja man kann es später auch im Notify schreiben wenn man diese Auflistung sonst nicht mehr braucht. Ich zum Beispiel brauche eine Liste aller Fenster die nicht geschlossen sind habe daher eine Funktion in der myUtils welche ich von unterschiedlichen Stellen aufrufe.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 27 März 2018, 21:15:10
geht noch kürzer

devspec2array("group=Fenstersensoren:FILTER=STATE!=(close|Close|closed)")
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 27 März 2018, 21:19:50
ok...

also das
list group=Fenstersensoren:FILTER=STATE!=closed:FILTER=STATE!=geschlossen

gibt mir genau die 10 Fenster aus... damit kann man vermutlich arbeiten :-)

ok.. ich war faul und hatte vorhin im Rahmen der Umbenennung nur das eine Device aufgeräumt.
Jetzt muss ich aber leider erstmal raus hier. Meine Tochter hat morgen Geburtstag und ich muss noch einiges vorbereiten.

Wenn es Dir nichts ausmacht, bereinige ich dann nachher erstmal noch die anderen Devices, versuche dann hier nochmal ein wenig zu verstehen und melde mich morgen nochmal mit dem aktuellen Stand.

Ich möchte mich an dieser Stelle aber schonmal bedanken, für die Mühe, die Du Dir hier heute mit mir gibst.
Das finde ich wirklich großartig und außerordentlich. Danke

Dir noch einen schönen Restabend und bis morgen.

VG
Marc
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: mumpitzstuff am 27 März 2018, 21:30:01
devspec2array("group=Fenstersensoren:FILTER=STATE!=([Cc]losed?|geschlossen)")  :)
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 28 März 2018, 19:20:17
So, also ich glaube ich hab es  :)
Aktuell wird genau die richtige Anzahl offener Fenster angezeigt.
Werde das jetzt die nächsten Tage einmal beobachten und etwas intensiver testen.

Hier nochmal kurz meine aktuellen Abfragen dokumentiert - vielleicht kann es nochmal jemand gebrauchen...
Nochmal ganz lieben Dank für Eure Mühen und Geduld...

Dummy
Internals:
   NAME       offeneFenster
   NR         305
   STATE      1
   TYPE       dummy
   READINGS:
     2018-03-2


99_myUtils
sub numberOfOpenWindows() {
      return devspec2array("group=Fenstersensoren:FILTER=STATE!=([Cc]losed?|geschlossen)")
}


notify
Fensterkontakt.*([Oo]pen|tilted|[Cc]losed?) { CommandSet(undef, 'offeneFenster ' . numberOfOpenWindows()) }
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 28 März 2018, 19:24:36
Sehr schön

Solltest Du keine Fenster mit Status geschlossen haben, kannst das geschlossen auch entfernen. Das war ja nur ein Beispiel aus meiner Umgebung.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 28 März 2018, 19:43:05
Ja, ist schon klar. Aber es stört ja auch nicht :-)
Hab aktuell auch kein "tilted".

So.. die nächste Baustelle wartet ... Gerade AMAD eingerichtet.... Ist ja klasse....
Wollte eigentlich meinen EchoDot sprechen lassen, aber da das Tablet eh an der Wand hängt, ... :-)
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 28 März 2018, 19:46:27
Wenn dein echoDot BT zu lässt, verbinde das Tablet doch damit. Dann spricht er. Mache ich mit meinem Google Home auch so.

Freut mich ja das es anscheinend Recht leicht ein zu richten ging  ;D
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: PingPong am 28 März 2018, 21:10:12
Nee, denke dass ich den Dot dann den Kids geben kann... Da reicht dann das Tablet.
Ja, die Einrichtung von AMAD ging wirklich einfach....  :D
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: dt2510 am 29 März 2018, 12:07:04
Mal 'ne ganz blöde Frage: Welcher Tür-/Sensor Aktor liefert denn "tilted" ? Ich hab' aktuell erst einen (Hauppauge/Philio 4-in-1 ZWave) im Einsatz und der liefert - soviel ich bisher gesehen habe - nur open und close. Ein Bewegungsende liefert er auch nicht - wenigstens hat er das entsprechende Bit, welches zu setzen wäre bis heute nicht geändert ....
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 29 März 2018, 12:30:09
Der Homematic Fenster-Drehgriff Sensor.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: dt2510 am 29 März 2018, 12:33:09
Homematic hab' ich leider (noch) nicht ... was brauch ich da um Aktoren/Sensoren einzubinden als Minimal-Hardware ?
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 29 März 2018, 12:35:07
https://wiki.fhem.de/wiki/HM-MOD-RPI-PCB_HomeMatic_Funkmodul_für_Raspberry_Pi

Und Sensoren und Aktoren halt. Aber nur rein Homematic kein HomematicIP
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: dt2510 am 29 März 2018, 12:36:38
Ich bräuchte was als USB oder LAN, da ich den Pi gerade erst durch einen NUC ersetzt habe
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 29 März 2018, 12:39:51
Dann das HMLan Gateway oder ein USB Cul. Musst Mal im Wiki und Forum suchen.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: moonsorrox am 29 März 2018, 17:50:00
ich habe noch den alten weissen USB Adapter am Intel NUC sitzen und in Reserve den HMLAN, falls der USB Adapter die klassische Grätsche macht...!
Ich weiß auch nicht ob es schon ein Ersatz USB gibt der den alten weissen ersetzt, glaube nicht.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: fireb am 31 März 2019, 00:14:39
Hallo,

bei mir funktioniert das ganze mit meinen "Test- Fensterkontakten" Grundsätzlich einwandfrei, allerdings habe ich bei meinen richtigen Fensterkontakten ein kleines Problem mit den Device Namen in Verbindung mit dem erstellen des Notify's.

Meine Fensterkontakte habe ich wie folgt benannt: WZ.Fenster, SZ.Fenster, KU.Fenster usw.

Gibt es eine Möglichkeit, ausser die ganzen Device Namen zu ändern, um ein Notify anzulegen welches auf alle Devices reagiert welche mit .Fenster enden?

Versucht habe ich es bisher mit folgendem Befehl:

define SYS.OpenWindows notify *.Fenster:(open|tilted|closed) { CommandSet(undef,'HOME.OpenWindows ' . numberOfOpenWindows()) }

Allerdings erhalte ich hierbei immer "Bad regexp: starting with *" als Fehler.

Liebe Grüße
Manuel
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: CoolTux am 31 März 2019, 00:19:50

define SYS.OpenWindows notify [A-Z].*.Fenster:(open|tilted|closed) { CommandSet(undef,'HOME.OpenWindows ' . numberOfOpenWindows()) }
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: mumpitzstuff am 31 März 2019, 00:21:00
define SYS.OpenWindows notify .*\.Fenster:(open|tilted|closed) { CommandSet(undef,'HOME.OpenWindows ' . numberOfOpenWindows()) }

Ich glaube den Punkt muss man auch noch escapen.
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: D3ltorohd am 15 August 2019, 20:45:43
Zitat von: CoolTux am 31 März 2019, 00:19:50

define SYS.OpenWindows notify [A-Z].*.Fenster:(open|tilted|closed) { CommandSet(undef,'HOME.OpenWindows ' . numberOfOpenWindows()) }


Ich hänge mich hier auch mal mit an. Den Dummy und die Util hab ich erstellt. Nun sollte ich noch das Notify erstellen. Da es mein erstes ist bin ich mir nicht sicher. Sollte das so aussehen ?

define notifyoffeneFenster notify [A-Z].*_Sensor:(open|tilted|closed) { CommandSet(undef,'offeneFenster ' . numberOfOpenWindows()) }

Meine Sensoren liegen alle in der Gruppe Xiaomi und die Sensoren lauten wie folgt.

ZitatEsszimmer_Sensor
Buero_links_Sensor
usw.

Meine Util sieht so aus :
##############################################
# $Id: myUtilsTemplate.pm 7570 2015-01-14 18:31:44Z rudolfkoenig $
#
# Save this file as 99_myUtils.pm, and create your own functions in the new
# file. They are then available in every Perl expression.

package main;

use strict;
use warnings;
use POSIX;

sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}

# Enter you functions below _this_ line.


1;
sub numberOfOpenWindows() {
      return devspec2array("group=Xiaomi:FILTER=STATE!=([Cc]lose?|geschlossen)")



EDIT: Ich sehe gerade, ich bekomme dann Probleme mit Türen und Garagentoren. Davon habe ich jeweils 2. Die würden dann die Zahl fälschen, ich würde das gerne auch für Tür und Tor anzeigen lassen. Muss ich diese jetzt umbenennen, oder kann man das noch irgendwie rausfiltern ? Oder ich müsste die umbenennen, FK_Buero,FK_Bad usw. dann TK_Haustuer, TK_Terrasse und das gleiche mit den Toren, GK_gross, und GK_klein. Wäre dann vllt einfacher zu filtern.

Ich müsste dann noch mal 2 Dummys anlegen und 2 weitere Notify's in die Utils muss ich auch noch was eintragen ?

P.S. Was passiert mit meinen Zusammenhängen, wenn ich die Namen ändere ? Ich habe die mit meinen Rollos verbunden zwecks ASC usw. Müsste ich die hier alle neu verbinden miteinander, bzw bei jedem Rollo vom Kontakt die Namen ändern ?

EDIT 2::
Also ich habe nun folgendes Notify, bei Dummy wird nun 0 angezeigt und ein TimeStamp. Aber wenn ich Fenster öffne oder schließe, passiert nichts. Es bleibt die 0 drin.

Zitat

Internals:
   CFGFN     
   DEF        .*\_Sensor:(open|tilted|close) { CommandSet(undef,'offeneFenster ' . numberOfOpenWindows()) }
   FUUID      5d55c242-f33f-fc62-5f86-2a5b2755d9bd3f56
   NAME       notifyoffeneFenster
   NR         806
   NTFY_ORDER 50-notifyoffeneFenster
   REGEXP     .*\_Sensor:(open|tilted|close)
   STATE      2019-08-15 22:36:39
   TRIGGERTIME 1565901399.68162
   TYPE       notify
   READINGS:
     2019-08-15 22:36:18   state           active
Attributes:
Titel: Antw:Fenstersymbol mit Anzahl offener Fenster als Kreis
Beitrag von: eurofinder am 15 August 2019, 23:31:10
Ich habe das mit Monitoring gelöst wie https://forum.fhem.de/index.php?topic=68765.0 (https://forum.fhem.de/index.php?topic=68765.0) vorgeschlagen.

Gleich im ersten Post unter "Globale, flexible Fenster-/Tür-Offen-Meldungen (ähnlich wie im Forum beschrieben)" beschrieben.

Funktioniert bei mir zuverlässig.

Gruß
eurofinder