easy to use module for nsq


Wraps nsq.js into an easy to use interface

npm install nsqubicle

Read messages using pull and write messages using push

var nsq = require('nsqubicle');
var queue = nsq({
nsqd: [''],
channel: 'my-channel'
queue.pull('test', function(messagecallback) {
console.log('we have pulled a message!', message);
callback(); // we are done with the message 
queue.push('test', {hello:'world'});

The options map is passed directly to nsq.js as well. In addition to the regular nsq options you can pass

namespace: 'namespace-topics-with-me',
broadcast: true // set to false to disable broadcasting 

If you call the callback with an error the message will be requeued.

Per default nsqubicle broadcast all messages to a broadcast topic as well. You can read these messages by calling pull without a topic

queue.pull(function(topicmessagecallback) {
console.log('someone pushed to', topic, 'with message', message);