Como criar um aplicativo para o Microsoft Teams?
Criar e distribuir um aplicativo na plataforma do Microsoft Teams inclui decidir o que criar, criar serviços Web, criar um pacote do aplicativo e distribuir esse pacote aos usuários finais. Cabe aos administradores da empresa decidir quem pode acessar e instalar o aplicativo. São os usuários que decidem instalar seu aplicativo em um contexto específico. Vamos analisar essas etapas com mais detalhes.
Criar seu aplicativo
A etapa mais importante na criação de um aplicativo bem-sucedido no Microsoft Teams é escolher a combinação correta de pontos de extensibilidade e elementos da interface do usuário a serem utilizadas. Você deve investir tempo o suficiente para entender o problema que está tentando resolver com seu aplicativo e mapear sua solução pelas diversas formas que os usuários podem interagir com seu aplicativo no cliente do Microsoft Teams. Não subestime a importância do contexto e do escopo. Um bot conversacional que funciona bem em um chat individual pode não funcionar como parte de um chat em grupo ou em um canal de conversa.
Aqui está um resumo do que está disponível para você e alguns cenários mais adequados. Pode realizar muitas tarefas de várias formas; escolher a ferramenta certa para a tarefa irá proporcionar uma melhor experiência de utilizador.
- Extensões de mensagens – comandos de pesquisa são úteis para permitir que os usuários procurem um sistema externo e compartilhem os resultados dessa pesquisa dentro do Teams. Com cartões e ações de cartões, você pode formatar de forma avançada os resultados dessa pesquisa e permitir que os usuários realizem ações no resultado sem sair do cliente do Microsoft Teams.
- Extensões de mensagens – comandos de ação são ideais para coletar informações do seu usuário em um único local e enviar essas informações ao seu serviço Web. Elas se sobressaem em cenários nos quais você precisa criar algum tipo de registro ou coletar mais informações como parte de uma única transação.
- Guias – em grupos e em canais oferecem uma tela compartilhada para a colaboração de várias pessoas. Você deve adicionar isso ao seu aplicativo se tiver informações ou serviços que são aplicáveis a um grupo de pessoas. Considere que todas as pessoas estão trabalhando na mesma tela, então sua página deve ser sem estado e funcionar como um aplicativo de uma única página.
- Guias – em aplicativos pessoais permitem uma experiência pessoal como na Web. Elas geralmente são o ideal para cenários “hub” – “atribuído a mim” ou “coisas que eu criei”. Também podem ser úteis para conteúdo estático como páginas de ajuda ou sobre.
- Bots conversacionais – em grupos ou em canais ajudam a adicionar informações extras a uma conversa que são úteis para todas as pessoas (ou a maioria) envolvidas. Podem ser usados para adicionar, de forma proativa, informações relevantes à conversa ou responder a solicitação de usuário (“bot, crie uma votação com a pergunta se devemos ir almoçar”). Geralmente eles não deveriam ser usados para conversas com interação multi-turn – use um módulo de tarefa para coletar informações ou mover a conversa para um chat individual e inserir os resultados de volta na conversa original.
- Bots conversacionais – em aplicativos pessoais permitem diversas cargas de trabalho. Bots de Perguntas e Respostas, bots que iniciam fluxos de trabalho em outros sistemas, bots que contam piadas e bots que fazem anotações são alguns exemplos. Sempre considere se uma interface baseada em conversa é a melhor maneira de apresentar sua funcionalidade.
- Webhooks e Conectores são úteis para permitir que os utilizadores subscrevam um canal para notificações de mensagens de um sistema externo.
- Aplicativos de reunião permitem colaboração, parceria, comunicação informada e comentários compartilhados. O aplicativo de reunião pode fornecer uma experiência do usuário em cada estágio do ciclo de vida da reunião. O ciclo de vida da reunião inclui a experiência de aplicativo de pré-reunião, em reunião e pós-reunião, dependendo do status do participante. Neste módulo, você aprenderá a criar aplicativos personalizados a serem usados em reuniões do Microsoft Teams.
Os melhores aplicativos geralmente usam mais de um ponto de extensão. Por exemplo, digamos que sua empresa quer permitir que pessoas enviem sugestões para melhorias. Você pode criar uma extensão de mensagem de comando de pesquisa para encontrar e compartilhar sugestões existentes, adicionar um comando de ação para permitir que usuários criem e atualizem sugestões, uma guia de canal para uma equipe visualizar todas as sugestões atribuídas a ela e uma guia pessoal para o usuário visualizar todas as sugestões que já enviou. Adicione um bot conversacional ativado por processamento de linguagem natural e aprendizado de máquina, permitindo que usuários realizem pesquisas complexas pelas sugestões, e você terá um aplicativo do Teams totalmente disponível e integrado.
Preparar seu ambiente de desenvolvimento
No mínimo, você precisará de acesso a uma organização do Microsoft 365 com o upload de aplicativos personalizados ativado. Se você não tiver um, poderá obter uma organização de desenvolvimento inscrevendo-se no Programa para desenvolvedores do Microsoft 365 . Você também precisa de uma forma para implantar e hospedar seus serviços Web. Para desenvolvimento local, você pode usar serviço de túnel como ngrok, mas, para produção, você provavelmente vai querer implantar seus serviços em um provedor de serviços de nuvem como Azure. Você pode usar infraestrutura no local para hospedar seus serviços Web, mas devem ser acessíveis publicamente, e não protegidos por firewall.
Escolher seu ambiente de desenvolvimento
Desenvolvedores possuem múltiplas opções ao criar aplicativos do Microsoft Teams.
O gerador do Yeoman para Microsoft Teams baseado na comunidade, também conhecido como Yo Teams, realiza scaffolding em um projeto quando o desenvolvedor responde algumas perguntas sobre o tipo de aplicativo do Microsoft Teams que está criando. Você pode saber mais sobre o gerador do Yeoman para Microsoft Teams em: Criar meu primeiro aplicativo do Microsoft Teams.
O Kit de Ferramentas do Microsoft Teams permite criar aplicativos personalizados do Teams diretamente no ambiente do Visual Studio Code. O kit de ferramentas guia você através do processo e fornece o necessário para criar, depurar e iniciar seu aplicativo do Teams. Saiba mais sobre o Kit de Ferramentas do Microsoft Teams para o Visual Studio Code aqui: Criar aplicativos com o Kit de Ferramentas do Microsoft Teams.
Criar serviços Web
Depois de decidir como os usuários vão interagir com seu aplicativo, é hora de criar serviços Web para potencializá-lo. Dependendo do que está criando, o Teams oferece vários SDKs, modelos, exemplos de código e geradores para ajudá-lo a começar, incluindo:
- SDK do Bot Framework para extensões de mensagens e bots conversacionais
- SDK do cliente JavaScript do Teams para guias e páginas de outros conteúdos
- Um gerador do Yeoman para criar aplicativos no Node.js
- Um conjunto de controles de software livre para suas páginas de conteúdo Web e interface de usuário do Fluent
- Modelos de aplicativos prontos para produção
Para a lista completa de ferramentas e amostras disponíveis para ajudar você a começar, confira a documentação completa.
Você precisa hospedar seus serviços Web de forma que os deixe acessíveis publicamente na internet (geralmente em um provedor de serviços de nuvem como Microsoft Azure) e distribuir conteúdo por HTTPS.
Criar um pacote do aplicativo
Com os serviços Web em funcionamento, você precisa criar um pacote de aplicativos que podem ser distribuídos e instalados no Microsoft Teams. O pacote do aplicativo possui dois ícones e um arquivo de manifesto JSON descrevendo os metadados para seu aplicativo, os pontos de extensão que o aplicativo está usando e ponteiros para os serviços que ativam esses pontos de extensão.
Ao criar seu pacote de aplicativos, você pode escolher criá-lo manualmente ou usar o App Estúdio, que é um aplicativo dentro do Teams que ajuda você a criar aplicativos do Teams. App Studio o guiará pela criação do manifesto do aplicativo e também ajudará a registrar seu bot com o Bot Framework. Ele também possui um designer de cartões para ajudá-lo a criar visualmente cartões e ações de cartões, e enviar exemplos para você no Teams.
Distribuir seu aplicativo
Você tem três opções para distribuir seu aplicativo personalizado do Microsoft Teams, dependendo do seu público-alvo.
- Compartilhar diretamente o pacote do aplicativo. Você pode escolher compartilhar o pacote do aplicativo diretamente com os usuários. Isso é útil se seu aplicativo for direcionado a um público limitado (duas equipes ou pessoas) e durante o desenvolvimento e teste do aplicativo.
- Publicar seu aplicativo ao catálogo de aplicativos da sua organização. Se o aplicativo se aplica a uma empresa específica ou se você personalizou seu aplicativo para atender às necessidades específicas da sua organização, um administrador de locatários pode carregar seu aplicativo ao catálogo de aplicativos da organização. Isso disponibiliza o aplicativo para todas as pessoas da organização instalarem, mas não o instala automaticamente.
- Publicar seu aplicativo na loja de aplicativos pública. Se seu aplicativo for destinado para todos os usuários do Teams, de qualquer lugar, você pode enviar seu aplicativo para publicação na loja de aplicativos pública. Você passará por um processo de revisão rigoroso, então verifique se prestou atenção nos pequenos detalhes.
Ao distribuir seu aplicativo, você deve considerar não apenas o público desejado, mas também as políticas de TI em vigor na organização com a qual você quer compartilhar seu aplicativo. Cada organização possui controle total sobre a decisão de quais aplicativos serão carregados ao seu catálogo de aplicativos e quais aplicativos estarão disponíveis para instalar da loja de aplicativos.
Instalar aplicativos
A instalação de aplicativos no Microsoft Teams é específica ao contexto. Instalar parte do aplicativo pessoal do seu aplicativo (coisas que são delimitadas a um usuário individual), não instala seu aplicativo em nenhuma equipe específica e vice-versa. Instalar seu aplicativo em uma equipe específica não instala seu aplicativo em nenhuma outra equipe. Isso significa que você não deve supor que seu aplicativo seja instalado em todos os contextos possíveis, ele provavelmente não é. Os administradores de TI de uma organização têm controle total sobre quem pode instalar, quais aplicativos e em qual contexto, então você também não deve presumir que o usuário com o qual seu aplicativo está interagindo atualmente possui permissão para instalar seu aplicativo em um contexto diferente.
Qualquer que seja o resultado, a instalação de um aplicativo diretamente de um pacote do aplicativo tende a ser estritamente limitada, então se você escolher distribuir seu aplicativo ao compartilhar diretamente seu pacote do aplicativo, garanta que os usuários conseguirão instalá-lo.