class TransmissionAutoSubtitles

Public Class Methods

new(subtitles_downloader: OpensubtitlesDownloader.new, interval: 10) click to toggle source
# File lib/transmission_auto_subtitles.rb, line 5
def initialize subtitles_downloader: OpensubtitlesDownloader.new, interval: 10
  @subtitles_downloader = subtitles_downloader
  @interval = interval
end

Public Instance Methods

run() click to toggle source
# File lib/transmission_auto_subtitles.rb, line 10
def run
  RTransmission::Client.session do |session|
    loop do
      torrents = RTransmission::Torrent.list(session)
      torrents.each do |torrent|
        if torrent.percent_done == 1
          @subtitles_downloader.subtitles_for(torrent)
          torrent.remove
        end
      end

      sleep @interval
    end
  end
end