Mattermost-Benachrichtigungen mit dem discourse-chat-integration-Plugin einrichten

Diese #howto-Anleitung beschreibt, wie der in discourse-chat-integration enthaltene Mattermost-Anbieter eingerichtet wird.

Aktivieren

Das Plugin discourse-chat-integration ist in Discourse enthalten. Eine separate Installation ist nicht erforderlich. Um es zu aktivieren, stellen Sie sicher, dass die Site-Einstellung chat_integration_enabled eingeschaltet ist.

Benachrichtigungen

Mattermost einrichten

Ihr Mattermost-Server muss von Ihrem Discourse-Server aus erreichbar sein, um eine Verbindung herzustellen. Es wird empfohlen, HTTPS zu verwenden, HTTP sollte jedoch ebenfalls funktionieren.

  1. In Ihrer Mattermost-Systemkonsole stellen Sie unter Benutzerdefinierte Integrationen sicher, dass folgende Einstellungen aktiviert sind:

    • Eingehende Webhooks aktivieren
    • Ermöglichen, dass Integrationen Benutzernamen überschreiben
    • Ermöglichen, dass Integrationen Profilbild-Icons überschreiben
    • Benutzerdefinierte Slash-Befehle aktivieren (falls Sie Slash-Befehle verwenden möchten)
  2. Melden Sie sich bei Ihrem Team an, klicken Sie oben links auf Ihren Namen und dann auf \u003ckbd\u003eIntegrationen\u003c/kbd\u003e.

  3. Wählen Sie \u003ckbd\u003eEingehende Webhooks\u003c/kbd\u003e und dann \u003ckbd\u003eEingehenden Webhook hinzufügen\u003c/kbd\u003e.

  4. Geben Sie einen „Anzeigenamen“ und eine „Beschreibung“ ein und wählen Sie einen beliebigen Kanal aus der Liste aus (es ist egal, welcher, Discourse wird dies überschreiben).

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

  1. Klicken Sie auf \u003ckbd\u003eSpeichern\u003c/kbd\u003e.

  2. Kopieren Sie die bereitgestellte URL; Sie benötigen sie später.

Discourse einrichten

  1. Fügen Sie die kopierte URL in die Site-Einstellung chat_integration_mattermost_webhook_url ein.

  2. Aktivieren Sie chat_integration_mattermost_enabled.

  3. Richten Sie einige „Regeln“ für Ihre Kanäle gemäß den Anweisungen im discourse-chat-integration-Beitrag ein. Kanal-Bezeichner sehen wie #town-square oder @davidtaylor aus.

  4. Klicken Sie auf einem der Kanäle auf \u003ckbd\u003eTesten\u003c/kbd\u003e, um zu überprüfen, ob alles funktioniert. Sie sollten eine Nachricht wie diese erhalten:

  5. :unicorn:

Slash-Befehle

Mit Slash-Befehlen können Sie Ihre Regeln direkt aus Mattermost heraus verwalten. So richten Sie sie ein:

  1. Falls noch nicht geschehen, aktivieren Sie Benutzerdefinierte Slash-Befehle aktivieren in Ihrer Mattermost-Systemkonsole.

  2. Melden Sie sich bei Ihrem Team an, klicken Sie oben links auf Ihren Namen und dann auf \u003ckbd\u003eIntegrationen\u003c/kbd\u003e.

  3. Wählen Sie \u003ckbd\u003eSlash-Befehle\u003c/kbd\u003e und dann \u003ckbd\u003eSlash-Befehl hinzufügen\u003c/kbd\u003e.

    • Anzeigename: Discourse
    • Beschreibung: Verwalten von Discourse-Benachrichtigungsregeln
    • Befehls-Auslösewort: discourse
    • Anfrage-URL: \u003cyour-discourse-url\u003e/chat-integration/mattermost/command
    • Anfrage-Methode: POST
    • Antwort-Benutzername: Discourse
    • Antwort-Icon: (optional eine Icon-URL angeben)
    • Autovervollständigung: :ballot_box_with_check:
    • Autovervollständigungshinweis: Verwalten der Integration dieses Kanals mit Discourse
    • Autovervollständigungsbeschreibung: [watch|follow|mute|delete|status|help]
  4. Klicken Sie auf \u003ckbd\u003eSpeichern\u003c/kbd\u003e.

  5. Kopieren Sie das bereitgestellte „Token“ und fügen Sie es in Ihre Discourse-Site-Einstellungen unter chat_integration_mattermost_incoming_webhook_token ein.

  6. Senden Sie /discourse help in Ihrem Mattermost-Kanal. Sie sollten eine Nachricht mit einer Liste möglicher Befehle erhalten.

  7. :1st_place_medal:

11 „Gefällt mir“

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 „Gefällt mir“

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

1 „Gefällt mir“

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 „Gefällt mir“

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 „Gefällt mir“

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 „Gefällt mir“

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 „Gefällt mir“

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

Ich habe die Chat-Integration mit Mattermost aktiviert – ich habe alle „Top-Level“-Kategorien abonniert, die über den Befehl „/discourse watch“ angezeigt werden, aber Beiträge zu „Unterkategorien“ werden nicht erfasst.

Nehmen Sie diesen Beitrag: https://openziti.discourse.group/t/this-is-a-test-topic-in-the-sdks-category/271
Er wird ordnungsgemäß an Slack weitergeleitet – aber NICHT an Mattermost. Slack kann „alle Kategorien“ abonnieren. Mattermost scheint dazu nicht in der Lage zu sein.

Ich habe alle Syntax ausprobiert, die mir einfällt, aber ohne Erfolg. Irgendwelche Tipps??

Vielen Dank im Voraus…

1 „Gefällt mir“

@david – Entschuldigung für die Erwähnung, aber mir fehlen Discourse-Beiträge in meiner Chat-Integration. Hast du zufällig diesen Thread noch im Auge?

Derzeit werden Unterkategorien nicht automatisch einbezogen, wenn Sie eine Kategorie „beobachten“. Sie müssen entweder jede einzelne Unterkategorie hinzufügen oder die Option „Alle Kategorien“ verwenden.

1 „Gefällt mir“

Hallo, danke für die Antwort!!! Das wäre super, wenn ich herausfinden könnte, „wie“. Die einzigen Kategorien, die das Plugin zu erkennen scheint, sind die obersten Kategorien?

Ich habe die Option „Alle Kategorien“ gefunden/ausprobiert, aber auch das scheint nicht zu funktionieren? Mann, ich würde wirklich gerne einfach „alle“ verwenden, das wäre IDEAL… Mache ich es „falsch“? Siehe Screenshot unten

Hallo @david… das Problem mit dem oben genannten ist, dass ich nicht herausfinden kann, wie ich eine „Unterkategorie“ abonnieren kann, noch scheint es ein „Alle“ zu geben, das ich verwenden kann? Ich würde das gerne herausfinden.

Danke!

1 „Gefällt mir“

Entschuldigen Sie die verspätete Antwort @Clint_Dovholuk!

Mit Slash-Befehlen können Sie glaube ich alle Kategorien wie folgt beobachten:

/discourse watch

Der einfachste Weg, Benachrichtigungsregeln zu konfigurieren, ist jedoch über das Discourse-Admin-Panel. Dort sind alle Optionen übersichtlich in der Benutzeroberfläche angezeigt, sodass Sie nicht versuchen müssen, die genaue Syntax für den „Slash-Befehl“ herauszufinden. Weitere Informationen finden Sie im Abschnitt ‘Regeln konfigurieren’ der Dokumentation des Plugins.

2 „Gefällt mir“

Danke @david.

Ich habe zuvor einen Screenshot vom Slash-Befehl gepostet. Ich poste ihn hier erneut… Sie können sehen, dass die ‘Unterkategorien’ ein oder zwei Beiträge weiter oben nicht aufgeführt sind…

Ich hatte zuvor die Admin-Seite ausprobiert, aber sie schloss das Dropdown sofort, als ich sie benutzte… Das Drücken des ‘Pfeils nach unten’ schien jedoch das zu lockern, was ich brauchte.

Ich hätte WIRKLICH gerne eine ‘Alle’-Option. Ist das ein Plugin, das ich irgendwie bearbeiten/reparieren kann??? Im Moment sieht es so aus :confused:

Um Benachrichtigungen für alle Themen zu erhalten, empfehle ich, alle kategoriespezifischen Regeln zu löschen und dann eine einzige Regel für „alle Kategorien“ hinzuzufügen.

Können Sie mehr Details dazu geben, was Sie hier sehen? Screenshots oder ein Video wären großartig!

Beim Bearbeiten einer „Regel“ sollten Sie das Kategoriedropdown verwenden können, um „(keine Kategorie)“ auszuwählen.

Nach dem Speichern sollte es so aussehen:

(„keine Kategorie“ im Dropdown ist eine eindeutig schlechte Beschreibung dessen, was es tatsächlich bedeutet. Ich werde das beheben)

Ich glaube, Unterkategorien werden aus dem Hilfetext aus Platzgründen weggelassen. Sie können sich aber immer noch für Kategorien anmelden, indem Sie deren „Slug“ (den Namen der Unterkategorie aus der URL) verwenden. Im Fall von #howto:admins hier auf Meta wäre es also /discourse watch admins.