[list=]
[*]Event-Skripter öffnen
[*]Ein neues Event-Skript hinzufügen
[*]Den Trigger "Intervall" wählen
[*]Bearbeiten: hier wird JavaScript-Code eingefügt, die API kann unter dem Popup-Menü-Reiter "Hifle anzeigen/verstecken" ausgewählt werden. Die MyJDownloader API-Doku ist unter https://my.jdownloader.org/developers/ zu finden (welche mit der Funktion callAPI aufgerufen wird).
[/list]
Automatisches hinzufügen des SaveTV Archivs & starten der Downloads. (Trigger: Intervall; Intervallzeit: 604800000 (Wöchentlich)
Code: Alles auswählen
//Füge hier Dein Skript hinzu. Du kannst die verfügbaren API-Eigenschaften und Methoden nutzen.
//Trigger: Intervall 604800000 (7 Tage)
callAPI("linkgrabberv2", "addLinks", {
"deepDecrypt": false,
"links": "https://www.save.tv/STV/M/obj/archive/VideoArchive.cfm?bLoadLast=true",
"overwritePackagizerRules": false,
"packageName": "SaveTV",
"autostart": true
});
Ihr könnt den Parameter autostart auf false setzen, wodurch die Links nur zum Linksammler hinzugefügt werden. Die Weitere Steuerung kann zum Beispiel die JDownloader2 Erweiterung "Zeitplaner" übernehmen, sodass euer JDownloader vollautomatisch ausschließlich Nachts das SaveTV-Archive herunterlädt.
Event-Skripter-Demo: CRC32-Prüfsummen
Ich habe noch ein zweites Skript, welches die Möglichkeiten etwas weiter demonstrieren soll - dieses erstellt eine CRC32-Prüfsumme und speichert diese im Dateinamen ab.
Automatisches hinzufügen von CRC32-Informationen im Dateinamen (Trigger: Ein Download stoppt - benötigt Berechtigungen zum verschieben der Datei)
Code: Alles auswählen
// Simple history
// Trigger Required : A Download Stopped
// Regex #1 Group filename #2 Goup Extension
const regex = /^(.*)\.([\w]{2,4})/gm;
if (link.isFinished()) {
// Requirements
var file = link.getDownloadPath();
var path = getPath(file);
var filename = regex.exec(path.getName())[1];
var extension = path.getExtension();
var folder = link.package.getDownloadFolder();
// Process
var crc32 = parseInt(getChecksum("crc32", file)).toString(16).toUpperCase();
var filenameCRC = folder + '/' + filename + ' [' + crc32 + '].' + extension;
var pathCRC = getPath(filenameCRC);
// Move Files
if (pathCRC.exists()) pathCRC.delete();
path.renameTo(pathCRC);
writeFile(path, "", false);
//Files.createSymbolicLink(pathCRC, path);
}