Slack

Verbinden Sie einen Slack-Workspace mit ElevenLabs Agents, um mit einem Agenten in Channels und Threads zu chatten

Überblick

Die Slack-Integration ermöglicht einem ElevenLabs-Agenten, Nachrichten in Slack zu senden und zu empfangen. Nach der Verbindung antwortet der Agent in einem Thread, wenn er in einem Channel erwähnt wird, und verwaltet für jeden Thread einen separaten Gesprächskontext.

Funktionen

FunktionUnterstützung
Zero Retention Mode (ZRM)Nicht unterstützt
Anhänge in TriggernBilder (PNG, JPEG, GIF, WebP) und PDF-Dateien in eingehenden Nachrichten, wenn Dateianhänge zulassen in den Agenteneinstellungen aktiviert ist und das LLM des Agenten Bild- oder Dokumenteingaben unterstützt
Anhänge in ToolsNicht unterstützt — Tools verarbeiten nur Text

Einrichtung

Die Integration bietet zwei Verbindungsmöglichkeiten:

  • OAuth — Installieren Sie die gemeinsame ElevenLabs-Slack-App in Ihrem Workspace. Ein Slack-Workspace ist einer ElevenLabs-Verbindung zugeordnet. Schnellste Einrichtung, keine Verwaltung einer Slack-App erforderlich.
  • Eigene App verwenden — Verbinden Sie sich mit einer Slack-App, die Sie erstellen und besitzen. Verwenden Sie diese Option, wenn der Bot unter Ihrer Marke erscheinen soll oder Ihre Workspace-Richtlinien verlangen, dass Apps von einem Admin installiert werden.

Option A — OAuth

Der Nutzer, der die App installiert, muss berechtigt sein, Apps zum Ziel-Slack-Workspace hinzuzufügen.

1

Integrationsseite öffnen

Gehen Sie im ElevenLabs-Dashboard zu Agents > Integrations und wählen Sie Slack aus.

2

Auf Connect klicken

Wählen Sie die OAuth-Anmeldedaten und klicken Sie auf Connect. Sie werden zu Slack weitergeleitet, um den Workspace für die Installation der ElevenLabs-App auszuwählen und die angeforderten Berechtigungsbereiche zu genehmigen.

3

Weiterleitung abschließen

Nach der Genehmigung leitet Slack Sie zurück zu ElevenLabs weiter und die Verbindung wird erstellt. Die Slack-Workspace-ID wird automatisch erfasst und bei der Konfiguration von Triggern verwendet.

Option B — Eigene Slack-App verwenden

Verwenden Sie diese Option, wenn der Bot unter Ihrem eigenen App-Namen und -Icon erscheinen soll oder wenn Apps in Ihrem Workspace von Ihrem Admin geprüft und installiert werden müssen.

1

Slack-App erstellen

Gehen Sie zu Slack API: Your Apps und klicken Sie auf Create New App > From scratch. Benennen Sie die App und wählen Sie den Slack-Workspace aus, in dem sie installiert werden soll.

2

Bot-Berechtigungen hinzufügen

Öffnen Sie OAuth & Permissions und fügen Sie die folgenden Bot-Token-Berechtigungsbereiche hinzu:

app_mentions:read, channels:history, channels:join, channels:manage, chat:write, files:read, groups:history, groups:write, im:history, reactions:write.

Klicken Sie dann auf Install to Workspace und genehmigen Sie die Installation. Kopieren Sie das Bot User OAuth Token (beginnt mit xoxb-).

3

Signierungsgeheimnis kopieren

Öffnen Sie Basic Information > App Credentials und kopieren Sie das Signing Secret.

4

Verbindung in ElevenLabs erstellen

Gehen Sie im ElevenLabs-Dashboard zu Integrations, klicken Sie auf die Schaltfläche Add integration und wählen Sie Slack. Wählen Sie die Anmeldedaten Bring your own app. Fügen Sie das Bot-Token und das Signierungsgeheimnis ein und speichern Sie. ElevenLabs überprüft das Token bei Slack und erfasst Ihre Workspace-ID.

Nach dem Erstellen der Verbindung zeigt die Verbindungsseite zwei Webhook-URLs an, die aus der Identität Ihrer Slack-App abgeleitet werden. Dieselbe Slack-App, die aus demselben ElevenLabs-Workspace erneut verbunden wird, erzeugt immer dieselben URLs — Sie können die Verbindung also löschen und neu erstellen, ohne die Konfiguration Ihrer Slack-App erneut aktualisieren zu müssen. Lassen Sie diese Seite für die nächsten Schritte geöffnet.

5

Event Subscriptions konfigurieren

Öffnen Sie in Ihrer Slack-App Event Subscriptions, aktivieren Sie Events und fügen Sie die Events URL von der ElevenLabs-Verbindungsseite unter Request URL ein. Slack überprüft die URL mit dem von Ihnen bereitgestellten Signierungsgeheimnis.

Abonnieren Sie Bot-Events danach, wie sich der Agent in Channels verhalten soll:

  • Nur Erwähnungen — abonnieren Sie app_mention. Der Agent antwortet nur, wenn ein Nutzer den Bot mit @ erwähnt.
  • Alle Nachrichten — abonnieren Sie message.channels und message.groups. Der Agent antwortet auf jede Nachricht in Channels, in denen sich der Bot befindet, ohne dass eine Erwähnung erforderlich ist.

Wenn Sie den Trigger SlackDirectMessage verwenden, abonnieren Sie außerdem message.im.

Abonnieren Sie nicht gleichzeitig app_mention und die Channel-Events message.*, sofern Sie keine doppelten Zustellungen verarbeiten möchten. Wenn ein Nutzer den Bot mit @ erwähnt, kann Slack sowohl ein app_mention-Event als auch ein message-Event für dieselbe Nachricht senden, wodurch der Agent zweimal antwortet.

6

Interaktivität konfigurieren

Öffnen Sie Interactivity & Shortcuts, aktivieren Sie die Interaktivität und fügen Sie die Interactivity URL von der ElevenLabs-Verbindungsseite unter Request URL ein.

7

Bei Aufforderung neu installieren

Wenn Slack Sie nach Änderungen an Berechtigungsbereichen oder Events zur Neuinstallation der App auffordert, führen Sie diese aus, damit die Änderungen übernommen werden.

Ein Slack-Workspace kann über die gemeinsame ElevenLabs-OAuth-App nur einmal verbunden werden. Eine Neuinstallation aus einem anderen ElevenLabs-Workspace führt zum Fehler duplicate Slack workspace — entfernen Sie zuerst die bestehende Verbindung. Verbindungen mit eigenen Apps sind unabhängig und stehen nicht in Konflikt.

OAuth-Berechtigungsbereiche

Die ElevenLabs-Slack-App fordert die folgenden Berechtigungsbereiche an:

BerechtigungsbereichZweck
app_mentions:readNachrichten empfangen, in denen der Bot mit @ erwähnt wird.
channels:historyNachrichten in öffentlichen Channels lesen, in denen sich der Bot befindet.
channels:joinDem Bot erlauben, öffentlichen Channels beim Erstellen eines Triggers automatisch beizutreten.
channels:manageAktionen zur Channel-Verwaltung ausführen.
chat:writeNachrichten in Channels und Threads posten.
files:readAn Nachrichten angehängte Dateien herunterladen, damit der Agent Bilder und PDFs lesen kann.
groups:historyNachrichten in privaten Channels lesen, in denen sich der Bot befindet.
groups:writeIn privaten Channels agieren.
im:historyNachrichten in Direktnachrichten-Channels mit dem Bot lesen.
reactions:writeReaktionen hinzufügen und entfernen; wird für die Denk-Anzeige bei Nachrichten und Agent-Tools verwendet.

Agent-Tools

Wenn Sie einem Agenten Slack-Tools hinzufügen, stehen die folgenden integrierten Tools zur Verfügung:

ToolBeschreibung
slack_add_reactionFügt eine Emoji-Reaktion hinzu. Standardmäßig werden Channel und Nachrichten-ts aus integration__slack_channel_id und integration__slack_trigger_message_ts übernommen; das Modell wählt nur den Emoji-Shortcode (ohne Doppelpunkte), zum Beispiel thumbsup. Außerhalb von durch Slack ausgelösten Gesprächen fehlen diese Variablen, sofern Sie sie nicht festlegen — passen Sie das Tool-Schema an, wenn das Modell Channel und ts explizit übergeben muss.
slack_remove_reactionEntfernt eine Emoji-Reaktion (dieselben Standardwerte wie beim Hinzufügen). Laut Slack darf der aufrufende Bot nur Reaktionen entfernen, die er selbst hinzugefügt hat; siehe reactions.remove.

Verbindung entfernen

Wenn Sie die Verbindung auf der Seite Integrations entfernen, wird die ElevenLabs-Slack-App aus dem Slack-Workspace deinstalliert. Nach dem Entfernen ist der Bot in keinem Channel mehr vorhanden.

Bei Verbindungen mit eigenen Apps kann ElevenLabs eine App, die es nicht besitzt, nicht deinstallieren — durch das Entfernen der Verbindung wird nur die lokale Zuordnung gelöscht. Um den Bot vollständig aus Ihrem Slack-Workspace zu entfernen, deinstallieren Sie die App in Ihren Slack-Admin-Einstellungen.

Trigger konfigurieren

Die Integration stellt einen einzelnen Trigger bereit: SlackMessage. Er wird ausgelöst, wenn der Bot eine neue Nutzernachricht in einem konfigurierten Channel sieht.

1

SlackMessage-Trigger hinzufügen

Fügen Sie auf der Konfigurationsseite Ihres Agenten einen neuen Trigger hinzu und wählen Sie SlackMessage.

2

Agent und Channel auswählen

Konfigurieren Sie die Trigger-Felder:

  • Agent: Der Agent, der das Gespräch bearbeitet.
  • Channel ID: Die Slack-Channel-ID, zum Beispiel C0123456789. Die Benutzeroberfläche bietet einen Deep Link, um den Channel in Slack zu öffnen.
3

Trigger speichern

Speichern Sie den Trigger. ElevenLabs lädt den Bot automatisch in öffentliche Channels ein. Wenn Sie den Trigger später entfernen, verlässt der Bot diesen Channel.

Slack erlaubt Apps nicht, privaten Channels automatisch beizutreten. Führen Sie bei einem privaten Channel nach dem Speichern des Triggers in diesem Channel /invite @Eleven aus, damit der Bot Nachrichten sehen kann.

Pro Paar aus (Slack workspace, channel) ist nur ein Trigger zulässig. Bearbeiten Sie den bestehenden Trigger, statt ein Duplikat zu erstellen.

DM-Trigger konfigurieren

Der Trigger SlackDirectMessage ermöglicht jedem Slack-Nutzer, mit dem Agenten zu chatten, indem er dem Bot eine Direktnachricht sendet. Anders als beim Channel-Trigger ist keine @-Erwähnung nötig — jede Nachricht, die ein Nutzer dem Bot in einer DM sendet, wird verarbeitet.

1

SlackDirectMessage-Trigger hinzufügen

Fügen Sie auf der Konfigurationsseite Ihres Agenten einen neuen Trigger hinzu und wählen Sie SlackDirectMessage.

2

Agent auswählen

Wählen Sie den Agent aus, der DM-Gespräche bearbeitet.
3

Trigger speichern

Speichern Sie den Trigger. Jeder Slack-Nutzer im Workspace kann nun eine DM mit dem Bot öffnen und ein Gespräch beginnen.

Stellen Sie bei eigenen Apps sicher, dass Sie das Bot-Event message.im abonniert und den Bot-Berechtigungsbereich im:history hinzugefügt haben. Installieren Sie die App nach dem Hinzufügen bei Aufforderung neu.

Pro Slack-Verbindung ist nur ein DM-Trigger zulässig. Um den Agenten zu ändern, bearbeiten Sie den bestehenden Trigger.

Mit dem Bot in Slack sprechen

Sobald der Trigger aktiv ist und sich der Bot im Channel befindet, beginnen Sie ein Gespräch in einem Channel-Thread. Wie Sie den Thread fortsetzen, hängt von den Event-Abonnements Ihrer Slack-App ab (OAuth verwendet das Verhalten „nur Erwähnungen“).

Nur Erwähnungen (app_mention)

1

Thread mit einer Erwähnung beginnen

Erwähnen Sie den Bot in einem Channel, um einen neuen Thread zu beginnen, zum Beispiel @Eleven what's the status of order 1234?. Der Bot antwortet in einem Thread unter dieser Nachricht.

2

Thread fortsetzen

Erwähnen Sie den Bot erneut in jeder Nachricht, auf die er antworten soll, auch bei Nachfragen im selben Thread. Nachrichten ohne Erwähnung werden ignoriert.

Alle Nachrichten (message.channels, message.groups)

1

Thread beginnen

Senden Sie eine beliebige Nachricht in einem Channel, in dem der Bot vorhanden ist. Der Bot antwortet in einem Thread unter dieser Nachricht. Sie müssen den Bot nicht mit @ erwähnen.

2

Thread fortsetzen

Antworten Sie im selben Thread, ohne den Bot zu erwähnen. Jede neue Nachricht im Thread wird verarbeitet.

Während der Bot eine Antwort generiert, fügt er der auslösenden Nachricht des Nutzers die Reaktion :eyes: hinzu und entfernt sie, sobald die Antwort gepostet wurde.

Die Einstellung Respond to messages from im Trigger „Channel Message“ steuert, wer den Agenten auslösen kann:

  • Only humans (Standard): Nachrichten von anderen Bots und aus Slack-Workflows werden ignoriert. Dies ist die sichere Standardeinstellung und bewahrt das Verhalten bestehender Trigger.
  • Humans and bots: Nachrichten von anderen Bots und von Workflows gepostete Nachrichten (einschließlich älterer bot_message-Events) lösen den Agenten ebenfalls aus.

Der Bot ignoriert immer seine eigenen Nachrichten — anhand der Bot-Nutzer- und App-Identität im signierten Webhook von Slack — unabhängig von der Einstellung. Er antwortet daher nie auf sich selbst, auch nicht bei Selbst-Erwähnung. Außerdem ignoriert er weiterhin bearbeitete Nachrichten (message_changed) und gelöschte Nachrichten (message_deleted). Er verarbeitet message- und app_mention-Events und funktioniert in öffentlichen wie privaten Channels.

Ältere Bot-Events, die nur eine bot_id enthalten, identifizieren den Absender, aber nicht die empfangende App. Sie werden als Nachrichten eines anderen Bots behandelt; die Erkennung von Selbstschleifen für diese Slack-App verwendet die Bot-Nutzer- oder App-Identität, die in modernen Slack-Event-Payloads enthalten ist.

Wenn Ihre Slack-App sowohl app_mention als auch message.channels / message.groups abonniert, kann eine einzelne @-Erwähnung zwei Agent-Antworten auslösen. Abonnieren Sie entweder den einen oder den anderen Modus.

Gesprächsmodell

Die Gesprächs-ID ist für jedes (agent_id, channel_id, thread_ts) deterministisch:

  • Ein neuer Slack-Thread wird einem neuen ElevenLabs-Gespräch zugeordnet.
  • Das Fortsetzen desselben Threads setzt auch dasselbe Gespräch fort, einschließlich Transkriptverlauf und dynamischer Variablen.

Beim Erstellen des Chatverlaufs liest der Bot den Slack-Thread direkt. Nachrichten von Slack-Mitgliedern und anderen Bots werden als Nutzereingaben behandelt, während die eigenen Nachrichten des Bots als Agent-Eingaben behandelt werden. Erwähnungen des Bot-Nutzers (<@BOT_USER_ID>) werden in @<agent_name> umgeschrieben, bevor der Agent sie verarbeitet.

Dynamische Variablen

Wenn ein Agent über Slack ausgeführt wird, sind die folgenden dynamischen Variablen in Prompts und Tools verfügbar:

VariableBeschreibung
integration__slack_channel_idSlack-Channel-ID.
integration__slack_thread_tsZeitstempel des Slack-Threads.
integration__slack_user_idSlack-Absender-ID. Dies ist eine Nutzer-ID oder bei älteren Bot-Events ohne Nutzer eine Bot-ID.
integration__slack_team_idSlack-Workspace-ID (Team-ID).
integration__slack_connection_idID der ElevenLabs-Integrationsverbindung.
integration__slack_trigger_message_tsSlack-ts der Nachricht, die diesen Agent-Turn ausgelöst hat (eindeutige Nachrichten-ID im Channel).

Unter dynamische Variablen erfahren Sie, wie Sie diese in Prompts und Tool-Aufrufen referenzieren.

Fehlerbehebung

Dateianhänge funktionieren nicht

Wenn ein Nutzer in Slack ein Bild oder PDF anhängt, der Agent es jedoch nicht verarbeitet (oder sich so verhält, als wäre keine Datei gesendet worden), führen Sie die folgenden Prüfungen durch.

1

Prüfen, ob die Slack-App files:read hat

Der Bot benötigt den Bot-Berechtigungsbereich files:read, um Anhänge von Slack herunterzuladen.

  • Eigene App verwenden — öffnen Sie Ihre App unter Slack API: Your Apps, gehen Sie zu OAuth & Permissions und prüfen Sie, ob files:read unter Bot Token Scopes aufgeführt ist. Wenn Sie ihn kürzlich hinzugefügt haben, installieren Sie die App erneut in Ihrem Workspace, damit das Token den neuen Berechtigungsbereich übernimmt.
2

Prüfen, ob das Agentenmodell Dateieingaben unterstützt

Dateianhänge werden nur weitergeleitet, wenn das LLM des Agenten multimodale Eingaben unterstützt — Bildeingaben und/oder Dokumenteingaben (PDF), abhängig vom Dateityp. Öffnen Sie in der Agentenkonfiguration den Tab Agent und prüfen Sie das ausgewählte Modell. Wenn das Modell den Anhangtyp nicht unterstützt, wechseln Sie zu einem Modell, das dies tut.

3

Dateianhänge in den Agenteneinstellungen zulassen

Öffnen Sie auf der Konfigurationsseite des Agenten Settings > Advanced. Aktivieren Sie unter Multimodal input die Option Allow file attachments. Speichern Sie den Agenten. Ohne diese Einstellung werden Slack-Anhänge ignoriert, selbst wenn die Slack-App und das Modell Dateien unterstützen.