Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
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

Scheduled Pinned Locked Moved ioBroker Allgemein
466 Posts 36 Posters 92.1k Views 25 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • 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
    wrote on last edited by 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 Reply Last reply
    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
      wrote on last edited by
      #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 Reply Last reply
      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
        wrote on last edited by
        #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 Reply Last reply
        0
        • apollon77A Offline
          apollon77A Offline
          apollon77
          wrote on last edited by
          #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 Reply Last reply
          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
            wrote on last edited by
            #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 Reply Last reply
            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
              wrote on last edited by
              #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 Reply Last reply
              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
                wrote on last edited by
                #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 Reply Last reply
                0
                • apollon77A apollon77

                  @dr-bakterius
                  Wäre auch besser ein eigener Thread ;-))

                  Naja ein Skript gibt es nicht weil hier ja jeder anders arbeitet.

                  bei mirr legen zB die Skripte die Datenpunkte an , das mache ich nicht manuell im Admin 🙂

                  Wenn Du aber konvertieren willst dann exportiere via admin den javascript.0 Baum, mach "search&Replace" in nem texteditor und reimportiere an der anderen stelle.
                  Die Skripte könnte man auch einfach machen in dem man die Mirroring Funktion des Javascript adapter nutzt (also ausser man nutzt blockly, dann blöd). Dann hat man alles als Dateien, dort auch "seatc&replace" und speichern ...

                  Aber das ist natürlich jetzt seeehr simplifiziert 🙂 Muss jeder für sich schauen

                  Dr. BakteriusD Online
                  Dr. BakteriusD Online
                  Dr. Bakterius
                  Most Active
                  wrote on last edited by
                  #144

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

                  Die Skripte könnte man auch einfach machen in dem man die Mirroring Funktion des Javascript adapter nutzt (also ausser man nutzt blockly, dann blöd).

                  Geht doch bei Blockly auch - meine Blocklys werden in Dateien gespiegelt - oder habe dich da falsch verstanden?

                  paul53P apollon77A 2 Replies Last reply
                  0
                  • apollon77A apollon77

                    @jan1 Wie geschrieben wird das bei "Javascript" auf lange absehbare zeit nicht passieren. Es ist "Legacy" aber naja da ist zuviel schon da

                    A Offline
                    A Offline
                    Abruni
                    wrote on last edited by Abruni
                    #145

                    @apollon77 Tut mir Leid, dass ich da bezüglich der eigens erstellten DP im Ordner javascript.0 nachfragen muss. In meiner Erinnerung, war es so, dass die Erstellung dieser eigenen DP dort empfohlen wurde und es gar nicht möglich war, diese woanders anzulegen, zumindest über die Funktion CreateState aus einem (Blockly-) Script. Erste später ging es eben auch in 0_userdata.0. Seit dem dies geht, sind erstellte DP auch dort erstellt worden, aber es gibt eben noch viele DP in javascript.0 die auch in etlichen Scripten genutzt werden. Einerseits lese ich, dass diese DP bei einem javascript Update gelöscht werden, andererseits, dass da auf "lange Zeit nichts passieren wird". Was ist nun richtig? Werden eigene DP in javascript.0 "geduldet" und falls ja, müssen die in einem Unterordner sein? Wäre javascript.0.Kalender.Datuminfo.de.Woche.Jahr.Kalenderwoche.Nummer OK?
                    Wäre javascript.0.Adventszeit OK?

                    paul53P 1 Reply Last reply
                    0
                    • F fastfoot

                      @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...

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

                      @fastfoot sagte: 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?

                      Bei einigen Device- und Channel-Objekten habe ich es gesehen. Ob es Sinn macht, kann vielleicht @apollon77 beantworten?

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

                      1 Reply Last reply
                      0
                      • HomoranH Do not disturb
                        HomoranH Do not disturb
                        Homoran
                        Global Moderator Administrators
                        wrote on last edited by
                        #147

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

                        Einerseits lese ich, dass diese DP bei einem javascript Update gelöscht werden, andererseits, dass da auf "lange Zeit nichts passieren wird". Was ist nun richtig? Werden eigene DP in javascript.0 "geduldet"

                        da fehlt ein wichtiges Wort

                        bei einem javascript Update gelöscht werden könnten

                        der Rest passt

                        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 -

                        A 1 Reply Last reply
                        0
                        • A Abruni

                          @apollon77 Tut mir Leid, dass ich da bezüglich der eigens erstellten DP im Ordner javascript.0 nachfragen muss. In meiner Erinnerung, war es so, dass die Erstellung dieser eigenen DP dort empfohlen wurde und es gar nicht möglich war, diese woanders anzulegen, zumindest über die Funktion CreateState aus einem (Blockly-) Script. Erste später ging es eben auch in 0_userdata.0. Seit dem dies geht, sind erstellte DP auch dort erstellt worden, aber es gibt eben noch viele DP in javascript.0 die auch in etlichen Scripten genutzt werden. Einerseits lese ich, dass diese DP bei einem javascript Update gelöscht werden, andererseits, dass da auf "lange Zeit nichts passieren wird". Was ist nun richtig? Werden eigene DP in javascript.0 "geduldet" und falls ja, müssen die in einem Unterordner sein? Wäre javascript.0.Kalender.Datuminfo.de.Woche.Jahr.Kalenderwoche.Nummer OK?
                          Wäre javascript.0.Adventszeit OK?

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

                          @abruni sagte: Wäre javascript.0.Kalender.Datuminfo.de.Woche.Jahr.Kalenderwoche.Nummer OK? Wäre javascript.0.Adventszeit OK?

                          Es ist beides OK, aber wenn beides gleichzeitig existiert, ist es schlecht strukturiert, womit der Nutzer allerdings selbst zurecht kommen muss.

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

                          1 Reply Last reply
                          1
                          • Dr. BakteriusD Dr. Bakterius

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

                            Die Skripte könnte man auch einfach machen in dem man die Mirroring Funktion des Javascript adapter nutzt (also ausser man nutzt blockly, dann blöd).

                            Geht doch bei Blockly auch - meine Blocklys werden in Dateien gespiegelt - oder habe dich da falsch verstanden?

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

                            @dr-bakterius sagte: meine Blocklys werden in Dateien gespiegelt

                            Aber nicht als Blockly, sondern der erzeugte Javascript-Code. Ob man aus der letzten Zeile wieder ein Blockly machen kann?

                            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

                            liv-in-skyL F 2 Replies Last reply
                            0
                            • paul53P paul53

                              @dr-bakterius sagte: meine Blocklys werden in Dateien gespiegelt

                              Aber nicht als Blockly, sondern der erzeugte Javascript-Code. Ob man aus der letzten Zeile wieder ein Blockly machen kann?

                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              wrote on last edited by
                              #150

                              @paul53
                              @fastfoot

                              ich glaube, ich habe es noch nicht ganz "gerafft"

                              kann ich eure scripte auch bei meiner struktur anwenden - controll-own ist kein adapter - war ein eigenes "userdata" (lange, bevor das eingeführt wurde)

                              Image 2.png

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              cashC paul53P 2 Replies Last reply
                              0
                              • liv-in-skyL liv-in-sky

                                @paul53
                                @fastfoot

                                ich glaube, ich habe es noch nicht ganz "gerafft"

                                kann ich eure scripte auch bei meiner struktur anwenden - controll-own ist kein adapter - war ein eigenes "userdata" (lange, bevor das eingeführt wurde)

                                Image 2.png

                                cashC Offline
                                cashC Offline
                                cash
                                Most Active
                                wrote on last edited by
                                #151

                                @liv-in-sky ja kannst Du. Musst Du nur anpassen also statt 0_userdata. Dein Ordner.

                                Wichtig die Scripte räumen nicht auf. Das heißt falsche Struktur bleibt falsch. Nur bei nicht existieren Objekten wird entsprechende etwas gemacht. Bei z. B. LG_TV . ;Matrix 1 - 3 bleiben Device bzw Channel.

                                1 Reply Last reply
                                0
                                • liv-in-skyL liv-in-sky

                                  @paul53
                                  @fastfoot

                                  ich glaube, ich habe es noch nicht ganz "gerafft"

                                  kann ich eure scripte auch bei meiner struktur anwenden - controll-own ist kein adapter - war ein eigenes "userdata" (lange, bevor das eingeführt wurde)

                                  Image 2.png

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

                                  @liv-in-sky sagte: kann ich eure scripte auch bei meiner struktur anwenden

                                  Ja, mit Zeile 2:

                                  const ids = $('controll-own.0.*');
                                  

                                  und Erweiterung der Zeile 33:

                                     if(arr[0] === '0_userdata' || arr[0] === 'javascript' || arr[0] === 'controll-own') {
                                  

                                  Du hast allerdings schon auf der untersten Ebene einige Device- und Channel-Objekte, die nicht angefasst werden (Zeile 11).
                                  Die Zeilennummern beziehen sich auf mein Skript.

                                  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

                                  cashC liv-in-skyL 2 Replies Last reply
                                  0
                                  • paul53P paul53

                                    @liv-in-sky sagte: kann ich eure scripte auch bei meiner struktur anwenden

                                    Ja, mit Zeile 2:

                                    const ids = $('controll-own.0.*');
                                    

                                    und Erweiterung der Zeile 33:

                                       if(arr[0] === '0_userdata' || arr[0] === 'javascript' || arr[0] === 'controll-own') {
                                    

                                    Du hast allerdings schon auf der untersten Ebene einige Device- und Channel-Objekte, die nicht angefasst werden (Zeile 11).
                                    Die Zeilennummern beziehen sich auf mein Skript.

                                    cashC Offline
                                    cashC Offline
                                    cash
                                    Most Active
                                    wrote on last edited by
                                    #153

                                    @paul53 Könnte man nicht auch die bestehende Struktur aufräumen? Wenn ich das richtig sehe ist
                                    Gerät - Status ja nicht gut. Sondern eher folder - Status oder channel - Status

                                    Bzw gibt es eine Möglichkeit einfach alle Objekte von "eigene Objekte" nach 0_userdata zu kopieren. Man müßte danach nur noch die Scripte anpassen. Könnte dann "eigene Objekte" löschen und wäre clean. Gut man müsste noch bei den neuen Objekten SQL aktivieren und den Alias anpassen damit die alten Werte erhalten bleiben.

                                    Zusatzfrage: Gibt es die Möglichkeit in den eigenen Objekten nach den Objekttypen "array" und "object" zu suchen? Da gab es ja auch ein Breaking Change. Bin mir bei mir nicht 100% sicher ob ich solche Felder habe. Die, die ich wußte habe ich geprüft. Die hatte ich als String angelegt und sollte somit dort keine Probleme haben.

                                    paul53P apollon77A 2 Replies Last reply
                                    0
                                    • paul53P paul53

                                      @liv-in-sky sagte: kann ich eure scripte auch bei meiner struktur anwenden

                                      Ja, mit Zeile 2:

                                      const ids = $('controll-own.0.*');
                                      

                                      und Erweiterung der Zeile 33:

                                         if(arr[0] === '0_userdata' || arr[0] === 'javascript' || arr[0] === 'controll-own') {
                                      

                                      Du hast allerdings schon auf der untersten Ebene einige Device- und Channel-Objekte, die nicht angefasst werden (Zeile 11).
                                      Die Zeilennummern beziehen sich auf mein Skript.

                                      liv-in-skyL Offline
                                      liv-in-skyL Offline
                                      liv-in-sky
                                      wrote on last edited by
                                      #154

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

                                      if(arr[0] === '0_userdata' || arr[0] === 'javascript' || arr[0]) === 'controll-own') {

                                      erstmal danke

                                      in der geänderten zeile 33 ist eine klammer zuviel (nach 3ten arr[]) (nur falls andere das auch nutzen wollen)

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

                                      Du hast allerdings schon auf der untersten Ebene einige Device- und Channel-Objekte, die nicht angefasst werden (Zeile 11).

                                      bedeutet das, ich kann keine dp anlegen (ohne expert zu sein)

                                      ich mach jetzt erstmal ein proxmox backup 🙂

                                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                      paul53P 1 Reply Last reply
                                      0
                                      • liv-in-skyL liv-in-sky

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

                                        if(arr[0] === '0_userdata' || arr[0] === 'javascript' || arr[0]) === 'controll-own') {

                                        erstmal danke

                                        in der geänderten zeile 33 ist eine klammer zuviel (nach 3ten arr[]) (nur falls andere das auch nutzen wollen)

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

                                        Du hast allerdings schon auf der untersten Ebene einige Device- und Channel-Objekte, die nicht angefasst werden (Zeile 11).

                                        bedeutet das, ich kann keine dp anlegen (ohne expert zu sein)

                                        ich mach jetzt erstmal ein proxmox backup 🙂

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

                                        @liv-in-sky sagte: in der geänderten zeile 33 ist eine klammer zuviel

                                        Danke, korrigiert.

                                        @liv-in-sky sagte: bedeutet das, ich kann keine dp anlegen

                                        Doch. Datenpunkte können unter Channels und Devices erstellt werden (als Experte). Mit einem eigenen Verzeichnis in der Wurzel bist Du Experte.

                                        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

                                        liv-in-skyL 1 Reply Last reply
                                        0
                                        • cashC cash

                                          @paul53 Könnte man nicht auch die bestehende Struktur aufräumen? Wenn ich das richtig sehe ist
                                          Gerät - Status ja nicht gut. Sondern eher folder - Status oder channel - Status

                                          Bzw gibt es eine Möglichkeit einfach alle Objekte von "eigene Objekte" nach 0_userdata zu kopieren. Man müßte danach nur noch die Scripte anpassen. Könnte dann "eigene Objekte" löschen und wäre clean. Gut man müsste noch bei den neuen Objekten SQL aktivieren und den Alias anpassen damit die alten Werte erhalten bleiben.

                                          Zusatzfrage: Gibt es die Möglichkeit in den eigenen Objekten nach den Objekttypen "array" und "object" zu suchen? Da gab es ja auch ein Breaking Change. Bin mir bei mir nicht 100% sicher ob ich solche Felder habe. Die, die ich wußte habe ich geprüft. Die hatte ich als String angelegt und sollte somit dort keine Probleme haben.

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

                                          @cash sagte: Gerät - Status ja nicht gut.

                                          Doch - siehe Doku, die allerdings nicht ganz aktuell ist (folder fehlt).

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

                                          Man müßte danach nur noch die Scripte anpassen.

                                          Nur noch? Das kann viel Aufwand sein. Visualisierungen nicht zu vergessen.

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

                                          Gibt es die Möglichkeit in den eigenen Objekten nach den Objekttypen "array" und "object" zu suchen?

                                          Wozu? Javascript behandelt sie ab Version 5.2.x richtig. Viele Adapter sind auch schon angepasst.

                                          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

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          754

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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