TBC Message Roles β free role-based messaging control for Fluent Community
Just dropping this here in case anyone else needs it π
Coming from BuddyBoss, role-based messaging was one of the features we really missed. We had a real problem with bots signing up and immediately DMing our members β catfishing, spam, the whole mess. So I built TBC Message Roles to fix it for our community, and figured I'd release it free for anyone running Fluent Community.
What it does is let you decide who can actually start conversations. You can gate 1:1 DMs and space chat by WordPress role, Fluent role, or space-level role. So instead of everyone-can-message-everyone the second they sign up, you choose which roles unlock it.
Our setup looks like this: we have an "About Us" course built on Fluent Community Courses. When a new member finishes it, they auto-get the Member role β and that's what unlocks DMs on the site. Bots never make it that far. Honestly the use cases are kind of endless once you start thinking about it.
For the devs curious how it's done β it's all native, zero core edits:
- It hooks Fluent Messaging's own permission filters (
fluent_messaging/can_initiate_messageΒ andΒcan_send_community_message). We're not patching or forking anything β Fluent already exposes the decision point, we just answer it based on roles. - Role checks run across three tiers: WordPress roles, Fluent Community global roles (Admin/Moderator), and space-level roles (Space Admin/Mod) pulled straight from Fluent's own models. Admins and FC moderators always bypass.
- The friendly "you can't message yet" wording is the neat part β instead of hardcoding UI, it filters Fluent's own translation strings (
gettext_fluent-messaging) and only swaps themΒ for users our rules actually block. Everyone else sees Fluent's normal text. Because the string is served from the backend, the same custom message shows up in theΒ web chat AND our mobile app with no app update neededΒ β the app just renders whatever the server hands it. - Fail-open by default β configure nothing and everyone can still message, so it's safe to install and lock down gradually.
It's lightweight, free, no config overload. Grab it here π https://www.twobirdscode.com/shop/ β scroll down to the Freebies section and look for TBC β Message Roles. While you're on the site you'll also see the community app we built on top of all this π±