dtorrent_task_v2 0.4.1 copy "dtorrent_task_v2: ^0.4.1" to clipboard
dtorrent_task_v2: ^0.4.1 copied to clipboard

BitTorrent download client package written by pure Dart language.

About #

Dart library for implementing BitTorrent client.

Whole Dart Torrent client contains several parts :

This package implements regular BitTorrent Protocol and manage above packages to work together for downloading.

BEP Support: #

  • [BEP 0003 The BitTorrent Protocol Specification]
  • [BEP 0005 DHT Protocal]
  • [BEP 0006 Fast Extension]
  • [BEP 0010 Extension Protocol]
  • [BEP 0011 Peer Exchange (PEX)]
  • [BEP 0014 Local Service Discovery]
  • [BEP 0015 UDP Tracker Protocal]
  • [BEP 0029 uTorrent transport protocol]
  • [BEP 0055 Holepunch extension]

Developing:

  • [BEP 0009 Extension for Peers to Send Metadata Files]

Other support will come soon.

How to use #

This package requires dependency dtorrent_parser:

dependencies:
  dtorrent_parser: ^1.0.8
  dtorrent_task: ^0.4.1

First , create a Torrent model via .torrent file:

  var model = await Torrent.parse('some.torrent');

Second, create a Torrent Task and start it:

  var task = TorrentTask.newTask(model, 'savepath');
  await task.start();

User can add event listeners to monitor TorrentTask running:

  EventsListener<TaskEvent> listener = task.createListener();
  listener
    ..on<TaskCompleted>((event) {
      print('Download completed!');
    })
    ..on<TaskFileCompleted>((event) {
      print('File completed: ${event.file.originalFileName}');
    })
    ..on<TaskStopped>((event) {
      print('Task stopped');
    });

And there are methods to control the TorrentTask:

   // Stop task:
   await task.stop();
   // Pause task:
   task.pause();
   // Resume task:
   task.resume();
2
likes
0
points
212
downloads

Publisher

unverified uploader

Weekly Downloads

BitTorrent download client package written by pure Dart language.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

args, b_encode_decode, bittorrent_dht, collection, crypto, dart_ipify, dtorrent_common, dtorrent_parser, dtorrent_tracker, events_emitter2, logging, mime, utp_protocol

More

Packages that depend on dtorrent_task_v2