Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
As extensões de mensagem permitem que os usuários interajam com seu serviço Web por meio de botões e formulários no cliente do Microsoft Teams. Os usuários podem pesquisar ou iniciar ações em um sistema externo a partir da área de redação da mensagem, da caixa de comando ou diretamente de uma mensagem. Os resultados dessas interações podem ser retornados ao cliente do Teams como um card com formatação avançada.
Importante
As extensões de mensagem estão disponíveis na Nuvem da Comunidade Governamental (GCC), GCC High, Departamento de Defesa (DoD) e ambientes Teams operados pela 21Vianet .
O artigo fornece uma visão geral das extensões de mensagem, casos de uso, funcionalidade, comandos de ação e pesquisa e descompactação de links.
A imagem a seguir exibe os locais de onde as extensões de mensagem podem ser invocadas:
Observação
- @mentioning Não há suporte para extensões de mensagem na caixa de redação.
- Não há suporte para as opções de extensão de mensagem em chats em grupo com usuários externos.
Cenários em que as extensões de mensagem são usadas
| Cenário | Exemplo |
|---|---|
| Você precisa de um sistema externo para executar uma ação e retornar o resultado para sua conversa. | Reserve um recurso e permita que o canal saiba o intervalo de tempo reservado. |
| Você precisa procurar algo em um sistema externo e compartilhar os resultados com a conversa. | Procure um item de trabalho no Azure DevOps e compartilhe-o com o grupo como um Cartão Adaptável. |
| Você deseja concluir uma tarefa complexa que envolve várias etapas ou grandes quantidades de informações em um sistema externo e compartilhar os resultados em uma conversa. | Crie um bug no seu sistema de acompanhamento com base em uma mensagem do Teams, atribua esse bug e envie um card para o thread de conversa com os detalhes do bug. |
Entenda como funcionam as extensões de mensagem
Uma extensão de mensagem é composta por um serviço Web hospedado por você e um manifesto de aplicativo que define o local em que seu serviço Web é invocado no cliente do Teams. O serviço Web utiliza o esquema de mensagens e o protocolo de comunicação segura do Bot Framework, portanto, você deve registrar seu serviço Web como um bot no Bot Framework.
Observação
Embora seja possível criar manualmente o serviço Web, recomendamos usar o SDK do Bot Framework para trabalhar com o protocolo.
No manifesto do aplicativo (anteriormente chamado de manifesto do aplicativo do Teams), uma única extensão de mensagem é definida com até 10 comandos diferentes. Cada comando define um tipo, como ação ou pesquisa e os locais no cliente de onde a extensão de mensagem é invocada. Os locais de invocação incluem a área de redação de mensagem, a barra de comandos e a mensagem. Ao invocar, o serviço Web recebe uma mensagem HTTPS com uma carga JSON com todas as informações relevantes. Responda com um conteúdo JSON para informar o cliente do Teams sobre a próxima interação a ser habilitada.
Tipos de comandos de extensão de mensagem
Há dois tipos de comandos de extensão de mensagem: comando de ação e comando de pesquisa. O tipo de comando de extensão de mensagem define os elementos de interface do usuário e os fluxos de interação disponíveis para seu serviço Web. Determinadas interações, como autenticação e configuração, estão disponíveis para ambos os tipos de comandos.
Comandos de ação
Os comandos de ação são usados para apresentar aos usuários um pop-up modal para coletar ou exibir informações. Quando o usuário envia o formulário, seu serviço Web responde inserindo uma mensagem diretamente na conversa ou na área de redação de mensagem. Posteriormente, o usuário poderá enviar a mensagem. Para fluxos de trabalho mais complexos, você pode vincular vários formulários.
Os comandos de ação são disparados a partir da área de redação de mensagem, da caixa de comando ou de uma mensagem. Quando o comando é invocado de uma mensagem, o conteúdo JSON inicial enviado ao bot inclui toda a mensagem da qual ele foi invocado. A imagem a seguir exibe a caixa de diálogo de comando de ação de extensão de mensagem (referida como módulo de tarefa no TeamsJS v1.x):
Comandos de pesquisa
Os comandos de pesquisa permitem que os usuários pesquisem informações em um sistema externo. Para usar comandos de pesquisa, insira uma consulta manualmente na caixa de pesquisa ou insira um link para um domínio monitorado na área de redação de mensagem e, em seguida, incorpore os resultados da pesquisa em uma mensagem. Em um fluxo de comando de pesquisa simples, a mensagem de invocação inicial inclui a cadeia de caracteres de pesquisa enviada pelo usuário. Você responderá com uma lista de cartões e visualizações de cartões. O cliente do Teams renderiza uma lista de visualizações de cartão para o usuário. Quando o usuário seleciona um cartão, o cartão de tamanho completo é inserido na área de redação da mensagem.
Os cartões são disparados da área de redação de mensagem ou da caixa de comando, mas não de uma mensagem. Eles não podem ser disparados a partir de uma mensagem. A imagem a seguir exibe a caixa de diálogo do comando de pesquisa de extensão de mensagem:
Observação
Para obter mais informações sobre cartões, consulte o que são cartões.
Desenrolamento de link
Observação
O desenrolamento de link tem suporte apenas para extensões de mensagem baseadas em bot.
Quando uma URL é colada na área de redação de mensagem, um serviço Web é chamado. Essa funcionalidade é conhecida como desenrolamento de link. Você pode se inscrever para receber uma mensagem de invocação quando URLs que contêm um domínio específico forem coladas na área de redação de mensagem. Seu serviço Web pode descompactar a URL em um card detalhado, fornecendo mais informações do que o card de visualização de site padrão. Você pode adicionar botões para permitir que os usuários executem ações imediatamente sem sair do cliente do Teams. As imagens a seguir exibem o recurso de descompactação de link quando um link é colado em uma extensão de mensagem:
Compilar extensões de mensagens.
Para criar uma extensão de mensagem, se você ainda não tiver uma, há duas maneiras:
Criar extensões de mensagem usando a API (baseada em API): você pode criar facilmente uma extensão de mensagem de uma API existente. Um documento de descrição do OpenAPI (OAD) é necessário para esse método.
Criar extensões de mensagem usando o Bot Framework (baseado em Bot): se você quiser uma experiência de conversa individual, poderá criar uma nova extensão de mensagem de um bot.
Observação
Os agentes fornecem uma experiência mais flexível, inteligente e pronta para o futuro que permite um raciocínio mais avançado, um desenvolvimento mais simples e um melhor alinhamento com o Teams em evolução e a plataforma Microsoft 365. Recomendamos que você explore e crie agentes.
Para obter mais informações, confira Criar agentes declarativos e Criar agentes no Teams.
Se você tiver uma extensão de mensagem baseada em bot existente, também poderá estendê-la como um agente .
A tabela a seguir ajuda você a selecionar um tipo de extensão de mensagem para começar:
Extensão de mensagem baseada em API
- Mais simples e rápido de criar e manter.
- A extensão de mensagem usa uma API.
- Nenhum código ou recurso extra é necessário para a lógica do bot.
- Ideal para cenários em que a extensão de mensagem só precisa se comunicar com um serviço Web e não precisa de nenhuma lógica complexa ou gerenciamento de estado.
- O tráfego é privatizado, pois não depende da infraestrutura de bot do Azure.
- Dá suporte a comandos de pesquisa.
Extensão de mensagem baseada em bot
- Mais flexível.
- A extensão de mensagem usa um Bot Framework.
- Pode usar todos os recursos de um bot.
- Ideal para cenários em que a extensão de mensagem precisa se comunicar com vários serviços, gerenciar lógica complexa ou interações do usuário ou manter o estado entre sessões.
- Dá suporte a comandos de ação, comandos de pesquisa e desdobramento de links.
Selecione uma opção para começar a criar uma extensão de mensagem:
Exemplo de código
| Nome de exemplo | Descrição | .NET | Node.js | Python |
|---|---|---|---|---|
| Extensão de mensagem com comandos baseados em ação | Este exemplo demonstra como criar Extensões de Mensagem Action-Based para o Microsoft Teams, permitindo que os usuários gerem conteúdo de forma interativa. Ele apresenta bots, extensões de mensagem e integração perfeita com entradas do usuário para funcionalidade aprimorada. | View | View | View |
| Extensão de mensagem com comandos baseados em pesquisa | Este exemplo demonstra como criar uma Extensão de Mensagem no Microsoft Teams que permite aos usuários realizar pesquisas e recuperar resultados. | View | View | View |
| Visualização da ação de extensão de mensagem | Este aplicativo de exemplo ilustra como utilizar visualizações de ações nas Extensões de Mensagens do Teams, permitindo que os usuários criem cartões a partir da entrada em um Módulo de Tarefas. Ele mostra interações de bot que aprimoram o envolvimento do usuário atribuindo mensagens aos usuários. | View | View | NA |
| Ação de extensão de mensagem para agendamento de tarefas | Este exemplo demonstra uma Extensão de Mensagem que permite aos usuários agendar tarefas e receber cartões de lembrete no Microsoft Teams. | View | View | NA |
| Extensão de mensagem de inventário Northwind | Este exemplo implementa uma extensão de mensagem do Teams que pode ser usada como um plug-in para o Microsoft 365 Copilot. A extensão de mensagem permite que os usuários consultem o banco de dados Northwind. | NA | View | NA |