This module aims to ease the communication with a broker using the AMQP protocol, it provides some low-level tools.
This module requires Node 14 and a connection to an AMQP broker
import Client from '@prismamedia/amqp-client';
// or : Client = require('@prismamedia/amqp-client');
const client = new Client('amqp://rabbitmq/');
const payload = { ... };
try {
await client.publish('', 'queue_name', payload);
} catch (err) {
// Handle error
}
try {
const consumerId = await client.consume(
'queue_name',
(message, payload, ack) => {
// Do what you want with the full AMQP message or with the Object payload
ack();
},
);
// [...]
await client.stopConsumer(consumerId, true);
} catch (err) {
// Handle error
}