The "shun" Module (v4)
Description
This module adds the /SHUN
command which allows server operators to prevent users from executing commands.
Configuration
To load this module use the following <module>
tag:
<module name="shun">
<shun>
The <shun>
tag defines settings about how the shun module should behave. This tag can only be defined once.
Name | Type | Default Value | Description |
---|---|---|---|
allowconnect | Boolean | No | Whether to only apply shuns to users who have fully connected to the server. |
allowtags | Boolean | No | Whether shunned users can send message tags on allowed commands. |
cleanedcommands | Text | AWAY PART QUIT | The commands to remove any messages from if allowed. |
enabledcommands | Text | ADMIN OPER PING PONG QUIT | A space-delimited list of commands that a shunned user is allowed to run. |
notifyuser | Boolean | Yes | Whether to notify shunned users that they are blocked from executing commands. |
Example Usage
<shun allowconnect="yes"
allowtags="no"
cleanedcommands="AWAY PART QUIT"
enabledcommands="ADMIN PING PONG QUIT"
notifyuser="yes">
<class>
This module extends the core <class:privs>
field with the following values:
Name | Description |
---|---|
servers/ignore-shuns | Allows server operators to ignore shuns. |
Example Usage
Allows server operators with the class named BasicOper to ignore shuns.
<class name="BasicOper"
...
privs="... servers/ignore-shun ...">
Commands
Name | Parameter Count | Syntax | Description |
---|---|---|---|
SHUN | 1-3 | <pattern>[,<pattern>]+ [[<duration>] <reason>] | Allows server operators to add and remove shuns on nickname!username@hostname glob patterns. |
Example Usage
Shuns users connecting from example.com for one week:
/SHUN *!*@example.com 7d :Trolling is forbidden
Shuns users connecting from example.com forever:
/SHUN *!*@example.com :Trolling is forbidden
Removes a shun on users connecting from example.com:
/SHUN *!*@example.com
Statistics
Character | Description |
---|---|
H | Lists all shuns. |
Special Notes
Shuns are expired lazily when a lookup happens for performance reasons. This means that expiry messages may display later than expected.