Lösung für Fehler:
1) DiscourseChat::ProviderError
2) {\"ok\":false,\"error\":\"not_in_channel\"}
Ich versuche, dies deutlicher zu machen, da die Antwort leider schwer zu finden war. Der Prozess zur Erstellung der Slack-App hat sich seit diesen Anweisungen etwas geändert. Und es scheint, dass die eigentliche Integration des Bots mit einem Kanal in Slack ebenfalls etwas mehr Einrichtung erfordert.
Von meinem Slack-Workspace aus konnte ich bestätigen, dass die App funktioniert, indem ich den Bot @discourse per Direktnachricht anschrieb und die Befehle /discourse ausführte. Doch in den Einstellungen des Discourse-Plugins erhielt ich Fehlermeldungen, konnte weder einen Kanal festlegen noch eine Testnachricht senden.
Wie man es umsetzt
EDIT: In den Antworten unten finden Sie aktualisierte Informationen. Ich habe versucht, die zusätzlichen Schritte hier bis zum 06.04.2020 einzuarbeiten. Bitte kommentieren oder ändern Sie diese bei Bedarf. – dp
- Bot-Berechtigungen: Die Berechtigung
chat:write.customizemuss hinzugefügt werden, damit der Slash-Befehl/discoursefunktioniert. Ich habe auchchat:writehinzugefügt. - Sie müssen den Kanal in Slack erstellen. Führen Sie dann entweder die
/discourse-Befehle im Kanal aus oder richten Sie eine Regel in Discourse ein. - Sie müssen den Bot manuell dem gewünschten Kanal hinzufügen (zumindest, um ein Transkript zu posten)! Dies können Sie im privaten Chat mit dem Bot in Slack tun:
"Konversationseinstellungen" > "Diese App zu einem Kanal hinzufügen". - Dann müssen Sie, und das ist wichtig, den Discourse-Bot-Benutzer dem Kanal hinzufügen. Ich konnte dies nicht über die normalen Schaltflächen „Benutzer hinzufügen“ oder „App hinzufügen“ im Kanal bewerkstelligen. ABER ich war erfolgreich, indem ich eine Nachricht an „@discourse“ im Kanal sendete – danach wurde ich von Slack mit der Meldung „@discourse ist nicht in diesem Kanal, möchten Sie ihn hinzufügen?“ aufgefordert.
- Danach konnte ich eine Testnachricht erfolgreich in den Plugin-Einstellungen senden

Hinweis: Bei der Einrichtung der Slack-App habe ich den App-Namen als @discourse festgelegt.