Skip to content

Instantly share code, notes, and snippets.

@homerquan
Created October 14, 2016 01:51
Show Gist options
  • Save homerquan/64908959774c7c07b8ebfdd0187c0656 to your computer and use it in GitHub Desktop.
Save homerquan/64908959774c7c07b8ebfdd0187c0656 to your computer and use it in GitHub Desktop.
// part A
var client = require('seneca')()
.use('seneca-amqp-transport')
.client({
type: 'amqp',
url: 'amqp://guest:guest@localhost:5672/seneca',
pin: 'role:test2'
})
.client({
type: 'amqp',
url: 'amqp://guest:guest@localhost:5672/seneca',
pin: 'role:test3'
})
.add('role:test1,cmd:test', function(message, done) {
return done(null, {data:'ok_from_side_one'});
})
.listen({
name: 'test1.queue',
type: 'amqp',
url: 'amqp://guest:guest@localhost:5672/seneca',
pin: 'role:test1,role:test3'
});
setInterval(function() {
client.act('role:test2,cmd:test', {
max: 100,
min: 50
}, console.log);
}, 500);
// part B
var client = require('seneca')()
.use('seneca-amqp-transport')
.client({
type: 'amqp',
url: 'amqp://guest:guest@localhost:5672/seneca',
pin: 'role:test1'
})
.add('role:test2,cmd:test', function(message, done) {
return done(null, {data:'ok_from_side_two'});
})
.listen({
name: 'test2.queue',
type: 'amqp',
url: 'amqp://guest:guest@localhost:5672/seneca',
pin: 'role:test2'
});
setInterval(function() {
client.act('role:test1,cmd:test', {
max: 100,
min: 50
}, console.log);
}, 500);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment