UNPKG

zmq-json-rpc-server

Version:

JSON-RPC 2.0 server implementation using a ZMQ socket as transport mechanism

22 lines (13 loc) 537 B
var zmq = require('zeromq'); var jsonRpcServerStream = require('json-rpc-server-stream'); var routerSocketStream = require('./lib/router-socket-stream'); module.exports = function(endpoint, opts) { opts = opts || {}; var socket = zmq.socket('router'); var serverStream = jsonRpcServerStream(opts); var serverSocketStream = routerSocketStream().attach(socket); socket.bindSync(endpoint); serverStream.pipe(serverSocketStream).pipe(serverStream); serverStream.rpc.socket = socket; return serverStream.rpc; };