IRC Support
This page outlines the features that DarkScience supports for IRC, including
all of the channel and nick modes.
Capabilities
The following IRCv3 Capabilities are supported on
DarkScience:
- account-notify
- account-tag
- away-notify
- batch
- cap-notify
- chghost
- echo-message
- extended-join
- invite-notify
- labeled-response
- message-tags
- multi-prefix
- sasl
- server-time
- setname
- sts
- userhost-in-names
SASL
DarkScience supports the following SASL Mechanisms:
- PLAIN
- EXTERNAL (with client side TLS certificates)
Channel Modes
Mode |
|
C |
Enables blocking channel messages that contain CTCPs |
K |
Disables the usage of the /KNOCK command on this channel |
M |
Users must be registered to speak in the channel |
Q |
Prevents privileged users from using the /KICK command |
R |
Prevents users who are not logged into a services account from joining the channel |
S |
Strips control codes from PRIVMSGs/NOTICEs to the channel |
c |
Blocks messages with control codes to the channel |
i |
Sets the channel as Invite-Only |
m |
Makes a channel moderated. Only +ohv can talk |
n |
Forces a user to be in the channel to PRIVMSG it |
p |
Sets the channel as 'private'. Will not show up in /LIST |
r |
Marks the channel as being registered |
s |
Sets the channel as 'secret'. Will not show up in /LIST or in users /WHOIS |
t |
Forces a user to have +o or +h to change the topic |
Parameter Modes
Mode |
Parameter |
Description |
k |
<key> |
Sets a key on the channel |
J |
<seconds> |
Disallows a user from joining <seconds> seconds after being /KICK 'd |
L |
<channel> |
When the channel is 'full' (from channel mode l ), forward the user to <channel> |
f |
(*)<lines>:<seconds> |
Kicks users who send more than <lines> messages in the last <seconds> seconds. If prefixed with * then offending users are also banned |
j |
<joins>:<seconds> |
Prevents more than <joins> joins in the last <seconds> seconds |
l |
<number> |
Sets the channel limit to <number> . Once the limit is reached, no more users can join |
List Modes
List modes can apply an action to a collection of masks. A mask can be a glob
pattern matching a hostmask, for example nick!user@host
.
Mode |
Value |
|
I |
<mask> |
Allows users matching <mask> to bypass +i |
b |
<mask> |
Bans matching <mask> from joining the channel |
e |
<mask> |
Allows users matching <mask> to bypass +b |
w |
<status>:<mask> |
Grants the <status> rank to users matching <mask> on join |
Extended Syntax
The list modes above support an "extended syntax" (commonly known as EXTBAN)
where <mask>
can be an extended character and its own argument after a :
.
For example R:doe
to match for a registered account called doe
.
Character |
Value |
|
Q |
<mask> |
Bans privileged users matching <mask> from using the /KICK command |
R |
<pattern> |
Checks whether users are logged into a services account matching <pattern> |
U |
<pattern> |
Checks whether users matching <pattern> are not logged into a services account |
c |
<mask> |
Matches for sending messages that contain IRC formatting codes |
j |
<pattern> |
Checks whether users are in a channel matching <pattern> |
S |
<mask> |
Strips IRC formatting codes from messages sent by users matching <mask> |
Prefixes
Prefix |
Mode |
Title |
~ |
q |
owner |
& |
a |
protected |
@ |
o |
op |
% |
h |
half-op |
+ |
v |
voice |
Nick Modes
Mode |
Effect |
B |
User is a bot |
R |
Prevents users who are not logged into a services account from messaging the user |
S |
Enables stripping of IRC formatting codes from private messages |
i |
User cannot be seen in /WHO |
o |
User is an IRC Operator |
r |
Marks the user as being logged into a services account |
w |
User can receive WALLOPS |