Simple, robust, BitTorrent swarm implementation
This is a node.js abstraction of a BitTorrent "swarm", which is handy for managing all peer connections for a given torrent download. This handles connecting to peers, listening for incoming connections, and doing the initial peer wire protocol handshake with peers. It also tracks total data uploaded/downloaded to/from the swarm.
This module is used by WebTorrent.
npm install bittorrent-swarm
var Swarm = require'bittorrent-swarm'var swarm = myInfoHash myPeerIdswarmon'wire'// a relevant wire has appeared, see `bittorrent-protocol` for more infowireon'unchoke'// we are now unchokedswarmwires // <- list of all connected wires;swarmaddPeer'127.0.0.1:42442' // add a peerswarmremovePeer'127.0.0.1:42244' // remove a peer
This was originally forked from peer-wire-swarm which is also MIT licensed.