Configurer les notifications Mattermost avec le plugin discourse-chat-integration

Ce howto décrit comment configurer le fournisseur Mattermost inclus dans discourse-chat-integration.

Activer

Le plugin discourse-chat-integration est intégré à Discourse. Aucune installation séparée n’est requise. Pour l’activer, vérifiez que le paramètre du site chat_integration_enabled est activé.

Notifications

Configurer Mattermost

Votre serveur Mattermost doit être accessible depuis votre serveur Discourse afin de les connecter. Il est recommandé d’utiliser HTTPS, mais HTTP devrait également fonctionner.

  1. Dans votre Console système Mattermost, sous Intégrations personnalisées, vérifiez que les paramètres suivants sont activés :

    • Activer les webhooks entrants
    • Autoriser les intégrations à remplacer les noms d’utilisateur
    • Autoriser les intégrations à remplacer les icônes de photo de profil
    • Activer les commandes slash personnalisées (si vous souhaitez utiliser des commandes slash)
  2. Connectez-vous à votre équipe, cliquez sur votre nom en haut à gauche, puis cliquez sur \u003ckbd\u003eIntégrations\u003c/kbd\u003e

  3. Choisissez \u003ckbd\u003eWebhooks entrants\u003c/kbd\u003e, puis \u003ckbd\u003eAjouter un webhook entrant\u003c/kbd\u003e

  4. Entrez un « Nom d’affichage », une « Description », et choisissez un canal aléatoire dans la liste (peu importe lequel, Discourse le remplacera)

\u003cimg src="//assets-meta-cdck-prod-meta.s3.dualstack.us-west-1.amazonaws.com/original/3X/d/a/da17356f254cb84e84738ffe8f4a0652de2f2677.png" height="200"\u003e

  1. \u003ckbd\u003eEnregistrer\u003c/kbd\u003e

  2. Copiez l’URL fournie, vous en aurez besoin plus tard

Configurer Discourse

  1. Collez l’URL que vous avez copiée dans le paramètre du site chat_integration_mattermost_webhook_url

  2. Activez chat_integration_mattermost_enabled

  3. Configurez des « Règles » pour vos canaux, conformément aux instructions du plugin d’intégration de chatroom discourse-chat-integration. Les identifiants de canal ressemblent à #town-square ou @davidtaylor.

  4. Cliquez sur \u003ckbd\u003eTester\u003c/kbd\u003e sur l’un des canaux pour vérifier que tout fonctionne. Vous devriez recevoir un message comme celui-ci :

  5. :unicorn:

Commandes slash

Les commandes slash vous permettent de gérer vos règles depuis Mattermost. Pour les activer :

  1. Si ce n’est pas déjà fait, activez Activer les commandes slash personnalisées dans votre Console système Mattermost

  2. Connectez-vous à votre équipe, cliquez sur votre nom en haut à gauche, puis cliquez sur \u003ckbd\u003eIntégrations\u003c/kbd\u003e

  3. Choisissez \u003ckbd\u003eCommandes slash\u003c/kbd\u003e, puis \u003ckbd\u003eAjouter une commande slash\u003c/kbd\u003e

    • Nom d’affichage : Discourse
    • Description : Gérer les règles de notification de Discourse
    • Mot déclencheur de la commande : discourse
    • URL de la requête : \u003cyour-discourse-url\u003e/chat-integration/mattermost/command
    • Méthode de la requête : POST
    • Nom d’utilisateur de la réponse : Discourse
    • Icône de la réponse : (optionnellement, spécifiez une URL d’icône)
    • Autocomplétion : :ballot_box_with_check:
    • Indice d’autocomplétion : Gérer l'intégration de ce canal avec Discourse
    • Description d’autocomplétion : [watch|follow|mute|delete|status|help]
  4. \u003ckbd\u003eEnregistrer\u003c/kbd\u003e

  5. Copiez le « Token » fourni et collez-le dans les paramètres de votre site Discourse sous chat_integration_mattermost_incoming_webhook_token

  6. Essayez d’envoyer /discourse help dans votre canal Mattermost – vous devriez recevoir un message listant les commandes possibles

  7. :1st_place_medal:

11 « J'aime »

I recommend you also post this on the mattermost Discourse to get more feedbacks :cowboy_hat_face:

and probably a dedicated topic.

(also I wish we warned communities about hideous looking oneboxes cause they are missing images)

6 « J'aime »

I think we already do in the dashboard if they use the default images for the logos.

1 « J'aime »

Mattermost integration now supports slash commands (their implementation is built to be compatible with Slack’s) :tada:

I have also created a topic about it on the Mattermost forum, it can be found here:

5 « J'aime »

Hello! I am getting a broken image link to the right of the mattermost post. I tried to see the image url and it looks like an actual post instead of an image:

http://destek.hugin.com.tr/t/hugin-destek-topluluguna-hos-geldiniz/183/1

Is it intended to be the post author image I wonder?

Any tips on how to fix it?

Hi @nommaz - sorry about that. It was indeed trying to load an image from the URL of the post, which clearly isn’t going to work :wink:

I’ve fixed it now, so if you update to the latest version of the plugin it should work as intended :slight_smile:

2 « J'aime »

Hi David didnt work unfortunately

Are you sure it is not an issue with mattermost_provider.rb:68 ?

Thanks

Vedat

Oops, I made the change in the slack provider instead of mattermost :facepalm:

Just added another commit to correct the error, so please can you give it another try :slight_smile:

1 « J'aime »

Thanks! All set now :slight_smile:

What’s up if I get a 422 error when trying (test) to hook to Mattermost?

Make sure you copied the webhook URL correctly, and that there are no spaces before/after the URL. Is your mattermost server accessible to the internet? Or just an internal network?

3 « J'aime »

What’s the best way to handle multiple teams / multiple mattermost servers?

J’ai l’intégration de chat avec Mattermost activée - je me suis abonné à toutes les catégories de « niveau supérieur » qui s’affichent via la commande « /discourse watch », mais les publications dans les « sous-catégories » ne sont pas capturées.

Prenez cette publication : https://openziti.discourse.group/t/this-is-a-test-topic-in-the-sdks-category/271
elle est correctement transmise à Slack - mais elle n’est PAS transmise à Mattermost. Slack est capable de s’abonner à « toutes les catégories ». Mattermost ne semble pas en être capable.

J’ai essayé toute la syntaxe à laquelle je peux penser, mais sans succès. Des conseils ??

Merci d’avance…

1 « J'aime »

@david - désolé pour la mention, mais il me manque des publications discourse dans mon intégration de chat. y a-t-il une chance que vous surveilliez encore ce fil de discussion ?

Pour le moment, les sous-catégories ne sont pas automatiquement incluses lorsque vous « suivez » une catégorie. Vous devrez soit ajouter chaque sous-catégorie individuelle, soit utiliser l’option « toutes les catégories ».

1 « J'aime »

Salut, merci de m’avoir répondu !!! Ce serait génial si je pouvais comprendre « comment ». Les seules catégories que le plugin semble reconnaître sont les catégories les plus hautes ?

J’ai trouvé/essayé l’option « toutes les catégories » mais cela ne semble pas fonctionner non plus ? Mec, j’aimerais vraiment juste utiliser « tout », ce serait IDÉAL… Est-ce que je « fais ça mal » ? Voir la capture d’écran ci-dessous

Salut @david… le problème avec ce qui précède est que je n’arrive pas à comprendre comment m’abonner à une « sous-catégorie », ni s’il y a un « tout » que je peux utiliser ? J’aimerais vraiment résoudre ce problème.

Merci !

1 « J'aime »

Désolé pour le retard de réponse @Clint_Dovholuk !

En utilisant les commandes slash, je pense que vous pouvez regarder toutes les catégories comme ceci :

/discourse watch

Mais le moyen le plus simple de configurer les règles de notification est d’utiliser le panneau d’administration de Discourse. Là, toutes les options sont clairement affichées dans l’interface utilisateur, il n’est donc pas nécessaire d’essayer de comprendre la syntaxe exacte de la ‘commande slash’. Consultez la section ‘configuration des règles’ de la documentation du plugin pour plus d’informations.

2 « J'aime »

Merci @david .

J’ai posté une capture d’écran de la commande slash auparavant. Je la republie ici… vous pouvez voir que les ‘sous-catégories’ ne sont pas listées un ou deux posts plus haut…

J’avais essayé la page d’administration auparavant, mais elle fermait immédiatement le menu déroulant lorsque je l’utilisais… Cependant, appuyer sur la ‘flèche vers le bas’ a semblé débloquer ce dont j’avais besoin.

J’aimerais VRAIMENT une option ‘tout’. Est-ce un plugin que je peux modifier/réparer d’une manière ou d’une autre ??? Pour l’instant, ça ressemble à ça :confused:

[quote=“Clint_Dovholuk, post:19, topic:66811”]
Pour l’instant, ça ressemble à ça
[/quote]Pour recevoir des notifications sur tous les sujets, je vous suggère de supprimer toutes ces règles spécifiques aux catégories, puis d’ajouter une seule règle « toutes les catégories ».

[quote=“Clint_Dovholuk, post:19, topic:66811”]
J’avais déjà essayé la page d’administration, mais la liste déroulante se fermait immédiatement lorsque je l’utilisais…
[/quote]Pouvez-vous partager plus de détails sur ce que vous voyez ici ? Des captures d’écran ou une vidéo seraient très utiles !

Lorsque vous modifiez une « règle », vous devriez pouvoir utiliser la liste déroulante de catégories pour choisir « (aucune catégorie) ».

Une fois enregistrée, elle devrait ressembler à ceci :

(« aucune catégorie » dans la liste déroulante est clairement une mauvaise description de ce que cela signifie réellement. Je vais corriger cela)

[quote=“Clint_Dovholuk, post:19, topic:66811”]
J’avais posté une capture d’écran de la commande slash précédemment. Je la reposte ici… vous pouvez voir que les « sous-catégories » ne sont pas listées un ou deux posts plus haut…
[/quote]Je pense que les sous-catégories sont omises du texte d’aide par souci d’espace. Mais vous pouvez toujours vous abonner à des catégories en utilisant leur « slug » (le nom de la sous-catégorie de l’URL). Donc, dans le cas de #howto:admins ici sur Meta, ce serait /discourse watch admins.