Manual user moderation
Moderation Dashboard allows admins to manually moderate chat app users through the Users view.
App Context
To manage user details, enable and configure App Context for your chat app keyset on the Admin Portal. Check Required Configuration for details.
This feature requires certain application configuration and design patterns in the moderated application. The user’s moderation status, such as flagged, blocked, muted, or banned, is stored in the user’s App Context metadata. The application needs to be configured to use metadata and the moderated chat app must be configured to handle user metadata change events and respond accordingly.
Access Manager
In addition to using App Context metadata to enable a GUI that notifies users if they have been banned, blocked or muted, you might also want to enforce this using Access Manager. For more details on how to modify Moderation Dashboard to interact with your Access Manager logic, check Required Configuration.
Users view
Using the Users view in the Moderation Dashboard GUI you can ban and flag users from the entire chat app.
Ban
Admin can ban users from the entire app so that the users are unable to view any users or channels.
When you ban someone, this metadata is added to the custom
property of that user:
custom: {
ban:true
}
Reference configuration
The application that is moderated must implement behavior to check for this object metadata and to update it's GUI accordingly to prevent the user from reading or writing to any of the channels in the app. For details, check how that is implemented in our sample moderated chat app.
You can later filter through the banned users (same as you do with the flagged ones) and unban them if you decide banning was unjustified.
Flag
Flag a user and provide a reason that will be visible for others when hovering over that user in a channel.
When you flag someone, this metadata is added to the custom
property of that user:
custom: {
flag:true,
flaggedBy:'user@domain.com',
flaggedAt:'2021-06-17T08:31:55.071Z',
reason:'Flagged because..'
}
Moderation Dashboard also allows chat app users to flag one another as a way of reporting feedback to admins and signaling them to take additional action like banning or muting a flagged user. Flagging a user does not change the way they can interact, but simply provides a visual reminder for admins to monitor their behavior more closely.
Moderated Chat app provides a GUI that allows end users to flag other users, so that admins can review the flags and potentially take other actions such as banning or blocking them. Admins can filter out such flagged users through the filter icon.
Hovering over the flag icon lets you view who flagged a given user, when that happened, and what was the reason for flagging them.
You can later unflag the user if you decide flagging was unjustified.
Channels view
Using the Channels view and Members list in the Moderation Dashboard GUI, you can mute or block users from particular channels.
Mute
Admins can mute (and later unmute) users from a particular channel so they can only view messages of other users.
When you mute someone, this metadata is added to the custom
property of that user:
custom: {
mutedChannels: "channel_1, channel_2"
}
Reference configuration
The application that is moderated must implement behavior to check for this object metadata and to update it's GUI accordingly to inform the user that they have been muted from this channel and to prevent them from sending any new messages. For details, check how that is implemented in our sample moderated chat app.
Block
Admins can block (and later unblock) users from a particular channel so they can neither write nor read messages on that channel.
When you block someone, this metadata is added to the custom
property of that user:
custom: {
blockedChannels: "channel_1, channel_2"
}
Reference configuration
The application that is moderated must implement behavior to check for this object metadata and to update it's GUI accordingly to inform the user that they have been blocked from this channel and to prevent them from seeing exiting messages or sending any new ones. For details, check how that is implemented in our sample moderated chat app.