zilexa

FLEXGET - Trakt.tv TVShows & Movies

Jun 24th, 2013
12,581
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. variables: secrets.yml
  2. schedules:
  3. ##### YOUR TORRENT CLIENT SHOULD RUN THIS COMMAND AFTER EVERY DOWNLOAD: PATH_TO_flexget/bin/flexget execute --tasks find-* move-*
  4. ##### Alternatively uncomment this task to process downloaded files every 30min.
  5. #  - tasks: [ 'find-*', 'move-*']
  6. #    interval:
  7. #      minutes: 30
  8. ##### Every day at 2AM, check nextep to search (necessary if you added a new show to the list but have already watched it partly) and find subtitles attempt #2 (without original name).
  9.   - tasks: ['*-nextep', get-subtitles]
  10.     schedule:
  11.       hour:  2
  12. ##### Twice a day between 2AM and 7AM: scan existing files, fill queue, check the feeds for latest episodes, discover missing episodes.
  13.   - tasks: ['purge-*', 'populate-*', 'fill-*', '*-manual', '*-rss', '*-discover']
  14.     schedule:
  15.       hour: '2-7/2'
  16. ##### Weekly cleanup of Transmission, Trakt TVshows list (fully watched && ended = delete from list) and harddrive.
  17.   - tasks: ['clean-*']
  18.     interval:
  19.       weeks: 1
  20.  
  21.  
  22. templates:
  23.  
  24. ##### Series config# Please uncomment `tracking: backfill` if you need Flexget to download as much as old episodes as it can find. Do the same in series-discover-episodes and series-discover-seasons tasks
  25.   series:
  26.     thetvdb_lookup: yes
  27.     tvmaze_lookup: yes
  28.     configure_series:
  29.       from:
  30.         entry_list: trakt-series
  31.       settings:
  32.         identified_by: ep
  33.         timeframe: 1 hours
  34.         target: webrip+ 720p !10bit h265
  35.         quality: webrip+ <=1080p !10bit xvid+
  36.         propers: 48 hours
  37.         specials: no
  38.         season_packs: 3
  39. #        tracking: backfill
  40.     content_size:
  41.       min: 100
  42.     content_filter:
  43.       require:
  44.         - '*.mkv'
  45.         - '*.mp4'
  46.  
  47.  
  48. ##### Movies config#
  49.   movies-HQ:
  50.     tmdb_lookup: yes
  51.     movie_list: trakt-movies
  52.     quality: 1080p webdl+ !10bit !h265
  53.     content_size:
  54.       min: 8000
  55.       max: 25000
  56.  
  57.   movies-NQ:
  58.     tmdb_lookup: yes
  59.     movie_list: trakt-movies
  60.     quality: 1080p webdl+ !10bit !h265
  61.     content_size:
  62.       min: 2000
  63.       max: 7999
  64.  
  65.   movies-LQ:
  66.     tmdb_lookup: yes
  67.     movie_list: trakt-movies
  68.     quality: 720p webdl+ !10bit !h265
  69.     content_size:
  70.       min: 900
  71.       max: 8000
  72.  
  73. ##### Transmission config#
  74.   transmission-anchors:
  75.     _transmission-settings: &transmission-settings
  76.       host: "{? transmission.host ?}"
  77.       port: 9091
  78.       username: "{? transmission.user ?}"
  79.       password: "{? transmission.pass ?}"
  80.  
  81. ##### Common rejections#
  82.   reject:
  83.     regexp:
  84.       reject:
  85.         - \b(s|d)ub(s|bed|lado|titulado)?\b
  86.         - \bhc\b
  87.         - \bdual\b
  88.         - \b3d\b
  89.         - \bfre(nch)?\b
  90.         - \bita(lian)?\b
  91.         - \bspa(nish)?\b
  92.         - \bger(man)?\b
  93.         - \bcastellano\b
  94.         - \brus(sian)?\b
  95.         - \btamil\b
  96.         - \bhindi\b
  97.     content_filter:
  98.       reject:
  99.         - '*.rar'
  100.         - '*.zip'
  101.  
  102.  
  103. ##### ADVANCED SETTINGS #####
  104. ##### Global config#
  105.   global:
  106.     no_entries_ok: yes
  107.     pathscrub: windows
  108.     free_space:
  109.       path: "/{? folder.root ?}"
  110.       space: 5000
  111.     # Requires log_filter plugin
  112.     log_filter:
  113.       task:
  114.         - marked seen
  115.         - because quality already downloaded
  116.         - because episode has already been downloaded
  117.         - Task does not have any
  118.       move:
  119.         - left because it exceeds safety value
  120.         - does not exists (anymore)
  121.       urlrewriter:
  122.         - URL rewritten to
  123.       enzyme.mkv:
  124.         - Reading
  125.         - Processing
  126.       enzyme.parsers.ebml.core:
  127.         - ignored
  128.         - Maximum level
  129.       subliminal.video:
  130.         - Scanning video
  131.       parser_internal:
  132.         - appears to be an episode pack
  133.       content_size:
  134.         - rejecting
  135.       search_rss:
  136.         - Error
  137.       assume_quality:
  138.         - ""
  139.       utils.requests:
  140.         - Waiting
  141.  
  142. ##### Common torrents config#
  143.   torrents:
  144.     torrent_alive:
  145.       min_seeds: 3
  146.       reject_for: 15 minutes
  147.     magnets: no
  148.     # Might need to disable if you are getting errors connecting to https sources
  149.     # Can remove if you upgrade to python 2.7.9+ or install requests[security]
  150.     verify_ssl_certificates: no
  151.     domain_delay:
  152.       thepiratebay.se: 10 seconds
  153.       thepiratebay.org: 10 seconds
  154.       limetorrents: 3 seconds
  155.       anidex.info: 3 seconds
  156.       bt-chat.com: 1 seconds
  157.       ezrss.it: 1 seconds
  158.       showrss.info: 2 seconds
  159.       torlock.eu: 1 seconds
  160.       torrenticity.com: 1 seconds
  161.       zooqle.com: 2 seconds
  162.     urlrewrite:
  163.       torrentz2:
  164.         regexp: 'http://torrentz2.eu/(?P<id>\w*)'
  165.         format: 'magnet:?xt=urn:btih:\g<id>&dn=&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Fopen.demonii.com%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce'
  166.  
  167.  
  168. ##### Transmission series config#
  169.   transmission-series:
  170.     transmission:
  171.       <<: *transmission-settings
  172.       main_file_only: yes
  173.       include_subs: yes
  174.       rename_like_files: yes
  175.       content_filename: "{{tvdb_series_name|escape|replace('&#39;', '')|pathscrub}} - {{series_id}}{% if tvdb_ep_name|default(False) %} - {{tvdb_ep_name|pathscrub}}{% endif %}{% if quality|default(False) %} - [{{quality}}]{% endif %}"
  176.       path: "/{? folder.root ?}{? folder.downseries ?}{{tvdb_series_name|default(series_name)|pathscrub}}/"
  177.  
  178. ##### Transmission movies config#
  179.   transmission-movies:
  180.     transmission:
  181.       <<: *transmission-settings
  182.       main_file_only: yes
  183.       include_subs: yes
  184.       rename_like_files: yes
  185.       content_filename: "{{tmdb_name|pathscrub}} ({{tmdb_year}}){% if quality|default(False) %} - [{{quality}}]{% endif %}{% if release_group|default(False) %} - [{{release_group}}]{% endif %}"
  186.       path: "/{? folder.root ?}{? folder.downmovies ?}{{movie_name|pathscrub}}"
  187.  
  188. ##### Pushbullet config#
  189. #  pushbullet:
  190. #    notify:
  191. #      entries:
  192. #        title: "[flexget] {{task}}"
  193. #        message: "{{title}}"
  194. #        via:
  195. #          - pushbullet:
  196. #              api_key: "{? pushbullet.api ?}"
  197.  
  198. ##### Disable builtins for some tasks#
  199.   disable-seen-retry:
  200.     disable:
  201.       - seen
  202.       - seen_info_hash
  203.       - retry_failed
  204.  
  205. ##### Series metainfo mainly for move and update tasks#
  206.   series-metainfo:
  207.     metainfo_series: yes
  208.     thetvdb_lookup: yes
  209.  
  210. ##### Guessit parsing for some series tasks, not applied to all tasks because it causes issues with "name (year)" based series, like scandal#
  211.   series-guessit:
  212.     parsing:
  213.       series: guessit
  214.  
  215. ##### Movies metainfo mainly for move and update tasks#
  216.   movies-metainfo:
  217.     tmdb_lookup: yes
  218.     parsing:
  219.       movie: guessit
  220.     metainfo_movie: yes
  221.  
  222.  
  223. ##### Move template, only necessary if you rename files AFTER they are downloaded.
  224. #  move-series:
  225. #    move:
  226. #      to: "/{? folder.root ?}{? folder.series ?}{{tvdb_series_name|escape|replace('&#39;', '')|pathscrub}}/S{{series_season|pad(2)}}/"
  227. #      rename: "{{tvdb_series_name|default(series_name)}} - {{tvdb_ep_id|default(series_id)}}{% if tvdb_ep_name|default(False) %} - {{tvdb_ep_name|pathscrub}}{% endif %}{% if quality|default(False) %} - [{{quality}}]{% endif %}"
  228. #      along:
  229. #        extensions:
  230. #          - srt
  231. #          - sub
  232. #        subdirs:
  233. #          - Subs
  234. #      clean_source: 50
  235. #    kodi_library:
  236. #      action: scan
  237. #      category: video
  238. #      url: http://localhost
  239. #      port: 8080
  240. #    list_add:
  241. #      - subtitle_list:
  242. #          list: subtitles
  243. #          path: "{{location}}"
  244. #          remove_after: 7 days
  245.  
  246.  
  247. tasks:
  248. ########## SERIES ##########
  249. # SYNC WITH TRAKT
  250. ##### First run only (use ~/flexget/bin/flexget execute --now) Sync Flexget database with watched status in Trakt#  
  251.   get-series-nextep:
  252.     priority: 2
  253.     template:
  254.       - disable-seen-retry
  255.       - series-metainfo
  256.     list_clear:
  257.       what:
  258.         - entry_list: trakt-series-begin
  259.     next_trakt_episodes:
  260.       account: "{? trakt.account ?}"
  261.       list: "{? trakt.series ?}"
  262.       context: watched
  263.       position: next
  264.     accept_all: yes
  265.     list_add:
  266.       - entry_list: trakt-series-begin
  267.      
  268.   set-series-nextep:
  269.     priority: 3
  270.     template:
  271.       - disable-seen-retry
  272.       - series-metainfo
  273.     entry_list: trakt-series-begin
  274.     accept_all: yes
  275.     set:
  276.       series_name: "{{tvdb_series_name|escape|replace('&#39;', '')}}"
  277.     set_series_begin: yes
  278.  
  279.  # SCAN DATABASE
  280. ##### Populates the series database with the files on the library, to avoid duplicate downloads#
  281.   populate-series-db:
  282.     priority: 4
  283.     template:
  284.       - series-metainfo
  285.     seen: local
  286.     filesystem:
  287.       path: "/{? folder.root ?}{? folder.series ?}"
  288.       recursive: yes
  289.       retrieve: files
  290.       regexp: '.*\.(avi|mkv|mp4)$'
  291.     accept_all: yes
  292.     configure_series:
  293.       from:
  294.         filesystem:
  295.           path: "/{? folder.root ?}{? folder.series ?}"
  296.           retrieve: dirs
  297.       settings:
  298.         tracking: no
  299.         identified_by: ep
  300.  
  301.  ##### Fetch, format and output trakt series list to a custom entry list#
  302.   fill-series-list:
  303.     priority: 5
  304.     template:
  305.       - disable-seen-retry
  306.       - series-metainfo
  307.     list_clear:
  308.       what:
  309.         - entry_list: trakt-series
  310.     trakt_list:
  311.       account: "{? trakt.account ?}"
  312.       list: "{? trakt.series ?}"
  313.       type: shows
  314.     accept_all: yes
  315.     set:
  316.       title: "{{tvdb_series_name|escape|replace('&#39;', '')}}"
  317.     list_add:
  318.       - entry_list: trakt-series  
  319.  
  320.  
  321. # GET SERIES
  322. ##### Download episodes from manually downloaded torrents#
  323.   download-series-manual:
  324.     priority: 6
  325.     template:
  326.       - disable-seen-retry
  327.       - series-metainfo
  328.       - series-guessit
  329.       - transmission-series
  330.     filesystem:
  331.       path: "/{? folder.root ?}{? folder.downseries ?}"
  332.       mask: '*.torrent'
  333.     accept_all: yes
  334.     exec:
  335.       on_output:
  336.         for_accepted: rm -f "{{location}}"
  337.  
  338.  
  339. ##### Download episodes from RSS feeds#
  340.   download-series-rss:
  341.     priority: 7
  342.     template:
  343.       - series
  344.       - reject
  345.       - torrents
  346.       - transmission-series
  347.     inputs:
  348.       - rss: http://showrss.info/user/USERID.rss?magnets=true&namespaces=true&name=null&quality=anyhd&re=yes
  349.       - rss: https://eztv.ag/ezrss.xml
  350.       - rss: https://rarbg.to/rssdd.php?category=1;18;41;49
  351.       - rss:
  352.           url: https://zooqle.com/search?q=%2A+category%3ATV&fmt=rss
  353.           title: 'torrent:fileName'
  354.       - rss: https://www.limetorrents.cc/rss/20/
  355.  
  356.      
  357.  
  358. ##### Discover and download season packs# Please uncomment `backfill` if you need Flexget to download as much as old episodes as it can find. Do the same in series-discover-seasons task and series template.
  359.   download-seasons-discover:
  360.     priority: 8
  361.     template:
  362.       - series
  363.       - reject
  364.       - torrents
  365.       - transmission-series
  366.       - series-metainfo
  367.     #season lookup not supported by thetvdb
  368.     thetvdb_lookup: no
  369.     magnets: yes
  370.     convert_magnet:
  371.       timeout: 120 seconds
  372.       force: yes
  373.     discover:
  374.       release_estimations: strict
  375.       interval: 15 minutes
  376.       what:
  377.         - next_series_seasons: yes
  378. #            backfill: yes
  379.       from:
  380.         - piratebay:
  381.             category: highres tv
  382.         - limetorrents:
  383.             category: tv
  384.         - rarbg:
  385.             category: [1, 18, 41, 49]
  386.         - search_rss: https://torrentz2.eu/feed?f=\{{search_term}}
  387.  
  388.  
  389. ##### Discover and download older episodes# Please uncomment `tracking: backfill` if you need Flexget to download as much as old episodes as it can find. Do the same in series-discover-seasons task and series template.
  390.   download-series-discover:
  391.     priority: 9
  392.     template:
  393.       - series
  394.       - reject
  395.       - torrents
  396.       - transmission-series
  397.       - series-metainfo
  398.     magnets: yes
  399.     convert_magnet:
  400.       timeout: 120 seconds
  401.       force: yes
  402.     discover:
  403.       release_estimations: strict
  404.       interval: 15 minutes
  405.       what:
  406.         - next_series_episodes: yes
  407. #            backfill: yes
  408.       from:
  409.         - piratebay:
  410.             category: highres tv
  411.         - limetorrents:
  412.             category: tv
  413.         - rarbg:
  414.             category: [1, 18, 41, 49]
  415.         - search_rss: https://torrentz2.eu/feed?f=\{{search_term}}
  416.  
  417. ########## MOVIES ##########
  418.  
  419. ##### Remove manually downloaded movies from the movie queue and trakt list#
  420.   purge-movies-queue:
  421.     priority: 11
  422.     template:
  423.       - disable-seen-retry
  424.       - movies-metainfo
  425.     filesystem:
  426.       path: "/{? folder.root ?}{? folder.movies ?}"
  427.       recursive: yes
  428.       retrieve: files
  429.       regexp: '.*\.(avi|mkv|mp4)$'
  430.     accept_all: yes
  431.     list_remove:
  432.       - movie_list: trakt-movies
  433.       - trakt_list:
  434.           account: "{? trakt.account ?}"
  435.           list: "{? trakt.movies ?}"
  436.           type: movies
  437.  
  438.  
  439. ##### Fill the movie queue with movies from trakt list#
  440.   fill-movies-queue:
  441.     priority: 12
  442.     trakt_list:
  443.       account: "{? trakt.account ?}"
  444.       list: "{? trakt.movies ?}"
  445.       type: movies
  446.       strip_dates: yes
  447.     accept_all: yes
  448.     list_add:
  449.       - movie_list: trakt-movies
  450.  
  451.  
  452. ##### Download movies manually downloaded torrents#
  453.   download-movies-manual:
  454.     priority: 13
  455.     template:
  456.       - disable-seen-retry
  457.       - movies-metainfo
  458.       - transmission-movies
  459.     filesystem:
  460.       path: "/{? folder.root ?}{? folder.downmovies ?}"
  461.       mask: '*.torrent'
  462.     accept_all: yes
  463.     exec:
  464.       on_output:
  465.         for_accepted: rm -f "{{location}}"
  466.     list_remove:
  467.       - movie_list: trakt-movies
  468.       - trakt_list:
  469.           account: "{? trakt.account ?}"
  470.           list: "{? trakt.movies ?}"
  471.           type: movies
  472.  
  473.  
  474. ##### Discover and download 1080p movies with good bitrate (min. 8GB)#
  475.   download-movies-HQ-discover:
  476.     priority: 14
  477.     template:
  478.       - movies-HQ
  479.       - reject
  480.       - torrents
  481.       - transmission-movies
  482.     exists_movie:
  483.       - "/{? folder.root ?}{? folder.downmovies ?}"
  484.       - "/{? folder.root ?}{? folder.movies ?}"
  485.     magnets: yes
  486.     convert_magnet:
  487.       timeout: 120 seconds
  488.       force: yes
  489.     seen: local
  490.     discover:
  491.       release_estimations: loose
  492.       interval: 15 minutes
  493.       what:
  494.         - movie_list: trakt-movies
  495.       from:
  496.         - piratebay:
  497.             category: highres movies
  498.         - limetorrents:
  499.             category: movies
  500.     list_match:
  501.       from:
  502.         - movie_list: trakt-movies
  503.     list_remove:
  504.       - trakt_list:
  505.           account: "{? trakt.account ?}"
  506.           list: "{? trakt.movies ?}"
  507.           type: movies
  508.  
  509.  
  510. ##### Discover and download NQ movies (fullHD min 2GB), if the movie is not recent#
  511.   download-movies-NQ-discover:
  512.     priority: 15
  513.     template:
  514.       - movies-NQ
  515.       - reject
  516.       - torrents
  517.       - transmission-movies
  518.     exists_movie:
  519.       - "/{? folder.root ?}{? folder.downmovies ?}"
  520.       - "/{? folder.root ?}{? folder.movies ?}"
  521.     magnets: yes
  522.     convert_magnet:
  523.       timeout: 120 seconds
  524.       force: yes
  525.     seen: local
  526.     discover:
  527.       release_estimations: loose
  528.       interval: 15 minutes
  529.       what:
  530.         - movie_list: trakt-movies
  531.       from:
  532.         - piratebay:
  533.             category: highres movies
  534.         - limetorrents:
  535.             category: movies
  536.     list_match:
  537.       from:
  538.         - movie_list: trakt-movies
  539.     list_remove:
  540.       - trakt_list:
  541.           account: "{? trakt.account ?}"
  542.           list: "{? trakt.movies ?}"
  543.           type: movies
  544.  
  545.  
  546. ##### Discover and download lower quality/bitrate movies (1-8GB 720p), if the movie is not recent#
  547.   download-movies-LQ-discover:
  548.     priority: 16
  549.     template:
  550.       - movies-LQ
  551.       - reject
  552.       - torrents
  553.       - transmission-movies
  554.     exists_movie:
  555.       - "/{? folder.root ?}{? folder.downmovies ?}"
  556.       - "/{? folder.root ?}{? folder.movies ?}"
  557.     magnets: yes
  558.     convert_magnet:
  559.       timeout: 120 seconds
  560.       force: yes
  561.     seen: local
  562.     discover:
  563.       release_estimations: loose
  564.       interval: 15 minutes
  565.       what:
  566.         - movie_list: trakt-movies
  567.       from:
  568.         - piratebay:
  569.             category: highres movies
  570.         - limetorrents:
  571.             category: movies
  572.     list_match:
  573.       from:
  574.         - movie_list: trakt-movies
  575.     list_remove:
  576.       - trakt_list:
  577.           account: "{? trakt.account ?}"
  578.           list: "{? trakt.movies ?}"
  579.           type: movies
  580.  
  581.  
  582. ########## SUBTITLES (attempt 1/2) ##########
  583.  
  584. ##### The first attempt to find subtitles by searching for a match before renaming files.
  585.   find-subtitles-series:
  586.     priority: 21
  587.     template:
  588.       - disable-seen-retry
  589.     filesystem:
  590.       path: "/{? folder.root ?}{? folder.downseries ?}"
  591.       recursive: yes
  592.       retrieve: files
  593.       regexp: '.*\.(avi|mkv|mp4)$'
  594.     accept_all: yes
  595.     seen: local
  596.     subliminal:
  597.       languages:
  598.         - eng
  599.       exact_match: yes
  600.       single: no
  601.       providers: [opensubtitles, addic7ed, tvsubtitles, podnapisi]
  602.       authentication:
  603.         opensubtitles:
  604.           username: "{? subtitles.user ?}"
  605.           password: "{? subtitles.pass ?}"
  606.         addic7ed:
  607.           username: "{? subtitles.user ?}"
  608.           password: "{? subtitles.pass ?}"
  609.  
  610.  
  611. ##### The first attempt to find subtitles by searching for a match before renaming files.
  612.   find-subtitles-movies:
  613.     priority: 22
  614.     template:
  615.       - disable-seen-retry
  616.     filesystem:
  617.       path: "/{? folder.root ?}{? folder.downmovies ?}"
  618.       recursive: yes
  619.       retrieve: files
  620.       regexp: '.*\.(avi|mkv|mp4)$'
  621.     accept_all: yes
  622.     seen: local
  623.     subliminal:
  624.       languages:
  625.         - eng
  626.       exact_match: yes
  627.       single: no
  628.       providers: [opensubtitles, addic7ed, tvsubtitles, podnapisi]
  629.       authentication:
  630.         opensubtitles:
  631.           username: "{? subtitles.user ?}"
  632.           password: "{? subtitles.pass ?}"
  633.         addic7ed:
  634.           username: "{? subtitles.user ?}"
  635.           password: "{? subtitles.pass ?}"
  636.  
  637.  
  638. ##########      LIBRARY     ##########
  639.   move-series:
  640.     priority: 31
  641.     template:
  642.       - disable-seen-retry
  643.       - series-metainfo
  644.       - series-guessit
  645.     filesystem:
  646.       path: "/{? folder.root ?}{? folder.downseries ?}"
  647.       recursive: yes
  648.       retrieve: files
  649.       regexp: '.*\.(avi|mkv|mp4)$'
  650.     accept_all: yes
  651.     move:
  652.       to: "/{? folder.root ?}{? folder.series ?}{{tvdb_series_name|escape|replace('&#39;', '')|pathscrub}}/S{{series_season|pad(2)}}/"
  653.       rename: "{{tvdb_series_name|escape|replace('&#39;', '')|pathscrub}} - {{series_id}}{% if tvdb_ep_name|default(False) %} - {{tvdb_ep_name|pathscrub}}{% endif %}{% if quality|default(False) %} - [{{quality}}]{% endif %}"
  654.       along:
  655.         extensions:
  656.           - srt
  657.           - sub
  658.         subdirs:
  659.           - Subs
  660.       clean_source: 50
  661.     kodi_library:
  662.       action: scan
  663.       category: video
  664.       url: http://192.168.1.1
  665.       port: 8080
  666.     list_add:
  667.       - subtitle_list:
  668.           list: subtitles
  669.           path: "{{location}}"
  670.           remove_after: 7 days
  671.     exec:
  672.       on_exit:
  673.         phase: find "/{? folder.root ?}{? folder.downseries ?}"* -type d -empty -delete
  674.  
  675.  
  676.  
  677. ##### First add the downloaded series a list, this allows us to solve issues with files that have incorrect filenames.
  678. #  move-series-list:
  679. #    priority: 32
  680. #    template:
  681. #      - disable-seen-retry
  682. #      - series-metainfo
  683. #    list_clear:
  684. #      what:
  685. #        - entry_list: downloaded-series
  686. #    filesystem:
  687. #      path: "/{? folder.root ?}{? folder.downseries ?}"
  688. #      recursive: yes
  689. #      retrieve: files
  690. #      regexp: '.*\.(avi|mkv|mp4)$'
  691. #    accept_all: yes
  692. #    list_add:
  693. #      - entry_list: downloaded-series
  694.    
  695.    
  696. ##### Now move series from downloads folder to respective folders, along with existing subtitles and adding the files to the subtitle queue    
  697. #  move-series-SxxEyy:
  698. #    priority: 33
  699. #    template:
  700. #      - disable-seen-retry
  701. #      - series-metainfo
  702. #      - move-series
  703. #    entry_list: downloaded-series
  704. #    accept_all: yes    
  705. #    require_field: tvdb_series_name
  706. #    exec:
  707. #      on_exit:
  708. #        phase: find "/{? folder.root ?}{? folder.downseries ?}"* -type d -empty -delete
  709.  
  710.  
  711. ##### Fix the leftovers: Move series with incoreect epid numbering were rejected by the move-series task due to incorrect filename (SSEE instead of SxxEyy).  
  712. #  move-series-SSEE:
  713. #    priority: 34
  714. #    template:
  715. #      - disable-seen-retry
  716. #      - series-metainfo
  717. #      - move-series
  718. #    entry_list: downloaded-series
  719. #    accept_all: yes  
  720. #    manipulate:
  721. #      - title:
  722. #          replace:
  723. #            regexp: '([01]\d)([0-2]\d)'
  724. #            format: 'S\1E\2'
  725. #      - filename:
  726. #          from: title
  727. #    require_field: tvdb_series_name
  728. #    exec:
  729. #      on_exit:
  730. #        phase: find "/{? folder.root ?}{? folder.downseries ?}"* -type d -empty -delete
  731.  
  732.  
  733. ##### Fix the leftovers: downloaded series that were rejected by the move-series task due to incorrect filename (SEE instead of SxxEyy), will get a title fix and should get moved on next run.  
  734. #  move-series-SEE:
  735. #    priority: 35
  736. #    template:
  737. #      - disable-seen-retry
  738. #      - series-metainfo
  739. #      - move-series
  740. #    entry_list: downloaded-series
  741. #    accept_all: yes  
  742. #    manipulate:
  743. #      - title:
  744. #          replace:
  745. #            regexp: '([1-9])([0-2]\d)'
  746. #            format: 'S\1E\2'
  747. #      - filename:
  748. #          from: title
  749. #    require_field: tvdb_series_name
  750. #    exec:
  751. #      on_exit:
  752. #        phase: find "/{? folder.root ?}{? folder.downseries ?}"* -type d -empty -delete
  753.  
  754.  
  755. ##### Move movies from downloads folder to the movies folder, along with possible subtitles and adding the files to the subtitle queue#
  756.   move-movies:
  757.     priority: 36
  758.     template:
  759.       - disable-seen-retry
  760.       - movies-metainfo
  761.     require_field: tmdb_name
  762.     filesystem:
  763.       path: "/{? folder.root ?}{? folder.downmovies ?}"
  764.       recursive: yes
  765.       retrieve: files
  766.       regexp: '.*\.(avi|mkv|mp4)$'
  767.     accept_all: yes
  768.     regexp:
  769.       reject:
  770.         - \btrailer\b
  771.         - \bsample\b
  772.     move:
  773.       to: "/{? folder.root ?}{? folder.movies ?}"
  774.       rename: "{{tmdb_name|pathscrub}} ({{tmdb_year}}){% if quality|default(False) %} - [{{quality}}]{% endif %}{% if release_group|default(False) %} - [{{release_group}}]{% endif %}"
  775.       along:
  776.         extensions:
  777.           - srt
  778.           - sub
  779.         subdirs:
  780.           - Subs
  781.       clean_source: 100
  782.     kodi_library:
  783.       action: scan
  784.       category: video
  785.       url: http://192.168.1.1
  786.       port: 8080
  787.     list_add:
  788.       - subtitle_list:
  789.           list: subtitles
  790.           path: "{{location}}"
  791.           remove_after: 7 days
  792.     exec:
  793.       on_exit:
  794.         phase: find "/{? folder.root ?}{? folder.downmovies ?}"* -type d -empty -delete
  795.  
  796.  
  797. ########## SUBTITLES (attempt 2/2) ##########
  798.  
  799. ##### Download subtitles for the previously queued files#
  800.   get-subtitles:
  801.     priority: 40
  802.     template:
  803.       - disable-seen-retry
  804.     subtitle_list:
  805.       list: subtitles
  806.       recursion_depth: 3
  807.     list_match:
  808.       from:
  809.         - subtitle_list:
  810.             list: subtitles
  811.     subliminal:
  812.       languages:
  813.         - eng
  814.       exact_match: yes
  815.       single: no
  816.       providers: [opensubtitles, addic7ed, tvsubtitles, podnapisi]
  817.       authentication:
  818.         opensubtitles:
  819.           username: "{? subtitles.user ?}"
  820.           password: "{? subtitles.pass ?}"
  821.         addic7ed:
  822.           username: "{? subtitles.user ?}"
  823.           password: "{? subtitles.pass ?}"
  824.  
  825.  
  826. ########## CLEANUP ##########
  827.  
  828.   clean-transmission:
  829.     priority: 51
  830.     disable: details
  831.     clean_transmission:
  832.       <<: *transmission-settings
  833.       finished_for: 1 day
  834.  
  835. ##### Remove ended or canceled series that have been watched from trakt list#
  836.   clean-series-list:
  837.     priority: 52
  838.     template:
  839.       - disable-seen-retry
  840.       - series-metainfo
  841.     trakt_lookup:
  842.       account: "{? trakt.account ?}"
  843.       username: "{? trakt.account ?}"    
  844.     trakt_list:
  845.       account: "{? trakt.account ?}"
  846.       list: "{? trakt.series ?}"
  847.       type: shows    
  848.     if:
  849.       - "tvdb_status == 'Ended' and trakt_watched": accept
  850.     list_remove:
  851.       - trakt_list:
  852.           account: "{? trakt.account ?}"
  853.           list: "{? trakt.series ?}"
  854.           type: shows
  855.          
  856. ##### Remove watched seasons from drive#          
  857.   clean-old-seasons:
  858.     priority: 53
  859.     template:
  860.       - disable-seen-retry
  861.       - series-metainfo
  862.     entry_list: trakt-series-begin
  863.     accept_all: yes
  864.     if:
  865.       - series_season == 1 or series_episode == 1: reject
  866.       - series_season > 1:
  867.           set:
  868.             to_remove: "S{{(series_season-1)|pad(2)}}"
  869.     exec:
  870.       on_output:
  871.         for_accepted: find "/{? folder.root ?}{? folder.series ?}{{tvdb_series_name|escape|replace('&#39;', '')}}" -type d -name "{{to_remove}}" -exec rm -r '{}' \;
  872.     kodi_library:
  873.       action: clean
  874.       category: video
  875.       url: http://192.168.1.1
  876.       port: 8080
Add Comment
Please, Sign In to add comment