,antispam
message rate and duplicate flood detection
User permissions
- Server Owner
Cooldown
- none
Other surface
- /antispam
Anchor
- #antispam
Forms
rate <on|off> [++punish <punishment> ++threshold <number> ++window <seconds> ++duration <5m>]duplicate <on|off> [++punish <punishment> ++threshold <number> ++window <seconds>]escalation <on|off> [++punish <punishment> ++days <number>]settings [++purge <on|off> ++commands <on|off> ++duration <5m>]ignore <add|remove|list> [#channel]listresetSyntax
,antispam <rate|duplicate|escalation|settings|ignore|list|reset>
/antispam <subcommand>
<required> · [optional]
Example
,antispam rate on ++threshold 6 ++window 5 ++punish timeout
Subcommands
7 prefix subcommandsRead from the prefix .sub/ tree, the canonical shape. Every entry has a permanent anchor of its own.
,antispam duplicatepunishes users who repeat the same message
,antispam duplicate <on/off> [++punish <punishment> ++threshold <number> ++window <seconds>],antispam duplicate on ++threshold 4 ++window 30 ++punish timeout#antispam-duplicate
,antispam escalationaka escalatepunishes repeat spammers more harshly
,antispam escalation <on/off> [++punish <punishment> ++days <number>],antispam escalation on ++punish ban ++days 7#antispam-escalation
,antispam ignoreaka exemptexempts a channel or category from anti-spam
,antispam ignore <add/remove/list> [#channel],antispam ignore add #spam#antispam-ignore
,antispam listaka show, status,antispam ratepunishes users who send messages too fast
,antispam rate <on/off> [++punish <punishment> ++threshold <number> ++window <seconds>],antispam rate on ++threshold 6 ++window 5 ++punish timeout#antispam-rate
,antispam resetaka clear,antispam settingsaka set, configburst purge, command exclusion and timeout length
,antispam settings [++purge <on/off> ++commands <on/off> ++duration <5m>],antispam settings ++purge on ++commands on#antispam-settings
Slash leaves
7 leavesRead from the registered slash builder: groups are flattened, so a grouped leaf reads “group leaf” and anchors with a hyphen between the two words.
/antispam ratePunish a user who sends too many messages too fast
/antispam ratestate*punishthresholdwindowduration| Parameter | Type | Default | Detail |
|---|---|---|---|
staterequired | String | — | Turn rate detection on or offOn · Off |
punish | String | timeout | What to do when it tripsWarn · Timeout · Mute · Jail · Kick · Softban · Ban |
threshold | Integer | 6 | Messages needed to trip it(3–50) |
window | Integer | 5 | Seconds they must arrive within(2–120) |
duration | String | 5m | Timeout length, e.g. 5m |
/antispam duplicatePunish a user who repeats the same message
/antispam duplicatestate*punishthresholdwindow| Parameter | Type | Default | Detail |
|---|---|---|---|
staterequired | String | — | Turn duplicate detection on or offOn · Off |
punish | String | timeout | What to do when it tripsWarn · Timeout · Mute · Jail · Kick · Softban · Ban |
threshold | Integer | 4 | Identical messages needed to trip it(3–50) |
window | Integer | 30 | Seconds they must arrive within(2–120) |
/antispam escalationPunish repeat offenders more harshly
/antispam escalationstate*punishdays| Parameter | Type | Default | Detail |
|---|---|---|---|
staterequired | String | — | Turn escalation on or offOn · Off |
punish | String | ban | What a repeat offender getsWarn · Timeout · Mute · Jail · Kick · Softban · Ban |
days | Integer | 7 | How far back a prior offence counts(1–90) |
/antispam settingsPurge, command exclusion and timeout length
/antispam settingspurgecommandsduration| Parameter | Type | Default | Detail |
|---|---|---|---|
purge | Boolean | true | Delete the whole burst, not just one message |
commands | Boolean | true | Ignore messages that are bot commands |
duration | String | — | Timeout length, e.g. 5m |
/antispam ignoreExempt a channel or category from anti-spam
/antispam ignoreaction*channel| Parameter | Type | Default | Detail |
|---|---|---|---|
actionrequired | String | — | Add, remove, or list exempt channelsAdd · Remove · List |
channel | Channel | — | The channel or category to exempt (not needed for list) |
/antispam listShow the current anti-spam configuration
#antispam-list/antispam resetClear all anti-spam configuration for this server
#antispam-reset