Slack

A integração do Slack ao Dialogflow facilita a criação de aplicativos e bots do Slack, além de treiná-los para processar a linguagem natural.

Como configurar o Slack

Para configurar a integração de um agente com o Slack, é necessário ter:

Criar um aplicativo do Slack

  1. Acesse o Console de desenvolvimento do Slack.
  2. Digite o nome do aplicativo.
  3. Escolha a equipe a que o aplicativo estará associado.
  4. Clique no botão Create App.

Adicionar um usuário de bot

  1. Clique em Bot Users no menu à esquerda.
  2. Clique no botão Add a Bot User.
  3. Digite o nome do bot do Slack (é isso que os usuários verão quando adicionarem o bot).
  4. Ative Always Show My Bot as Online.
  5. Clique no botão Add Bot User.

Como ativar a integração no Dialogflow

No console para desenvolvedores do Slack, clique em Basic Information no menu à esquerda e role até a seção App Credentials. Anote os dados de Client ID, Client Secret e Verification Token.

  1. No Dialogflow, acesse Integrations no menu à esquerda.
  2. Clique no bloco Slack.
  3. Digite os valores equivalentes nos seguintes campos:
    1. ID do cliente
    2. Client Secret
    3. Verification Token
  4. Clique em Start.

Como continuar a configuração do Slack

Depois de configurar o Slack e o Dialogflow, ative o OAuth, os URLs de solicitação de evento (fornecidos pelo Dialogflow) e as assinaturas de eventos.

Adicionar o URL do OAuth

  1. Copie o URL do OAuth da página de configurações do Dialogflow no Slack.
  2. Acesse o console de desenvolvimento do Slack e clique em OAuth & Permissions no menu à esquerda.
  3. Clique no botão Add a new Redirect URL e cole o URL do OAuth.
  4. Clique em Add.

Adicionar o URL de solicitação de evento

  1. Copie o URL de solicitação de evento da página de configurações do Dialogflow no Slack.
  2. Acesse o console de desenvolvimento do Slack e clique em Event Subscriptions no menu à esquerda.
  3. Clique na chave para ativar os eventos e cole o URL de assinatura de evento no campo Request URL.

    Depois de alguns instantes, você verá um campo verde "Verified" acima do campo "Request URL".
  4. Quando terminar de atualizar essas duas configurações, clique no botão Save Changes na parte inferior da página.

Ativar assinaturas de eventos

  1. Clique em Event Subscriptions no menu à esquerda.
  2. Clique na chave para ativar a opção.
  3. Na seção Subscribe to Bot Events, clique no botão Add Bot User Event.

    Serão exibidos o campo de texto e a lista de eventos. Digite termos nesse campo para pesquisar os eventos a que você quer que o bot responda. Veja uma lista de termos sugeridos:

    Nome do evento Descrição do evento
    message.im Uma mensagem foi postada em um canal de mensagem direta.
    message.groups Uma mensagem foi postada em um canal privado.
    message.channels Uma mensagem foi postada em um canal.
    im_created Uma mensagem direta foi criada.

  4. Depois de adicionar os eventos, clique no botão Save Changes na parte inferior da tela.

Adicionar o bot do Slack a uma equipe

  1. No console de desenvolvimento do Slack, clique em Manage Distribution no menu à esquerda.
  2. Na seção Share Your App with Your Team, clique no botão Add to Slack.
  3. Na próxima página, clique no botão Authorize para adicionar o agente.

Teste

É possível testar o agente sem criar um bot público do Slack. Para fazer isso, acesse a página Integrations do agente e clique na chave no bloco Slack. Na janela pop-up, clique no botão Test In Slack.

Será solicitado que você faça login no Slack. Após fazer o login, vá até a instância e localize o usuário do bot chamado @dialogflow-bot. Envie uma mensagem direta ao agente para testá-lo ou adicione-o aos canais na sua instância.

Eventos

Os eventos a seguir são invocados por esta integração:

Evento Descrição
SLACK_WELCOME Acionado quando um usuário inicia uma conversa com o bot do Slack.

Mensagens de resposta avançadas

As mensagens de resposta avançadas a seguir são compatíveis.

Respostas de imagem

Formatos e tamanhos compatíveis:

  • gif
  • jpeg
  • png
  • bmp

Cards de resposta

Não há campos obrigatórios para cartões no Slack. Qualquer combinação de elementos pode ser usada.

Botões com um URL e um postback de texto são compatíveis. Os botões com um URL são exibidos como hiperlinks.

Respostas rápidas

As respostas rápidas são compatíveis com as integrações do Slack de apenas um clique e correspondem a uma versão de texto dos botões interativos do Slack.

Respostas de payload personalizadas

Texto formatado na integração de apenas um clique do Slack

Seus bots do Slack podem enviar texto formatado, como mostra o exemplo a seguir:

{
  "slack": {
    "text": "This is an example of *bold*, _italic_, and `code`."
  }
}