npm.io
1.2.0 • Published 5 years ago

hyperswarm-proxy-ws

Licence
MIT
Version
1.2.0
Deps
2
Size
7 kB
Vulns
0
Weekly
0
Stars
15

hyperswarm-proxy-ws

Proxy hyperswarm connections over websockets with auto-reconnect logic

npm -s hyperswarm-proxy-ws

Example


const HyperswarmServer = require('hyperswarm-proxy-ws/server')

// Initialize the proxy server
// Also specify any options for hyperswarm here
// https://github.com/hyperswarm/hyperswarm
const server = new HyperswarmServer()

// Start listening on clients via websocket protocol
server.listen(3472)


const HyperswarmClient = require('hyperswarm-proxy-ws/client')

// Initialize a proxied hyperswarm
// Also specify any options for hyperswarm-proxy client
// https://github.com/RangerMauve/hyperswarm-proxy#client
const swarm = new HyperswarmClient({
  // Specify a list of proxy servers available to connect to
	proxy: ['ws://127.0.0.1:3472']
})

// Same as with hyperswarm
swarm.on('connection', (connection, info) => {
	const stream = getSomeStream(info.topic)

	// Pipe the data somewhere
	// E.G. hyperdrive.replicate()
	connection.pipe(stream).pipe(connection)
})

swarm.join(topic)

swarm.leave(topic)

Keywords