Nighttime Peanut Migrations

    utorrent-api

    0.1.5 • Public • Published

    node-utorrent-api

    NPM

    Node.js wrapper arround the uTorrent Web API.

    Basic Usage

    Here is the basic usage of this module. You can find an advanded list of methods supported by uTorrent Web UI API on their website.

    First you need to instanciate a new client object, and then set the credentials used to connect to the uTorrent Web UI.

    Then you can do your calls to the API.

    Methods

    Here are the available methods :

    utorrent.setCredentials(username, password)

    Set the credentials used to access the uTorrent Web UI.

    utorrent.fetchToken(callback)

    Fetch the token which will be used in each subsequent API calls. This method is directly called before an API call if needed, you don't need to call it by yourself.

    Return an error to the callback, if an error occured when accessing the uTorrent API.

    utorrent.call(action, [params], callback)

    Call the specified API action. If the action do not require params (like 'list'), this argument can be ignored.

    If you want to use the 'add-file' method, just specify a 'torrent_file' param with a buffer containing the torrent file to upload to the API.

    Return an error to the callback (if one appeared) and an object containing the result sent back by the API.

    Examples

    Request the torrents list

    var Client = require('utorrent-api');
     
    var utorrent = new Client('localhost', '22222');
    utorrent.setCredentials('admin', '123456');
     
    utorrent.call('list', function(err, torrents_list) {
        if(err) { console.log(err); return; }
     
        console.log(torrents_list);
    });

    Add torrent file

    var request = require('request');
    var Client = require('utorrent-api');
    var fs = require('fs');
     
    var utorrent = new Client('localhost', '22222');
    utorrent.setCredentials('admin', '123456');
     
    request({'uri' : 'http://releases.ubuntu.com/13.04/ubuntu-13.04-desktop-i386.iso.torrent', 'encoding': null}, function (error, response, torrentFileBuffer) {
        utorrent.call('add-file', {'torrent_file': torrentFileBuffer}, function(err, data) {
            if(err) { console.log('error : '); console.log(err); return; }
     
            console.log('Successfully added torrent file !');
            console.log(data);
        });
    });

    Get torrent details

    var Client = require('utorrent-api');
    var fs = require('fs');
     
    var utorrent = new Client('localhost', '22222');
    utorrent.setCredentials('admin', '123456');
     
    utorrent.call('getprops', {'hash': 'daac7008e2e3a6e4321950c131690aca20c5a08a'}, function(err, data) {
        if(err) { console.log('error : '); console.log(err); return; }
     
        console.log(data);
    });

    Bitdeli Badge

    Install

    npm i utorrent-api

    DownloadsWeekly Downloads

    2

    Version

    0.1.5

    License

    MIT

    Last publish

    Collaborators

    • leeroy