Partilhar via


Definir comandos de pesquisa de extensão de mensagem

O comando de pesquisa é invocado de qualquer um ou ambos os seguintes locais:

  • Área redigir mensagem: os botões na parte inferior da área de mensagem de redação.
  • Caixa de comando: usando /na caixa de comando. Por exemplo, /your-app-name. Se você estiver usando o teams clássico, o comando de pesquisa será invocado na @mentioning caixa de comando. Por exemplo, @your-app-name.

Quando um comando de pesquisa é invocado da área de mensagem de composição, o usuário envia os resultados para a conversa. Quando um comando de pesquisa invocado da caixa de comando, o usuário interage com o cartão resultante ou copia-o para uso em outro lugar.

A imagem a seguir exibe os locais de invocação do comando de pesquisa:

A captura de tela mostra os locais de invocação de um comando de pesquisa em um canal do Teams.

Adicionar o comando de pesquisa ao manifesto do aplicativo

Para adicionar o comando de pesquisa ao manifesto do aplicativo (anteriormente chamado de manifesto do aplicativo teams), você deve adicionar um novo composeExtensions objeto ao nível superior do JSON do manifesto do aplicativo. Você pode adicionar o comando de pesquisa com a ajuda do Portal do Desenvolvedor ou manualmente.

Criar extensão de mensagem de pesquisa usando o Bot Framework

Você pode criar uma extensão de mensagem de pesquisa usando o Teams Toolkit e o Portal do Desenvolvedor para o Teams.

Pré-requisitos

Antes de começar, verifique se você atende aos seguintes requisitos:

Para criar uma extensão de mensagem baseada em pesquisa usando o Teams Toolkit, siga estas etapas:

  1. Abra o Visual Studio Code.

  2. No painel esquerdo, selecione Kit de Ferramentas do Teams.

  3. Selecione Criar um Novo Aplicativo.

  4. Selecione Extensão de Mensagem.

  5. Selecione Resultados da Pesquisa Personalizada.

  6. Selecione uma linguagem de programação.

  7. Selecione Pasta Padrão.

  8. Insira o nome do aplicativo e selecione Inserir.

    O Teams Toolkit faz scaffolds seu projeto e cria uma extensão de mensagem de pesquisa.

Para executar a extensão de mensagem no Teams, siga estas etapas:

  1. No painel esquerdo, selecione Kit de Ferramentas do Teams.

  2. Em CONTAS, entre com sua conta do Microsoft 365 e a conta do Azure se você ainda não tiver feito isso.

    A captura de tela mostra a opção de entrada do Microsoft 365 e do Azure no Teams Toolkit.

  3. No painel esquerdo, selecione Executar e Depurar (Ctrl+Shift+D).

  4. Na lista suspensa de configuração de inicialização, selecione Preview in Teams (Edge) ou Preview in Teams (Chrome). O Teams Toolkit inicia o cliente Web do Teams em uma janela do navegador.

  5. Vá para uma mensagem de chat e selecione o ícone Ações e aplicativos . No menu de sobrevoo, pesquise seu aplicativo.

  6. Selecione sua extensão de mensagem na lista e insira um comando de pesquisa na caixa de pesquisa.

  7. Selecione um item na lista. O item é desenrolado em um Cartão Adaptável na área de composição de mensagem.

  8. Selecione Enviar. O Teams envia o resultado da pesquisa como um Cartão Adaptável na mensagem de chat.

Estender a extensão de mensagem baseada em bot como plug-in

Importante

Os plug-ins para Microsoft Copilot para Microsoft 365 estão em versão prévia e funcionam apenas em Microsoft 365 Chat no Teams.

Os plug-ins do Microsoft 365 fornecem integração com vários produtos do Microsoft 365, como Teams e Outlook. A integração ajuda os usuários a pesquisar ou criar conteúdo em sistemas externos. Os plug-ins de extensão de mensagem permitem que Microsoft Copilot para Microsoft 365 interajam com APIs de outros softwares e serviços por meio de um bot. Recomendamos que você crie ou atualize suas extensões de mensagem existentes para maximizar sua utilidade e usabilidade em Copilot para Microsoft 365. Para obter mais informações, consulte estender a extensão de mensagem baseada em bot como plug-in para Copilot para Microsoft 365.

Trechos de código

O código a seguir fornece um exemplo de extensões de mensagem baseadas em pesquisa:

protected override async Task<MessagingExtensionResponse> OnTeamsMessagingExtensionQueryAsync(ITurnContext<IInvokeActivity> turnContext, MessagingExtensionQuery query, CancellationToken cancellationToken)
        {
            var text = query?.Parameters?[0]?.Value as string ?? string.Empty;

            var packages = new[] {
            new { title = "A very extensive set of extension methods", value = "FluentAssertions" },
            new { title = "Fluent UI Library", value = "FluentUI" }};

            // We take every row of the results and wrap them in cards wrapped in MessagingExtensionAttachment objects.
            // The Preview is optional, if it includes a Tap, that will trigger the OnTeamsMessagingExtensionSelectItemAsync event back on this bot.
            var attachments = packages.Select(package =>
            {
                var previewCard = new ThumbnailCard { Title = package.title, Tap = new CardAction { Type = "invoke", Value = package } };
                if (!string.IsNullOrEmpty(package.title))
                {
                    previewCard.Images = new List<CardImage>() { new CardImage(package.title, "Icon") };
                }

                var attachment = new MessagingExtensionAttachment
                {
                    ContentType = HeroCard.ContentType,
                    Content = new HeroCard { Title = package.title },
                    Preview = previewCard.ToAttachment()
                };

                return attachment;
            }).ToList();

            // The list of MessagingExtensionAttachments must we wrapped in a MessagingExtensionResult wrapped in a MessagingExtensionResponse.
            return new MessagingExtensionResponse
            {
                ComposeExtension = new MessagingExtensionResult
                {
                    Type = "result",
                    AttachmentLayout = "list",
                    Attachments = attachments
                }
            };
        }

Exemplo de código

Nome do exemplo Descrição .NET Node.js Manifesto
Pesquisa de extensão de mensagem do Teams Este exemplo mostra como criar uma extensão de mensagem baseada em pesquisa. Ele pesquisa pacotes NuGet e exibe os resultados na extensão de mensagens baseada em pesquisa. View View View

Guias passo a passo

Siga o guia passo a passo para criar uma extensão de mensagem baseada em pesquisa.

Próxima etapa

Confira também