UNPKG

881 BMarkdownView Raw
1# Amqptools
2
3## Install
4
5`npm install amqptools`
6
7## Usage
8### Initialize
9```
10import amqpTools = require('amqptools');
11amqpTools.setConnectionURI(RABBITMQ_URL);
12```
13
14### Task start
15```
16var taskManager = amqpTools.tasks;
17var newTask = taskManager.createTask('testTask', {title: "test", data: {value: 1}});
18newTask.start(() => {
19 should.exists(newTask.uuid);
20}
21```
22### Task process
23```
24var taskManager = amqpTools.tasks;
25taskManager.service = SERVICE_NAME;
26taskManager.processTask(TASK_TYPE, function (taskdata, taskDone) {
27 // Your task processor
28 // invoke taskDone() when task is done
29})
30
31```
32
33## Events
34```
35high level event emitter over amqp
36
37each event should has format:
38<exchange>:<topic>
39```
40
41## RPC
42```
43high level RPC over AMQP
44action in format:
45<exchange>:<topic>
46
47request:
48caller -> erpc:<exchange> (topic) -> processor
49response:
50processor -> replyTo -> caller
51```