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. Blockly
  5. Blockly Datenpunkte erstellen

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

Blockly Datenpunkte erstellen

Geplant Angeheftet Gesperrt Verschoben Blockly
blockly
15 Beiträge 5 Kommentatoren 12.7k Aufrufe 6 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.
  • A aleks-83

    Hi,

    ich programmiere nun seit ca. 1,5 Jahren zwischendurch an meiner ioBroker Instanz herum.

    Da das Thema programmieren für mich neu war, habe ich beim Erstellen meiner Blockly Skripte einige ANfänger Fehler gemacht.

    z.B. habe ich die Datenpunkte die in den Skripten genutzt werden, vorher manuell erstellt.
    Jetzt werde ich meine ioBroker Instanz demnächst wohl neu aufesetzen (müssen) weil meine Datenpunkte und Objekte gelöscht habe und sie nicht mehr importieren kann.
    Das will ich zum Anlass nehmen und meine Skripte Absturz sicherer zu machen.

    Ich möchte in jedem Blockly Skript in dem ein Datenpunkt genutzt wird, diesen vorher erstellen.

    Hierzu gibt es ja den System Baustein "Create State".
    Leider finde ich in der Doku keine weiteren Infos darüber, wie man dem so erstellen Datenpunkt dann Attribute zuweist.
    Ich möchte gerne per Blockly Datenpunkte erzeugen und folgendes mitgeben können:

    • Typ (bool, num ...)
    • Min / Max Wert
    • Einheit

    Geht das?

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #2

    @aleks-83 sagte:

    Geht das?

    Ja, siehe hier.

    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
    1
    • A Offline
      A Offline
      aleks-83
      schrieb am zuletzt editiert von
      #3

      Perfekt. Danke.

      Das könnte man evtl. noch in die Doku vom JavaScript Adapter aufnehmen.
      Am besten bei GitHub melden, oder?

      = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
      = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

      Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
      Glasfaser 400

      1 Antwort Letzte Antwort
      0
      • A aleks-83

        Hi,

        ich programmiere nun seit ca. 1,5 Jahren zwischendurch an meiner ioBroker Instanz herum.

        Da das Thema programmieren für mich neu war, habe ich beim Erstellen meiner Blockly Skripte einige ANfänger Fehler gemacht.

        z.B. habe ich die Datenpunkte die in den Skripten genutzt werden, vorher manuell erstellt.
        Jetzt werde ich meine ioBroker Instanz demnächst wohl neu aufesetzen (müssen) weil meine Datenpunkte und Objekte gelöscht habe und sie nicht mehr importieren kann.
        Das will ich zum Anlass nehmen und meine Skripte Absturz sicherer zu machen.

        Ich möchte in jedem Blockly Skript in dem ein Datenpunkt genutzt wird, diesen vorher erstellen.

        Hierzu gibt es ja den System Baustein "Create State".
        Leider finde ich in der Doku keine weiteren Infos darüber, wie man dem so erstellen Datenpunkt dann Attribute zuweist.
        Ich möchte gerne per Blockly Datenpunkte erzeugen und folgendes mitgeben können:

        • Typ (bool, num ...)
        • Min / Max Wert
        • Einheit

        Geht das?

        -Alex- 0- Offline
        -Alex- 0- Offline
        -Alex- 0
        schrieb am zuletzt editiert von
        #4

        @aleks-83 sagte in Blockly Datenpunkte erstellen:

        z.B. habe ich die Datenpunkte die in den Skripten genutzt werden, vorher manuell erstellt.
        Jetzt werde ich meine ioBroker Instanz demnächst wohl neu aufesetzen (müssen) weil meine Datenpunkte und Objekte gelöscht habe und sie nicht mehr importieren kann.
        Das will ich zum Anlass nehmen und meine Skripte Absturz sicherer zu machen.

        Wichtig ist auch zu bedenken und zu erwähnen, das es am besten ist, eigene Datenpunkte ausserhalb eines Adapterkontextes anzulegen.
        Also d.h. am besten unter 0_Userdata.0. (dann wäre das mit dem Javascript Adapter crash auch kein Problem gewesen)

        dslraserD 1 Antwort Letzte Antwort
        0
        • -Alex- 0- -Alex- 0

          @aleks-83 sagte in Blockly Datenpunkte erstellen:

          z.B. habe ich die Datenpunkte die in den Skripten genutzt werden, vorher manuell erstellt.
          Jetzt werde ich meine ioBroker Instanz demnächst wohl neu aufesetzen (müssen) weil meine Datenpunkte und Objekte gelöscht habe und sie nicht mehr importieren kann.
          Das will ich zum Anlass nehmen und meine Skripte Absturz sicherer zu machen.

          Wichtig ist auch zu bedenken und zu erwähnen, das es am besten ist, eigene Datenpunkte ausserhalb eines Adapterkontextes anzulegen.
          Also d.h. am besten unter 0_Userdata.0. (dann wäre das mit dem Javascript Adapter crash auch kein Problem gewesen)

          dslraserD Offline
          dslraserD Offline
          dslraser
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #5

          @Alex-0 sagte in Blockly Datenpunkte erstellen:

          Also d.h. am besten unter 0_Userdata.0.

          das stimmt, aber das kann der Blockly Baustein nicht. Das geht aber per Script

          -Alex- 0- 1 Antwort Letzte Antwort
          0
          • dslraserD dslraser

            @Alex-0 sagte in Blockly Datenpunkte erstellen:

            Also d.h. am besten unter 0_Userdata.0.

            das stimmt, aber das kann der Blockly Baustein nicht. Das geht aber per Script

            -Alex- 0- Offline
            -Alex- 0- Offline
            -Alex- 0
            schrieb am zuletzt editiert von
            #6

            @dslraser sagte in Blockly Datenpunkte erstellen:

            @Alex-0 sagte in Blockly Datenpunkte erstellen:

            Also d.h. am besten unter 0_Userdata.0.

            das stimmt, aber das kann der Blockly Baustein nicht. Das geht aber per Script

            @dslraser ja das stimmt auch ;-)
            ich würde dann halt anstatt diesen Datenpunkt Blockly ein Javascript Blockly - Baustein nutzen.
            e563738a-22f8-4162-9c17-dcca4cf5ff19-image.png

            dslraserD A 2 Antworten Letzte Antwort
            0
            • -Alex- 0- -Alex- 0

              @dslraser sagte in Blockly Datenpunkte erstellen:

              @Alex-0 sagte in Blockly Datenpunkte erstellen:

              Also d.h. am besten unter 0_Userdata.0.

              das stimmt, aber das kann der Blockly Baustein nicht. Das geht aber per Script

              @dslraser ja das stimmt auch ;-)
              ich würde dann halt anstatt diesen Datenpunkt Blockly ein Javascript Blockly - Baustein nutzen.
              e563738a-22f8-4162-9c17-dcca4cf5ff19-image.png

              dslraserD Offline
              dslraserD Offline
              dslraser
              Forum Testing Most Active
              schrieb am zuletzt editiert von dslraser
              #7

              @Alex-0

              Hierzu gibt es ja den System Baustein "Create State".

              ich mache das auch so, ich wollte nur drauf hinweisen, weil es im ersten Beitrag um den Blockly Baustein ging.

              -Alex- 0- 1 Antwort Letzte Antwort
              0
              • dslraserD dslraser

                @Alex-0

                Hierzu gibt es ja den System Baustein "Create State".

                ich mache das auch so, ich wollte nur drauf hinweisen, weil es im ersten Beitrag um den Blockly Baustein ging.

                -Alex- 0- Offline
                -Alex- 0- Offline
                -Alex- 0
                schrieb am zuletzt editiert von
                #8

                @dslraser sagte in Blockly Datenpunkte erstellen:

                @Alex-0

                Hierzu gibt es ja den System Baustein "Create State".

                ich mache das auch so, ich wollte nur drauf hinweisen, weil es im ersten Beitrag um den Blockly Baustein ging.

                @dslraser
                gut, dann sind wir uns ja einig :+1: :blush:

                1 Antwort Letzte Antwort
                0
                • -Alex- 0- -Alex- 0

                  @dslraser sagte in Blockly Datenpunkte erstellen:

                  @Alex-0 sagte in Blockly Datenpunkte erstellen:

                  Also d.h. am besten unter 0_Userdata.0.

                  das stimmt, aber das kann der Blockly Baustein nicht. Das geht aber per Script

                  @dslraser ja das stimmt auch ;-)
                  ich würde dann halt anstatt diesen Datenpunkt Blockly ein Javascript Blockly - Baustein nutzen.
                  e563738a-22f8-4162-9c17-dcca4cf5ff19-image.png

                  A Offline
                  A Offline
                  aleks-83
                  schrieb am zuletzt editiert von
                  #9

                  Danke euch für die hilfreichen Tipps!

                  @Alex-0
                  Die Funktion "Datenpunkte_anlegen" ist eine globale Javascript Funktion?
                  Wie ich die erstelle weiß ich leider (noch) nicht.

                  Die Datenpunkte unter Javascript.0 zu "lagern" ist ja eigentlich nicht mein Grundproblem.
                  Wenn der Javascript Adapter abstürzt oder ein Problem hat und die Datenpunkte dann mal weg sind, werden sie ja nach der Reparatur des Javascript Adapters wieder angelegt.
                  Ich verwende diese Datenpunkte auch ausschließlich im Javascript Adapter. Das wäre für mich von daher kein Problem.

                  = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                  = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                  Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                  Glasfaser 400

                  -Alex- 0- 1 Antwort Letzte Antwort
                  0
                  • A aleks-83

                    Danke euch für die hilfreichen Tipps!

                    @Alex-0
                    Die Funktion "Datenpunkte_anlegen" ist eine globale Javascript Funktion?
                    Wie ich die erstelle weiß ich leider (noch) nicht.

                    Die Datenpunkte unter Javascript.0 zu "lagern" ist ja eigentlich nicht mein Grundproblem.
                    Wenn der Javascript Adapter abstürzt oder ein Problem hat und die Datenpunkte dann mal weg sind, werden sie ja nach der Reparatur des Javascript Adapters wieder angelegt.
                    Ich verwende diese Datenpunkte auch ausschließlich im Javascript Adapter. Das wäre für mich von daher kein Problem.

                    -Alex- 0- Offline
                    -Alex- 0- Offline
                    -Alex- 0
                    schrieb am zuletzt editiert von -Alex- 0
                    #10

                    @aleks-83 sagte in Blockly Datenpunkte erstellen:

                    Danke euch für die hilfreichen Tipps!

                    @Alex-0
                    Die Funktion "Datenpunkte_anlegen" ist eine globale Javascript Funktion?
                    Wie ich die erstelle weiß ich leider (noch) nicht.

                    nein, gibt es nicht.
                    nimm als Vorlage hier dieses Script: https://forum.iobroker.net/topic/26839/vorlage-skript-erstellen-von-user-datenpunkten/64
                    Bzw. besser gleich von hier: https://github.com/Mic-M/iobroker.createUserStates
                    Einfach kopieren und hier in den Blockly einfügen:

                    beabb2fe-0e8f-4d85-b8f9-473529d3048f-image.png

                    Die Funktion heisst bei mir dann "Datenpunkte_anlegen" wie man hier im Screenshot auch erkennt.

                    Das Script ist funktonal aufgebaut und kannst das überall, wo Du datenpunkte benötigst nutzen.
                    oben im Script bei der Variablendeklaration kannst Du dann beliebig viele Datenpunkte anlegen lassen:

                    let statesToCreate = [
                    ['Datenpunkt_1', {'name':Datenpunkt 1', 'type':'boolean', 'read':true, 'write':true, 'role':'switch' }],
                    ['Datenpunkt_2', {'name':Datenpunkt 2', 'type':'boolean', 'read':true, 'write':true, 'role':'button' }],
                    ['Datenpunkt_3', {'name':Datenpunkt 3', 'type':'text', 'read':true, 'write':true, 'role':'mixed' }],
                    ];
                    

                    der unter teil des Scipts bleibt immer gleich.

                    paul53P A 2 Antworten Letzte Antwort
                    1
                    • -Alex- 0- -Alex- 0

                      @aleks-83 sagte in Blockly Datenpunkte erstellen:

                      Danke euch für die hilfreichen Tipps!

                      @Alex-0
                      Die Funktion "Datenpunkte_anlegen" ist eine globale Javascript Funktion?
                      Wie ich die erstelle weiß ich leider (noch) nicht.

                      nein, gibt es nicht.
                      nimm als Vorlage hier dieses Script: https://forum.iobroker.net/topic/26839/vorlage-skript-erstellen-von-user-datenpunkten/64
                      Bzw. besser gleich von hier: https://github.com/Mic-M/iobroker.createUserStates
                      Einfach kopieren und hier in den Blockly einfügen:

                      beabb2fe-0e8f-4d85-b8f9-473529d3048f-image.png

                      Die Funktion heisst bei mir dann "Datenpunkte_anlegen" wie man hier im Screenshot auch erkennt.

                      Das Script ist funktonal aufgebaut und kannst das überall, wo Du datenpunkte benötigst nutzen.
                      oben im Script bei der Variablendeklaration kannst Du dann beliebig viele Datenpunkte anlegen lassen:

                      let statesToCreate = [
                      ['Datenpunkt_1', {'name':Datenpunkt 1', 'type':'boolean', 'read':true, 'write':true, 'role':'switch' }],
                      ['Datenpunkt_2', {'name':Datenpunkt 2', 'type':'boolean', 'read':true, 'write':true, 'role':'button' }],
                      ['Datenpunkt_3', {'name':Datenpunkt 3', 'type':'text', 'read':true, 'write':true, 'role':'mixed' }],
                      ];
                      

                      der unter teil des Scipts bleibt immer gleich.

                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von paul53
                      #11

                      @Alex-0 sagte:

                      ['Datenpunkt_3', {'name':Datenpunkt 3', 'type':'text', 'read':true, 'write':true, 'role':'mixed' }],

                      type:'text' und role:'mixed' sind unzulässig.

                      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
                      • -Alex- 0- -Alex- 0

                        @aleks-83 sagte in Blockly Datenpunkte erstellen:

                        Danke euch für die hilfreichen Tipps!

                        @Alex-0
                        Die Funktion "Datenpunkte_anlegen" ist eine globale Javascript Funktion?
                        Wie ich die erstelle weiß ich leider (noch) nicht.

                        nein, gibt es nicht.
                        nimm als Vorlage hier dieses Script: https://forum.iobroker.net/topic/26839/vorlage-skript-erstellen-von-user-datenpunkten/64
                        Bzw. besser gleich von hier: https://github.com/Mic-M/iobroker.createUserStates
                        Einfach kopieren und hier in den Blockly einfügen:

                        beabb2fe-0e8f-4d85-b8f9-473529d3048f-image.png

                        Die Funktion heisst bei mir dann "Datenpunkte_anlegen" wie man hier im Screenshot auch erkennt.

                        Das Script ist funktonal aufgebaut und kannst das überall, wo Du datenpunkte benötigst nutzen.
                        oben im Script bei der Variablendeklaration kannst Du dann beliebig viele Datenpunkte anlegen lassen:

                        let statesToCreate = [
                        ['Datenpunkt_1', {'name':Datenpunkt 1', 'type':'boolean', 'read':true, 'write':true, 'role':'switch' }],
                        ['Datenpunkt_2', {'name':Datenpunkt 2', 'type':'boolean', 'read':true, 'write':true, 'role':'button' }],
                        ['Datenpunkt_3', {'name':Datenpunkt 3', 'type':'text', 'read':true, 'write':true, 'role':'mixed' }],
                        ];
                        

                        der unter teil des Scipts bleibt immer gleich.

                        A Offline
                        A Offline
                        aleks-83
                        schrieb am zuletzt editiert von aleks-83
                        #12

                        @Alex-0
                        Super, Danke.
                        Das werde ich dann doch eher umsetzen. Dann lege ich alle meine eigenen DP in userdata.
                        Scheint ja so auch gewünscht und empfohlen zu werden von den ioBroker Programmierern.

                        Bei dem GitHub Skript verstehe ich allerdings nicht wo ich den Pfad und die Datenpunkte deklariere.
                        Bzw. wo schreibe ich das "statesToCreate " hin?

                        let statesToCreate = [
                            ['Test.Test1', {'name':'Test 1', 'type':'string', 'read':true, 'write':true, 'role':'info', 'def':'Hello' }],
                            ...
                        ];
                        

                        Wenn ich das Javascript Skript dann im Ordner "global" ablege, kann ich aber in keinem Blockly diese Funktion aufrufen.
                        Geht das dann nur aus reinen Javascript Skripten?

                        @paul53 sagte in Blockly Datenpunkte erstellen:

                        type:'text' und role:'mixed' sind unzulässig.

                        Steht denn irgendwo was (un)zulässig ist?
                        Für erfahrene Programmierer ist downs evtl selbstverständlich, aber für Menschen wie mich leider gar nicht :grimacing:

                        = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                        = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                        Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                        Glasfaser 400

                        paul53P 1 Antwort Letzte Antwort
                        0
                        • A aleks-83

                          @Alex-0
                          Super, Danke.
                          Das werde ich dann doch eher umsetzen. Dann lege ich alle meine eigenen DP in userdata.
                          Scheint ja so auch gewünscht und empfohlen zu werden von den ioBroker Programmierern.

                          Bei dem GitHub Skript verstehe ich allerdings nicht wo ich den Pfad und die Datenpunkte deklariere.
                          Bzw. wo schreibe ich das "statesToCreate " hin?

                          let statesToCreate = [
                              ['Test.Test1', {'name':'Test 1', 'type':'string', 'read':true, 'write':true, 'role':'info', 'def':'Hello' }],
                              ...
                          ];
                          

                          Wenn ich das Javascript Skript dann im Ordner "global" ablege, kann ich aber in keinem Blockly diese Funktion aufrufen.
                          Geht das dann nur aus reinen Javascript Skripten?

                          @paul53 sagte in Blockly Datenpunkte erstellen:

                          type:'text' und role:'mixed' sind unzulässig.

                          Steht denn irgendwo was (un)zulässig ist?
                          Für erfahrene Programmierer ist downs evtl selbstverständlich, aber für Menschen wie mich leider gar nicht :grimacing:

                          paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von
                          #13

                          @aleks-83 sagte:

                          Steht denn irgendwo was (un)zulässig ist?

                          Siehe Doku Kernkonzept unter "Attribute für bestimmte Objekttypen" und Rollen von Datenpunkten.

                          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
                          • E Offline
                            E Offline
                            Eisbaer721
                            schrieb am zuletzt editiert von
                            #14

                            Hallo zusammen
                            wie kann ich eigentlich den Datenpunkt sofort im History.0 Adapter aktivieren?

                            let statesToCreate = [
                                ['Test.Test1', {'name':'Test 1', 'type':'string', 'read':true, 'write':true, 'role':'info', 'def':'Hello' }],
                                ...
                            ];
                            

                            (4070a8bf-255d-4c9e-bc4e-74034f0c5dab-image.png

                            Vielen Dank

                            paul53P 1 Antwort Letzte Antwort
                            0
                            • E Eisbaer721

                              Hallo zusammen
                              wie kann ich eigentlich den Datenpunkt sofort im History.0 Adapter aktivieren?

                              let statesToCreate = [
                                  ['Test.Test1', {'name':'Test 1', 'type':'string', 'read':true, 'write':true, 'role':'info', 'def':'Hello' }],
                                  ...
                              ];
                              

                              (4070a8bf-255d-4c9e-bc4e-74034f0c5dab-image.png

                              Vielen Dank

                              paul53P Offline
                              paul53P Offline
                              paul53
                              schrieb am zuletzt editiert von paul53
                              #15

                              @Eisbaer721 sagte:

                              sofort im History.0 Adapter aktivieren?

                              So sieht ein Eintrag für history.0 unter common aus:

                                  "custom": {
                                    "history.0": {
                                      "enabled": true,
                                      "changesOnly": true,
                                      "debounce": "1000",
                                      "maxLength": "10",
                                      "retention": "259200",
                                      "changesRelogInterval": 0,
                                      "changesMinDelta": 0,
                                      "aliasId": ""
                                    }
                              

                              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
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              348

                              Online

                              32.6k

                              Benutzer

                              82.0k

                              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