1.0.2 • Published 5 years ago

@murgor/mvs-p2p v1.0.2

Weekly downloads
3
License
ISC
Repository
-
Last release
5 years ago

Peer-to-Peer

npm

The mvs-p2p module provides peer-to-peer networking capabilities and includes Peer and Pool classes. A Message class is also exposed, in addition to several types of messages. Pool will maintain connection to several peers, Peers represents a node in the Metaverse network, and Message represents data sent to and from a Peer. In order to connect to the Metaverse network, you'll need to know the IP address of at least one node of the network, or use Pool to discover peers using a DNS seed.

Installation

Peer-to-peer is implemented as a separate module.

For node projects:

npm install mvs-p2p --save

For yarn package manager:

yarn add mvs-p2p

Quick Start

const Peer = require('mvs-p2p').Peer;

const peer = new Peer({host: 'obelisk.airbitz.co:5251'});

// handle events
peer.on('inv', function(message) {
  // message.inventory[]
});

peer.connect();

Testing

  1. Integration Test.

First you need to set the Following Environment variables: 1. NETWORK 2. PORT

To test the p2p interfacing with the mainnet:

cd integration

then run:

mocha mvsd

Documentation

Please check the docs and the examples folder.

Refferences

  1. https://github.com/bitpay/bitcore/tree/master/packages/bitcore-p2p
  2. https://cardanodocs.com/technical/protocols/p2p/
  3. https://bitcoin.org/en/p2p-network-guide#peer-discovery
  4. https://github.com/mvs-org/metaverse/blob/master/src/lib/node/p2p_node.cpp