This document is an overview of all the parameters used in the 005 numeric (RPL_ISUPPORT) of the IRC protocol, with a short description of what all the parameters mean.
For a more formal defenition of this numeric see Edward Brocklesby's ISUPPORT draft.
This page now just lists some examples of what is being used, which include things not in the draft. The reason they're not in draft is because they are either experimental or considered to be of no real use.
A simple example output:
:irc.example.org 005 nick PREFIX=(ov)@+ CHANTYPES=#& :are supported by this server
Here is the list with all parameters with a short description:
Parameter | Value | Servers | Explanation | Example |
---|---|---|---|---|
PREFIX | (modes)prefixes | all | A list of channel modes a person can get and the
respective prefix a channel or nickname will get in
case the person has it. The order of the modes goes
from most powerful to least powerful.
Those prefixes are shown in the output of the WHOIS,
WHO and NAMES command.
Note: Some servers only show the most powerful, others may show all of them. | PREFIX=(ov)@+ (IRCNet, Bahamut, ircu)
PREFIX=(ohv)@%+ (Hybrid) |
CHANTYPES | chars | all | The supported channel prefixes. | CHANTYPES=+#& (ircu)
CHANTYPES=#&!+ (IRCNet) CHANTYPES=&# (Bahamut) CHANTYPES=#& (Hybrid) |
CHANMODES | A,B,C,D | all | This is a list of channel modes according to 4 types.
A = Mode that adds or removes a nick or address to a list. Always has a parameter. B = Mode that changes a setting and always has a parameter. C = Mode that changes a setting and only has a parameter when set. D = Mode that changes a setting and never has a parameter. Note: Modes of type A return the list when there is no parameter present. Note: Some clients assumes that any mode not listed is of type D. Note: Modes in PREFIX are not listed but could be considered type B. | CHANMODES=b,k,l,imnpst (ircu)
CHANMODES=beI,k,l,imnpstaqr (IRCNet) CHANMODES=beI,k,l,imnpsta (Hybrid) |
MODES | number | all | Maximum number of channel modes with parameter allowed per MODE command. | MODES=3 (IRCNet)
MODES=4 (Hybrid) MODES=6 (ircu MODES=13 (Bahamut) |
MAXCHANNELS | number | all | Maximum number of channels allowed to join.
Note: This might exclude &channels. | MAXCHANNELS=10 |
NICKLEN | number | all | Maximum nickname length. | NICKLEN=9 (IRCNet, ircu, Hybrid)
NICKLEN=30 (Bahamut) |
TOPICLEN | number | all | Maximum topic length. | TOPICLEN=80 (IRCNet)
TOPICLEN=120 (Hybrid) TOPICLEN=160 (ircu) TOPICLEN=307 (Bahamut) |
KICKLEN | number | all | Maximum kick comment length. | KICKLEN=80 (IRCNet)
KICKLEN=120 (Hybrid) KICKLEN=160 (ircu) KICKLEN=307 (Bahamut) |
CHANNELLEN | number | all | Maximum channel name length. | CHANNELLEN=50 (IRCNet) |
MAXBANS | mode:num[,mode:num,...] | all | Maximum number of bans per channel.
Note: This token changed to be more flexible. | MAXBANS=beI:30 (IRCNet)
MAXBANS=25 (Hybrid) MAXBANS=30 (ircu) MAXBANS=100 (Bahamut) |
NETWORK | name | all | The IRC network name. | NETWORK=EFnet (Hybrid)
NETWORK=IRCNet (IRCNet) NETWORK=Undernet (ircu) NETWORK=DALnet (Bahamut) |
EXCEPTS | [mode] | Hybrid, IRCNet | The server support ban exceptions (e mode). See RFC 2811 for more information. | EXCEPTS=e |
INVEX | [mode] | Hybrid, IRCNet | The server support invite exceptions (+I mode). See RFC 2811 for more information. | INVEX=I |
SILENCE | number | ircu, Bahamut | The server support the SILENCE command. The number is the maximum number of allowed entries in the list. | SILENCE=15 (ircu)
SILENCE=10 (Bahamut) |
STATUSMSG | string | none? | The server supports messaging channel member who have a certain status or higher. The status is one of the letters from PREFIX. | STATUSMSG=+%@ |
WALLCHOPS | Hybrid, ircu | The server supports messaging channel operators (NOTICE
@#channel)
Note: This has been replaced by STATUSMSG. ircu also supports a WALLCHOPS command? Note: ircu doesn't support voiced persons because it conflicts with +channels. Note: Hybrid supports everything in PREFIX Note: Hybrid 6 and ircu don't support it with PRIVMSG, Hybrid 7 does. | WALLCHOPS | |
CASEMAPPING | string | all | Case mapping used for nick- and channel name comparing.
Current possible values:
ascii: The chars [a-z] are lowercase of [A-Z]. rfc1459: ascii with additional {}|~ the lowercase of []\^. strict-rfc1459: ascii with additional {}| the lowercase of []\. Note: RFC1459 forgot to mention the ~ and ^ although in all known implementations those are considered equivalent too. | CASEMAPPING=rfc1459 (ircu, Hybrid, IRCNet)
CASEMAPPING=ascii (Bahamut) |
CHARSET | string | IRCNet | The charset were all the server generated messages are in.
This includes text in numerics and notices.
Note: It doesn't say anything about wether the UTF-8 is allowed in a nick or not. Note: We strongly recommend to use of UTF-8 in IRC. Note: ircu used to use this to say what case mapping they were using. They used "rfc1459" as the string. In case it has that, you may assume it means case mapping and not charset. | CHARSET=UTF-8 |
STD | string | none? | The standard which the implementation is using. | STD=i-d |
RFC2812 | IRCNet | Server supports RFC 2812 features. | RFC2812 | |
CHIDLEN | number | IRCNet | Channel ID length for !channels (5 by default). See RFC 2811 for more information. | CHIDLEN=5 |
PENALTY | IRCNet | Server gives extra penalty to some commands instead of the normal 2 seconds per message and 1 second for every 120 bytes in a message. | PENALTY | |
FNC | IRCNet | Forced nick changes: The server may change the nickname without the client sending a NICK message. | FNC | |
NOQUIT | Bahamut | Isn't this server to server feature, nothing to do with clients? | NOQUIT | |
USERIP | ircu | The USERIP command exists. | USERIP | |
CPRIVMSG | ircu | The CPRIVMSG command exists, used for mass messaging people in specified channel (CPRIVMSG channel nick,nick2,... :text) | CPRIVMSG | |
CNOTICE | ircu | The CNOTICE command exists, just like CPRIVMSG | CNOTICE | |
MAXTARGETS | number | Hybrid | Maximum targets allowed for PRIVMSG and NOTICE commands | MAXTARGETS=4 (Hybrid) |
KNOCK | Hybrid | The KNOCK command exists. | KNOCK | |
VCHANS | Hybrid | Server supports virtual channels. See vchans.txt for more information. | VCHANS | |
SAFELIST | Bahamut | The LIST is sent in multiple iterations so send queue won't fill and kill the client connection. | SAFELIST | |
WATCH | number | Bahamut | Maximum number of WATCHes allowed. | WATCH=128 (Bahamut) |
WHOX | ircu | The WHO command uses WHOX protocol. | WHOX | |
CALLERID | Hybrid | The server supports server side ignores via the +g user mode. See modeg.txt for more information. | CALLERID | |
ACCEPT | [Deprecated] The same as CALLERID. | ACCEPT | ||
LANGUAGE | number,string,string,... | KineIRCd | [Experimental] The server supports the LANGUAGE command.
See the
language document for more information.
Note: The server will always encode things with UTF-8. We probably need a special token for that. | LANGUAGE=2,en,i-klingon |
Some of those parameters define a length. This is a length in octets and not in (multi-byte) characters.
I would like to be able to place some links to commands like SILENCE, USERIP, CPRIVMSG, CNOTICE, KNOCK, and others. Whatever may be useful to client authors. They don't seem to put any documentation online.
Some older version of this document said CHARMAPPING instead of CASEMAPPING. This was an error and has been corrected.
For comments or corrections, please mail Q@irc.org
You should find the latest version of this document here.
Document last changed on June 22, 2003.