Bots para o Workplace

Como criar bots para o Workplace em grupos e bate-papos

Visão geral

Com as integrações personalizadas para o Workplace, agora é possível criar bots eficientes que podem interagir com pessoas em grupos e bate-papos.

Você pode criar um bot que automaticamente publica conteúdo em grupos, responde a perguntas com informações adicionais ou age quando mencionado nos comentários de uma publicação. Também é possível criar bots que conversam com as pessoas no Work Chat para fornecer informações em tempo real ou gerenciar solicitações com elementos de conversa estruturados, como respostas rápidas e menus persistentes.

Para criar um bot para sua comunidade, você precisa ter uma função de administrador do sistema.

Caso você não seja um administrador de comunidade do Workplace, será preciso trabalhar com um administrador para criar um bot.

Bots como páginas

No Workplace, assim como acontece na plataforma do Messenger, os bots são representados como páginas. Quando você cria um aplicativo de integração personalizada, uma página é gerada automaticamente. As pessoas da sua comunidade no Workplace podem descobrir e interagir com o bot por meio dessa página.

Os bots são representados como páginas públicas na empresa. Por isso, qualquer membro de uma comunidade do Workplace pode ver, marcar e enviar mensagens ao bot. No entanto, dependendo do nível de permissão escolhido por você durante a criação do recurso, talvez o bot não seja capaz de ver nem de interagir com todo o conteúdo no Workplace.

Por exemplo, se o bot tiver a permissão Ler o conteúdo do grupo, ele poderá ver o conteúdo nos grupos. Da mesma forma, se o bot não tiver a permissão Publicar em grupos, ele não poderá responder ao conteúdo em nenhum grupo.

Além disso, as pessoas só conseguirão encontrar seu bot e trocar mensagens no Work Chat se ele tiver a permissão Enviar mensagens para qualquer membro.

Bots em grupos

Em grupos, os bots são capazes de concluir muitas das ações realizadas por pessoas. Isso significa que você pode criar bots que publicam conteúdo novo, comentam mensagens com novas informações e curtem publicações para indicar reconhecimento ou aprovação.

Os bots também podem @mencionar pessoas para chamar a atenção e ser @mencionados para iniciar um fluxo de trabalho específico ou fazer uma pergunta.

Por fim, os bots podem assinar um grupo e @mencionar webhooks, o que permite monitorar o conteúdo e interagir com os usuários de maneiras flexíveis.

Bots em bate-papos

Em grupos, os bots podem consumir e compartilhar informações entre um grupo de pessoas de forma assíncrona. Já em bate-papos, os bots funcionam melhor para interação direta em tempo real com uma única pessoa ou um grupo definido de pessoas.

Por exemplo, um bot de bate-papo pode ser usado para enviar lembretes ou notificações importantes para alguém com base em um evento futuro, como uma entrevista ou reunião. Os bots do Work Chat também podem ser usados para engajar um usuário em uma conversa e realizar ações de acompanhamento com base no feedback recebido.

Esse modelo de interação é baseado nos mesmos conceitos usados pela plataforma do Messenger. Como resultado, os bots do Work Chat podem usar recursos como menus persistentes, respostas rápidas e modelos para aprimorar a experiência do usuário.

Bate-papo bot para usuário

Quando um bot tem a permissão Enviar mensagem para qualquer membro, ele pode enviar uma mensagem direta a qualquer pessoa no Workplace usando o endereço de email ou o ID do Workplace via API de envio do Messenger.

Um bot em uma nova digitação antecipada de mensagem

A permissão Enviar mensagem para qualquer membro também possibilita que seu bot apareça em digitações antecipadas nas plataformas de bate-papo do Workplace.

Um bot em uma nova digitação antecipada de mensagem

Ao assinar webhooks de mensagens da Página, você receberá uma notificação quando um usuário enviar uma mensagem para seu bot e poderá criar um fluxo de conversa combinando o envio e o recebimento.

Uma conversa bot para usuário

Bate-papo bot para grupo

Se o bot tiver as permissões Enviar mensagens para qualquer membro e Chatbot de grupo, ele poderá criar, gerenciar e ser adicionado a conversas em grupo com diversas pessoas. Os bots podem criar conversas de grupo ao especificar uma lista de destinatários. Também é possível renomear conversas para criar discussões de bate-papo sobre determinados assuntos com pessoas específicas.

Uma conversa nomeada com pessoas específicas criada por um bot.

Ao permitir a compatibilidade com bate-papos em grupo, seu bot aparecerá em digitações antecipadas para a opção Adicionar pessoas em conversas de bate-papo em grupo existentes. Em seguida, ele receberá webhooks para cada mensagem enviada por pessoas nessa conversa e poderá responder usando o thread ID.

Inclusão e @menção do bot em um bate-papo em grupo.

Como criar novas conversas nomeadas

Para criar uma nova conversa com destinatários específicos, faça uma solicitação POST para o ponto de extremidade /me/messages especificando uma matriz de recipient IDs e uma carga de message inicial como esta:

POST /me/messages
{
  "recipient": {
    "ids": [<user_ids>]
  },
  "message": <message_payload>
}

O retorno será uma carga de resposta incluindo um thread ID, que você pode usar para mensagens de acompanhamento.

Se você usar o mesmo ponto de extremidade com a mesma lista de destinatários novamente, uma nova conversa será criada. Para enviar mensagens de acompanhamento para uma conversa já criada, faça uma solicitação POST para o ponto de extremidade /me/messages usando o thread_id na carga recipient desta forma:

POST /me/messages
{
  "recipient": {
    "thread_key": <thread_id>
  },
  "message": <message_payload>
}

Para renomear uma conversa criada pelo seu bot, faça uma solicitação POST para a borda /{thread}/threadname desta forma:

POST /t_<thread_id>/threadname
{
  "name": "new name"
}

É preciso usar o prefixo "t_" para o thread_id no caminho da borda.

Também é possível adicionar e remover participantes de conversas emitindo solicitações POST ou DELETE na borda /{thread}/participants desta forma:

POST t_<thread_id>/participants
{
  "to": [<user_ids>]
}

DELETE t_<thread_id>/participants
{
  "to": [<user_ids>]
}

Observe que as operações na borda /{thread}/participants estão disponíveis para conversas criadas pela integração.

Menção em uma conversa

Quando seu bot for mencionado em uma mensagem, nossos webhooks enviarão a lista de membros marcados nessa mensagem, como esta carga:

{
    "object":"page",
    "entry":[{
        "id":"746230239054322",
        "time":1539281406974,
        "messaging":[{
            ...
            "message":{
                "mid":"<message id>",
                "seq":2192,
                "text":"@Edu Gomes @Example Bot What's 2+2?"
            },
            "mentions":[{
                "offset":0,
                "length":10,
                "id":"100017376437045"
            },
            {
                "offset":11,
                "length":12,
                "id":"746230239054322"
            }]
        }]
    }]
} 

Parceiros de plataforma para bots

Há diversos parceiros de plataforma que oferecem suporte para bots no Workplace. Veja uma lista de parceiros aqui. Você pode usar uma dessas plataformas para criar um bot eficiente sem escrever uma única linha de código.

Melhores práticas

Use o canal certo

Ao decidir se você quer criar interações de grupo ou bate-papo, é importante considerar onde seu bot será mais útil.

  • Se você quer um bot que interaja com várias pessoas ao mesmo tempo ou publique um conteúdo que será visualizado por diversos usuários, faz sentido criar um bot que publique em grupos e responda a comentários e menções em publicações de grupos.
  • Caso você precise que o bot alerte sobre uma questão imediata, uma situação que pode exigir um acompanhamento rápido ou algo com que as pessoas devem interagir no modo privado, ofereça suporte a conversas no Work Chat.

Um único aplicativo pode gerenciar os dois canais. Por exemplo, pode haver casos em que o bot da Central de Suporte receberá mensagens no Work Chat e outros em que ele precisará fazer publicações em grupos e obter as respostas.

Deep links para bots

Use o formato de link https://w.m.me/{page-id} se quiser criar um vínculo direto para um bot de bate-papo no Workplace. No momento, o suporte está disponível no Workplace Chat em ambientes web, Android e iOS. Em plataformas móveis que têm o Workplace Chat instalado, o link será aberto diretamente no aplicativo.

Parâmetros de referência

Um parâmetro de referência também pode ser usado para incorporar mais informações ao link. Por exemplo, isso pode permitir que seu sistema execute ações personalizadas com base em que usuário a pessoa clicou para chegar até o bot.

Para aproveitar o recurso, use o formato de link https://w.m.me/{page-id}?ref={referral_parameter}. Esse recurso é implementado da mesma forma que a plataforma do Messenger. Consulte a documentação do Messenger para saber mais detalhes.

O campo de webhook relevante é messaging_referrals e exige uma nova assinatura. Esse campo de webhook não estava disponível para aplicativos do Workplace, mas agora você pode fazer a assinatura da maneira usual.

A carga do webhook está no mesmo formato do Messenger, com as diferenças comuns: o Workplace usa IDs no escopo do aplicativo, não IDs no escopo da página. Além disso, o Workplace também fornece um campo de comunidade no webhook, carregando o ID da comunidade.

Interações em grupo

Depois que o aplicativo assinar os webhooks, seu bot será notificado quando for mencionado em uma publicação ou um comentário do grupo. É importante que seu bot responda às menções com rapidez. Quando o bot precisa processar uma solicitação antes de responder, é útil curtir o comentário para informar que ele sabe que foi mencionado.

Se você estiver fornecendo informações depois de ser mencionado em um comentário, adicione uma resposta à conversa para manter o fluxo de interação do grupo.

Caso o bot precise fornecer informações ao responsável pela publicação original, inclua um comentário na própria publicação para que a pessoa também seja notificada.

Interações no bate-papo

As interações de bot no Work Chat são compatíveis com uma funcionalidade semelhante na plataforma do Messenger. Isso inclui botões de resposta rápida e modelos que ajudam a implementar árvores de decisão em conversas de bot.

Dessa forma, é possível criar fluxos de trabalho úteis e reduzir a quantidade de digitação. Além disso, como não há a necessidade do uso de um processamento de linguagem natural sofisticado, a internacionalização fica muito mais simples quando você cria bots para uma equipe global.