Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Admin5: Ich kann keine Objekte mehr manuell anlegen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Admin5: Ich kann keine Objekte mehr manuell anlegen

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky @paul53 last edited by

      @paul53

      Image 4.png

      habe nur das geändert - sollte so ok sein

      Image 5.png

      apollon77 1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 @Dr. Bakterius last edited by

        @dr-bakterius Ja Du kannst den JavaScript code Anpassen aber das ändert nichts an den Daten in den Blocklies ... Sobald du das Blockly dann im Editor anfassen würdest wäre alles zurückgestellt. Das geht nicht

        Dr. Bakterius 1 Reply Last reply Reply Quote 0
        • apollon77
          apollon77 @liv-in-sky last edited by

          @liv-in-sky Typ Meta??? Warum? Wozu? Das ist an sich falsch

          liv-in-sky paul53 2 Replies Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @apollon77 last edited by

            @apollon77 was soll ich da reinschreiben ? was hälst du für besser

            1 Reply Last reply Reply Quote 0
            • apollon77
              apollon77 @cash last edited by

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

              Bzw gibt es eine Möglichkeit einfach alle Objekte von "eigene Objekte" nach 0_userdata zu kopieren.

              Hatten wir weiter oben schonmal: Objekt-Export im Admin, texteditor Search&Replace, Object Import im Admin

              1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @apollon77 last edited by paul53

                @apollon77 sagte: Typ Meta??? Warum? Wozu? Das ist an sich falsch

                Was ist daran falsch? "0_userdata.0", "0_test.0", "admin.0", "alias.0" ... haben auch den Typ "meta".

                1 Reply Last reply Reply Quote 0
                • apollon77
                  apollon77 @liv-in-sky last edited by apollon77

                  @liv-in-sky Ich denke das wird faktisch nicht funktionieren weil Admin denkt das das ein Adapter ist und deren Objekte darf keiner ändern. Vllt im Expertenmodus? Ansonsten halt zum anlegen von neuen Objekten dort mit ner zweiten Admin Instanz mit alter UI arbeiten so lange bis Du umgestellt hast

                  paul53 liv-in-sky 2 Replies Last reply Reply Quote 0
                  • apollon77
                    apollon77 @paul53 last edited by

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

                    Weshalb ist "controll-own.0" ein Folder-Objekt? Ändere es in den Eigenschaften in "meta".

                    Nee bitte nicht meta ... Das ist für was anderes

                    cash paul53 2 Replies Last reply Reply Quote 0
                    • paul53
                      paul53 @apollon77 last edited by

                      @apollon77 sagte: Vllt im Expertenmodus?

                      Ja, nur im Expertenmodus.

                      1 Reply Last reply Reply Quote 0
                      • F
                        fastfoot @paul53 last edited by

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

                        Ob man aus der letzten Zeile wieder ein Blockly machen kann?

                        Man kann, ich habe dazu auch schon verschiedene Beiträge gepostet. Die Behandlung ist etwas unterschiedlich je nachdem woher die Daten kommen(Extract aller Skripte, Blockly.js, backup.json). Hier mal für ein Beispiel für eine Blocklydatei im Mirrorpfad. Man könnte diese auch gleich ins System einlesen, ist hier aber nicht gemacht sondern wird als Datei zur Verfügung gestellt. Ist ein Skript aus meiner ersten Zeit mit Javascript.
                        Pfad und Filename sind in den Zeilen 8 + 9 anzugeben, die Importdaten liegen dann als Datei.xml vor

                         /**
                         * Zweck:       Extrahiert XML Datei aus Blockly.js im Mirror-Pfad
                         * Datum:       08.08.2021
                         * Autor:       @fastfoot
                         */
                        var fs = require('fs');
                        
                        var scriptPath = '/opt/iobroker/scripts/';
                        var inFile = 'TestXY'
                        
                        var scriptName1 = scriptPath + inFile + '.js';
                        var scriptName2 = scriptName1.replace('.js','.xml');
                        
                        function getXML() {
                            fs.readFile(scriptName1, 'utf8',  function(error, data) {
                                if(error) log('Fehler beim Lesen von ' + scriptName1, 'error');
                                else {
                                    const pos = data.lastIndexOf('\n');
                                    if (pos !== -1) {
                                        data = data.substring(pos + 1);
                                        if (data[0] === '/' && data[1] === '/') {
                                            data = decodeURIComponent(Buffer.from(data.substring(2), 'base64').toString('utf8'));
                                            if (data.startsWith('<xml xmlns')) {
                                                fs.writeFile(scriptName2, data, function(err) {
                                                    if(err) return console.log(err);
                                                });
                                            }
                                        }
                                    }
                                }
                            });
                        }
                        
                        getXML();
                        
                        liv-in-sky D 2 Replies Last reply Reply Quote 1
                        • cash
                          cash Most Active @apollon77 last edited by

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

                          Nee bitte nicht meta ... Das ist für was anderes

                          Wofür ist meta? Und warum ist 0_userdata dann meta?

                          apollon77 1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @apollon77 last edited by liv-in-sky

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

                            Ansonsten halt zum anlegen von neuen Objekten dort mit ner zweiten Admin Instanz mit alter UI arbeiten so lange bis Du umgestellt hast

                            sorry - aber das ist wie von neu anzufangen

                            • vis
                            • nodered
                            • blockly
                            • aliase
                            • alle js scripte
                            • flot
                            • smart controll adapter setting
                            • iqontrol setting
                            • eventlist adapter setting

                            muss alles umgestellt werden und soll am ende auch noch funktionieren

                            ich hoffe einfach, dass wird in der zukunft keine auswirkungen haben - ich kann damit leben, dass ich keine objecte mehr anlegen kann bzw nur im expert modus - neue sachen kann ich unter userdata machen -aber das alte alles umzustellen wäre etwas zuviel verlangt

                            cash 1 Reply Last reply Reply Quote 0
                            • apollon77
                              apollon77 @cash last edited by

                              @cash Ein meta Objekt ist die Grundlage um im ioBroker.eigenen File-Storage Dateien ablegen zu können.
                              0_userdata.0 hat es weil man auch unter dem Namespace Visu-Files ablegen können soll das man nicht immer alles in die Namespaces der Visu Adapter legen muss.

                              1 Reply Last reply Reply Quote 0
                              • cash
                                cash Most Active @liv-in-sky last edited by

                                @liv-in-sky Ich fange lieber jetzt damit an als in ein oder zwei Jahren wenn die Entwickler eine Version rausbringen wo es dann garnicht mehr geht und man dann alles schnell, schnell umstellen muss.

                                Ich werde auch einige Monate brauchen und richtig schön finde ich es nicht aber was nützt es? Es ist halt schade, dass man das früher machen konnte und das System es zugelassen hat…

                                paul53 liv-in-sky 2 Replies Last reply Reply Quote 0
                                • paul53
                                  paul53 @cash last edited by

                                  @cash sagte: Es ist halt schade, dass man das früher machen konnte und das System es zugelassen hat…

                                  Das System lässt es immer noch zu, allerdings nur noch für "Experten". Daran wird sich sicherlich auch nichts ändern?

                                  1 Reply Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky @cash last edited by

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

                                    Ich werde auch einige Monate brauchen und richtig schön finde ich es nicht aber was nützt es? Es ist halt schade, dass man das früher machen konnte und das System es zugelassen hat…

                                    leider geht das nicht über monate bzw ist viel aufwendiger - alles auf einmal oder garnicht - die vis macht das nicht mit, nur einzelene sachen umzustellen - der aufwand wäre um einiges mehr, wenn du das langsam machst - natürlich abhängig davon, was der nutzer konfiguriert hat, da du sonst immer wieder die selben umstellungen (search & replace) machen musst

                                    1 Reply Last reply Reply Quote 0
                                    • liv-in-sky
                                      liv-in-sky @fastfoot last edited by liv-in-sky

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

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

                                      Ob man aus der letzten Zeile wieder ein Blockly machen kann?

                                      Man kann, ich habe dazu auch schon verschiedene Beiträge gepostet. Die Behandlung ist etwas unterschiedlich je nachdem woher die Daten kommen(Extract aller Skripte, Blockly.js, backup.json). Hier mal für ein Beispiel für eine Blocklydatei im Mirrorpfad. Man könnte diese auch gleich ins System einlesen, ist hier aber nicht gemacht sondern wird als Datei zur Verfügung gestellt. Ist ein Skript aus meiner ersten Zeit mit Javascript.
                                      Pfad und Filename sind in den Zeilen 8 + 9 anzugeben, die Importdaten liegen dann als Datei.xml vor

                                       /**
                                       * Zweck:       Extrahiert XML Datei aus Blockly.js im Mirror-Pfad
                                       * Datum:       08.08.2021
                                       * Autor:       @fastfoot
                                       */
                                      var fs = require('fs');
                                      
                                      var scriptPath = '/opt/iobroker/scripts/';
                                      var inFile = 'TestXY'
                                      
                                      var scriptName1 = scriptPath + inFile + '.js';
                                      var scriptName2 = scriptName1.replace('.js','.xml');
                                      
                                      function getXML() {
                                          fs.readFile(scriptName1, 'utf8',  function(error, data) {
                                              if(error) log('Fehler beim Lesen von ' + scriptName1, 'error');
                                              else {
                                                  const pos = data.lastIndexOf('\n');
                                                  if (pos !== -1) {
                                                      data = data.substring(pos + 1);
                                                      if (data[0] === '/' && data[1] === '/') {
                                                          data = decodeURIComponent(Buffer.from(data.substring(2), 'base64').toString('utf8'));
                                                          if (data.startsWith('<xml xmlns')) {
                                                              fs.writeFile(scriptName2, data, function(err) {
                                                                  if(err) return console.log(err);
                                                              });
                                                          }
                                                      }
                                                  }
                                              }
                                          });
                                      }
                                      
                                      getXML();
                                      

                                      wußte gar nicht, dass du sowas gemacht hast - muss ich mal testen n - das wäre def. eine große hilfe

                                      könnte man da noch js scripte mit reinbingen, damit dort auch die objecte replaced werden können und eine schleife für einen bestimmten ordner - wie "controll-own.0.xxx"

                                      EDIT: sowas: "filesystem.readdirSync(dir).forEach(function(file) {"

                                      F 1 Reply Last reply Reply Quote 0
                                      • F
                                        fastfoot @liv-in-sky last edited by

                                        @liv-in-sky sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                        wußte gar nicht, dass du sowas gemacht hast - muss ich mal testen n - das wäre def. eine große hilfe

                                        da hast du meine Beiträge wohl nicht beachtet, bin ja auch noch nicht soo lange im Forum aktiv. Ausserdem waren das fast alles Antworten auf Probleme Anderer, keine eigenen, als [Skript] gekennzeichnete eigene Threads. Ich finde die teilweise selbst nicht mehr mit der SuFu hier im Forum

                                        könnte man da noch js scripte mit reinbingen, damit dort auch die objecte replaced werden können und eine schleife für einen bestimmten ordner - wie "controll-own.0.xxx"
                                        EDIT: sowas: "filesystem.readdirSync(dir).forEach(function(file) {"

                                        Können täte man, habe mal so einen kompletten Mirrorpfad in mein Testsystem importiert, rein aus Spaß. Ich verstehe allerdings nicht ganz was du konkret vorhast. Wenn du mal so ein Skript posten würdest und was du daran ändern möchtest kann ich gerne mal schauen

                                        liv-in-sky 1 Reply Last reply Reply Quote 0
                                        • liv-in-sky
                                          liv-in-sky @fastfoot last edited by

                                          @fastfoot

                                          ich möchte meine datenpunkte von "controll-own.0" nach "0_userdata.0.controll-own." umstellen

                                          normalerweise, wenn ich es sehe, schau ich mir deine sachen gerne an - du hast eigentlich immer gute scripte am start 🙂

                                          ich hab auch ein script, dass alle scripte im mirror-pfad einliest und durchsucht - ich suche darin nach datenpunkten und schaue nach, ob die noch existieren (war mal zum testen) cool wäre es, wenn man in den einzelnen scripten die object-pfade ändern könnte - bei mir - alles was "controll-own.0." enthält in "0_userdata.0.controll-own." zu ändern - vorallem auch in blocklys

                                          ich denke, man könnte das evtl mit nodered auch machen (weiß ich nicht - müßte man schauen, wie dort gespeichert wird)

                                          dann noch ein paar adapter settting angleichen und die ganzen vis seiten und fertig ist die umsetellung von "controll-own.0" nach "0_userdata.0.controll-own."

                                          F 1 Reply Last reply Reply Quote 0
                                          • paul53
                                            paul53 @apollon77 last edited by

                                            @apollon77 sagte: Nee bitte nicht meta ... Das ist für was anderes

                                            @liv-in-sky sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                            @apollon77 was soll ich da reinschreiben ? was hälst du für besser

                                            Das würde mich auch interessieren.

                                            apollon77 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

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

                                            778
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            36
                                            466
                                            69624
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo