Intégrations de chat Discourse

:information_source: Chat Integration is for using an external chat system together with Discourse — you may be looking for Discourse Chat which adds Chat functionality directly to Discourse.

:discourse2: Summary
:open_book: Install Guide

The Discourse Chat Integration plugin lets you send messages in your preferred chat platform when something happens in Discourse.

Messages can be triggered by:

  • New topics
  • New replies
  • Messages to a group
  • Mentions of a group

Functionality by provider

Provider Notifications Slash Commands Post Transcripts Threaded Replies
Slack :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Telegram :white_check_mark: :white_check_mark:
Discord :white_check_mark:
Mattermost :white_check_mark: :white_check_mark:
Google Chat :white_check_mark:
Matrix (element.io) :white_check_mark:
Zulip :white_check_mark:
Rocket.Chat :white_check_mark:
Gitter :white_check_mark:
Stride Docs
Microsoft Teams :white_check_mark:
Basecamp Docs
IRC Cloud Docs
Flock Docs
Webex :white_check_mark:

:warning: Before you enabling Slash Commands for your provider, make sure to read the Security/Permissions section below!

Configuration

There are three key concepts in this plugin:

  • Providers: The chat platform that you’re connecting to (e.g., Slack, Discord, etc.).
  • Channels: A single chat area in your platform (e.g., channel, group chat, room, etc.). Each provider can have multiple channels.
  • Rules: The instructions for when and how Discourse should send a message to a channel. Each channel can contain multiple rules.

Configuring providers

  1. Go to Admin > Installed Plugins and ensure that the Chat Integrations plugin is enabled.
  2. Click Settings.
  3. Choose the chat platform that you’d like to connect to Discourse.

  1. For some providers (e.g., Discord), you’ll be directed straight to the next step (channel configuration). Others will ask for special information, which you’ll need to get from your chat platform.

Dedicated setup instructions for chat platforms

Configuring channels

Once you have configured a provider, you can now configure channels for that provider. From the Chat Integration plugin page, click Add channel and provide the requested information — typically a webhook URL and/or channel name, depending on the provider.

Configuring rules

After your channel is connected, you can click Create rule to create a new rule for when your community should send a message to your provider channel.

The main components of a rule are:

  • Type: What type of community content should trigger a chat message?
    • Normal: Send chats for topics in the selected category.
    • Group message: Send chats when a PM is sent to the selected group.
    • Group mention: Send chats when the selected group is mentioned.
  • Filter: You can optionally filter the rule so that it only sends chats in certain situations.
    • All posts with threaded replies: Send chats for all posts matching this rule, with replies threaded in the chat platform. This option is not available for all integrations.
    • All posts and replies: Send chats for all posts and replies that match this rule.
    • First post only: Only send chats for the first post in a topic or message that matches this rule.
    • Tag added to topic: When the create post for category and tag changes site setting is enabled, send a chat when someone adds adds a tag to a topic.
    • Mute: Do not send chats that match this rule. This is useful for carving out an exception to another broader rule.
  • Group: If you selected Group message or Group mention as the Type, select the group whose received PMs / mentions should trigger the chat.
  • Category: If you selected Normal as the Type, optionally select the category that a topic must be posted in to trigger the chat.
  • Tags: Optionally select one or more tags that matching topics must have at least one of to trigger the chat message.

What happens when there are multiple rules?

Rules are sorted first by type then by the filter:

  1. Group mentions
    1. Mute
    2. All posts and replies
    3. First post only
  2. Group messages
    1. Mute
    2. All posts and replies
    3. First post only
  3. Normal (i.e. topics)
    1. Mute
    2. All posts and replies
    3. First post only

If a post matches multiple rules, the plugin will trigger the first matching rule in the list.

For example, with the following rules

Filter Category Tags
All posts and replies Mentions of: @team (all tags)
Mute Support (all tags)
First post only Support unsupported-install
All posts and replies (all categories) (all tags)

Notifications would be triggered for:

…but not for:

Security / Permissions

By default the system account is used, which means that there is no restriction on notifications sent.

To secure your notifications, you should create a non-staff user with appropriate access privileges, and enter its username in the chat integration discourse username setting.

Slash Commands

If your provider supports slash commands, you can manage rules from within your chat interface. Each provider varies slightly in syntax, but in general they follow a similar structure. (Note that at this time, only the Slack integration implements threads.)

The commands available are

Posting a transcript

If your provider supports transcript posting, you can post your instant messaging history to discourse. This is currently only supported for the Slack provider. Note: You will need to be using the “Access Token” method of connecting to Slack.

Send /discourse post to see the interface. The plugin will try and “guess” where your current conversation starts, by looking for a gap in the message history of more than 3 minutes.

Alternatively, you can specify a number of posts after the command, or a URL to the first message.

To load a transcript for a Slack thread, you can use /discourse post thread {url}, where {url} is the permalink of the first message in the thread. For example:

/discourse post thread https://<slackname>.slack.com/archives/C6029G78F/p1522952993000017

Alternatively, you can use /discourse post with a thread-specific permalink like this:

/discourse post https://foo.slack.com/archives/G49KKS6AX/p1523062012000911?thread_ts=1523091738.000088&cid=G49KKS6AC

In both cases the “first/last message” UI is skipped - the entire thread is included in the transcript.

Adding new providers

Option 1: Submit a PR implementing your provider:

Option 2: Use your own plugin:
It is possible for third party plugins to register new “providers”. As an example, I’ve created a provider which sends webhooks to IFTTT. This could be used to automatically publish all posts in a category to facebook… or turn on your light when someone posts in Contribute > Feature… or feed your fish whenever there’s a new Customization > Plugin.

CHANGELOG

TODO

Last edited by @lindsey 2026-04-21T21:14:15Z

Check documentPerform check on document:
115 « J'aime »
Set up Slack notifications using the discourse-chat-integration plugin
Set up Mattermost notifications using the discourse-chat-integration plugin
Set up Rocket Chat notifications using the discourse-chat-integration plugin
Set up Microsoft Teams notifications using the discourse-chat-integration plugin
Set up Google Chat notifications using the discourse-chat-integration plugin
Set up Matrix (element.io) notifications using the discourse-chat-integration plugin
Set up Gitter notifications using the discourse-chat-integration plugin
Set up Webex notifications using the discourse-chat-integration plugin
Tool for Tossing out Notifications via Discord
iOS Mobile App Notifications
Will Rocket Chat and others get transcript posting?
Dynamic of community with a chat and discourse page
Slack to Discourse
Discord chat integration for open source projects
Auto Post New Topics to Social Media
Moving from Slack to Discourse
Telegram integration
Discourse-official-slack: no error message after failed post to slack
Set up Telegram integration using the discourse-chat-integration plugin
IFTTT Chat Integration Plugin - curious on status
Federation support for Discourse
Slack Plugin Still Active?
Set up Zulip notifications using the chat integration plugin
Comment on a question instead of answering it
Query on Discourse Integration with Google Chat
German People here
[PAID] Turning Discourse Forum to Messenger App
Contributor Interviews – David Taylor
Add a new provider to discourse-chat-integration
Yammer integration
Best chat integration for a Forum breakout
Configure Discord Login for Discourse
Steam Authentication & Integration
Set up Slack notifications using the discourse-chat-integration plugin
Libera Chat Integration
Help configuring Slack Discourse plugin
How can I beef up Discourse notifications?
HipChat Integration
Notifications integration for Facebook and Twitter
Plugin for auto posting to social media?
Two-way sync chat with discourse
Set up Slack notifications using the discourse-chat-integration plugin
Send summary of new posts to chat instead of every post update
Discourse to Discord bot possible?
Writing messages from Slack to Discourse
Writing messages from Slack to Discourse
Internal Onebox links cause full page reload
Gitter support in chat-integration appears to be missing settings and rules
Advice for getting my little game dev community "out there?"
Can Discourse Integrate with Free Slack?
Discourse & Drift Chatbot
Checking if post or thread - Ruby
Nextcloud support
Discourse Data Explorer Query Response to Slack
Help configuring Slack Discourse plugin
Advice for starting a community site for housing cooperative
More Like WhatsApp for addiction support?
Optionally threading posts to parent topic in slack integration
Set up Power Automate to send Microsoft Teams notifications using the discourse-chat-integration plugin
Optionally threading posts to parent topic in slack integration
Feed Discourse posts into my Discord server?
Twilio - for SMS notifications to users - Anyone Else Interested?
Discourse Chat vs Chat Integration plugins
Discourse vs Salesforce Community vs Slack
Discourse for Teams is here!
Adding a confirmation to particular tag groups and @mentions
Introducing Discourse Chat (BETA)
Different layout for posts with/without tags in webex chat integration
Chat Integration and Discourse Chat
Set up Mattermost notifications using the discourse-chat-integration plugin
Slack Bot Construction Kit :robot:
Configure Groupme provider with the discourse-chat-integration plugin
Set up Discord notifications with the discourse-chat-integration plugin
Test message works, but normal messages are never triggered
Integration of https://signal.org/ chat
Set up Slack notifications using the discourse-chat-integration plugin
Discourse as a Conference App (in person, virtual, or hybrid)
Can you enable a plugin that integrates slack and discourse?
We would like to add the plugin "discourse chat integration", but INCOMPATIBLE PLUGIN is returned
Babble Chat
Dedicated chat client?
Discourse Chat
Set up Telegram integration using the discourse-chat-integration plugin
Bundling more popular plugins with Discourse core
Current Projects - April 2026

Il serait intéressant d’ajouter la prise en charge de ActivityPub Plugin de Discourse afin que la publication puisse être déclenchée en fonction de balises et d’autres filtres de l’intégration de chat.

1 « J'aime »

Bonjour, l’année dernière Telegram a annoncé les forums/sujets (mini-chats dans les discussions de groupe). J’ai essayé de connecter chaque mini-chat individuel à une catégorie ou une autre de mon site. Mais si je comprends bien, les adresses de sujet ne sont pas prises en charge par le plugin ? Par exemple, dans mon cas, chaque sujet a une adresse comme suit : @telegram_topic /1, @telegram_topic /2, @telegram_topic /3
Si j’insère un nom de chat standard dans la ligne, par exemple @telegram_chat, cela fonctionne sans problème.
Il serait très pratique que le plugin ait la possibilité d’insérer des adresses de chat similaires (../1), alors les utilisateurs n’auraient pas à être abonnés à de nombreux canaux indépendants liés à certaines catégories du site.

1 « J'aime »

Avez-vous envisagé d’utiliser des balises pour y parvenir ?

:thinking: Je pense que l’utilisation des tags ne convient pas entièrement à mon cas. Car même avec l’aide des tags, je ne voudrais pas que toutes les notifications aillent dans un seul canal, créant ainsi un bruit d’information. En même temps, au lieu d’avoir 20 canaux pour 20 catégories/tags, je préférerais avoir un groupe de discussion où je pourrais organiser plusieurs mini-chats thématiques (par catégorie/tag) où chaque utilisateur peut consulter celui dont il a besoin et avoir la possibilité de regarder dans d’autres mini-chats. Cela me dérange car dans ma région (Asie), la plupart des gens utilisent les chats WhatsApp et Telegram - les forums ne sont pas populaires. Mais j’essaie de trouver un compromis).\n\nP.S. Si je me répète souvent, ne me jugez pas, j’essaie juste de transmettre mes pensées correctement, car j’utilise Google Traduction.

1 « J'aime »

Vous devriez être en mesure de filtrer les balises qui s’appliqueraient à quels chats, du moins d’après ce que je comprends.

Il me semble que nous parlons de choses différentes :thinking: Je n’ai pas de question sur le filtrage des chats par tags/catégories.
Pour le contexte. Auparavant, Telegram avait des chaînes et des chats (sauf pour les bots). Ces chaînes/salons de discussion ont un nom d’utilisateur, approximativement @nom_utilisateur_chat ou @nom_utilisateur_canal.
Depuis l’année dernière, Telegram a la possibilité de transformer les chats en forums contenant des mini-chats thématiques comme celui-ci. Ces mini-chats ont leurs propres noms d’utilisateur, par exemple @nom_utilisateur_chat /1, @nom_utilisateur_chat /2. La commodité de tels chats avec mini-chats est que l’utilisateur n’a plus besoin de s’abonner à plusieurs chats séparés les uns des autres, mais simplement de s’abonner à un seul chat (par exemple, avec le nom de mon site) et d’avoir accès à de nombreux mini-chats (dans mon cas, chaque mini-chat ciblerait une catégorie spécifique du site) qui intéressent l’utilisateur.
Maintenant, je veux connecter ces mini-chats à ce plugin, mais il me semble que le plugin ne prend pas en charge le nom d’utilisateur du mini-chat comme nom_utilisateur_chat /1.

1 « J'aime »

Existe-t-il un moyen de créer une règle pour étiqueter un nouveau message et/ou une réponse afin qu’il ne soit pas publié dans le système de chat cible (dans ce cas, Slack) ?

Salut Albert, si nous parlons des balises Discourse normales, vous pouvez configurer un filtre de ‘mute’ pour empêcher les sujets avec cette balise de déclencher des notifications dans Slack.

Mais en ce qui concerne les publications individuelles, il n’y a aucun moyen de les filtrer.

1 « J'aime »

Je pense que j’ai le même souhait que toi, Aizada :

J’aimerais pouvoir avoir un groupe de discussion Telegram, avec les sujets activés (qui correspondent un peu aux catégories sur Discourse), et ensuite, dans les paramètres d’intégration Discourse/Chat, spécifier à quel sujet il doit publier.

J’ai essayé de créer un groupe de discussion avec des sujets maintenant (avec juste le bot et moi), mais lorsque je tape /help dans un sujet, le bot répond dans le chat général.

As-tu examiné cela @david ? J’ai trouvé ce fil Stack Overflow, qui montre comment obtenir le message_thread_id (qui est l’identifiant du sujet) et dit que l’API du bot a pris en charge cela dans la version 6.3.

Merci pour ton travail de toute façon ! :heart_hands:t2:

1 « J'aime »

Salut @ErlendMS :wave:. Nous n’avons actuellement aucune amélioration prévue pour ce plugin dans notre feuille de route, mais si quelqu’un souhaite ajouter la prise en charge du « threading » (également appelé sujet) pour l’intégration Telegram, ce serait probablement pr-welcome.

Nous avons une certaine prise en charge du threading dans l’intégration Slack, il devrait donc être possible de réutiliser une partie de cette logique.

3 « J'aime »

Est-il possible d’utiliser ce plugin pour recevoir des notifications dans Slack chaque fois qu’un article est signalé pour révision ? Merci.

Ce plugin expose-t-il des fonctions d’API supplémentaires ?

Où dois-je demander une revue de PR ? J’ai soumis ce PR à la fin de la semaine dernière pour ajouter un nouveau fournisseur et il est toujours en attente d’un réviseur. J’ai cherché dans différents guides développeurs sur Meta et je n’ai pas trouvé celui des demandes de PR appropriées.

Voici mon PR : FEATURE: Added Power Automate as a new provider by benoitdesnoyers · Pull Request #204 · discourse/discourse-chat-integration · GitHub

Merci,

1 « J'aime »

Bonjour à tous ! Nous venons de fusionner cette pr pour le plugin d’intégration de chat.

Ce changement vise à supprimer l’option tags_changed du filtrage des règles de l’intégration de chat. Nous faisons ce changement car nous supprimons le paramètre “Création d’un petit post d’action lorsque la catégorie ou les tags d’un sujet changent”.

Mais la fonctionnalité restera la même, si vous avez discourse automation installé. La prochaine fois que vous exécuterez les migrations pour ce plugin, il ajoutera un script au plugin discourse automation qui fonctionnera de manière similaire à ce que nous avons actuellement.

Voici un exemple d’automatisation qui sera créée :

Il sera envoyé à mon canal en fonction des catégories et des tags que je surveille.

${ADDED_AND_REMOVED} est le texte par défaut ; il se comportera de la même manière que la règle.

Nous avons également ajouté pour cette option de script quelques options qui peuvent être utilisées dans le message :

  • ${TOPIC} pour le nom du sujet
  • ${REMOVED_TAGS} pour les tags supprimés
  • ${ADDED_TAGS} pour les tags ajoutés
    les deux, supprimés et ajoutés, ne se déclencheront que s’ils contiennent un tag.
    Par exemple : le message added: ${ADDED_TAGS} ne se déclenchera que s’il y a des tags ajoutés.
4 « J'aime »

Nous avons eu un problème avec l’autre PR (les utilisateurs qui utilisaient d’autres fournisseurs ne pouvaient pas utiliser l’automatisation lorsque les balises de sujet changeaient), donc pour y remédier, nous avons créé ce nouveau PR, où nous prenons en compte chaque fournisseur.

Le paramètre Création d'un petit message d'action lorsque la catégorie ou les balises d'un sujet changent n’apparaîtra pas dans l’intégration de chat.

Si vous avez discourse automation installé, la prochaine fois que vous exécuterez les migrations pour ce plugin, il ajoutera un script au plugin discourse automation qui fonctionnera de manière similaire à ce que nous avons actuellement.


Vos automatisations ressembleront à ceci :

Et vos fournisseurs sont les fournisseurs activés.

Par exemple, j’ai Discord, Slack, Telegram et Google Chat activés.

Votre nom de canal est le nom que vous lui avez donné dans les paramètres d’intégration de chat.

Par exemple, le nom ici est Spidey.

3 « J'aime »

Nous avons un nouveau lot de modifications pour Automation/chat-integration

Dans ce nouveau lot, les changements notables sont :

  • Nous avons ajouté Trigger with PMs, qui vous permet de contrôler si cette automatisation doit être déclenchée même sur les messages privés.
  • Résolu un problème où le déclencheur Topic tags changed était déclenché lors de la création de sujets.
3 « J'aime »

Comme mentionné précédemment – ici

Le réglage du site create post for category and tag changes peut actuellement divulguer des tags/catégories privés ; une façon que nous avons trouvée pour conserver cette fonctionnalité était de la déplacer vers les murmures :

Cela fonctionne de manière similaire aux petits messages, mais maintenant, vous devez avoir whisper allowed groups avec un groupe pour que cela fonctionne.

J’ai fusionné une PR pour le cœur avec ce changement et une pour chat-integration, supprimant l’utilisation de ce réglage ; la fonctionnalité d’automatisation ajoutée devrait être identique à l’action mineure si quelqu’un rencontre un problème, veuillez nous en informer !

3 « J'aime »

J’ai d’autres mises à jour pour ce plugin :steam_locomotive:

Nous avons ajouté le champ trigger on pour l’automatisation Send Chat-Integration message.

Qu’est-ce que cela fait ?

Il vérifie quand les tags sont :

  • Added and Removed (par défaut)
  • Added
  • Removed

Actuellement, cette vérification est inclusive.

Un bon exemple est si je le règle sur Added ; Pour que cette automatisation s’exécute, il sera nécessaire qu’un quelconque tag soit ajouté à un sujet.

Lorsque Tags added est défini, le tableau d’automatisation ressemble à ceci :

Added tag to topic Removed Tag to topic Has automation ran?
:white_check_mark: :cross_mark: :white_check_mark:
:white_check_mark: :white_check_mark: :white_check_mark:
:cross_mark: :white_check_mark: :cross_mark:

Lorsque Tags removed est défini, le tableau d’automatisation ressemble à ceci :

Removed tag to topic Added Tag to topic Has automation ran?
:white_check_mark: :cross_mark: :white_check_mark:
:white_check_mark: :white_check_mark: :white_check_mark:
:cross_mark: :white_check_mark: :cross_mark:
2 « J'aime »


Objet : Impossible d’accéder à la section Plugins pour la configuration de l’intégration de chat

Bonjour,

Je suis administrateur du forum LXDAO et j’essaie de configurer le plugin Discourse Chat Integration pour le connecter à Telegram. Conformément à la documentation officielle, je devrais pouvoir le configurer dans la section Plugins du panneau d’administration.

Cependant, dans mon tableau de bord d’administration, je n’ai accès qu’à quatre sections : Général, Modération, Sécurité et Rapports. La section Plugins mentionnée dans la documentation ne semble pas être disponible.

Pourriez-vous m’aider à comprendre :

  1. Le plugin Chat Integration est-il déjà installé sur notre forum ?
  2. Ai-je besoin d’autorisations supplémentaires pour accéder à la section Plugins ?
  3. Si nous utilisons une solution Discourse hébergée, y a-t-il des limitations concernant l’installation/la configuration des plugins ?

En tant qu’administrateur, quelles mesures dois-je prendre pour configurer correctement l’intégration Telegram pour notre communauté ?

Merci de votre aide !