Blocking PM to admin user

Hi, is there any way to block sending PM to staff group by normal users other than writing a custom plugin?

I have a very little time and my community doesn’t understand that PM should be last resort to ask questions so I’m forced to block it to have some time to do other things than responding to messages :slight_smile:

I tried to set PM on higher trust levels but it’s wrong to block PMs for a lot of users because private information like email or phone numbers ale landing on public threads and this is not good.

Sure,

  • in Admin, Groups, Automatic
  • select Staff group
  • set the “Who can message and mention this group” drop down to “nobody”.
1 Like

Strange, I have this setting applied also to admins, moderators and staff group but other users can still create new PM to me.
Can it be others settings overwriting this behavior?

Maybe title of my thread is a little misleading, I mean sending PM to user, not group.

Um yes your title was 100% wrong.

You can’t globally block people from sending you PMs, you can individually mute people who do this though.

Ok, my bad :frowning:

If there is not such feature I want to write simple plugin to overwrite disabled state for send PM button which is checking user id or group id first.
Is there any painless way to do that in JS/HTML? I’m not ruby person and simple solution which hides button but allows sending msg using API etc is ok for me. I want to just discourage people from writing to me, not necessary preventing them technically.

I’m searching how to start doing this, but I see there is a new API and I don’t know where to start. Can someone point me to right direction?

I saw:

https://meta.discourse.org/t/how-to-override-an-existing-handlebars-template-from-plugin/10201/5?u=systemz

But this means that I will need to copy-paste current template to my plugin? This can be a problem when updating to new Discourse version.

Are editing this lines could help me?

https://github.com/discourse/discourse/blob/df368ce25127f77717fd61c249b1cee6d90ea40c/app/assets/javascripts/discourse/controllers/composer.js.es6#L279

https://github.com/discourse/discourse/blob/431179dd257d2412fcdd8212d22dac2e491231b6/app/assets/javascripts/discourse/templates/composer.hbs#L104

My friend made a simple plugin to do this if anyone is interested:

https://github.com/kacpersaw/discourse-hide-pm

2 Likes