🛡️ Moderation
The Citrus bot includes powerful automated moderation tools to keep your chat clean and safe.
Overview
Configure automated moderation rules for:
- Excessive caps
- Links/URLs
- Symbols and special characters
- Message spam
- Banned words and phrases
Moderation Features
Caps Filter
Automatically moderate messages with excessive capital letters.
| Setting | Description | Default |
|---|---|---|
| Enabled | Turn filter on/off | Off |
| Base Timeout | Initial timeout duration (seconds) | 600 |
| Repeat Multiplier | Multiplier for repeat offenders | 1 |
| Expiry | Time before offense count resets (minutes) | 10 |
| Trigger Length | Minimum message length to check | 8 |
| Limit | Max % of caps allowed | 90 |
| Message | Warning message to user | (empty) |
Links Filter
Control URL sharing in your chat.
| Setting | Description | Default |
|---|---|---|
| Enabled | Turn filter on/off | Off |
| Base Timeout | Initial timeout duration | 600 |
| Whitelist | Allowed domains | [] |
| Blacklist | Forbidden domains | [] |
| Exempt Level | Users exempt from filter | None |
| User Blacklist | Specific users blocked | [] |
| Message | Warning message | (empty) |
Symbols Filter
Moderate excessive use of symbols and special characters.
| Setting | Description | Default |
|---|---|---|
| Enabled | Turn filter on/off | Off |
| Base Timeout | Initial timeout duration | 600 |
| Trigger Length | Minimum message length | 8 |
| Limit | Max % of symbols | 50 |
| Message | Warning message | (empty) |
Spam Filter
Prevent rapid message spam from users.
| Setting | Description | Default |
|---|---|---|
| Enabled | Turn filter on/off | Off |
| Base Timeout | Initial timeout duration | 600 |
| Max Messages | Messages before triggering | 3 |
| Within Seconds | Time window to count | 5 |
| Message | Warning message | (empty) |
Word Blacklist
Filter specific words and phrases.
| Setting | Description | Default |
|---|---|---|
| Enabled | Turn filter on/off | Off |
| Base Timeout | Initial timeout duration | 600 |
| Words | Blocked words/phrases | [] |
| Message | Warning message | (empty) |
Setup Instructions
Step 1: Navigate to Moderation
- Go to Chat Bot → Moderation in your dashboard
- You'll see all moderation filters listed
Step 2: Enable Filters
For each filter you want to use:
- Toggle Enabled to ON
- Configure the settings
- Save changes
Step 3: Configure Sensitivity
Adjust settings based on your community:
- Stricter: Lower limits, longer timeouts
- Lenient: Higher limits, shorter timeouts
Step 4: Test Your Configuration
- Have a trusted friend or alt account test
- Verify filters catch what they should
- Adjust as needed
Repeat Offender System
Moderation uses a progressive system:
How It Works
- First offense: Base timeout
- Second offense: Base timeout × Repeat Multiplier
- Third offense: Base timeout × (Repeat Multiplier)²
- And so on...
Expiry
Offense count resets after the Expiry period (in minutes).
Example
With Base Timeout: 60 seconds, Multiplier: 2, Expiry: 10 minutes:
- 1st offense: 60 second timeout
- 2nd offense (within 10 min): 120 second timeout
- 3rd offense (within 10 min): 240 second timeout
- After 10 minutes of good behavior: Resets to 1st offense
Configuring Each Filter
Caps Filter Settings
Recommended for most streams:
- Trigger Length: 8 (ignore short messages)
- Limit: 70-80% (allow some enthusiasm)
- Base Timeout: 60-300 seconds
Links Filter Settings
For strict link control:
Whitelist: ["youtube.com", "twitch.tv", "twitter.com"]
Blacklist: ["suspicious-site.com"]
Exempt Level: Subscriber (subs can post links)For permissive streams:
Whitelist: [] (empty - no restrictions by domain)
Exempt Level: EveryoneSymbols Filter Settings
For clean chat:
- Trigger Length: 8
- Limit: 30-50%
- Catches emote spam and ASCII art
Spam Filter Settings
Typical configuration:
- Max Messages: 3-5
- Within Seconds: 5-10
- Catches rapid-fire messages
Word Blacklist
Adding words:
- Go to the Blacklist section
- Add words or phrases
- Each word/phrase on its own line
- Phrases work too (e.g., "bad phrase")
Tips:
- Include common variations
- Consider partial word matching
- Test thoroughly
Exemption Levels
Choose who is exempt from moderation:
| Level | Who's Exempt |
|---|---|
| None | Nobody is exempt |
| Subscriber | Subscribers skip filter |
| VIP | VIPs and above skip |
| Moderator | Mods and above skip |
| Everyone | Filter disabled |
Custom Warning Messages
Set a message that displays when someone triggers a filter:
Examples:
"Please avoid excessive caps, {user}!""Links are not allowed in chat.""Watch the spam, {user}!"
Leave empty for no message (just timeout).
Built-in Profanity Filter
Separate from moderation, the Basic Filter option:
- Filters common profanity from TTS and widgets
- Toggle in widget settings
- Blocks messages without timeout
Troubleshooting
Filter Not Working
| Issue | Solution |
|---|---|
| Messages not caught | Check filter is enabled |
| Wrong messages caught | Adjust limits/thresholds |
| Bot not timing out | Ensure bot has mod permissions |
Too Aggressive
If filter catches legitimate messages:
- Increase limits (caps, symbols)
- Lower trigger length
- Exempt subscribers
Not Aggressive Enough
If spam gets through:
- Lower limits
- Reduce max messages for spam
- Add more words to blacklist
Best Practices
- Start Conservative: Begin with lenient settings, tighten if needed
- Test Thoroughly: Have friends test before going live
- Communicate Rules: Let viewers know chat rules
- Review Regularly: Adjust based on what you see
- Use Exempt Levels: Reward good community members
FAQ
Q: Do filters work on all platforms? A: Yes, filters work on Twitch and Kick.
Q: Can I see what was filtered? A: Filtered messages appear in the dashboard activity log.
Q: What's the difference between filter and bot ban? A: Filters timeout; bans are manual and permanent until unbanned.
Q: Do mods trigger filters? A: By default no, moderators are typically exempt.
Q: Can I filter specific users? A: Use the User Blacklist in the Links filter, or manually moderate.
