Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
larvitamintercom
Advanced tools
[![Build Status](https://travis-ci.org/larvit/larvitamintercom.svg?branch=master)](https://travis-ci.org/larvit/larvitamintercom) [![Dependencies](https://david-dm.org/larvit/larvitamintercom.svg)](https://david-dm.org/larvit/larvitamintercom.svg)
Communication wrapper for rabbitmq in autobahn.
send() to autobahn.
const Intercom = require('larvitamintercom'),
conStr = 'amqp://user:password@192.168.0.1/',
intercom = new Intercom(conStr);
let message = {'hello': 'world'},
options = {'exchange': 'foo'}; // Will default to "default" if options is omitted
intercom.send(message, options, function(err, msgUuid) {
// called when message is accepted by queue handler
// msgUuid will be a unique UUID for this specific message
});
{
'exchange': 'default',
'durable': true,
'forceConsumeQueue': false // Will create a queue for consumtion even if there is no current listeners. This way no message will ever be lost, since they will wait in this queue until some consumer consumes them.
}
There are two types of read operations; "consume" and "subscribe".
A message can only be "consumed" once, but it can be "subscribed" several times, by different readers.
Consumers can be assigned to an exchanged after the message have been sent, and they still receive the message. However, very importantly, ONE consumer must be assigned before the send happends, or the consumer queue never gets declared!
Subscribers, in contrast, must subscribe BEFORE the message is sent or they will not receive it.
Each subscriber only get each message once.
const Intercom = require('larvitamintercom'),
conStr = 'amqp://user:password@192.168.0.1/',
intercom = new Intercom(conStr);
let options = {'exchange': 'foo'}; // Will default to "default" if options is omitted
intercom.consume(options, function(message, ack, deliveryTag) {
// message being the object sent with intercom.send()
// deliveryTag is an identification of this delivery
// Must be ran! Always! ACK!!
ack();
// or
ack(new Error('Something was wrong with the message'));
}, function(err) {
// Callback from established consume connection
});
{
'exchange': 'default'
}
const Intercom = require('larvitamintercom').Intercom,
conStr = 'amqp://user:password@192.168.0.1/',
intercom = new Intercom(conStr);
let options = {'exchange': 'default'};
intercom.subscribe(options, function(message, ack, deliveryTag) {
// message subscribe the object sent with intercom.send()
// deliveryTag is an identification of this delivery
// Must be ran! Always! ACK!!
ack();
// or
ack(new Error('Something was wrong with the message'));
}, function(err) {
// Callback from established subscribe connection
});
{
'exchange': 'default'
}
FAQs
[![Build Status](https://github.com/larvit/larvitamintercom/actions/workflows/ci.yml/badge.svg)](https://github.com/larvit/larvitamintercom/actions)
The npm package larvitamintercom receives a total of 224 weekly downloads. As such, larvitamintercom popularity was classified as not popular.
We found that larvitamintercom demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.