Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Hilfe bei getEnum

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Hilfe bei getEnum

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

      Hallo zusammen,

      Ich brauche mal eure Hilfe. Mit der Funktion getEnum("rooms") erhält man ja eine Liste aller Räume, die man angelegt hat.

      Nun möchte ich aber gerne eine Aufzählung einlesen, die fensterkontakte heisst. Ersetze ich oben "rooms" durch "fensterkontakte" , bekomme ich keine Rückgabe, auch nicht, wenn ich "functions.fensterkontakte" übergebe.

      Mache ich hier irgendetwas falsch, oder geht das nur mit "rooms" und "functions", also den Oberkategorien?

      Danke und Gruß
      Danyo

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

        Was genau hast du vor?

        Du kannst z.B. sowas verwenden:

        $('channel(functions=fensterkontakte)[state.id=*.STATE]').each(function (id, i) {
            var status = getState(id).val;
            log(id + ': ' + status);
        });
        

        Das liest dir jeden Wert aus der Aufzählung "fensterkontakte" aus bei dem die State ID auf .STATE endet..

        Du kannst auch mit dem getEnum('functions'); arbeiten - und dann durchlaufen lassen bis du deine Fensterkontakte gefunden hast..
        z.B. so:

        getEnums('functions').forEach(function (obj) {
            if (obj.id === 'enum.functions.fensterkontakte') {
                log(obj.members);
            }
        });
        

        (Bitte Groß-/Kleinschreibung bei der Angabe beachten.. Wenn deine Aufzählung Fensterkontakte heißt, du aber nach fensterkontakte fragst, bekommst du nichts zurück!)

        Gruß

        1 Reply Last reply Reply Quote 0
        • D
          danyo80 last edited by danyo80

          Hi BuZZy,

          danke erstmal für die Antwort.

          Ich möchte in meiner Visualisierung für meine Fenstersensoren einen Status anzeigen. Für die Visualisierung nutze ich das Material Theme von Uhla. Dort hat man die Möglichkeit sich States anzeigen zu lassen. Diese basieren aber auf numerischen Werten. Meine (Homematic) Fenstersensoren liefern aber "true" oder "false". Von daher wollte ich mir per Skript einen zusätzlichen Datenpunkt anlegen, welche dann für den korrespondierenden Fensterkontakt für True eine 1 anzeigt und für False eine 0.

          Damit ich das nicht für jeden Kontakt machen muss, wollte ich die Aufzählung auslesen, und den Code etwas generischer halten.

          Oder gibt es noch ne bessere Lösung. Bin für alle Vorschläge offen 🙂

          Danke und Gruß
          Danyo

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

          Support us

          ioBroker
          Community Adapters
          Donate

          591
          Online

          31.8k
          Users

          80.0k
          Topics

          1.3m
          Posts

          2
          3
          329
          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