Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Ambassador provides a way to communicate between node.js processes
JavaScript
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.gitignore
LICENSE-MIT
README.md
index.js
package.json

README.md

Ambassador

Ambassador provides a way to communicate between node.js processes.

With ambassador:

  • You could send JavaScript object(or other types of variables) between processes
  • You could safely kill a process which also contains ambassador.

Installation

npm install ambassador --save

Usage

First of all, ambassador is an EventEmitter.

Example

Process A (pid: 14100)

// Listen to signal 'watch'
require('ambassador').on('watch', function(pid, data){
    console.log('Signal "watch" from process[', pid, '] with data', data);
});

// So that process A will hang on.
require('http').createServer(function(){}).listen(9876);

Process B (pid: 14102)

// Send data to process 14100 (A)
require('ambassador').send(14100, 'watch', {
    abc: 1
});

Then, process A will print:

Signal "watch" from process[ 14102 ] with data {abc: 1}

Methods

ambassador.send(pid, signal, data);

Send a signal signal to the process pid with data data

Returns ambassador
pid Number

The pid of the target process

signal String

Signal name

data mixed

The data to be sent

ambassador.on(signal, callback)

Returns ambassador
signal String
callback function(pid, data)

The callback function

pid Number

The pid number from which process the signal has been sent.

data mixed

The received data

ambassador.kill(pid)

If the target process contains ambassador, this method will safely kill that process.

Something went wrong with that request. Please try again.