Create a consumer for an exchange of the fanout type.
Multiple fanout consumers can listen to a single fanout producer.
Init example:
const iamqp = require('iamqp');
const amqpUri = 'amqp://localhost';
const fanoutChannel = 'fanout-channel-a';
let fanoutConsumer = new iamqp.FanoutConsumer(amqpUri, fanoutChannel);
// This needs to be done or the errors will bubble up.
fanoutConsumer.getEventer().on('error', (err) => {
console.log('fanout consumer error:' + err.message);
});
// For when the connection is established.
fanoutConsumer.getEventer().on('connected', () => {
console.log('fanout consumer connected');
});
// Get messages as fanout by the producer.
fanoutConsumer.getEventer().on('message', (message) => {
console.log('fanout consumer message:' + message);
});
// Open the connection - this takes some time and is not sync
fanoutConsumer.openConnection();
// ...
// Close the connection
if (fanoutConsumer.closeConnection()) {
console.log('fanout consumer connection closing ...');
}
...