mirror of
https://github.com/fluencelabs/js-libp2p
synced 2025-04-25 10:32:14 +00:00
Merge pull request #3 from diasdavid/example/using-swarm
using swarm example
This commit is contained in:
commit
815a85d51f
4
examples/level1-swarm/README.md
Normal file
4
examples/level1-swarm/README.md
Normal file
@ -0,0 +1,4 @@
|
||||
Using libp2p-swarm
|
||||
==================
|
||||
|
||||
|
37
examples/level1-swarm/node-1.js
Normal file
37
examples/level1-swarm/node-1.js
Normal file
@ -0,0 +1,37 @@
|
||||
var Swarm = require('libp2p-swarm')
|
||||
var tcp = require('libp2p-tcp')
|
||||
var multiaddr = require('multiaddr')
|
||||
var Id = require('peer-id')
|
||||
var Spdy = require('libp2p-spdy')
|
||||
var Libp2p = require('../../src')
|
||||
var Peer = require('peer-info')
|
||||
|
||||
// set up
|
||||
|
||||
var mh = multiaddr('/ip4/127.0.0.1/tcp/8010')
|
||||
var p = new Peer(Id.create(), [])
|
||||
var sw = new Swarm(p)
|
||||
|
||||
// create a libp2p node
|
||||
|
||||
var node = new Libp2p(sw)
|
||||
|
||||
node.swarm.addTransport('tcp', tcp, {multiaddr: mh}, {}, {port: 8010}, function () {
|
||||
// Ready to receive incoming connections
|
||||
|
||||
sw.addStreamMuxer('spdy', Spdy, {})
|
||||
|
||||
// dial to another node
|
||||
|
||||
var mh2 = multiaddr('/ip4/127.0.0.1/tcp/8020')
|
||||
var p2 = new Peer(Id.create(), [mh2])
|
||||
|
||||
node.swarm.dial(p2, {}, '/sparkles/1.0.0', function (err, conn) {
|
||||
if (err) {
|
||||
return console.error(err)
|
||||
}
|
||||
|
||||
console.log('-> connection is ready')
|
||||
process.stdin.pipe(conn).pipe(process.stdout)
|
||||
})
|
||||
})
|
29
examples/level1-swarm/node-2.js
Normal file
29
examples/level1-swarm/node-2.js
Normal file
@ -0,0 +1,29 @@
|
||||
var Swarm = require('libp2p-swarm')
|
||||
var tcp = require('libp2p-tcp')
|
||||
var multiaddr = require('multiaddr')
|
||||
var Id = require('peer-id')
|
||||
var Spdy = require('libp2p-spdy')
|
||||
var Libp2p = require('../../src')
|
||||
var Peer = require('peer-info')
|
||||
|
||||
// set up
|
||||
|
||||
var mh = multiaddr('/ip4/127.0.0.1/tcp/8020')
|
||||
var p = new Peer(Id.create(), [])
|
||||
var sw = new Swarm(p)
|
||||
|
||||
sw.addTransport('tcp', tcp, {multiaddr: mh}, {}, {port: 8020}, function () {
|
||||
// Ready to receive incoming connections
|
||||
|
||||
sw.addStreamMuxer('spdy', Spdy, {})
|
||||
|
||||
// create a libp2p node
|
||||
|
||||
var node = new Libp2p(sw)
|
||||
|
||||
// handle/mount a protocol
|
||||
|
||||
node.swarm.handleProtocol('/sparkles/1.0.0', function (conn) {
|
||||
process.stdin.pipe(conn).pipe(process.stdout)
|
||||
})
|
||||
})
|
@ -26,6 +26,12 @@
|
||||
"devDependencies": {
|
||||
"code": "^1.5.0",
|
||||
"lab": "^5.17.0",
|
||||
"libp2p-spdy": "^0.1.0",
|
||||
"libp2p-swarm": "^0.5.5",
|
||||
"libp2p-tcp": "^0.1.2",
|
||||
"multiaddr": "^1.1.1",
|
||||
"peer-id": "^0.4.0",
|
||||
"peer-info": "^0.4.0",
|
||||
"pre-commit": "^1.1.1",
|
||||
"standard": "^5.3.1"
|
||||
}
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
exports = module.exports = Libp2p
|
||||
|
||||
function Libp2p (swarm, peerRouting, recordStore) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user