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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [gelöst]Aus den Backups ein Javascript extrahieren

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    765

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

[gelöst]Aus den Backups ein Javascript extrahieren

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
28 Beiträge 7 Kommentatoren 2.4k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • MartinPM MartinP

    Welche Strategien sind denn üblich, Scripte zu entwickeln, und etwa besser unter Versionskontrolle zu haben?

    Über die Zwischenablage zwischen externer Entwicklungsumgebung und den Script-Fenstern zu jonglieren scheint mir nicht sehr professionell ...

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

    @martinp sagte in Aus den Backups ein Javascript extrahieren:

    Welche Strategien sind denn üblich, Scripte zu entwickeln, und etwa besser unter Versionskontrolle zu haben?

    keine Ahnung.
    Das ist einige Nummern zu hoch für mich.
    Die paar Blocklys Versionidiere ich nicht.

    Hast du mal mit dem Spiegelverzeichnis gearbeitet?

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    MartinPM 1 Antwort Letzte Antwort
    0
    • HomoranH Homoran

      @martinp sagte in Aus den Backups ein Javascript extrahieren:

      Welche Strategien sind denn üblich, Scripte zu entwickeln, und etwa besser unter Versionskontrolle zu haben?

      keine Ahnung.
      Das ist einige Nummern zu hoch für mich.
      Die paar Blocklys Versionidiere ich nicht.

      Hast du mal mit dem Spiegelverzeichnis gearbeitet?

      MartinPM Offline
      MartinPM Offline
      MartinP
      schrieb am zuletzt editiert von
      #7

      @homoran said in Aus den Backups ein Javascript extrahieren:

      Spiegelverzeichnis

      Nein, mit dem Begriff kann ich nichts anfangen

      Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
      Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
      Linux pve 6.8.12-16-pve
      6 GByte RAM für den Container
      Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
      Remote-Access über Wireguard der Fritzbox

      HomoranH 1 Antwort Letzte Antwort
      0
      • MartinPM MartinP

        @homoran said in Aus den Backups ein Javascript extrahieren:

        Spiegelverzeichnis

        Nein, mit dem Begriff kann ich nichts anfangen

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

        @martinp sagte in Aus den Backups ein Javascript extrahieren:

        @homoran said in Aus den Backups ein Javascript extrahieren:

        Spiegelverzeichnis

        Nein, mit dem Begriff kann ich nichts anfangen

        du kannst in der Instanz ein Spiegelverzeichnis definieren, wo dann alle Skripte hin gespiegelt werden.
        Aber Vorsicht!
        Das ist ein echter Spiegel.alles was da passiert passiert auch mit dem Original

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        MartinPM 1 Antwort Letzte Antwort
        0
        • HomoranH Homoran

          @martinp sagte in Aus den Backups ein Javascript extrahieren:

          @homoran said in Aus den Backups ein Javascript extrahieren:

          Spiegelverzeichnis

          Nein, mit dem Begriff kann ich nichts anfangen

          du kannst in der Instanz ein Spiegelverzeichnis definieren, wo dann alle Skripte hin gespiegelt werden.
          Aber Vorsicht!
          Das ist ein echter Spiegel.alles was da passiert passiert auch mit dem Original

          MartinPM Offline
          MartinPM Offline
          MartinP
          schrieb am zuletzt editiert von MartinP
          #9

          @homoran Nach dem Ort, WO man das konfiguriert, habe ich jetzt schon 20 Minuten gesucht, und Postings gewälzt..

          Es gab einen Screenshot, dass das in der Javascript-Instanz in den allgemeinen Einstellungen passiert, aber das sieht total anders aus, als in dem Post, der aber auch etwas älter ist, vielleicht steht das nun irgendwo anders

          32b019cb-56fa-4d69-8690-84075488b5a0-grafik.png

          Hier ist ein Thread dazu:

          https://forum.iobroker.net/topic/37598/script-engine-instanz-die-spiegelung-macht?_=1719758820907

          Und der Screenshot von 2020 ...

          einstellungen

          Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
          Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
          Linux pve 6.8.12-16-pve
          6 GByte RAM für den Container
          Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
          Remote-Access über Wireguard der Fritzbox

          HomoranH Thomas BraunT 2 Antworten Letzte Antwort
          0
          • MartinPM MartinP

            @homoran Nach dem Ort, WO man das konfiguriert, habe ich jetzt schon 20 Minuten gesucht, und Postings gewälzt..

            Es gab einen Screenshot, dass das in der Javascript-Instanz in den allgemeinen Einstellungen passiert, aber das sieht total anders aus, als in dem Post, der aber auch etwas älter ist, vielleicht steht das nun irgendwo anders

            32b019cb-56fa-4d69-8690-84075488b5a0-grafik.png

            Hier ist ein Thread dazu:

            https://forum.iobroker.net/topic/37598/script-engine-instanz-die-spiegelung-macht?_=1719758820907

            Und der Screenshot von 2020 ...

            einstellungen

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

            @martinp ich bin verwirrt!
            ich hab davon selber hier nur gelesen. Nie aktiv genutzt.
            Finde es jetzt tatsächlich auch nicht.

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            1 Antwort Letzte Antwort
            0
            • MartinPM MartinP

              @homoran Nach dem Ort, WO man das konfiguriert, habe ich jetzt schon 20 Minuten gesucht, und Postings gewälzt..

              Es gab einen Screenshot, dass das in der Javascript-Instanz in den allgemeinen Einstellungen passiert, aber das sieht total anders aus, als in dem Post, der aber auch etwas älter ist, vielleicht steht das nun irgendwo anders

              32b019cb-56fa-4d69-8690-84075488b5a0-grafik.png

              Hier ist ein Thread dazu:

              https://forum.iobroker.net/topic/37598/script-engine-instanz-die-spiegelung-macht?_=1719758820907

              Und der Screenshot von 2020 ...

              einstellungen

              Thomas BraunT Online
              Thomas BraunT Online
              Thomas Braun
              Most Active
              schrieb am zuletzt editiert von
              #11

              @martinp

              Bei mir finde ich das in den Einstellungen des javascript-Adapters.

              79e03adb-fa5f-4bfb-b8ef-c5b27cc6d268-grafik.png

              Linux-Werkzeugkasten:
              https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
              NodeJS Fixer Skript:
              https://forum.iobroker.net/topic/68035/iob-node-fix-skript
              iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

              HomoranH MartinPM 2 Antworten Letzte Antwort
              1
              • Thomas BraunT Thomas Braun

                @martinp

                Bei mir finde ich das in den Einstellungen des javascript-Adapters.

                79e03adb-fa5f-4bfb-b8ef-c5b27cc6d268-grafik.png

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

                @thomas-braun sagte in Aus den Backups ein Javascript extrahieren:

                Bei mir finde ich das in den Einstellungen des javascript-Adapters.

                ja, das suche ich.

                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                1 Antwort Letzte Antwort
                0
                • Thomas BraunT Thomas Braun

                  @martinp

                  Bei mir finde ich das in den Einstellungen des javascript-Adapters.

                  79e03adb-fa5f-4bfb-b8ef-c5b27cc6d268-grafik.png

                  MartinPM Offline
                  MartinPM Offline
                  MartinP
                  schrieb am zuletzt editiert von MartinP
                  #13

                  @thomas-braun Welche Adapter-Version? Bei mir ist es 8.3.1 aus Stable
                  Sowohl im Firefox, als auch im Chrome fehlt die von Dir rot markierte Einstellmöglichkeit

                  Nach "die Syntaxhilfe...." folgt sofort der erste Checkbox-Haken...

                  Oder verschwindet womöglich die Eingabezeile, wenn man da nicht direkt bei der Ersteinrichtung, was einträgt?

                  Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                  Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                  Linux pve 6.8.12-16-pve
                  6 GByte RAM für den Container
                  Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                  Remote-Access über Wireguard der Fritzbox

                  HomoranH Thomas BraunT 2 Antworten Letzte Antwort
                  0
                  • MartinPM MartinP

                    @thomas-braun Welche Adapter-Version? Bei mir ist es 8.3.1 aus Stable
                    Sowohl im Firefox, als auch im Chrome fehlt die von Dir rot markierte Einstellmöglichkeit

                    Nach "die Syntaxhilfe...." folgt sofort der erste Checkbox-Haken...

                    Oder verschwindet womöglich die Eingabezeile, wenn man da nicht direkt bei der Ersteinrichtung, was einträgt?

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

                    @martinp sagte in Aus den Backups ein Javascript extrahieren:

                    Bei mir ist es 8.3.1 aus Stable

                    nei ir auch, aber fie Funktion ist schon sehr lange im Geschäft

                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    1 Antwort Letzte Antwort
                    0
                    • MartinPM MartinP

                      @thomas-braun Welche Adapter-Version? Bei mir ist es 8.3.1 aus Stable
                      Sowohl im Firefox, als auch im Chrome fehlt die von Dir rot markierte Einstellmöglichkeit

                      Nach "die Syntaxhilfe...." folgt sofort der erste Checkbox-Haken...

                      Oder verschwindet womöglich die Eingabezeile, wenn man da nicht direkt bei der Ersteinrichtung, was einträgt?

                      Thomas BraunT Online
                      Thomas BraunT Online
                      Thomas Braun
                      Most Active
                      schrieb am zuletzt editiert von
                      #15

                      @martinp sagte in Aus den Backups ein Javascript extrahieren:

                      Oder verschwindet womöglich die Eingabezeile, wenn man da nicht direkt bei der Ersteinrichtung, was einträgt?

                      Das weiß ich nicht.
                      Version:
                      javascript - v8.6.0

                      Linux-Werkzeugkasten:
                      https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                      NodeJS Fixer Skript:
                      https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                      iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                      MartinPM HomoranH 2 Antworten Letzte Antwort
                      0
                      • Thomas BraunT Thomas Braun

                        @martinp sagte in Aus den Backups ein Javascript extrahieren:

                        Oder verschwindet womöglich die Eingabezeile, wenn man da nicht direkt bei der Ersteinrichtung, was einträgt?

                        Das weiß ich nicht.
                        Version:
                        javascript - v8.6.0

                        MartinPM Offline
                        MartinPM Offline
                        MartinP
                        schrieb am zuletzt editiert von
                        #16

                        @thomas-braun Habe vielleicht einen Workaround ...

                        Man kann die Json Konfig exportieren und importieren, und ggfs. dazwischen einfach bei "mirrorPath" etwas eintragen ...

                        {
                          "latitude": "",
                          "longitude": "",
                          "enableSetObject": true,
                          "enableSendToHost": true,
                          "enableExec": true,
                          "libraries": "",
                          "libraryTypings": "",
                          "subscribe": false,
                          "useSystemGPS": true,
                          "mirrorPath": "",
                          "mirrorInstance": "0",
                          "allowSelfSignedCerts": false,
                          "sunriseEvent": "sunrise",
                          "sunriseOffset": "",
                          "sunriseLimitStart": "06:00",
                          "sunriseLimitEnd": "12:00",
                          "sunsetEvent": "dusk",
                          "sunsetOffset": "",
                          "sunsetLimitStart": "18:00",
                          "sunsetLimitEnd": "23:00",
                          "maxSetStatePerMinute": "1000",
                          "gptKey": "",
                          "createAstroStates": true,
                          "maxTriggersPerScript": 100
                        }
                        

                        2144aae9-0382-48ba-aee0-e5ab81590ac4-grafik.png

                        Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                        Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                        Linux pve 6.8.12-16-pve
                        6 GByte RAM für den Container
                        Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                        Remote-Access über Wireguard der Fritzbox

                        MartinPM 1 Antwort Letzte Antwort
                        0
                        • Thomas BraunT Thomas Braun

                          @martinp sagte in Aus den Backups ein Javascript extrahieren:

                          Oder verschwindet womöglich die Eingabezeile, wenn man da nicht direkt bei der Ersteinrichtung, was einträgt?

                          Das weiß ich nicht.
                          Version:
                          javascript - v8.6.0

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

                          @thomas-braun das müsste schon lange darin sein. ich meine ja i h gatte es früher auch
                          Vielleicht weiß @haus-automatisierung was da los ist

                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                          MartinPM 1 Antwort Letzte Antwort
                          0
                          • HomoranH Homoran

                            @thomas-braun das müsste schon lange darin sein. ich meine ja i h gatte es früher auch
                            Vielleicht weiß @haus-automatisierung was da los ist

                            MartinPM Offline
                            MartinPM Offline
                            MartinP
                            schrieb am zuletzt editiert von MartinP
                            #18

                            @homoran Ich bin gerade dabei, das komplette Backup von heute Nacht einzuspielen - da habe ich die Hoffnung, dass die Aussage stimmt, dass da alle Skripte integriert sind.

                            Dann müssten die von mit heute eingebauten Fehler wieder weg sein ...

                            Da scheine ich aber etwas falsch verstanden haben, nach Aktivieren von "Sicherung abrufen" gibt es hier die ganze Zeit nur diese blaue wandernde Linie
                            354b1b47-02ca-494c-ad95-3ed3afe17c19-grafik.png

                            Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                            Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                            Linux pve 6.8.12-16-pve
                            6 GByte RAM für den Container
                            Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                            Remote-Access über Wireguard der Fritzbox

                            1 Antwort Letzte Antwort
                            0
                            • MartinPM MartinP

                              Ich habe eines meiner Skripte (Javascript, nicht Blockly) verhunzt, dass es sehr schwierig werden wird, den funktionieren Stand wieder herzustellen.
                              Wollte es in einem "richtigen" Editor bearbeiten, und das Rückspeichern über die Zwischenablage hat das File wohl durcheinandergewürfelt ...

                              Da dachte ich, kein Problem - mache ja mit dem Backup-Adapter tägliche Backups ...

                              Dort scheint Javascript aber nicht leicht zu finden zu zu sein ... als ich das damals aufgesetzt habe, habe ich aufgrund einer Meldung auf ein explizites Sichern von Skripten verzichtet... der Javascript Haken war aus...

                              2ec10c14-2a59-46c2-a20c-d06e32327c81-grafik.png

                              Da erschien eine Meldung, dass Javascript in der iobroker Sicherung enthalten sei, und das nur eine weitere zusätzliche Sicherung anlegen würde...

                              Zwei Fragen:

                              1. Kann man ein einzelnes Javascript file aus dem Backup extrahieren?
                              2. Mein Backup ist extrem klein (4,5 MByte) ist da überhaupt alles, was man für ein Restore braucht enthalten? Kommt mir etwas komisch vor ...
                              grrfieldG Offline
                              grrfieldG Offline
                              grrfield
                              schrieb am zuletzt editiert von
                              #19

                              @martinp Auch, wenn es jetzt vielleicht schon zu spät ist: vor längere Zeit gab es mal ein Skript https://forum.iobroker.net/topic/34161/source-code-von-script-aus-backup-json-extrahieren, um einzelne Skripte aus dem Backup zu extrahieren. Ich habe das mal erfolgreich angewandt, weiß aber nicht, ob es mit den aktuellen Backups noch funktioniert.

                              1 Antwort Letzte Antwort
                              1
                              • MartinPM Offline
                                MartinPM Offline
                                MartinP
                                schrieb am zuletzt editiert von
                                #20

                                @grrfield Das Restore aus der GUI scheint nicht weiterzulaufen, wenn man irgendwann den Browser schließt und den Rechner ausschaltet....

                                Das Script hat wunderbar funktioniert ...

                                Ich habe es auf meinem Linux-PC auf ein lokales Backup.tar.gz File vom NAS-Laufwerk arbeiten lassen

                                Hier das angepasste Skript - geht alles in ein lokales Arbeitsverzeichnis, und nutzt "console.log()"

                                /*
                                
                                Script zum Extrahieren von Scripts aus dem backup.json file
                                1. Verzeichnis /opt/iobroker/restore/ erstellen
                                2. backup.json file aus Backup extrahieren und in obiges Verzeichnis kopieren
                                3. Im Script unten den gewünschten Namen des Scripts eintragen
                                3. Script starten
                                4. das extrahierte Script wird mit dem Namen "the_script.js" erzeugt
                                */
                                
                                 
                                
                                // Hier das Verzeichnis und den Namen des Scripts eintragen. 
                                // Im Beispiel das Script 'Jalousien', das unter 'common' abgelegt wurde
                                
                                
                                // const name_of_script = "common.Jalousien";
                                const name_of_script = "Fritzbox.DOCSISV01";
                                
                                 
                                
                                var fs = require('fs');
                                //var filename = '/opt/iobroker/restore/backup.json';
                                var filename = './backup.json';
                                fs.readFile(filename, 'utf8', function(err, data) {
                                  if (!err) {
                                    var objects = JSON.parse(data).objects;
                                    var index = objects.findIndex(x => x.id ==="script.js." + name_of_script);
                                    var source = objects[index];
                                    var script_text = unescape(source.value.common.source);
                                    // fs.writeFile("/opt/iobroker/restore/the_script.js", script_text, function(err) {
                                    fs.writeFile("./the_script.js", script_text, function(err) {
                                    if(err) {
                                        return console.log(err);
                                    }
                                    console.log("Script was extracted");
                                    });
                                  } else console.log("backup.json konnte nicht gelesen werden");
                                });
                                
                                
                                

                                Arbeitsanweisung:
                                Auspacken von backup.json

                                martin@martin-D2836-S1:~/backup$ tar -xf ../backups/iobroker_2024_06_29-02_40_11_backupiobroker.tar.gz  backup.json
                                

                                Aufrufen des Scripts

                                martin@martin-D2836-S1:~/backup$ node extract.js 
                                Script was extracted
                                
                                

                                Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                                Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                                Linux pve 6.8.12-16-pve
                                6 GByte RAM für den Container
                                Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                                Remote-Access über Wireguard der Fritzbox

                                simatecS 1 Antwort Letzte Antwort
                                0
                                • MartinPM MartinP

                                  @grrfield Das Restore aus der GUI scheint nicht weiterzulaufen, wenn man irgendwann den Browser schließt und den Rechner ausschaltet....

                                  Das Script hat wunderbar funktioniert ...

                                  Ich habe es auf meinem Linux-PC auf ein lokales Backup.tar.gz File vom NAS-Laufwerk arbeiten lassen

                                  Hier das angepasste Skript - geht alles in ein lokales Arbeitsverzeichnis, und nutzt "console.log()"

                                  /*
                                  
                                  Script zum Extrahieren von Scripts aus dem backup.json file
                                  1. Verzeichnis /opt/iobroker/restore/ erstellen
                                  2. backup.json file aus Backup extrahieren und in obiges Verzeichnis kopieren
                                  3. Im Script unten den gewünschten Namen des Scripts eintragen
                                  3. Script starten
                                  4. das extrahierte Script wird mit dem Namen "the_script.js" erzeugt
                                  */
                                  
                                   
                                  
                                  // Hier das Verzeichnis und den Namen des Scripts eintragen. 
                                  // Im Beispiel das Script 'Jalousien', das unter 'common' abgelegt wurde
                                  
                                  
                                  // const name_of_script = "common.Jalousien";
                                  const name_of_script = "Fritzbox.DOCSISV01";
                                  
                                   
                                  
                                  var fs = require('fs');
                                  //var filename = '/opt/iobroker/restore/backup.json';
                                  var filename = './backup.json';
                                  fs.readFile(filename, 'utf8', function(err, data) {
                                    if (!err) {
                                      var objects = JSON.parse(data).objects;
                                      var index = objects.findIndex(x => x.id ==="script.js." + name_of_script);
                                      var source = objects[index];
                                      var script_text = unescape(source.value.common.source);
                                      // fs.writeFile("/opt/iobroker/restore/the_script.js", script_text, function(err) {
                                      fs.writeFile("./the_script.js", script_text, function(err) {
                                      if(err) {
                                          return console.log(err);
                                      }
                                      console.log("Script was extracted");
                                      });
                                    } else console.log("backup.json konnte nicht gelesen werden");
                                  });
                                  
                                  
                                  

                                  Arbeitsanweisung:
                                  Auspacken von backup.json

                                  martin@martin-D2836-S1:~/backup$ tar -xf ../backups/iobroker_2024_06_29-02_40_11_backupiobroker.tar.gz  backup.json
                                  

                                  Aufrufen des Scripts

                                  martin@martin-D2836-S1:~/backup$ node extract.js 
                                  Script was extracted
                                  
                                  
                                  simatecS Online
                                  simatecS Online
                                  simatec
                                  Developer Most Active
                                  schrieb am zuletzt editiert von
                                  #21

                                  @martinp Warum stellst du denn alles wieder her... Du hast doch laut Screenshot ein Backup der Javaskripte separat gemacht.
                                  Es hätte völlig ausgereicht, dieses wiederherzustellen

                                  • Besuche meine Github Seite
                                  • Beitrag hat geholfen oder willst du mich unterstützen
                                  • HowTo Restore ioBroker
                                  MartinPM 1 Antwort Letzte Antwort
                                  0
                                  • simatecS simatec

                                    @martinp Warum stellst du denn alles wieder her... Du hast doch laut Screenshot ein Backup der Javaskripte separat gemacht.
                                    Es hätte völlig ausgereicht, dieses wiederherzustellen

                                    MartinPM Offline
                                    MartinPM Offline
                                    MartinP
                                    schrieb am zuletzt editiert von
                                    #22

                                    @simatec Den Haken bei "Javascript" habe ich erst aktivert NACHDEM ich das Skript geschrottet hatte ...

                                    Alte Bauernregel: Man sollte die Backups seiner Produkte unter die Lupe nehmen, BEVOR etwas passiert ist ...

                                    Aber immerhin habe ich gelernt, dass es eigentlich unnötig ist, die Skripte separat zu sichern ...

                                    Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                                    Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                                    Linux pve 6.8.12-16-pve
                                    6 GByte RAM für den Container
                                    Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                                    Remote-Access über Wireguard der Fritzbox

                                    1 Antwort Letzte Antwort
                                    0
                                    • MartinPM MartinP

                                      @thomas-braun Habe vielleicht einen Workaround ...

                                      Man kann die Json Konfig exportieren und importieren, und ggfs. dazwischen einfach bei "mirrorPath" etwas eintragen ...

                                      {
                                        "latitude": "",
                                        "longitude": "",
                                        "enableSetObject": true,
                                        "enableSendToHost": true,
                                        "enableExec": true,
                                        "libraries": "",
                                        "libraryTypings": "",
                                        "subscribe": false,
                                        "useSystemGPS": true,
                                        "mirrorPath": "",
                                        "mirrorInstance": "0",
                                        "allowSelfSignedCerts": false,
                                        "sunriseEvent": "sunrise",
                                        "sunriseOffset": "",
                                        "sunriseLimitStart": "06:00",
                                        "sunriseLimitEnd": "12:00",
                                        "sunsetEvent": "dusk",
                                        "sunsetOffset": "",
                                        "sunsetLimitStart": "18:00",
                                        "sunsetLimitEnd": "23:00",
                                        "maxSetStatePerMinute": "1000",
                                        "gptKey": "",
                                        "createAstroStates": true,
                                        "maxTriggersPerScript": 100
                                      }
                                      

                                      2144aae9-0382-48ba-aee0-e5ab81590ac4-grafik.png

                                      MartinPM Offline
                                      MartinPM Offline
                                      MartinP
                                      schrieb am zuletzt editiert von MartinP
                                      #23

                                      Nachtrag: Ich habe jetzt die javascript.0.json von Hand bearbeitet, auf folgenden Stand:

                                      {
                                        "latitude": "",
                                        "longitude": "",
                                        "enableSetObject": true,
                                        "enableSendToHost": true,
                                        "enableExec": true,
                                        "libraries": "",
                                        "libraryTypings": "",
                                        "subscribe": false,
                                        "useSystemGPS": true,
                                        "mirrorPath": "/opt/iobroker/restore/skripte",
                                        "mirrorInstance": "javascript.0",
                                        "allowSelfSignedCerts": false,
                                        "sunriseEvent": "sunrise",
                                        "sunriseOffset": "",
                                        "sunriseLimitStart": "06:00",
                                        "sunriseLimitEnd": "12:00",
                                        "sunsetEvent": "dusk",
                                        "sunsetOffset": "",
                                        "sunsetLimitStart": "18:00",
                                        "sunsetLimitEnd": "23:00",
                                        "maxSetStatePerMinute": "1000",
                                        "gptKey": "",
                                        "createAstroStates": true,
                                        "maxTriggersPerScript": 100
                                      }
                                      

                                      Der Konfigurationsdialog sieht nun interessant aus ...

                                      65efb6f2-6bc1-492e-82c6-a909f55dbb22-grafik.png

                                      Ich denke, in dieser Version ist der Konfigurationsdialog ein wenig kaputt, da mit der Version aus dem Beta Repository die Probleme aber wohl nicht auftreten, werde ich das erstmal so lassen, und auf das Update in stable warten ...

                                      @martinp said in [gelöst]Aus den Backups ein Javascript extrahieren:

                                      @thomas-braun Habe vielleicht einen Workaround ...

                                      Man kann die Json Konfig exportieren und importieren, und ggfs. dazwischen einfach bei "mirrorPath" etwas eintragen ...

                                      {
                                        "latitude": "",
                                        "longitude": "",
                                        "enableSetObject": true,
                                        "enableSendToHost": true,
                                        "enableExec": true,
                                        "libraries": "",
                                        "libraryTypings": "",
                                        "subscribe": false,
                                        "useSystemGPS": true,
                                        "mirrorPath": "",
                                        "mirrorInstance": "0",
                                        "allowSelfSignedCerts": false,
                                        "sunriseEvent": "sunrise",
                                        "sunriseOffset": "",
                                        "sunriseLimitStart": "06:00",
                                        "sunriseLimitEnd": "12:00",
                                        "sunsetEvent": "dusk",
                                        "sunsetOffset": "",
                                        "sunsetLimitStart": "18:00",
                                        "sunsetLimitEnd": "23:00",
                                        "maxSetStatePerMinute": "1000",
                                        "gptKey": "",
                                        "createAstroStates": true,
                                        "maxTriggersPerScript": 100
                                      }
                                      

                                      Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                                      Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                                      Linux pve 6.8.12-16-pve
                                      6 GByte RAM für den Container
                                      Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                                      Remote-Access über Wireguard der Fritzbox

                                      bahnuhrB 1 Antwort Letzte Antwort
                                      0
                                      • MartinPM MartinP

                                        Nachtrag: Ich habe jetzt die javascript.0.json von Hand bearbeitet, auf folgenden Stand:

                                        {
                                          "latitude": "",
                                          "longitude": "",
                                          "enableSetObject": true,
                                          "enableSendToHost": true,
                                          "enableExec": true,
                                          "libraries": "",
                                          "libraryTypings": "",
                                          "subscribe": false,
                                          "useSystemGPS": true,
                                          "mirrorPath": "/opt/iobroker/restore/skripte",
                                          "mirrorInstance": "javascript.0",
                                          "allowSelfSignedCerts": false,
                                          "sunriseEvent": "sunrise",
                                          "sunriseOffset": "",
                                          "sunriseLimitStart": "06:00",
                                          "sunriseLimitEnd": "12:00",
                                          "sunsetEvent": "dusk",
                                          "sunsetOffset": "",
                                          "sunsetLimitStart": "18:00",
                                          "sunsetLimitEnd": "23:00",
                                          "maxSetStatePerMinute": "1000",
                                          "gptKey": "",
                                          "createAstroStates": true,
                                          "maxTriggersPerScript": 100
                                        }
                                        

                                        Der Konfigurationsdialog sieht nun interessant aus ...

                                        65efb6f2-6bc1-492e-82c6-a909f55dbb22-grafik.png

                                        Ich denke, in dieser Version ist der Konfigurationsdialog ein wenig kaputt, da mit der Version aus dem Beta Repository die Probleme aber wohl nicht auftreten, werde ich das erstmal so lassen, und auf das Update in stable warten ...

                                        @martinp said in [gelöst]Aus den Backups ein Javascript extrahieren:

                                        @thomas-braun Habe vielleicht einen Workaround ...

                                        Man kann die Json Konfig exportieren und importieren, und ggfs. dazwischen einfach bei "mirrorPath" etwas eintragen ...

                                        {
                                          "latitude": "",
                                          "longitude": "",
                                          "enableSetObject": true,
                                          "enableSendToHost": true,
                                          "enableExec": true,
                                          "libraries": "",
                                          "libraryTypings": "",
                                          "subscribe": false,
                                          "useSystemGPS": true,
                                          "mirrorPath": "",
                                          "mirrorInstance": "0",
                                          "allowSelfSignedCerts": false,
                                          "sunriseEvent": "sunrise",
                                          "sunriseOffset": "",
                                          "sunriseLimitStart": "06:00",
                                          "sunriseLimitEnd": "12:00",
                                          "sunsetEvent": "dusk",
                                          "sunsetOffset": "",
                                          "sunsetLimitStart": "18:00",
                                          "sunsetLimitEnd": "23:00",
                                          "maxSetStatePerMinute": "1000",
                                          "gptKey": "",
                                          "createAstroStates": true,
                                          "maxTriggersPerScript": 100
                                        }
                                        
                                        bahnuhrB Online
                                        bahnuhrB Online
                                        bahnuhr
                                        Forum Testing Most Active
                                        schrieb am zuletzt editiert von
                                        #24

                                        @martinp

                                        @fastfoot hatte hier mal ein Script geschrieben.
                                        https://forum.iobroker.net/topic/53849/ordner-und-skripte-verschwunden/8?_=1719814391362

                                        vielleicht hilfts.


                                        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

                                        MartinPM 1 Antwort Letzte Antwort
                                        0
                                        • bahnuhrB bahnuhr

                                          @martinp

                                          @fastfoot hatte hier mal ein Script geschrieben.
                                          https://forum.iobroker.net/topic/53849/ordner-und-skripte-verschwunden/8?_=1719814391362

                                          vielleicht hilfts.

                                          MartinPM Offline
                                          MartinPM Offline
                                          MartinP
                                          schrieb am zuletzt editiert von MartinP
                                          #25

                                          @bahnuhr Das habe ich auch schon entdeckt und angepasst ...

                                          Ich hatte schon ein anderes Skript, was etwas ähnliches macht ...

                                          https://forum.iobroker.net/topic/75575/gelöst-aus-den-backups-ein-javascript-extrahieren/20?_=1719831259261

                                          Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                                          Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                                          Linux pve 6.8.12-16-pve
                                          6 GByte RAM für den Container
                                          Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                                          Remote-Access über Wireguard der Fritzbox

                                          bahnuhrB 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

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

                                          782

                                          Online

                                          32.6k

                                          Benutzer

                                          82.0k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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