Slack
Połącz workspace Slack z ElevenLabs Agents, aby rozmawiać z agentem na kanałach i w wątkach
Omówienie
Integracja ze Slackiem pozwala agentowi ElevenLabs wysyłać i odbierać wiadomości w Slacku. Po połączeniu agent odpowiada w wątku, gdy zostanie wspomniany na kanale, i zachowuje osobny kontekst rozmowy dla każdego wątku.
Możliwości
Konfiguracja
Integrację możesz połączyć na dwa sposoby:
- OAuth — zainstaluj wspólną aplikację Slack ElevenLabs w swoim workspace. Jeden workspace Slack odpowiada jednemu połączeniu ElevenLabs. To najszybsza konfiguracja, bez zarządzania aplikacją Slack.
- Własna aplikacja — połącz za pomocą utworzonej i należącej do ciebie aplikacji Slack. Skorzystaj z tej opcji, jeśli bot ma występować pod twoją marką lub zasady workspace wymagają instalacji aplikacji przez administratora.
Opcja A — OAuth
Użytkownik instalujący aplikację musi mieć uprawnienia do dodawania aplikacji do docelowego workspace Slack.
Opcja B — Własna aplikacja Slack
Skorzystaj z niej, jeśli bot ma wyświetlać się pod nazwą i ikoną twojej aplikacji albo jeśli twój workspace wymaga sprawdzenia i instalacji aplikacji przez administratora.
Utwórz aplikację Slack
Przejdź do Slack API: Your Apps i kliknij Create New App > From scratch. Nazwij aplikację i wybierz workspace Slack, w którym chcesz ją zainstalować.
Dodaj zakresy bota
Otwórz OAuth & Permissions i dodaj następujące zakresy Bot Token Scopes:
app_mentions:read, channels:history, channels:join, channels:manage, chat:write, files:read, groups:history, groups:write, im:history, reactions:write.
Następnie kliknij Install to Workspace i zatwierdź. Skopiuj Bot User OAuth Token (zaczyna się od xoxb-).
Utwórz połączenie w ElevenLabs
W panelu ElevenLabs przejdź do Integrations, kliknij przycisk Add integration i wybierz Slack. Wybierz dane logowania Bring your own app. Wklej token bota i signing secret, a potem zapisz. ElevenLabs zweryfikuje token w Slacku i zapisze identyfikator workspace.
Po utworzeniu połączenia strona połączenia pokaże dwa adresy webhooków utworzone na podstawie tożsamości aplikacji Slack. Ta sama aplikacja Slack, ponownie połączona z tego samego workspace ElevenLabs, zawsze tworzy te same adresy URL — możesz więc usunąć i odtworzyć połączenie bez ponownej aktualizacji konfiguracji aplikacji Slack. Nie zamykaj tej strony — przyda się w kolejnych krokach.
Skonfiguruj Event Subscriptions
W aplikacji Slack otwórz Event Subscriptions, włącz zdarzenia i wklej Events URL ze strony połączenia ElevenLabs w polu Request URL. Slack zweryfikuje adres URL za pomocą podanego signing secret.
Zasubskrybuj zdarzenia bota zależnie od tego, jak agent ma działać na kanałach:
- Tylko wzmianki — zasubskrybuj
app_mention. Agent odpowie tylko, gdy użytkownik wspomni bota przez@. - Wszystkie wiadomości — zasubskrybuj
message.channelsimessage.groups. Agent odpowie na każdą wiadomość na kanałach, do których należy bot, bez konieczności wzmianki.
Jeśli używasz wyzwalacza SlackDirectMessage, zasubskrybuj też message.im.
Nie subskrybuj jednocześnie app_mention i zdarzeń kanałowych message.*, chyba że chcesz obsługiwać zduplikowane dostarczenia. Gdy użytkownik wspomni bota przez @, Slack może wysłać zdarzenie app_mention i message dla tej samej wiadomości, przez co agent odpowie dwa razy.
Workspace Slack można połączyć tylko raz przez wspólną aplikację OAuth ElevenLabs. Ponowna instalacja
z innego workspace ElevenLabs zwraca błąd duplicate Slack workspace — najpierw usuń
istniejące połączenie. Połączenia z własnymi aplikacjami są niezależne i nie powodują konfliktów.
Zakresy OAuth
Aplikacja Slack ElevenLabs prosi o następujące zakresy:
Narzędzia agenta
Gdy dodasz narzędzia Slack do agenta, dostępne będą następujące wbudowane narzędzia:
Usuwanie połączenia
Usunięcie połączenia ze strony Integrations odinstalowuje aplikację Slack ElevenLabs z workspace Slack. Po usunięciu bot nie jest już obecny na żadnym kanale.
W przypadku połączeń z własną aplikacją ElevenLabs nie może odinstalować aplikacji, której nie jest właścicielem — usunięcie połączenia usuwa tylko lokalne mapowanie. Aby całkowicie usunąć bota z workspace Slack, odinstaluj aplikację w ustawieniach administratora Slack.
Skonfiguruj wyzwalacz
Integracja udostępnia jeden wyzwalacz: SlackMessage. Uruchamia się, gdy bot zobaczy nową wiadomość użytkownika na skonfigurowanym kanale.
Dodaj wyzwalacz SlackMessage
Na stronie konfiguracji agenta dodaj nowy wyzwalacz i wybierz SlackMessage.
Slack nie pozwala aplikacjom automatycznie dołączać do prywatnych kanałów. W przypadku prywatnego kanału po zapisaniu wyzwalacza wpisz na nim /invite @Eleven, aby bot mógł widzieć wiadomości.
Dozwolony jest tylko jeden wyzwalacz dla każdej pary (Slack workspace, channel). Edytuj istniejący wyzwalacz
zamiast tworzyć duplikat.
Skonfiguruj wyzwalacz DM
Wyzwalacz SlackDirectMessage pozwala każdemu użytkownikowi Slack rozmawiać z agentem przez wysłanie botowi wiadomości bezpośredniej. W przeciwieństwie do wyzwalacza kanałowego nie wymaga wzmianki przez @ — przetwarzana jest każda wiadomość wysłana przez użytkownika w DM z botem.
W przypadku aplikacji BYO upewnij się, że zasubskrybowano zdarzenie bota message.im i dodano
zakres bota im:history. Jeśli po ich dodaniu pojawi się prośba, zainstaluj aplikację ponownie.
Dozwolony jest tylko jeden wyzwalacz DM na połączenie Slack. Aby zmienić agenta, edytuj istniejący wyzwalacz.
Rozmowa z botem w Slacku
Gdy wyzwalacz jest aktywny, a bot znajduje się na kanale, rozpocznij rozmowę w wątku kanału. Sposób kontynuowania wątku zależy od subskrypcji zdarzeń aplikacji Slack (OAuth korzysta z trybu tylko ze wzmiankami).
Tylko wzmianki (app_mention)
Wszystkie wiadomości (message.channels, message.groups)
Gdy bot generuje odpowiedź, dodaje reakcję :eyes: do wiadomości użytkownika, która wywołała działanie, i usuwa ją po opublikowaniu odpowiedzi.
Ustawienie Respond to messages from w wyzwalaczu Channel Message określa, kto może uruchomić agenta:
- Only humans (domyślnie): wiadomości od innych botów i z workflow Slack są ignorowane. To bezpieczne ustawienie domyślne, które zachowuje działanie istniejących wyzwalaczy.
- Humans and bots: wiadomości od innych botów i opublikowane przez workflow (w tym starsze zdarzenia
bot_message) także uruchamiają agenta.
Bot zawsze ignoruje własne wiadomości — korzystając z tożsamości użytkownika bota i aplikacji w podpisanym webhooku Slacka — niezależnie od ustawienia, więc nigdy nie odpowiada sam sobie, nawet gdy sam zostanie wspomniany. Nadal ignoruje też edytowane (message_changed) i usunięte (message_deleted) wiadomości. Obsługuje zdarzenia message i app_mention oraz działa zarówno na kanałach publicznych, jak i prywatnych.
Starsze zdarzenia botów zawierające tylko bot_id identyfikują nadawcę, ale nie aplikację odbierającą. Są
traktowane jako wiadomości od innego bota; wykrywanie pętli własnych wiadomości dla tej aplikacji Slack używa tożsamości użytkownika bota
lub aplikacji zawartej we współczesnych ładunkach zdarzeń Slack.
Jeśli twoja aplikacja Slack subskrybuje jednocześnie app_mention i message.channels / message.groups, pojedyncza
wzmianka przez @ może uruchomić dwie odpowiedzi agenta. Zasubskrybuj jeden z tych trybów.
Model rozmowy
Identyfikator rozmowy jest deterministyczny dla (agent_id, channel_id, thread_ts):
- Nowy wątek Slack jest mapowany na nową rozmowę ElevenLabs.
- Kontynuowanie tego samego wątku kontynuuje tę samą rozmowę, w tym historię transkrypcji i zmienne dynamiczne.
Podczas tworzenia historii czatu bot odczytuje wątek Slack bezpośrednio. Wiadomości od członków Slacka i innych botów są traktowane jako tury użytkownika, a własne wiadomości bota jako tury agenta. Wzmianki o użytkowniku bota (<@BOT_USER_ID>) są zamieniane na @<agent_name> przed przetworzeniem ich przez agenta.
Zmienne dynamiczne
Gdy agent działa ze Slacka, w promptach i narzędziach dostępne są następujące zmienne dynamiczne:
Zobacz zmienne dynamiczne, aby dowiedzieć się, jak odwoływać się do nich w promptach i wywołaniach narzędzi.
Rozwiązywanie problemów
Załączniki plików nie działają
Gdy użytkownik dołącza obraz lub PDF w Slacku, ale agent go nie przetwarza (lub zachowuje się, jakby plik nie został wysłany), wykonaj poniższe kontrole.
Sprawdź, czy aplikacja Slack ma files:read
Bot potrzebuje zakresu bota files:read, aby pobierać załączniki ze Slacka.
- Własna aplikacja — otwórz aplikację w Slack API: Your Apps, przejdź do OAuth & Permissions i sprawdź, czy
files:readwidnieje w Bot Token Scopes. Jeśli dodano go niedawno, zainstaluj aplikację ponownie w workspace, aby token otrzymał nowy zakres.
Sprawdź, czy model agenta obsługuje wejście plikowe
Załączniki plików są przekazywane tylko wtedy, gdy LLM agenta obsługuje dane multimodalne — wejście obrazowe i/lub dokumenty (PDF), zależnie od typu pliku. W konfiguracji agenta otwórz kartę Agent i sprawdź wybrany model. Jeśli model nie obsługuje danego typu załącznika, zmień go na taki, który go obsługuje.