JDownloader Community - Appwork GmbH
 

Reply
 
Thread Tools Display Modes
  #81  
Old 10.01.2017, 19:06
JamesBlond007 JamesBlond007 is offline
Modem User
 
Join Date: Dec 2016
Posts: 4
Default

Hey,

ich hole den Thread mal wieder rauf in der Hoffnung, dass man mir bei meinem Problem helfen kann. Eigentlich halte ich es für sehr einfach, versuche auch schon seit Tagen verschiedenste Scripte, aber nichts will funktionieren.
Eigentlich möchte ich nämlich nur ganz stupide mein Skript aufrufen welches im Ordner /usr/bin liegt und zuordnung heißt (gelegentlich auch mal in zuordnung.sh umbenannt bei verschiedenen Skripten.

Der Code dieses Scripts ist eigentlich auch ein sehr einfacher FileBot-Aufruf mit bestimmten Parametern. Ob Bash oder Sh wäre mir theoretisch egal, denn es lief bei manuellem ausführen sowohl mit #!/bin/sh als auch #!/bin/bash.

Hier der Rest des Scripts:
Spoiler:

filebot -script "fn:amc" /media/disc2/Downloads/ --output "/media/disc2/" --lang de --action move --encoding UTF-8 --conflict override -non-strict --log-file "/media/disc2/Logs/Filebot.log" --def "movieFormat={fn =~ /3D/ || file =~ /3D/ ? 'Filme 3D' : fn =~ /XXX/ || file =~ /XXX/ ? 'XXX' : 'Filme'}/{fn =~ /XXX/ || file =~ /XXX/ ? folder.name : {n}+' ('+{y}+')'}{fn =~ /3D/ || file =~ /3D/ ? ' [3D] [H-SBS]' : ''}/{fn =~ /XXX/ || file =~ /XXX/ ? fn : {n}+' ('+{y}+')'}{fn =~ /3D/ || file =~ /3D/ ? ' H-SBS' : ''}" seriesFormat="/media/disc2/Serien/{n}/Staffel {s}/{n} - {sxe} - {t}" clean=y --def unsorted=y --def gmail=logmailadresse@gmail.com:passwd --def mailto=meine.e-mail.adresse@web.de --def reportError=y --def plex=192.168.2.113:plextoken


Wie ihr seht sind auch alle Pfade fest definiert und FileBot ist ja auch so schlau und versucht keine gepackten Dinge zu mappen. Also brauche ich auch keinen Pfad zu übergeben.

Mein derzeitiges EventScript liest sich folgendermaßen:
Spoiler:
[{"eventTrigger":"ON_ARCHIVE_EXTRACTED", "enabled":true, "name":"Filebot", "script":"var amcFile = "/usr/bin/zuordnung.sh";var path = "/media/disc2/Downloads/";callAsync(function() {}, amcFile, path);", "eventTriggerSettings":{}, "id":HierstehtdieID}]


Wie ihr seht habe ich dort den Pfad darum ebenfalls fest auf den Grundordner definiert, besser wäre es natürlich, wenn ich gar nichts an zusätzlichen Pfaden übermitteln würde. Eine Zeit lang hatte ich in dem aufrufenden Skript auch mal eine Funktion drin, den Consolenlog von Filebot per Mail zu senden. Es wurde auch scheinbar mal aufgerufen, aber nicht richtig ausgeführt und die Mail hatte keinen Inhalt die versendet wurde.
Jdownloader erstellt leider derzeit, warum auch immer, scheinbar auch keinen EventScripter-Log wo der Fehler liegen könnte.

Ich würde auch wirklich nicht schreiben wenn ich nicht schon fast alles was mir einfällt und ich gelesen habe ausprobiert hätte. Es will einfach nicht. Die Rechte des Skripts stehen übrigens auf rwxrwsrwx - 2777, group users und Eigentümer extra mal auf jdownloader gesetzt.

Ich hoffe ihr könnt mir weiterhelfen.
Danke
Reply With Quote
  #82  
Old 10.01.2017, 20:29
CENGOiSM CENGOiSM is offline
JD Beta
 
Join Date: Jun 2015
Posts: 53
Default

Quote:
Originally Posted by JamesBlond007 View Post
Hey,

ich hole den Thread mal wieder rauf in der Hoffnung, dass man mir bei meinem Problem helfen kann. Eigentlich halte ich es für sehr einfach, versuche auch schon seit Tagen verschiedenste Scripte, aber nichts will funktionieren.
Eigentlich möchte ich nämlich nur ganz stupide mein Skript aufrufen welches im Ordner /usr/bin liegt und zuordnung heißt (gelegentlich auch mal in zuordnung.sh umbenannt bei verschiedenen Skripten.

Der Code dieses Scripts ist eigentlich auch ein sehr einfacher FileBot-Aufruf mit bestimmten Parametern. Ob Bash oder Sh wäre mir theoretisch egal, denn es lief bei manuellem ausführen sowohl mit #!/bin/sh als auch #!/bin/bash.

Hier der Rest des Scripts:
Spoiler:

filebot -script "fn:amc" /media/disc2/Downloads/ --output "/media/disc2/" --lang de --action move --encoding UTF-8 --conflict override -non-strict --log-file "/media/disc2/Logs/Filebot.log" --def "movieFormat={fn =~ /3D/ || file =~ /3D/ ? 'Filme 3D' : fn =~ /XXX/ || file =~ /XXX/ ? 'XXX' : 'Filme'}/{fn =~ /XXX/ || file =~ /XXX/ ? folder.name : {n}+' ('+{y}+')'}{fn =~ /3D/ || file =~ /3D/ ? ' [3D] [H-SBS]' : ''}/{fn =~ /XXX/ || file =~ /XXX/ ? fn : {n}+' ('+{y}+')'}{fn =~ /3D/ || file =~ /3D/ ? ' H-SBS' : ''}" seriesFormat="/media/disc2/Serien/{n}/Staffel {s}/{n} - {sxe} - {t}" clean=y --def unsorted=y --def gmail=logmailadresse@gmail.com:passwd --def mailto=meine.e-mail.adresse@web.de --def reportError=y --def plex=192.168.2.113:plextoken


Wie ihr seht sind auch alle Pfade fest definiert und FileBot ist ja auch so schlau und versucht keine gepackten Dinge zu mappen. Also brauche ich auch keinen Pfad zu übergeben.

Mein derzeitiges EventScript liest sich folgendermaßen:
Spoiler:
[{"eventTrigger":"ON_ARCHIVE_EXTRACTED", "enabled":true, "name":"Filebot", "script":"var amcFile = "/usr/bin/zuordnung.sh";var path = "/media/disc2/Downloads/";callAsync(function() {}, amcFile, path);", "eventTriggerSettings":{}, "id":HierstehtdieID}]


Wie ihr seht habe ich dort den Pfad darum ebenfalls fest auf den Grundordner definiert, besser wäre es natürlich, wenn ich gar nichts an zusätzlichen Pfaden übermitteln würde. Eine Zeit lang hatte ich in dem aufrufenden Skript auch mal eine Funktion drin, den Consolenlog von Filebot per Mail zu senden. Es wurde auch scheinbar mal aufgerufen, aber nicht richtig ausgeführt und die Mail hatte keinen Inhalt die versendet wurde.
Jdownloader erstellt leider derzeit, warum auch immer, scheinbar auch keinen EventScripter-Log wo der Fehler liegen könnte.

Ich würde auch wirklich nicht schreiben wenn ich nicht schon fast alles was mir einfällt und ich gelesen habe ausprobiert hätte. Es will einfach nicht. Die Rechte des Skripts stehen übrigens auf rwxrwsrwx - 2777, group users und Eigentümer extra mal auf jdownloader gesetzt.

Ich hoffe ihr könnt mir weiterhelfen.
Danke
Wenn das FileBot Skript manuell läuft, ist das schon mal ein gutes Zeichen. Wenn es nämlich nicht automatisch läuft, ist höchstwahrscheinlich deine EventScripter Config falsch. Wenn du das Skript in jDownloader eingibst, kommt da keine invalid Fehlermeldung? Ich weiß nicht, ob das Forum hier etwas entfernt, aber in deinem Skript oben wurde nicht korrekt "escapet" - sprich wenn zwischen " " weitere " " stehen, müssen die "makiert" werden um es nicht falsch zu intepretieren.

Ich escape das mal gleich richtig und poste das auf pastebin.
EDiT: pastebin.com/MveYhW7R


PS: Ich würde nicht nur den übergeordneten Downloadordner übergeben, zumindest hat das bei mir immer zu Schwierigkeiten geführt. ^^

Last edited by CENGOiSM; 10.01.2017 at 20:38.
Reply With Quote
  #83  
Old 11.01.2017, 16:43
JamesBlond007 JamesBlond007 is offline
Modem User
 
Join Date: Dec 2016
Posts: 4
Default

Hey,

danke schonmal für deine Rückmeldung.
Richtig escaped hatte ich. Habe dafür 2 Vorgehensweisen. Zum einen nehm' ich den lokalen Jdownloader und packe da alles in ein Script und lese die JSON Datei hinterher aus und Variante 2 ist der jsonprettyprint. Den habe ich auch bei deinem Code verwenden müssen. Da stimmte ein " nicht. Warum auch immer. Jdownloader hat sich die ganze Zeit beschwert und ich hab es nicht gerafft. Hab es jetzt geändert, läuft leider immer noch nicht. Interessanterweise hat er mich nicht nach "Erlaubnis" gefragt.

Edit: Die Meldung kam nach einem neuladen der Seite allerdings weiß ich nicht ob er die Bestätigung richtig genommen hat. Da das Fenster sich nicht geschlossen hat.
Werde auch da noch weiterprobieren.

Aber bist du dir sicher das callAsync ohne weiteren Parameter ausgeführt werden "darf". Also als reiner Funktionsaufruf?

Vielleicht hast du ja sonst noch Ideen woran es liegen könnte.

Last edited by JamesBlond007; 11.01.2017 at 16:52.
Reply With Quote
  #84  
Old 26.01.2017, 01:50
synologist synologist is offline
Modem User
 
Join Date: Nov 2016
Posts: 4
Default

Abend!

Vielen Dank erstmal für die ganze Arbeit.

habe das bei analog zu den geposteten Scripts gemacht... Bei mir läuft JD auf einem Synology 412+. Filebot ist in einem Debian-Chroot installiert. Mein Script sieht so aus:

Quote:
#!/bin/sh

export PATH=$PATH:/opt/bin:/opt/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin:/opt/java/bin

chroot /chroot/ /bin/bash -c "touch "/volume1/jdownloader_downloads/thetimeis$(date +%H%M%S).txt""

chroot /chroot/ /bin/bash -c "filebot -script /etc/transmission-daemon/amc.groovy "/volume1/jdownloader_downloads/extracted" --output "/volume1/Plex" --action move --conflict auto -non-strict --log-file /volume1/jdownloader_downloads/filebotlog.txt --def unsorted=y music=y artwork=n excludeList=/volume1/jdownloader_downloads/filebotexcludes.txt clean=y --def "seriesFormat=/volume1/Plex/Series/{n}/Season {s}/{fn}" "movieFormat=/volume1/Plex/Filme/{n} {y}/{fn}" "musicFormat=/volume1/music/Pyload/{artist}/{artist} - {album}/{pi.pad(2)} - {t}""

chroot /chroot/ /bin/bash -c "touch "/volume1/jdownloader_downloads/thetimeis$(date +%H%M%S).txt""
das Script wird zwar aufgerufen, denn der erste Befehl zur Erstellung einer Datei mit der aktuellen Uhrzeit im Namen wird ausgeführt. Filebot wird danach allerdings nicht mehr aufgerufen (es wird auch keine Filebotlog.txt erstellt bzw bearbeitet), der zweite Befehl zur Erstellung einer Datei wird dann auch nicht mehr ausgeführt.
Wenn ich das Script so ausführe, funktioniert Filebot perfekt.

für Hilfe wäre ich echt dankbar!
Reply With Quote
  #85  
Old 26.01.2017, 10:37
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 59,611
Default

@synologist:
Warum einfache Touch Befehle in einer Chroot? Gibts Touch nur in der Chroot?
Soweit ich weiß werden bei einem chroot die Umgebungsvariablen nicht mitübernommen, somit bringen deine exports am anfang nichts.
ich würde vorschlagen du schreibst ein script und führst dieses dann in der chroot aus

also zb

Quote:
#!/bin/sh
chroot /chroot/ /bin/bash -c "/pfad/filebotscript.sh"
und im filebotscript dann alles touchen, exporten und co
__________________
JD-Dev & Server-Admin
Reply With Quote
  #86  
Old 26.01.2017, 15:45
synologist synologist is offline
Modem User
 
Join Date: Nov 2016
Posts: 4
Default

die touch befehle sollen mir zeigen, ob JD das Skript nach dem Entpacken ausführt. Das tut er auch, nur wird dann filebot nicht gestartet. Der Grund warum das ist in der Chroot ausgeführt wird ist, daß ich auf der Synology einiges viel einfacher in der Debian Chroot zum Laufen bekommen habe, unter anderem filebot.

Wenn ich dich richtig verstehe, schlägst du vor, im vom Eventscripter aufgerufenen Script nochmal auf ein Script zu verweisen.

Habe das gemacht, auch da wird filebot nicht aufgerufen.

Stehe da völlig auf dem Schlauch...

Quote:
Originally Posted by Jiaz View Post
@synologist:
Warum einfache Touch Befehle in einer Chroot? Gibts Touch nur in der Chroot?
Soweit ich weiß werden bei einem chroot die Umgebungsvariablen nicht mitübernommen, somit bringen deine exports am anfang nichts.
ich würde vorschlagen du schreibst ein script und führst dieses dann in der chroot aus

also zb



und im filebotscript dann alles touchen, exporten und co

Last edited by synologist; 26.01.2017 at 15:52.
Reply With Quote
  #87  
Old 26.01.2017, 15:57
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 59,611
Default

Schick mir mal beide Scripts an support@jdownloader.org , evtl sehe ich was. Ist per E-Mail einfacher als hier im Forum
__________________
JD-Dev & Server-Admin
Reply With Quote
  #88  
Old 26.01.2017, 16:11
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 59,611
Default

Hab dir geantwortet
__________________
JD-Dev & Server-Admin
Reply With Quote
  #89  
Old 26.01.2017, 22:15
synologist synologist is offline
Modem User
 
Join Date: Nov 2016
Posts: 4
Default

Das Problem war, daß JD gewisse Umgebungsvariablen nicht an Filebot weitergegeben hat.

Mit folgenden Zeilen im Skript, welches dann Filebot aufruft gehts nun endlich.
Quote:
export PATH=$PATH:/opt/bin:/opt/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin:/opt/java/bin
export HOME=/


Quote:
Originally Posted by synologist View Post
Abend!

Vielen Dank erstmal für die ganze Arbeit.

habe das bei analog zu den geposteten Scripts gemacht... Bei mir läuft JD auf einem Synology 412+. Filebot ist in einem Debian-Chroot installiert. Mein Script sieht so aus:



das Script wird zwar aufgerufen, denn der erste Befehl zur Erstellung einer Datei mit der aktuellen Uhrzeit im Namen wird ausgeführt. Filebot wird danach allerdings nicht mehr aufgerufen (es wird auch keine Filebotlog.txt erstellt bzw bearbeitet), der zweite Befehl zur Erstellung einer Datei wird dann auch nicht mehr ausgeführt.
Wenn ich das Script so ausführe, funktioniert Filebot perfekt.

für Hilfe wäre ich echt dankbar!
Reply With Quote
  #90  
Old 10.03.2017, 12:13
suffx suffx is offline
JD Alpha
 
Join Date: Nov 2016
Posts: 20
Default

Quote:
Originally Posted by CENGOiSM View Post
@Jiaz - Dafür, dass JD im Headless mode so schnell so gut wurde, muss man sich revanchieren. Werden jetzt eigentlich die neuen Captchas von dieser einen sehr bekannten Serien anbietenden Seite unterstützt? Bzw hat 9kw da nachgeholfen? Ich meine letztens hätte JD da Schwierigkeiten gehabt.

@michldi - Viel geändert hab ich nicht mehr, aber hier ist die aktuelle Konfiguration.
=> In den JD Einstellungen musst du deinem Default Download Folder das <jd:packagename> hinzufügen, für den Unterordner.
=> filebot.sh am besten nicht anfassen, bzw. lösch deine Aktuelle und führ die update-filebot.sh aus die mitgeliefert wird, dann hast du die aktuelle FileBot.jar und filebot.sh.
=> Hier ist meine aktuelle jdtofilebot.sh



=> Und hier noch der eventscripter


Aber am eventscripter hab ich nichts verändert, auch jdtofilebot.sh ist eigentlich soweit gleich geblieben bis auf das mit dem UNSOTIERT.
Wie bei Jiaz denke ich auch dass beim eventscripter einige Zeichen weggelassen werden, deswegen nimm lieber das von Jiaz in seinem pastebin Link.

Poste am besten mal dein Setup, dann können wir schauen wo dein Problem ist.

Hi Leute,

ich bin auch gerade dabei mir dieses super setup einzurichten. Also jdownloader und filebot laufen schonmal jeder für sich auf meiner ds216play. Nun geht es darum diese über die scripte zu verknüpfen. Vorab: ich habe mich noch nie tiefergehend mit der DS beschäftigt, also SSH zugriffe usw. habe ich nie gebraucht, deshalb bin ich mir bei manchen pfaden nicht ganz sicher.

Also, nochmal zum Verständnis. Ich würde jetzt

1. Das o. g. EventScripter Script in den EventScripter einfügen
2. die jdtofilebot.sh die hier genannt wurde unter /ffp/filebot/jdtofilebot.sh ablegen (und ggf. auf meine bedürfnisse anpassen)
3. Die filebot.sh nicht anfassen

Ist das so korrekt?

Könnte nochmal bitte jemand bestätigen, ob die scripte die ich zitiert habe so korrekt sind und das escaping stimmt? Die Pastebin links sind leider alle tot.

Hab ich noch einen Schritt übersehen?
Reply With Quote
  #91  
Old 11.03.2017, 16:37
Horst789 Horst789 is offline
Modem User
 
Join Date: Feb 2010
Posts: 4
Default

hi,

ich würde gern, dass JD2 automatisiert die Aufgabe die ich im Synlogy Aufgabenplaner hinterlegt habe ausführt oder direkt ausführt...

weiß einer wie das geht?

die Aufgabe die standalone funktioniert und über EventScripter getriggert werden soll:
Code:
filebot -rename --conflict skip /volume1/Download/ --output /volume1/Serien/ -r --format "{n}/{n} - {s00e00} - {t}" --db TheTVDB --lang de -non-strict --log WARNING --log-file /volume1/Download/FileBotSerie.log
Aufgabe2 (eventuell müssen beide zusammen gefasst werden?
Code:
filebot -script 'fn:amc' /volume1/Download --output '/volume1/video/-------##NEU-UNGESEHEN##-------' --action move -non-strict --lang de --def 'ut_label=movie' 'music=y' 'unsorted=y' 'artwork=y' 'skipExtract=y' 'deleteAfterExtract=y' 'movieFormat={file.parentFile.name}/{n} ({y})' --log WARNING --log-file '/volume1/Download/FileBotMovie.log'
kann mir da bitte jemand helfen?
Reply With Quote
  #92  
Old 11.03.2017, 17:55
suffx suffx is offline
JD Alpha
 
Join Date: Nov 2016
Posts: 20
Default

Wie komme ich überhaupt in das Verzeichnis /ffp/filebot/? wird mir über filestation nicht angezeigt und auch über ssh, egal ob als admin oder root nicht...

Auch auf die Gefahr hin dass die Freischaltung meiner Frage wieder mindestens 24 Stunden dauert und hier anscheinend niemand mehr wirklich aktiv ist: Ich habe jetzt vieles probiert um Jdownloader und Filebot zum Laufen zu kriegen. Zunächst hier mein EventScripter Script:

Code:
[{"eventTrigger":"ON_ARCHIVE_EXTRACTED", "enabled":true, "name":"FileBot", "script":"var amcFile = \"/volume1/video/jdtofilebotsh/jdtofilebot.sh\";var path = archive.getFolder(); callAsync(function() {}, amcFile, path);", "eventTriggerSettings":{}, "id":1489257796220}]
Hab es mit prettyjson validiert, sollte also von der syntax her passen.

Hier der Inhalt meiner jdtofilebot.sh:

Code:
#!/bin/sh
##FileBot benötigt diese Variablen
/bin/mkdir /volume1/video/Downloads/videos/testordner
LOG="/volume1/video/Serien/amc.log"
EXC="/volume1/video/Serien/amc.txt"
SERIEN="/volume1/video/Serien/{n}/{s}/{n}.{s00e00} - {t} ({y}) {vf}"
FILME="/volume1/video/Filme/{n} ({y}) {source}({vf}@{vc}) [{rating}]/{n} ({y}) {source}({vf}@{vc}) [{rating}]"
##UNSORTIERT="/path/{file.structurePathTail}" ### Wenn Filebot mal etwas nicht zuordnen kann, dann kannst du es in einen seperaten Ordner verschieben lassen, dann bleibt es im Downloadordner übersichtlich.
##FileBot ausführen
/var/packages/filebot/target/filebot.sh -script fn:amc --lang de --log-file $LOG --action move "$1" --def "seriesFormat=$SERIEN" "movieFormat=$FILME" "animeFormat=$ANIME" "unsortedFormat=$UNSORTIERT" -non-strict --def unsorted=y --def clean=y
## Aufräumen, --def root löscht den Unterordner mit
/var/packages/filebot/target/filebot.sh -script fn:cleaner "$1" --def root=y
Dieses script kann ich manuell über die konsole oder den aufgabenplaner ausführen und es läuft auch erfolgreich durch.

Leider wird es aber nicht aufgerufen, wenn JD einen Download beendet und entpackt hat. Ich habe eben noch den Benutzer für die jdtofilebot.sh von admin auf root geändert, da JD ja auch unter root läuft, hat aber nichts geholfen.

Leider finde ich auch keine Log datei in der relevante infos stehen, nur die amc.log, wo aber nichts neues drin steht, da das script ja gar nicht ausgeführt wird.

Ich hoffe ihr könnt mir helfen, so langsam verzweifel ich

Last edited by raztoki; 13.03.2017 at 02:13.
Reply With Quote
  #93  
Old 12.03.2017, 15:47
CENGOiSM CENGOiSM is offline
JD Beta
 
Join Date: Jun 2015
Posts: 53
Default

Quote:
Originally Posted by suffx View Post
Auch auf die Gefahr hin dass die Freischaltung meiner Frage wieder mindestens 24 Stunden dauert und hier anscheinend niemand mehr wirklich aktiv ist: Ich habe jetzt vieles probiert um Jdownloader und Filebot zum Laufen zu kriegen. Zunächst hier mein EventScripter Script:

Code:
[{"eventTrigger":"ON_ARCHIVE_EXTRACTED", "enabled":true, "name":"FileBot", "script":"var amcFile = \"/volume1/video/jdtofilebotsh/jdtofilebot.sh\";var path = archive.getFolder(); callAsync(function() {}, amcFile, path);", "eventTriggerSettings":{}, "id":1489257796220}]
Hab es mit prettyjson validiert, sollte also von der syntax her passen.

Hier der Inhalt meiner jdtofilebot.sh:

Code:
#!/bin/sh
##FileBot benötigt diese Variablen
/bin/mkdir /volume1/video/Downloads/videos/testordner
LOG="/volume1/video/Serien/amc.log"
EXC="/volume1/video/Serien/amc.txt"
SERIEN="/volume1/video/Serien/{n}/{s}/{n}.{s00e00} - {t} ({y}) {vf}"
FILME="/volume1/video/Filme/{n} ({y}) {source}({vf}@{vc}) [{rating}]/{n} ({y}) {source}({vf}@{vc}) [{rating}]"
##UNSORTIERT="/path/{file.structurePathTail}" ### Wenn Filebot mal etwas nicht zuordnen kann, dann kannst du es in einen seperaten Ordner verschieben lassen, dann bleibt es im Downloadordner übersichtlich.
##FileBot ausführen
/var/packages/filebot/target/filebot.sh -script fn:amc --lang de --log-file $LOG --action move "$1" --def "seriesFormat=$SERIEN" "movieFormat=$FILME" "animeFormat=$ANIME" "unsortedFormat=$UNSORTIERT" -non-strict --def unsorted=y --def clean=y
## Aufräumen, --def root löscht den Unterordner mit
/var/packages/filebot/target/filebot.sh -script fn:cleaner "$1" --def root=y
Dieses script kann ich manuell über die konsole oder den aufgabenplaner ausführen und es läuft auch erfolgreich durch.

Leider wird es aber nicht aufgerufen, wenn JD einen Download beendet und entpackt hat. Ich habe eben noch den Benutzer für die jdtofilebot.sh von admin auf root geändert, da JD ja auch unter root läuft, hat aber nichts geholfen.

Leider finde ich auch keine Log datei in der relevante infos stehen, nur die amc.log, wo aber nichts neues drin steht, da das script ja gar nicht ausgeführt wird.

Ich hoffe ihr könnt mir helfen, so langsam verzweifel ich
Solange das jdtofilebot Skript alleine läuft, bis du ja schon fast am Ziel.
Hast du in JD das Skript erlaubt? Wenn man was Neues in den EventScripter einträgt muss man das beim ersten Aufruf quittieren, bevor es funktioniert. Vielleicht hast du das noch nicht gemacht?
Reply With Quote
  #94  
Old 12.03.2017, 18:23
suffx suffx is offline
JD Alpha
 
Join Date: Nov 2016
Posts: 20
Default

Quote:
Originally Posted by CENGOiSM View Post
Solange das jdtofilebot Skript alleine läuft, bis du ja schon fast am Ziel.
Hast du in JD das Skript erlaubt? Wenn man was Neues in den EventScripter einträgt muss man das beim ersten Aufruf quittieren, bevor es funktioniert. Vielleicht hast du das noch nicht gemacht?
Ja, das habe ich gemacht. Ich habe dabei nicht das Häkchen bei "always" gesetzt. Nachdem ich allow geklickt hatte, würde das Skript anscheinend trotzdem nicht ausgeführt und die Abfrage kam seitdem nicht wieder. Auch wenn ich das Skript angepasst habe.

Auch der Ordner der am Anfang des Skripts zum Test erstellt werden soll wird nicht angelegt. Also er geht scheinbar gar nicht in das Skript rein

Quote:
Originally Posted by CENGOiSM View Post
Solange das jdtofilebot Skript alleine läuft, bis du ja schon fast am Ziel.
Hast du in JD das Skript erlaubt? Wenn man was Neues in den EventScripter einträgt muss man das beim ersten Aufruf quittieren, bevor es funktioniert. Vielleicht hast du das noch nicht gemacht?
OK ,ich bin etwas weiter gekommen. Habe die eventscripter log gefunden, und die sagt no such file or directory. Ich kann es mir nur nicht erklären, der pfad im eventscripter script ist 100% korrekt und stimmt mit dem tatsächlichen pfad überein... stimmen da irgendwelche berechtungen nicht?

der Jdownloader läuft unter jdownloader@root, die datei jdtofilebot.sh hat als besitzer root und 777er rechte.

hier der fehler aus der log datei:

Code:
------------------------Thread: 14932:EventScripterExtension.log-----------------------
--ID:14932TS:1489352950103-3/12/17 10:09:10 PM -  [] -> java.io.IOException: Cannot run program "/volume1/video/jdtofilebotsh/jdtofilebot.sh": error=2, No such file or directory
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:127)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:113)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:108)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:56)
	at org.jdownloader.extensions.eventscripter.sandboxobjects.ScriptEnvironment$2.run(ScriptEnvironment.java:185)
Caused by: java.io.IOException: error=2, No such file or directory
	at java.lang.UNIXProcess.forkAndExec(Native Method)
	at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
	at java.lang.ProcessImpl.start(ProcessImpl.java:134)
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
hier nochmal die jdtofilebot.sh:

Code:
[{"eventTrigger":"ON_ARCHIVE_EXTRACTED", "enabled":true, "name":"FileBot", "script":"var amcFile = \"/volume1/video/jdtofilebot.sh\";var path = archive.getFolder(); callAsync(function() {}, amcFile, path);", "eventTriggerSettings":{}, "id":1489257796220}]
Jetzt habe ich in der Eile natürlich Auszüge gepostet wo der Pflad nicht übereinstimmt :D

In meinem Script und auf der Festplatte stimmen die Pfade aber wie gesagt zu 100% überein! Ich hab die Datei auch schon nach /bin kopiert und entsprechend im Event Schripter angepasst, aber jedes Mal wieder heißt es No such file. Aber nochmal, die Datei liegt definitiv am richtigen Ort...

Last edited by raztoki; 13.03.2017 at 02:13.
Reply With Quote
  #95  
Old 13.03.2017, 11:50
suffx suffx is offline
JD Alpha
 
Join Date: Nov 2016
Posts: 20
Default

Quote:
Originally Posted by suffx View Post
Ja, das habe ich gemacht. Ich habe dabei nicht das Häkchen bei "always" gesetzt. Nachdem ich allow geklickt hatte, würde das Skript anscheinend trotzdem nicht ausgeführt und die Abfrage kam seitdem nicht wieder. Auch wenn ich das Skript angepasst habe.

Auch der Ordner der am Anfang des Skripts zum Test erstellt werden soll wird nicht angelegt. Also er geht scheinbar gar nicht in das Skript rein



OK ,ich bin etwas weiter gekommen. Habe die eventscripter log gefunden, und die sagt no such file or directory. Ich kann es mir nur nicht erklären, der pfad im eventscripter script ist 100% korrekt und stimmt mit dem tatsächlichen pfad überein... stimmen da irgendwelche berechtungen nicht?

der Jdownloader läuft unter jdownloader@root, die datei jdtofilebot.sh hat als besitzer root und 777er rechte.

hier der fehler aus der log datei:

Code:
------------------------Thread: 14932:EventScripterExtension.log-----------------------
--ID:14932TS:1489352950103-3/12/17 10:09:10 PM -  [] -> java.io.IOException: Cannot run program "/volume1/video/jdtofilebotsh/jdtofilebot.sh": error=2, No such file or directory
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:127)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:113)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:108)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:56)
	at org.jdownloader.extensions.eventscripter.sandboxobjects.ScriptEnvironment$2.run(ScriptEnvironment.java:185)
Caused by: java.io.IOException: error=2, No such file or directory
	at java.lang.UNIXProcess.forkAndExec(Native Method)
	at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
	at java.lang.ProcessImpl.start(ProcessImpl.java:134)
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
hier nochmal die jdtofilebot.sh:

Code:
[{"eventTrigger":"ON_ARCHIVE_EXTRACTED", "enabled":true, "name":"FileBot", "script":"var amcFile = \"/volume1/video/jdtofilebotsh/jdtofilebot.sh\";var path = archive.getFolder(); callAsync(function() {}, amcFile, path);", "eventTriggerSettings":{}, "id":1489257796220}]


In meinem Script und auf der Festplatte stimmen die Pfade aber wie gesagt zu 100% überein! Ich hab die Datei auch schon nach /bin kopiert und entsprechend im Event Schripter angepasst, aber jedes Mal wieder heißt es No such file. Aber nochmal, die Datei liegt definitiv am richtigen Ort...
edit, anpassung der pfade
Reply With Quote
  #96  
Old 13.03.2017, 20:03
suffx suffx is offline
JD Alpha
 
Join Date: Nov 2016
Posts: 20
Default

Quote:
Originally Posted by suffx View Post
Ja, das habe ich gemacht. Ich habe dabei nicht das Häkchen bei "always" gesetzt. Nachdem ich allow geklickt hatte, würde das Skript anscheinend trotzdem nicht ausgeführt und die Abfrage kam seitdem nicht wieder. Auch wenn ich das Skript angepasst habe.

Auch der Ordner der am Anfang des Skripts zum Test erstellt werden soll wird nicht angelegt. Also er geht scheinbar gar nicht in das Skript rein



OK ,ich bin etwas weiter gekommen. Habe die eventscripter log gefunden, und die sagt no such file or directory. Ich kann es mir nur nicht erklären, der pfad im eventscripter script ist 100% korrekt und stimmt mit dem tatsächlichen pfad überein... stimmen da irgendwelche berechtungen nicht?

der Jdownloader läuft unter jdownloader@root, die datei jdtofilebot.sh hat als besitzer root und 777er rechte.

hier der fehler aus der log datei:

Code:
------------------------Thread: 14932:EventScripterExtension.log-----------------------
--ID:14932TS:1489352950103-3/12/17 10:09:10 PM -  [] -> java.io.IOException: Cannot run program "/volume1/video/jdtofilebotsh/jdtofilebot.sh": error=2, No such file or directory
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:127)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:113)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:108)
	at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:56)
	at org.jdownloader.extensions.eventscripter.sandboxobjects.ScriptEnvironment$2.run(ScriptEnvironment.java:185)
Caused by: java.io.IOException: error=2, No such file or directory
	at java.lang.UNIXProcess.forkAndExec(Native Method)
	at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
	at java.lang.ProcessImpl.start(ProcessImpl.java:134)
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
hier nochmal die jdtofilebot.sh:

Code:
[{"eventTrigger":"ON_ARCHIVE_EXTRACTED", "enabled":true, "name":"FileBot", "script":"var amcFile = \"/volume1/video/jdtofilebot.sh\";var path = archive.getFolder(); callAsync(function() {}, amcFile, path);", "eventTriggerSettings":{}, "id":1489257796220}]
Jetzt habe ich in der Eile natürlich Auszüge gepostet wo der Pflad nicht übereinstimmt :D

In meinem Script und auf der Festplatte stimmen die Pfade aber wie gesagt zu 100% überein! Ich hab die Datei auch schon nach /bin kopiert und entsprechend im Event Schripter angepasst, aber jedes Mal wieder heißt es No such file. Aber nochmal, die Datei liegt definitiv am richtigen Ort...

Edit: Konnte das Problem nun selber beheben. Das Problem war, dass die jdtofilebot.sh nicht unix codiert war am Zeitenende. Hab es mit notepad++ umgestellt und schon lief alles.
Reply With Quote
  #97  
Old 13.03.2017, 20:36
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 59,611
Default

Es gibt zwei beliebte Stolpersteine
1.) Datei muss Ausführbar sein (chmod +x Datei)
2.) Da JDownloader keine Umgebungsvariablen weitergibt, sollte in der filebot.sh (dem Skript) der Pfad von Java hardcoded werden und nicht via Umgebungsvariable genutzt werden. Sprich wenn Filebot in der Shell geht aber via JDownloader nicht, dann liegt es evtl genau daran
__________________
JD-Dev & Server-Admin
Reply With Quote
  #98  
Old 13.03.2017, 20:37
Jiaz's Avatar
Jiaz Jiaz is offline
JD Manager
 
Join Date: Mar 2009
Location: Germany
Posts: 59,611
Default

@suffx: In Zukunft bitte einfach deinen Post editieren statt einen neuen zu erstellen und den alten zu zitieren
__________________
JD-Dev & Server-Admin
Reply With Quote
  #99  
Old 14.03.2017, 05:39
CENGOiSM CENGOiSM is offline
JD Beta
 
Join Date: Jun 2015
Posts: 53
Default

Freut mich, dass es nun läuft. ����
Falls du dir einen weiteren Schritt zutraust, schau nach "Flexget".
Vielleicht ist das ja was für dich?
Reply With Quote
  #100  
Old 14.03.2017, 13:28
suffx suffx is offline
JD Alpha
 
Join Date: Nov 2016
Posts: 20
Default

Danke für den Hinweis :-)

Hab ich mich noch nie mit beschäftigt... Mir ist nicht ganz klar auf was für quellen man da am besten zugreift... Torrents wären ja nicht so ideal. Mediatheken wären aber interessant.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT +2. The time now is 06:09.
Provided By AppWork GmbH | Privacy | Imprint
Parts of the Design are used from Kirsch designed by Andrew & Austin
Powered by vBulletin® Version 3.8.10 Beta 1
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.