node package manager

messager

Inter-process communication made simple.

messager

Inter-process communication made simple.

$ npm i --save messager
// Dependencies 
var Messager = require("messager");
 
// Constants 
const FILE = __dirname + "/test.sock";
 
// Create the server 
var server = Messager.Server(FILE);
 
// Listen for "foo" messages 
server.on("foo", function (a, r, g, u, m, e, n, t, s) {
    console.log(a, r, g, u, m, e, n, t, s);
    server.close(function (err) {
        console.log(err || "Done.");
    });
});
 
// Listen until the server is ready 
server.on("ready", function () {
    // This code can be in another file (which is ran by another process) 
    // Create the client and send a "foo" event and some data. 
    var client = Messager.Client(FILE);
    client.send("foo", "a", "r", "g", "u", "m", "e", "n", "t", "s");
});

Initializes the Messager server.

  • String path: The path where the local socket server is listening for connections.
  • EventEmitter An EventEmitter instance, extended with the following fields:
  • server (Server): The Net.Server instance.
  • socket (Socket): The server socket.
  • path (String): The normalized socket path.
  • close (Function): A helper function which closes the server and the socket.

You can listen to the following core events:

  • _raw_data: emitted when the socket receives data.
  • error: emitted when something wrong happens.

Closes the Messager server.

  • Function callback: The callback function.

Creates a Messager client instance.

  • String path: The path where the local socket server is listening for connections.
  • EventEmitter An EventEmitter instance, extended with the following fields:
  • socket (Socket): The server socket.
  • path (String): The normalized socket path.
  • send (Function): Emit events and data to the server.

You can listen to the following core events:

  • error: emitted when something wrong happens.

Emits a specified event (first argument) and data (the other arguments) to the server.

Usage: client.emit("myEvent", { some: "data" }, 42)

Have an idea? Found a bug? See how to contribute.

Another way to support the development of my open-source modules is to set up a recurring donation, via Patreon. 🚀

PayPal donations are appreciated too! Each dollar helps.

Thanks! ❤️

MIT © Ionică Bizău