node-stomp

1.1.0 • Public • Published

node-stomp

STOMP Client for Node.js

Build status

This library was originally developed by Benjamin W. Smith.

const stomp = require('node-stomp');
 
// Set debug to true for more verbose output.
// login and passcode are optional (required by rabbitMQ)
let stomp_args = {
    port: 61613,
    host: 'localhost',
    debug: false,
    login: 'guest',
    passcode: 'guest',
};
 
// 'activemq.prefetchSize' is optional.
// Specified number will 'fetch' that many messages
// and dump it to the client.
let headers = {
    destination: '/queue/test',
    ack: 'client-individual',
    // 'activemq.prefetchSize': '10'
};
 
// Multi-Destinations
{
    destination: [
        '/queue/test_1',
        '/queue/test_2',
    ],
    ack: 'client-individual',
}
 
// Wildcards
{
    destination: '/queue/test.>'
    ack: 'client-individual',
}
 
let messages = 0;
let client = new stomp.Stomp(stomp_args);
 
// start connection with active-mq
client.connect();
 
client.on('connected', function () {
    console.log('[AMQ] Connected');
    client.subscribe(headers);
});
 
client.on('disconnected', function () {
    console.log('[AMQ] Disconnected');
});
 
client.on('message', function (message) {
    messages++;
    console.log("received message : " + message.body[0]);
    client.ack(message.headers['message-id']);
});
 
client.on('error', function (error_frame) {
    console.log('[AMQ] message : ' + error_frame);
    client.disconnect();
});

TODO

  • Support Multi-Destinations
  • Support Wildcards
  • Support Composite Destinations
  • Support version 1.1
  • Support version 1.2
  • Support Reconnecting
  • Support Fail-Over

Authors

Dependencies (0)

    Dev Dependencies (1)

    Package Sidebar

    Install

    npm i node-stomp

    Weekly Downloads

    43

    Version

    1.1.0

    License

    ISC

    Unpacked Size

    28.1 kB

    Total Files

    11

    Last publish

    Collaborators

    • mseld