libp2p-exchange-rendezvous

0.0.2 • Public • Published

libp2p-exchange-rendezvous

Data Exchange component that uses other peers to exchange requests/responses

Use-Case

The use case for this exchange component is to allow exchanges between two peers that are not directly connected but share one or more rendezvous peers.

Example

'use strict'
 
const Exchange = require('libp2p-exchange-direct')
 
const exchangeA = new Exchange(swarmA)
const exchangeB = new Exchange(swarmB)
const exchangeM = new Exchange(swarmM, {enableServer: true})
 
exchangeA.start(() => {})
exchangeB.start(() => {})
exchangeM.start(() => {})
 
exchangeB.listen('example', (data, cb) => {
  return cb(null, data.reverse())
})
 
swarmA.dial(swarmM.peerInfo, err => {
  if (err) throw err
 
  swarmB.dial(swarmM.peerInfo, err => {
    if (err) throw err
 
    exchangeA.request(swarmB.peerInfo.id, 'example', Buffer.from('Hello World!'), console.log)
  })
})

Package Sidebar

Install

npm i libp2p-exchange-rendezvous

Weekly Downloads

0

Version

0.0.2

License

MIT

Unpacked Size

18 kB

Total Files

11

Last publish

Collaborators

  • mkg20001