Der JDownloader ist zusammen mit dem Filebot auf meinem günstigen Synology NAS DS216j ein ideales Team um Videodateien runterzuladen und passend zu benennen.  Mit dieser Anleitung startet der FileBot per Event Scripter nach dem Entpacken des Archives durch den JDownloader automatisch und DS Video wird darüber informiert, dass neue Videodateien vorliegen.

Dieses Tutorial setzt voraus, dass ihr den JDownloader und den FileBot bereits installiert habt. Ferner sind die Optionen für den Einsatz von DS Video statt Kodi und OSMC optimiert.

Schritt A: Shellscript anlegen

1. root-Zugriff per Shell auf das Synology NAS anlegen

2. Im HOME-Verzeichnis (z.B. „/var/services/homes/juser/“ ) legt ihr eine neue Datei namens „jdtofilebot.sh“ an:

cd /var/services/homes/juser/
vi jdtofilebot.sh

3. Mit der Taste „i“ könnt ihr nun folgendes Script einfügen und beendet anschließend mit „:wq“ den vi-Editor.

#!/bin/sh
 export JAVA_OPTS="-Xmx256m"
 /var/packages/filebot/target/filebot.sh -script 'fn:amc' /volume1/video/download --output /volume1/video/ --conflict auto --lang en --def 'clean=y' 'skipExtract=y' 'exec=/usr/syno/bin/synoindex -R video' 'excludeList=.excludes'

4. Prüft bitte die Pfade wie „/volume1/video/download“ und „/volume1/video“. Ersteres ist der Pfad zum Download-Verzeichnis vom JDownloader und letzterer Pfad enthält die Struktur wie „TV Shows“ und „Movies“. Mit dem Parameter „exec“ wird am Ende der Index für DS Video erneuert, damit sie automatisch im Mediacenter auftauchen.

5. Nun müsst ihr das Script noch für jeden ausführbar machen.

chmod +777 jdtofilebot.sh

Ob es bis hierhin geklappt hat, könnt ihr mit dem folgenden Befehl prüfen:

./jdtofilebot.sh

Sollte hier irgendwas komisches passieren, prüft bitte die oberen Schritte. Prüft auch die Grundvoraussetzungen in dem ihr euch den Artikel nochmal von oben durchlest. Dies war der schwerste Teil. Gratulation!

Der Event Scripter unter my.JDownloader in den Einstellungen
Der Event Scripter unter myJDownloader in den Einstellungen

Schritt B: Event Scripter in myJDownloader einschalten

1. In myJDownloader gehen wir zu den Einstellungen und finden dort im linken Menü den Punkt weiter unten unter „Extensions“ den „Event Scripter“. Falls nicht, prüft bitte den „Extension Manager“ ob die Erweiterung aktiviert wurde.

In das Feld „Scripts“ kopiert ihr nun folgendes JSON. ACHTUNG: Darin den Benutzernamen „juser“ gegen euren Benutzernamen austauschen! Sonst findet der JDownloader das in Schritt A angelegte Shell-Script nicht.

[{"eventTrigger":"ON_ARCHIVE_EXTRACTED", "enabled":true, "name":"FileBot", "script":"var amcFile = \"/var/services/homes/juser/jdtofilebot.sh\";var path = archive.getFolder(); callAsync(function() {}, amcFile, path);", "eventTriggerSettings":{}, "id":4711}]

Wenn nun eine Fehlermeldung wie „Sorry, failed to set new value“ erscheint, dann ist das JSON nicht in Ordnung, weil ihr den Schnippsel oben falsch kopiert habt und das JSON aus anderen Gründen nicht mehr valide ist. Prüft den Codein dem Fall mit Werkzeugen wie „JSON lint“.

Schritt C: Berechtigung in myJDownloader setzen

Wenn ihr den ersten Download und das erste Entpacken nach diesem Tutorial abgeschlossen habt, erscheint auf myJDownloader eine Meldung, dass ihr dem JDownloader erlauben müsst, auf lokale Dateien zuzugreifen. In diesem Fall ist damit das FileBot-Script aus Schritt A gemeint. Bestätigt dies mit „Ja“ und setzt den Haken für „Nicht nochmal fragen“. Ansonsten wird das Script nie ausgeführt und es funktioniert nicht.  Falls es hier Probleme gibt, schaut in die Logs auf dem Synology NAS unter folgendem Pfad:

/volume1/@appstore/JDownloader/logs/

ACHTUNG: Da das Entpacken lange dauern kann, müsst ihr euch unter Umständen gedulden, bis die Meldung erscheint und ihr den Zugriff bestätigen könnt. Besonders auf einem günstigen Synology DS216j (kaufen) oder dem neuen Synology DS218j (kaufen).

Empfohlene Kommentare

Handverlesene Reaktionen aus dem Kommentarbereich dieses Artikels. Ein Klick führt zum ursprünglichen Kommentar.

Beteilige dich an der Unterhaltung

64 Kommentare

  1. Ich würde im Shell-Script noch eine Queue einbauen. Habe eben ein Rom-Pack von 777 Dateien heruntergeladen und pro Datei hat das Event das Script aufgerufen. RAM und CPU laufen gerade am absoluten Limit. Ist mit Vorsicht zu genießen! Sobald ich weiß, wie ich das Problem lösen kann stelle ich meine Lösung hier in die Kommentare als Antwort ein.

    1. Hallo Marc,
      ich nutze mittlerweile auch Docker auf der Synology (jDownloader, Home Assistant und Pi-hole). Nun würde ich auch gerne einen Docker-Container für filebot benutzen, scheitere aber. Hast du für die Kombination jDownloader+filebot in separaten Docker-Containern auch eine Anleitung?

    2. Mein Filebot Docker-Container guckt einfach immer automatisch nach ob Dateien geschrieben werden . Wenn nicht, dann wartet er 20 Min und läuft dann drüber. Das ist eine Standardeinstellung des Containers und wurde nicht von mir dranentwickelt

    3. D.h. du arbeitest nicht mehr mit dem Event Scripter? Welchen Docker-Container für Filebot nutzt du?
      Meinst du, es wäre möglich, dass du eine kleine Anleitung dafür schreibst? Ich bekomme das nicht sauber hin.

  2. Hallo, irgendwie funtzt bei mir das Script nicht mehr. Die fertig entpackten Dateien werden nicht wie im Script hinterlegt in einen anderen Ordner verschoben und dann gelöscht. Wie kann ich das Script denn testen oder geht das generell wegen einem Update der NAS nicht mehr

Schreibe einen Kommentar

Wie kann ich mich verifizieren lassen?