Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [Vorlage] Generisches Fensteroffenskript + Vis

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    23
    1
    1.3k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

[Vorlage] Generisches Fensteroffenskript + Vis

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascripttemplatemonitoring
768 Beiträge 81 Kommentatoren 222.3k Aufrufe 97 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • wendy2702W wendy2702

    @dominik-f danke für deine Antwort. Denkst du alle Probleme kommen davon?

    Dominik F.D Offline
    Dominik F.D Offline
    Dominik F.
    schrieb am zuletzt editiert von
    #639

    @wendy2702

    Das kann man so nicht sagen, aber als aller erstes muss das was Pittini vorgibt eingehalten werden und richtig eingestellt werden. Das sind 99% der Fehler hier im Thread. Wenn das alles passt, dann muss man genauer schauen. Ich denke aber, wenn alles richtig eingestellt ist, wird es bei dir funktionieren.

    Das Problem, wenn du die Synchronisation nicht rausnimmst ist, dass wenn du den Rega adapter neu startest oder iobroker an sich, er deine Konfiguration bei iobroker wieder ändert und alles durcheinander haut.

    1 Antwort Letzte Antwort
    1
    • wendy2702W wendy2702

      @dominik-f danke für deine Antwort. Denkst du alle Probleme kommen davon?

      Dominik F.D Offline
      Dominik F.D Offline
      Dominik F.
      schrieb am zuletzt editiert von
      #640

      @wendy2702

      Dazu achte bitte darauf, dass du folgendes auf false gesetzt hast :

      //Other
      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.
      
      

      Das sind auch sehr beliebte Fehler. Wenn nach dem richtigen Einstellen der Funktion es immer noch Fehler gibt, zeig mal die ersten 47 Zeilen des Skriptes, da könnte dann noch was falsch eingestellt sein. Steht aber auch alles nochmal detailliert in der Anleitung.

      wendy2702W 1 Antwort Letzte Antwort
      1
      • Dominik F.D Dominik F.

        @wendy2702

        Dazu achte bitte darauf, dass du folgendes auf false gesetzt hast :

        //Other
        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.
        
        

        Das sind auch sehr beliebte Fehler. Wenn nach dem richtigen Einstellen der Funktion es immer noch Fehler gibt, zeig mal die ersten 47 Zeilen des Skriptes, da könnte dann noch was falsch eingestellt sein. Steht aber auch alles nochmal detailliert in der Anleitung.

        wendy2702W Online
        wendy2702W Online
        wendy2702
        schrieb am zuletzt editiert von
        #641

        @dominik-f ok.

        Ich gebe mich morgen nochmal dran.

        Einstellungen hatte ich schon paarmal kontrolliert aber irgendwann sieht man die einfachsten Fehler nicht mehr.

        Bitte keine Fragen per PN, die gehören ins Forum!

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        1 Antwort Letzte Antwort
        0
        • wendy2702W Online
          wendy2702W Online
          wendy2702
          schrieb am zuletzt editiert von
          #642

          Guten Morgen zusammen,

          ich bin ein wenig weitergekommen. Das Script startet nach manueller Zuordnung der enum functions zu einem Fenster und einer Tür erstmal Fehlerfrei.

          Öffne ich dann jedoch das Fenster erhalte ich im Script folgende Meldung:

          7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at Meldung (script.js.common.Home.Fensterauswertung:395:17)
          7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at CheckWindow (script.js.common.Home.Fensterauswertung:1014:64)
          7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at Object.<anonymous> (script.js.common.Home.Fensterauswertung:1388:25)
          

          Vollständiges log vom start:

          7.1.2022, 08:45:55.354	[info ]: javascript.0 (12048) Start javascript script.js.common.Home.Fensterauswertung
          7.1.2022, 08:45:55.356	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: starting Fensterskript, Version 1.6.15
          7.1.2022, 08:45:55.356	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Raum- 0 = Flur EG hat Türsensor/en
          7.1.2022, 08:45:55.356	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Raum- 1 = Arbeitszimmer hat Fenstersensor/en
          7.1.2022, 08:45:55.357	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: registered 0 subscriptions and 0 schedules
          7.1.2022, 08:45:56.300	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: CreateStates fertig!
          7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: x=0=Arbeitszimmer SendWindowWarnMsg=true SendDoorWarnMsg=true SendVentMsg=true SendWindowOpenCloseMsg=true SendDoorOpenCloseMsg=true
          7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: x=1=Flur EG SendWindowWarnMsg=true SendDoorWarnMsg=true SendVentMsg=true SendWindowOpenCloseMsg=true SendDoorOpenCloseMsg=true
          7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CheckForHmShit val=false typof val=string x=0 Sensor[x]=hm-rpc.0.NEQ0944362.1.STATE
          7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching GetRoom x=0
          7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching CheckWindow, SensorVal[0]=closed SensorOldVal= TempRoom=Flur EG SensorType[x]=Door TempRoomIndex=1
          7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomOpenDoorCount[TempRoomIndex]=0 TempRoom=Flur EG TempRoomIndex=1
          7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching ClearWindowWarnTime - [x] = 1
          7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching ClearDoorWarnTime - [x] = 1
          7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Alle Fenster geschlossen.
          7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Offene Fenster gesamt= 0
          7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Alle Türen geschlossen.
          7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Offene Türen gesamt= 0
          7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CheckForHmShit val=false typof val=string x=1 Sensor[x]=hm-rpc.0.NEQ0943039.1.STATE
          7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching GetRoom x=1
          7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching CheckWindow, SensorVal[1]=closed SensorOldVal= TempRoom=Arbeitszimmer SensorType[x]=Window TempRoomIndex=0
          7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching ClearWindowWarnTime - [x] = 0
          7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching ClearDoorWarnTime - [x] = 0
          7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Alle Fenster geschlossen.
          7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Offene Fenster gesamt= 0
          7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Alle Türen geschlossen.
          7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Offene Türen gesamt= 0
          7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching VentCheck x=0 Init=true VentwarnTime[x]=0 RoomStateTimeStamp[x]=1641541555996
          7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Room 0 = Arbeitszimmer is open or disabled, no vent warning set
          7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithVentWarnings
          7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching VentCheck x=1 Init=true VentwarnTime[x]=0 RoomStateTimeStamp[x]=1641541555890
          7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Room 1 = Flur EG is open or disabled, no vent warning set
          7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithVentWarnings
          7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithOpenDoorsList
          7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomsWithOpenDoors: Keine Tür/en geöffnet
          7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithTiltedDoorsList
          7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomsWithTiltedDoors: Keine Tür gekippt
          7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithOpenWindowsList
          7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomsWithOpenWindows: Alle Fenster sind geschlossen
          7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithTiltedWindowsList
          7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomsWithTiltedWindows: Keine Fenster gekippt
          7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: CreateOpenRoomsList()
          7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomsWithOpenings: 
          7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithVentWarnings
          7.1.2022, 08:46:17.792	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Trigger= 1 Wert= true Alter Wert= false dp.channelId=hm-rpc.0.NEQ0943039.1 dp.channelName=Kontakt Fenster Arbeitszimmer Vorne
          7.1.2022, 08:46:17.792	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CheckForHmShit val=false typof val=string x=1 Sensor[x]=hm-rpc.0.NEQ0943039.1.STATE
          7.1.2022, 08:46:17.792	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Activating Ignore Timeout for 1, Value to ignore=closed
          7.1.2022, 08:46:27.792	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: InTimeout - Trigger= 1 Wert= true Alter Wert= false
          7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CheckForHmShit val=true typof val=string x=1 Sensor[x]=hm-rpc.0.NEQ0943039.1.STATE
          7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Ignore Timeout for 1 exceeded, Value change happend, starting Functions
          7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CheckForHmShit val=true typof val=string x=1 Sensor[x]=hm-rpc.0.NEQ0943039.1.STATE
          7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching GetRoom x=1
          7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching CheckWindow, SensorVal[1]=open SensorOldVal=closed TempRoom=Arbeitszimmer SensorType[x]=Window TempRoomIndex=0
          7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomOpenWindowCount für Arbeitszimmer=1
          7.1.2022, 08:46:27.794	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Arbeitszimmer Fenster geöffnet
          7.1.2022, 08:46:27.794	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching Meldung, msg= Arbeitszimmer Fenster geöffnet! NoMsgAtPresence= false Presence= true
          7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at Meldung (script.js.common.Home.Fensterauswertung:395:17)
          7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at CheckWindow (script.js.common.Home.Fensterauswertung:1014:64)
          7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at Object.<anonymous> (script.js.common.Home.Fensterauswertung:1388:25)
          

          Für das Arbeitszimmer ändert sich auch der entsprechende DP auf "true":

          34c59265-5555-4b86-9150-087334afdaed-grafik.png

          In der Summary wird das offene Fenster nicht angezeigt:

          c2c2c791-4548-4dd6-a3a2-aeb608e82e2e-grafik.png

          Schließe ich das Fenster nach ca. 1min 30 sek wieder kommt noch das im Log:

          7.1.2022, 08:48:09.233	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Trigger= 1 Wert= false Alter Wert= true dp.channelId=hm-rpc.0.NEQ0943039.1 dp.channelName=Kontakt Fenster Arbeitszimmer Vorne
          

          e66c3763-50a2-4858-98ac-fdc241c1449e-grafik.png
          Allerdings ändert sich auch der DP im Arbeitszimmer nicht mehr zurück auf false:

          5e6572ff-3783-4832-ad2a-f4d556054627-grafik.png

          Hier noch meine ersten 47 Zeilen des Scripts:

          const Skriptversion = "1.6.15" //vom 22.11.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 = true; //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 = "Tueren"; // 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
          const WhichEnumCategoryToUse = "functions"; // Legt fest in welcher Kategorie sich die Aufzählungen befinden! Nur ändern wer weis was er tut!
          
          //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";
          const PushOverSound = "none"; //Welcher Sound soll abgespielt werden? "none" für kein Sound, "" für Standartsound, ansonsten Namen angeben z.B. "magic"
          
          //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 = true; // Sollen Nachrichten ins Eventlog geschreiben werden? Autorenfunktion, muß deaktiviert werden.
          
          const NoMsgAtPresence = false; //Sollen Nachrichten bei Anwesenheit unterdrückt werden?
          
          

          Und hier meine beiden enum functions:

          Fenster/Arbeitszimmer:

          b565daac-20d8-4c35-9d06-b4aa9784e246-grafik.png

          edea653d-80e4-4f40-b7b3-ddd8021109a3-grafik.png

          Tueren/Haustür:

          b7bb2e50-742b-47a0-869b-eb83e1a4b561-grafik.png

          fde781af-92e8-4385-89de-f4bb521bc9d9-grafik.png

          Iobroker hat alle Adapter aus dem latest installiert.

          Wo liegt denn jetzt noch mein Fehler/Problem?

          Danke und Gruß

          Bitte keine Fragen per PN, die gehören ins Forum!

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          P 1 Antwort Letzte Antwort
          0
          • wendy2702W wendy2702

            Guten Morgen zusammen,

            ich bin ein wenig weitergekommen. Das Script startet nach manueller Zuordnung der enum functions zu einem Fenster und einer Tür erstmal Fehlerfrei.

            Öffne ich dann jedoch das Fenster erhalte ich im Script folgende Meldung:

            7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at Meldung (script.js.common.Home.Fensterauswertung:395:17)
            7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at CheckWindow (script.js.common.Home.Fensterauswertung:1014:64)
            7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at Object.<anonymous> (script.js.common.Home.Fensterauswertung:1388:25)
            

            Vollständiges log vom start:

            7.1.2022, 08:45:55.354	[info ]: javascript.0 (12048) Start javascript script.js.common.Home.Fensterauswertung
            7.1.2022, 08:45:55.356	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: starting Fensterskript, Version 1.6.15
            7.1.2022, 08:45:55.356	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Raum- 0 = Flur EG hat Türsensor/en
            7.1.2022, 08:45:55.356	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Raum- 1 = Arbeitszimmer hat Fenstersensor/en
            7.1.2022, 08:45:55.357	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: registered 0 subscriptions and 0 schedules
            7.1.2022, 08:45:56.300	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: CreateStates fertig!
            7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: x=0=Arbeitszimmer SendWindowWarnMsg=true SendDoorWarnMsg=true SendVentMsg=true SendWindowOpenCloseMsg=true SendDoorOpenCloseMsg=true
            7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: x=1=Flur EG SendWindowWarnMsg=true SendDoorWarnMsg=true SendVentMsg=true SendWindowOpenCloseMsg=true SendDoorOpenCloseMsg=true
            7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CheckForHmShit val=false typof val=string x=0 Sensor[x]=hm-rpc.0.NEQ0944362.1.STATE
            7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching GetRoom x=0
            7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching CheckWindow, SensorVal[0]=closed SensorOldVal= TempRoom=Flur EG SensorType[x]=Door TempRoomIndex=1
            7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomOpenDoorCount[TempRoomIndex]=0 TempRoom=Flur EG TempRoomIndex=1
            7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching ClearWindowWarnTime - [x] = 1
            7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching ClearDoorWarnTime - [x] = 1
            7.1.2022, 08:45:56.301	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Alle Fenster geschlossen.
            7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Offene Fenster gesamt= 0
            7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Alle Türen geschlossen.
            7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Offene Türen gesamt= 0
            7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CheckForHmShit val=false typof val=string x=1 Sensor[x]=hm-rpc.0.NEQ0943039.1.STATE
            7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching GetRoom x=1
            7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching CheckWindow, SensorVal[1]=closed SensorOldVal= TempRoom=Arbeitszimmer SensorType[x]=Window TempRoomIndex=0
            7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching ClearWindowWarnTime - [x] = 0
            7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching ClearDoorWarnTime - [x] = 0
            7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Alle Fenster geschlossen.
            7.1.2022, 08:45:56.302	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Offene Fenster gesamt= 0
            7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Alle Türen geschlossen.
            7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Offene Türen gesamt= 0
            7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching VentCheck x=0 Init=true VentwarnTime[x]=0 RoomStateTimeStamp[x]=1641541555996
            7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Room 0 = Arbeitszimmer is open or disabled, no vent warning set
            7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithVentWarnings
            7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching VentCheck x=1 Init=true VentwarnTime[x]=0 RoomStateTimeStamp[x]=1641541555890
            7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Room 1 = Flur EG is open or disabled, no vent warning set
            7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithVentWarnings
            7.1.2022, 08:45:56.303	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithOpenDoorsList
            7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomsWithOpenDoors: Keine Tür/en geöffnet
            7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithTiltedDoorsList
            7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomsWithTiltedDoors: Keine Tür gekippt
            7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithOpenWindowsList
            7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomsWithOpenWindows: Alle Fenster sind geschlossen
            7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithTiltedWindowsList
            7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomsWithTiltedWindows: Keine Fenster gekippt
            7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: CreateOpenRoomsList()
            7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomsWithOpenings: 
            7.1.2022, 08:45:56.304	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CreateRoomsWithVentWarnings
            7.1.2022, 08:46:17.792	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Trigger= 1 Wert= true Alter Wert= false dp.channelId=hm-rpc.0.NEQ0943039.1 dp.channelName=Kontakt Fenster Arbeitszimmer Vorne
            7.1.2022, 08:46:17.792	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CheckForHmShit val=false typof val=string x=1 Sensor[x]=hm-rpc.0.NEQ0943039.1.STATE
            7.1.2022, 08:46:17.792	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Activating Ignore Timeout for 1, Value to ignore=closed
            7.1.2022, 08:46:27.792	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: InTimeout - Trigger= 1 Wert= true Alter Wert= false
            7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CheckForHmShit val=true typof val=string x=1 Sensor[x]=hm-rpc.0.NEQ0943039.1.STATE
            7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Ignore Timeout for 1 exceeded, Value change happend, starting Functions
            7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching CheckForHmShit val=true typof val=string x=1 Sensor[x]=hm-rpc.0.NEQ0943039.1.STATE
            7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching GetRoom x=1
            7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: reaching CheckWindow, SensorVal[1]=open SensorOldVal=closed TempRoom=Arbeitszimmer SensorType[x]=Window TempRoomIndex=0
            7.1.2022, 08:46:27.793	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: RoomOpenWindowCount für Arbeitszimmer=1
            7.1.2022, 08:46:27.794	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Arbeitszimmer Fenster geöffnet
            7.1.2022, 08:46:27.794	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Reaching Meldung, msg= Arbeitszimmer Fenster geöffnet! NoMsgAtPresence= false Presence= true
            7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at Meldung (script.js.common.Home.Fensterauswertung:395:17)
            7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at CheckWindow (script.js.common.Home.Fensterauswertung:1014:64)
            7.1.2022, 08:46:27.794	[error]: javascript.0 (12048)     at Object.<anonymous> (script.js.common.Home.Fensterauswertung:1388:25)
            

            Für das Arbeitszimmer ändert sich auch der entsprechende DP auf "true":

            34c59265-5555-4b86-9150-087334afdaed-grafik.png

            In der Summary wird das offene Fenster nicht angezeigt:

            c2c2c791-4548-4dd6-a3a2-aeb608e82e2e-grafik.png

            Schließe ich das Fenster nach ca. 1min 30 sek wieder kommt noch das im Log:

            7.1.2022, 08:48:09.233	[info ]: javascript.0 (12048) script.js.common.Home.Fensterauswertung: Trigger= 1 Wert= false Alter Wert= true dp.channelId=hm-rpc.0.NEQ0943039.1 dp.channelName=Kontakt Fenster Arbeitszimmer Vorne
            

            e66c3763-50a2-4858-98ac-fdc241c1449e-grafik.png
            Allerdings ändert sich auch der DP im Arbeitszimmer nicht mehr zurück auf false:

            5e6572ff-3783-4832-ad2a-f4d556054627-grafik.png

            Hier noch meine ersten 47 Zeilen des Scripts:

            const Skriptversion = "1.6.15" //vom 22.11.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 = true; //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 = "Tueren"; // 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
            const WhichEnumCategoryToUse = "functions"; // Legt fest in welcher Kategorie sich die Aufzählungen befinden! Nur ändern wer weis was er tut!
            
            //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";
            const PushOverSound = "none"; //Welcher Sound soll abgespielt werden? "none" für kein Sound, "" für Standartsound, ansonsten Namen angeben z.B. "magic"
            
            //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 = true; // Sollen Nachrichten ins Eventlog geschreiben werden? Autorenfunktion, muß deaktiviert werden.
            
            const NoMsgAtPresence = false; //Sollen Nachrichten bei Anwesenheit unterdrückt werden?
            
            

            Und hier meine beiden enum functions:

            Fenster/Arbeitszimmer:

            b565daac-20d8-4c35-9d06-b4aa9784e246-grafik.png

            edea653d-80e4-4f40-b7b3-ddd8021109a3-grafik.png

            Tueren/Haustür:

            b7bb2e50-742b-47a0-869b-eb83e1a4b561-grafik.png

            fde781af-92e8-4385-89de-f4bb521bc9d9-grafik.png

            Iobroker hat alle Adapter aus dem latest installiert.

            Wo liegt denn jetzt noch mein Fehler/Problem?

            Danke und Gruß

            P Offline
            P Offline
            Pittini
            Developer
            schrieb am zuletzt editiert von
            #643

            @wendy2702 Da haste genau den Fehler produziert, vor dem Dich @Dominik-F 3 posts weiter oben noch gewarnt hat. Zeile 43 auf false setzen.

            wendy2702W 1 Antwort Letzte Antwort
            1
            • P Pittini

              @wendy2702 Da haste genau den Fehler produziert, vor dem Dich @Dominik-F 3 posts weiter oben noch gewarnt hat. Zeile 43 auf false setzen.

              wendy2702W Online
              wendy2702W Online
              wendy2702
              schrieb am zuletzt editiert von
              #644

              @pittini Blind... zu Oft und zulange drauf geguckt und irgendwie immer nur Zeile 42 auf dem Schirm gehabt.

              Danke für den erneuten Schubs....

              Wird Zeit für ne Bildschirm Pause

              Bitte keine Fragen per PN, die gehören ins Forum!

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              1 Antwort Letzte Antwort
              0
              • wendy2702W Online
                wendy2702W Online
                wendy2702
                schrieb am zuletzt editiert von
                #645

                Nachdem das Script ja jetzt bei mir läuft und ich mehr oder weniger jetzt alle Beiträge hier gelesen habe wollte ich noch eine Frage stellen.

                Wie @Dominik-F auf einer der ersten Seiten auch geschrieben hat benutze ich ebenfalls für 4 Türen/Fenster sowohl die HM Drehgriff Sensoren als auch HM TFKs.

                Wie habt ihr die sinnvoll den Functions zugewiesen?

                Aktuell habe ich den Drehgriff Sensor als Tür und den TFK als Fenster was natürlich in der Tabelle zu 2 Einträgen führt.

                bf9c47d5-2877-437a-9886-798b19b9d36d-grafik.png

                Hintergrund ist das ich bei geschlossener Tür (Drehgriff steht auf open aber TFK auf closed) am liebsten eine Anzeige hätte das der "Griff" noch offen ist aber Tür/Fenster zu aber halt nicht verriegelt ist.

                Hoffe ich konnte mich verständlich ausdrücken.

                Bitte keine Fragen per PN, die gehören ins Forum!

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                1 Antwort Letzte Antwort
                0
                • P 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.

                  qqolliQ Offline
                  qqolliQ Offline
                  qqolli
                  schrieb am zuletzt editiert von
                  #646

                  @pittini
                  Hallo,

                  nutze Dein wirklich gelungenes Skript schon lange und es funktioniert alles einwandfrei.

                  Nun habe ich ein paar Alexa mehr und wollte mal fragen, wie ich mehrere Alexa (hier die anzugebene ID) in das Skript bekomme, so das die Ansage an alle Alexas ausgegeben wird.

                  Bisher hatte ich die eine ID ja hier eingegeben:

                  //Alexa
                  const UseAlexa = false; // Sollen Nachrichten via Alexa ausgegeben werden?
                  const AlexaInstance = "alexa2.0";
                  const AlexaId = "G090..."; // Die Alexa Seriennummer.
                  const AlexaVolume = "50"; // Lautstärke der Nachrichten. Wert von 1 bis 100
                  

                  Hatte hier versucht die durch Komma/Semikolon getrennt einzugeben etc., hat aber leider nicht funktioniert.

                  Wie könnte ich denn mehrere IDs eingeben? :-)

                  qqolliQ P I 3 Antworten Letzte Antwort
                  0
                  • qqolliQ qqolli

                    @pittini
                    Hallo,

                    nutze Dein wirklich gelungenes Skript schon lange und es funktioniert alles einwandfrei.

                    Nun habe ich ein paar Alexa mehr und wollte mal fragen, wie ich mehrere Alexa (hier die anzugebene ID) in das Skript bekomme, so das die Ansage an alle Alexas ausgegeben wird.

                    Bisher hatte ich die eine ID ja hier eingegeben:

                    //Alexa
                    const UseAlexa = false; // Sollen Nachrichten via Alexa ausgegeben werden?
                    const AlexaInstance = "alexa2.0";
                    const AlexaId = "G090..."; // Die Alexa Seriennummer.
                    const AlexaVolume = "50"; // Lautstärke der Nachrichten. Wert von 1 bis 100
                    

                    Hatte hier versucht die durch Komma/Semikolon getrennt einzugeben etc., hat aber leider nicht funktioniert.

                    Wie könnte ich denn mehrere IDs eingeben? :-)

                    qqolliQ Offline
                    qqolliQ Offline
                    qqolli
                    schrieb am zuletzt editiert von
                    #647

                    @Pittini

                    Hi,

                    wollte nur mal nachfragen wegen meiner Anfrage :-)

                    1 Antwort Letzte Antwort
                    0
                    • M Offline
                      M Offline
                      Malz1902
                      schrieb am zuletzt editiert von
                      #648

                      versuchs mal als array <also ['id1, 'id2'] vielleicht gehts

                      1 Antwort Letzte Antwort
                      0
                      • qqolliQ qqolli

                        @pittini
                        Hallo,

                        nutze Dein wirklich gelungenes Skript schon lange und es funktioniert alles einwandfrei.

                        Nun habe ich ein paar Alexa mehr und wollte mal fragen, wie ich mehrere Alexa (hier die anzugebene ID) in das Skript bekomme, so das die Ansage an alle Alexas ausgegeben wird.

                        Bisher hatte ich die eine ID ja hier eingegeben:

                        //Alexa
                        const UseAlexa = false; // Sollen Nachrichten via Alexa ausgegeben werden?
                        const AlexaInstance = "alexa2.0";
                        const AlexaId = "G090..."; // Die Alexa Seriennummer.
                        const AlexaVolume = "50"; // Lautstärke der Nachrichten. Wert von 1 bis 100
                        

                        Hatte hier versucht die durch Komma/Semikolon getrennt einzugeben etc., hat aber leider nicht funktioniert.

                        Wie könnte ich denn mehrere IDs eingeben? :-)

                        P Offline
                        P Offline
                        Pittini
                        Developer
                        schrieb am zuletzt editiert von
                        #649

                        @qqolli Sorry, da kann ich Dir nich helfen, ich hab nich mal eine Alexa, von daher kein Plan wie das umzusetzen wäre.

                        1 Antwort Letzte Antwort
                        0
                        • qqolliQ qqolli

                          @pittini
                          Hallo,

                          nutze Dein wirklich gelungenes Skript schon lange und es funktioniert alles einwandfrei.

                          Nun habe ich ein paar Alexa mehr und wollte mal fragen, wie ich mehrere Alexa (hier die anzugebene ID) in das Skript bekomme, so das die Ansage an alle Alexas ausgegeben wird.

                          Bisher hatte ich die eine ID ja hier eingegeben:

                          //Alexa
                          const UseAlexa = false; // Sollen Nachrichten via Alexa ausgegeben werden?
                          const AlexaInstance = "alexa2.0";
                          const AlexaId = "G090..."; // Die Alexa Seriennummer.
                          const AlexaVolume = "50"; // Lautstärke der Nachrichten. Wert von 1 bis 100
                          

                          Hatte hier versucht die durch Komma/Semikolon getrennt einzugeben etc., hat aber leider nicht funktioniert.

                          Wie könnte ich denn mehrere IDs eingeben? :-)

                          I Offline
                          I Offline
                          intruder7
                          schrieb am zuletzt editiert von
                          #650

                          @qqolli leg doch bei alexa mehrere Geräte zusammen als Gruppe. Diese Gruppe taucht dann auch beim alexa adapter unter devices auf.

                          1 Antwort Letzte Antwort
                          1
                          • S Offline
                            S Offline
                            Sesamstrasse
                            schrieb am zuletzt editiert von
                            #651

                            Hallo zusammen,
                            ich kriege das Skript leider nicht zum laufen und steh gerade auf den Schlauch. Ich habe die Standard Funktion für Fenster und Türen vom IoBroker verwendet.
                            a3c111ae-e2a3-4c76-a0da-94e1c9d1b31f-image.png

                            Und diese meinen Sensoren zugeordnet.
                            50eb9b5e-65cd-4d91-92f9-9d1c75c6555a-image.png

                            Im script habe ich die ids (habs auch mit dem Namen probiert) eingetragen.

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

                            leider schmeißt das Skript nach dem Start immer viele Warnungen, dann Fehler und bricht ab.
                            Says und EventLog habe ich auf false.

                            11:03:00.878	info	javascript.0 (5215) Start javascript script.js.common.Messages.WindowDoorStatus
                            11:03:00.897	info	javascript.0 (5215) script.js.common.Messages.WindowDoorStatus: starting Fensterskript, Version 1.6.15
                            11:03:00.899	info	javascript.0 (5215) script.js.common.Messages.WindowDoorStatus: registered 0 subscriptions and 0 schedules
                            11:03:00.927	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:325:26)
                            11:03:00.928	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                            11:03:00.928	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                            11:03:00.929	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                            11:03:00.932	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:326:35)
                            11:03:00.932	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                            11:03:00.933	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                            11:03:00.933	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                            11:03:00.937	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:327:37)
                            11:03:00.937	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                            11:03:00.938	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                            11:03:00.938	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                            11:03:00.940	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:328:32)
                            11:03:00.940	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                            11:03:00.941	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                            11:03:00.941	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                            11:03:00.943	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:329:30)
                            11:03:00.944	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                            11:03:00.944	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                            11:03:00.945	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                            11:03:00.949	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:341:27)
                            11:03:00.949	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                            11:03:00.950	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                            11:03:00.951	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                            11:03:00.960	error	javascript.0 (5215) at CreateRoomsWithOpenDoorsList (script.js.common.Messages.WindowDoorStatus:866:45)
                            11:03:00.961	error	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:351:5)
                            11:03:00.961	error	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                            11:03:00.962	error	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                            

                            Ich bin gerade mit meinem Latein am Ende und hoffe ihr habt noch eine Idee.

                            Viele Grüße
                            Flo

                            Dominik F.D 1 Antwort Letzte Antwort
                            0
                            • S Sesamstrasse

                              Hallo zusammen,
                              ich kriege das Skript leider nicht zum laufen und steh gerade auf den Schlauch. Ich habe die Standard Funktion für Fenster und Türen vom IoBroker verwendet.
                              a3c111ae-e2a3-4c76-a0da-94e1c9d1b31f-image.png

                              Und diese meinen Sensoren zugeordnet.
                              50eb9b5e-65cd-4d91-92f9-9d1c75c6555a-image.png

                              Im script habe ich die ids (habs auch mit dem Namen probiert) eingetragen.

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

                              leider schmeißt das Skript nach dem Start immer viele Warnungen, dann Fehler und bricht ab.
                              Says und EventLog habe ich auf false.

                              11:03:00.878	info	javascript.0 (5215) Start javascript script.js.common.Messages.WindowDoorStatus
                              11:03:00.897	info	javascript.0 (5215) script.js.common.Messages.WindowDoorStatus: starting Fensterskript, Version 1.6.15
                              11:03:00.899	info	javascript.0 (5215) script.js.common.Messages.WindowDoorStatus: registered 0 subscriptions and 0 schedules
                              11:03:00.927	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:325:26)
                              11:03:00.928	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                              11:03:00.928	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                              11:03:00.929	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                              11:03:00.932	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:326:35)
                              11:03:00.932	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                              11:03:00.933	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                              11:03:00.933	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                              11:03:00.937	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:327:37)
                              11:03:00.937	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                              11:03:00.938	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                              11:03:00.938	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                              11:03:00.940	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:328:32)
                              11:03:00.940	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                              11:03:00.941	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                              11:03:00.941	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                              11:03:00.943	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:329:30)
                              11:03:00.944	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                              11:03:00.944	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                              11:03:00.945	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                              11:03:00.949	warn	javascript.0 (5215) at init (script.js.common.Messages.WindowDoorStatus:341:27)
                              11:03:00.949	warn	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:349:5)
                              11:03:00.950	warn	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                              11:03:00.951	warn	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                              11:03:00.960	error	javascript.0 (5215) at CreateRoomsWithOpenDoorsList (script.js.common.Messages.WindowDoorStatus:866:45)
                              11:03:00.961	error	javascript.0 (5215) at main (script.js.common.Messages.WindowDoorStatus:351:5)
                              11:03:00.961	error	javascript.0 (5215) at InitialSort (script.js.common.Messages.WindowDoorStatus:314:5)
                              11:03:00.962	error	javascript.0 (5215) at Object.<anonymous> (script.js.common.Messages.WindowDoorStatus:278:13)
                              

                              Ich bin gerade mit meinem Latein am Ende und hoffe ihr habt noch eine Idee.

                              Viele Grüße
                              Flo

                              Dominik F.D Offline
                              Dominik F.D Offline
                              Dominik F.
                              schrieb am zuletzt editiert von
                              #652

                              @sesamstrasse

                              Probiere doch mal, überall Tuer zu nutzen. Also als Name der Aufzählung und der ID und im Script. Einfach nur mal als Test.

                              S 1 Antwort Letzte Antwort
                              0
                              • Dominik F.D Dominik F.

                                @sesamstrasse

                                Probiere doch mal, überall Tuer zu nutzen. Also als Name der Aufzählung und der ID und im Script. Einfach nur mal als Test.

                                S Offline
                                S Offline
                                Sesamstrasse
                                schrieb am zuletzt editiert von
                                #653

                                @dominik-f Leider selber Ergebnis. Ich habe jetzt auch noch alle Leerzeichen bei den Räumen raus. Hat aber auch nichts gebracht.

                                1 Antwort Letzte Antwort
                                0
                                • S Offline
                                  S Offline
                                  Sesamstrasse
                                  schrieb am zuletzt editiert von
                                  #654

                                  Ich habe mal ein kleines Testskript gemacht. Bei mir scheint die Funktion zum ermitteln der Räume im Javascript Adapter nicht zu funktionieren.

                                  
                                  const testVar = $('zigbee.0.*.opened'/*Clients*/);
                                  
                                  console.log('test');
                                  testVar.each(function (id, i) {
                                      console.log('*******************');
                                      console.log(id);
                                      let name = getObject(id).common.name;
                                      console.log(name);
                                      let room = getObject(id, 'rooms').enumNames[0];
                                      if (typeof room == 'object') room = room.de;
                                      console.log(room);
                                  
                                  });
                                  

                                  liefert das Ergebnis

                                  14:40:20.880	info	javascript.0 (5215) script.js.TestJs: test
                                  14:40:20.881	info	javascript.0 (5215) script.js.TestJs: *******************
                                  14:40:20.883	info	javascript.0 (5215) script.js.TestJs: zigbee.0.00158d0007bf12fa.opened
                                  14:40:20.883	info	javascript.0 (5215) script.js.TestJs: Is open
                                  14:40:20.884	info	javascript.0 (5215) script.js.TestJs: undefined
                                  14:40:20.884	info	javascript.0 (5215) script.js.TestJs: *******************
                                  14:40:20.884	info	javascript.0 (5215) script.js.TestJs: zigbee.0.00158d0007d11bc3.opened
                                  14:40:20.885	info	javascript.0 (5215) script.js.TestJs: Is open
                                  14:40:20.885	info	javascript.0 (5215) script.js.TestJs: undefined
                                  14:40:20.886	info	javascript.0 (5215) script.js.TestJs: *******************
                                  14:40:20.886	info	javascript.0 (5215) script.js.TestJs: zigbee.0.00158d0007d11fd2.opened
                                  14:40:20.892	info	javascript.0 (5215) script.js.TestJs: Is open
                                  14:40:20.893	info	javascript.0 (5215) script.js.TestJs: undefined
                                  

                                  ....

                                  S 1 Antwort Letzte Antwort
                                  0
                                  • S Sesamstrasse

                                    Ich habe mal ein kleines Testskript gemacht. Bei mir scheint die Funktion zum ermitteln der Räume im Javascript Adapter nicht zu funktionieren.

                                    
                                    const testVar = $('zigbee.0.*.opened'/*Clients*/);
                                    
                                    console.log('test');
                                    testVar.each(function (id, i) {
                                        console.log('*******************');
                                        console.log(id);
                                        let name = getObject(id).common.name;
                                        console.log(name);
                                        let room = getObject(id, 'rooms').enumNames[0];
                                        if (typeof room == 'object') room = room.de;
                                        console.log(room);
                                    
                                    });
                                    

                                    liefert das Ergebnis

                                    14:40:20.880	info	javascript.0 (5215) script.js.TestJs: test
                                    14:40:20.881	info	javascript.0 (5215) script.js.TestJs: *******************
                                    14:40:20.883	info	javascript.0 (5215) script.js.TestJs: zigbee.0.00158d0007bf12fa.opened
                                    14:40:20.883	info	javascript.0 (5215) script.js.TestJs: Is open
                                    14:40:20.884	info	javascript.0 (5215) script.js.TestJs: undefined
                                    14:40:20.884	info	javascript.0 (5215) script.js.TestJs: *******************
                                    14:40:20.884	info	javascript.0 (5215) script.js.TestJs: zigbee.0.00158d0007d11bc3.opened
                                    14:40:20.885	info	javascript.0 (5215) script.js.TestJs: Is open
                                    14:40:20.885	info	javascript.0 (5215) script.js.TestJs: undefined
                                    14:40:20.886	info	javascript.0 (5215) script.js.TestJs: *******************
                                    14:40:20.886	info	javascript.0 (5215) script.js.TestJs: zigbee.0.00158d0007d11fd2.opened
                                    14:40:20.892	info	javascript.0 (5215) script.js.TestJs: Is open
                                    14:40:20.893	info	javascript.0 (5215) script.js.TestJs: undefined
                                    

                                    ....

                                    S Offline
                                    S Offline
                                    Sesamstrasse
                                    schrieb am zuletzt editiert von Sesamstrasse
                                    #655

                                    Ich habe es gelöst. Der javascript Adapter kriegt Änderungen an den Aufzählungen Raum/Funktion nicht mit... Man muss erst alles Konfigurieren, dann den Javascript Adapter neustarten und dann funktioniert auch das Skript...

                                    A bug or a feature? :)

                                    link text

                                    Dominik F.D 1 Antwort Letzte Antwort
                                    0
                                    • S Sesamstrasse

                                      Ich habe es gelöst. Der javascript Adapter kriegt Änderungen an den Aufzählungen Raum/Funktion nicht mit... Man muss erst alles Konfigurieren, dann den Javascript Adapter neustarten und dann funktioniert auch das Skript...

                                      A bug or a feature? :)

                                      link text

                                      Dominik F.D Offline
                                      Dominik F.D Offline
                                      Dominik F.
                                      schrieb am zuletzt editiert von
                                      #656

                                      @sesamstrasse

                                      Okay super, ich bin davon ausgegangen, dass du dies gemacht hast, da es auch in der Anleitung steht :)

                                      Nach der Zuweisung, bzw. dem anlegen neuer Aufzählungspunkte ist es empfehlenswert die JS Instanz neu zu starten da diese bei Aufzählungsänderungen gerne mal "zickt" was dann zu Skriptfehlern führt.
                                      
                                      S 1 Antwort Letzte Antwort
                                      0
                                      • Dominik F.D Dominik F.

                                        @sesamstrasse

                                        Okay super, ich bin davon ausgegangen, dass du dies gemacht hast, da es auch in der Anleitung steht :)

                                        Nach der Zuweisung, bzw. dem anlegen neuer Aufzählungspunkte ist es empfehlenswert die JS Instanz neu zu starten da diese bei Aufzählungsänderungen gerne mal "zickt" was dann zu Skriptfehlern führt.
                                        
                                        S Offline
                                        S Offline
                                        Sesamstrasse
                                        schrieb am zuletzt editiert von
                                        #657

                                        @dominik-f Ich könnte schwören, dass ich das bei meinem ersten Versuch auch getan habe. ;) Aber daran lag es bei mir definitiv.

                                        S 1 Antwort Letzte Antwort
                                        1
                                        • S Sesamstrasse

                                          @dominik-f Ich könnte schwören, dass ich das bei meinem ersten Versuch auch getan habe. ;) Aber daran lag es bei mir definitiv.

                                          S Offline
                                          S Offline
                                          Sesamstrasse
                                          schrieb am zuletzt editiert von
                                          #658

                                          Das zweite Problem war, dass ich die ids der Aufzählung door/window verwendet habe. Darum hat es zuerst nicht funktioniert. Das Skript geht explizit auf die DE Anzeigetexte. Darum ging es beim ersten Versuch nicht, als ich den JS Adapter durchgestartet habe.

                                          Jetzt macht es Sinn.

                                          Dominik F.D 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          439

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe