Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Via flot.0 alle Charts abfragen

    NEWS

    • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?

    • Monatsrückblick – September 2025

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    Via flot.0 alle Charts abfragen

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

      Ich bekomme es einfach nicht hin.
      Mit anderen Datenpunkten geht es.
      Hier mein Versuch:

      // Sucht alle States, deren ID exakt mit 'flot.0.' beginnt, gefolgt von beliebigen Zeichen.
      const GCSCH_FlotIDs = "state [ state.id = flot.0.* ]"

      let LVA_Tabelle = []
      // Die $()-Funktion liefert die ioBroker-Objekte als jQuery-ähnliches Objekt zurück.
      LVA_Tabelle = Array.prototype.slice.apply ( $ ( GCSCH_FlotIDs ))

      console.log ( LVA_Tabelle

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

        @elektron60
        Unter "flot.0" gibt es keine Datenpunkte. Die Objekte sind vom Typ "chart".

        E 1 Reply Last reply Reply Quote 0
        • E
          elektron60 @paul53 last edited by

          @paul53

          Genau, ich möchte für jedes Chart den Namen und die URL abfragen. Dafür suche ich eine Lösung.

          M 1 Reply Last reply Reply Quote 0
          • M
            MCU @elektron60 last edited by

            @elektron60 Die Presets von flot in das flotDPArr setzen

            let flotDPArr = ['flot.0.test'];
            
            flotDPArr.forEach(dp => {
                getName(dp)
                getUrl(dp);
            });
            
            function getName(dp){
                let obj = getObject(dp);
                if (obj && obj.common && obj.common.name) {
                    let name = obj.common.name
                    log('Name: '+name);
                } else {
                    log(`Kein Name gefunden bei: ${dp}`);
                }
            }
            
            function getUrl(dp) {
                let obj = getObject(dp);
                if (obj && obj.native && obj.native.url) {
                    let url = obj.native.url;
                    log('URL: '+url);
                } else {
                    log(`Kein URL-Feld gefunden bei: ${dp}`);
                }
            }
            
            E 1 Reply Last reply Reply Quote 0
            • E
              elektron60 @MCU last edited by

              @mcu

              Danke, das funktioniert super.
              Jetzt brauche ich noch alle vorhandenen Namen in einem Array.
              Dann kann ich in einer Schleife alle durchgehen und etwas damit machen.

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

              Support us

              ioBroker
              Community Adapters
              Donate

              953
              Online

              32.4k
              Users

              81.3k
              Topics

              1.3m
              Posts

              javascript
              3
              5
              89
              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