__ __ _ _ _ _
\ \ / / | | | \ | | | |
\ \ /\ / /_ _| |_| \| | ___| |_
\ \/ \/ / _` | __| . ` |/ _ \ __|
\ /\ / (_| | |_| |\ | __/ |_
\/ \/ \__,_|\__|_| \_|\___|\__|
###################################
# RTFM File #
###################################
This documentation lists all commands and user/channel mode flags available on
WatNet IRC. If a command/flag isn't listed it isn't enabled on the network.
Some commands/flags have prerequisites on their usage, such as being set as a
ChanOP or being an IRC Oper.
When in doubt, check the InspIRCd Wiki
___________
|Definitions|
"""""""""""""
If you see a number in brackets [0] it means that something is explained
further in the notes section at the bottom of this documentation. Scroll to
the end to find this section.
Some terms used in IRC may not be 100% clear to new users. The following terms
will be used in the contexts defined below throughout this documentation and
other files such as rules:
Term Definition
voiced Channel voice, user that has +v set on them in a channel.
halfop Channel Half-Operator, user that has +h set in a channel.
op Channel Operator, user that has +o set on them in a channel.
admin Channel Admin, user that has +a set on them in a channel.
founder Channel Founder, user that has +q set on them in a channel.
oper IRC Operator, user with global privileges on the network.
SRA Services Root Admin, see definition of God. Implies oper.
gecos Text specified as the real name of the user.
PM Private Message.
akilled Banned from the network.
_____________
|Channel modes|
"""""""""""""""
Channel modes are flags that change the operation of a channel. This can
include requiring users to be invited in order to join or setting a channel to
moderated mode which requires users to be voiced to speak.
Global flags: (These require no parameters)
Flag Description
A Allows all users on a channel to use /invite
B Block messages with too many capital letters
C Block CTCPs by users in the channel
c Block messages with color codes
D Don't show a user's join to the channel until they speak[8]
J Anti-auto-rejoin, prevent a kicked user from rejoining for a few seconds
K Enable /knock on channel
N Prevent nick changes for users on the channel
O Oper only channel (only opers can join)
P Channel stays in /list even when empty (only opers can set)
Q Only services can /kick a user
S Strip color codes from messages
T Block channel notices
u Hides list of users on channel from non-ops[1]
z Only users connected over SSL can join the channel
Targeted flags:
These flags require additional parameters. [extmatch] means extended ban match
flags can be used. [extban] means both match and action flags can be used.
[user] means standard user!ident@host format, including wildcards.
Flag Parameters Description of base flag if not extended
b [extban][user] Prevent a user from entering a channel[4][5]
d [seconds] Mute user for X seconds after joining channel
e [extmatch][user] Allow specified user to bypass a channel ban
F [nicks]:[second] Nick change flood protection[11]
f {*}[lines]:[second] Channel flood protection[10]
h [nick] Sets the user as a halfop
H [lines]:[time] Displays last few lines of text on join[7]
j [joins]:[seconds] Join flood protection[9]
L [channel] Redirect users into [channel] instead
o [nick] Sets the user as a chanop
X [prefix]:[permission] Channel exemptions[13]
_____________
|Extended bans|
"""""""""""""""
Extended bans are special flags that can be set with a ban or exception. These
flags change a channel ban from a basic hammer to a very powerful configuration
tool. Note that these options can become *VERY* complex and misuse can
seriously compromise a channel. If you don't understand how something works
test it on a testing channel. Opers will only reset your channel for you so
many times before the insults start flowing...
There are two types of extended ban flags: match and action. A match flag
changes the way a ban matches. A match flag can be used with an action flag to
set very fine grained control over channel functions.
Examples from the InspIRCd Wiki:
+b foo*!*@* prevents anyone whose nick starts with "foo" from joining
+b m:Guest*!*@* allows people whose nick starts with "Guest" to join, but
doesn't allow them to speak (without voice)
+I R:daniel allows people signed in to the account "daniel" to join when
the channel is +i without an invite
+b c:r:*mirc* prevents people with "mirc" in their realname from using
colors
+b N:j:+#wolf prevents people with voice or higher in #wolf from changing
nicks
+b [action flag]:[match flag]:[options or username!ident@hostmask]
The following match flags are available on WatNet:
Flag and options Description
j:[state][#channel] Matches users with state[2] in #channel
r:[gecos] Matches based on realname
R:[account] Matches users identified to nickserv with given account
z:[fingerprint] Matches client SSL certificate[3]
The following action flags are available on WatNet:
Flag Description
A Deny use of /invite
B Deny use of all caps
c Block messages containing color and control codes
C Block CTCP
m Block messages unless voiced
N Deny nick changes
p Drop part messages
Q Forbid user from using /kick
S Strip color and control codes from messages
T Forbid user from sending a /notice to the channel
__________
|User Modes|
""""""""""""
User modes are flags that are set on users of the network. The can be simple
status flags or control access to features of the network.
Flag Description
B Specifies the user is a bot
c Users can PM you unless they are in a channel you are in
d Deaf to channel messages and notices (but not PM)
g Activates Caller-ID[6]
I opers only, hides channel list from non-opers
W see when someone does a /whois on you (NOT OPERS ONLY HERE!)[12]
snomasks:
Flag Description
g globops
j Notify when user joins a new empty channel
N See nick changes
v Notify on use of operoverride
_______________
|Server Commands|
""""""""""
The following is a list of enabled server commands. This is not an exhaustive
list as there are commands available that aren't listed here. This was mainly
done as a reference for TH while he was going down the module list in the IRCd
configs.
/accept
/check
/chghost
/chgident
/chgname
/globops
/knock
/nicklock
/nickunlock
/ojoin
/sanick
/saquit
/setidle
/setident
/setname
/swhois
/tline
/uninvite
/watch
/clones
_____
|Notes|
"""""""
[0] This is an example note.
[1] Auditorium mode is useful for things like question/answer sessions and
other things where a list of users isn't important. This mode is generally only
used in special cases. Note that opers can still see the entire user list even
if they aren't op in the channel.
[2] State refers to the user's access in the channel. This can be any of:
Flag Matches State
+ voice
% halfop
@ op
& admin
~ founder
[3] Fingerprint requires that the client is connected using SSL and has a client
side SSL certificate installed. The fingerprint must exactly match that of the
cert sent by the client in order to match this flag. See the documentation of
your IRC client for instructions on setting up this feature.
[4] If a user on a channel is banned but not kicked, that user can no longer
speak in the channel and can no longer change nicks until they leave the
channel. Note that most Eggdrop bots are configured to kick a banned user from
the channel if they have the power to do so.
[5] This network supports ban redirects. This allows adding a channel to the
end of the [user] block to redirect a matched user to a different channel. For
example setting the following command:
/mode #heaven +b sinner!*@*#hell
will cause a user with the nick sinner to join #hell instead of #heaven.
[6] Caller-ID requires a user to /accept to receive private messages from
another user before they are delivered. Note that opers are exempt from
Caller-ID restrictions and their messages are delivered immediately.
[7] Channel history is a server side "scrollback" buffer that holds the last few
lines of conversation. [lines] is the number of lines to remember (maximum of
50) and [time] is the number of minutes to keep the lines in the buffer. For
example, 10:30 will keep the last 10 lines of text for up to 30 minutes. If a
user joins more than 30 minutes after the last line nothing will be shown. If
the channel is nearly silent and only 4 lines have been sent to the channel in
the last 30 minutes only those 4 lines will be shown.
[8] Use this flag with care, as it can allow a user to watch what you say in a
channel without you knowing. See ethics section of rules for information.
[9] Join flood protection locks the channel for 60 seconds if there are more
than [joins] in [seconds]. Removing and re-adding the mode will both unlock a
locked channel and reset and join timer.
[10] Allows only [lines] of text from a client per [second]. If a * is added
before the parameter, a user in violation will be kick/banned instead of just
kicked.
[11] Sets a channel +N if a user on that channel changes nicks more than [nicks]
times in [seconds].
[12] Even though a normal user can set this mode, if they are /whois'd by an
oper they won't see a notification.
[13] http://wiki.inspircd.org/Modules/2.0/exemptchanops