Skip to content

robojones/revents

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

revents

Connect two EventEmitters via a socket.

Build Status Test Coverage License: MIT

bitHound Code bitHound Overall Score bitHound Dependencies

Installation

npm i revents

Example

In the server.js file:

const { RemoteEventEmitter: Connection } = require('revents')
const net = require('net')

const server = net.createServer(socket => {
  const connection = new Connection(socket)

  connection.remoteEmit('ping')

  connection.on('pong', () => {
    console.log('pong')
  })
})

server.listen(8080)

In the client.js file:

const { RemoteEventEmitter } = require('revents')
const net = require('net')

const socket = net.connect(8080)
const connection = new Connection(socket)

connection.remoteEmit('pong')

connection.on('ping', () => {
  console.log('ping')
}

API

The RemoteEventEmitter extends the Connection class from the socket-json-wrapper package. This means that you can use the send method and the "message" event.

emitter.remoteEmit(event, ...args)

  • event <string> - The name of the event.
  • ...args <any> - Arguments for the event.

Emit an event on the EventEmitter on the other side of the socket connection. It returns a <boolean> that is true if the event was written to the socket.