irc-ctcp: A CTCP encoding and decoding library for IRC clients.
CTCP (Client To Client Protocol) is a way of sending arbitrary data
over an IRC network, which may include bytes not allowed in standard
IRC messages. CTCPs are sent as a PRIVMSG or NOTICE, where the first
and last characters as \001
(SOH), and special bytes are escaped
by encoding them into a two-byte sequence beginning with \020
(DLE). CTCPs consist of command name (typically in upper-case)
followed by list of space-separated arguments, which may be empty.
One use of CTCPs supported by the vast majority of IRC clients today
is the ACTION command, typically invoked with /me. For example, if
the user foo
in the channel #bar
were to issue
/me dances
everyone in the channel would receive the message
:foo PRIVMSG #bar :\001ACTION dances\001
Other common uses of CTCP include requesting the name and version of a user's IRC client, their local time, determining ping times, and initiating file transfers (DCC).
Characters are escaped as follows:
\000
(NUL)\020 \060
("0")\012
(NL)\020 \156
("n")\015
(CR)\020 \162
("r")\020
(DLE)\020 \020
All other appearences of the escape character are errors, and are dropped.
See http://www.irchelp.org/irchelp/rfc/ctcpspec.html for more details.
Downloads
- irc-ctcp-0.1.1.0.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 0.1.0.0, 0.1.1.0, 0.1.2.0, 0.1.2.1, 0.1.3.0, 0.1.3.1 |
---|---|
Change log | changes.md |
Dependencies | base (>=4.7 && <5), bytestring (>=0.10), text (>=1.1) [details] |
License | LicenseRef-OtherLicense |
Author | Michael Walker |
Maintainer | mike@barrucadu.co.uk |
Revised | Revision 1 made by barrucadu at 2014-09-04T16:56:24Z |
Category | Network |
Home page | https://github.com/barrucadu/irc-ctcp |
Uploaded | by barrucadu at 2014-08-31T17:45:39Z |
Distributions | LTSHaskell:0.1.3.1, NixOS:0.1.3.1, Stackage:0.1.3.1 |
Reverse Dependencies | 4 direct, 1 indirect [details] |
Downloads | 5497 total (33 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user Build status unknown [no reports yet] |