Canned responses to help moderators encourage civilized discourse


(Michael Downey) #1

So one of the great things about Discourse is it’s designed to help encourage actual civilized discourse. That’s a great goal, but in addition to software, it depends on watchful and tactful mentors.

I think a lot of moderators don’t know how to (in words) tactfully discourage unhelpful behavior, and encourage helpful behavior. What would people think about having something like “canned responses” for moderators? These could either be sent to people via private message or by replying to a post.

In addition to the software to allow moderators to quickly choose from a pre-written message (both provided by default with the system and user-definable), it’d be necessary to collect some wise, tactful messages to ship.

Is this a crazy idea? Would anyone else find it useful for their system’s moderators?


List of project ideas for Google Summer of Code 2016
What is the most awesome plugin for Discourse, that does not yet exist?
What does "Take Action" do?
Quick Links Addition to Forums
Quick Links Addition to Forums
Option to insert frequently used text in the post editor
(Erlend Sogge Heggen) #2

Plugin territory I’d say, but it’d be really cool if we had a simple way of sharing our canned responses with each other.


(Sander Datema) #3

I like the idea and I think a lot of forums would use it. But it’s still plugin territory because there are so many ways to handle this.


(Jeff Atwood) #4

It has definitely been discussed in the context of inserting arbitrary staff messages (the yellow background ones).

Right now those are only inserted automatically based on certain staff actions (close, pin, archive, etc) but we eventually want people to be able to “speak in the moderator voice” by posting an official staff message with arbitrary text in the topic. That text would probably offer a series of templates that the site operators could control.


(Michael Downey) #5

OSQA (is it still even an active open source project?) has a decent way for moderators/admins to add comments to a question. There are some out-of-the-box comments for relevance, etc., but the admin can add her own as well.

A lot of people follow the “praise in public, criticize in private” adage, but many others think there is a time to correct publicly encourage different behavior, so this “thing” (plugin or otherwise) should probably be able to handle both scenarios.


(Jeff Atwood) #6

This is related to my ticketing system proposal. Custom flags also.


(Jeff Atwood) #7

Saw a nice mockup for GitHub!

I definitely think canned responses is something we want to get to, but it feels more like a Discourse created plugin than a core feature.


(Michael Downey) #8

The above mockup matches what I had in mind exactly. I think it’'s also probably not something that everyone would use, but would be nice for sites with more active moderation.


(Jay Pfaffman) #9

I started working on a template manager to similarly insert text into a message.

Here’s what I have so far, but templates now all live in code.

My next step was to create a category for templates and have the template manager insert text from those topics. I can see lots of reasons to be able to insert a snippet text into messages. For example, want to add a poll creator to the composer (without installing the perfectly good plugin that does that)? Create a poll template and let users insert and edit it.

I’m new to ruby/rails/ember and am currently stuck on the next step.


(Michael Downey) #10

This approach sounds like it might work! Sorry I’m can’t be more helpful on the coding side. :slightly_smiling:


(Einsteino) #11

I read about this in the GSoC ideas page, and this seems like a great idea. I installed the template plugin you made, and the templates are all checkbox-related.

I’m reading through the code now. By ‘category for templates’ you mean categories like text, polls, etc. right? Can I spend a couple of days working on this to get an estimate of how well I could work on this idea in the future?


(Michael Downey) #12

I think he meant creating a unique staff-only category, and then within that private category create a new topic for each template. (I could be wrong.)


(Jay Pfaffman) #13

The current version is a proof of concept (hence the worthless for anyone else templates).

I first thought that templates would be entered in the amon interface, decided that the way to go would be to create a category for templates, making it possible for non administrators to contribute templates and a familiar means to create them.

If seemed like an easy to move forward, except I didn’t have the skills to pull it off. I’d be elated if you’d have a look.


(Shriyansh Agrawal) #14

Hello everyone ,
I have gone through “github-canned-responses” to get little insight of the idea, and believe me I have been fascinated by the idea.
Also I’m a GSOC aspirant , and want to work on this idea through this summer .
@pfaffman , you stated

So , do we need to work on another better open-source template or are we going to work on same ??
Also it would be helpful if someone give me some more insight on the idea and template to work on along with all specific requirements we need .


(Jay Pfaffman) #15

Caveat: I am not a member of the core team or even a developer with enough skills to provide much support, so everything I say may be wrong.

I think that the UX of the plugin that I wrote is good enough on the composer side. I think that what I have in mind should be fairly easy to accomplish and would be an indication that you’re up for development in Discourse (you read this right?).

It seems that this should be a good beginner’s project in discourse plugin development (but after conceiving it, I found that I am a ways off from being able to pull it off myself).

Here’s what I think you need to do:

  • add a template-topic selector to admin/settings
  • modify the template code that I have to pull topics out of the template category rather than the hard-coded ones that I have
  • modify the template code that I have to pull the raw topic text from the topic and stick it in

It seems pretty simple. I want to use it to make it easy for students to attach rubrics to topics in which they show that they have solved some challenge. I think that the idea has general appeal as it would then be an easy way to extend the editor to insert forms, pre-written polls, and so on.


(Shriyansh Agrawal) #16

Okay , will get back to you by tonight .
Is it necessary to deliver the idea within a couple of days ?? :rolling_eyes:
As the deadline of submitting proposal is very close…
And right now I want to focus on righting proposal for discourse :head_bandage:


(Erlend Sogge Heggen) #17

Yes, you should have your application in by tomorrow. That being said, we don’t put that much weight on the applications themselves. The most important part is demonstrating an understanding of Discourse and its related frameworks by contributing Pull Requests to core or active plugins.


(Shriyansh Agrawal) #18

I respect your concern , but without doing proposal submission I can’t get into the game , so I prefer first writing proposal and submit it within some hours and start begin the execution , :thinking:
Although I already got a vague idea of project after doing some research on it , so I think I can write the proposal now.
I assure you that I will be give my full time on this idea after submitting proposal and will try to submit a PR too , as soon as possible , possibly in 24 hrs. :head_bandage:


(Shriyansh Agrawal) #19

Currently , I’m working on this .
Is there any irc or any other communication medium , through which I can talk with you.
I need to discuss about some specs.

I guess , this is already been implemented under your plugin??


(Einsteino) #20

Okay. @pfaffman merged my first two pull requests to the plugin, and the changes made are:

  • Addition of a field in siteSettings where the admin can enter the canned responses, in the format name1:message1|name2:message2

  • Changes to the controller - now, it pulls these responses from siteSettings. Deleted the hard-coded responses.

I think it can be used as a rough, temporary solution. Members of the community, please try it out and tell me if there are any bugs / anything that can be improved, for now. :smiley: