node package manager
Easy collaboration. Discover, share, and reuse code in your team. Create a free org »



npm status build status dependency status coverage status

irc-stream is a minimalistic, streaming bot wrapper for the irc module.

irc-stream will relay any combination of the following:

  • channel messages addressed to the client (default on)
  • pms (default off)

These messages are available as a readable stream, and can thus be piped into a writable stream. Messages can be written like for a writable stream, and messages sent will be sent in the channel/pm.


Ideally, use it with gu as both a readable and writable stream:

var ircStream = require('irc-stream')(ircServer, ircName, ircModuleOpts, ircStreamOpts);
var gu = require('gu')(scriptPath, scriptFiles);

Where the first three irc-stream arguments are simply passed through to the irc module.

Alternatively you could use it as just a readable stream or a writable stream. See flight-stream for an example as using it as a writable stream only.


The fourth argument control how we listen on IRC. By default the following options are all disabled or zero:

  allErrors: Boolean, // manually handle `irc` error events 
  ignoreChannel: Boolean, // ignore channel directed messages 
  answerPms: Boolean, // respond to private messages 
  neverHighlight: Boolean // never highlight channel responses 
  alwaysHighlight: Boolean // always highlight channel responses 
  participationChance: Number // probability to respond without being addressed 

NB: Can only do one of neverHighlight and alwaysHighlight. By default, irc-stream will highlight the channel recipient on the first message only.


$ npm install irc-stream


MIT-Licensed. See LICENSE file for details.