NEWS

[Vorlage] Generisches Fensteroffenskript + Vis


  • Developer

    Generisches Skript um offene Fenster pro Raum und insgesamt zu zählen sowie offen/zu States anzulegen.

    fensteroffentut2.png

    • Kann beliebige Tür/Fenster Kontakte verwenden.
    • Berücksichtigt mehrflügelige Fenster bzw. mehrere Fenster pro Raum und zählt diese.
    • Legt pro Raum zwei Datenpunkte an (Raumfensteroffenzähler und Raumfensterstatus), sowie vier Datenpunkte fürs gesamte.
    • Möglichkeit eine Meldung/Ansage via Telegram/Alexa nach x Minuten einmalig oder zyklisch bis Fensterschließung auszugeben.
    • Gibt dynamische HTML Tabelle mit Übersicht aller Räume aus.
    • Flexibel konfigurierbar, direkt integriert sind HM, HMIP und Xiaomi Tür-/Fensterkontakte bzw. Drehgriffe

    Genaueres in der readme beim Projekt auf Git.


  • Forum Testing Most Active

    @Pittini so dann hier nochmal, Fehler ist nun weg.
    UseEventLog stand auf true
    Nun hab ich aber trotzdem noch ne Frage, was ist damit gemeint?

    const UseSay = false; // Sollen Nachrichten via Say ausgegeben werden? Authorenfunktion, sollte deaktiviert werden.
    const UseEventLog = false; // Sollen Nachrichten ins Eventlog geschreiben werden? Authorenfunktion, sollte deaktiviert werden.
    
    • was ist Say
    • für was genau ist Use EventLog
    • und was ist mit Authorenfunktion gemeint

  • Developer

    @crunchip sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

    was ist Say
    für was genau ist Use EventLog
    und was ist mit Authorenfunktion gemeint

    Say is bei mir ne globale Function welche via Snips Sprachausgabe macht. Eventlog is ne globale Funktion bei mir welche Daten in ein separates kleines Log (viel viel weniger als im normalen Log und textlich aufbereitet) schreibt welches im Vis angezeigt wird. Authorenfunktion ist es will ich der Author bin und vermutlich nur ich diese Funktionen hab.



  • @Pittini said in [Vorlage] Generisches Fensteroffenskript + Vis:

    @crunchip sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

    was ist Say
    für was genau ist Use EventLog
    und was ist mit Authorenfunktion gemeint

    Say is bei mir ne globale Function welche via Snips Sprachausgabe macht. Eventlog is ne globale Funktion bei mir welche Daten in ein separates kleines Log (viel viel weniger als im normalen Log und textlich aufbereitet) schreibt welches im Vis angezeigt wird. Authorenfunktion ist es will ich der Author bin und vermutlich nur ich diese Funktionen hab.

    Könntest du das EventLog Skript auch mal veröffentlichen? Sowas suche ich schon ne Weile


  • Forum Testing Most Active

    @Pittini 🤦‍♂️ jetzt wo ich die Zeilen nochmal gelesen habe, komm ich auch mit, hehe

    stand irgendwie aufn Schlauch...ich verstand es so...
    wenn ich xyz auf true stelle, sollte man die Authorenfunktion deaktivieren und war verzweifelt am Suchen, wo denn diese Funktion sein soll😂 😂


  • Forum Testing Most Active

    Nur so als Gedankengang....Benachrichtigung per Sprache is schon cool, aber wenn ich bewusst ein Fenster offen stehen lassen möchte...


  • Developer

    @crunchip sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

    Benachrichtigung per Sprache is schon cool, aber wenn ich bewusst ein Fenster offen stehen lassen möchte...

    Dann schaltest die Sprachausgabe in den Einstellungen halt ab. UseAlexa=false und schon is Ruhe. Oder Du schaltest auf einmalige statt zyklische Meldung, dann sagts nur einmal Bescheid.


  • Most Active

    Hi,

    genau was ich suche... 🙂
    ich habe es eben auch installiert klappt soweit gut. Was mir aufällt.

    ich habe den Pfad im Script angepasst, er baut den Pfad aber trotzdem im javascript Ordner auf.

    const praefix = "0_userdata.0.Wohnung.Status.Fenster."; //Grundpfad für Script DPs
    

    Bildschirmfoto 2020-03-30 um 16.36.07.png

    so langsam ziehe ich alles nach "0_userdata"

    Wunsch?
    Könntest du auch nach gekippten Fenster schauen?
    Homematic hat folgende Werte
    0: geschlossen
    1: kipp
    2: offen


  • Developer

    @dos1973 sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

    so langsam ziehe ich alles nach "0_userdata"

    Das mit dem Userdata ausm Skript raus is noch etwas tricky und nicht vorgesehen vorerst, die Pfadänderungsmöglichkeit ist mom. auf den javascript Channel beschränkt und vorallem dafür gedacht wenn wer mit ner anderen Instanz arbeitet oder dort ne bestimmte Struktur haben will

    Wunsch?
    Könntest du auch nach gekippten Fenster schauen?
    Homematic hat folgende Werte
    0: geschlossen
    1: kipp
    2: offen

    Das ist doch drin, extra für die HM Drehgriffe eingebaut. Ich werte aber gekippt als offen.


  • Most Active

    @Pittini

    ja das stimmt,
    aber gekippt ist nicht offen 😉

    Ich würde es toll finden, wenn es eine Unterscheidung gibt...


  • Developer

    @dos1973 sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

    Ich würde es toll finden, wenn es eine Unterscheidung gibt...

    Mach bitte nen Issue auf Git dazu dasses nicht untergeht, dann schau ich mal was sich machen läßt wenn ich Zeit hab.



  • Hallöchen, du hast dir sehr viel Mühe gegeben.
    Die Vorlage habe ich installiert und sie läuft.
    Ich bekomme allerdings folgende Fehlermeldungen im LOG.
    Unbenannt.JPG
    Unbenannt.JPG
    Gruß
    Michael


  • Developer

    @michihorn sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

    Ich bekomme allerdings folgende Fehlermeldungen im LOG.

    Erstmal die JS Instanz neu starten. Wenns dann immer noch den Fehler gibt, stimmt was mit den Auzählungen oder Deinen Zuweisungen nicht, mach mal nen Screen aus der Objektliste wie und wo Du Räume und Funktionen gesetzt hast. Und jeweils nen Screen von der Räume- und Funktionen-aufzählung. Und was im großen Log steht, nicht nur das im Skriptlog bitte.



  • @Pittini
    Unbenannt.JPG
    Unbenannt.JPG

    Objekte hat das Script bislang wegen des Fehlers nicht angelegt
    Michael


  • Developer

    @michihorn
    Der eigentliche "Fehler" ist die gelbe Warnzeile. Erfindet das Objekt nicht und somit kann er auch den Raum vom Objekt nicht bestimmen.
    Hast Du die JS Instanz schon mal neu gestartet? Wenn ja, bitte den Objektbaum des angemaulten Sensors mal aufklappen und Screenshot machen.



  • @Pittini
    JS habe ich neu gestartet. Der Objektbau des RPC1 sieht so aus:
    Unbenannt.JPG
    Ich sehe da keinen Fensterkontakt.
    Michael


  • Developer

    @michihorn
    Was ich jetzt schon ziemlich sicher sagen kann, ist, dasses nicht am Skript sondern an Deinem System liegt. Wenns den Sensor nicht gibt, haste ne Leiche in den Aufzählungen. Öffne mal Aufzählungen > Funktionen, scroll bis zum Punkt "Verschluss" oder was auch immer Du für das Skript verwendest (Verschluss ist default) und mach nen Screen den ich im ersten Post schon erbeten hatte.



  • @Pittini

    Ich würde gerne die Farben etwas ändern und die von Uhula nutzen, also mdui-green, mdui-red. Die sind nicht ganz so "intensiv". Wenn ich die Farbe in deine Auswahl eingebe klappt das nicht. Hast du einen Tipp für mich?


  • Developer

    @Dominik-F sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

    Ich würde gerne die Farben etwas ändern und die von Uhula nutzen, also mdui-green, mdui-red. Die sind nicht ganz so "intensiv". Wenn ich die Farbe in deine Auswahl eingebe klappt das nicht. Hast du einen Tipp für mich?

    Die verwendung von Uhulas CSS Klassen ist da nicht vorgesehen, aber Du kannst jede benannte Farbe und jede Hex Code Farbe verwenden. Schau mal da, da dürfte doch was passendes dabei sein. Oder Du fragst Uhula was die von Ihm verwendenten Farben für nen HexCode haben (oder suchst es in der CSS) und trägst das ein.



  • @Pittini

    das ist eine gute Idee, dank dir

    Edit: Habs auch direkt gefunden 🙂

    In Verbindung mit deinem Skript tauchen bei mir ab und an komische Effekte auf. Heute, nachdem ich die Farben zum ersten Mal verändert hatte war auf einmal der Raumname von einem State verschwunden ( 3 mal bisher beim gleichen State) und die Fenster wurden falsch gezählt. Musste das Fenster erst einmal schließen und wieder öffnen damit er das richtig erkannt hatte. Die Aufzählung der Gesamtfenster war richtig, nur das in den Räumen wurden dies als nicht offen angezeigt.
    Nach Neustart der Instanz und dem Öffnen/Schließen des einen States funktioniert es nun wieder einwandfrei. Ich weiß nicht ob du damit etwas anfangen kannst und obs überhaupt an deinem Skript liegt. Es ist nur das erste mal das mir sowas bei einem Skript auffällt daher wollt ich dir das noch mal schreiben.



Suggested Topics

1.9k
Online

32.2k
Users

38.9k
Topics

526.7k
Posts