[Gelöst] Ansage geöffnete Fenster

Begonnen von willib, 11 Mai 2017, 21:03:45

Vorheriges Thema - Nächstes Thema

CoolTux

Ja Benni hast Recht. Hatte mich auf dem Handy vertippt.
Habe ja oben den Durchlauf durchs Array mit aufgezeigt.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Damian

oder neuerdings als Einzeiler:

DOIF (["Fenster:closed"]) (set Sonos_Kueche Speak 20 Folgende Fenster Schließen [@:as( )"Fenster":state:"open","keine"])

übersetzt heißt das:

wenn ein Device mit "Fenster" im Namen geschlossen wird, werden alle offenen Fenster mit Aliasnamen angesagt.

Genaueres dazu siehe hier: https://fhem.de/commandref_DE.html#DOIF_aggregation

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

KernSani

Und? Wenn's funktioniert bitte auf [Gelöst] setzen (Subject des ersten Posts ändern)
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

willib

Ich habe das devspec2array angepasst. Jetzt werden mir auch die Log files der Fenster Sensoren mit angesagt. Alle Varianten liefern im Prinzip das gleiche Ergebnis. Es werden immer alle Fenster bis auf die Küche angesagt. Bei der Küche funktioniert es. Irgendwie wird sate nicht richtig erfasst. Ich versuche mal die Sensoren umzubenennen um den Punkt los zu werden.
Oder gibt es noch Ideen zur Fehlersuche?
FHEM in Debian 10 LXC unter Proxmox auf NUC, Homematic, Hue, Intertechno, Jeelink, RFXTRX, Harmony Hub, VU+ Uno 4K, Sonos, AMAD

CoolTux

Zeige doch mal bitte was Du jetzt an Code hast. Und zwar bitte alles.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

willib

Ich habe mit dem code nicht weiter experimentiert nachdem ich festgestellt habe dass bereits
list GZ.Fenster,WZ.Fenster.li,WZ.Fenster.re,SZ.Fenster.li,SZ.Fenster.re,Jon.Fenster,EZ.Fenster,KU.Fenster:FILTER=state!=closed
nicht die korrekten Ergebnisse liefert.
Es werden dann alle Fenster bis auf die KU.Fenster angezeigt obwohl State und state closed ist.
FHEM in Debian 10 LXC unter Proxmox auf NUC, Homematic, Hue, Intertechno, Jeelink, RFXTRX, Harmony Hub, VU+ Uno 4K, Sonos, AMAD

CoolTux


list (GZ.Fenster,WZ.Fenster.li,WZ.Fenster.re,SZ.Fenster.li,SZ.Fenster.re,Jon.Fenster,EZ.Fenster,KU.Fenster):FILTER=state!=closed
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

willib

Danke.
Die Klammern scheinen nicht korrekt zu sein:
No device named (GZ.Fenster,WZ.Fenster.li,WZ.Fenster.re,SZ.Fenster.li,SZ.Fenster.re,Jon.Fenster,EZ.Fenster,KU.Fenster):FILTER=state!=closed found
FHEM in Debian 10 LXC unter Proxmox auf NUC, Homematic, Hue, Intertechno, Jeelink, RFXTRX, Harmony Hub, VU+ Uno 4K, Sonos, AMAD

CoolTux

Sorry mein Fehler. Statt , bitte | nehmen


list (GZ.Fenster|WZ.Fenster.li|WZ.Fenster.re|SZ.Fenster.li|SZ.Fenster.re|Jon.Fenster|EZ.Fenster|KU.Fenster):FILTER=state!=closed
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Aber wieso machst Du es nicht so wie gesagt wurde


list (.*Fenster.*|.*Fenster):FILTER=state!=closed


So und wenn Du jetzt noch LogFiles mit drin hast dann filterst die auch raus


list (.*Fenster.*|.*Fenster):FILTER=state!=closed:FILTER=TYPE!=LogFile


Bitte selber noch mal schauen ob der TYPE wirklich LogFile von den Logfiles heisst
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

willib

Danke Danke
FileLog ist der TYPE.
Das ist der korrekte Code:
sub WindowsOpenString()
{
  my $text;
  my @devs = devspec2array("(.*Fenster.*|.*Fenster):FILTER=state!=closed:FILTER=TYPE!=FileLog");
  if (@devs > 0)
  {
    my @aliases;
    foreach (@devs)
    {
      push @aliases,AttrVal($_,"alias",$_);
    }
    $text = "Folgende Fenster sind noch geöffnet: ".join(", ",@aliases);
  }
  else
  {
    $text = "Guten Tag";
  }
  fhem "set Sonos_Kueche Speak 20 de $text";
}
FHEM in Debian 10 LXC unter Proxmox auf NUC, Homematic, Hue, Intertechno, Jeelink, RFXTRX, Harmony Hub, VU+ Uno 4K, Sonos, AMAD