Chris Williams > POE-Component-IRC-Service > POE::Filter::CTCP::P10

Download:
POE-Component-IRC-Service-0.996.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Source  

NAME ^

POE::Filter::CTCP::P10 -- A POE-based parser for the IRC protocol, fixed to work with P10 protocol.

SYNOPSIS ^

  my $filter = POE::Filter::CTCP::P10->new();
  my @events = @{$filter->get( [ @lines ] )};
  my @msgs = @{$filter->put( [ @messages ] )};

DESCRIPTION ^

POE::Filter::CTCP::P10 converts normal text into thoroughly CTCP-quoted messages, and transmogrifies CTCP-quoted messages into their normal, sane components. Rather what you'd expect a filter to do.

A note: the CTCP protocol sucks bollocks. If I ever meet the fellow who came up with it, I'll shave their head and tattoo obscenities on it. Just read the "specification" at http://cs-pub.bu.edu/pub/irc/support/ctcp.spec and you'll hopefully see what I mean. Quote this, quote that, quote this again, all in different and weird ways... and who the hell needs to send mixed CTCP and text messages? WTF? It looks like it's practically complexity for complexity's sake -- and don't even get me started on the design of the DCC protocol! Anyhow, enough ranting. Onto the rest of the docs...

METHODS ^

new

Creates a new POE::Filter::CTCP::P10 object. Duh. :-) Takes no arguments.

get

Takes an array reference containing one or more lines of CTCP-quoted text. Returns an array reference of processed, pasteurized events.

put

Takes an array reference of CTCP messages to be properly quoted. This doesn't support CTCPs embedded in normal messages, which is a brain-dead hack in the protocol, so do it yourself if you really need it. Returns an array reference of the quoted lines for sending.

debug

Enables or disables debugging information.

AUTHOR ^

Dennis "fimmtiu" Taylor, <dennis@funkplanet.com>.

Hacked for P10 by Chris "BinGOs" Williams <chris@bingosnet.co.uk>

SEE ALSO ^

The documentation for POE and POE::Component::IRC and POE::Component::IRC::Service.

P10 Specification - http://www.xs4all.nl/~carlo17/irc/P10.html http://www.xs4all.nl/~beware3/irc/bewarep10.html

syntax highlighting: