Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst]Aus den Backups ein Javascript extrahieren

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst]Aus den Backups ein Javascript extrahieren

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Shadowhunter23 @Homoran last edited by Shadowhunter23

      @homoran

      @martinp sagte in Aus den Backups ein Javascript extrahieren:

      Mein Backup ist extrem klein (4,5 MByte)

      das ist ziemlich groß

      Meins(er) ist 7.4mb, ist das dann viel zu groß 😊

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

        @shadowhunter23 sagte in Aus den Backups ein Javascript extrahieren:

        @homoran

        @martinp sagte in Aus den Backups ein Javascript extrahieren:

        Mein Backup ist extrem klein (4,5 MByte)

        das ist ziemlich groß

        Meins(er) ist 7,4mb, ist das dann viel zu groß 😊

        dann hast du wahrscheinlich eine große vis mit vielen (zu) großen Bildern

        MartinP 1 Reply Last reply Reply Quote 0
        • MartinP
          MartinP @Homoran last edited by

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

          Homoran 1 Reply Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @MartinP last edited by 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?

            MartinP 1 Reply Last reply Reply Quote 0
            • MartinP
              MartinP @Homoran last edited by

              @homoran said in Aus den Backups ein Javascript extrahieren:

              Spiegelverzeichnis

              Nein, mit dem Begriff kann ich nichts anfangen

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

                @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

                MartinP 1 Reply Last reply Reply Quote 0
                • MartinP
                  MartinP @Homoran last edited by 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

                  Homoran Thomas Braun 2 Replies Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @MartinP last edited by

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

                    1 Reply Last reply Reply Quote 0
                    • Thomas Braun
                      Thomas Braun Most Active @MartinP last edited by

                      @martinp

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

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

                      Homoran MartinP 2 Replies Last reply Reply Quote 1
                      • Homoran
                        Homoran Global Moderator Administrators @Thomas Braun last edited by

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

                        1 Reply Last reply Reply Quote 0
                        • MartinP
                          MartinP @Thomas Braun last edited by 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?

                          Homoran Thomas Braun 2 Replies Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators @MartinP last edited by

                            @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

                            1 Reply Last reply Reply Quote 0
                            • Thomas Braun
                              Thomas Braun Most Active @MartinP last edited by

                              @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

                              MartinP Homoran 2 Replies Last reply Reply Quote 0
                              • MartinP
                                MartinP @Thomas Braun last edited by

                                @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

                                MartinP 1 Reply Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @Thomas Braun last edited by

                                  @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

                                  MartinP 1 Reply Last reply Reply Quote 0
                                  • MartinP
                                    MartinP @Homoran last edited by MartinP

                                    @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

                                    1 Reply Last reply Reply Quote 0
                                    • grrfield
                                      grrfield @MartinP last edited by

                                      @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 Reply Last reply Reply Quote 1
                                      • MartinP
                                        MartinP last edited by

                                        @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
                                        
                                        
                                        simatec 1 Reply Last reply Reply Quote 0
                                        • simatec
                                          simatec Developer Most Active @MartinP last edited by

                                          @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

                                          MartinP 1 Reply Last reply Reply Quote 0
                                          • MartinP
                                            MartinP @simatec last edited by

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

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

                                            Support us

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

                                            877
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

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