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. Objekte sichern

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    11
    2
    199

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

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

Objekte sichern

Objekte sichern

Scheduled Pinned Locked Moved ioBroker Allgemein
sicherungbackupobjektewiederherstellung
30 Posts 8 Posters 3.0k Views 8 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.
  • WszeneW Offline
    WszeneW Offline
    Wszene
    wrote on last edited by
    #10

    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

    Meine Hard- & Software:

    • MSI Cubi 5 10M-049DE mit Proxmox
    • CC2652P Zigbee Stick
    • Steckdosen mit Tasmota und Zigbee
    • Lichtschalter mit Tasmota
    • IKEA TRÅDFRI Glühbirnen
    • Aqara Sensoren
    1 Reply Last reply
    0
    • WszeneW Offline
      WszeneW Offline
      Wszene
      wrote on last edited by
      #11

      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

      Meine Hard- & Software:

      • MSI Cubi 5 10M-049DE mit Proxmox
      • CC2652P Zigbee Stick
      • Steckdosen mit Tasmota und Zigbee
      • Lichtschalter mit Tasmota
      • IKEA TRÅDFRI Glühbirnen
      • Aqara Sensoren
      J.A.R.V.I.S.J 1 Reply Last reply
      0
      • WszeneW Wszene

        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.J Offline
        J.A.R.V.I.S.J Offline
        J.A.R.V.I.S.
        Developer
        wrote on last edited by
        #12

        @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
        0
        • WszeneW Offline
          WszeneW Offline
          Wszene
          wrote on last edited by
          #13

          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

          Meine Hard- & Software:

          • MSI Cubi 5 10M-049DE mit Proxmox
          • CC2652P Zigbee Stick
          • Steckdosen mit Tasmota und Zigbee
          • Lichtschalter mit Tasmota
          • IKEA TRÅDFRI Glühbirnen
          • Aqara Sensoren
          J.A.R.V.I.S.J 1 Reply Last reply
          0
          • WszeneW Wszene

            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.J Offline
            J.A.R.V.I.S.J Offline
            J.A.R.V.I.S.
            Developer
            wrote on last edited by J.A.R.V.I.S.
            #14

            @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
            0
            • WszeneW Offline
              WszeneW Offline
              Wszene
              wrote on last edited by
              #15

              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

              Meine Hard- & Software:

              • MSI Cubi 5 10M-049DE mit Proxmox
              • CC2652P Zigbee Stick
              • Steckdosen mit Tasmota und Zigbee
              • Lichtschalter mit Tasmota
              • IKEA TRÅDFRI Glühbirnen
              • Aqara Sensoren
              1 Reply Last reply
              0
              • S Offline
                S Offline
                Strobi
                wrote on last edited by Strobi
                #16

                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-skyL 1 Reply Last reply
                0
                • S 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-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  wrote on last edited by
                  #17

                  @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

                  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

                  bahnuhrB S 3 Replies Last reply
                  1
                  • liv-in-skyL liv-in-sky

                    @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

                    bahnuhrB Online
                    bahnuhrB Online
                    bahnuhr
                    Forum Testing Most Active
                    wrote on last edited by
                    #18

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


                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                    Danke.
                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                    ScreenToGif :https://www.screentogif.com/downloads.html

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

                      @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

                      S Offline
                      S Offline
                      Strobi
                      wrote on last edited by
                      #19

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

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

                        @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

                        bahnuhrB Online
                        bahnuhrB Online
                        bahnuhr
                        Forum Testing Most Active
                        wrote on last edited by
                        #20

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


                        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                        Danke.
                        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                        ScreenToGif :https://www.screentogif.com/downloads.html

                        liv-in-skyL 1 Reply Last reply
                        0
                        • bahnuhrB bahnuhr

                          @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-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          wrote on last edited by
                          #21

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

                          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

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

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

                            bahnuhrB Online
                            bahnuhrB Online
                            bahnuhr
                            Forum Testing Most Active
                            wrote on last edited by
                            #22

                            @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


                            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                            Danke.
                            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                            ScreenToGif :https://www.screentogif.com/downloads.html

                            liv-in-skyL 1 Reply Last reply
                            0
                            • bahnuhrB bahnuhr

                              @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-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              wrote on last edited by
                              #23

                              @bahnuhr

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

                              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

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

                                @bahnuhr

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

                                bahnuhrB Online
                                bahnuhrB Online
                                bahnuhr
                                Forum Testing Most Active
                                wrote on last edited by
                                #24

                                @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);}
                                        };
                                    }
                                    });
                                
                                
                                

                                Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                Danke.
                                gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                ScreenToGif :https://www.screentogif.com/downloads.html

                                S liv-in-skyL 2 Replies Last reply
                                2
                                • bahnuhrB bahnuhr

                                  @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 Offline
                                  S Offline
                                  Strobi
                                  wrote on last edited by
                                  #25

                                  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-skyL 1 Reply Last reply
                                  0
                                  • S Strobi

                                    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-skyL Offline
                                    liv-in-skyL Offline
                                    liv-in-sky
                                    wrote on last edited by
                                    #26

                                    @strobi

                                    hast du im dateisystem nachgeschaut -?

                                    Image 121.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

                                    1 Reply Last reply
                                    0
                                    • bahnuhrB bahnuhr

                                      @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);}
                                              };
                                          }
                                          });
                                      
                                      
                                      
                                      liv-in-skyL Offline
                                      liv-in-skyL Offline
                                      liv-in-sky
                                      wrote on last edited by liv-in-sky
                                      #27

                                      @bahnuhr sagte in Objekte sichern:

                                      @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);}
                                              };
                                          }
                                          });
                                      
                                      
                                      

                                      du könntest noch beim namen folgendes einfügen - dann muss man da nichts ändern/anpassen

                                      Image 122.png

                                      ps: das wurde nicht von mir geschrieben - habe ich irgendwoher kopiert

                                      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

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

                                        @bahnuhr sagte in Objekte sichern:

                                        @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);}
                                                };
                                            }
                                            });
                                        
                                        
                                        

                                        du könntest noch beim namen folgendes einfügen - dann muss man da nichts ändern/anpassen

                                        Image 122.png

                                        ps: das wurde nicht von mir geschrieben - habe ich irgendwoher kopiert

                                        S Offline
                                        S Offline
                                        Strobi
                                        wrote on last edited by
                                        #28

                                        Peinlich - nach dem Pfadname "/opt/iobroker/state" hat einfach nur ein "/" gefehlt 🙂

                                        --> /opt/iobroker/state/

                                        1 Reply Last reply
                                        0
                                        • S Offline
                                          S Offline
                                          Strobi
                                          wrote on last edited by
                                          #29

                                          Könnte man auch noch die Einheiten "unit" und die Datei-Typen "type" mit abspeichern?

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

                                          156

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          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