Add chat moderation tools to mitigate serial ban evaders
Sometimes the chat experience is impaired by trolls continually and relentlessly creating/using additional alternative accounts to repeatedly circumvent any ban, return to chat, and continue spamming or harassing the channel.
I suggest that Twitch provide an additional set of moderation commands, capabilities, and information in the chat-related APIs and IRC interfaces to assist broadcasters and their channel bots to control abuse in these types of situations.
Some ideas for suggested channel Moderator Commands/Options to Add:
- "Approved" chatters list - A List/Hash table of unlimited size for any users manually approved by a moderator to chat plus a list of all the users who have in the past already sent a chat message to the channel before and not been Banned or Purged since their last message.
Two-Levels of Approval that can be applied to any Chatter: (1) Automatic/Normal, (2) Validated by Channel Extension or AddOn, and (3) Moderator-Sanctioned Approval
** An "Approved-Users Only Chat Mode", for emergencies, separate from Followers-Only chat that can be set to either Level 1, 2, or 3.
** An additional option for FollowerOnly,SubOnly, EmoteOnly chat to make "Approved" chatters exempt that can be set to either "Level 1", "Level 2", or "Level 3" Approved chatters.Option to Require Two-Factor Enabled on non-Mod Twitch accounts to send chat messages (Essentially, the chatter will have verified one step beyond e-mail address).
** Suboption to exempt users from 2fa requirement "just to chat" who meet another criteria such as "Subscribed, Approved Level 1, Approved Level 2, Approved Level 3, Chatted here before, Prime/Turbo user, or Account older than X days"
/GBAN - "Ghost Ban" / "Stealth Ban" - The same exact usage as the traditional /BAN command; However, when chat messages by affected user are purged the CLEARCHAT IRC message will be restricted to users not affected by a ban -- No chat connections from the user affected by the ban will receive any feedback or user-interface change showing that offending messages have been removed, nor that they are now affected by a ban. Everyone else in the channel will see the CLEARCHAT / <message deleted> entries for the Ghostbanned user. If the GBAN'ed user tries to send additional messages to the channel, the server should simulate that they have gone through successfully.
/WBAN <user> [<{IP|SUBNET|SITE}>] [<{EMAIL|EMAILDOMAIN}>] [<LEVEL>] - "Watchlist Ban" - A type of automatic ban based on details watchlisting - but a channel should be limited to a small number of entries, and the target user must already be Timed-Out, Normal-Banned or Stealth-Banned. A copy of the target account's IP Address, Subnet/24 or IPv6/64, Site /16 or IPv6/32, Email Address, Email Domain, Hash of payment account Id, Etc are recorded in a Hash Table of "Watch" items for the channel - The first time a new user who has never messaged the channel sends a message, their account items are checked for matches in the Watchlist hash tables, and if there is a match on a selected watch item: the new account is automatically added to the Banlist or Gbanlist - ONE TIME Only, and channel moderators should be alerted through the modlog.
An approval level is Attached to the WBAN, and Chatters at the level or Higher than the level specified are exempt from Watchlist checks.
Some ideas for suggested capabilities to Add:
IRC Tags for chat messages that allow a channel bot to see immediately when a chat message is the "First Ever" in that account's history: chat message a new user sent to the channel, including the account's creation date.
3rd party external app/extension based approval of new chat users. Allow a channel to optionally require new users who join a channel for the first time to chat: grant permission for access to email and IP address data and interact with channel "Access Control" overlay extension that will provide an approval before a new chatter can post ther very first chat message (That may involve answering questions, acknowledging additional rules or policies, or verifying info, may be immediate approval, or delayed approval).
