parse-irc

0.2.4 • Public • Published

parse-irc

A simple transform stream IRC parser.

Build Status NPM

NPM

Usage

var net = require('net')
  , parser = require('parse-irc')()
 
parser.on('data', function(msg) {
  console.dir(msg)
})
 
net.connect(6667, 'irc.freenode.net').pipe(parser)

API

var createParser = require('parse-irc')

methods

var parser = createParser()

Return a Transform stream that will parse messages as they are written to it, and emit decoded message objects. Streams writing to this stream should be emitting buffers or strings, and streams reading from it should be in objectMode.

events

Like any Transform stream:

parser.on('data', function(msg) {})

Emitted each time a message has been fully parsed. A complete message structure looks like:

// Example message:
// :server.example.com NOTICE * :*** Looking up your hostname...
{
  prefix: 'server.example.com',
  command: 'NOTICE',
  params: [ '*', '*** Looking up your hostname...' ]
}

Only command is guaranteed to be present. If the message had no prefix or had no parameters, these fields will be undefined in the resulting message object.

parser.on('error', function(err) {})

Emitted when a parse error occurs. err contains information about what the invalid state was.

See also: Readable stream

Installation

npm install parse-irc

Running tests

npm test

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i parse-irc

Weekly Downloads

3

Version

0.2.4

License

MIT

Last publish

Collaborators

  • tec27