Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Variable in ID-Namen verwenden?

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Variable in ID-Namen verwenden?

Scheduled Pinned Locked Moved Blockly
blockly
62 Posts 6 Posters 8.1k Views 9 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • paul53P paul53

    Anmerkung: Die Namen müssen für getIdByName() eindeutig sein, d.h. es darf kein weiteres Objekt mit diesem Namen existieren.

    HomoranH Do not disturb
    HomoranH Do not disturb
    Homoran
    Global Moderator Administrators
    wrote on last edited by Homoran
    #8

    @paul53
    Klar - werde auch noch einiges umbenennen müssen, resp. komplett neu machen, wenn ich das Grundgerüst erweitere.
    Habe zum Beispiel bereits im Wohnzimmer die Balkon-Tür und das Fenster.
    Räume und unter WZ noch Tür und Fenster.
    Die Struktur müsste dann wieder einheitlich sein, auch wenn es nur einen Rolladen gibt müsste es dann Raum - Fenster - states sein

    Im Endeffekt soll es nur noch ein Skript werden, das diese DP nacheinander abarbeitet.
    Aber das ist Zukuunftsmusik

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    1 Reply Last reply
    0
    • HomoranH Homoran

      Besteht eigentlich in Blockly die Möglichkeit Zustände von IDs variabel abzufragen.
      Voraussetzung ist natürlich, dass die IDs (oder die Namen??) systematisch benannt sind.

      Ich habe für jeden Raum das gleiche Skkript und würde gerne nach dem Kopiern nur den Raumnamen in einer Variable ändern:

      Rollladensteuerung_Blockly01.png

      rantanplanR Online
      rantanplanR Online
      rantanplan
      wrote on last edited by
      #9

      @Homoran sagte in Variable in ID-Namen verwenden?:

      Besteht eigentlich in Blockly die Möglichkeit Zustände von IDs variabel abzufragen.
      Voraussetzung ist natürlich, dass die IDs (oder die Namen??) systematisch benannt sind.

      Ich habe für jeden Raum das gleiche Skkript und würde gerne nach dem Kopiern nur den Raumnamen in einer Variable ändern:

      Werte von einer ID-Variablen abfragen geht leider (noch) nicht in Blockly.
      Werte setzen/verändern aber schon.
      Ich stand vor der gleichen Problematik bei meiner Heizungssteuerung. Jede Menge Räume und alle einzeln steuerbar.
      Da die Logik in jedem Raum gleich ist und ich grundsätzlich ein "fauler Hund" bin, wollte ich die Scripte einfach kopieren.

      Damit ich nicht jedes Script komplett überarbeiten musste, habe ich eine "Initialisierung" Funktion eingebaut.
      Dort werden alle raumspezifischen Daten in lokale Variablen gesetzt. Wenn der Trigger auslöst, wird als erstes die Initialisierung aufgerufen.
      Somit habe ich nur eine Stelle an der ich die Parameter anpassen muss.
      Init_001.png

      Und hier der "schreibe" Baustein mit dem man ID's, die in einer Variablen stehen, ändern kann.
      Init_002.png

      Rantanplan

      CCU3 / MS Server 2019(VM) / Scripten mit Blockly

      HomoranH 1 Reply Last reply
      2
      • rantanplanR rantanplan

        @Homoran sagte in Variable in ID-Namen verwenden?:

        Besteht eigentlich in Blockly die Möglichkeit Zustände von IDs variabel abzufragen.
        Voraussetzung ist natürlich, dass die IDs (oder die Namen??) systematisch benannt sind.

        Ich habe für jeden Raum das gleiche Skkript und würde gerne nach dem Kopiern nur den Raumnamen in einer Variable ändern:

        Werte von einer ID-Variablen abfragen geht leider (noch) nicht in Blockly.
        Werte setzen/verändern aber schon.
        Ich stand vor der gleichen Problematik bei meiner Heizungssteuerung. Jede Menge Räume und alle einzeln steuerbar.
        Da die Logik in jedem Raum gleich ist und ich grundsätzlich ein "fauler Hund" bin, wollte ich die Scripte einfach kopieren.

        Damit ich nicht jedes Script komplett überarbeiten musste, habe ich eine "Initialisierung" Funktion eingebaut.
        Dort werden alle raumspezifischen Daten in lokale Variablen gesetzt. Wenn der Trigger auslöst, wird als erstes die Initialisierung aufgerufen.
        Somit habe ich nur eine Stelle an der ich die Parameter anpassen muss.
        Init_001.png

        Und hier der "schreibe" Baustein mit dem man ID's, die in einer Variablen stehen, ändern kann.
        Init_002.png

        HomoranH Do not disturb
        HomoranH Do not disturb
        Homoran
        Global Moderator Administrators
        wrote on last edited by Homoran
        #10

        @rantanplan sagte in Variable in ID-Namen verwenden?:

        Damit ich nicht jedes Script komplett überarbeiten musste, habe ich eine "Initialisierung" Funktion eingebaut.

        That's it!!!!

        So was wollte ich haben!
        Aber auf die Idee, die GANZE Id mitzugeben bin ich nicht gekommen

        Danke!

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        1 Reply Last reply
        0
        • rantanplanR Online
          rantanplanR Online
          rantanplan
          wrote on last edited by
          #11

          Zitat Homoran

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          :relaxed: :relaxed: :relaxed:

          Rantanplan

          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

          HomoranH 1 Reply Last reply
          0
          • rantanplanR rantanplan

            Zitat Homoran

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            :relaxed: :relaxed: :relaxed:

            HomoranH Do not disturb
            HomoranH Do not disturb
            Homoran
            Global Moderator Administrators
            wrote on last edited by
            #12

            @rantanplan

            Success!

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            1 Reply Last reply
            0
            • paul53P Offline
              paul53P Offline
              paul53
              wrote on last edited by paul53
              #13

              Die Blöcke "schreibe", "binde direct_oid_src" und "Falls Objekt" sind die einzigen Blöcke, an die die Datenpunkt-ID auch als String übergeben werden kann. Es fehlt ein entsprechender Block zum Einlesen (getState()).
              So etwas ist in Blockly möglich:
              Blockly_Trigger_getIdByName.JPG
              Die Javascript-Funktion ist ganz einfach:

              return getIdByName(name);
              

              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

              rantanplanR 2 Replies Last reply
              0
              • paul53P paul53

                Die Blöcke "schreibe", "binde direct_oid_src" und "Falls Objekt" sind die einzigen Blöcke, an die die Datenpunkt-ID auch als String übergeben werden kann. Es fehlt ein entsprechender Block zum Einlesen (getState()).
                So etwas ist in Blockly möglich:
                Blockly_Trigger_getIdByName.JPG
                Die Javascript-Funktion ist ganz einfach:

                return getIdByName(name);
                
                rantanplanR Online
                rantanplanR Online
                rantanplan
                wrote on last edited by
                #14

                @paul53 sagte in Variable in ID-Namen verwenden?:

                ..... Es fehlt ein entsprechender Block zum Einlesen (getState()).

                Ja, den hätte ich ja auch gerne. Ein issue dazu ist aber mal "abgeblockt" worden.
                issue 154

                Rantanplan

                CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                HomoranH 1 Reply Last reply
                0
                • rantanplanR rantanplan

                  @paul53 sagte in Variable in ID-Namen verwenden?:

                  ..... Es fehlt ein entsprechender Block zum Einlesen (getState()).

                  Ja, den hätte ich ja auch gerne. Ein issue dazu ist aber mal "abgeblockt" worden.
                  issue 154

                  HomoranH Do not disturb
                  HomoranH Do not disturb
                  Homoran
                  Global Moderator Administrators
                  wrote on last edited by
                  #15

                  @rantanplan
                  Das Issue ist noch offen - ich schreib da mal was rein ;-)

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  1 Reply Last reply
                  0
                  • paul53P paul53

                    Die Blöcke "schreibe", "binde direct_oid_src" und "Falls Objekt" sind die einzigen Blöcke, an die die Datenpunkt-ID auch als String übergeben werden kann. Es fehlt ein entsprechender Block zum Einlesen (getState()).
                    So etwas ist in Blockly möglich:
                    Blockly_Trigger_getIdByName.JPG
                    Die Javascript-Funktion ist ganz einfach:

                    return getIdByName(name);
                    
                    rantanplanR Online
                    rantanplanR Online
                    rantanplan
                    wrote on last edited by
                    #16

                    @paul53 sagte in Variable in ID-Namen verwenden?:

                    So etwas ist in Blockly möglich:

                    Grundsächlich eine gute Idee.

                    Viel, viel schöner wäre es aber hier.
                    Wert.png
                    Dies würde vieles vereinfachen.

                    Diesem Baustein konnte ich seine Funktion noch nicht entlocken.
                    attribut.png

                    Ich hatte gehofft damit geht es. Produziere aber nur Errors.

                    Rantanplan

                    CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                    paul53P 1 Reply Last reply
                    0
                    • rantanplanR rantanplan

                      @paul53 sagte in Variable in ID-Namen verwenden?:

                      So etwas ist in Blockly möglich:

                      Grundsächlich eine gute Idee.

                      Viel, viel schöner wäre es aber hier.
                      Wert.png
                      Dies würde vieles vereinfachen.

                      Diesem Baustein konnte ich seine Funktion noch nicht entlocken.
                      attribut.png

                      Ich hatte gehofft damit geht es. Produziere aber nur Errors.

                      paul53P Offline
                      paul53P Offline
                      paul53
                      wrote on last edited by
                      #17

                      @rantanplan sagte:

                      Diesem Baustein konnte ich seine Funktion noch nicht entlocken.

                      Wo hast Du den gefunden ? Ich finde den Block nicht (Version 3.6.4).

                      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

                      rantanplanR 1 Reply Last reply
                      0
                      • thewhoboxT Offline
                        thewhoboxT Offline
                        thewhobox
                        wrote on last edited by
                        #18

                        Wenn ich das richtig verstanden habe, dann bräuchtet Ihr einen Block so wie hier?
                        164b5008-4b6e-4cd9-a0f6-caa48324806d-grafik.png
                        (Hab ich mal manuell hinzugefügt, noch ohne Funktion)

                        Meine Adapter: emby | discovery
                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        rantanplanR 1 Reply Last reply
                        0
                        • paul53P paul53

                          @rantanplan sagte:

                          Diesem Baustein konnte ich seine Funktion noch nicht entlocken.

                          Wo hast Du den gefunden ? Ich finde den Block nicht (Version 3.6.4).

                          rantanplanR Online
                          rantanplanR Online
                          rantanplan
                          wrote on last edited by
                          #19

                          @paul53 sagte in Variable in ID-Namen verwenden?:

                          @rantanplan sagte:

                          Diesem Baustein konnte ich seine Funktion noch nicht entlocken.

                          Wo hast Du den gefunden ? Ich finde den Block nicht (Version 3.6.4).

                          Ich teste gerade die 4.1.7. Ist irgend wann bei 4.x.x aufgetaucht.

                          Rantanplan

                          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                          1 Reply Last reply
                          0
                          • thewhoboxT thewhobox

                            Wenn ich das richtig verstanden habe, dann bräuchtet Ihr einen Block so wie hier?
                            164b5008-4b6e-4cd9-a0f6-caa48324806d-grafik.png
                            (Hab ich mal manuell hinzugefügt, noch ohne Funktion)

                            rantanplanR Online
                            rantanplanR Online
                            rantanplan
                            wrote on last edited by
                            #20

                            @thewhobox sagte in Variable in ID-Namen verwenden?:

                            Wenn ich das richtig verstanden habe, dann bräuchtet Ihr einen Block so wie hier?
                            164b5008-4b6e-4cd9-a0f6-caa48324806d-grafik.png
                            (Hab ich mal manuell hinzugefügt, noch ohne Funktion)

                            Jepp.

                            Rantanplan

                            CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                            1 Reply Last reply
                            0
                            • thewhoboxT Offline
                              thewhoboxT Offline
                              thewhobox
                              wrote on last edited by thewhobox
                              #21

                              Okay, falls ich es zum laufen bringe soll ich dann ein Pull Request auf Github für ioBroker.javascript machen?
                              @apollon77

                              Oder lieber den Code hier posten damit es jeder selbst hinzufügen kann?

                              @paul53 Ist die funktion getIdByName() global oder von dir selbst erstellt. Ansonsten könnte man dafür auch ein eigenes Block-Element erstellen.

                              Meine Adapter: emby | discovery
                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              rantanplanR paul53P 2 Replies Last reply
                              0
                              • thewhoboxT thewhobox

                                Okay, falls ich es zum laufen bringe soll ich dann ein Pull Request auf Github für ioBroker.javascript machen?
                                @apollon77

                                Oder lieber den Code hier posten damit es jeder selbst hinzufügen kann?

                                @paul53 Ist die funktion getIdByName() global oder von dir selbst erstellt. Ansonsten könnte man dafür auch ein eigenes Block-Element erstellen.

                                rantanplanR Online
                                rantanplanR Online
                                rantanplan
                                wrote on last edited by
                                #22

                                @thewhobox sagte in Variable in ID-Namen verwenden?:

                                Okay, falls ich es zum laufen bringe

                                Ein bisschen mehr Optimismus:relaxed:

                                soll ich dann ein Pull Request auf Github für ioBroker.javascript machen?

                                Wäre, glaub ich, der richtige Weg

                                Kann man auch noch andere Baustein-Wünsche an Dich richten?
                                (Vooorsicht mit der Antwort:relaxed: :relaxed: :relaxed: )

                                Rantanplan

                                CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                thewhoboxT 1 Reply Last reply
                                0
                                • thewhoboxT thewhobox

                                  Okay, falls ich es zum laufen bringe soll ich dann ein Pull Request auf Github für ioBroker.javascript machen?
                                  @apollon77

                                  Oder lieber den Code hier posten damit es jeder selbst hinzufügen kann?

                                  @paul53 Ist die funktion getIdByName() global oder von dir selbst erstellt. Ansonsten könnte man dafür auch ein eigenes Block-Element erstellen.

                                  paul53P Offline
                                  paul53P Offline
                                  paul53
                                  wrote on last edited by
                                  #23

                                  @thewhobox sagte:

                                  Ist die funktion getIdByName() global oder von dir selbst erstellt.

                                  Die Blockly-Funktion ist eine von mir erstellte Funktion, die die Funktion getIdByName(name) des Javascript-Adapters verwendet.

                                  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 Reply Last reply
                                  0
                                  • rantanplanR rantanplan

                                    @thewhobox sagte in Variable in ID-Namen verwenden?:

                                    Okay, falls ich es zum laufen bringe

                                    Ein bisschen mehr Optimismus:relaxed:

                                    soll ich dann ein Pull Request auf Github für ioBroker.javascript machen?

                                    Wäre, glaub ich, der richtige Weg

                                    Kann man auch noch andere Baustein-Wünsche an Dich richten?
                                    (Vooorsicht mit der Antwort:relaxed: :relaxed: :relaxed: )

                                    thewhoboxT Offline
                                    thewhoboxT Offline
                                    thewhobox
                                    wrote on last edited by
                                    #24

                                    @rantanplan sagte in Variable in ID-Namen verwenden?:

                                    Kann man auch noch andere Baustein-Wünsche an Dich richten?

                                    :D jetzt erstmal schauen ob und wie gut der jetzt geht. Danach bin ich offen für alles.
                                    Zum laufen gebracht habe ich ihn schonmal, nur ersetzt er jetzt den alten. Möchte aber beide haben, da per Auswahl oft doch bequemer ist.

                                    Meine Adapter: emby | discovery
                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                    paul53P rantanplanR 2 Replies Last reply
                                    0
                                    • thewhoboxT thewhobox

                                      @rantanplan sagte in Variable in ID-Namen verwenden?:

                                      Kann man auch noch andere Baustein-Wünsche an Dich richten?

                                      :D jetzt erstmal schauen ob und wie gut der jetzt geht. Danach bin ich offen für alles.
                                      Zum laufen gebracht habe ich ihn schonmal, nur ersetzt er jetzt den alten. Möchte aber beide haben, da per Auswahl oft doch bequemer ist.

                                      paul53P Offline
                                      paul53P Offline
                                      paul53
                                      wrote on last edited by
                                      #25

                                      @thewhobox sagte:

                                      da per Auswahl oft doch bequemer ist.

                                      Den Select ID Block kann man doch einfach einhängen.
                                      Blockly_Select_ID.JPG

                                      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

                                      thewhoboxT 1 Reply Last reply
                                      0
                                      • paul53P paul53

                                        @thewhobox sagte:

                                        da per Auswahl oft doch bequemer ist.

                                        Den Select ID Block kann man doch einfach einhängen.
                                        Blockly_Select_ID.JPG

                                        thewhoboxT Offline
                                        thewhoboxT Offline
                                        thewhobox
                                        wrote on last edited by
                                        #26

                                        @paul53 Das ist auch eine sehr gute Idee.
                                        Aaaber damit werden doch auch alle bereits erstellten Skripte geändert. Man müsste also dann in jedem Skript das "Select ID"-Element anhängen und erneut zuordnen.

                                        Meine Adapter: emby | discovery
                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        paul53P 1 Reply Last reply
                                        0
                                        • thewhoboxT thewhobox

                                          @rantanplan sagte in Variable in ID-Namen verwenden?:

                                          Kann man auch noch andere Baustein-Wünsche an Dich richten?

                                          :D jetzt erstmal schauen ob und wie gut der jetzt geht. Danach bin ich offen für alles.
                                          Zum laufen gebracht habe ich ihn schonmal, nur ersetzt er jetzt den alten. Möchte aber beide haben, da per Auswahl oft doch bequemer ist.

                                          rantanplanR Online
                                          rantanplanR Online
                                          rantanplan
                                          wrote on last edited by
                                          #27

                                          @thewhobox sagte in Variable in ID-Namen verwenden?:

                                          @rantanplan sagte in Variable in ID-Namen verwenden?:

                                          Kann man auch noch andere Baustein-Wünsche an Dich richten?

                                          :D jetzt erstmal schauen ob und wie gut der jetzt geht. Danach bin ich offen für alles.

                                          Gute Antwort:relaxed:

                                          Zum laufen gebracht habe ich ihn schonmal, nur ersetzt er jetzt den alten. Möchte aber beide haben, da per Auswahl oft doch bequemer ist.

                                          Der Alte sollte auch drin bleiben, abwärts kompatiebel.

                                          Rantanplan

                                          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          612

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe