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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    [Vorlage] Generisches Fensteroffenskript + Vis

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

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

      Ist das jetzt korrekt so?

      Nein, natürlich nicht, deswegen auch die Fehler im Log. Es MUß so sein wie in der Anleitung beschrieben sonst klappts nicht, der Raum wird dem ganzen Gerät zugewiesen, die Funktion Fenster oder Tuer nur dem entsprechenden Datenpunkt. Das geht auch bei HM Geräten, iwo im HM Adapter kann man das automatische Synchronisieren der Gewerke deaktivieren, dann klappts auch.

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

        @pittini
        Danke für die Antwort.

        OK, also muss ich die, entgegen dem was der ioBroker übernommen hat, manuell ändern..?
        Die Synchronisierung der "Gewerke" habe ich jetzt deaktiviert.

        Welches ist denn der "entsprechende Datenpunkt"?

        Das ist mir nicht klar. Bei mir legt er das Device an, darunter dann einen Channel 0 für den Drehgriff unter dem selbst zugewiesenen Namen und dann noch einmal einen Channel 1 mit dem gleichen Griff, nur unter der Serienbezeichnung des Gerätes. Unter diesem ist dann auch der STATE zu finden der den Zustand angibt. Ist das der "entsprechende Datenpunkt"?

        Muss ich also bei letzterem Channel das "Fenster, Sicherheit, Verschluss" löschen während der Raum bei allen anderen korrekt ist und bleiben muss?

        Das Device hat als einziges keinen Raum zugewiesen. So wie ich Dich verstehe muss ich nun hier den Raum manuell nachtragen, aber muss ich auch den Raum bei allen anderen Datenpunkten manuell löschen?

        Sorry, aber ich kapiere es einfach nicht, was ich genau wo einstellen muss. Die "Anleitung" mit den drei Zeilen ist imho nicht so eindeutig oder ich bin halt einfach zu doof.

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

          @joergh Ja, der State dürfte hier der richtige sein. Wie es aussehen muß, siehste doch an den Screenshots in der Anleitung, dafür hab ich se doch gemacht. Und wenn Du nen kleinen Screen hast, mußte die Bilder halt evtl. nach rechts scrollen um alles zu sehen. Anleitung mit 3 Zeilen? Tatsächlich besteht die Anleitung aus 158 Zeilen, weis ja nich wo Du da hinguggst.

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

            @pittini
            Der Screenshot ist halt nicht so eindeutig, weil die Struktur bei Dir für einen Kontakt anders ist. Da geht es über Magnetkontakt Channel/ Raum Channel/ Fenster Channel schliesslich zum State. Bei meiner Struktur geht es direkt zu einem Drehgriff Device, das sich dann in zwei Channel aufsplittet. Wenn hier also steht " Den Geräten müssen Räume (für den gesamten Channel) zugewiesen sein.....Hier aber nur für den Datenpunkt, nicht den gesamten Channel!!!", dann frage ich mich denn für welchen der beiden Channel 0 oder 1 oder für beide?

            Außerdem hat mich halt verwirrt, dass ich im ioBroker aktiv Daten, die er eigentlich so durch den rega Adapter anlegt, verändern muss, sowie das synchronisieren deaktivieren. Das steht da nicht. Bei den drei Zeilen geht es nur um den relevanten Teil, die meisten Zeilen haben ja nichts mit dem Thema zu tun. Ich bezog mich dabei auf "Vorraussetzungen: Den Geräten müssen Räume (für den gesamten Channel) zugewiesen sein, sowie eine Funktion, z.B. "Fenster", bzw. "Tuer" für jeden entsprechenden Datenpunkt.
            Hier aber nur für den Datenpunkt, nicht den gesamten Channel!!!"
            Versteh das bitte nicht als Vorwurf, sondern einfach als Feedback von einem Nutzer. Ein Hinweis z.B., dass man die vom Adapter angelegten Daten verändern und das Synchronisieren der Gewerke im rega Adapter deaktivieren muss, würde sicherlich einigen helfen die eine piVCCU installiert haben. Vielleicht bin ich aber auch der Einzige der da Schwierigkeiten hat.

            Danke jedenfalls für die Antwort. Ich werde gleich mal probieren die Daten zu überschreiben und sehen, ob es funktioniert. Grundsätzlich finde ich das Skript ja klasse und würde es deswegen ja auch gerne zum Laufen bringen.

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

              @pittini
              So, habe jetzt alle Daten korrigiert und es scheint auch etwas Bewegung zu geben, allerdings wirft er mir folgende Fehlermeldungen aus:

              Error.png

              Im Skript der neusten Version färbt er auch was ab Zeile 265 rot ein. Weiss nicht, ob das eine Bedeutung hat, aber immerhin versucht er ja hier ins Log zu schreiben und da die Fehlermeldungen wohl auch mit dem Log zu tun haben, poste ich das mal

              //Alle States anlegen, Main aufrufen wenn fertig
              let numStates = States.length;
              States.forEach(function (state) {
                  createState(state.id, state.initial, state.forceCreation, state.common, function () {
                      numStates--;
                      if (numStates === 0) {
                          if (logging) log("CreateStates fertig!");
                          InitialSort();
                      };
                  });
              });
              
              
              P 1 Reply Last reply Reply Quote 0
              • P
                Pittini Developer @JoergH last edited by

                @joergh Nein, das im Skript rot gefärbte hat nix damit zu tun, bei manchen Sachen kommt der Syntaxcheck ausm Tritt, kannste ignorieren. Der Fehler liegt bei Dir in Zeile 42 würd ich sagen, das muß auf false.

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

                  @pittini Ja, danke! Das war's. Es geht!! 🕺 🙏 👏

                  1 Reply Last reply Reply Quote 0
                  • ub.privat
                    ub.privat last edited by

                    @Pittini

                    Moin.moin, zuerst einmal vielen Dank für das interessante Script.
                    Leider bin ich verzweifeln! Habe nun die 514 Beiträge hier im Thread durchgelesen, doch so richtig hilft es mir nicht weiter.
                    Alle Fenster und Tueren sind gemäß deiner Anleitung zugeorndet und beschrieben.

                    Im Fehlerlog des Scripts werde ich aus den Fehlerzeilen nicht schlau:

                    11:14:47.348	info	javascript.0 (4473) Stop script script.js.common.FENSTER_TUEREN
                    11:14:47.464	info	javascript.0 (4473) Start javascript script.js.common.FENSTER_TUEREN
                    11:14:47.499	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: starting Fensterskript, Version 1.6.11
                    11:14:47.501	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: registered 0 subscriptions and 0 schedules
                    11:14:47.517	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:317:26)
                    11:14:47.517	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                    11:14:47.518	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                    11:14:47.518	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                    11:14:47.520	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:318:35)
                    11:14:47.521	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                    11:14:47.521	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                    11:14:47.521	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                    11:14:47.523	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:319:37)
                    11:14:47.523	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                    11:14:47.523	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                    11:14:47.524	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                    11:14:47.525	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:320:32)
                    11:14:47.525	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                    11:14:47.526	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                    11:14:47.526	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                    11:14:47.527	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:321:30)
                    11:14:47.528	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                    11:14:47.528	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                    11:14:47.528	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                    11:14:47.529	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:333:27)
                    11:14:47.530	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                    11:14:47.530	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                    11:14:47.530	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                    11:14:47.536	error	javascript.0 (4473) at CreateRoomsWithOpenDoorsList (script.js.common.FENSTER_TUEREN:839:45)
                    11:14:47.537	error	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:343:5)
                    11:14:47.537	error	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                    11:14:47.537	error	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                    

                    Die Warnungen sind erst enmal sekundär, doch die Errormeldungen bekomme ich nicht gedeutet.

                    Auch wird in den Objekten nicht wirklich "viel" generiert:

                    9a0df030-7a06-45ec-a8c7-b270d514b848-image.png

                    Wo muss / soll ich ansetzen?
                    Danke bereit im Voraus!

                    P 1 Reply Last reply Reply Quote 0
                    • P
                      Pittini Developer @ub.privat last edited by

                      @ub-privat Zeig mal nen Screenshot vom Objektbaum wo ich die Zuordnungen sehen kann. Ausserdem Zeile 1-44 posten damit ich Deine Einstellungen seh. Und ein Log bei eingeschaltetem logging (Zeile 9) wär auch hilfreich.

                      ub.privat 1 Reply Last reply Reply Quote 0
                      • ub.privat
                        ub.privat @Pittini last edited by

                        @pittini

                        Hier der Objektbaum:

                        Das sind ZigBee (Xiaomi) - Sensoren:
                        7b9f785a-8c60-4c58-9ad1-e28a42eb97cd-image.png
                        e2c2492a-9301-42c6-a6db-5bd6e18ca858-image.png

                        Hier habe ich einen Homematic-Sensor:
                        b90c810a-85a5-4651-80ea-c31af90ac402-image.png

                        Hier noch ein paar Homematic-IP-Sensoren:
                        573fd737-b363-4db5-bb1c-28a092d96aa2-image.png

                        Hier die Zeilen 1-44 aus dem Script:

                        const Skriptversion = "1.6.11" //vom 18.03.2021 - https://github.com/Pittini/iobroker-Fensterauswertung - https://forum.iobroker.net/topic/31674/vorlage-generisches-fensteroffenskript-vis
                        //Script um offene Fenster/Türen pro Raum und insgesamt zu zählen.
                        //Möglichkeit eine Ansage nach x Minuten einmalig oder zyklisch bis Fensterschließung anzugeben
                        //Dynamische erzeugung einer HTML Übersichtstabelle
                        //WICHTIG!!!
                        //Vorraussetzungen: Den Geräten müssen Räume zugewiesen sein, sowie die Funktion "Fenster" bzw "Tuer" für jeden entsprechenden Datenpunkt.
                        
                        //Grundeinstellungen
                        const logging = false; //Erweiterte Logs ausgeben?
                        const praefix = "javascript.0.FensterUeberwachung."; //Grundpfad für Script DPs - Muß innerhalb javascript.x sein.
                        const PresenceDp = "" //Pfad zum Anwesenheitsdatenpunkt, leer lassen wenn nicht vorhanden
                        const WhichWindowFunctionToUse = "Fenster"; // Legt fest nach welchem Begriff in Funktionen gesucht wird. Diese Funktion nur dem Datenpunkt zuweisen, NICHT dem ganzen Channel!
                        const WhichDoorFunctionToUse = "Tuer"; // Legt fest nach welchem Begriff in Funktionen gesucht wird. Diese Funktion nur dem Datenpunkt zuweisen, NICHT dem ganzen Channel!
                        const WindowIgnoreTime = 10000; // 10000 ms = 10 Sekunden - Zeit in ms für die kurzzeitiges öffnen/schliessen ignoriert wird
                        const DoorIgnoreTime = 1000; // 1000 ms = 1 Sekunden - Zeit in ms für die kurzzeitiges öffnen/schliessen ignoriert wird
                        
                        
                        //Nachrichteneinstellungen
                        const TimeToWindowMsg = 900000 // 300000 ms = 5 Minuten - Zyklus- bzw. Ablaufzeit für Fenster-offenwarnung/en
                        const TimeToDoorMsg = 300000 // 300000 ms = 5 Minuten - Zyklus- bzw. Ablaufzeit für Tür-offenwarnung/en
                        
                        const MaxMessages = 1; //Maximale Anzahl der Nachrichten pro Raum 
                        
                        //Telegram
                        const UseTelegram = false; // Sollen Nachrichten via Telegram gesendet werden?
                        
                        //Pushover
                        const UsePushover = false; // Sollen Nachrichten via PushOver gesendet werden?
                        const PushoverInstance = "pushover.0"; //Pushoverinstanz welche genutzt werden soll angeben
                        const PushoverDevice = "All"; //Welches Gerät soll die Nachricht bekommen
                        const PushOverTitle = "Fensterüberwachung";
                        
                        //Alexa
                        const UseAlexa = false; // Sollen Nachrichten via Alexa ausgegeben werden?
                        const AlexaInstance = "alexa2.0";
                        const AlexaId = ""; // Die Alexa Seriennummer.
                        const AlexaVolume = "50"; // Lautstärke der Nachrichten. Wert von 1 bis 100
                        
                        //Other
                        const UseMail = false; //Nachricht via Mail versenden?
                        const UseSay = false; // Sollen Nachrichten via Say ausgegeben werden? Autorenfunktion, muß deaktiviert werden.
                        const UseEventLog = false; // Sollen Nachrichten ins Eventlog geschreiben werden? Autorenfunktion, muß deaktiviert werden.
                        
                        const NoMsgAtPresence = false; //Sollen Nachrichten bei Anwesenheit unterdrückt werden?
                        

                        Hier das Logging = true:

                        
                        15:48:47.676	info	javascript.0 (4473) Stop script script.js.common.FENSTER_TUEREN
                        15:48:47.790	info	javascript.0 (4473) Start javascript script.js.common.FENSTER_TUEREN
                        15:48:47.837	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: starting Fensterskript, Version 1.6.11
                        15:48:47.840	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: registered 0 subscriptions and 0 schedules
                        15:48:47.866	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: CreateStates fertig!
                        15:48:47.875	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:317:26)
                        15:48:47.875	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                        15:48:47.875	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                        15:48:47.876	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                        15:48:47.879	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:318:35)
                        15:48:47.880	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                        15:48:47.880	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                        15:48:47.881	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                        15:48:47.886	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:319:37)
                        15:48:47.886	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                        15:48:47.887	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                        15:48:47.887	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                        15:48:47.891	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:320:32)
                        15:48:47.892	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                        15:48:47.892	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                        15:48:47.892	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                        15:48:47.895	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:321:30)
                        15:48:47.896	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                        15:48:47.896	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                        15:48:47.896	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                        15:48:47.897	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: x=0= SendWindowWarnMsg=null SendDoorWarnMsg=null SendVentMsg=null SendWindowOpenCloseMsg=null SendDoorOpenCloseMsg=null
                        15:48:47.899	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:333:27)
                        15:48:47.900	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                        15:48:47.900	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                        15:48:47.900	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                        15:48:47.902	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: Reaching VentCheck x=0 Init=true VentwarnTime[x]=null RoomStateTimeStamp[x]=undefined
                        15:48:47.902	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: Room 0 = is open or disabled, no vent warning set
                        15:48:47.903	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: Reaching CreateRoomsWithVentWarnings
                        15:48:47.907	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: Reaching CreateRoomsWithOpenDoorsList
                        15:48:47.911	error	javascript.0 (4473) at CreateRoomsWithOpenDoorsList (script.js.common.FENSTER_TUEREN:839:45)
                        15:48:47.912	error	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:343:5)
                        15:48:47.913	error	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                        15:48:47.913	error	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                        

                        Ich hoffe, du wirst daraus "schlau"...

                        P 1 Reply Last reply Reply Quote 0
                        • P
                          Pittini Developer @ub.privat last edited by Pittini

                          @ub-privat Lies mal in der Anleitung was unter dem dicken fetten WICHTIG! steht. Und schau Dir den Screenshot dazu an und dann vergleichs mit Deinen Screenshots. Stichwort Räume. Wozu schreib ich eigentlich ne Anleitung?

                          ub.privat 1 Reply Last reply Reply Quote 0
                          • ub.privat
                            ub.privat @Pittini last edited by ub.privat

                            @pittini

                            Es sind doch Räume angelegt! EG_Wohnen, EG_Kochen; EG_Werkstatt.... OG_Bad, OG_Schlafen
                            Halt genau so, wie ich es der Anleitung entnehmen konnte und wie es die Scrennshots zeigen!
                            Es wurde nochmals intensiv geschaut, das nicht der gesamte Channel benant wurde.
                            d52712d4-0203-4e79-a30d-d982ad7277bd-image.png

                            Verstehe nicht, worauf du hinaus willst! Ja ich habe die Anleitung gelesen, dass ist das wichtigste, bevor ich mich mit dem Thema auseinandersetze...
                            Auch das Synchronisieren zwischen HM und ioBroker ist deaktiviert.

                            3a19d1db-15bd-4a6c-8e36-041e32464ed6-image.png

                            Mir ist schon bewusst, dass du als Entwickler von vermeintlich "dummen" Fragen zu hauf bekommst, doch mehr als Lesen, Fragen und Lernen kann man nicht!?

                            Dominik F. P 2 Replies Last reply Reply Quote 0
                            • Dominik F.
                              Dominik F. @ub.privat last edited by

                              @ub-privat

                              Pittini meint glaube ich folgenden Satz:
                              Den Geräten müssen Räume (für den gesamten Channel) zugewiesen sein.
                              Du hast wenn ich das richtig sehe einem Datenpunkt einen Raum zugewiesen, nicht dem gesamten Channel.

                              ub.privat 2 Replies Last reply Reply Quote 1
                              • ub.privat
                                ub.privat @Dominik F. last edited by

                                @dominik-f

                                Stimmt, jetzt habe ich es gecheckt! Werde nochmals genau überarbeiten! DANKE!

                                1 Reply Last reply Reply Quote 0
                                • P
                                  Pittini Developer @ub.privat last edited by

                                  @ub-privat sagte in [Vorlage] Generisches Fensteroffenskript + Vis:

                                  doch mehr als Lesen, Fragen und Lernen kann man nicht!?

                                  Sorry, zum lesen gehört auch das gelesene zu verstehen und umzusetzen. Ich mach extra ausführliche und bebilderte Anleitungen...
                                  Da steht doch ganz klar, dass den Geräten für DEN GESAMTEN CHANNEL Räume zugewiesen sein müssen. Du hast aber nur jeweils einem Datenpunkt nen Raum zugewiesen.

                                  Inked2021-05-06 18_55_13-Window_LI.jpg

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

                                    @dominik-f
                                    @Pittini

                                    Ihr habt recht, dass habe ich nicht korrekt umgesetzt.
                                    Hier die Überarbeitung:

                                    c3b03e68-5fb8-4792-b381-4b548c4269c7-image.png
                                    2e2fea92-d884-4a5a-8658-826d2045259f-image.png
                                    54b7777c-b5a2-461c-8027-d15f8c6fe3af-image.png

                                    Es ändert jedoch nichts am Zustand.

                                    19:05:33.694	info	javascript.0 (4473) Stop script script.js.common.FENSTER_TUEREN
                                    19:05:33.698	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: reaching ClearWindowWarnTime - [x] = 0
                                    19:05:36.122	info	javascript.0 (4473) Start javascript script.js.common.FENSTER_TUEREN
                                    19:05:36.151	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: starting Fensterskript, Version 1.6.11
                                    19:05:36.154	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: registered 0 subscriptions and 0 schedules
                                    19:05:36.211	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: CreateStates fertig!
                                    19:05:36.214	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:317:26)
                                    19:05:36.214	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                                    19:05:36.215	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                                    19:05:36.215	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                                    19:05:36.217	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:318:35)
                                    19:05:36.218	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                                    19:05:36.218	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                                    19:05:36.218	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                                    19:05:36.221	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:319:37)
                                    19:05:36.221	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                                    19:05:36.221	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                                    19:05:36.222	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                                    19:05:36.224	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:320:32)
                                    19:05:36.224	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                                    19:05:36.225	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                                    19:05:36.225	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                                    19:05:36.227	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:321:30)
                                    19:05:36.228	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                                    19:05:36.228	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                                    19:05:36.228	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                                    19:05:36.230	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: x=0= SendWindowWarnMsg=null SendDoorWarnMsg=null SendVentMsg=null SendWindowOpenCloseMsg=null SendDoorOpenCloseMsg=null
                                    19:05:36.231	warn	javascript.0 (4473) at init (script.js.common.FENSTER_TUEREN:333:27)
                                    19:05:36.232	warn	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:341:5)
                                    19:05:36.232	warn	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                                    19:05:36.232	warn	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                                    19:05:36.233	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: Reaching VentCheck x=0 Init=true VentwarnTime[x]=null RoomStateTimeStamp[x]=undefined
                                    19:05:36.235	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: Room 0 = is open or disabled, no vent warning set
                                    19:05:36.236	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: Reaching CreateRoomsWithVentWarnings
                                    19:05:36.237	info	javascript.0 (4473) script.js.common.FENSTER_TUEREN: Reaching CreateRoomsWithOpenDoorsList
                                    19:05:36.240	error	javascript.0 (4473) at CreateRoomsWithOpenDoorsList (script.js.common.FENSTER_TUEREN:839:45)
                                    19:05:36.240	error	javascript.0 (4473) at main (script.js.common.FENSTER_TUEREN:343:5)
                                    19:05:36.241	error	javascript.0 (4473) at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                                    19:05:36.241	error	javascript.0 (4473) at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                                    

                                    Das steht im LOG:

                                    javascript.0
                                    2021-05-06 19:06:50.322	error	at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1976:38)
                                    javascript.0
                                    2021-05-06 19:06:50.322	error	at Object.<anonymous> (script.js.common.FENSTER_TUEREN:272:13)
                                    javascript.0
                                    2021-05-06 19:06:50.321	error	at main (script.js.common.FENSTER_TUEREN:343:5)
                                    javascript.0
                                    2021-05-06 19:06:50.322	error	at processImmediate (internal/timers.js:463:21)
                                    javascript.0
                                    2021-05-06 19:06:50.320	error	at CreateRoomsWithOpenDoorsList (script.js.common.FENSTER_TUEREN:839:45)
                                    javascript.0
                                    2021-05-06 19:06:50.321	error	at InitialSort (script.js.common.FENSTER_TUEREN:308:5)
                                    javascript.0
                                    2021-05-06 19:06:50.320	error	Error in callback: TypeError: Cannot set property '1' of undefined
                                    
                                    P 1 Reply Last reply Reply Quote 0
                                    • P
                                      Pittini Developer @ub.privat last edited by Pittini

                                      @ub-privat In den Einstellungen die Du gepostest hast steht:

                                      const WhichWindowFunctionToUse = "Fenster"; // Legt fest nach welchem Begriff in Funktionen gesucht wird. Diese Funktion nur dem Datenpunkt zuweisen, NICHT dem ganzen Channel!
                                      const WhichDoorFunctionToUse = "Tuer"; // Legt fest nach welchem Begriff in Funktionen gesucht wird. Diese Funktion nur dem Datenpunkt zuweisen, NICHT dem ganzen Channel!
                                      

                                      Tja, und in der Funktion heisst das bei Dir TUER bzw. FENSTER. Du mußt Dich schon entscheiden wie Dus schreiben willst, aus Sicht des Skripts hast Du somit nirgends nix zugewiesen weil halt TUER nicht gleich Tuer ist.

                                      ub.privat 1 Reply Last reply Reply Quote 1
                                      • ub.privat
                                        ub.privat @Pittini last edited by

                                        @pittini

                                        Vielen Dank! Es funktioniert. Das gute daran ist, wieder etwas gelernt zu haben.
                                        Für mich ist neu, das die Syntax 'entscheident' ist. Weiterhin zweimal lesen!

                                        Danke für die Geduld und das gute Skript.

                                        J 1 Reply Last reply Reply Quote 0
                                        • J
                                          JoergH @ub.privat last edited by

                                          Hallo @Pittini,

                                          nochmal eine Frage: In der Anleitung steht, dass wenn man Say(it) benutzen möchte die "Autorenfunktion" deaktiviert sein muss. Was ist denn die "Autorenfunktion"?

                                          Ich habe say auf true gesetzt, loggen ist deaktiviert, aber er bringt dennoch keinen Ton raus. Im Log erscheinen einige Fehlermeldungen u.a. Say is not defined. Ich vermute irgendwas stimmt an meiner Config nicht, weiss aber nicht was.

                                          javascript.0	2021-05-20 22:46:32.051	error	(3472) at processTimers (internal/timers.js:497:7)
                                          javascript.0	2021-05-20 22:46:32.051	error	(3472) at listOnTimeout (internal/timers.js:554:17)
                                          javascript.0	2021-05-20 22:46:32.051	error	(3472) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2073:34)
                                          javascript.0	2021-05-20 22:46:32.051	error	(3472) at Object.<anonymous> (script.js.Fenster_zählen_2:1005:83)
                                          javascript.0	2021-05-20 22:46:32.050	error	(3472) at Meldung (script.js.Fenster_zählen_2:361:25)
                                          javascript.0	2021-05-20 22:46:32.050	error	(3472) Error in callback: ReferenceError: Say is not defined
                                          
                                          P 1 Reply Last reply Reply Quote 0
                                          • P
                                            Pittini Developer @JoergH last edited by Pittini

                                            @joergh

                                            const UseSay = false; // Sollen Nachrichten via Say ausgegeben werden? Autorenfunktion, muß deaktiviert werden.
                                            

                                            Was ist denn an : "muß deaktiviert werden" nicht zu verstehen? Das ganze hat auch absolut nix mit SayIt zu tun, sondern ist ne Funktion, die nur ich, der Autor des Skripts, habe und welche deshalb bei Dir, der diese Funktion nicht hat zum Fehler führt. Bei mir ist Say eine globale Funktion, so dass ich aus allen Skripten Sprachinfos via SNIPS ausgeben kann.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            929
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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