class Configuration::Client
Constants
- FIELDS
- HOST
HOST
= '127.0.0.1:3000'
Attributes
download_dir[RW]
host[R]
interval[R]
peer_port[RW]
port[R]
transmission[R]
Public Class Methods
new(args)
click to toggle source
# File lib/transmission-connect/configuration.rb, line 56 def initialize(args) @host = args.delete(:host) || '127.0.0.1' @port = args.delete(:port) || 9091 @username = args[:username] @password = args[:password] @interval = args.delete(:interval) || 5 @up = args.delete(:up) || false @down = args.delete(:down) || false @transmission = Transmission::Client.new(@host, @port, @username, @password) @transmission.session do |session| self.peer_port = session.peer_port self.download_dir = session.download_dir end end
Public Instance Methods
down?()
click to toggle source
# File lib/transmission-connect/configuration.rb, line 92 def down? @down end
options()
click to toggle source
# File lib/transmission-connect/configuration.rb, line 96 def options @options ||= { :port => peer_port, :up => up?, :down => down?, :download_dir => download_dir, :host => @host } end
report()
click to toggle source
# File lib/transmission-connect/configuration.rb, line 71 def report @transmission.torrents(FIELDS) do |torrents| result = {:client => options} torrents.each do |torrent| result[torrent.hashString.to_sym] = torrent.attributes end EM::HttpRequest.new("#{HOST}/transmission/").post :body => {:torrents => result.to_json} end end
session_stats()
click to toggle source
# File lib/transmission-connect/configuration.rb, line 81 def session_stats @transmission.session_stat do |ss| result = ss.attributes.merge(:client => options) EM::HttpRequest.new("#{HOST}/transmission/stat").post :body => {:session_stat => result.to_json} end end
up?()
click to toggle source
# File lib/transmission-connect/configuration.rb, line 88 def up? @up end