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. [GELÖST] Objekt (type: channel/device) erzeugen?

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    992

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

[GELÖST] Objekt (type: channel/device) erzeugen?

Geplant Angeheftet Gesperrt Verschoben Blockly
blocklyjavascript
26 Beiträge 4 Kommentatoren 2.1k Aufrufe 5 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.
  • NewpicselN Newpicsel

    @paul53

    Wie gesagt ich kenne mich damit nicht sehr gut aus, aber hab mir schon sowas in der Richtung gedacht.

    Danke schon mal für deine Hilfe, ein paar Fragen hätte ich noch, um alles besser verstehen zu können, eventuell magst du mir da auch weiter helfen?

    Kann ich direkt setObjectNoExists(id, obj) verwenden?

    Womit füttere ich 'obj' ? Direkt mit den Objektdaten (type)?
    Oder muss ich 'type' separat anhängen (id, obj, type)
    'Common' kann ich zusätzlich als json einspeisen (Name, write, read), wie ich es auch beim Datenpunkt mache JSON.parse(common)?

    z.B. setObjectNoExists(id, obj, type, JSON.parse(common))

    Oder gehört 'type' mit in 'common'?
    Stellt sich mir wieder die Frage was ich bei 'obj' angeben muss?
    Oder hab ich hier grad komplett ein Denkfehler?

    Sollte ich hier in der Überschrift Datenpunkt zu Objekt ändern?

    Vielen Dank :pray:

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

    @newpicsel sagte: setObjectNoExists(id, obj) verwenden?

    Das kennt der Javascript-Adapter nicht, sondern wird vom js-controller für Adapter-Entwickler bereit gestellt.

    Beispiel, in dem Objekte vom Typ "folder", "device" und "channel" erstellt werden.

    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

    NewpicselN 1 Antwort Letzte Antwort
    1
    • NewpicselN Newpicsel

      @paul53

      Wie gesagt ich kenne mich damit nicht sehr gut aus, aber hab mir schon sowas in der Richtung gedacht.

      Danke schon mal für deine Hilfe, ein paar Fragen hätte ich noch, um alles besser verstehen zu können, eventuell magst du mir da auch weiter helfen?

      Kann ich direkt setObjectNoExists(id, obj) verwenden?

      Womit füttere ich 'obj' ? Direkt mit den Objektdaten (type)?
      Oder muss ich 'type' separat anhängen (id, obj, type)
      'Common' kann ich zusätzlich als json einspeisen (Name, write, read), wie ich es auch beim Datenpunkt mache JSON.parse(common)?

      z.B. setObjectNoExists(id, obj, type, JSON.parse(common))

      Oder gehört 'type' mit in 'common'?
      Stellt sich mir wieder die Frage was ich bei 'obj' angeben muss?
      Oder hab ich hier grad komplett ein Denkfehler?

      Sollte ich hier in der Überschrift Datenpunkt zu Objekt ändern?

      Vielen Dank :pray:

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

      @newpicsel sagte: Womit füttere ich 'obj' ?

             const obj = {
                 type: 'device',
                 common: {
                     name: 'Gerätename'
                 },
                 native: {}
             }
      

      @newpicsel sagte in Datenpunkt (type: channel/device) erzeugen?:

      Sollte ich hier in der Überschrift Datenpunkt zu Objekt ändern?

      Ja.

      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

      NewpicselN 1 Antwort Letzte Antwort
      1
      • paul53P paul53

        @newpicsel sagte: setObjectNoExists(id, obj) verwenden?

        Das kennt der Javascript-Adapter nicht, sondern wird vom js-controller für Adapter-Entwickler bereit gestellt.

        Beispiel, in dem Objekte vom Typ "folder", "device" und "channel" erstellt werden.

        NewpicselN Offline
        NewpicselN Offline
        Newpicsel
        schrieb am zuletzt editiert von
        #6

        @paul53

        Ah ok das macht Sinn!

        In deinem Beispiel bildet die var. obj, in einer json die objektdaten (Typ, common, native), sehe ich das richtig?

        Dann müsste es doch theoretisch gehen, wenn ich es so formatiere: setObject(id, {type: type, JSON.parse(common)}; ?

        Die var. type Fülle ich dann mit der Angabe (folder, device, channel)
        Die var. common würde ich dann mit den Angaben {"Name":"xyz","write":false} füllen…
        Die Angabe 'native' kann ich problemlos weglassen, wenn ich nicht vorhabe sie zu füllen?

        Oder sollte ich dennoch mit der var. obj arbeiten und diese mit {type:'folder', common:{name:'xyz', write: false}} füllen?

        Vielen vielen Dank!

        paul53P 1 Antwort Letzte Antwort
        0
        • NewpicselN Newpicsel

          @paul53

          Ah ok das macht Sinn!

          In deinem Beispiel bildet die var. obj, in einer json die objektdaten (Typ, common, native), sehe ich das richtig?

          Dann müsste es doch theoretisch gehen, wenn ich es so formatiere: setObject(id, {type: type, JSON.parse(common)}; ?

          Die var. type Fülle ich dann mit der Angabe (folder, device, channel)
          Die var. common würde ich dann mit den Angaben {"Name":"xyz","write":false} füllen…
          Die Angabe 'native' kann ich problemlos weglassen, wenn ich nicht vorhabe sie zu füllen?

          Oder sollte ich dennoch mit der var. obj arbeiten und diese mit {type:'folder', common:{name:'xyz', write: false}} füllen?

          Vielen vielen Dank!

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

          @newpicsel sagte: in einer json die objektdaten (Typ, common, native), sehe ich das richtig?

          Nein, in meinem Beispiel ist es direkt als Objekt (nicht als JSON) deklariert. Weshalb sollte man den Umweg über JSON gehen?

          @newpicsel sagte in Datenpunkt (type: channel/device) erzeugen?:

          Die var. common würde ich dann mit den Angaben {"Name":"xyz","write":false} füllen…

          Kein JSON und common.write gibt es nur bei 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
          • paul53P paul53

            @newpicsel sagte: Womit füttere ich 'obj' ?

                   const obj = {
                       type: 'device',
                       common: {
                           name: 'Gerätename'
                       },
                       native: {}
                   }
            

            @newpicsel sagte in Datenpunkt (type: channel/device) erzeugen?:

            Sollte ich hier in der Überschrift Datenpunkt zu Objekt ändern?

            Ja.

            NewpicselN Offline
            NewpicselN Offline
            Newpicsel
            schrieb am zuletzt editiert von Newpicsel
            #8

            @paul53

            if(existsObject(id) === false) {
            
                setObject(id, obj);
            
            }
            
             const obj = {
                       type: type,
                       common: {
                           name: name,
                           write: write,
                           read: read
                       },
                       native: {}
                   }
            

            Wäre das ok? Kann ich obj wieder mit variablen füllen?

            NewpicselN paul53P 2 Antworten Letzte Antwort
            0
            • NewpicselN Newpicsel

              @paul53

              if(existsObject(id) === false) {
              
                  setObject(id, obj);
              
              }
              
               const obj = {
                         type: type,
                         common: {
                             name: name,
                             write: write,
                             read: read
                         },
                         native: {}
                     }
              

              Wäre das ok? Kann ich obj wieder mit variablen füllen?

              NewpicselN Offline
              NewpicselN Offline
              Newpicsel
              schrieb am zuletzt editiert von
              #9

              @newpicsel

              Würde dann im block so aussehen...
              Datenpunkt-5.jpg

              paul53P 1 Antwort Letzte Antwort
              0
              • NewpicselN Newpicsel

                @paul53

                if(existsObject(id) === false) {
                
                    setObject(id, obj);
                
                }
                
                 const obj = {
                           type: type,
                           common: {
                               name: name,
                               write: write,
                               read: read
                           },
                           native: {}
                       }
                

                Wäre das ok? Kann ich obj wieder mit variablen füllen?

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

                @newpicsel sagte in Datenpunkt (type: channel/device) erzeugen?:

                Wäre das ok? Kann ich obj wieder mit variablen füllen?

                const obj = {
                

                muss vor

                setObject(id, obj);
                

                erfolgen.
                Sämtliche Variablen / Konstanten müssen vorher deklariert werden und Werte erhalten.

                const id = '0_userdata.0.meinGeraet.meinKanal';
                const type = 'channel';
                const Name = 'mein Kanalname';
                const obj = {
                   type: type,
                   common: {
                      name: Name
                   },
                   native: {}
                }
                
                if(existsObject(id) === false) setObject(id, obj);
                

                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

                NewpicselN 1 Antwort Letzte Antwort
                1
                • NewpicselN Newpicsel

                  @newpicsel

                  Würde dann im block so aussehen...
                  Datenpunkt-5.jpg

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

                  @newpicsel sagte: Würde dann im block so aussehen...

                  Du möchtest es als Javascript-Funktion in Blockly? Dann bitte ohne write und read, denn die gibt es nur in Datenpunkten.
                  Funktion createObject(id, type, name):

                  if(!existsObject(id)) {
                     const obj = {
                        type: type,
                        common: {name: name},
                        native: {}
                     };
                     setObject(id, obj);
                  }
                  

                  Für Datenpunkte verwende createState().

                  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

                  NewpicselN dslraserD 3 Antworten Letzte Antwort
                  1
                  • paul53P paul53

                    @newpicsel sagte in Datenpunkt (type: channel/device) erzeugen?:

                    Wäre das ok? Kann ich obj wieder mit variablen füllen?

                    const obj = {
                    

                    muss vor

                    setObject(id, obj);
                    

                    erfolgen.
                    Sämtliche Variablen / Konstanten müssen vorher deklariert werden und Werte erhalten.

                    const id = '0_userdata.0.meinGeraet.meinKanal';
                    const type = 'channel';
                    const Name = 'mein Kanalname';
                    const obj = {
                       type: type,
                       common: {
                          name: Name
                       },
                       native: {}
                    }
                    
                    if(existsObject(id) === false) setObject(id, obj);
                    
                    NewpicselN Offline
                    NewpicselN Offline
                    Newpicsel
                    schrieb am zuletzt editiert von
                    #12

                    @paul53

                    Klar logisch! :man-facepalming:

                    Mein Fehler, bis auf die Konstante obj, werden alle Variablen am Anfang des Blocks definiert, obj muss natürlich auch direkt im Anschluss definiert werden und dann die Funktion ausgeführt werden :+1:

                    1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @newpicsel sagte: Würde dann im block so aussehen...

                      Du möchtest es als Javascript-Funktion in Blockly? Dann bitte ohne write und read, denn die gibt es nur in Datenpunkten.
                      Funktion createObject(id, type, name):

                      if(!existsObject(id)) {
                         const obj = {
                            type: type,
                            common: {name: name},
                            native: {}
                         };
                         setObject(id, obj);
                      }
                      

                      Für Datenpunkte verwende createState().

                      NewpicselN Offline
                      NewpicselN Offline
                      Newpicsel
                      schrieb am zuletzt editiert von
                      #13

                      @paul53

                      Ok das mit den write/read Angaben wusste ich nicht, hab ich nur in den objektdaten bestehender Objekte von Adaptern gesehen, macht aber auch wenig Sinn wenn ich drüber nachdenke…

                      Ich bin dir unendlich dankbar, werde ich gleich testen! :hugging_face:

                      1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @newpicsel sagte: Würde dann im block so aussehen...

                        Du möchtest es als Javascript-Funktion in Blockly? Dann bitte ohne write und read, denn die gibt es nur in Datenpunkten.
                        Funktion createObject(id, type, name):

                        if(!existsObject(id)) {
                           const obj = {
                              type: type,
                              common: {name: name},
                              native: {}
                           };
                           setObject(id, obj);
                        }
                        

                        Für Datenpunkte verwende createState().

                        NewpicselN Offline
                        NewpicselN Offline
                        Newpicsel
                        schrieb am zuletzt editiert von
                        #14

                        @paul53

                        Funktioniert fast astrein, lediglich der Name wird nicht übernommen, hier steht immer der Pfad des Objekts… :thinking_face:

                        paul53P 1 Antwort Letzte Antwort
                        0
                        • NewpicselN Newpicsel

                          @paul53

                          Funktioniert fast astrein, lediglich der Name wird nicht übernommen, hier steht immer der Pfad des Objekts… :thinking_face:

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

                          @newpicsel sagte: der Name wird nicht übernommen, hier steht immer der Pfad des Objekts…

                          name ist eine im Javascript-Adapter vordefinierte Variable und enthält den Namen des Skripts. Wie sieht das Skript aus, das den falschen Namen übergibt? Als globale Variable / Konstante sollte name nicht verwendet werden (ausnahmsweise besser 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

                          NewpicselN 1 Antwort Letzte Antwort
                          1
                          • paul53P paul53

                            @newpicsel sagte: der Name wird nicht übernommen, hier steht immer der Pfad des Objekts…

                            name ist eine im Javascript-Adapter vordefinierte Variable und enthält den Namen des Skripts. Wie sieht das Skript aus, das den falschen Namen übergibt? Als globale Variable / Konstante sollte name nicht verwendet werden (ausnahmsweise besser Name).

                            NewpicselN Offline
                            NewpicselN Offline
                            Newpicsel
                            schrieb am zuletzt editiert von
                            #16

                            @paul53

                            Ja das war’s :rolling_on_the_floor_laughing:

                            :hugging_face: :hugging_face: :hugging_face:

                            dslraserD 1 Antwort Letzte Antwort
                            0
                            • NewpicselN Newpicsel

                              @paul53

                              Ja das war’s :rolling_on_the_floor_laughing:

                              :hugging_face: :hugging_face: :hugging_face:

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

                              @newpicsel
                              wie sieht denn jetzt die fertige Funktion bzw. das Blockly mit der Funktion aus. (interessiert mich auch)
                              Bitte mal als Export hier zur Verfügung stellen.

                              NewpicselN 1 Antwort Letzte Antwort
                              0
                              • paul53P paul53

                                @newpicsel sagte: Würde dann im block so aussehen...

                                Du möchtest es als Javascript-Funktion in Blockly? Dann bitte ohne write und read, denn die gibt es nur in Datenpunkten.
                                Funktion createObject(id, type, name):

                                if(!existsObject(id)) {
                                   const obj = {
                                      type: type,
                                      common: {name: name},
                                      native: {}
                                   };
                                   setObject(id, obj);
                                }
                                

                                Für Datenpunkte verwende createState().

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

                                @paul53 sagte in [GELÖST] Objekt (type: channel/device) erzeugen?:

                                @newpicsel sagte: Würde dann im block so aussehen...

                                Du möchtest es als Javascript-Funktion in Blockly? Dann bitte ohne write und read, denn die gibt es nur in Datenpunkten.
                                Funktion createObject(id, type, name):

                                if(!existsObject(id) {
                                   const obj = {
                                      type: type,
                                      common: {name: name},
                                      native: {}
                                   };
                                   setObject(id, obj);
                                }
                                

                                Für Datenpunkte verwende createState().

                                Danke, bei mir funktioniert es jetzt auch. Hier fehlte nur eine schließende Klammer hinter id. (deshalb hatte ich eine Fehlermeldung)

                                if(!existsObject(id)) {
                                
                                paul53P 1 Antwort Letzte Antwort
                                1
                                • dslraserD dslraser

                                  @paul53 sagte in [GELÖST] Objekt (type: channel/device) erzeugen?:

                                  @newpicsel sagte: Würde dann im block so aussehen...

                                  Du möchtest es als Javascript-Funktion in Blockly? Dann bitte ohne write und read, denn die gibt es nur in Datenpunkten.
                                  Funktion createObject(id, type, name):

                                  if(!existsObject(id) {
                                     const obj = {
                                        type: type,
                                        common: {name: name},
                                        native: {}
                                     };
                                     setObject(id, obj);
                                  }
                                  

                                  Für Datenpunkte verwende createState().

                                  Danke, bei mir funktioniert es jetzt auch. Hier fehlte nur eine schließende Klammer hinter id. (deshalb hatte ich eine Fehlermeldung)

                                  if(!existsObject(id)) {
                                  
                                  paul53P Offline
                                  paul53P Offline
                                  paul53
                                  schrieb am zuletzt editiert von
                                  #19

                                  @dslraser sagte:

                                  if(!existsObject(id)) {
                                  

                                  Danke, habe korrigiert.

                                  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
                                  • dslraserD dslraser

                                    @newpicsel
                                    wie sieht denn jetzt die fertige Funktion bzw. das Blockly mit der Funktion aus. (interessiert mich auch)
                                    Bitte mal als Export hier zur Verfügung stellen.

                                    NewpicselN Offline
                                    NewpicselN Offline
                                    Newpicsel
                                    schrieb am zuletzt editiert von
                                    #20

                                    @dslraser

                                    Ich habe hier eine übersicht mit Beispiel und dem export:

                                    <xml xmlns="https://developers.google.com/blockly/xml">
                                     <variables>
                                       <variable id="LfiUSz-w5]D.G6Ak/y2e">id</variable>
                                       <variable id="$mcGKjxdKw)k_50}qNIe">Name</variable>
                                       <variable id="(k_r{s{0[,uYi4T_X$#L">type</variable>
                                       <variable id="UUvU!puSSzK/c])G!9kP">init</variable>
                                       <variable id="lY8-+lZ_0InQ@{{HF9Z0">common</variable>
                                     </variables>
                                     <block type="comment" id="v_tv;-V],:3dC|KK,+0H" x="62" y="-112">
                                       <field name="COMMENT">Beispiel: erstelle Struktur!</field>
                                     </block>
                                     <block type="procedures_defcustomnoreturn" id="JR|$]lz%;.#aZJ4SpaLs" x="63" y="-62">
                                       <mutation statements="false">
                                         <arg name="id" varid="LfiUSz-w5]D.G6Ak/y2e"></arg>
                                         <arg name="Name" varid="$mcGKjxdKw)k_50}qNIe"></arg>
                                         <arg name="type" varid="(k_r{s{0[,uYi4T_X$#L"></arg>
                                       </mutation>
                                       <field name="NAME">createObject</field>
                                       <field name="SCRIPT">aWYoZXhpc3RzT2JqZWN0KGlkKSA9PT0gZmFsc2UpIHsNCiAgIGNvbnN0IG9iaiA9IHsNCiAgICAgIHR5cGU6IHR5cGUsDQogICAgICBjb21tb246IHtuYW1lOiBOYW1lfSwNCiAgICAgIG5hdGl2ZToge30NCiAgIH07DQogICBzZXRPYmplY3QoaWQsIG9iaik7DQp9</field>
                                       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                     </block>
                                     <block type="procedures_callcustomnoreturn" id="vAB{{mVjCQJ!8#??9=Yv" x="62" y="13">
                                       <mutation name="createObject">
                                         <arg name="id"></arg>
                                         <arg name="Name"></arg>
                                         <arg name="type"></arg>
                                       </mutation>
                                       <value name="ARG0">
                                         <block type="text" id="1}xLocpB~=/T8UF0rOtV">
                                           <field name="TEXT">0_userdata.0.Eigene_Objekte_TEST</field>
                                         </block>
                                       </value>
                                       <value name="ARG1">
                                         <block type="text" id="x0Z`IhO^?O^Xjugfg)^r">
                                           <field name="TEXT">Hier solten eigene Objekte angelegt werden</field>
                                         </block>
                                       </value>
                                       <value name="ARG2">
                                         <block type="text" id="];A~I~Iu_Bvo3zU@TvFs">
                                           <field name="TEXT">folder</field>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="procedures_callcustomnoreturn" id="a,xCOypc+jYj*/m+`pHH">
                                           <mutation name="createObject">
                                             <arg name="id"></arg>
                                             <arg name="Name"></arg>
                                             <arg name="type"></arg>
                                           </mutation>
                                           <value name="ARG0">
                                             <block type="text" id="KQse/m:qnU{L3=]o$~Oh">
                                               <field name="TEXT">0_userdata.0.Eigene_Objekte_TEST.lampen</field>
                                             </block>
                                           </value>
                                           <value name="ARG1">
                                             <block type="text" id="a80aUMb-3Si1avx1}wn4">
                                               <field name="TEXT">Übersicht aller Lampen</field>
                                             </block>
                                           </value>
                                           <value name="ARG2">
                                             <block type="text" id="q_^90iUY[Qof+Hg,/vG=">
                                               <field name="TEXT">device</field>
                                             </block>
                                           </value>
                                           <next>
                                             <block type="procedures_callcustomnoreturn" id="?hgrd_seNBhCDwj`R?iV">
                                               <mutation name="createObject">
                                                 <arg name="id"></arg>
                                                 <arg name="Name"></arg>
                                                 <arg name="type"></arg>
                                               </mutation>
                                               <value name="ARG0">
                                                 <block type="text" id="UZ!.oytWIG@$p,U}Ytz[">
                                                   <field name="TEXT">0_userdata.0.Eigene_Objekte_TEST.lampen.küchenLampe</field>
                                                 </block>
                                               </value>
                                               <value name="ARG1">
                                                 <block type="text" id="R%[^-_c6G+{Q019ywz/Q">
                                                   <field name="TEXT">Übersicht Küchenlampe</field>
                                                 </block>
                                               </value>
                                               <value name="ARG2">
                                                 <block type="text" id="eO|JkOJ~iw4Thw2!Nl5_">
                                                   <field name="TEXT">channel</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                     <block type="comment" id="ip#vELLdxEZ71[I(hkg1" x="62" y="412">
                                       <field name="COMMENT">Beispiel: erstelle Datenpunkt in dieser Struktur!</field>
                                     </block>
                                     <block type="procedures_defcustomnoreturn" id="gJ[9+,egE[AS4K(1@x$b" x="63" y="463">
                                       <mutation statements="false">
                                         <arg name="id" varid="LfiUSz-w5]D.G6Ak/y2e"></arg>
                                         <arg name="init" varid="UUvU!puSSzK/c])G!9kP"></arg>
                                         <arg name="common" varid="lY8-+lZ_0InQ@{{HF9Z0"></arg>
                                       </mutation>
                                       <field name="NAME">createDatapoint</field>
                                       <field name="SCRIPT">aWYoZXhpc3RzU3RhdGUoaWQpID09PSBmYWxzZSkgew0KDQogICAgY3JlYXRlU3RhdGUoaWQsIGluaXQsIEpTT04ucGFyc2UoY29tbW9uKSk7DQoNCn0=</field>
                                       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                     </block>
                                     <block type="procedures_callcustomnoreturn" id="WM|LTm`,;Ej;Y:i3idy5" x="63" y="538">
                                       <mutation name="createDatapoint">
                                         <arg name="id"></arg>
                                         <arg name="init"></arg>
                                         <arg name="common"></arg>
                                       </mutation>
                                       <value name="ARG0">
                                         <block type="text" id="YwbD/A;~U)U0G[mOh_|!">
                                           <field name="TEXT">0_userdata.0.Eigene_Objekte_TEST.lampen.küchenLampe.lichtAN</field>
                                         </block>
                                       </value>
                                       <value name="ARG1">
                                         <block type="logic_boolean" id="9q)o,H^0D*?gz#W(uYGi">
                                           <field name="BOOL">FALSE</field>
                                         </block>
                                       </value>
                                       <value name="ARG2">
                                         <block type="text" id="xzF$PY~-Jvp.ZN@Hwvmj">
                                           <field name="TEXT">{"type":"boolean","role":"indicator","write":false,"read": true,"name": "Status Licht"}</field>
                                         </block>
                                       </value>
                                     </block>
                                    </xml>
                                    

                                    Objekt_Datenpunkt_erzeugen-1.jpg

                                    Objekt_Datenpunkt_erzeugen-2.jpg

                                    Ich hoffe das hilft eventuell jemanden weiter :blush:

                                    dslraserD 1 Antwort Letzte Antwort
                                    1
                                    • NewpicselN Newpicsel

                                      @dslraser

                                      Ich habe hier eine übersicht mit Beispiel und dem export:

                                      <xml xmlns="https://developers.google.com/blockly/xml">
                                       <variables>
                                         <variable id="LfiUSz-w5]D.G6Ak/y2e">id</variable>
                                         <variable id="$mcGKjxdKw)k_50}qNIe">Name</variable>
                                         <variable id="(k_r{s{0[,uYi4T_X$#L">type</variable>
                                         <variable id="UUvU!puSSzK/c])G!9kP">init</variable>
                                         <variable id="lY8-+lZ_0InQ@{{HF9Z0">common</variable>
                                       </variables>
                                       <block type="comment" id="v_tv;-V],:3dC|KK,+0H" x="62" y="-112">
                                         <field name="COMMENT">Beispiel: erstelle Struktur!</field>
                                       </block>
                                       <block type="procedures_defcustomnoreturn" id="JR|$]lz%;.#aZJ4SpaLs" x="63" y="-62">
                                         <mutation statements="false">
                                           <arg name="id" varid="LfiUSz-w5]D.G6Ak/y2e"></arg>
                                           <arg name="Name" varid="$mcGKjxdKw)k_50}qNIe"></arg>
                                           <arg name="type" varid="(k_r{s{0[,uYi4T_X$#L"></arg>
                                         </mutation>
                                         <field name="NAME">createObject</field>
                                         <field name="SCRIPT">aWYoZXhpc3RzT2JqZWN0KGlkKSA9PT0gZmFsc2UpIHsNCiAgIGNvbnN0IG9iaiA9IHsNCiAgICAgIHR5cGU6IHR5cGUsDQogICAgICBjb21tb246IHtuYW1lOiBOYW1lfSwNCiAgICAgIG5hdGl2ZToge30NCiAgIH07DQogICBzZXRPYmplY3QoaWQsIG9iaik7DQp9</field>
                                         <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                       </block>
                                       <block type="procedures_callcustomnoreturn" id="vAB{{mVjCQJ!8#??9=Yv" x="62" y="13">
                                         <mutation name="createObject">
                                           <arg name="id"></arg>
                                           <arg name="Name"></arg>
                                           <arg name="type"></arg>
                                         </mutation>
                                         <value name="ARG0">
                                           <block type="text" id="1}xLocpB~=/T8UF0rOtV">
                                             <field name="TEXT">0_userdata.0.Eigene_Objekte_TEST</field>
                                           </block>
                                         </value>
                                         <value name="ARG1">
                                           <block type="text" id="x0Z`IhO^?O^Xjugfg)^r">
                                             <field name="TEXT">Hier solten eigene Objekte angelegt werden</field>
                                           </block>
                                         </value>
                                         <value name="ARG2">
                                           <block type="text" id="];A~I~Iu_Bvo3zU@TvFs">
                                             <field name="TEXT">folder</field>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="procedures_callcustomnoreturn" id="a,xCOypc+jYj*/m+`pHH">
                                             <mutation name="createObject">
                                               <arg name="id"></arg>
                                               <arg name="Name"></arg>
                                               <arg name="type"></arg>
                                             </mutation>
                                             <value name="ARG0">
                                               <block type="text" id="KQse/m:qnU{L3=]o$~Oh">
                                                 <field name="TEXT">0_userdata.0.Eigene_Objekte_TEST.lampen</field>
                                               </block>
                                             </value>
                                             <value name="ARG1">
                                               <block type="text" id="a80aUMb-3Si1avx1}wn4">
                                                 <field name="TEXT">Übersicht aller Lampen</field>
                                               </block>
                                             </value>
                                             <value name="ARG2">
                                               <block type="text" id="q_^90iUY[Qof+Hg,/vG=">
                                                 <field name="TEXT">device</field>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="procedures_callcustomnoreturn" id="?hgrd_seNBhCDwj`R?iV">
                                                 <mutation name="createObject">
                                                   <arg name="id"></arg>
                                                   <arg name="Name"></arg>
                                                   <arg name="type"></arg>
                                                 </mutation>
                                                 <value name="ARG0">
                                                   <block type="text" id="UZ!.oytWIG@$p,U}Ytz[">
                                                     <field name="TEXT">0_userdata.0.Eigene_Objekte_TEST.lampen.küchenLampe</field>
                                                   </block>
                                                 </value>
                                                 <value name="ARG1">
                                                   <block type="text" id="R%[^-_c6G+{Q019ywz/Q">
                                                     <field name="TEXT">Übersicht Küchenlampe</field>
                                                   </block>
                                                 </value>
                                                 <value name="ARG2">
                                                   <block type="text" id="eO|JkOJ~iw4Thw2!Nl5_">
                                                     <field name="TEXT">channel</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                       <block type="comment" id="ip#vELLdxEZ71[I(hkg1" x="62" y="412">
                                         <field name="COMMENT">Beispiel: erstelle Datenpunkt in dieser Struktur!</field>
                                       </block>
                                       <block type="procedures_defcustomnoreturn" id="gJ[9+,egE[AS4K(1@x$b" x="63" y="463">
                                         <mutation statements="false">
                                           <arg name="id" varid="LfiUSz-w5]D.G6Ak/y2e"></arg>
                                           <arg name="init" varid="UUvU!puSSzK/c])G!9kP"></arg>
                                           <arg name="common" varid="lY8-+lZ_0InQ@{{HF9Z0"></arg>
                                         </mutation>
                                         <field name="NAME">createDatapoint</field>
                                         <field name="SCRIPT">aWYoZXhpc3RzU3RhdGUoaWQpID09PSBmYWxzZSkgew0KDQogICAgY3JlYXRlU3RhdGUoaWQsIGluaXQsIEpTT04ucGFyc2UoY29tbW9uKSk7DQoNCn0=</field>
                                         <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                       </block>
                                       <block type="procedures_callcustomnoreturn" id="WM|LTm`,;Ej;Y:i3idy5" x="63" y="538">
                                         <mutation name="createDatapoint">
                                           <arg name="id"></arg>
                                           <arg name="init"></arg>
                                           <arg name="common"></arg>
                                         </mutation>
                                         <value name="ARG0">
                                           <block type="text" id="YwbD/A;~U)U0G[mOh_|!">
                                             <field name="TEXT">0_userdata.0.Eigene_Objekte_TEST.lampen.küchenLampe.lichtAN</field>
                                           </block>
                                         </value>
                                         <value name="ARG1">
                                           <block type="logic_boolean" id="9q)o,H^0D*?gz#W(uYGi">
                                             <field name="BOOL">FALSE</field>
                                           </block>
                                         </value>
                                         <value name="ARG2">
                                           <block type="text" id="xzF$PY~-Jvp.ZN@Hwvmj">
                                             <field name="TEXT">{"type":"boolean","role":"indicator","write":false,"read": true,"name": "Status Licht"}</field>
                                           </block>
                                         </value>
                                       </block>
                                      </xml>
                                      

                                      Objekt_Datenpunkt_erzeugen-1.jpg

                                      Objekt_Datenpunkt_erzeugen-2.jpg

                                      Ich hoffe das hilft eventuell jemanden weiter :blush:

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

                                      @newpicsel
                                      ein icon ist auch ganz nett (als Base64 eingefügt)

                                      Bildschirmfoto 2021-09-20 um 12.05.36.png

                                      Bildschirmfoto 2021-09-20 um 12.05.20.png

                                      B 1 Antwort Letzte Antwort
                                      1
                                      • dslraserD dslraser

                                        @newpicsel
                                        ein icon ist auch ganz nett (als Base64 eingefügt)

                                        Bildschirmfoto 2021-09-20 um 12.05.36.png

                                        Bildschirmfoto 2021-09-20 um 12.05.20.png

                                        B Offline
                                        B Offline
                                        Burg_Io
                                        schrieb am zuletzt editiert von
                                        #22

                                        @dslraser
                                        Hallo. gibt es für die Icon´s eine Datenbank oder sind sie selbst eerstellt? Und hast du dazu noch etwas in der Funktion angepasst?

                                        MfG Raik

                                        dslraserD 1 Antwort Letzte Antwort
                                        0
                                        • B Burg_Io

                                          @dslraser
                                          Hallo. gibt es für die Icon´s eine Datenbank oder sind sie selbst eerstellt? Und hast du dazu noch etwas in der Funktion angepasst?

                                          MfG Raik

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

                                          @burg_io sagte in [GELÖST] Objekt (type: channel/device) erzeugen?:

                                          @dslraser
                                          Hallo. gibt es für die Icon´s eine Datenbank oder sind sie selbst eerstellt? Und hast du dazu noch etwas in der Funktion angepasst?

                                          MfG Raik

                                          Bildschirmfoto 2021-09-20 um 12.47.29.png

                                          Bildschirmfoto 2021-09-20 um 12.17.49.png

                                          <xml xmlns="https://developers.google.com/blockly/xml">
                                           <variables>
                                             <variable id="2MW(Q?v%W{m8D-,Y1%.{">id</variable>
                                             <variable id="x;Xg_g1MI?r_DvEA)5dO">type</variable>
                                             <variable id="C_Au,eH#7[o/l-8kD(aK">Name</variable>
                                             <variable id="=ul{KV_W`j,+^^P1(V9:">icon</variable>
                                           </variables>
                                           <block type="procedures_defcustomnoreturn" id="_KXFhTJGmLuPeL6Ox|Xq" x="13" y="13">
                                             <mutation statements="false">
                                               <arg name="id" varid="2MW(Q?v%W{m8D-,Y1%.{"></arg>
                                               <arg name="type" varid="x;Xg_g1MI?r_DvEA)5dO"></arg>
                                               <arg name="Name" varid="C_Au,eH#7[o/l-8kD(aK"></arg>
                                               <arg name="icon" varid="=ul{KV_W`j,+^^P1(V9:"></arg>
                                             </mutation>
                                             <field name="NAME">createObject</field>
                                             <field name="SCRIPT">aWYoIWV4aXN0c09iamVjdChpZCkpIHsKICAgY29uc3Qgb2JqID0gewogICAgICB0eXBlOiB0eXBlLAogICAgICBjb21tb246IHtuYW1lOiBOYW1lLCBpY29uOiBpY29ufSwKICAgICAgbmF0aXZlOiB7fQogICB9OwogICBzZXRPYmplY3QoaWQsIG9iaik7Cn0=</field>
                                             <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                           </block>
                                           <block type="procedures_callcustomnoreturn" id="0E#Mut[XP*-FpsAV+@W|" x="13" y="63">
                                             <mutation name="createObject">
                                               <arg name="id"></arg>
                                               <arg name="type"></arg>
                                               <arg name="Name"></arg>
                                               <arg name="icon"></arg>
                                             </mutation>
                                             <value name="ARG0">
                                               <block type="text" id="wm2qyCgIZRfYw0.*3-s)">
                                                 <field name="TEXT">0_userdata.0.Test_Device</field>
                                               </block>
                                             </value>
                                             <value name="ARG1">
                                               <block type="text" id="qQ}xfO|zY_K.HJIDA}GS">
                                                 <field name="TEXT">device</field>
                                               </block>
                                             </value>
                                             <value name="ARG2">
                                               <block type="text" id="=_DNLLM{5ubAcfRYaLcz">
                                                 <field name="TEXT">Test</field>
                                               </block>
                                             </value>
                                             <value name="ARG3">
                                               <block type="text" id="/1z-wJA.I]r;Src0uBUX">
                                                 <field name="TEXT">data:image/png;base64,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</field>
                                               </block>
                                             </value>
                                           </block>
                                          </xml>
                                          

                                          Base64 erstelle ich hier
                                          https://www.base64-image.de/

                                          Beispiel (auf </> show code klicken)

                                          Bildschirmfoto 2021-09-20 um 12.22.05.png

                                          paul53P B 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          753

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          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