Closed arch-linux closed 9 years ago
You should call select()
on each file instead of createReadStream()
. When all the files are downloaded, the engine
will emit an 'uninterested'
event.
Here is a full snippet showing what @asapach is talking about:
var engine = torrentStream(someTorrent, {
path: 'the-folder-you-want-to-store-the-files-in'
})
engine.on('ready', function () {
engine.files.forEach(function (file) {
file.select()
})
engine.on('idle', function () {
console.log('all files downloaded!')
})
})
@mafintosh, which reminds me, there should be a dedicated event for when the download is complete. That would allow us to fix #109 and #48.
@asapach should we call it engine.on('downloaded', fn)
or do you have a better idea?
@mafintosh, 'downloaded'
or 'complete'
work for me.
I appreciate it you guys. I was able to get it to work!
see #113
Hello, This module seems to be the best fit, but i can't seem to get it to function properly at all. For the record, I am trying to use this as a torrent downloader, so it will write the torrent to a file..
var torrentStream = require('torrent-stream');
var engine = torrentStream('magnent here');
engine.on('ready', function() { engine.files.forEach(function(file) { if(file.name == "filename here.") { var stream = file.createReadStream(); } }); });
How can i make this code download all of the files in the torrent, and save them to the disk?
Thank you!