1.0.0 • Published 6 years ago

amqplib-rabbitmq-pub-sub v1.0.0

Weekly downloads
3
License
ISC
Repository
github
Last release
6 years ago

amqplib-rabbitmq-pub-sub

RabbitMQ Publisher & Subscriber

Publisher

const { Publisher, Subscriber } = require('amqplib-rabbitmq-pub-sub')

const publisherOptions = {
    exchange: 'command',
    type: 'topic',
    url: 'amqp://localhost'
};
const publisher = new Publisher(publisherOptions);
const startMessaging = async () => {
    try {
        await publisher.start()
        console.log(['rabbitmq', 'connected']);
        for (let index = 0; index < 2; index++) {
            publisher.publish('key', JSON.stringify({ index, timestamp: new Date() }));
        }
    } catch (error) {
        console.error(error)
    }
}
startMessaging()

Subscriber

const subscriberOptions = {
    exchange: 'command',
    queueName: 'command',
    routingKeys: ['key']
};
const subscriber = new Subscriber(subscriberOptions);
const onIncomingMessage = (message) => {
    console.log('onIncomingMessage', message.content.toString());
    subscriber.ack(message);
};
subscriber.start(onIncomingMessage)