Automation I have working so far (all this is done with Hazel)
1. movie/tv show downloads to /Volumes/Media 2/Torrents
2. When complete it copies the contents of the dl'ed folder to /Volumes/Media 2/Move (I do this so I can continue to seed untouched file)
3. When moved to the Move folder, it unarchives and trashes and extra files (nfo, subs, sfv, jpg, etc.)
4. when automation is complete, I am only left with a .mkv.
Automation I want to achieve
1. I want to auto detect if the .mkv is a movie or tv show and automatically rename movie to movie (2014).mkv and rename tv shows to Series name - 1x01 - Episode name.mkv
2. after renamed, I would like to auto sort to proper location. Movies are stored by genre. So directroy is /Volumes/Media 2/Movies/Action/movie (2014).mkv. Genres I currently have are Action, Animation, Comedy, Crime, Drama. TV shows directory is /Volumes/Media 2/TV/Series Name/Series Name Season 1/Series name - 1x01 - Episode name.mkv.
3. After moved to proper location, I would like to update my Plex server automatically.
My System overview
Operating System - OS X version 10.9.5
utorrent - version 1.8.4 (29971)
java - gui - version 8 Update 25 cli - 1.8.0_20 (I think thats right?)
groovy - version 2.3.7 installed using gvm using these instructions http://groovy.codehaus.org/Download#Dow ... ntManager)
Filebot gui - Bought in App store version 4.3 (2485)
Filebot cli - installed using this tut (thanks) http://www.filebot.net/forums/viewtopic.php?f=4&t=2049
Output of
Code: Select all
filebot -script fn:sysinfo
Code: Select all
Macintosh:~ owner$ filebot -script fn:sysinfo
FileBot 4.5 (r2612)
JNA Native: 4.0.0
MediaInfo: MediaInfoLib - v0.7.69
7-Zip-JBinding: OK
chromaprint-tools: fpcalc version 1.1.0 (/opt/homebrew-cask/Caskroom/filebot/4.5/FileBot.app/Contents/MacOS/fpcalc)
Extended Attributes: OK
Groovy Engine: 2.3.7
JRE: Java(TM) SE Runtime Environment 1.8.0_20
JVM: 64-bit Java HotSpot(TM) 64-Bit Server VM
CPU/MEM: 8 Core / 3 GB Max Memory / 127 MB Used Memory
OS: Mac OS X (x86_64)
uname: Darwin Macintosh.local 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64
Done ヾ(@⌒ー⌒@)ノ
I customized two scripts to my needs (don't need unarchive or fetch subs)
1.housekeeping.groovy contents (for renaming Movies?)
Code: Select all
// filebot -script fn:housekeeping /Volumes/Media 2/Move/ --output /Volumes/Media 2/Move/ --format <expression>
/*
* Watch folder for new movies and automatically move/rename new releases
*/
// check for new media files once every 5 minutes
def updateFrequency = 5 * 60 * 1000
// spawn daemon thread
Thread.startDaemon {
while (sleep(updateFrequency) || true) {
// rename all
if (_args.rename) {
args.eachMediaFolder {
rename(folder:it)
}
}
}
}
println "Press ENTER to abort"
console.readLine() // keep script running until aborted by user
Code: Select all
// filebot -script fn:watcher /Volumes/Media 2/Move/ --output /Volumes/Media 2/Move/ --format <expression>
// watch folders and print files that were added/modified
def watchman = args[0].watch { changes ->
// rename all
if (_args.rename)
rename(file:changes)
}
watchman.commitDelay = 5 * 1000 // default = 5s
watchman.commitPerFolder = true // default = true
println "Waiting for events"
if (console) { console.readLine() } else { sleep(Long.MAX_VALUE) } // keep running and watch for changes
