Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Status von Aufzählung in JS Regelmäßig abfragen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Status von Aufzählung in JS Regelmäßig abfragen

    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      NightWatcher last edited by

      Ich stehe auf dem Schlauch, und denke, dass ich es eigentlich grundsätzlich begriffen habe, wie die Abfrage zu erfolgen hat.

      Leider ist mein Objekt in Javascript aber immer leer.

      Dabei ist es egal, ob ich das "F" von Fensterkontakt gross oder klein schreibe. Das Ergebnis bleibt das gleiche. Bevor ich hier kein Ergebnis habe, brauche ich in meiner weiteren Programmierung gar nicht weiter machen :?
      1534_bild002.png
      1534_bild003.png

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

        In der Aufzählung sind nur Datenpunkte (state). Versuche es mal so:

        var fensterkontakt = $('state(functions=Fensterkontakt)');
        fensterkontakt.each(function (id, i) {
            log(id);
        });
        
        1 Reply Last reply Reply Quote 0
        • N
          NightWatcher last edited by

          Danke für deine Unterstützung. Leider gibt mir dein Code aber ebenfalls NICHTS aus :?

          Edit: Habs. Danke für deinen Schubser:

          var fensterkontakt = $('state(functions="fensterkontakt")');
          
              log(JSON.stringify(fensterkontakt));
          

          Bei mir funktioniert es nur mit Hochkommata :geek:

          1 Reply Last reply Reply Quote 0
          • N
            NightWatcher last edited by

            Und hier noch mein halbfertiger Code für die Nachwelt 😉

            Mein Schädel brummt - reicht für heute :lol:

            createState('Fensterkontakt.Offen.Anzahl', 0);
            createState('Fensterkontakt.Offen.Text', '');
            createState('Fensterkontakt.Gekippt.Anzahl', 0);
            createState('Fensterkontakt.Gekippt.Text', '');
            
            var fensterkontakt = $('state(functions="fensterkontakt")');
            
            setInterval(function () {
                var AnzahlOffen = 0;
                var TextOffen = 'Folgende Fenster sind offen: ';
                var AnzahlGekippt = 0;
                var TextGekippt = 'Folgende Fenster sind gekippt: ';
                fensterkontakt.each(function(id) {
                    // 0 = Geschlossen
                    // 1 = Offen
                    // 2 = Gekippt
                    var val = getState(id).val;
                    var obj = getObject(id);
            
                    if(val > 0)
                    {
                        if(val == 1)
                        {
                            AnzahlOffen++;
                            TextOffen = TextOffen + obj.common.name + ', ';
                        }
                        else if(val == 2)
                        {
                            AnzahlGekippt++;
                            TextGekippt = TextGekippt + obj.common.name + ', ';
                        }
                    }
                });
            
                setState("Fensterkontakt.Offen.Anzahl", AnzahlOffen); 
                setState("Fensterkontakt.Offen.Text", TextOffen.substring(0, TextOffen.length - 2));
                setState("Fensterkontakt.Gekippt.Anzahl", AnzahlGekippt);
                setState("Fensterkontakt.Gekippt.Text", TextGekippt.substring(0, TextGekippt.length - 2));
            }, 1000);
            
            
            1 Reply Last reply Reply Quote 0
            • First post
              Last post

            Support us

            ioBroker
            Community Adapters
            Donate

            808
            Online

            31.7k
            Users

            79.8k
            Topics

            1.3m
            Posts

            2
            4
            1628
            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