Zum Inhalt

Slack-Integration

Ihrer Installation von Drovio Server kann eine Slack-Integration hinzugefügt werden. Sie erlaubt Benutzern, einen Anruf direkt aus Slack heraus zu starten, per Slash-Befehl oder über die Anruf-Schaltfläche, wobei Letztere eine Freigabe durch Slack erfordert. Sie müssen bei Slack eine Slack-App erstellen.

Eine Slack-App erstellen

Rufen Sie api.slack.com/apps auf und klicken Sie dann auf Create New App.

Eine neue Slack-App erstellen

Geben Sie einen Namen Ihrer Wahl ein, Drovio ist gut geeignet, und wählen Sie einen Entwicklungs-Workspace, in dem Sie die Integration testen können.

Die Slack-App benennen

Die Seite der Slack-Integration in der Administrationsoberfläche zeigt die drei URLs an, die Sie Slack weiter unten angeben, gebildet aus der öffentlichen URL Ihres Servers.

Slash-Befehl

Klicken Sie im linken Navigationsbereich auf Slash Commands und dann auf Create New Command:

  • Command: /drovio
  • Request URL: https://ihre-drovio-server-url/slack/app/command
  • Short Description: Pair remotely with Drovio (the app must be installed)
  • Usage Hint: [help, invite, add]
  • Escape channels, users, and links sent to your app: aktiviert
  • Klicken Sie auf Save.

OAuth & Permissions

Klicken Sie im linken Navigationsbereich auf OAuth & Permissions:

  • Redirect URLs: fügen Sie https://ihre-drovio-server-url/slack/app/install hinzu.
  • Scopes: fügen Sie die folgenden OAuth-Scopes hinzu:
    • calls:write
    • commands
    • users:read
    • users:read.email

Event Subscriptions

Klicken Sie im linken Navigationsbereich auf Event Subscriptions:

  • Enable Events: On
  • Request URL: https://ihre-drovio-server-url/slack/app/event

    Note

    Slack prüft die URL, sobald sie eingegeben wird. Konfigurieren Sie zuerst die Integration: Die URL antwortet, sobald die Integration mit ihrem Signing Secret aktiviert ist.

  • Subscribe to bot events: klicken Sie auf Add Bot User Event:

    • app_uninstalled
    • tokens_revoked
  • Klicken Sie auf Save Changes.

Socket Mode (optional)

Um keinen öffentlichen Endpunkt bereitstellen zu müssen, können Sie die Ereignisse von Slack über WebSocket empfangen. Klicken Sie im linken Navigationsbereich auf Socket Mode:

  • Enable Socket Mode: On
  • Erstellen Sie das App-Level-Token und bewahren Sie es auf.

Die Konfiguration der Slack-App ist damit abgeschlossen. Klicken Sie im linken Bereich auf Basic Information: Die dort angezeigten Informationen benötigen Sie, um die Integration zu konfigurieren.

Die Integration konfigurieren

Öffnen Sie in der Administrationsoberfläche Integrations, dann Configure auf der Karte Slack.

Feld Woher es kommt
Status Enabled oder Disabled
Client ID Basic Information der Slack-App
Client secret Basic Information der Slack-App
Signing secret Basic Information der Slack-App
Connection Request URLs oder Socket Mode, wenn Sie ihn in der Slack-App aktiviert haben
App-level token Das mit Socket Mode erstellte Token, wenn Sie ihn in der Slack-App aktiviert haben, sonst leer
Call failures Benachrichtigt die Administratoren per E-Mail, wenn ein Slack-Anruf nicht gestartet, aktualisiert oder beendet werden kann

Die Seite zeigt außerdem die Redirect URL, die URL des Slash-Befehls und die URL der Ereignisse an, die Sie in der Slack-App eintragen. Jeder Administrator kann die E-Mails zu fehlgeschlagenen Anrufen unter Notifications, bei A Slack call fails, abbestellen.

Das Speichern wirkt ab dem nächsten Aufruf, ohne Neustart.

Den Status auf Disabled zu setzen stoppt die Anrufe und Befehle aus Slack, lässt die Seite aber weiterhin zugänglich, um die Integration zu konfigurieren.

Sobald alles konfiguriert ist, öffnen Sie Slack und wechseln in Ihren Entwicklungs-Workspace. Geben Sie /drovio help ein, um loszulegen.

Konfigurationsreferenz

Dies sind die Schlüssel des Elements slack in settings.conf, falls Sie es lieber direkt bearbeiten. In einem Cluster kann die Administrationsoberfläche sie nicht speichern: Jeder Server liest seine eigene Konfigurationsdatei, die auf jedem einzelnen von ihnen bearbeitet werden muss.

Schlüssel Standard Bedeutung
enabled false Aktiviert die Integration
client_id Client ID der Slack-App
client_secret Client Secret der Slack-App
signing_secret Signing Secret der Slack-App
enable_admin_emails false Benachrichtigt die Administratoren per E-Mail, wenn ein Slack-Anruf fehlschlägt
websocket false Empfängt die Ereignisse und Befehle über Socket Mode
app_socket_token App-Level-Token von Socket Mode, falls aktiviert, sonst leer
ignore_signature false Akzeptiert Anfragen, die Slack nicht signiert hat. Nur für die Entwicklung, niemals in der Produktion

Integration in Slack-Anrufe

Der Befehl /drovio ohne Parameter erfordert eine Freigabe durch Slack, da er deren Anruffunktion betrifft. Sie können Drovio außerdem als Standard-Anrufanwendung in Slack festlegen.