39 lines
839 B
JavaScript
Raw Normal View History

2017-07-06 14:26:20 +01:00
'use strict'
const libp2p = require('../../')
2017-07-06 14:26:20 +01:00
const TCP = require('libp2p-tcp')
const PeerInfo = require('peer-info')
const waterfall = require('async/waterfall')
const defaultsDeep = require('@nodeutils/defaults-deep')
2017-07-06 14:26:20 +01:00
class MyBundle extends libp2p {
constructor (_options) {
const defaults = {
modules: {
transport: [
TCP
]
}
2017-07-06 14:26:20 +01:00
}
super(defaultsDeep(_options, defaults))
2017-07-06 14:26:20 +01:00
}
}
let node
waterfall([
(cb) => PeerInfo.create(cb),
(peerInfo, cb) => {
peerInfo.multiaddrs.add('/ip4/0.0.0.0/tcp/0')
node = new MyBundle({ peerInfo: peerInfo })
2017-07-06 14:26:20 +01:00
node.start(cb)
}
], (err) => {
if (err) { throw err }
console.log('node has started (true/false):', node.isStarted())
2017-07-06 14:26:20 +01:00
console.log('listening on:')
node.peerInfo.multiaddrs.forEach((ma) => console.log(ma.toString()))
})