Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Objekte sichern

    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

    Objekte sichern

    This topic has been deleted. Only users with topic management privileges can see it.
    • Wszene
      Wszene last edited by

      @Homoran

      Daher ja die Frage ob ich die Objekte einzeln exportieren kann

      Homoran 1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @Wszene last edited by

        @Wszene natürlich!

        ABER:
        zu dem State gehört IMMER der ganze Pfad im Baum vorweg.
        Wenn du den dann manuell änderst hast du wahrscheinlich mehr arbeit als sie manuell in einer neuen Struktur neu anzulegen

        1 Reply Last reply Reply Quote 0
        • Wszene
          Wszene last edited by Wszene

          OK Versteh ich
          dann doch den ganzen Objekt Ordner exportieren

          Kannst mir auch sagen wie ich das mache?

          Edit: gefunden

          1 Reply Last reply Reply Quote 0
          • H
            Holzlenkrad @J.A.R.V.I.S. last edited by

            @J-A-R-V-I-S said in Objekte sichern:

            Vielleicht solltest du deine Feheler aber vorher mal hier posten, damit dir vielleicht geholfen werden kann, bevor du dein komplettes System neu machst.

            Das ist hier aber hin und wieder nur teilweise von Erfolg gekrönt....

            1 Reply Last reply Reply Quote 0
            • Wszene
              Wszene last edited by

              Andere Frage:
              wie kann ich den ioBroker neuinstallieren ohne den Server neu zu machen

              Grund:
              Ich habe auf dem gleichen Server auch ConBee II installiert und diesen möchte ich ungern neu machen wollen

              1 Reply Last reply Reply Quote 0
              • Wszene
                Wszene last edited by

                Hallo Zusammen,

                Das mit dem Export und Import der Datenpunkte hat funktioniert

                Jetzt habe ich aber eine erneute Frage

                Ich mochte gern einen neuen Datenpunkt erstellen welche in einem neuen Ordner ist

                02_FuerAlexaUndVIS.0.test
                

                Also der Ordner soll "02_FuerAlexaUndVIS" heissen und der Datenpunkt in dem Fall "test"

                Als ich damals die "Ordner" erstellt habe brauchte ich nur die Seite mit dem Tab Datenpunkte neu laden und dann auf das "+" gehen und da war die erste Zeile leer
                Wenn ich das jetzt mache springt er immer in den "0_userdata.0." rein

                Hat sich da etwas geändert? Kann ich krinr neuen "Ordner" mehr ins Root-Verzeichniss anlegen=

                Gibt es da einen neuen Trick? z.B. ein Script?

                Danke im Voraus
                Gruß
                Marcel

                J.A.R.V.I.S. 1 Reply Last reply Reply Quote 0
                • J.A.R.V.I.S.
                  J.A.R.V.I.S. Developer @Wszene last edited by

                  @Wszene der Ordner '0_userdata.0' wurde glaube ich mit dem js-controller 2.0.0 eingeführt und ist genau für solche Datenpunkte gedacht, die du selber anlegst und sollte auch genutzt werden.

                  1 Reply Last reply Reply Quote 0
                  • Wszene
                    Wszene last edited by

                    Danke für deine Schnelle Antwort
                    Aber als ich meine Datenpunkte vom "alten" ioBroker wieder per .json Datei Importiert habe wurden diese ja auch wieder ins Root gelegt
                    Bildschirmfoto 2020-04-06 um 06.39.38.png

                    J.A.R.V.I.S. 1 Reply Last reply Reply Quote 0
                    • J.A.R.V.I.S.
                      J.A.R.V.I.S. Developer @Wszene last edited by J.A.R.V.I.S.

                      @Wszene das ist ja auch nicht verwunderlich, da die Objekte beim Import nicht auf ihre richtige Ordnerstruktur geprüft werden, bzw. darauf, ob du sie angelegt hast und wo sich diese jetzt befinden.

                      1 Reply Last reply Reply Quote 0
                      • Wszene
                        Wszene last edited by

                        Ich habe mir jetzt mal so eine .json genommen und diese wie folgt abgeändert

                        {
                          "02_FuerAlexaUndVIS.0.test": {
                            "from": "system.adapter.admin.0",
                            "user": "system.user.admin",
                            "ts": 1578150492870,
                            "common": {
                              "name": "Test_",
                              "role": "",
                              "type": "boolean",
                              "desc": "Manuell erzeugt",
                              "read": true,
                              "write": true,
                              "def": false,
                              "smartName": {
                                "de": "Test"
                              }
                            },
                            "native": {},
                            "acl": {
                              "object": 1638,
                              "owner": "system.user.admin",
                              "ownerGroup": "system.group.administrator",
                              "state": 1638
                            },
                            "_id": "02_FuerAlexaUndVIS.0.test",
                            "type": "state"
                          }
                        }
                        

                        Wenn ich diese importieren will kommt folgender Fehler
                        Bildschirmfoto 2020-04-06 um 09.20.08.png

                        1 Reply Last reply Reply Quote 0
                        • S
                          Strobi last edited by Strobi

                          Hallo zusammen,
                          möchte kein neues Thema aufmachen, daher hänge ich mich hier mal dran.

                          Ich hab mein System neu aufgesetzt und muss daher ioBroker auch neu aufsetzen.
                          Dafür habe ich mir den gesamten Objektbaum "0_userdata" vom alten ioBroker als JSON gesichtert. Den kann ich im neuen System auch wieder einlesen. So weit so gut.

                          Wie bekomme ich aber nun die ganzen Datenwerte, die in den einelnen Objekte stehen, ins neue ioBroker System übertragen?

                          Gibt's dazu ein paar praktikable Tipps?

                          Viele Grüße,
                          Strobi

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

                            @strobi

                            habe es schon lange nicht mehr genutzt - damit hat es damals aber bei mir geklappt

                            mit diesem script wird eine datei erzeugt und auf dem server gespeichert /opt/iobroker

                            diese datei ist eigentlich ein script, das die states ausliest und diese dann speichert - nach dem import der objecte kann man das erzeugte script , welches die states erstellt, aufrufen

                            • script definieren (pfad der datei, datei name und welchen teil er kopieren soll
                            • anschliessend datei öffnen und als javascript impotieren

                            das erzeugt script im ordner (opt/iobroker) sieht dann so aus - das muss als javascript importiert werden und einmalig aufgerufen werden

                            Image 112.png

                            das script, welches einmal im "alten iob" laufen muss:

                            var fs = require('fs');
                            var now =    new Date(); // store current date and time
                            var year =   now.getFullYear();
                            var month =  addZero(now.getMonth()+1).zero2;
                            var day =    addZero(now.getDate()).zero2;
                            var Thour =  addZero(now.getHours()).zero2;
                            var Tmin =   addZero(now.getMinutes()).zero2;
                            var Tsec =   addZero(now.getSeconds()).zero2;
                            var logdate = day + '.' + month + '.' + year;
                            var logtime = Thour + '-' + Tmin + '-' + Tsec;
                            
                            let datei = "/opt/iobroker/state";
                            
                            // Schedule für die Updates
                            //schedule("52 9,12,16,19 * * *",  function () {       
                            
                                var cacheSelectorState = $('[id=0_userdata.0.*]');
                            cacheSelectorState.each(function (id, i) {
                               if (!id.includes('scriptEnabled') && !id.includes('scriptProblem') && !id.includes('Log-Script')  && !id.includes('Ereignisliste') && !id.includes('GETPROCESS') ){
                               var val1 = getState(id).val;
                                  if (val1 == null ) 
                                     {log(id + " hat keinen state");} 
                                else {var zk = "setState('"+id+"', "+val1 +");\n";
                                      if(typeof val1 === "string" && !val1.includes('span') && !val1.includes('class')) {
                                          zk = "setState('"+id+"', '"+val1+"');\n";
                                          fs.appendFileSync(datei + "-userdata0-" + logdate + "-"+ logtime + ".txt", zk);}
                                      else {
                                          fs.appendFileSync(datei + "-userdata0-" + logdate + "-"+ logtime + ".txt", zk);}
                                      };}
                            });  
                            
                            
                            function addZero(i) {
                               if (i < 10) {
                                   i = "00" + i;
                                   j = "0" + i;
                               }
                               if (i > 9 && i < 100) {
                                   j = "0" + i;
                               }
                               return {
                                   'zero2' : i,
                                   'zero3' : j
                               };
                            } // Ende Funktion
                            
                            
                            
                            
                            
                            

                            die pfeile zeigen, wo man etwas einstellen soll/kann

                            Image 113.png

                            in der javascript instanz muss fs als zusätzliches modul angegeben werden

                            bahnuhr S 3 Replies Last reply Reply Quote 1
                            • bahnuhr
                              bahnuhr Forum Testing Most Active @liv-in-sky last edited by

                              @liv-in-sky
                              sehr cooles Script,
                              kann ich gebrauchen.
                              Danke.

                              @liv-in-sky sagte in Objekte sichern:

                              in der javascript instanz muss fs als zusätzliches modul angegeben werden

                              Ist nicht mehr notwendig. Funktioniert mittlerweile auch ohne diesen Eintrag (müsste nun integriert sein).

                              1 Reply Last reply Reply Quote 1
                              • S
                                Strobi @liv-in-sky last edited by

                                @liv-in-sky
                                Cool, vielen Dank für schnelle & sehr hilfreiche Antwort.
                                Das probiere ich die Tage mal aus 👍

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

                                  @liv-in-sky
                                  hab noch ein kleines Problem mit dem Unterscript für die 000
                                  0ff6791c-0606-40b8-b426-2e9669c4a33d-image.png

                                  Hast du ne aktuelle (richtige) Version.

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

                                    @bahnuhr

                                    ne - leider nicht - mir war das immer egal, es geht ja nur um den namen und ich habe die scripte gleich ausgeführt und die datei gelöscht - ich nutzte das imme rnur einmal

                                    hast du andere pläne mit dem script ?

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

                                      @liv-in-sky sagte in Objekte sichern:

                                      hast du andere pläne mit dem script ?

                                      Ich weiß noch nicht. Aber vielleicht automatisiert die states sichern.
                                      Und dann vielleicht noch auf der synology per ftp. Mal schauen.

                                      Aber ich passe das js mal an; wenn du nichts dagegen hast.
                                      Setze es dann wieder hier rein.

                                      mfg
                                      Dieter

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

                                        @bahnuhr

                                        ja gerne - habe im moment eh nicht so viel zeit, dass anzupassen

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

                                          @liv-in-sky

                                          so, nun mal geändert; die 000 laufen nun richtig.

                                          
                                          // Script um die eigenen DP mit den States zu sichern in einer txt Datei
                                          // diese Datei einfach öffnen und den Inhalt in ein Script einfügen und starten - dann werden die DP wieder mit dem richtigen Inhalt befüllt.
                                          // ursprünglich geschrieben von @liv-in-sky     https://forum.iobroker.net/topic/31769/objekte-sichern/17?page=1
                                          // umgeschrieben und erweitert von @bahnuhr
                                          // 09/2022
                                          
                                          // Variablen - zum ändern
                                              var wo_DP = "javascript.0"              // oder z.B. "0_userdata.0"
                                              let datei = "/opt/iobroker/state";      // Verzeichnis, wo die Datei gespeichert wird
                                          
                                          // Variablen - nicht ändern
                                              var fs = require('fs');
                                              var now = new Date();   // store current date and time
                                              var Jahr = now.getFullYear();
                                              var Monat = now.getMonth()+1; if (Monat < 10) { Monat = "0" + Monat; }; 
                                              var Tag = now.getDate(); if (Tag < 10) { Tag = "0" + Tag; }; 
                                              var Thour = now.getHours(); if (Thour < 10) { Thour = "0" + Thour; }; 
                                              var Tmin = now.getMinutes(); if (Tmin < 10) { Tmin = "0" + Tmin; }; 
                                              var Tsec = now.getSeconds(); if (Tsec < 10) { Tsec = "0" + Tsec; }; 
                                              var logdate = Tag + '.' + Monat + '.' + Jahr;
                                              var logtime = Thour + ':' + Tmin + ':' + Tsec;
                                          
                                          // Script Selector
                                              var cacheSelectorState = $('[id=' + wo_DP + '.*]');
                                              cacheSelectorState.each(function (id, i) {
                                              if (!id.includes('scriptEnabled') && !id.includes('scriptProblem') && !id.includes('debug') && !id.includes('variables') ){
                                                  var val1 = getState(id).val;
                                                  if (val1 == null ) 
                                                      {log(id + " hat keinen state");} 
                                                  else {var zk = "setState('"+id+"', "+val1 +");\n";
                                                      if(typeof val1 === "string" && !val1.includes('span') && !val1.includes('class')) {
                                                          zk = "setState('"+id+"', '"+val1+"');\n";
                                                          fs.appendFileSync(datei + "-javascript0-" + logdate + "-"+ logtime + ".txt", zk);}
                                                      else {
                                                          fs.appendFileSync(datei + "-javascript0-" + logdate + "-"+ logtime + ".txt", zk);}
                                                  };
                                              }
                                              });
                                          
                                          
                                          
                                          S liv-in-sky 2 Replies Last reply Reply Quote 2
                                          • S
                                            Strobi @bahnuhr last edited by

                                            Habe den Quellcode nun in ein Java-Script kopiert und ausgeführt - aber es wird mir keine Datei etc. angelegt.
                                            Was mache ich denn falsch?

                                            Wie lange muss ich das Skript laufen lassen oder beendet sich das von alleine?

                                            a7048798-061c-420d-84e5-ec6aa6b0bd2c-grafik.png

                                            liv-in-sky 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

                                            735
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            backup objekte sicherung wiederherstellung
                                            8
                                            30
                                            2245
                                            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