Slack

Conecte um workspace do Slack ao ElevenLabs Agents para conversar com um agente em canais e threads

Visão geral

A integração com o Slack permite que um agente da ElevenLabs envie e receba mensagens no Slack. Depois de conectado, o agente responde em uma thread quando é mencionado em um canal e mantém um contexto de conversa separado para cada thread.

Recursos

RecursoSuporte
Modo de retenção zero (ZRM)Não compatível
Anexos em gatilhosImagens (PNG, JPEG, GIF, WebP) e arquivos PDF em mensagens recebidas, quando Permitir anexos de arquivos está ativado nas configurações do agente e o LLM do agente aceita imagens ou documentos
Anexos em ferramentasNão compatível — as ferramentas funcionam apenas com texto

Configuração

A integração oferece duas formas de conexão:

  • OAuth — instale o app compartilhado do Slack da ElevenLabs no seu workspace. Um único workspace do Slack corresponde a uma única conexão da ElevenLabs. É a configuração mais rápida e não exige gerenciamento do app do Slack.
  • Use seu próprio app — conecte-se usando um app do Slack criado e de sua propriedade. Use esta opção quando precisar que o bot apareça com sua marca ou quando as políticas do seu workspace exigirem que apps sejam instalados por um administrador.

Opção A — OAuth

O usuário que instalar o app precisa ter permissão para adicionar apps ao workspace do Slack de destino.

1

Abra a página de integrações

No painel da ElevenLabs, acesse Agents > Integrações e selecione Slack.

2

Clique em Conectar

Escolha a credencial OAuth e clique em Conectar. Você será redirecionado ao Slack para escolher em qual workspace instalar o app da ElevenLabs e aprovar os escopos solicitados.

3

Conclua o redirecionamento

Após a aprovação, o Slack redireciona você de volta à ElevenLabs e a conexão é criada. O ID do workspace do Slack é registrado automaticamente e usado ao configurar gatilhos.

Opção B — Use seu próprio app do Slack

Use esta opção se quiser que o bot apareça com o nome e o ícone do seu próprio app ou se o seu workspace exigir que os apps sejam revisados e instalados pelo administrador.

1

Crie um app do Slack

Acesse Slack API: Your Apps e clique em Create New App > From scratch. Dê um nome ao app e escolha o workspace do Slack em que deseja instalá-lo.

2

Adicione escopos de bot

Abra OAuth & Permissions e adicione os seguintes escopos de token de bot:

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

Em seguida, clique em Install to Workspace e aprove. Copie o Bot User OAuth Token (começa com xoxb-).

3

Copie o segredo de assinatura

Abra Basic Information > App Credentials e copie o Signing Secret.

4

Crie a conexão na ElevenLabs

No painel da ElevenLabs, acesse Integrações, clique no botão Adicionar integração e escolha Slack. Escolha a credencial Use seu próprio app. Cole o token do bot e o segredo de assinatura, depois salve. A ElevenLabs verifica o token no Slack e registra o ID do seu workspace.

Depois que a conexão é criada, a página da conexão mostra duas URLs de webhook derivadas da identidade do seu app do Slack. O mesmo app do Slack, reconectado a partir do mesmo workspace da ElevenLabs, sempre gera as mesmas URLs — assim, você pode excluir e recriar a conexão sem atualizar novamente a configuração do seu app do Slack. Mantenha essa página aberta para as próximas etapas.

5

Configure as assinaturas de eventos

No seu app do Slack, abra Event Subscriptions, ative os eventos e cole a URL de eventos da página de conexão da ElevenLabs em Request URL. O Slack verificará a URL usando o segredo de assinatura fornecido por você.

Assine eventos de bot conforme o comportamento desejado para o agente nos canais:

  • Somente menções — assine app_mention. O agente responde apenas quando um usuário menciona o bot com @.
  • Todas as mensagens — assine message.channels e message.groups. O agente responde a todas as mensagens dos canais em que o bot está, sem exigir uma menção.

Se você usar o gatilho SlackDirectMessage, também assine message.im.

Não assine ao mesmo tempo app_mention e os eventos de canal message.*, a menos que pretenda lidar com entregas duplicadas. Quando um usuário menciona o bot com @, o Slack pode enviar um evento app_mention e um evento message para a mesma mensagem, fazendo o agente responder duas vezes.

6

Configure a interatividade

Abra Interactivity & Shortcuts, ative a interatividade e cole a URL de interatividade da página de conexão da ElevenLabs em Request URL.

7

Reinstale se solicitado

Se o Slack solicitar que você reinstale o app após alterar escopos ou eventos, faça isso para aplicar as alterações.

Um workspace do Slack só pode ser conectado uma vez pelo app OAuth compartilhado da ElevenLabs. A reinstalação a partir de outro workspace da ElevenLabs retorna um erro duplicate Slack workspace — remova primeiro a conexão existente. As conexões com seu próprio app são independentes e não entram em conflito.

Escopos OAuth

O app do Slack da ElevenLabs solicita os seguintes escopos:

EscopoFinalidade
app_mentions:readReceber mensagens em que o bot é mencionado com @.
channels:historyLer mensagens em canais públicos dos quais o bot participa.
channels:joinPermitir que o bot entre automaticamente em canais públicos quando um gatilho é criado.
channels:manageExecutar ações de gerenciamento de canais.
chat:writePublicar mensagens em canais e threads.
files:readBaixar arquivos anexados às mensagens para que o agente possa ler imagens e PDFs.
groups:historyLer mensagens em canais privados dos quais o bot participa.
groups:writeOperar em canais privados.
im:historyLer mensagens em canais de mensagens diretas com o bot.
reactions:writeAdicionar e remover reações, usadas como indicador de processamento em mensagens e ferramentas do agente.

Ferramentas do agente

Ao adicionar ferramentas do Slack a um agente, as seguintes ferramentas integradas ficam disponíveis:

FerramentaDescrição
slack_add_reactionAdiciona uma reação de emoji. Por padrão, o canal e o ts da mensagem são preenchidos a partir de integration__slack_channel_id e integration__slack_trigger_message_ts; o modelo escolhe apenas o shortcode do emoji (sem dois-pontos), por exemplo, thumbsup. Fora de conversas iniciadas pelo Slack, essas variáveis não estão presentes, a menos que você as defina — ajuste o esquema da ferramenta se o modelo precisar informar explicitamente o canal e o ts.
slack_remove_reactionRemove uma reação de emoji (com os mesmos padrões da adição). Segundo o Slack, o bot que faz a chamada só pode remover reações que ele próprio adicionou; consulte reactions.remove.

Remover a conexão

Remover a conexão na página Integrações desinstala o app do Slack da ElevenLabs do workspace do Slack. Após a remoção, o bot não estará mais presente em nenhum canal.

Para conexões com seu próprio app, a ElevenLabs não pode desinstalar um app que não possui — remover a conexão apenas exclui o mapeamento local. Para remover completamente o bot do seu workspace do Slack, desinstale o app nas configurações de administração do Slack.

Configure o gatilho

A integração expõe um único gatilho, SlackMessage. Ele é acionado quando o bot vê uma nova mensagem de usuário em um canal configurado.

1

Adicione um gatilho SlackMessage

Na página de configuração do agente, adicione um novo gatilho e selecione SlackMessage.

2

Escolha o agente e o canal

Configure os campos do gatilho:

  • Agente: o agente que conduz a conversa.
  • ID do canal: o ID do canal do Slack, por exemplo, C0123456789. A interface fornece um link direto para abrir o canal no Slack.
3

Salve o gatilho

Salve o gatilho. A ElevenLabs convida automaticamente o bot para canais públicos. Remover o gatilho mais tarde faz o bot sair desse canal.

O Slack não permite que apps entrem automaticamente em canais privados. Para um canal privado, execute /invite @Eleven nesse canal após salvar o gatilho, para que o bot possa ver as mensagens.

Só é permitido um gatilho por par (workspace do Slack, canal). Edite o gatilho existente em vez de criar uma duplicata.

Configure o gatilho de DM

O gatilho SlackDirectMessage permite que qualquer usuário do Slack converse com o agente enviando uma mensagem direta ao bot. Diferentemente do gatilho de canal, não é necessária uma menção com @ — todas as mensagens que um usuário envia em uma DM com o bot são processadas.

1

Adicione um gatilho SlackDirectMessage

Na página de configuração do agente, adicione um novo gatilho e selecione SlackDirectMessage.

2

Escolha o agente

Selecione o Agente que conduz as conversas por DM.
3

Salve o gatilho

Salve o gatilho. Agora, qualquer usuário do Slack no workspace pode abrir uma DM com o bot e iniciar uma conversa.

Para apps BYO, verifique se você assinou o evento de bot message.im e adicionou o escopo de bot im:history. Reinstale o app se solicitado após adicioná-los.

Só é permitido um gatilho de DM por conexão do Slack. Para alterar o agente, edite o gatilho existente.

Conversando com o bot no Slack

Quando o gatilho estiver ativo e o bot estiver no canal, inicie uma conversa em uma thread do canal. A forma de continuar a thread depende das assinaturas de eventos do seu app do Slack (OAuth usa o comportamento de somente menções).

Somente menções (app_mention)

1

Inicie uma thread com uma menção

Mencione o bot em um canal para iniciar uma nova thread, por exemplo, @Eleven qual é o status do pedido 1234?. O bot responde em uma thread sob essa mensagem.

2

Continue a thread

Mencione o bot novamente em cada mensagem à qual você quer que ele responda, incluindo acompanhamentos dentro da mesma thread. Mensagens sem menção são ignoradas.

Todas as mensagens (message.channels, message.groups)

1

Inicie uma thread

Envie qualquer mensagem em um canal em que o bot esteja presente. O bot responde em uma thread sob essa mensagem. Você não precisa mencionar o bot com @.

2

Continue a thread

Responda na mesma thread sem mencionar o bot. Cada nova mensagem na thread é processada.

Enquanto o bot gera uma resposta, ele adiciona uma reação :eyes: à mensagem que acionou o usuário e a remove quando a resposta é publicada.

A configuração Responder a mensagens de no gatilho de mensagem de canal controla quem pode acionar o agente:

  • Somente humanos (padrão): mensagens de outros bots e de workflows do Slack são ignoradas. Este é o padrão seguro e preserva o comportamento dos gatilhos existentes.
  • Humanos e bots: mensagens de outros bots e mensagens publicadas por workflow (incluindo eventos legados bot_message) também acionam o agente.

O bot sempre ignora as próprias mensagens — usando a identidade de usuário do bot e do app no webhook assinado do Slack — em ambas as configurações, portanto nunca responde a si mesmo, mesmo quando é mencionado. Ele também continua ignorando mensagens editadas (message_changed) e excluídas (message_deleted). Ele processa eventos message e app_mention e funciona em canais públicos e privados.

Eventos legados de bot que contêm apenas um bot_id identificam o remetente, mas não o app receptor. Eles são tratados como mensagens de outro bot; a detecção de loop próprio para este app do Slack usa a identidade do usuário do bot ou do app incluída nas cargas de eventos modernas do Slack.

Se o seu app do Slack assinar tanto app_mention quanto message.channels / message.groups, uma única menção com @ poderá acionar duas respostas do agente. Assine um modo ou o outro.

Modelo de conversa

O ID da conversa é determinístico para cada (agent_id, channel_id, thread_ts):

  • Uma nova thread do Slack corresponde a uma nova conversa da ElevenLabs.
  • Continuar a mesma thread continua a mesma conversa, incluindo o histórico da transcrição e as variáveis dinâmicas.

Ao criar o histórico de chat, o bot lê a thread do Slack diretamente. Mensagens de membros do Slack e de outros bots são tratadas como interações de usuário, enquanto as mensagens do próprio bot são tratadas como interações do agente. Menções ao usuário do bot (<@BOT_USER_ID>) são reescritas como @<agent_name> antes de o agente processá-las.

Variáveis dinâmicas

Quando um agente é executado pelo Slack, as seguintes variáveis dinâmicas ficam disponíveis em prompts e ferramentas:

VariávelDescrição
integration__slack_channel_idID do canal do Slack.
integration__slack_thread_tsTimestamp da thread do Slack.
integration__slack_user_idID do remetente no Slack. É um ID de usuário ou um ID de bot para eventos legados sem usuário.
integration__slack_team_idID do workspace (equipe) do Slack.
integration__slack_connection_idID da conexão de integração da ElevenLabs.
integration__slack_trigger_message_tsts do Slack da mensagem que acionou esta interação do agente (ID único da mensagem no canal).

Consulte variáveis dinâmicas para saber como referenciá-las em prompts e chamadas de ferramentas.

Solução de problemas

Anexos de arquivos não funcionam

Quando um usuário anexa uma imagem ou PDF no Slack, mas o agente não o processa (ou age como se nenhum arquivo tivesse sido enviado), siga as verificações abaixo.

1

Confirme que o app do Slack tem files:read

O bot precisa do escopo de bot files:read para baixar anexos do Slack.

  • Use seu próprio app — abra seu app em Slack API: Your Apps, acesse OAuth & Permissions e verifique se files:read está listado em Bot Token Scopes. Se você o adicionou recentemente, reinstale o app no seu workspace para que o token receba o novo escopo.
2

Confirme que o modelo do agente aceita entrada de arquivos

Os anexos de arquivos só são encaminhados quando o LLM do agente aceita entrada multimodal — entrada de imagem e/ou documento (PDF), dependendo do tipo de arquivo. Na configuração do agente, abra a aba Agente e verifique o modelo selecionado. Se o modelo não aceitar o tipo de anexo, mude para um modelo que aceite.

3

Ative Permitir anexos de arquivos nas configurações do agente

Na página de configuração do agente, abra Configurações > Avançado. Em Entrada multimodal, ative Permitir anexos de arquivos. Salve o agente. Sem essa configuração, os anexos do Slack são ignorados mesmo quando o app do Slack e o modelo aceitam arquivos.