Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Admin5: Ich kann keine Objekte mehr manuell anlegen

NEWS

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

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

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

Admin5: Ich kann keine Objekte mehr manuell anlegen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
466 Beiträge 36 Kommentatoren 92.1k Aufrufe 25 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.
  • HomoranH Homoran

    @paul53 sagte:

    ... sein sollte.

    OK!
    Das ist neu für mich. Auch bei manueller Anlage?

    Das ist ja, was @klassisch möchte, dass er eine Struktur hat, in der die "Channels" (jetzt "folder") auch Daten enthalten können. Dazu müssten es ja stets sein

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

    @homoran sagte: Auch bei manueller Anlage?

    Habe unter Ordner erst einen Datenpunkt "ebene1.ebene2" erstellt und den Namen geändert:

    DPebene2.JPG

    und anschließend den Datenpunkt "ebene1":

    DPebene1.JPG

    Das sollte aber bitte keiner nachmachen!

    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

    HomoranH mickymM 2 Antworten Letzte Antwort
    2
    • paul53P paul53

      @homoran sagte: Auch bei manueller Anlage?

      Habe unter Ordner erst einen Datenpunkt "ebene1.ebene2" erstellt und den Namen geändert:

      DPebene2.JPG

      und anschließend den Datenpunkt "ebene1":

      DPebene1.JPG

      Das sollte aber bitte keiner nachmachen!

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von Homoran
      #125

      @paul53 DANKE!

      @paul53 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

      Das sollte aber bitte keiner nachmachen!

      👍

      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 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @paul53 sagte:

        sondern nur Datenpunkte.

        und die könnte @klassisch weiterhin verschachtelt anlegen.

        Dann ist ja jeder glücklich

        K Offline
        K Offline
        klassisch
        Most Active
        schrieb am zuletzt editiert von klassisch
        #126

        @homoran sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

        und die könnte @klassisch weiterhin verschachtelt anlegen.

        Nunja, das hätte ich von Anfang an tun können. Habe ich aber bewußt nicht getan. Denn dann muß man immer eine Stufe weiter runter klicken, um die Zahlen zu sehen, während man so alles auf einen Blick sieht

        c592b9cc-9bbc-45d9-b56f-75ea40c8237a-grafik.png

        Und nur wenn man die Statistik sehen möchte muß man tiefer klicken. Also praktisch und übersichtlich.

        1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @homoran sagte: Auch bei manueller Anlage?

          Habe unter Ordner erst einen Datenpunkt "ebene1.ebene2" erstellt und den Namen geändert:

          DPebene2.JPG

          und anschließend den Datenpunkt "ebene1":

          DPebene1.JPG

          Das sollte aber bitte keiner nachmachen!

          mickymM Offline
          mickymM Offline
          mickym
          Most Active
          schrieb am zuletzt editiert von mickym
          #127

          @paul53 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

          @homoran sagte: Auch bei manueller Anlage?

          Habe unter Ordner erst einen Datenpunkt "ebene1.ebene2" erstellt und den Namen geändert:

          DPebene2.JPG

          ...

          Das sollte aber bitte keiner nachmachen!

          Na ja - so gings halt vorher und war auch praktisch, aber ist halt nicht mehr gewünscht. Ich hab es verstanden!

          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

          HomoranH 1 Antwort Letzte Antwort
          0
          • mickymM mickym

            @paul53 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

            @homoran sagte: Auch bei manueller Anlage?

            Habe unter Ordner erst einen Datenpunkt "ebene1.ebene2" erstellt und den Namen geändert:

            DPebene2.JPG

            ...

            Das sollte aber bitte keiner nachmachen!

            Na ja - so gings halt vorher und war auch praktisch, aber ist halt nicht mehr gewünscht. Ich hab es verstanden!

            HomoranH Nicht stören
            HomoranH Nicht stören
            Homoran
            Global Moderator Administrators
            schrieb am zuletzt editiert von
            #128

            @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

            aber ist halt nicht mehr gewünscht.

            das stimmt nicht so

            nur weil es ging...
            @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

            so gings halt vorher und war auch praktisch,

            war es nicht gewünscht und schon gar nicht als korrekt dokumentiert.

            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 -

            mickymM 1 Antwort Letzte Antwort
            0
            • HomoranH Homoran

              @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

              aber ist halt nicht mehr gewünscht.

              das stimmt nicht so

              nur weil es ging...
              @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

              so gings halt vorher und war auch praktisch,

              war es nicht gewünscht und schon gar nicht als korrekt dokumentiert.

              mickymM Offline
              mickymM Offline
              mickym
              Most Active
              schrieb am zuletzt editiert von
              #129

              @homoran OK. 🙂 Verstanden!

              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

              1 Antwort Letzte Antwort
              0
              • mickymM mickym

                @apollon77 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                @mickym Auch hier , siehe mein letzter Post: Mal langsam!

                Wenn Du alle Objekte per node-red anlegst dann stören dich doch vorerst die Admin-Checks nicht ... Das ganze kommt nur zum Tragen wenn Du manuell noch was tun willst.

                Und bedenkt bitte immer noch die Info im Ersten Post:

                Weiterhin arbeitet @Dutchman an einem kleinen JavaScript welches das Automatisch korrigieren kann.

                OK - mit den Objekten habe ich nun verstanden.

                Und ja wenn so ein Script von @Dutchman "Nicht existierenden Objekten" den Typ "folder" spendiert ist es ja gut. 👍 👍 👍
                Wenn ich auch in Zukunft mittels NodeRed noch meine Datenhierachien (zumindest unter userdata) erstellen kann, bin ich ja auch zufrieden.
                Vielleicht sollte kann man ja ggf. die iobroker out Nodes, dann automatisch mit der Aufgabe betreuen, dass nicht existierenden Hierachieebenen als folder erstellt werden. 🤞

                Alles gut - ich weiß mir nun zu helfen und bin auch schon still. Ich hab halt so meine Bedenken, dass man mit dem "Zwang" auch nützliche Funktionen verliert (s. mqtt). 😧

                Ich kann mich nur aus dem Beitrag hier wiederholen, dass das eine Frage der Philosophie ist und das beispielsweise auch "Verzeichnisse" oder "hierarchische Datenpunkte" eine gewisse Logik haben.
                Auch wenn Du vielleicht mit mqtt nichts am Hut hast, aber letztlich ist das ja auch als Datenbank für IoT entworfen worden und ich denke es hat seinen Grund, warum man hier keine Einschränkungen von Datentypen in einer Hierarchie gemacht hat.

                Aber wie gesagt - ich halte mich hier nun raus, zumindest soweit ich das nun verstanden habe.

                F Offline
                F Offline
                fastfoot
                schrieb am zuletzt editiert von fastfoot
                #130

                @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                Und ja wenn so ein Script von @Dutchman "Nicht existierenden Objekten" den Typ "folder" spendiert ist es ja gut.

                @Dutchman kann das sicher besser, aber das hier funktioniert auch. Dennoch, beim Rumfummeln am System empfiehlt sich immer ein Backup

                Vorraussetzung: In den Settings der Javascript-Instanz muss setObject erlaubt sein

                • Das Setzen des Stammordners erfolgt in Zeile 12
                • Als Stammordner werden javascript.x und 0_userdata.0 unterstützt, man könnte oder sollte es evtl. noch auf alias.0 erweitern(Zeile 17)

                /**
                * Zweck:       Korrigiert übergeordnete Ordnerstrukturen eines Datenpunkts
                * Datum:      07.08.2021
                * Autor:       @fastfoot
                */
                
                //              In den Settings der Javascript-Instanz muss setObject erlaubt sein!!!
                
                let arr = [],
                   id = '';
                
                const ids = $('0_userdata.0.*');
                ids.each(idTmp => {
                   arr=idTmp.split('.');
                   arr.splice(arr.length-1);
                   id=arr.join('.');
                   if(arr[0] === '0_userdata' || arr[0] === 'javascript'){
                       correctObject(id, arr);
                   }
                })
                
                function correctObject(id,arr){
                   if(arr.length === 2) return;
                   if(!existsObject(id)){
                       let obj = {};
                       obj = {
                           type: 'folder',
                           common:{
                               name: arr[arr.length - 1]
                           }
                       }
                       extendObject(id, obj, e => {
                           if (e) log('Fehler beim Schreiben des Objektes: '+ id + ' ' + e);
                       })
                   }
                   arr.splice(arr.length - 1);
                   id = arr.join('.');
                   correctObject(id, arr);
                }
                

                iobroker läuft unter Docker auf QNAP TS-451+
                SkriptRecovery: https://forum.iobroker.net/post/930558

                sigi234S mickymM paul53P R M 5 Antworten Letzte Antwort
                6
                • F fastfoot

                  @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                  Und ja wenn so ein Script von @Dutchman "Nicht existierenden Objekten" den Typ "folder" spendiert ist es ja gut.

                  @Dutchman kann das sicher besser, aber das hier funktioniert auch. Dennoch, beim Rumfummeln am System empfiehlt sich immer ein Backup

                  Vorraussetzung: In den Settings der Javascript-Instanz muss setObject erlaubt sein

                  • Das Setzen des Stammordners erfolgt in Zeile 12
                  • Als Stammordner werden javascript.x und 0_userdata.0 unterstützt, man könnte oder sollte es evtl. noch auf alias.0 erweitern(Zeile 17)

                  /**
                  * Zweck:       Korrigiert übergeordnete Ordnerstrukturen eines Datenpunkts
                  * Datum:      07.08.2021
                  * Autor:       @fastfoot
                  */
                  
                  //              In den Settings der Javascript-Instanz muss setObject erlaubt sein!!!
                  
                  let arr = [],
                     id = '';
                  
                  const ids = $('0_userdata.0.*');
                  ids.each(idTmp => {
                     arr=idTmp.split('.');
                     arr.splice(arr.length-1);
                     id=arr.join('.');
                     if(arr[0] === '0_userdata' || arr[0] === 'javascript'){
                         correctObject(id, arr);
                     }
                  })
                  
                  function correctObject(id,arr){
                     if(arr.length === 2) return;
                     if(!existsObject(id)){
                         let obj = {};
                         obj = {
                             type: 'folder',
                             common:{
                                 name: arr[arr.length - 1]
                             }
                         }
                         extendObject(id, obj, e => {
                             if (e) log('Fehler beim Schreiben des Objektes: '+ id + ' ' + e);
                         })
                     }
                     arr.splice(arr.length - 1);
                     id = arr.join('.');
                     correctObject(id, arr);
                  }
                  

                  sigi234S Online
                  sigi234S Online
                  sigi234
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von sigi234
                  #131

                  @fastfoot
                  0_userdata.0 hat einwandfrei funktioniert ! 👍

                  javascript.x nicht.

                  So Richtig?

                  Screenshot (4109).png

                  Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                  Immer Daten sichern!

                  F 1 Antwort Letzte Antwort
                  0
                  • apollon77A apollon77

                    @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                    Ich hab das gemacht und das ging. Problematisch ist erst mal nur, wenn Du gar keinen Stift hast um das Objekt zu editieren, dann musst das Objekt wirklich quasi nochmal anlegen.

                    Wenn Du keinen stift hast dann existiert das Objekt nicht ... daher musst du es "initial" anlegen 🙂 (sorry ... )

                    cashC Offline
                    cashC Offline
                    cash
                    Most Active
                    schrieb am zuletzt editiert von
                    #132

                    @apollon77 said in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                    If Du keinen stift hast dann existiert das Objekt nicht ... daher musst du es "initial" anlegen (sorry ... )

                    Dann gibt es bei mir viele Instanzen die es eigentlich nicht gibt und das sogar sehr bekannte wie die Homematic Instanzen 🙂 Und selbst meine Javascript Instanzen gibt es nicht.

                    Bildschirmfoto 2021-08-07 um 22.23.36.png

                    apollon77A 1 Antwort Letzte Antwort
                    0
                    • sigi234S sigi234

                      @fastfoot
                      0_userdata.0 hat einwandfrei funktioniert ! 👍

                      javascript.x nicht.

                      So Richtig?

                      Screenshot (4109).png

                      F Offline
                      F Offline
                      fastfoot
                      schrieb am zuletzt editiert von fastfoot
                      #133

                      @sigi234 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                      So Richtig?

                      javascript.0Punkt*. Müsste ohne eig. auch gehen, habe aber javascript auch getestet

                      Edit: Nach dem Test hatte ich erst Zeile 17 eingebaut und dort auf javavascript geprüft. Ist korrigiert

                      iobroker läuft unter Docker auf QNAP TS-451+
                      SkriptRecovery: https://forum.iobroker.net/post/930558

                      sigi234S 1 Antwort Letzte Antwort
                      0
                      • F fastfoot

                        @sigi234 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                        So Richtig?

                        javascript.0Punkt*. Müsste ohne eig. auch gehen, habe aber javascript auch getestet

                        Edit: Nach dem Test hatte ich erst Zeile 17 eingebaut und dort auf javavascript geprüft. Ist korrigiert

                        sigi234S Online
                        sigi234S Online
                        sigi234
                        Forum Testing Most Active
                        schrieb am zuletzt editiert von sigi234
                        #134

                        @fastfoot sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                        @sigi234 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                        So Richtig?

                        javascript.0Punkt*. Müsste ohne eig. auch gehen, habe aber javascript auch getestet

                        Leider Nein

                        Aha Zeile 17

                        Geht jetzt 😀

                        Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                        Immer Daten sichern!

                        1 Antwort Letzte Antwort
                        0
                        • F fastfoot

                          @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                          Und ja wenn so ein Script von @Dutchman "Nicht existierenden Objekten" den Typ "folder" spendiert ist es ja gut.

                          @Dutchman kann das sicher besser, aber das hier funktioniert auch. Dennoch, beim Rumfummeln am System empfiehlt sich immer ein Backup

                          Vorraussetzung: In den Settings der Javascript-Instanz muss setObject erlaubt sein

                          • Das Setzen des Stammordners erfolgt in Zeile 12
                          • Als Stammordner werden javascript.x und 0_userdata.0 unterstützt, man könnte oder sollte es evtl. noch auf alias.0 erweitern(Zeile 17)

                          /**
                          * Zweck:       Korrigiert übergeordnete Ordnerstrukturen eines Datenpunkts
                          * Datum:      07.08.2021
                          * Autor:       @fastfoot
                          */
                          
                          //              In den Settings der Javascript-Instanz muss setObject erlaubt sein!!!
                          
                          let arr = [],
                             id = '';
                          
                          const ids = $('0_userdata.0.*');
                          ids.each(idTmp => {
                             arr=idTmp.split('.');
                             arr.splice(arr.length-1);
                             id=arr.join('.');
                             if(arr[0] === '0_userdata' || arr[0] === 'javascript'){
                                 correctObject(id, arr);
                             }
                          })
                          
                          function correctObject(id,arr){
                             if(arr.length === 2) return;
                             if(!existsObject(id)){
                                 let obj = {};
                                 obj = {
                                     type: 'folder',
                                     common:{
                                         name: arr[arr.length - 1]
                                     }
                                 }
                                 extendObject(id, obj, e => {
                                     if (e) log('Fehler beim Schreiben des Objektes: '+ id + ' ' + e);
                                 })
                             }
                             arr.splice(arr.length - 1);
                             id = arr.join('.');
                             correctObject(id, arr);
                          }
                          

                          mickymM Offline
                          mickymM Offline
                          mickym
                          Most Active
                          schrieb am zuletzt editiert von mickym
                          #135

                          @fastfoot Also auch von mir herzlichen Dank.

                          Ich habe es neben 0_userdata, über alias, javascript und mqtt Instanzen gejagt. Und das Script hat nun überall Folder Objekte daraus erstellt. 😉 - Das war eine Superidee, das so zu implementieren.

                          Danke schön!!!!!!!!!!! 👍 👍 👍 👍 👍

                          Sowas in das Update gebaut - und .... 😉

                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                          sigi234S 1 Antwort Letzte Antwort
                          0
                          • mickymM mickym

                            @fastfoot Also auch von mir herzlichen Dank.

                            Ich habe es neben 0_userdata, über alias, javascript und mqtt Instanzen gejagt. Und das Script hat nun überall Folder Objekte daraus erstellt. 😉 - Das war eine Superidee, das so zu implementieren.

                            Danke schön!!!!!!!!!!! 👍 👍 👍 👍 👍

                            Sowas in das Update gebaut - und .... 😉

                            sigi234S Online
                            sigi234S Online
                            sigi234
                            Forum Testing Most Active
                            schrieb am zuletzt editiert von
                            #136

                            @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                            Sowas in das Update gebaut - und ....

                            Ja, und das mit nur 39 Zeilen und in 1 Sekunde fertig. Wahnsinn.

                            Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                            Immer Daten sichern!

                            1 Antwort Letzte Antwort
                            0
                            • F fastfoot

                              @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                              Und ja wenn so ein Script von @Dutchman "Nicht existierenden Objekten" den Typ "folder" spendiert ist es ja gut.

                              @Dutchman kann das sicher besser, aber das hier funktioniert auch. Dennoch, beim Rumfummeln am System empfiehlt sich immer ein Backup

                              Vorraussetzung: In den Settings der Javascript-Instanz muss setObject erlaubt sein

                              • Das Setzen des Stammordners erfolgt in Zeile 12
                              • Als Stammordner werden javascript.x und 0_userdata.0 unterstützt, man könnte oder sollte es evtl. noch auf alias.0 erweitern(Zeile 17)

                              /**
                              * Zweck:       Korrigiert übergeordnete Ordnerstrukturen eines Datenpunkts
                              * Datum:      07.08.2021
                              * Autor:       @fastfoot
                              */
                              
                              //              In den Settings der Javascript-Instanz muss setObject erlaubt sein!!!
                              
                              let arr = [],
                                 id = '';
                              
                              const ids = $('0_userdata.0.*');
                              ids.each(idTmp => {
                                 arr=idTmp.split('.');
                                 arr.splice(arr.length-1);
                                 id=arr.join('.');
                                 if(arr[0] === '0_userdata' || arr[0] === 'javascript'){
                                     correctObject(id, arr);
                                 }
                              })
                              
                              function correctObject(id,arr){
                                 if(arr.length === 2) return;
                                 if(!existsObject(id)){
                                     let obj = {};
                                     obj = {
                                         type: 'folder',
                                         common:{
                                             name: arr[arr.length - 1]
                                         }
                                     }
                                     extendObject(id, obj, e => {
                                         if (e) log('Fehler beim Schreiben des Objektes: '+ id + ' ' + e);
                                     })
                                 }
                                 arr.splice(arr.length - 1);
                                 id = arr.join('.');
                                 correctObject(id, arr);
                              }
                              

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

                              @fastfoot sagte: das hier funktioniert auch.

                              Etwas abgewandelt für eine Struktur folder.device.channel.state bzw. nur der hintere Teil, wenn die Struktur kürzer ist:

                              // In den Settings der Javascript-Instanz muss setObject erlaubt sein!!!
                              const ids = $('javascript.1.*'); // Anpassen!!
                              
                              var arr = [];
                              
                              function correctObject(id, arr, level){
                                 if(arr.length === 2) return;
                                 let type = 'folder';
                                 if(level == 1) type = 'device';
                                 else if(level == 0) type = 'channel';
                                 if(!existsObject(id)) {
                                     const obj = {
                                         type: type,
                                         common:{
                                             name: arr[arr.length - 1]
                                         },
                                         native: {}
                                     }
                                     setObject(id, obj, e => {
                                         if (e) log('Fehler beim Schreiben des Objektes: '+ id + ' ' + e);
                                     })
                                 }
                                 arr.pop();
                                 id = arr.join('.');
                                 level++;
                                 correctObject(id, arr, level);
                              }
                              
                              ids.each(id => {
                                 arr = id.split('.');
                                 arr.pop();
                                 id = arr.join('.');
                                 if(arr[0] === '0_userdata' || arr[0] === 'javascript' || arr[0] === 'alias') {
                                     correctObject(id, arr, 0);
                                 }
                              });
                              

                              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

                              F 1 Antwort Letzte Antwort
                              1
                              • K klassisch

                                Oh, Leute, wieso nachträglich Regeln verschärfen? Do it once, do it right! Bein Ersten sind wir frei, beim Zweiten sind wir Knechte.
                                Und was halt mal erlaubt war, ist dann halt so und man sollte es nicht einschränken. Plötzlich muß man Skripte ändern. Der ioBroker soll für mich arbeiten, nicht ich für den ioBroker.

                                Dann laufen mit Admin 5 evtl meine Skripte nicht mehr?
                                Habe für meine Statistiken praktische Datenstrukturen, bei der ein Kanal/"Folder" gleichzeitig auch Daten trägt:
                                615886e1-0162-4be3-9183-03c0bc4472a1-grafik.png

                                Also der Kanal

                                0_userdata.0.power.smartMeterTotalEnergy
                                

                                Stellt nicht nur ein Strukturelement ("Folder") dar, sondern trägt auch noch die Zahl als Inhalt. Wird per Skript für die Datenpunkte, für die ich Statistiken haben möchte, angelegt. Geht wunderbar, schöne Abkürzung und übersichtlich. Super praktisch.
                                Wird das mit dem neuen Admin jetzt auch verboten/blockiert/funktionslos/bewarnt?

                                apollon77A Offline
                                apollon77A Offline
                                apollon77
                                schrieb am zuletzt editiert von
                                #138

                                @klassisch sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                Wird das mit dem neuen Admin jetzt auch verboten/blockiert/funktionslos/bewarnt?

                                ne, wie Paul53 schon sagte hat das nichts damit zu tun - so wie ich auch in mehreren Posts oben geschrieben habe.

                                Aber Deine Strukturen sind ein typisches Beispiel für das Ausreizen der Grenzen. Und dann wundern sich User warum Dinge nicht tun ... tja ...

                                Ob das irgendwann mal mit einem künftigen js-controller angemeckert wird kann ich Dir heute nicht sagen.

                                Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                1 Antwort Letzte Antwort
                                1
                                • cashC cash

                                  @apollon77 said in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                  If Du keinen stift hast dann existiert das Objekt nicht ... daher musst du es "initial" anlegen (sorry ... )

                                  Dann gibt es bei mir viele Instanzen die es eigentlich nicht gibt und das sogar sehr bekannte wie die Homematic Instanzen 🙂 Und selbst meine Javascript Instanzen gibt es nicht.

                                  Bildschirmfoto 2021-08-07 um 22.23.36.png

                                  apollon77A Offline
                                  apollon77A Offline
                                  apollon77
                                  schrieb am zuletzt editiert von
                                  #139

                                  @cash Was meinst du? Weil es nur "hm-rpc" auf der ersten ebene gibt? Dann klapp mal auf ... da ommt dann 0/1 und so

                                  Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                  • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                  • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                  cashC 1 Antwort Letzte Antwort
                                  0
                                  • apollon77A Offline
                                    apollon77A Offline
                                    apollon77
                                    schrieb am zuletzt editiert von
                                    #140

                                    @fastfoot @paul53 Habe Eure Skripte oben mal verlinkt. Da wart Ihr schneller als @Dutchman 🙂

                                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                    1 Antwort Letzte Antwort
                                    0
                                    • paul53P paul53

                                      @fastfoot sagte: das hier funktioniert auch.

                                      Etwas abgewandelt für eine Struktur folder.device.channel.state bzw. nur der hintere Teil, wenn die Struktur kürzer ist:

                                      // In den Settings der Javascript-Instanz muss setObject erlaubt sein!!!
                                      const ids = $('javascript.1.*'); // Anpassen!!
                                      
                                      var arr = [];
                                      
                                      function correctObject(id, arr, level){
                                         if(arr.length === 2) return;
                                         let type = 'folder';
                                         if(level == 1) type = 'device';
                                         else if(level == 0) type = 'channel';
                                         if(!existsObject(id)) {
                                             const obj = {
                                                 type: type,
                                                 common:{
                                                     name: arr[arr.length - 1]
                                                 },
                                                 native: {}
                                             }
                                             setObject(id, obj, e => {
                                                 if (e) log('Fehler beim Schreiben des Objektes: '+ id + ' ' + e);
                                             })
                                         }
                                         arr.pop();
                                         id = arr.join('.');
                                         level++;
                                         correctObject(id, arr, level);
                                      }
                                      
                                      ids.each(id => {
                                         arr = id.split('.');
                                         arr.pop();
                                         id = arr.join('.');
                                         if(arr[0] === '0_userdata' || arr[0] === 'javascript' || arr[0] === 'alias') {
                                             correctObject(id, arr, 0);
                                         }
                                      });
                                      
                                      F Offline
                                      F Offline
                                      fastfoot
                                      schrieb am zuletzt editiert von
                                      #141

                                      @paul53 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                      Etwas abgewandelt...

                                      Gute Idee, die Struktur zu erweitern, da habe ich keinerlei Erfahrung

                                      Du hast obj.native:{} gesetzt, aber zumindest Admin5 setzt dieses beim manuellen Anlegen für keines der level folder, device oder channel, weshalb ich es auch weggelassen hatte. Macht es dennoch Sinn?

                                      setObject() scheint logischer, da es ja nichts zu erweitern gibt. Hatte ich ursprünglich aber dann hatte ich wohl einen Denkfehler

                                      arr.pop() made my day 🙂 Wieder was gelernt...

                                      iobroker läuft unter Docker auf QNAP TS-451+
                                      SkriptRecovery: https://forum.iobroker.net/post/930558

                                      paul53P 1 Antwort Letzte Antwort
                                      0
                                      • apollon77A apollon77

                                        @cash Was meinst du? Weil es nur "hm-rpc" auf der ersten ebene gibt? Dann klapp mal auf ... da ommt dann 0/1 und so

                                        cashC Offline
                                        cashC Offline
                                        cash
                                        Most Active
                                        schrieb am zuletzt editiert von
                                        #142

                                        @apollon77 said in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                        @cash Was meinst du? Weil es nur "hm-rpc" auf der ersten ebene gibt? Dann klapp mal auf ... da ommt dann 0/1 und so

                                        Du hattest oben geschrieben wenn es bei einem existieren Objekt kein Stift gibt wurde das Objekt nicht richtig angelegt. In meinem Screenshot sieht man das nicht nur wir Anwender solche Fälle bei den selbsterstellten Objekten haben sondern das viele Adapter es auch nicht besser machen. Die müssten doch als type „folder“, „meta“ oder was auch immer angelegt werden?

                                        apollon77A 1 Antwort Letzte Antwort
                                        0
                                        • cashC cash

                                          @apollon77 said in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                          @cash Was meinst du? Weil es nur "hm-rpc" auf der ersten ebene gibt? Dann klapp mal auf ... da ommt dann 0/1 und so

                                          Du hattest oben geschrieben wenn es bei einem existieren Objekt kein Stift gibt wurde das Objekt nicht richtig angelegt. In meinem Screenshot sieht man das nicht nur wir Anwender solche Fälle bei den selbsterstellten Objekten haben sondern das viele Adapter es auch nicht besser machen. Die müssten doch als type „folder“, „meta“ oder was auch immer angelegt werden?

                                          apollon77A Offline
                                          apollon77A Offline
                                          apollon77
                                          schrieb am zuletzt editiert von
                                          #143

                                          @cash korrekt und unterhalb von name.0 sollten sie das auch schon größtenteils tun. Andere Baustelle.

                                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                          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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          378

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe