Here is an extensive list of our Moderation tools available for Stream Chat.
User to User Moderation
- Flag message - by default each user has the ability to flag a message with the Stream API and UI components. This adds the flagged message to the above moderators dashboard where they can view it. This action also triggers a webhook payload that your server can catch and perform any automated actions on.
- Mute user - each user can mute another user and you can decide if you want to render messages from a muted user in the UI
- Mute channel - similar to above, you can mute a channel so it doesn’t increment your unread count or deliver push notifications from.
- Ban user - an admin can block a user from either a channel or the entire application, either permanently, or for a flexible time limit
- Shadow Ban user - ban a user from a channel but they will not be aware of it. Their messages
- Block list - Allows you to upload a list of strings to for a given channel type and decide if you want a message containing these strings to be blocked or flagged. Both blocked and flagged messages trigger a webhook payload to your server if you wish.
- Image moderation - Stream uses a third party (AWS) solution to scan images in real time as they are sent from the client device and returns a score of if the content is objectionable or not. You can decide whether to flag or block these messages. This solution is an addon to plans and is manually configured by the Stream Customer Success team.
- Pre-send message hook - This is a hook that is enabled and acts as a hosted “mid point” between client devices and the Stream API. Typically we recommend an AWS lambda function for this. This effectively allows ultimate customization on how you want your moderation to work - you can host simple filters, regular expression filters, or even use a third party moderation software solution on the message content before returning either a 200 (send the message to Stream) or a 400 (do not send/block). If no response is given from your server, the message defaults to being sent.
- AI moderation (beta) - Messages sent from client-side devices are put through our Machine Learning AI moderation models and are scanned for three sensitive topics (spam, toxicity, profanities) before the messages are saved in the Stream API. You can control what level of each topics you would like a message to be flagged or blocked and can tune this in the Stream dashboard by testing the messages against the model. Currently, the AI moderation tool does not send WebHook events, but it will soon (it is still in beta with features being added frequently).
- Slow Mode - throttle the number of messages that a user can send per x seconds. Option to skip for moderators/admin
- URL enrichment/sharing - turn on or off these features
- Freeze/Hide Channels - Freeze a channel for users to they can read but not write. Option to skip for moderators/admins
- Custom Channel Settings - turn on or off any channel type setting at the channel level