rx-amqplib
v0.1.6
Published
RxJS wrapper for the amqplib from squaremo
Downloads
8
Maintainers
Readme
RxJS wrapper for amqplib
rx-amqplib is a wrapper for using the squaremo amqplib NodeJS package with RxJS.
Gettings started
To include this library in your project, all you need to do is install it using NPM.
$ npm install rx-amqplib --save
Examples
Here is a basic example of creating a connection to a RabbitMQ server, creating a channel + queue and sneding a message to the queue.
const config = {
queue: 'test_queue',
host: 'amqp://localhost'
};
// Process stream
RxAmqpLib.newConnection(config.host)
.flatMap(connection => connection
.createChannel()
.flatMap(channel => channel.assertQueue(config.queue, { durable: false }))
.doOnNext(reply => reply.channel.sendToQueue(config.queue, new Buffer('Test message')))
.flatMap(reply => reply.channel.close())
.flatMap(() => connection.close())
)
.subscribe(() => console.log('Message sent'));
More Examples
Hello World
The simplest thing that does something.
Work Queues
Distributing tasks among workers
Publish/Subscribe
Sending messages to many consumers at once
Routing
Receiving messages selectively
Topics
Receiving messages based on a pattern
RPC
Remote procedure call implementation
Build it Yourself
Should you wish to build the library yourself, either for personal use, or for contribution, please ensure there are no errors emitted during the build process with npm run build
.
$ git clone [email protected]:SkippyZA/rx-amqplib.git
$ cd rx-amqplib
$ npm install
$ npm run build