Allow only members of a group send personal message to another group

We have a group of users, say it groupA, and we would like only members of groupA to send a private message to another group, say it groupB.

In other words, groupB members should receive a private message only from members of groupA.

In our case, we have customers who have be awarded a membership to groupA from the admin, to allow them (exclusively) ask question via PM to a group of experts (groupB). We do not want groupB to receive PMs from anybody except groupA members. Think of it as a special feature only for these VIP members of groupA.

Is there a way to accomplish this?

Thanks for your wonderful software and project!

1 Like

This is going to require a custom plugin, I do not think there is a way to place this restriction without one.


Alternatively, is there another technique to allow a “set” of users send PM to another group or “set” of users?

My initial question was about groups, but I was wondering about some way to utilise trust_levels, or custom fields of users (that is my notion of “set”).

My problem is that I need to allow one some users to PM some of the users (experts). I was thinking to have a post guiding the users to visit an external web site, do some integration with 3rd systems and using the Discourse RESTful API to “update” the user in order to have now the right to PM the expert user set.

Also - since my Ruby skills are zero :slight_smile: (so no hope to develop a classic plugin), another option for me to integrate would be custom JavaScript on the web site theme…

Sorry for bumping an old topic, but this topic was helpfully suggested to me when I started composing a new topic with the same question. I’m surprised there hasn’t been more demand for this as a feature. It seems that it could be accomplished by expanding on the options that are shown in a group’s “Who can message this group?” dropdown:

I’m wondering if reluctance to implement this is just due to potential UI issues with having to show a huge list of options in the dropdown. If that’s the case, maybe a multi-select input, similar to what’s used for tagging topics could be used for the setting instead of the current single-select input. That way, every possible option of who can message the group wouldn’t need to be listed.

It’s more likely that reluctance is due to lack of demand for the feature. My hypothetical use case would be to grant permission to message a “customer support” group to members of a “customers” group as a perk for making a purchase on an online store. This could even be useful on Meta if there was ever a desire to force all customer support to be handled directly through the forum.


I have GitHub - pfaffman/discourse-allow-pm-to-staff: Allow private messages to be sent to staff for users who could otherwise not send private messages. that does some of what you ask. It has no UI.

1 Like