I have hard-delete (XenForo) set to NEVER on the Registered level so even on the admin account I can't delete it by accident.
This essentially achieves it so that I can use it for two purposes: View past infractions to see if it's a user problem thing and to collect spam posts to analyze and improve spam-blocking with them.
For instance, this was the last spam post I got:
Code:
[url=https://1win-brp.top/]https://1win-brp.top/[/url]все о текущем положении дел на популярном игровом портале 1win и о новых акциях и возможностях для игроков.
I asked ChatGPT:
Code:
Analyze this and create me regex rules to find spam keywords to filter and block future content with:
Followed up by this to make this post prettier than the ChatGPT output formatted for the chat dialogue:
Code:
Give me that output in XenForo BBCode.
Spam Pattern Analysis & Regex Filters
This post documents regex rules to filter spam like the following:
Code:
[url=https://1win-brp.top/]https://1win-brp.top/[/url]все о текущем положении дел на популярном игровом портале 1win и о новых акциях и возможностях для игроков.
Identified Spam Indicators
- Suspicious gambling-related domains (e.g. 1win, casino, bet, etc.)
- Use of uncommon or spam-heavy TLDs like `.top`, `.site`, `.xyz`, `.click`
- Russian-language promotional phrases
- Generic ad-like phrasing typical of betting spam
Regex Filters
1. BBCode URL linking to gambling/promotional site
Code:
\[url=https?:\/\/[^ ]*?(1win|casino|bet|slot)[^ ]*?\.(top|site|xyz|click|info)[^\]]*?\].*?\[\/url\]
2. Russian gambling/promotional phrases
Code:
(?i)(игровом\s+портале|новых\s+акциях|возможност[ья]х\s+для\s+игроков|текущем\s+положении\s+дел)
3. Raw URL with gambling domain
Code:
https?:\/\/[^ ]*?(1win|casino|bet|slot)[^ ]*?\.(top|site|xyz|click|info)
4. URL followed closely by Cyrillic characters
Code:
https?:\/\/[^\s\]]+\s*?[а-яА-ЯёЁ]{3,}
Suggested Action
- Block or flag posts matching any of the patterns
- Manually review posts with Russian text and external links if your forum is English-only
- Consider adding these to content filters or spam triggers
I have not put it in regex to test, but I would test it before implementing it, and then refine it as needed (as I can't understand the characters used).