Noções básicas sobre conversas

Importante

Os exemplos de código nesta seção são baseados na versão 4.6 e versões posteriores do SDK do Bot Framework. Se você estiver procurando documentação para versões anteriores, consulte a seção bots – v3 SDK na pasta SDKs Herdados da documentação.

Uma conversa é uma série de mensagens enviadas entre o bot do Microsoft Teams e um ou mais usuários. A tabela a seguir fornece os três tipos de conversas, também chamados de escopos no Teams:

Tipo de conversa Descrição
channel Esse tipo de conversa é visível para todos os membros do canal.
personal Esse tipo de conversa inclui conversas entre bots e um único usuário.
groupChat Esse tipo de conversa inclui chat entre um bot e dois ou mais usuários. Ele também habilita o bot em chats de reunião.

Um bot se comporta de forma diferente dependendo da conversa em que está envolvido:

  • Bots em conversas de chat em grupo e canal exigem que o usuário @mention o bot para invocá-lo em um canal.

  • Os bots em uma conversa um-para-um não exigem um @mention. Todas as mensagens enviadas pelas rotas do usuário para o bot.

Os bots podem receber todas as mensagens de canal e chat em uma equipe sem @mentioned usar permissões RSC (consentimento específico do recurso). O RSC para todas as mensagens de chat só está disponível na versão prévia do desenvolvedor público para o Teams. Para obter mais informações, confira receber todas as mensagens de conversa com o RSC.

Para que o bot funcione em uma conversa ou escopo específico, adicione suporte a esse escopo no manifesto do aplicativo.

Cada mensagem em uma conversa de bot é um Activity objeto do tipo messageType: message. Quando um usuário envia uma mensagem, o Teams posta a mensagem no bot e o bot manipula a mensagem. Além disso, para definir os comandos principais aos quais o bot responde, você pode adicionar um menu de comando com uma lista suspensa de comandos para o bot. Bots em um grupo ou canal só recebem mensagens quando são mencionados @botname. O Teams envia notificações ao bot de eventos de conversa que ocorrem em escopos onde o bot está ativo. Você pode capturar esses eventos em seu código e agir sobre eles.

Um bot também pode enviar mensagens proativas aos usuários. Uma mensagem proativa é qualquer mensagem enviada por um bot que não responde a uma solicitação de um usuário. Você pode formatar suas mensagens de bot para incluir cartões avançados que incluem elementos interativos, como botões, texto, imagens, áudio, vídeo e assim por diante. O bot pode atualizar dinamicamente as mensagens depois de enviá-las, em vez de ter suas mensagens como instantâneos estáticos de dados. As mensagens também podem ser excluídas usando o método do DeleteActivity Bot Framework. A solicitação de saída para o bot mostra a ID da conversa e a ID do locatário nos cabeçalhos.

O bot de notificação é um tipo de bot de conversa, que envia notificações como texto simples ou Cartões Adaptáveis. O modelo de bot de notificação cria um aplicativo que envia uma mensagem ao Teams com cartões adaptáveis disparados por solicitação de postagem HTTP.

O bot de comando é um tipo de bot de conversa que pode responder a comandos simples enviados em chats com Cartões Adaptáveis. Você pode criar modelos de bot de comando no Teams para responder aos comandos de chat exibindo a interface do usuário usando um Cartão Adaptável.

O bot de fluxo de trabalho é um tipo de bot de conversa, que interage com os usuários no Cartão Adaptável. Você pode personalizar como o bot envia o Cartão Adaptável para os usuários.

Adicionar autenticação SSO aos bots de conversa

Você pode adicionar autenticação de logon único ao bot de conversa usando as seguintes etapas:

Próxima etapa

Confira também