Slide 71
Slide 71 text
1 const amqp = require('amqplib/callback_api');
2 const uuid = require('uuid');
3
4 const id = process.argv.slice(2);
5
6 amqp.connect('amqp://localhost', (err, conn) => {
7 conn.createChannel((err, ch) => {
8 ch.assertQueue('', { exclusive: true }, (err, q) => {
9
10 const corr = uuid();
11 console.log(` [x] Requesting user ${id}`);
12
13 ch.consume(q.queue, (msg) => {
14 if (msg.properties.correlationId === corr) {
15 console.log(` [.] Got ${msg.content.toString()}`);
16 setTimeout(function() { conn.close(); process.exit(0) }, 500);
17 }
18 }, {noAck: true});
19
20 ch.sendToQueue('rpc_queue',
21 new Buffer(id.toString()),
22 { correlationId: corr, replyTo: q.queue });
23 });
24 });
25 });