NEWS
.js Dateien ins Blockly Format importieren/konvertieren?
-
@paul53 sagte in .js Dateien ins Blockly Format importieren/konvertieren?:
@fastfoot sagte: Ist da evtl eine letzte Zeile welche etwa so anfängt: //JTNDeG1..........?
Da steckt Blockly drin, muss aber wohl gewandelt werden - keine Ahnung wie.
deshalb fragte ich, dann ist es easy zumindest ein xml für den Import zu generieren.
-
@paul53 ich habe die Scripte in dem Ordner gefunden wo der Javascript Adapter die Spiegelungen ablegt.
Inhaltlich sehen die Dateien so aus:
schedule("13 13 * * *", async function () { setState("tuya.0.bfc836b3c2278be1684tik.1"/*switch_1*/, true); setState("alexa2.0.Echo-Devices.G091AA08114400T1.Commands.ssml"/*ssml*/, (['<speak><voice name="Vicki">','Hast du heute schon deine Pflanzen gegossen?','</voice></speak>'].join(''))); setStateDelayed("tuya.0.bfc836b3c2278be1684tik.1"/*switch_1*/, false, 5000, false); }); //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJzY2hlZHVsZSUyMiUyMGlkJTNEJTIyJTVEa25FbkZ0NiFIVEIlNUQueSU0MCUzQVdRYyUyMiUyMHglM0QlMjItMzEyJTIyJTIweSUzRCUyMi00MzclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTQ0hFRFVMRSUyMiUzRTEzJTIwMTMlMjAqJTIwKiUyMColM0MlMkZmaWVsZCUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFURU1FTlQlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sJTIyJTIwaWQlM0QlMjJRNDA0S0wqTUd+OSUzQkkpTTBlJTJDVVQlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0V0dXlhLjAuYmZjODM2YjNjMjI3OGJlMTY4NHRpay4xJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyKWpoaG4lNjBNeG8lM0RPTUYhYSU2MGUuMSUyNCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VUUlVFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2wlMjIlMjBpZCUzRCUyMnZ4JTNCJTdCJTQwKXNLY2IySTJ6JTIzd3R2T1MlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0VhbGV4YTIuMC5FY2hvLURldmljZXMuRzA5MUFBMDgxMTQ0MDBUMS5Db21tYW5kcy5zc21sJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydGV4dF9qb2luJTIyJTIwaWQlM0QlMjJWWEolM0IlNjAtcTBzazZOTSUzQW0lM0IlM0RlaHklMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyMyUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMm9tRFolNUIlNUQ3RiUyRmElMjNBYTMydiUzQiUyRnIlMkMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTI2bHQlM0JzcGVhayUyNmd0JTNCJTI2bHQlM0J2b2ljZSUyMG5hbWUlM0QlMjJWaWNraSUyMiUyNmd0JTNCJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMmwlM0QlM0RxU1VVaiU2MGd5ZUMqaUJuSkYlNUQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFSGFzdCUyMGR1JTIwaGV1dGUlMjBzY2hvbiUyMGRlaW5lJTIwUGZsYW56ZW4lMjBnZWdvc3NlbiUzRiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJ+JTYwJTI1d3hqJTdDbTkzJTNCcjV0em4lNUJhdCUyNCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlMjZsdCUzQiUyRnZvaWNlJTI2Z3QlM0IlMjZsdCUzQiUyRnNwZWFrJTI2Z3QlM0IlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2wlMjIlMjBpZCUzRCUyMmdsVCUyRjclMjRyenVXSV9oJTNGUCU1RThUZiUzQiUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIydHJ1ZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFdHV5YS4wLmJmYzgzNmIzYzIyNzhiZTE2ODR0aWsuMSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9ERUxBWSUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkRFTEFZX01TJTIyJTNFNSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVU5JVCUyMiUzRXNlYyUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ0xFQVJfUlVOTklORyUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMkNZJTYwVDVYT1IlM0F3dDg1cHh1JTdCaGhZJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnhtbCUzRQ==
Das Problem ist zustande gekommen als ich den Javascript Adapter auf Version 5.5.0 upgedatet habe. Ich hatte zuvor auch eine Meldung erhalten, dass man das Update nicht durchführen darf, wenn die Scripte in bestimmten Ordnern liegen. Dachte bei mir wäre alles im grünen Bereich. Habe upgedatet und danach waren alle Scripte weg.
Nur durch das Zurücksetzen auf einen älteren Zustand habe ich sie soweit wieder zurück bekommen.Jetzt traue ich mich nicht mehr den Adapter erneut upzudaten
-
@alyxabyss sagte: ich habe die Scripte in dem Ordner gefunden
Welcher Ordner ist es?
@alyxabyss sagte in .js Dateien ins Blockly Format importieren/konvertieren?:
Jetzt traue ich mich nicht mehr den Adapter erneut upzudaten
Es ist Version 5.5.2 verfügbar, die vor dem Update warnt, wenn das Spiegelverzeichnis unter /opt/iobroker liegt.
-
@alyxabyss sagte in .js Dateien ins Blockly Format importieren/konvertieren?:
Jetzt traue ich mich nicht mehr den Adapter erneut upzudaten
Das habe ich noch nie erlebt. Ich poste dir später ein Script mit dem du aus den Skripten im Mirrorpath XML-Dateien erstellen kannst welche du dann importieren kannst. Für dein Beispiel ist das diese Datei:
-
@paul53 ich hatte die Spiegelung im Javascript Adapter auf /media/usb/iobroker gesetzt. Darum dachte ich, das Update sollte kein Problem darstellen. Falsch gedacht. Trotzdem waren die Scripte alle plötzlich weg.
Dann drüber gefreut, dass ich ja ein Backup habe, aber dann gemerkt, dass ich die bei Blockly nicht direkt importieren kann.
Wenn ich die allerdings direkt in die Scriptübersicht importiere, erscheinen sie dort als JavaScript und nicht als Blockly, aber funktionieren normal. Nur das editieren, macht es für mich als Laien dann auch wieder schwierig. Mit Blockly komm ich ja soweit klar, aber bei richtigen Scripts bin ich überfordert.@fastfoot Danke. Das wäre wäre Klasse. Hab zwar soweit alles wieder ins laufen bekommen. Nur für die Zukunft wäre das natürlich prima. Sonst komme ich mit den Spiegelungen nicht zurecht, wenn ich nochmal das Problem habe.
-
@alyxabyss ich finde meinen eigenen verf....ten Beitrag dazu nicht wieder den ich mal gemacht habe ... aber es geht so:
- Im JavaScript Adapter die Spiegelung der Skripte ins Dateisystem konfigurieren
- Dann ein neues Blockly mit passenden Namen erstellen
- Es wird unmittelbar im Dateisystem auch eine passende Datei auftauchen. Die bearbeiten und den Inhalt den du hast inklusive der kryptischen letzten Zeile einfügen
- Speichern!
- Tata, im ScriptEditor sollte sich das auch gleich aktualisiert haben und der Blockly ist wieder da
Ich hab dazu mal eine Anleitung gemacht wie man das aus dem BackupItUp Adapter holt, finde das aber gerade nicht.
Doch gefunden: https://forum.iobroker.net/topic/51702/scripte-aus-backup-wiederherstellen/4?_=1648128711954
-
@bananajoe Ah danke. Das sieht nützlich aus. Das schau ich mir heute Abend mal genauer an.
-
@alyxabyss Zeile 22 für den Pfad anpassen, es werden xml Dateien für alle Blocklies generiert, nichts wird gelöscht. Man kann also damit 'rumspielen'
-
@fastfoot Wow danke. Einfach genial. Direkt mal sichern
-
Hab genau das selbe Problem. Mit deinem Skript komme ich allerdings nicht soweit, dass eine "Output-Datei" generiert wird. Kannst du bitte einmal versuchen die folgende Datei wiederherzustellen?
Vielen, vielen Dank!