
Security News
AGENTS.md Gains Traction as an Open Format for AI Coding Agents
AGENTS.md is a fast-growing open format giving AI coding agents a shared, predictable way to understand project setup, style, and workflows.
merapi-plugin-service-rabbit
Advanced tools
This plugin use RabbitMQ for messaging. When subscribing to an event, it will first check if the publisher is RabbitMQ compatible. If so, it will subscribe to that event's queue, otherwise it will create hook that will be called by the publisher.
Add plugin to dependency list in package.json
{
"name": "application",
"version": "1.0.0",
"dependencies": {
"merapi-plugin-service-rabbit": "^0.2.0"
}
}
name: application
version: 0.4.0
plugins:
- service
- service-rabbit
service:
rabbit:
host: localhost
port: 5672
prefetch: 5
maxAttempts: 5
retryDelay: 5
namespace: default
prefetch
- default to 5
The maximum number of messages sent to the consumer that can be awaiting acknowledgement; once there are prefetch
messages outstanding, the server will not send more messages to this consumer until one or more have been acknowledged.
maxAttempts
- default to 5
The maximum number of attempts to get target's info.
retryDelay
- default to 5000
The delay time between attempts in milliseconds.
namespace
- default to default
Kubernetes namespace where the application resides.
service:
publish:
converse_event: triggerConverseEvent
service:
subscribe:
kanal-platform:
incoming_message: conversationManager.handleIncomingMessage
registry:
kanal-platform: http://localhost:5000
service:
queue:
publish:
kanal-platform:
outgoing_message: publishOutgoingMessage
registry:
kanal-platform: http://localhost:5000
service:
queue:
subscribe:
dummy_event: dummyManager.handleDummyEvent
GET /info
Result:
{
name: '<name>',
version: '<version>',
status: 'ok',
modules: {
api: {
version: '0.2.0',
status: 'ok'
},
pub: {
version: '0.2.0',
status: 'ok'
},
sub: {
version: '0.1.0',
status: 'ok'
},
'pub-rabbit': {
version: '0.1.0',
status: 'ok'
}
},
api: {},
events: [
'incoming_message',
'outgoing_message'
],
hooks: [
'yb-core.incoming_message'
],
queues: [
'publisher.subscriber.incoming_message'
],
exchanges: [
'publisher.incoming_message',
'publisher.outgoing_message'
]
}
class MainCom extends component {
constructor(triggerOutgoingMessage) {
super();
this.triggerOutgoingMessage = triggerOutgoingMessage;
}
*sendMessage(message) {
this.triggerOutgoingMessage(message);
}
}
class MainCom extends component {
*handleIncomingMessage(message) {
process(message);
}
}
PUBLISH
<namespace>.<publisher>.<event>
SUBSCRIBE
<namespace>.<publisher>.<event>
)In case of you are using custom rabbitmq connection, you can provide an env file as follow:
# filename: ./test/test.env
export RABBIT_HOST=0.0.0.0
export RABBIT_PORT=5672
export RABBIT_USERNAME=root
export RABBIT_PASSWORD=toor
and perform:
source ./test/test.env && npm test
FAQs
Provide RabbitMQ integration interface
The npm package merapi-plugin-service-rabbit receives a total of 0 weekly downloads. As such, merapi-plugin-service-rabbit popularity was classified as not popular.
We found that merapi-plugin-service-rabbit demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 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
AGENTS.md is a fast-growing open format giving AI coding agents a shared, predictable way to understand project setup, style, and workflows.
Security News
/Research
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
Security News
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.