Reconciling Discourse Chat with other Community Chat Tools like Discord

To me, the killer feature of Discourse Chat vs other tools is the ability to move messages to forum threads. In our community, this is likely to become the place for “serious” chat among core community members, who need to be able to separate the signal from the noise, and the ability to organize messages like this (e.g. grouping feature requests together) does exactly that.

My initial reaction was “this has some catching up to do on Discord” but now I think it would make the most sense to lean into what makes it unique, with more helpful organizational tools like the above

Our community currently uses Discord, and there would likely be some resistance to moving some of our chat to Discourse, but I think there is space for both. Discord would be our first touchpoint for all community members, including casual “fun” chat, voice channels, etc, while Discourse would be a more “serious” place for core community members.

And use of webhooks, sync bots, etc, would be key to hooking Discord community members “deeper” into this more serious community space, i.e. converting casual enthusiasts into engaged contributors

I’d be interested in chatting more with other community managers here about how they’re thinking about reconciling Discourse Chat with their existing chat tools. Perhaps we should move my messages here to a new topic.

7 Likes

I too am very interested in how Discourse chat will relate to Discord as many, many communities seem to have both (including several that I admin or interact with regularly). As a person who really had to get used to Discord and make peace with the fast flow of info, as well as the semi-loss of interesting discussion that often results (not because it’s truly erased, it’s just very difficult to find and “surface” in Discord after a while), I have an initial strong impulse to try to move everything away from Discord and a hope that Discourse chat reaches reasonable feature parity with it to make that possible. :smile: However I recognize other people have different preferences and biases than I do, and in any case any forced approach to making such a migration happen would likely not be well received and could easily be damaging to the existing community.

I’ve discussed previously a wish for better integration between Discord and Discourse for these reasons:

And in general I am very interested in the interface between sync (chat) and async (forum, etc.) discussion. I think Discourse has the best opportunity to blend that here, so the integrated chat feature is super exciting.

Perhaps the best chance of making a more natural progression from Discord to Discourse chat is simply to make Discourse chat really frickin’ good. :smile: So far I’m impressed with the early progress, but I know there is a lot to chat functionality, and it will likely never be a major priority for the team (maybe I’m wrong about that). I do think that perhaps Discourse chat might be more natural and easy to migrate to in communities where there is an active Discourse forum, and Discord was not the original platform, and/or was chosen at some point as the real-time option simply because it was free/easy to setup.

To get a bit more specific, this is my current thinking for how to handle things in two of the communities I admin:

Productivity Community

  • Started on Discord
  • Forum setup by myself and another admin to capture larger insights from Discord
  • From the beginning the forum has had comparatively low activity vs Discord

This is an interesting one because, as noted, it began on Discord. So there is definitely a lot of “gravity” to that space for many community members. However activity has been low the last several months on both Discord and Discourse. We also have had notable issues where incredibly good discussion happens in Discord chat, and is very hard to move over to Discourse discussion (where it arguably belongs due to how in-depth it is, and how useful it might be to preserve for later reference, engagement over time, etc.). The already quite good Discourse chat function to move a set of messages to a new or existing topic is like a dream come true.

So although it’s not exclusively my decision to make, due to the low activity in both areas I am tempted to try to move primary engagement over to the Discourse forum, making heavy use of chat, with the forum topics reserved for more long-form stuff, and the fluid interface between the two making it all work more comfortably. But that’s certainly easier said than done. The Discord login integration in Discourse may help though…

Software Product Support and Testing Community

  • Started on Telegram
  • Discourse (originally Flarum) was added early
  • Discord added much later, still modest levels of activity, in bursts, and shared with Telegram

This community is connected to a security/privacy-oriented productivity app, and already many of the users have been complaining about the use of Discord. Telegram was originally used in part due to privacy concerns. However Telegram’s capabilities for managing groups, roles, etc. is frankly terrible. That was part of why a move to Discord was started. Now that chat will be available in Discourse itself I am hopeful that the primary, official chat channels can all be moved internal to the forum instance. That would be a big win, I think, because it would simultaneously address both the privacy issues of Discord, and the management issues of Telegram, while also further centralizing communications into a more unified and powerful system. That should save the team a good amount of time. Likely both the Discord and Telegram channels will continue to exist, and the team may need to find ways to smoothly hand-off their management to trusted community members, while making clear that they are no longer official channels… This is just my personal hope and vision, it’s not solely my decision to make, but this is the approach I’ll be advocating for. :grin:

So to my mind there are advantages for both admins and users, but the primary advantages currently are for admins who want to centralize. In order to drive adoption by users I think the chat feature will need to be as robust and easy to use as possible. I do anticipate a bit of an uphill climb convincing users in at least one of these communities to move over.

So, I don’t have any particularly insightful answers. Just musing about it all. But I wanted to contribute to and encourage this discussion as I am also keenly interested in how people will handle this, and what resources, features, etc. they feel will best enable them to do so effectively.

1 Like

On that subject, we use a few bots in Discord, e.g. Carlbot with triggers that respond to keywords. Do you anticipate it being possible to replicate these bots in Discourse Chat?

We could built anything :grinning: but we haven’t talked about that internally yet

1 Like

Awesome! If the core team provides a plugin framework that lets us build similar bots in Discourse, that’s enough imo.

Obviously not a priority for launch though

Discord bots are hosted elsewhere right? Since Discourse has an open rest API everything Discord does is possible out of box

with Discourse you get an extra boost, as you can make it a Discourse plugin that runs in the same server

or even a theme-component that is lightweight and safe

A bot API could be interesting though as a way to grow the ecosystem around Discourse

Well Falco is right. We have a way to set bots up already with the chat admin interface.

that for webhooks right? But Discourse can be sooooooo much more powerful than Discord here

you could create some appEvents for chatSent and chatReceived and people can then decorate messages using js theme components. This will give us “serverless bots”

2 Likes

Discourse being open-source makes me think the potential for bots is much higher

Our team is willing to invest resources in developing our own bots/plugins as needed for the community but this is more attractive in an open-source framework like Discourse

And there are some bots we already use for Discord so I was contemplating how easy it would be to transplant those into Discourse

I don’t know the tech much so I wasn’t sure how much work would need to be done to Discourse’s API to enable bots that interact in channels

There are also exciting possibilities for Discourse bots that stem from Discourse’s unique functionality compared to Discord. For example, imagine a bot that listens for key questions in chat, then automatically moves them to a topic thread and assigns the question to a support person.

2 Likes

great call Falco; that’s pretty exciting, and not something I’ve thought about

Oh that’s a really cool idea

Totally possible too. Like Falco said, we could support that on our end in like 5 minutes

1 Like

A lot of Discord bots rely on their role system. I assume we could replicate this using Discourse groups.

One very popular use case in Discord is to have a welcome channel with emojis that people can click to assign themselves a role. To replicate this in Discourse, I imagine we could have a welcome topic, instructing people to click on emojis (now that we have Discourse Reactions this is more feasible), and then have the bot/plugin assign them to groups based on those reactions.

And then it looks like we can mention groups here How to set and use group mentions and messages - #9 by alehandrof

Highlighting this parallel functionality is going to be key I think to attracting communities who are more deeply entrenched in the Discord ecosystem

Another parallel would be adding this feature, with online users grouped by their Group, the same way Discord groups by Role

Although I can see the marketing perspective of wanting to attract Discord people, this “react with an Emoji for role” is actually a kind of clunky workaround for lacking functionality in Discord, specifically because it doesn’t have better ways of requesting and managing group membership. Discourse already has various options like “Allow users to join the group freely” vs “Allow users to request to join”, along with a full suite of admin tools. So it should be possible to handle this in a better way, and I’d really prefer to not see emoji-based group membership, at least out-of-the-box. Could make a great plugin though. :wink:

3 Likes

So, we gave a lot of thought on this use case over the years. The reason you have to write bots in Discord is because you are kinda putting a square peg in round hole, and doing this weird UX because there is nothing better.

On Discourse, you will be able to configure Discourse Automation to achieve the same use case, and be able to get the group/role assignment in ways that may make more sense for your users, like voting in poll or replying to a message in a chat.

3 Likes