Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Problem mit "Fenster offen Script"

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    1.6k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    667

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    1.2k

Problem mit "Fenster offen Script"

Geplant Angeheftet Gesperrt Verschoben JavaScript
71 Beiträge 6 Kommentatoren 4.2k Aufrufe 5 Beobachtet
  • Ä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.
  • werner2000xW werner2000x

    Ich bin doch jetzt neuen script, da es mir einfacher ist:

    const ids = Array.prototype.slice.apply($("(functions=window)"));
     
    on({id: ids, change: "ne"}, async function() {
        let count = 0;
        for (let id of ids) {
            if (getState(id).val) count++;
        }
        setStateAsync("javascript.0.FensterUeberwachung.DoorsOpen", count, true);
    });
    
    HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von
    #61

    @werner2000x sagte in Problem mit "Fenster offen Script":

    Ich bin doch jetzt neuen script:

    sollst du aber nicht

    kein Support per PN! - Fragen im Forum stellen -
    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
    Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    1 Antwort Letzte Antwort
    0
    • werner2000xW werner2000x

      Ich bin doch jetzt neuen script, da es mir einfacher ist:

      const ids = Array.prototype.slice.apply($("(functions=window)"));
       
      on({id: ids, change: "ne"}, async function() {
          let count = 0;
          for (let id of ids) {
              if (getState(id).val) count++;
          }
          setStateAsync("javascript.0.FensterUeberwachung.DoorsOpen", count, true);
      });
      
      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #62

      @werner2000x sagte: neuen script

      Dann ergänze es durch Log-Ausgaben:

      const ids = Array.prototype.slice.apply($("(functions=window)"));
      log(ids);
       
      on({id: ids, change: "ne"}, async function() {
          let count = 0;
          for (let id of ids) {
              if (getState(id).val) count++;
          }
          setStateAsync("javascript.0.FensterUeberwachung.DoorsOpen", count, true);
          log('Anzahl offen: ' + count);
      });
      

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

      werner2000xW 1 Antwort Letzte Antwort
      2
      • paul53P paul53

        @werner2000x sagte: neuen script

        Dann ergänze es durch Log-Ausgaben:

        const ids = Array.prototype.slice.apply($("(functions=window)"));
        log(ids);
         
        on({id: ids, change: "ne"}, async function() {
            let count = 0;
            for (let id of ids) {
                if (getState(id).val) count++;
            }
            setStateAsync("javascript.0.FensterUeberwachung.DoorsOpen", count, true);
            log('Anzahl offen: ' + count);
        });
        
        werner2000xW Online
        werner2000xW Online
        werner2000x
        schrieb am zuletzt editiert von
        #63

        @paul53 Hier der Log:

        javascript.0	16:11:59.416	info	script.js.Meine_Geräte.FensterOffenWarung: Anzahl offen: 3
        

        Raspi4 8 GB mit Aqara Zigbee USB, iob
        Innogy Smarthome
        Bosch Bridge 2
        HUE Bridge
        OpenWB Wallbox mit EVU Kit
        Google Nest Pro Hub
        HA auf uGreen dxp4800

        paul53P 1 Antwort Letzte Antwort
        0
        • werner2000xW werner2000x

          @paul53 Hier der Log:

          javascript.0	16:11:59.416	info	script.js.Meine_Geräte.FensterOffenWarung: Anzahl offen: 3
          
          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #64

          @werner2000x sagte: Hier der Log:

          Wo ist der Log aus Zeile 2?

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

          werner2000xW 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @werner2000x sagte: Hier der Log:

            Wo ist der Log aus Zeile 2?

            werner2000xW Online
            werner2000xW Online
            werner2000x
            schrieb am zuletzt editiert von
            #65

            @paul53 Log aus 2. Zeile:

            avascript.0	16:15:19.420	info	script.js.Meine_Geräte.FensterOffenWarung: [ 'innogy-smarthome.0.Esszimmer.Fenstersensor-Esszimmer.Fenstersensor-Esszimmer.IsOpen', 'innogy-smarthome.0.Flur.Tür-und-Fenstersensor-1.Tür-und-Fenstersensor-1.IsOpen', 'innogy-smarthome.0.Küche.Fenstersensor-Küche.Fenstersensor-Küche.IsOpen', 'innogy-smarthome.0.Schlafzimmer.Fenster.WDS.IsOpen', 'zigbee.0.00158d008b158119.contact', 'zigbee.0.00158d008b159b8c.contact', 'zigbee.0.00158d008b159c0a.contact', 'zigbee.0.00158d008b31a568.contact' ]
            javascript.0	16:15:19.421	info	script.js.Meine_Geräte.FensterOffenWarung: registered 8 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
            

            Raspi4 8 GB mit Aqara Zigbee USB, iob
            Innogy Smarthome
            Bosch Bridge 2
            HUE Bridge
            OpenWB Wallbox mit EVU Kit
            Google Nest Pro Hub
            HA auf uGreen dxp4800

            paul53P 1 Antwort Letzte Antwort
            0
            • werner2000xW werner2000x

              @paul53 Log aus 2. Zeile:

              avascript.0	16:15:19.420	info	script.js.Meine_Geräte.FensterOffenWarung: [ 'innogy-smarthome.0.Esszimmer.Fenstersensor-Esszimmer.Fenstersensor-Esszimmer.IsOpen', 'innogy-smarthome.0.Flur.Tür-und-Fenstersensor-1.Tür-und-Fenstersensor-1.IsOpen', 'innogy-smarthome.0.Küche.Fenstersensor-Küche.Fenstersensor-Küche.IsOpen', 'innogy-smarthome.0.Schlafzimmer.Fenster.WDS.IsOpen', 'zigbee.0.00158d008b158119.contact', 'zigbee.0.00158d008b159b8c.contact', 'zigbee.0.00158d008b159c0a.contact', 'zigbee.0.00158d008b31a568.contact' ]
              javascript.0	16:15:19.421	info	script.js.Meine_Geräte.FensterOffenWarung: registered 8 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
              
              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von paul53
              #66

              @werner2000x sagte: Log aus 2. Zeile

              Da sind doch die 8 Datenpunkt-IDs der Fenster!
              Liefert "contact" ebenfalls true bei "offen"?

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

              werner2000xW 1 Antwort Letzte Antwort
              1
              • paul53P paul53

                @werner2000x sagte: Log aus 2. Zeile

                Da sind doch die 8 Datenpunkt-IDs der Fenster!
                Liefert "contact" ebenfalls true bei "offen"?

                werner2000xW Online
                werner2000xW Online
                werner2000x
                schrieb am zuletzt editiert von werner2000x
                #67

                @paul53 Die Fenster isopen (innogy) liefern 0 bei zu, die contact-event 1 bei zu.

                Kategorie3.jpg

                Raspi4 8 GB mit Aqara Zigbee USB, iob
                Innogy Smarthome
                Bosch Bridge 2
                HUE Bridge
                OpenWB Wallbox mit EVU Kit
                Google Nest Pro Hub
                HA auf uGreen dxp4800

                paul53P 1 Antwort Letzte Antwort
                0
                • werner2000xW werner2000x

                  @paul53 Die Fenster isopen (innogy) liefern 0 bei zu, die contact-event 1 bei zu.

                  Kategorie3.jpg

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #68

                  @werner2000x sagte: contact-event 1 bei zu.

                  Dann modifiziere die Schleife:

                      for (let id of ids) {
                          let open = getState(id).val;
                          if(id.includes('contact')) open = !open;
                          if(open) count++;
                      }
                  

                  Ich würde allerdings eine Vereinheitlichung per Alias bevorzugen, wie @Codierknecht bereits erwähnte.

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

                  werner2000xW 1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @werner2000x sagte: contact-event 1 bei zu.

                    Dann modifiziere die Schleife:

                        for (let id of ids) {
                            let open = getState(id).val;
                            if(id.includes('contact')) open = !open;
                            if(open) count++;
                        }
                    

                    Ich würde allerdings eine Vereinheitlichung per Alias bevorzugen, wie @Codierknecht bereits erwähnte.

                    werner2000xW Online
                    werner2000xW Online
                    werner2000x
                    schrieb am zuletzt editiert von werner2000x
                    #69

                    @paul53 Danke für die Hilfe.
                    Es kommt der Fehler "open is not defined"

                    onst ids = Array.prototype.slice.apply($("(functions=window)"));
                    log(ids);
                     
                    on({id: ids, change: "ne"}, async function() {
                        let count = 0;
                        for (let id of ids) {
                            if (getState(id).val) count++;
                             if(id.includes('contact')) open = !open;
                            if(open) count++;
                        }
                        setStateAsync("javascript.0.FensterUeberwachung.DoorsOpen", count, true);
                        log('Anzahl offen: ' + count);
                        	
                        
                    });
                    

                    Raspi4 8 GB mit Aqara Zigbee USB, iob
                    Innogy Smarthome
                    Bosch Bridge 2
                    HUE Bridge
                    OpenWB Wallbox mit EVU Kit
                    Google Nest Pro Hub
                    HA auf uGreen dxp4800

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • werner2000xW werner2000x

                      @paul53 Danke für die Hilfe.
                      Es kommt der Fehler "open is not defined"

                      onst ids = Array.prototype.slice.apply($("(functions=window)"));
                      log(ids);
                       
                      on({id: ids, change: "ne"}, async function() {
                          let count = 0;
                          for (let id of ids) {
                              if (getState(id).val) count++;
                               if(id.includes('contact')) open = !open;
                              if(open) count++;
                          }
                          setStateAsync("javascript.0.FensterUeberwachung.DoorsOpen", count, true);
                          log('Anzahl offen: ' + count);
                          	
                          
                      });
                      
                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #70

                      @werner2000x sagte: "contact event" jedoch immer noch als offen gewertet.

                      Du solltest die bestehende Schleife modifizieren und nicht eine weitere Schleife hinzufügen.

                      const ids = Array.prototype.slice.apply($("(functions=window)"));
                      // log(ids);
                       
                      on({id: ids, change: "ne"}, async function() {
                          let count = 0;
                          for (let id of ids) {
                              let open = getState(id).val;
                              if(id.includes('contact')) open = !open;
                              if(open) count++;
                          }
                          setStateAsync("javascript.0.FensterUeberwachung.DoorsOpen", count, true);
                          log('Anzahl offen: ' + count);
                      });
                      

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

                      werner2000xW 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @werner2000x sagte: "contact event" jedoch immer noch als offen gewertet.

                        Du solltest die bestehende Schleife modifizieren und nicht eine weitere Schleife hinzufügen.

                        const ids = Array.prototype.slice.apply($("(functions=window)"));
                        // log(ids);
                         
                        on({id: ids, change: "ne"}, async function() {
                            let count = 0;
                            for (let id of ids) {
                                let open = getState(id).val;
                                if(id.includes('contact')) open = !open;
                                if(open) count++;
                            }
                            setStateAsync("javascript.0.FensterUeberwachung.DoorsOpen", count, true);
                            log('Anzahl offen: ' + count);
                        });
                        
                        werner2000xW Online
                        werner2000xW Online
                        werner2000x
                        schrieb am zuletzt editiert von
                        #71

                        @paul53 sorry, habe falsch eingefügt. Jetzt klappt es. :-)

                        Raspi4 8 GB mit Aqara Zigbee USB, iob
                        Innogy Smarthome
                        Bosch Bridge 2
                        HUE Bridge
                        OpenWB Wallbox mit EVU Kit
                        Google Nest Pro Hub
                        HA auf uGreen dxp4800

                        1 Antwort Letzte Antwort
                        0

                        Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                        Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                        Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                        Registrieren Anmelden
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        577

                        Online

                        32.9k

                        Benutzer

                        82.9k

                        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