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

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    [Vorlage] Generisches Fensteroffenskript + Vis

    This topic has been deleted. Only users with topic management privileges can see it.
    • Horst Böttcher
      Horst Böttcher @qqolli last edited by

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

      @horst-böttcher
      Hi,

      das gleiche Phänomen hatte ich auch. Es lag am Ende aber tatsächlich nicht am Skript, sondern daran, das mein Magnet (als Gegenstück) meines Xiaomi-Sensors mit der Zeit etwas verrutscht war. Nach der Neumontage lief es wieder. Das hatte ich bei 3 Sensoren.

      ich habe kein magnett das verrutschen kann ist alles im sensor verbaut
      721d181c-a001-488b-a760-dd6ddd6a5c31-image.png

      Dominik F. Quarkmax 2 Replies Last reply Reply Quote 0
      • Dominik F.
        Dominik F. @Horst Böttcher last edited by

        @horst-böttcher

        Hast du das Skript mal neu gestartet oder den Javascript Adapter?

        1 Reply Last reply Reply Quote 0
        • Quarkmax
          Quarkmax @Horst Böttcher last edited by Quarkmax

          @horst-böttcher
          sind im Script die Variablen richtig gesetzt? Ich habe den gleichen Sensor und es funktioniert prima. Beachte unbedingt die Groß/Klein-Schreibung

          const WindowIsOpenWhen = ["true", "offen", "open", "opened", "2"];
          const WindowIsClosedWhen = ["false", "geschlossen", "closed", "0"]; 
          const WindowIsTiltedWhen = ["tilted", "gekippt", "1"];
          

          Eigentlich sollte 1,2,0 bei dem Sensor ausreichen

          Horst Böttcher 1 Reply Last reply Reply Quote 0
          • Horst Böttcher
            Horst Böttcher @Quarkmax last edited by

            @quarkmax ab und zu geht es
            kommen aber fehler meldung

            
            
            javascript.0
            2023-03-17 05:36:52.070	error	at processTimers (node:internal/timers:502:7)
            
            javascript.0
            2023-03-17 05:36:52.069	error	at listOnTimeout (node:internal/timers:559:17)
            
            javascript.0
            2023-03-17 05:36:52.069	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2575:34)
            
            javascript.0
            2023-03-17 05:36:52.068	error	at Object.<anonymous> (script.js.common.Zimmer.Fenster_und_Türen.Fenster_Tür_Überwachung:1388:25)
            
            javascript.0
            2023-03-17 05:36:52.068	error	at CheckWindow (script.js.common.Zimmer.Fenster_und_Türen.Fenster_Tür_Überwachung:1053:62)
            
            javascript.0
            2023-03-17 05:36:52.067	error	at Meldung (script.js.common.Zimmer.Fenster_und_Türen.Fenster_Tür_Überwachung:387:25)
            
            javascript.0
            2023-03-17 05:36:52.060	error	Error in callback: ReferenceError: Say is not defined
            
            wendy2702 Dominik F. 2 Replies Last reply Reply Quote 0
            • wendy2702
              wendy2702 @Horst Böttcher last edited by

              @horst-böttcher sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

              Error in callback: ReferenceError: Say is not defined

              Schau mal in den ersten und zweiten Beitrag dieses Threads.

              1 Reply Last reply Reply Quote 0
              • Dominik F.
                Dominik F. @Horst Böttcher last edited by

                @horst-böttcher sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

                2023-03-17 05:36:52.060 error Error in callback: ReferenceError: Say is not defined

                Das müsste eine Fehlermeldung sein, weil du eine Entwicklerfunktion als True in den Einstellungen hast.

                const UseSay = false; // Sollen Nachrichten via Say ausgegeben werden? Developerfunktion, muß deaktiviert sein.
                const UseEventLog = false; // Sollen Nachrichten ins Eventlog geschreiben werden? Developerfunktion, muß deaktiviert sein.
                
                
                Horst Böttcher 1 Reply Last reply Reply Quote 0
                • Horst Böttcher
                  Horst Böttcher @Dominik F. last edited by Horst Böttcher

                  @dominik-f jo danke vorerst keine error meldung
                  giebt es eine möglichkein Nukki als tür einzubeinden

                  Dominik F. 1 Reply Last reply Reply Quote 1
                  • Dominik F.
                    Dominik F. @Horst Böttcher last edited by

                    @horst-böttcher

                    wenn du einem entsprechendem Datenpunkt die Funktion "Tuer" zuweist, dann wird sie als Tür eingebunden. Dem Skript ist es am Ende egal ob es wirklich eine Tür ist.

                    1 Reply Last reply Reply Quote 0
                    • Longbow
                      Longbow last edited by Longbow

                      Hallo,

                      ich nutze diesen Script, habe die Einstellung der Datenpunkte vorgenommen.
                      So weit läuft es auch, nur leider bekomme ich diese Fehlermeldung:

                      20:21:22.490	error	javascript.0 (532) at Meldung (script.js.Fensterauswertung:387:25)
                      20:21:22.490	error	javascript.0 (532) at CheckWindow (script.js.Fensterauswertung:1014:64)
                      20:21:22.490	error	javascript.0 (532) at Object.<anonymous> (script.js.Fensterauswertung:1388:25)
                      

                      Dann erkennt das Script das die Fenster geschlossen worden sind, nur ein erneuerst öffnen erkennt er nicht mehr.
                      Da ich Neuling bin, kenne ich mich mit dem Fehler nicht ganz so aus. Wer kann mir helfen, habe ich was falsch gemacht ?

                      Das ist was das Log über den Adapter herausgibt

                      javascript.0
                      2023-05-06 20:56:11.453	error	at processTimers (node:internal/timers:502:7)
                      javascript.0
                      2023-05-06 20:56:11.453	error	at listOnTimeout (node:internal/timers:559:17)
                      javascript.0
                      2023-05-06 20:56:11.453	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2575:34)
                      javascript.0
                      2023-05-06 20:56:11.453	error	at Object.<anonymous> (script.js.Fensterauswertung:1388:25)
                      javascript.0
                      2023-05-06 20:56:11.453	error	at CheckWindow (script.js.Fensterauswertung:1014:64)
                      javascript.0
                      2023-05-06 20:56:11.452	error	at Meldung (script.js.Fensterauswertung:387:25)
                      javascript.0
                      2023-05-06 20:56:11.452	error	Error in callback: ReferenceError: Say is not defined
                      
                      P 1 Reply Last reply Reply Quote 0
                      • P
                        Pittini Developer @Longbow last edited by

                        @longbow Die Antwort bzw. Lösung steht 3 Posts über Deinem.

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

                          @pittini Erstmal danke für das Script, läuft auch alles bei mir. 👍
                          Ich kann bei Alexa fragen welche Fenster offen sind und bekomme als Antwort das zurück, was im Datenpunkt "RoomsWithOpenWindows" steht. Wenn in mehreren Räumen Fenster geöffnet sind, "liest" Alex dieses <br> mit vor. Also sagt das Mädel: Büro eins offenes Fenster kleiner br größer Wohnzimmer eins offenes Fenster. Das ist nur beim ersten Mal lustig und um das zu ändern habe ich testweise die Zeile 79:

                          const OpenWindowListSeparator = "<br>"; //Trennzeichen für die Textausgabe der offenen Fenster pro Raum
                          

                          geändert auf

                          const OpenWindowListSeparator = " und "; //Trennzeichen für die Textausgabe der offenen Fenster pro Raum
                          

                          Jetzt liest das Mädel (oder wie du sagen würdest: die Wanze) es vernünftig vor.
                          Ich hab absolut keinen Plan von irgendwelcher Programmierung, daher meine Frage, wofür ist das <br>? Laut Google wird das bei hmtl als Zeilenumbruch verwendet, ist dem so und dadurch das ich das ändere wird das in VIS oder wo auch immer nicht mehr richtig angezeigt?
                          Wenn ja, kann ich dann einfach ein zweites Script anlegen, das nur anders benennen und dort die Zeile 79 ändern um das für die Alexa Frage zu nehmen?

                          Grüße aus dem trüben Köln...

                          C 1 Reply Last reply Reply Quote 0
                          • C
                            Chrunchy @JoJo58 last edited by

                            @jojo58 ja, das <br> sorgt in HTML für einen Zeilumbruch.
                            Wirkt sich aber nur aus, wenn du in einer VIS den Datenpunkt darstellst.

                            Ich habe bei mir ein Komma als Trennzeichen drin.

                            JoJo58 1 Reply Last reply Reply Quote 0
                            • JoJo58
                              JoJo58 @Chrunchy last edited by

                              @chrunchy Danke dir. Dann weiß ich Bescheid.

                              1 Reply Last reply Reply Quote 0
                              • J
                                JoergH last edited by

                                Hi @pittini

                                Ich habe das Skript lange Zeit benutzt und alles lief, allerdings seit meiner kompletten Neuinstallation bekomme ich es einfach nicht mehr zum Laufen. Für alle Fenster/Tueren erscheint der Fehler, dass er die States nicht finden kann, obwohl sie vorhanden sind.

                                javascript.0
                                	2023-05-24 12:39:24.755	warn	script.js.Fenster_und_Türen.Fenster_zählen_1_6_14: Unknown Windowstate undefined detected at hm-rpc.1.0000DD898C6B55.1, please check your configuration
                                javascript.0
                                	2023-05-24 12:39:24.754	warn	at processImmediate (node:internal/timers:478:21)
                                javascript.0
                                	2023-05-24 12:39:24.754	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2443:38)
                                javascript.0
                                	2023-05-24 12:39:24.754	warn	at Object.<anonymous> (script.js.Fenster_und_Türen.Fenster_zählen_1_6_14:279:13)
                                javascript.0
                                	2023-05-24 12:39:24.754	warn	at InitialSort (script.js.Fenster_und_Türen.Fenster_zählen_1_6_14:315:5)
                                javascript.0
                                	2023-05-24 12:39:24.753	warn	at main (script.js.Fenster_und_Türen.Fenster_zählen_1_6_14:350:5)
                                javascript.0
                                	2023-05-24 12:39:24.753	warn	at init (script.js.Fenster_und_Türen.Fenster_zählen_1_6_14:335:45)
                                javascript.0
                                	2023-05-24 12:39:24.750	warn	getState "hm-rpc.1.0000DD898C6B55.1" not found (3)
                                

                                72d4c1d9-96ec-4a09-b65c-f14696c5f6db-grafik.png

                                Ich finde den Fehler einfach nicht. Muss ich Zuweisungen der Räume oder Gewerke anders vornehmen?

                                Wäre für einen Tipp dankbar!

                                C 1 Reply Last reply Reply Quote 0
                                • C
                                  Chrunchy @JoergH last edited by

                                  @joergh Die Funktion muss in den Datenpunkt, nicht in die übergeordnete Gruppe.
                                  Lösche "Fenster" aus functions von "hm-rpc.1.0000DD898C6B55.1" und setzte es in functions von "hm-rpc.1.0000DD898C6B55.1.STATE"

                                  J 1 Reply Last reply Reply Quote 1
                                  • J
                                    JoergH @Chrunchy last edited by

                                    @chrunchy Danke. Das werde ich probieren. So wird es halt durch den rpc Adapter aus der pivccu übernommen...

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

                                      @joergh Was @Chrunchy sagt.

                                      J 1 Reply Last reply Reply Quote 0
                                      • J
                                        JoergH @Pittini last edited by

                                        @pittini @Chrunchy Danke. Das war es. Ich wusste noch, dass es irgendwie etwas ungewöhnlich bei der Zuweisung der Gewerke/Räume war, aber nicht mehr wie genau und aus der Anleitung wurde ich an der Stelle nicht mehr richtig schlau. Kann man das eigentlich nicht ändern, so dass er die von der pivccu übernommenen Einstellungen verwenden kann? Das würde doch vielen das Leben erleichtern...?

                                        A 1 Reply Last reply Reply Quote 0
                                        • A
                                          Alero @JoergH last edited by Alero

                                          @Pittini

                                          Hi,

                                          habe alles soweit eingerichtet. keine Fehlermeldung im Log.
                                          In der Vis bekomme ich leider nur undefiend angezeigt.
                                          Habe ich vielleicht das falsche widget? Der Pfad der icons stimmt und ist auch installiert.
                                          Installiertes script 1.6.15


                                          3a4b4889-bd26-4e7d-b50f-d129cced8285-image.png

                                          A 1 Reply Last reply Reply Quote 0
                                          • A
                                            Alero @Alero last edited by

                                            @Pittini

                                            habe den Fehler gefunden.
                                            was so ein kleingeschriebenes o so ausmachen kann. 🙂
                                            richtig={javascript.0.FensterUeberwachung.OverviewTable}
                                            falsch= {javascript.0.FensterUeberwachung.overviewTable}

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            933
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript monitoring template
                                            81
                                            768
                                            151441
                                            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