pi

parse-irc

A simple transform stream IRC parser

Showing:

Popularity

Downloads/wk

8

GitHub Stars

2

Maintenance

Last Commit

7yrs ago

Contributors

0

Package

Dependencies

2

Size (min+gzip)

5.4KB

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

#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

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100