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. [Noch eine Frage] Neue enum.functions automatisch erstellen möglich?

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.4k

[Noch eine Frage] Neue enum.functions automatisch erstellen möglich?

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
7 Beiträge 3 Kommentatoren 1.3k Aufrufe 1 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.
  • PeoplesP Offline
    PeoplesP Offline
    Peoples
    schrieb am zuletzt editiert von
    #1

    Hi an die Profis,

    ich würde gerne in einem Script in dem viele Datenpunkte "via on beobachtet bzw. subscribed werden sollen" diese in einer neuen enum.functions - Aufzählung zusammen fassen um eben dann nur ein Subcribe für alles zu machen. Da ich aber eigentlich keine Lust habe diese enum.function händisch anzulegen wollte ich erfragen ob es eine Möglichkeit bzw. einen Befehl gibt diese Aufzählung und die zugehörigen Unterpunkte via Script anzulegen?

    In dem Stil createState…. oder ähnliches.

    Ich beantworte keine Fragen zu Themen via PN

    1 Antwort Letzte Antwort
    0
    • PeoplesP Offline
      PeoplesP Offline
      Peoples
      schrieb am zuletzt editiert von
      #2

      Ich schiebs noch einmal hoch vielleicht hat ja jemand eine idee

      Ich beantworte keine Fragen zu Themen via PN

      1 Antwort Letzte Antwort
      0
      • frankjokeF Offline
        frankjokeF Offline
        frankjoke
        schrieb am zuletzt editiert von
        #3

        Sollte funktionieren, enums sind auch nur objekte mit Type 'enum'!

        Sie schauen in etwa so aus:

        {
          "type": "enum",
          "common": {
            "name": "Keller",
            "desc": "",
            "members": [
              "hm-rpc.0.MEQ1851794.3",
              "hm-rpc.0.MEQ1435726.1",
              "hm-rpc.0.MEQ1851794.2",
              "hm-rpc.0.MEQ1851794.1"
            ]
          },
          "native": {
            "Name": "Keller",
            "TypeName": "ENUM",
            "EnumInfo": ""
          },
          "_id": "enum.rooms.Keller",
          ...
        }
        

        mit createForeignObject oder extendForeignObject sollte man das hinkriegen…, foreign deshalb da der Wert nicht im Adadapter sonder im ioBroker bei den Systemvariablen gespeichert werden muss.

        Frank,

        NUC's, VM's und Raspi's unter Raspian, Ubuntu und Debian zum Testen.
        Adapter die ich selbst beigesteuert habe: BMW, broadlink2, radar2, systeminfo, km200, xs1 und einige im Anmarsch!

        1 Antwort Letzte Antwort
        0
        • paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #4

          Versuche es mal so:

          var ids = [idA, idB, idC];
          
          var obj = {};
          obj.type = 'enum';
          obj.common = {};
          obj.common.name = 'mein Gewerk';
          obj.common.members = ids;
          setObject('enum.functions.meinGewerk', obj);
          
          

          setObject() muss in der JS-Konfiguration freigegeben sein.

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Antwort Letzte Antwort
          0
          • PeoplesP Offline
            PeoplesP Offline
            Peoples
            schrieb am zuletzt editiert von
            #5

            @paul53:

            Versuche es mal so: `

            Funktioniert perfekt! Danke

            Kann man diese enum.function dann auch auf Existenz prüfen? Habe gesehen dass wenn ich mehrmals den gleichen Namen verwende die auch immer wieder erstellt werden. Dies würde ich gerne durch etwas wie "if(nicht existent)dann erstellen" prüfen

            Ich beantworte keine Fragen zu Themen via PN

            1 Antwort Letzte Antwort
            0
            • paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #6

              @peoples:

              Kann man diese enum.function dann auch auf Existenz prüfen? Dies würde ich gerne durch etwas wie "if(nicht existent)dann erstellen" prüfen `

              if(!getObject('enum.functions.meinGewerk')) {
                 erstelle...
              }
              

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              1 Antwort Letzte Antwort
              0
              • PeoplesP Offline
                PeoplesP Offline
                Peoples
                schrieb am zuletzt editiert von
                #7

                @paul53:

                Versuche es mal so: `
                Ist es auch Möglich die Inhalte des Objekts auf existenz zu prüfen?

                bspw.

                enum.function.meinGewerk

                und ich will abfragen ob:" javascript.0.test.testdurchlauf" vorhanden ist. Möchte das gerne verwenden um beim ersten Scriptdurchlauf die Warnings zu unterdrücken.

                Habe da was mit:````
                (object.toSource());

                Ich beantworte keine Fragen zu Themen via PN

                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

                569

                Online

                32.4k

                Benutzer

                81.5k

                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