Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Vorlage] Generisches Fensteroffenskript + Vis

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    [Vorlage] Generisches Fensteroffenskript + Vis

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      Pittini Developer last edited by Pittini

      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.

      crunchip sigi234 qqolli C L 15 Replies Last reply Reply Quote 13
      • crunchip
        crunchip Forum Testing Most Active @Pittini last edited by crunchip

        @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
        P 1 Reply Last reply Reply Quote 0
        • P
          Pittini Developer @crunchip last edited by

          @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.

          M crunchip 2 Replies Last reply Reply Quote 0
          • M
            martinschm @Pittini last edited by

            @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

            1 Reply Last reply Reply Quote 0
            • crunchip
              crunchip Forum Testing Most Active @Pittini last edited by

              @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😂 😂

              1 Reply Last reply Reply Quote 0
              • crunchip
                crunchip Forum Testing Most Active last edited by

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

                P 1 Reply Last reply Reply Quote 0
                • P
                  Pittini Developer @crunchip last edited by Pittini

                  @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.

                  1 Reply Last reply Reply Quote 0
                  • D
                    dos1973 last edited by

                    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

                    P 1 Reply Last reply Reply Quote 0
                    • P
                      Pittini Developer @dos1973 last edited by

                      @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.

                      D 1 Reply Last reply Reply Quote 0
                      • D
                        dos1973 @Pittini last edited by

                        @Pittini

                        ja das stimmt,
                        aber gekippt ist nicht offen 😉

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

                        P 1 Reply Last reply Reply Quote 0
                        • P
                          Pittini Developer @dos1973 last edited by

                          @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.

                          1 Reply Last reply Reply Quote 0
                          • M
                            michihorn last edited by michihorn

                            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

                            P 1 Reply Last reply Reply Quote 0
                            • P
                              Pittini Developer @michihorn last edited by Pittini

                              @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.

                              M 1 Reply Last reply Reply Quote 0
                              • M
                                michihorn @Pittini last edited by michihorn

                                @Pittini
                                Unbenannt.JPG
                                Unbenannt.JPG

                                Objekte hat das Script bislang wegen des Fehlers nicht angelegt
                                Michael

                                P 1 Reply Last reply Reply Quote 0
                                • P
                                  Pittini Developer @michihorn last edited by

                                  @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.

                                  M 1 Reply Last reply Reply Quote 0
                                  • M
                                    michihorn @Pittini last edited by

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

                                    P 1 Reply Last reply Reply Quote 0
                                    • P
                                      Pittini Developer @michihorn last edited by Pittini

                                      @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.

                                      Dominik F. M 2 Replies Last reply Reply Quote 0
                                      • Dominik F.
                                        Dominik F. @Pittini last edited by

                                        @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?

                                        P 1 Reply Last reply Reply Quote 0
                                        • P
                                          Pittini Developer @Dominik F. last edited by Pittini

                                          @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.

                                          Dominik F. 1 Reply Last reply Reply Quote 0
                                          • Dominik F.
                                            Dominik F. @Pittini last edited by Dominik F.

                                            @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.

                                            P 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            855
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript monitoring template
                                            81
                                            768
                                            152342
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo