RabbitMQ Publisher Subscriber
npm install rabbitmq-pubsub> RabbitMQ Publisher Subscriber
A promise based API on top of ampqlib.
[![Build Status][travis-image]][travis-url]
   [![NPM version][npm-image]][npm-url]
[![Dependency Status][daviddm-image]][daviddm-url]
``sh`
$ npm install --save rabbitmq-pubsub
js
var Publisher = require('rabbitmq-pubsub').Publisher;var publisherOptions = {
exchange: 'user',
type: 'topic',
url: 'amqp://localhost'
};
var publisher = new Publisher(publisherOptions);
publisher.start()
.then(function() {
publisher.publish('myRoutingKey', 'Ciao');
})
`$3
`jsvar Subscriber = require('rabbitmq-pubsub').Subscriber;
var subscriberOptions = {
exchange: 'user',
queueName: 'user',
routingKeys:['user.regiser', 'user.resetpassword']
};
var subscriber = new Subscriber(subscriberOptions);
function onIncomingMessage(message) {
debug('onIncomingMessage ', message.fields);
assert(message);
assert(message.content);
assert(message.content.length > 0);
subscriber.ack(message);
//subscriber.nack(message);
};
subscriber.start(onIncomingMessage)
``Make sure the rabbitmq server is running locally before running the test
$ npm test
MIT © Frederic Heem
[npm-image]: https://badge.fury.io/js/rabbitmq-pubsub.svg
[npm-url]: https://npmjs.org/package/rabbitmq-pubsub
[travis-image]: https://travis-ci.org/FredericHeem/rabbitmq-pubsub.svg?branch=master
[travis-url]: https://travis-ci.org/FredericHeem/rabbitmq-pubsub
[daviddm-image]: https://david-dm.org/FredericHeem/rabbitmq-pubsub.svg?theme=shields.io
[daviddm-url]: https://david-dm.org/FredericHeem/rabbitmq-pubsub