RubyTorrent Issue - PullRequest
       9

RubyTorrent Issue

1 голос
/ 25 июня 2009

Я пытаюсь создать сценарий, который поможет мне перемещать большие файлы по внутренней сети Windows, и надеялся, что Ruby в сочетании с BitTorrent будет идеальным. Тем не менее, мой код, похоже, на самом деле ничего не загружает.

Я знаю, что проект RubyTorrent давно заброшен, поэтому я надеялся, что один из моих товарищей по Stackoverflow сможет мне помочь.

Мой код (пока что):

require 'rubytorrent'
bt = RubyTorrent::BitTorrent.new('http://www.mininova.org/get/2511754')
puts bt.tracker
puts bt.port
thread = Thread.new do
  while true
    puts bt.percent_completed
    sleep 15
  end
end
bt.on_event(self, :complete) { thread.kill }
thread.join

Как видите, строка 'bt.tracker' выглядит как nil, поэтому может возникнуть проблема с передачей файла .torrent, но тогда почему он пропускает остальную часть файла, хорошо?

Любая помощь, заставляющая это работать, будет принята с благодарностью.

Ответы [ 2 ]

2 голосов
/ 02 июля 2009

Ваш код в порядке, единственная проблема в том, что вы пытаетесь напечатать bt.tracker, когда вы еще не подключены к трекеру. Если вы попытаетесь распечатать его после подключения, это не проблема

begin
  bt = RubyTorrent::BitTorrent.new('yourtorrent')
rescue IOError
  puts "Can't open the torrent"
end

bt.on_event(self, :tracker_connected) { |s, url| puts "[tracker] connected to tracker #{url}" }

puts 'Tracker : '+bt.tracker.to_s
puts bt.port
thread = Thread.new do
  while true
    puts 'Tracker : '+bt.tracker.to_s
    puts bt.percent_completed
    sleep 10
  end
end
bt.on_event(self, :complete) { thread.kill }
thread.join
0 голосов
/ 25 июня 2009

Я думаю, он ожидает имя файла. Может ли это быть так просто, как необходимость require 'open-uri'?

...