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.
Importante
O SDK do TeamsFx não é mais suportado pela Microsoft para criar extensões do Microsoft 365 Copilot, agentes do Microsoft 365 ou cenários modernos de aplicativos do Teams. No momento, o SDK está em modo de substituição e receberá suporte apenas da comunidade no GitHub até setembro de 2026.
Para todos os novos desenvolvimentos com suporte da Microsoft (extensões do Copilot, agentes de IA, aplicativos do Teams ou extensibilidade mais ampla do Microsoft 365), use:
- SDK de Agentes do Microsoft 365 (recomendado para todas as novas experiências baseadas em agente ou Copilot)
- SDK do Teams (para criar bots e aplicativos exclusivos do Teams)
Novos projetos não devem ser criados com o TeamsFx. As soluções existentes do TeamsFx devem ser migradas para o SDK de Agentes do Microsoft 365.
A biblioteca de cliente JavaScript do Microsoft Teams (TeamsJS) pode ajudá-lo a criar experiências hospedadas no Teams, no aplicativo Microsoft 365 e no Outlook, onde o conteúdo do aplicativo é hospedado em um iFrame. A biblioteca é útil para o desenvolvimento de aplicativos com os seguintes recursos do Teams:
A partir da versão 2.0.0, a biblioteca TeamsJS existente (@microsoft/teams-js, ou simplesmente TeamsJS) é refatorada para permitir que os aplicativos do Teams sejam executados no Outlook e no aplicativo Microsoft 365, além do Microsoft Teams. De uma perspectiva funcional, a versão mais recente do TeamsJS dá suporte a todas as funcionalidades existentes do aplicativo Teams (v.1.x.x), adicionando a capacidade opcional de hospedar aplicativos do Teams no Outlook e no aplicativo Microsoft 365.
Aqui estão as diretrizes de controle de versão para vários cenários de aplicativo:
| Tipo de aplicativo | Versão do TeamsJS | Versão do Manifesto do aplicativo | Próximas etapas |
|---|---|---|---|
| Aplicativos do Teams estendidos no Outlook e Microsoft 365 | TeamsJS v2.19.0 ou posterior | v1.13 ou posterior | Estender um aplicativo do Teams para ser executado no Microsoft 365 ou Criar um novo aplicativo do Microsoft 365 |
| Aplicativos apenas Teams existentes | Atualizar para TeamsJS v2.19.0 ou posterior* | v1.12 ou posterior** | Entender a compatibilidade com versões anteriores do TeamsJS e atualizar para o TeamsJS v2.0 |
| Novos aplicativos apenas Teams | TeamsJS v2.19.0 ou posterior | v1.12 ou posterior** | Criar um novo aplicativo do Teams usando o Microsoft 365 Agents Toolkit |
* Use o TeamsJS mais recente para aproveitar as melhorias mais recentes e o suporte a novos recursos, incluindo aplicativos somente do Teams. Nenhum novo recurso ou melhoria será adicionado ao TeamsJS v1.13.0. Novos envios e atualizações de aplicativos agora exigem o TeamsJS v2.19.0 ou posterior. Para obter mais informações, consulte Biblioteca TeamsJS.
** Ao atualizar sua guia pessoal do Teams ou aplicativo de extensão de mensagem para o manifesto versão 1.13 ou posterior, ele se torna disponível em hosts Microsoft 365 por padrão. Para evitar o carregamento parcial em hosts sem suporte e garantir uma experiência de usuário consistente, defina os requisitos de tempo de execução no manifesto para controlar onde e como seu aplicativo aparece. Para obter mais informações, consulte Especificar requisitos de tempo de execução de host do Microsoft 365 no manifesto do aplicativo.
O restante deste artigo orienta você pela estrutura e pelas atualizações mais recentes da biblioteca TeamsJS.
Suporte do Microsoft 365 (execução de aplicativos do Teams no Microsoft 365 e Outlook)
O TeamsJS v.2.0 introduz a capacidade de determinados tipos de aplicativos do Teams serem executados em todo o ecossistema do Microsoft 365. Os outros hosts de aplicativo do Microsoft 365 (incluindo o aplicativo Microsoft 365 e o Outlook) para aplicativos do Teams dão suporte a um subconjunto dos tipos de aplicativo e recursos que você pode criar para a plataforma Teams. Esse suporte se expande ao longo do tempo. Para obter um resumo do suporte do host para aplicativos do Teams, consulte Suporte de recursos do TeamsJS no Microsoft 365.
Melhorar o desempenho do tempo de carregamento com a trepidação da árvore JavaScript
A partir da versão 2.31.0 e posterior, a biblioteca TeamsJS pode ser totalmente abalada em árvore. A agitação da árvore é uma otimização JavaScript que elimina o código não utilizado. Usando a trepidação de árvore quando um aplicativo é empacotado para implantação, você pode reduzir o tamanho do pacote, o que resulta em download mais rápido e melhor tempo de carregamento.
Como usar a trepidação de árvore com o TeamsJS
Para aproveitar a agitação da árvore ao agrupar o pacote do aplicativo, use um empacotador que dê suporte à vibração da árvore, como webpack ou Rollup. Quando a trepidação de árvore está habilitada, todo o código TeamsJS não utilizado é removido automaticamente no pacote final. Por exemplo, considere o seguinte código:
export function scanBarCode(barCodeConfig: BarCodeConfig): Promise<string> {
//implementation omitted
}
export function hasPermission(): Promise<boolean>{
//implementation omitted
}
export function requestPermission(): Promise<boolean>{
//implementation omitted
}
export function isSupported(): boolean {
//implementation omitted
}
Suponha que o módulo barCode no TeamsJS contenha as quatro funções hasPermission(), isSupported(), requestPermission(), e scanBarCode(BarCodeConfig). Se um aplicativo usar apenas a função, após a hasPermission() agitação da árvore, as outras três funções serão excluídas do pacote do aplicativo. Isso garante que os aplicativos permaneçam o mais leves possível e incluam apenas o código de que precisam.
Importante
Ao usar a trepidação de árvore, lembre-se das seguintes considerações:
- Se o aplicativo usar a CDN para consumir a biblioteca TeamsJS, a versão da biblioteca usada não será abalável em árvore.
- O tipo de biblioteca TeamsJS foi alterado de UMD (Universal Module Definition) para ESM (ECMAScript Modules) para suportar a agitação da árvore. No entanto, a versão UMD ainda é oferecida. Se um empacotador der suporte ao ESM, o pacote ESM de árvore instável do TeamsJS será usado, caso contrário, o pacote UMD será usado.
Novidades no TeamsJS versão 2.x.x
Há duas alterações significativas entre as versões do TeamsJS 1.x.x e a v.2.0.0 e posterior:
As funções de retorno de chamada agora retornam objetos Promise. A maioria das funções com parâmetros de retorno de chamada no TeamsJS v.1.12 são modernizadas para retornar um objeto JavaScript Promise para melhorar o manuseio de operações assíncronas e a legibilidade do código.
As APIs agora estão organizadas em recursos. Você pode pensar em recursos como agrupamentos lógicos de APIs que fornecem funcionalidade semelhante, como
authentication,dialog,chat, ecalendar. Cada namespace representa uma funcionalidade separada.
Dica
Você pode usar a extensão Microsoft 365 Agents Toolkit (anteriormente conhecido como Teams Toolkit) para Microsoft Visual Studio Code para simplificar o processo de atualização do TeamsJS v.2.0 para um aplicativo do Teams existente.
Compatibilidade com versões anteriores
Depois de começar a referenciar @microsoft/teams-js@2.0.0 (ou posteriormente) de um aplicativo do Teams existente, você verá avisos de substituição para todas as APIs de chamada de código que forem alteradas.
Uma camada de conversão de API (mapeando chamadas de API TeamsJS v.1 a v.2) é fornecida para permitir que os aplicativos existentes do Teams continuem funcionando no Teams até que possam atualizar o código do aplicativo para usar os padrões de API do TeamsJS v.2.
Autenticação
Na TeamsJS versão 2.11.0 ou posterior, os aplicativos devem fornecer um terceiro parâmetro de URL, hostRedirectUrl, na API de autenticação, para redirecionar os usuários para o cliente correto após a conclusão da autenticação. O hostRedirectUrl parâmetro de autenticação é necessário para permitir que seu cliente tenha suporte em aplicativos host do Microsoft 365. Os aplicativos implementados em versões mais antigas oferecem suporte apenas ao Teams após essa atualização, pois os parâmetros de TeamsJS consulta e authId são passados oauthRedirectmethod para o servidor de aplicativos de terceiros.
Para obter mais informações sobre o parâmetro de autenticação, consulte usar provedores OAuth externos.
Aplicativos do Teams em execução no Microsoft 365
A seguir estão os requisitos para permitir que um aplicativo Teams existente seja executado no Outlook e no Microsoft 365:
Dependência do TeamsJS versão 2.x.x (
@microsoft/teams-js@2.0.0) ou posterior.Modifique o código do aplicativo existente de acordo com as alterações necessárias descritas neste artigo.
Atualize o manifesto do aplicativo (anteriormente chamado de manifesto do aplicativo do Teams) para a versão 1.13 ou posterior.
Para obter mais informações, consulte Estender aplicativos do Teams no Microsoft 365.
Retornos de chamada convertidos em promessas
Observação
A getTabInstances API não está implementada no Teams para dispositivos móveis.
As APIs do Teams que anteriormente recebiam um parâmetro de retorno de chamada são atualizadas para retornar um objeto JavaScript Promise . Elas incluem as seguintes APIs:
app.getContext, app.initialize, appInstallDialog.openAppInstallDialog, app.openLink, authentication.authenticate, authentication.getAuthToken, authentication.getUser, authentication.registerAuthenticationHandlers was removed to support using Promises, calendar.openCalendarItem, calendar.composeMeeting, call.startCall, chat.getChatMembers, conversations.openConversation, location.getLocation, location.showLocation, mail.openMailItem, mail.composeMail, pages.backStack.navigateBack, pages.navigateToTab, pages.tabs.getMruTabInstances, pages.tabs.getTabInstances, pages.getConfig, pages.config.setConfig, pages.backStack.navigateBack, people.selectPeople, teams.fullTrust.getConfigSetting, teams.fullTrust.joinedTeams.getUserJoinedTeams
Você precisa atualizar a maneira como seu código chama qualquer uma dessas APIs para usar Promises. Por exemplo, se o código estiver chamando uma API Teams como esta:
Este código:
import microsoftTeams from "@microsoft/teams-js";
microsoftTeams.getContext((context) => { /* ... */ });
Precisa ser atualizado para:
import { app } from "@microsoft/teams-js";
app.getContext().then((context) => {
/*...*/
});
... ou o padrão async/await equivalente:
import { app } from "@microsoft/teams-js";
async function example() {
const context = await app.getContext();
/*...*/
}
Dica
Quando você usa o Agents Toolkit para atualizar para o TeamsJS v.2.0, as atualizações necessárias são sinalizadas para você com TODO comentários no código do cliente.
A comunicação entre nuvens por meio do SDK é restrita por motivos de segurança; portanto, o Teams operado pelo domínio 21Vianet não está incluído no validOrigins. Para permitir que um aplicativo funcione no Teams operado pela 21Vianet, especifique o domínio Teams operado pela 21Vianet durante a inicialização do SDK na implantação do aplicativo, usando o parâmetro validMessageOrigins .
import { app } from '@microsoft/teams-js';
app.initialize(["https://teams.microsoftonline.cn"]);
APIs organizadas em funcionalidades
Uma funcionalidade é um agrupamento lógico de APIs que fornecem funcionalidade semelhante. Você pode pensar no Microsoft Teams, no Outlook e no aplicativo Microsoft 365 como hosts do seu aplicativo de guia. Um host dá suporte a uma determinada funcionalidade se ele dá suporte a todas as APIs definidas dentro dessa funcionalidade. Um host não pode implementar parcialmente uma funcionalidade. Os recursos podem ser baseados em recursos ou conteúdo, como diálogo autenticação ou caixa de diálogo. Também há recursos para tipos de aplicativo, como páginas e outros agrupamentos.
Na Versão Prévia do SDK do TeamsJS v2.0, as APIs são definidas como funções em um namespace JavaScript cujo nome corresponde à funcionalidade necessária. Se um aplicativo estiver em execução em um host que dê suporte à funcionalidade caixa de diálogo, o aplicativo poderá chamar APIs com segurança, como dialog.open (além de outras APIs relacionadas à caixa de diálogo definidas no namespace). Se um aplicativo tentar chamar uma API que não tem suporte nesse host, a API gerará uma exceção.
Dica
Você pode verificar o suporte de host de uma determinada funcionalidade em runtime chamando a função isSupported() nessa funcionalidade (namespace).
Diferenciar sua experiência de aplicativo
Você pode verificar o suporte de host de uma determinada funcionalidade em runtime chamando a função isSupported() nessa funcionalidade (namespace). Ele retorna true se é compatível e false se não, e você pode ajustar o comportamento do aplicativo conforme apropriado. Isso permite que seu aplicativo ilumine a interface do usuário e a funcionalidade em hosts que dão suporte a ele, enquanto continua a ser executado para hosts que não têm.
O nome do host em que seu aplicativo opera é exibido como um valor de enumeração ContextHostName da interface (app.Context.app.host.name). Você pode consultar isso em tempo de execução invocando getContext. Para o cliente do Teams Clássico, esse valor pode retornar como desconhecido ou indefinido. Nesse caso, mapeie esses valores para o Teams Clássico.
O {hostName}valor do espaço reservado da URL também está disponível. No entanto, recomendamos usar o mecanismo hostName com discrição.
-
Não suponha que determinada funcionalidade esteja ou não esteja disponível em um host com base no valor da propriedade hostName. Em vez disso, verifique se há suporte para funcionalidades (
isSupported). -
Não use hostName para enviar chamadas à API. Em vez disso, verifique se há suporte para funcionalidades (
isSupported). - UsehostName para diferenciar o tema do seu aplicativo com base no host em que ele está sendo executado. Por exemplo, você pode usar Microsoft Teams púrpura como a cor de destaque principal ao executar em Teams e Outlook azul ao executar em Outlook.
- UsehostNamepara diferenciar as mensagens mostradas para o usuário com base no host em que ele está sendo executado. Por exemplo, mostre Gerenciar suas tarefas no Microsoft 365 ao executar no Microsoft 365 na Web e Gerenciar suas tarefas no Teams ao executar no Teams.
Dica
A prática recomendada é especificar os requisitos de tempo de execução e as dependências do seu aplicativo de maneira independente de host, em vez de usar maiúsculas e minúsculas especiais no código do aplicativo com lógica específica do host. Para obter mais informações, consulte como especificar os requisitos de tempo de execução do host do Microsoft 365 no manifesto do aplicativo.
Namespaces
A partir do TeamsJS v.2.0, as APIs são organizadas em funcionalidades por meio de namespaces. Vários novos namespaces de importância específica são aplicativo, páginas, caixa de diálogo e teamsCore.
namespace do aplicativo
O app namespace contém APIs de nível superior necessárias para o uso geral do aplicativo, no Teams, no aplicativo Microsoft 365 e no Outlook. Todas as APIs de vários outros namespaces do TeamsJS são movidas para o app namespace a partir do TeamsJS v.2.0:
Namespace original global (window) |
Novo namespace app |
|---|---|
executeDeepLink |
app.openLink (renomeado) |
initialize |
app.initialize |
getContext |
app.getContext |
registerOnThemeChangeHandler |
app.registerOnThemeChangeHandler |
Namespace original appInitialization |
Novo namespace app |
|---|---|
appInitialization.notifyAppLoaded |
app.notifyAppLoaded |
appInitialization.notifySuccess |
app.notifySuccess |
appInitialization.notifyFailure |
app.notifyFailure |
appInitialization.notifyExpectedFailure |
app.notifyExpectedFailure |
appInitialization.FailedReason enumeração |
app.FailedReason |
appInitialization.ExpectedFailureReason enumeração |
app.ExpectedFailureReason |
appInitialization.IFailedRequest enumeração |
app.IFailedRequest |
appInitialization.IExpectedFailureRequest enumeração |
app.IExpectedFailureRequest |
namespace de páginas
O pages namespace inclui funcionalidade para executar e navegar em páginas da Web em vários hosts do Microsoft 365, incluindo Teams, aplicativo Microsoft 365 e Outlook. Ele também inclui vários sub-recursos, implementados como sub-namespaces.
Namespace original global (window) |
Novo namespace pages |
|---|---|
setFrameContext |
pages.setCurrentFrame (renomeado) |
initializeWithFrameContext |
pages.initializeWithFrameContext |
registerFocusEnterHandler |
pages.registerFocusEnterHandler |
registerFullScreenHandler |
pages.registerFullScreenHandler |
returnFocus |
pages.returnFocus |
shareDeepLink |
pages.shareDeepLink |
Namespace original settings |
Novo namespace pages |
|---|---|
settings.getSettings |
pages.getConfig (renomeado) |
pages.tabs
Namespace original global (window) |
Novo namespace pages.tabs |
|---|---|
getTabInstances |
pages.tabs.getTabInstances |
getMruTabInstances |
pages.tabs.getMruTabInstances |
Namespace original navigation |
Novo namespace pages.tabs |
|---|---|
navigation.navigateToTab |
pages.tabs.navigateToTab |
pages.config
Namespace original settings |
Novo namespace pages.config |
|---|---|
settings.setSettings |
pages.config.setConfig (renomeado) |
settings.setValidityState |
pages.config.setValidityState |
settings.initialize |
pages.config.initialize |
settings.registerOnSaveHandler |
pages.config.registerOnSaveHandler |
settings.registerOnRemoveHandler |
pages.config.registerOnRemoveHandler |
settings.Settings interface |
pages.config.Config (renomeado) |
settings.SaveEvent interface |
pages.config.SaveEvent (renomeado) |
settings.RemoveEvent interface |
pages.config.RemoveEvent (renomeado) |
settings.SaveParameters interface |
pages.config.SaveParameters (renomeado) |
settings.SaveEventImpl interface |
pages.config.SaveEventImpl (renomeado) |
Namespace original global (window) |
Novo namespace pages.config |
|---|---|
registerChangeConfigHandler |
pages.config.registerChangeConfigHandler (renomeado) |
pages.backStack
Namespace original navigation |
Novo namespace pages.backStack |
|---|---|
navigation.navigateBack |
pages.backStack.navigateBack |
Namespace original global (window) |
Novo namespace pages.backStack |
|---|---|
registerBackButtonHandler |
pages.backStack.registerBackButtonHandler |
pages.appButton
Namespace original global (window) |
Novo namespace pages.appButton |
|---|---|
registerAppButtonClickHandler |
pages.appButton.onClick (renomeado) |
registerAppButtonHoverEnterHandler |
pages.appButton.onHoverEnter (renomeado) |
registerAppButtonHoverLeaveEnter |
pages.appButton.onHoverLeave (renomeado) |
FrameContext interface |
pages.appButton.FrameInfo (renomeado) |
namespace da caixa de diálogo
Observação
Recomendamos que você renderize uma caixa de diálogo dentro de seu próprio quadro, por exemplo, usando a caixa de diálogo Fluent V9 ou use a biblioteca de clientes JavaScript do Microsoft Teams (TeamsJS) para exibir uma caixa de diálogo do Teams usando o Cartão Adaptável ou um aninhado <iframe>.
O namespace de tarefas do TeamsJS é renomeado para diálogo e as seguintes APIs são renomeadas:
Namespace original tasks |
Novo namespace dialog |
|---|---|
tasks.startTask |
dialog.url.open, dialog.url.bot.open, dialog.adaptiveCard.open, dialog.adaptiveCard.bot.open |
tasks.submitTask |
dialog.url.submit (renomeado) |
tasks.updateTask |
dialog.update (renomeado) |
tasks.TaskModuleDimension enumeração |
dialog.DialogDimension (renomeado) |
tasks.TaskInfo interface |
dialog.DialogInfo (renomeado) |
Além disso, esse recurso é dividido em dois sub-recursos principais, dialog.url para caixas de diálogo baseadas em HTML e dialog.adaptiveCard para caixas de diálogo baseadas em Cartão Adaptável, com outros subnamespaces para caixas de diálogo baseadas em bot.
namespace do teamsCore
Para generalizar a biblioteca TeamsJS para executar outros hosts do Microsoft 365, como o aplicativo Microsoft 365 e o Outlook, a funcionalidade específica do Teams (originalmente no namespace global ) foi movida para um namespace teamsCore :
Namespace original global (window) |
Novo namespace teamsCore |
|---|---|
enablePrintCapability |
teamsCore.enablePrintCapability |
print |
teamsCore.print |
registerOnLoadHandler |
teamsCore.registerOnLoadHandler |
registerBeforeUnloadHandler |
teamsCore.registerBeforeUnloadHandler |
Atualizações para a interface de Contexto
A Context interface foi movida para o app namespace e atualizada para agrupar propriedades semelhantes para melhor escalabilidade à medida que é executada no Outlook e no aplicativo Microsoft 365, além do Teams.
Uma nova propriedade app.Context.app.host.name é adicionada para habilitar guias para diferenciar a experiência do usuário, dependendo do aplicativo host.
Você também pode visualizar as alterações revisando a transformLegacyContextToAppContext função na fonte do TeamsJS versão 2.x.x (arquivo app.ts ).
Nome original na interface Context |
Novo local em app.Context |
|---|---|
appIconPosition |
app.Context.app.iconPositionVertical |
appLaunchId |
NÃO EXISTE NO TeamsJS v.2.0 |
appSessionId |
app.Context.app.sessionId |
channelId |
app.Context.channel.id |
channelName |
app.Context.channel.displayName |
channelRelativeUrl |
app.Context.channel.relativeUrl |
channelType |
app.Context.channel.membershipType |
chatId |
app.Context.chat.id |
defaultOneNoteSectionId |
app.Context.channel.defaultOneNoteSectionId |
entityId |
app.Context.page.id |
frameContext |
app.Context.page.frameContext |
groupId |
app.Context.team.groupId |
hostClientType |
app.Context.app.host.clientType |
hostTeamGroupId |
app.Context.channel.ownerGroupId |
hostTeamTenantId |
app.Context.channel.ownerTenantId |
isCallingAllowed |
app.Context.user.isCallingAllowed |
isFullScreen |
app.Context.page.isFullScreen |
isMultiWindow |
app.Context.page.isMultiWindow |
isPSTNCallingAllowed |
app.Context.user.isPSTNCallingAllowed |
isTeamArchived |
app.Context.team.isArchived |
locale |
app.Context.app.locale |
loginHint |
app.Context.user.loginHint |
meetingId |
app.Context.meeting.id |
osLocaleInfo |
app.Context.app.osLocaleInfo |
parentMessageId |
app.Context.app.parentMessageId |
ringId |
app.Context.app.host.ringId |
sessionId |
app.Context.app.host.sessionId |
sourceOrigin |
app.Context.page.sourceOrigin |
subEntityId |
app.Context.page.subPageId |
teamId |
app.Context.team.internalId |
teamSiteDomain |
app.Context.sharepointSite.domain |
teamSitePath |
app.Context.sharepointSite.path |
teamSiteUrl |
app.Context.sharepointSite.url |
teamTemplateId |
app.Context.team.templateId |
teamType |
app.Context.team.type |
tenantSKU |
app.Context.user.tenant.teamsSku |
tid |
app.Context.user.tenant.id |
upn |
app.Context.user.userPrincipalName |
userClickTime |
app.Context.app.userClickTime |
userFileOpenPreference |
app.Context.app.userFileOpenPreference |
userLicenseType |
app.Context.user.licenseType |
userObjectId |
app.Context.user.id |
userTeamRole |
app.Context.team.userRole |
| NA | app.Context.app.host.name |
Atualizando para o TeamsJS versão 2.0
A maneira mais fácil de atualizar seu aplicativo Teams com o TeamsJS versão 2.0.x é usar a extensão Agents Toolkit para o Visual Studio Code. Esta seção orienta você pelas etapas para fazer isso. Se você preferir atualizar manualmente seu código, consulte as seções Retornos de chamada convertidos em promessas e APIs organizadas em recursos para obter mais informações sobre as alterações necessárias da API.
1. Instale a extensão mais recente do Kit de Ferramentas de Agentes do Visual Studio Code
No Marketplace de Extensões do Visual Studio Code, pesquise Microsoft 365 Agents Toolkit e instale a versão mais recente.
2. Atualizar referências do TeamsJS
Para ser executado no Outlook e no aplicativo Microsoft 365, seu aplicativo precisa depender do pacote @microsoft/teams-js@2.0.0npm (ou posterior). Para executar essas etapas manualmente e para obter mais informações sobre as alterações de API, consulte as seções a seguir sobre retornos de chamada convertidos em promessas e APIs organizadas em funcionalidades.
- Verifique se você tem o Agents Toolkit mais recente (versão 2.10.0 ou posterior)
- Abra a paleta de comandos:
Ctrl+Shift+P - Execute o comando
Teams: Upgrade Teams JS SDK references to support Outlook and Microsoft 365 apps.
Após a conclusão, o utilitário atualiza o package.json arquivo com a dependência do TeamsJS versão 2.x.x (@microsoft/teams-js@2.0.0 ou posterior) e *.js/.ts o e *.jsx/.tsx são atualizados com:
-
package.jsonreferências ao TeamsJS versão 2.x.x - Instruções de importação para TeamsJS versão 2.x.x
- Chamadas de função, enumeração e interface para o TeamsJS versão 2.x.x
-
TODOlembretes de comentário para examinar áreas que podem ser afetadas por alterações de contexto -
TODOlembretes de comentário para converter funções de retorno de chamada em promessas
Importante
O código dentro de arquivos html não é suportado pelas ferramentas de atualização e requer alterações manuais.
3. Atualizar o manifesto do aplicativo (opcional)
Se você estiver atualizando um aplicativo do Teams para ser executado no aplicativo Microsoft 365 e no Outlook, também precisará atualizar o manifesto do aplicativo para a versão 1.13 ou posterior. Você pode fazer isso facilmente com o Agents Toolkit ou manualmente.
- Abra a paleta de comandos:
Ctrl+Shift+P - Executar o Teams: atualize o manifesto do Teams para oferecer suporte ao comando Outlook e aplicativos do Microsoft 365 e selecione o arquivo de manifesto do aplicativo. As alterações são feitas no local.
Se você usou o Agents Toolkit para criar seu aplicativo pessoal, também pode usá-lo para validar as alterações no arquivo de manifesto do aplicativo e identificar quaisquer erros. Abra a paleta Ctrl+Shift+P de comandos e encontre o Teams: Valide o arquivo de manifesto ou selecione a opção no menu Implantação do Kit de Ferramentas de Agentes (procure o ícone do Teams no lado esquerdo do Visual Studio Code).
Próximas etapas
- Use a referência da biblioteca TeamsJS para começar a usar a biblioteca TeamsJS.
- Revise o changelog para obter as atualizações mais recentes do TeamsJS.