I've currently started using sabnzbd for nzb files and I think that it has one of the best implementations/example of what I'd like to do.
See their 'Categories' page on their wiki. It also seems to be a good way to support scripts that run post processing.
When you add a torrent you could select which category you wanted it to go in (or just 'default'). The watch folder could have (& optionally create) sub folders to each category. So if I watch /home/user/torrents/, anything placed in /home/user/torrents/tv/ would be added to the TV category. Be moved to the TV download dir and pass anything downloaded from it to the post processing scripts.
Almost anything else that was configurable could then be specified per grouping. TV shows are limited to 1.0 ratio, 10K up and 100K down. Movies are limited to 2.0 ratio, 50k up and unlimited down, etc
Not too familiar with JSON, but in the config file it'd be something like this:
Code: Select all
"torrent-categories": "tv,movies,software,other"
"torrent-postprocessing": {
"default": "",
"tv": "/home/user/scripts/iPodConvert.sh",
"software": "unrar -x "
}
"download-dir": {
"default": "/home/user/downloads/",
"tv": "/mnt/tv",
"movies": "/mnt/movies",
"software": "software",
"other": ""
}