Compartilhar via


Nova solução VDI para o Teams

A nova solução VDI para o Teams é uma nova arquitetura para otimizar a entrega de cargas de trabalho multimédia em ambientes de trabalho virtuais.

Importante

Para participar na pré-visualização pública, os administradores têm de mover os utilizadores para o canal de pré-visualização pública, conforme descrito neste artigo.

Componentes

Componente Função Atualizar Tamanho Observações
Novo Teams vdiBridge Módulo de canal virtual do lado do servidor. Nova versão com cada nova versão do Teams. Agrupado com o novo Teams.
Canal virtual personalizado (VC) VC personalizado pertencente ao Microsoft Teams. API Estável – não estão previstas atualizações. Verifique a lista de permissões do Canal virtual da política do Citrix Studio.
Plug-in DLL do VC do lado do cliente. Responsável também pela transferência e limpeza do SlimCore. Não é frequente (idealmente, não existem atualizações). Aproximadamente 200 KB. Agrupado com o Cliente RD 1.2.5405.0 ou a Aplicação do Windows 1.3.252 ou superior. O Citrix CWA 2402 ou superior pode obter e instalar o plug-in.
SlimCore Motor de multimédia (específico do sistema operativo, não específico do fornecedor de VDI). Atualizado automaticamente para uma nova versão com cada nova versão do Teams. Aproximadamente 50 MB. Pacote MSIX alojado na CDN pública da Microsoft

Requisitos do sistema

Requisito Versão mínima
Novo Teams 24124.2315.2911.3357 (para o Azure Virtual Desktop/Windows 365)
24165.1410.2974.6689 (para Citrix)
Azure Virtual Desktop/Windows 365 Aplicação Windows: 1.3.252
Cliente de Ambiente de Trabalho Remoto: 1.2.5405.0
Citrix VDA: 2203 LTSR CU3 ou 2305 CR
Citrix Workspace app: 2203 LTSR (qualquer), 2402 LTSR ou 2302 CR
Ponto de extremidade Windows 10 1809 (requisito mínimo do SlimCore)
Os GPOs não podem bloquear instalações MSIX (consulte Passo 3: Teste e registo MSIX SlimCore no ponto final)
CPU mínima: Intel Celeron (ou equivalente) @ 1,10 GHz, 4 Núcleos, RAM Mínima: 4 GB

Otimizar com a nova solução VDI para o Teams

Passo 1: Confirmar os pré-requisitos

  1. Certifique-se de que tem a nova versão do Microsoft Teams 24124.2311.2896.3219 ou superior (para o Azure Virtual Desktop/Windows 365) e 24165.1410.2974.6689 ou superior para Citrix.
  2. Ative a nova política do Teams, se necessário , para um grupo de utilizadores específico (está ativada por predefinição a nível global ao nível da organização).
  3. Para o Citrix, tem de configurar a lista de permissões do Canal virtual , conforme descrito na secção Citrix Virtual channel allow list deste artigo.

Passo 2: Instalação do plug-in no ponto final

  1. Para o Azure Virtual Desktop e o Windows 365, o MsTeamsPluginAvd.dll é agrupado com o Cliente RD para Windows 1.2.5405.0 ou com a aplicação Da Loja de Aplicações do Windows 1.3.252 ou superior.
  • O plug-in encontra-se na mesma localização da pasta onde o Cliente rd está instalado. Será AppData\Local\Apps\Remote Desktop ou C:\Program Files (x86), dependendo do modo em que foi instalado.
  • Para a aplicação Da Loja de Aplicações do Windows , uma vez que é baseada em MSIX, encontra-se em C:\Programas\WindowsApps. O acesso a esta pasta é restrito.
  1. Para o Citrix CWA 2402 ou superior, MsTeamsPluginCitrix.dll podem ser instaladas:
  • Utilizar a interface de utilizador ao instalar o CWA: na página Suplementos , selecione a caixa de verificação Instalar plug-in VDI do Microsoft Teams e, em seguida, selecione Instalar. Aceite o contrato de utilizador apresentado e prossiga com a instalação da aplicação Citrix Workspace.

Nota

A aplicação Citrix Workspace 2402 só apresenta a IU de instalação do plug-in numa nova instalação. Para que as atualizações no local também apresentem esta opção, é necessária a aplicação Citrix Workspace 2405 ou superior.

  • Através da linha de comandos ou scripts para dispositivos geridos com: C:\>CitrixWorkspaceApp.exe installMSTeamsPlugin
  • Os administradores também podem instalar o plug-in manualmente sobre qualquer CWA suportado existente (consulte Requisitos de Sistema) através de ferramentas como o SCCM (utilizar o tipo de implementação do pacote de aplicações do Windows) ou o Intune (utilize a aplicação Linha de Negócio). Os administradores podem utilizar o msiexec com sinalizadores adequados, conforme abordado nesta documentação.

Importante

Pode encontrar a ligação de transferência msi de plug-in para clientes Citrix aqui.

O MSI de plug-in deteta automaticamente a pasta de instalação do CWA e coloca MsTeamsPluginCitrix.dll nessa localização:

Tipo de usuário Pasta de instalação Tipo de instalação
Administrador 64 bits: C:\Programas (x86)\Citrix\Cliente
ICA de 32 bits: C:\Programas\Citrix\Cliente ICA
Instalação por sistema
  • Os plug-ins não podem ser desclassificados, apenas atualizados ou reinstalados (reparados).
  • A instalação por utilizador do CWA não é suportada.
  • Se não for encontrado nenhum CWA no ponto final, a instalação será parada.

Passo 3: teste e registo msix do SlimCore no ponto final

O plug-in executa automaticamente este passo, sem intervenção do utilizador ou do administrador. O teste e o registo baseiam-se no Serviço de Preparação de Aplicações (ARS) no ponto final. É possível que a instalação do pacote MSIX seja bloqueada por chaves de registo definidas por uma Política de Grupo ou por uma ferramenta de terceiros. Para obter uma lista completa das chaves de registo aplicáveis, veja Como funciona a Política de Grupo com aplicações em pacote – MSIX.

As seguintes chaves de registo podem bloquear a instalação do novo pacote MSIX do motor de multimédia:

Importante

Se AllowAllTrustedApps estiver desativado, a nova instalação do motor de multimédia (MSIX) falhará. Este problema foi corrigido na atualização cumulativa de outubro do Windows KB5031455:

Se esta atualização de outubro opcional não estiver disponível para a compilação do SO, a atualização de segurança de novembro também inclui a correção.

Estas três chaves de registo podem ser encontradas em qualquer uma das seguintes localizações no dispositivo do utilizador:

  • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock
  • HKLM\SOFTWARE\Policies\Microsoft\Windows\Appx

Algumas políticas podem alterar estas chaves de registo e bloquear a instalação de aplicações na sua organização porque os administradores definem uma política restritiva. Algumas das políticas de GPO conhecidas que podem impedir a instalação incluem:

  • Impedir que os utilizadores não administradores instalem aplicações do Windows em pacote.
  • Permitir a instalação de todas as aplicações fidedignas (desativada).

Nota

O Controlo de Aplicações do AppLocker ou do Windows Defender também pode impedir a instalação do pacote MSIX.

Importante

Certifique-se de que não existe nenhuma configuração ou política de bloqueio ou adicione uma exceção para pacotes MSIX SlimCore na Política de Segurança Local –> Políticas de Controlo de Aplicações –> AppLocker.

Verificar se o ponto final está otimizado

Depois de cumprir todos os requisitos mínimos, iniciar o novo Teams pela primeira vez continuará no modo otimizado para WebRTC por predefinição.

Importante

Para experiências de primeira execução, são necessários dois reinícios de aplicações para obter a nova otimização.

Pode verificar no cliente do Teams que está otimizado com a nova arquitetura ao aceder às reticências (três pontos...) na barra superior e, em seguida, selecionar Definições > Acerca de. As versões do Teams e do cliente estão listadas aí.

O plug-in (MsTeamsPluginAvd.dll ou MsTeamsPluginCitrix.dll) é responsável por transferir eventualmente o motor de multimédia e o SlimCore, que é um pacote MSIX. Instala automaticamente sem privilégios de administrador ou reinícios no (por exemplo, o caminho exato varia):

C:\Program Files\WindowsApps\Microsoft.Teams.SlimCoreVdi.win-x64.2024.15_2024.15.1.5_x64__8wekyb3d8bbwe

O cliente de ambiente de trabalho remoto transfere o pacote x64 ou x86 SlimCore e o Citrix CWA transfere um pacote x86. Esta pasta está bloqueada, pelo que os utilizadores não têm acesso à mesma. Os administradores podem assumir a propriedade ao modificar ACLs, embora esta ação não seja recomendada. Em vez disso, utilize o PowerShell para listar as aplicações MSIX no ponto final:

PowerShellCopy

Get-AppxPackage Microsoft.Teams.SlimCore*

Importante

A Microsoft armazena até dez versões do SlimCoreVdi para efeitos de compatibilidade e, caso o utilizador aceda a diferentes ambientes VDI (por exemplo, persistentes, onde as novas atualizações automáticas do Teams se atualizam automaticamente e não são persistentes, onde as novas atualizações automáticas do Teams estão desativadas).

Se estiver otimizado, pode ver MsTeamsVdi.exe em execução no ponto final do Azure Virtual Desktop/W365 ou Citrix.

Se ativar o painel inferior e mudar para o separador DLL, também poderá ver o Plug-in a ser carregado. Esta ação é um passo de resolução de problemas útil caso não esteja a obter a nova otimização.

Roaming de sessão e restabelecimento de ligações

O Novo Teams carrega o WebRTC ou o SlimCore no momento do lançamento. Se as sessões de ambiente de trabalho virtual estiverem desligadas (sem sessão iniciada, o Teams é deixado em execução na VM), o novo Teams não pode mudar as pilhas de otimização, a menos que seja reiniciada. Como resultado, os utilizadores podem estar no modo de contingência (não otimizado) se percorrerem entre diferentes dispositivos que não suportam a nova arquitetura de otimização (por exemplo, um dispositivo MAC que é utilizado no BYOD enquanto trabalha a partir de casa e um cliente magro gerido pela empresa no escritório).

Opções de restabelecimento de ligação A otimização atual é o WebRTC A otimização atual é o SlimCore
Restabelecer ligação a partir de um ponto final sem o MsTeamsPlugin Otimização clássica do WebRTC Contingência (SlimCore local)
Voltar a ligar a partir de um ponto final com o MsTeamsPlugin Otimização clássica do WebRTC Nova otimização baseada em SlimCore

Considerações sobre a rede

Nota

MsTeamsVdi.exe é o processo que faz todas as ligações de rede TCP/UDP aos reencaminhamentos/servidores de conferências do Teams ou a outros elementos da rede.

O manifesto MSIX do SlimCore adicionará as seguintes regras à Firewall: <Rule Direction="in" IPProtocol="TCP" Profile="all" /><Rule Direction="in" IPProtocol="UDP" Profile="all" />

Certifique-se de que o dispositivo do utilizador tem conectividade de rede (UDP e TCP) ao ID de ponto final 11, 12, 47 e 127 descritos nos intervalos de URLs e endereços IP do Microsoft 365.

ID Categoria ER Endereços Portas Observações
11 Otimizar necessário Sim 13.107.64.0/18, 52.112.0.0/14, 52.122.0.0/15, 2603:1063::/38 UDP: 3478, 3479, 3480, 3481 Processadores de Multimédia e Reencaminhamento de Transporte 3478 (STUN), 347 (Áudio), 3480 (Vídeo), 3481 (Screenshare)
12 Permitir necessário Sim *.lync.com teams.microsoft.com, *.teams.microsoft.com13.107.64.0/18, 52.112.0.0/14, 52.122.0.0/15, 52.238.119.141/32, 52.244.160.207/32, 2603:1027::/48, 2603:1037::/48, 2603:1047::/48, 2603:1057::/48, 2603:1063::/38, 2620:1ec:6::/48, 2620:1ec:40::/42 TCP: 443, 80
47 Predefinição necessária Não *.office.net TCP: 443, 80 Utilizado para transferências e efeitos em segundo plano do SlimCore
127 Predefinição necessária Não *.skype.com TCP: 443, 80

Arquitetura de rede

A arquitetura de rede do Teams VDI 2.

Instruções da arquitetura no diagrama:

  1. Inicie o novo Teams.
  2. O cliente do Teams autentica-se nos serviços do Teams. As políticas de inquilino são enviadas para o cliente do Teams e as configurações relevantes são reencaminhadas para a aplicação.
  3. O Teams deteta que está em execução num ambiente de trabalho virtual e instancia o serviço vdibridge interno.
  4. O Teams abre um canal virtual seguro no servidor.
  5. O protocolo RDP ou HDX transporta o pedido para o Cliente RD ou a aplicação Citrix Workspace que carregou anteriormente o MsTeamsPlugin (componente de canal virtual do lado do cliente).
  6. A aplicação Cliente RD ou Citrix Workspace gera um novo processo chamado MsTeamsVdi.exe, que é o novo motor de multimédia (SlimCore) utilizado para a nova otimização.
  7. O motor de multimédia SlimCore (no cliente) e o msteams.exe (no ambiente de trabalho virtual) têm agora um canal bidirecional e podem começar a processar pedidos multimédia.

Chamadas de utilizador

  1. Peer A clica no botão de chamada. MsTeamsVdi.exe comunica com os serviços do Microsoft Teams no Azure, estabelecendo um caminho de sinalização ponto a ponto com o Elemento B. MsTeamsVdi.exe recolhe uma série de parâmetros de chamada suportados (codecs, resoluções, etc., que é conhecido como uma oferta SDP (Session Description Protocol). Estes parâmetros de chamada são depois reencaminhados através do caminho de sinalização para os serviços do Microsoft Teams no Azure e a partir daí para o outro elemento da rede.
  2. A oferta/resposta SDP (negociação de passagem única) ocorre através do canal de sinalização e as verificações de conectividade ice (NAT e Firewall transversal com pedidos de enlace STUN) são concluídas. Em seguida, o suporte de dados Secure Real-time Transport Protocol (SRTP) flui diretamente entre MsTeamsVdi.exe e o outro elemento da rede (ou Reencaminhamentos de Transporte do Teams ou servidores de Conferência).

Os blocos IP para sinalização, suporte de dados, efeitos de fundo e outras opções estão descritos neste artigo.

Tipos de tráfego processados pelo SlimCore no ponto final

  1. A conectividade dos fluxos de multimédia do Teams é implementada com o IETF Interactive Connectivity Establishment (ICE) padrão para procedimentos STUN e TURN.
  2. Meios de comunicação em tempo real. Dados encapsulados no Protocolo RTP (Real-Time Transport Protocol) que suporta cargas de trabalho de partilha de áudio, vídeo e ecrã. Em geral, o tráfego de multimédia é altamente sensível à latência. Este tráfego tem de seguir o caminho mais direto possível e utilizar o UDP versus TCP como protocolo de camada de transporte, que é o melhor transporte para suportes de dados interativos em tempo real numa perspetiva de qualidade.
  • Como último recurso, os suportes de dados podem utilizar TCP/IP e também ser túneis dentro do protocolo HTTP, mas não é recomendado devido a implicações de má qualidade.
  • O fluxo RTP é protegido com SRTP, no qual apenas o payload é encriptado.
  1. Sinalização. A ligação de comunicação entre o ponto final e os servidores do Teams, ou outros clientes, utilizada para controlar atividades (por exemplo, quando é iniciada uma chamada). A maioria do tráfego de sinalização utiliza o UDP 3478 com contingência para HTTPS, embora em alguns cenários (por exemplo, a ligação entre o Microsoft 365 e um Controlador de Limite de Sessão) utilize o protocolo SIP. É importante compreender que este tráfego é muito menos sensível à latência, mas pode causar interrupções do serviço ou tempos limite de chamada se a latência entre os pontos finais exceder vários segundos.

Consumo de largura de banda

O Teams foi projetado para dar a você a melhor experiência de compartilhamento de áudio, vídeo e conteúdo, independentemente das condições da sua rede. Quando a largura de banda é insuficiente, o Teams prioriza a qualidade do áudio em vez da qualidade do vídeo. Quando a largura de banda não é limitada, o Teams otimiza a qualidade dos suportes de dados, incluindo áudio de alta fidelidade, até 1080p de resolução de vídeo e até 30 fps (fotogramas por segundo) para vídeo e conteúdo. Para saber mais, leia Requisitos de largura de banda

Qualidade dos serviços (QoS)

Implemente definições de QoS para pontos finais e dispositivos de rede e determine como pretende processar o tráfego de multimédia para chamadas e reuniões.

  • Como pré-requisito, ative a QoS globalmente no Centro de Administração do Teams. Veja Configurar qoS no centro de administração do Teams para obter detalhes sobre como ativar os marcadores Inserir Qualidade de Serviço (QoS) para definições de tráfego de multimédia em tempo real .

    Intervalos de portas iniciais recomendados:

    Tipo de tráfego de mídia Intervalo de portas de origem do cliente Protocolo Valor DSCP Classe DSCP
    Áudio 50,000 - 50,019 TCP/UDP 46 Expedited Forwarding (EF)
    Vídeo 50,020 - 50,039 TCP/UDP 34 Assured Forwarding (AF41)
    Partilha de aplicações ou ecrãs 50,040 = 50.059 TCP/UDP 18 Assured Forwarding (AF41)
  • Para obter informações sobre como configurar marcas DSCP para pontos finais do Windows, veja Implementar QoS em clientes do Teams.

    Nota

    Qualquer marcação baseada em pontos finais tem de ser aplicada ao MsTeamsVdi.exe, o processo que processa todas as descargas de multimédia no dispositivo do utilizador.

  • Para obter informações sobre a implementação do QoS para routers, veja a documentação do fabricante.

  • A definição de QoS em dispositivos de rede pode incluir alguns ou todos:

    • utilizar Listas de Controlo de Acesso (ACLs) baseadas em portas
    • definir as filas QoS
    • definir marcas DSCP

Importante

Recomendamos que implemente estas políticas QoS com as portas de origem do ponto final e um endereço IP de origem e destino de "qualquer". Esta ação irá detetar o tráfego de multimédia de entrada e saída na rede interna.

  1. Rede VPN. Não é recomendado para o tráfego de multimédia.
  2. Formadores de pacotes. Qualquer tipo de farejador de pacotes, inspeção de pacotes, proxies ou dispositivos de formador de pacotes não são recomendados para o tráfego de multimédia do Teams e podem degradar significativamente a qualidade.

Política do PowerShell do Microsoft Teams para otimização

Os cmdlets CsTeamsVdiPolicy permitiram aos administradores controlar o tipo de reuniões que os utilizadores podem criar ou as funcionalidades às quais podem aceder numa reunião especificamente num ambiente VDI, onde a otimização do WebRTC foi desativada com o motor de política do Parceiro VDI (Citrix Studio, modelo ADMX VMware HTML5 ou esta chave de registo para AVD e Windows 365).

As configurações de política predefinidas são:

  • DisableCallsAndMeetings: Falso
  • DisableAudioVideoInCallsAndMeetings: False

Esta política é agora expandida com um argumento adicional como o único ponto de configuração para controlar se um utilizador pode ou não obter o novo modo de otimização com base no SlimCore (ou seja, os motores de política do Parceiro VDI não controlam o novo modo de otimização):

  • VDI2Optimization: Ativado (valor predefinido)
Nome Definição Exemplo Observações
New-CsTeamsVdiPolicy Permite que os administradores definam novas políticas de VDI que podem ser atribuídas aos utilizadores para controlar as funcionalidades do Teams relacionadas com reuniões num ambiente VDI. PS C:\> New-CsTeamsVdiPolicy -Identity RestrictedUserPolicy -VDI2Optimization "Disabled" O comando apresentado aqui utiliza o cmdlet New-CsTeamsVdiPolicy para criar uma nova política de VDI com a identidade RestrictedUserPolicy. Esta política utiliza todos os valores predefinidos para uma política VDI, exceto um: VDI2Optimization. Neste exemplo, os utilizadores com esta política não poderão ser otimizados com o SlimCore.
Grant-CsTeamsVdiPolicy Permite que os administradores atribuam uma política VDI do Teams num âmbito por utilizador para controlar o tipo de reuniões que um utilizador pode criar, as funcionalidades a que pode aceder num ambiente VDI não otimizado e se um utilizador pode ser otimizado com o novo modo de otimização com base no SlimCore. PS C:\> Grant-CsTeamsVdiPolicy -identity "Ken Myer" -PolicyName RestrictedUserPolicy Neste exemplo, é atribuído a RestrictedUserPolicy a um utilizador com a identidade "Ken Myer".
Set-CsTeamsVdiPolicy Permite que os administradores atualizem as políticas VDI existentes. PS C:\> Set-CsTeamsVdiPolicy -Identity RestrictedUserPolicy -VDI2Optimization "Disabled" O comando apresentado aqui utiliza o cmdlet Set-CsTeamsVdiPolicy para atualizar uma política VDI existente com o Identity RestrictedUserPolicy. Esta política utiliza todos os valores existentes, exceto um: VDI2Optimization; neste exemplo, os utilizadores com esta política não podem ser otimizados com o SlimCore.
Remove-CsTeamsVdiPolicy Permite que os administradores eliminem uma política VDI do Teams criada anteriormente. Os utilizadores sem uma política explicitamente atribuída reverterão para a política predefinida na organização. PS C:\> Remove-CsTeamsMeetingPolicy -Identity RestrictedUserPolicy No exemplo apresentado acima, o comando elimina a política de utilizador restrita da lista de políticas da organização e remove todas as atribuições desta política dos utilizadores que têm a política atribuída.
Get-CsTeamsVdiPolicy Permite que os administradores obtenham informações sobre todas as políticas VDI que foram configuradas na organização. PS C:\> Get-CsTeamsVdiPolicy -Identity SalesPolicy Neste exemplo, Get-CsTeamsVdiPolicy é utilizada para devolver a política de reunião por utilizador que tem uma Política de Vendas de Identidade. Uma vez que as identidades são exclusivas, este comando não devolve mais do que um item.

Lista de funcionalidades com a nova otimização

Recurso Disponível
1080p Sim
Aceleração de hardware no ponto final Sim
Vista de Galeria 3x3 e 7x7 Sim
Qualidade de Serviço Sim
Supressão de ruído Sim
HID Sim
Modo de apresentador Sim
Teams Premium Sim
(Pendente: Marca d'água, Câmaras Municipais, Decorar o Meu Fundo)
Efeito de fundo carregado pelo utilizador Em breve
Zoom +/- Em breve

Perfil de utilizador do SlimCore no ponto final

A nova solução para a VDI armazena dados específicos do utilizador no ponto final nas seguintes localizações, consoante o fornecedor:

  • C:\users\<user>\AppData\Roaming\Microsoft\TeamsVDI\avd-default-<cloudname>\
  • C:\users\<user>\AppData\Roaming\Microsoft\TeamsVDI\citrix-default-<cloudname>\

Importante

Os clientes magros bloqueados têm de permitir que estas localizações sejam de leitura/escrita, caso contrário, a nova otimização poderá falhar.

Os registos, configurações e modelos de IA ou ML (utilizados na supressão de ruído, estimativa de largura de banda, etc.) são guardados nesta localização. Se estas pastas forem removidas após o fim de sessão de um utilizador (por exemplo, clientes magros bloqueados sem perfis de roaming), MsTeamsVdi.exe irá recriá-las e transferir a configuração específica do utilizador (cerca de 6 MB de dados).

Processo de instalação e atualização do SlimCore em ambientes thin client bloqueados (opcional)

Por predefinição, o MsTeamsPlugin transfere e instala automaticamente a versão correta do motor de multimédia SlimCore sem intervenção de utilizador ou Administrador. No entanto, os clientes em ambientes de rede restritos na sucursal podem optar por um processo de distribuição SlimCore alternativo, sem exigir que o ponto final consiga obter pacotes SlimCore através de https da CDN pública da Microsoft.

Importante

Se tiver de escolher este método, tem de garantir que:

  1. A atualização automática do Teams está desativada no ambiente de trabalho virtual.
  2. Os pacotes SlimCore são pré-aprovisionados para a partilha de rede ou armazenamento local do ponto final antes de atualizar o novo Teams no ambiente de trabalho virtual. Qualquer versão mais recente do Teams pedirá uma nova versão correspondente do SlimCore e, se o plug-in não o conseguir encontrar, o utilizador estará no modo de contingência (composição do lado do servidor).

Isto deve-se ao facto de as novas versões do Teams e do SlimCore terem de corresponder.

Passos de configuração

  1. No ponto final do utilizador (cliente magro/cliente gordo), tem de criar a seguinte chave de registo:
  • Localização para Citrix: HKLM\SOFTWARE\WOW6432Node\Microsoft\Teams\MsTeamsPlugin
  • Localização do Azure Virtual Desktop/W365: HKLM\SOFTWARE\Microsoft\Teams\MsTeamsPlugin
  • Nome: MsixUrlBase
  • Tipo: REG_SZ
  • Dados: caminho UNC de armazenamento local ou de armazenamento de rede, como file://C:/Temp ou file://ComputerName/SharedFolder. A chave de registo define o URL base.
  1. Além disso, os administradores têm de transferir a versão exata do Pacote MSIX do SlimCore a partir da CDN da Microsoft que corresponde à nova versão do Teams que está a planear implementar no futuro.

Importante

O pacote MSIX tem de corresponder à arquitetura ou bitness da aplicação Citrix Workspace (apenas x86) ou do Ambiente de Trabalho Remoto ou dos clientes da Aplicação Windows: Microsoft.Teams.SlimCoreVdi.<platform>-<architecture>.msix.

  1. Coloque o MSIX numa pasta específica com a versão na localização especificada na chave de registo para preservar a estrutura. Por exemplo, C:\Temp\2024.4.1.9\Microsoft.Teams.SlimCoreVdi.win-x86.msix ou //ComputerName/SharedFolder/2024.4.1.9/.

Nota

Se o Plug-in não conseguir encontrar um pacote MSIX SlimCore no armazenamento local ou de rede, tenta transferi-lo automaticamente a partir da CDN pública da Microsoft como uma contingência.

Problemas conhecidos

  • Neste momento, as Aplicações Publicadas do Azure RemoteApps e do Citrix não são suportadas.
  • As chamadas são largadas no Teams em execução no computador local que tem um periférico HID ligado se um utilizador iniciar um ambiente de trabalho virtual a partir desse mesmo computador local e iniciar sessão no Teams.
  • Se tentar participar numa reunião logo após iniciar o novo Teams (por exemplo, clicar numa ligação avançada do Teams no Outlook sem ter novas Equipas em execução), a chamada poderá ser lançada.

Lista de permissões do canal virtual Citrix

A definição de política de lista de permissões de canal virtual no CVAD permite a utilização de uma lista de permissões que especifica quais os canais virtuais que podem ser abertos numa sessão do ICA. Quando ativado, todos os processos, exceto os canais virtuais incorporados do Citrix, têm de ser indicados. Como resultado, são necessárias mais entradas para que o novo cliente do Teams consiga ligar-se ao plug-in do lado do cliente (MsTeamsPluginCitrix.dll).

Com o Citrix Virtual Apps and Desktops 2203 ou posterior, a lista de permissões do canal virtual está ativada por predefinição. Estas predefinições negam o acesso aos novos canais virtuais personalizados do Teams, uma vez que a lista de permissões não inclui o novo nome do processo principal do Teams.

O novo cliente do Teams necessita de três canais virtuais personalizados para funcionar: MSTEAMS, MSTEAM1 e MSTEAM2. Estes canais são acedidos por ms-teams.exe. Pode utilizar carateres universais para permitir que o ms-teams.exe canal virtual executável e personalizado:

  • MSTEAMS,C:\Programas\WindowsApps\MSTeams*8wekyb3d8bbwe\ms-teams.exe
  • MSTEAM1,C:\Programas\WindowsApps\MSTeams*8wekyb3d8bbwe\ms-teams.exe
  • MSTEAM2,C:\Programas\WindowsApps\MSTeams*8wekyb3d8bbwe\ms-teams.exe
  1. O suporte de carateres universais está disponível em:
  • VDA 2206 CR.
  • VDA 2203 LTSR a partir de CU2 em diante.
  1. Os computadores VDA têm de ser reiniciados para que a política entre em vigor.

Compatibilidade com o Citrix App Protection e o Microsoft Teams

Os utilizadores com a Proteção de Aplicações ativada ainda podem partilhar o ecrã e as aplicações enquanto utilizam a nova otimização. A partilha requer a versão 2402 ou superior do VDA e o CWA para Windows 2309.1 ou superior. Os utilizadores em versões inferiores acabarão por partilhar um ecrã preto quando o módulo de Proteção de Aplicações estiver instalado e ativado.

Solução de problemas

  • Não otimizado com o SlimCore e, em vez disso, verá:
    "Otimizado para Multimédia do Azure Virtual Desktop""
    Citrix HDX Otimizado"

    • Os Códigos de Erro 2000 ("Sem Plug-in") e 2001 ("Canal Virtual não disponível") são as causas mais prováveis.
    1. Certifique-se de que a sua "lista de Permissões de Canal Virtual" está configurada corretamente para permitir o MSTEAMS, MSTEAM1 MSTEAM2.
    2. Certifique-se de que o ponto final tem o plug-in e é carregado pelo Cliente VDI com o Explorador de Processos:
    • Execute o explorador de processos.
    • Ative o painel inferior e mude para o separador DLL.
    • No Azure Virtual Desktop, procure o processo de msrdc.exe e certifique-se de que o MsTeamsPluginAvd.dll é carregado.
    • No Citrix, procure o processo de wfica32.exe e certifique-se de que o MsTeamsPluginCitrix.dll está carregado.
    1. Reinicie a nova aplicação Teams. Requer dois reinícios para fazer a transição do WebRTC para o SlimCore, quando o plug-in é detetado pela primeira vez.
    2. Se o problema persistir, verifique o Visualizador de Eventos na VM quanto a erros relacionados com vDI do Microsoft Teams (novo Teams 24123.X.X.X ou superior).
  • Não otimizado com o SlimCore e, em vez disso, verá: "Azure Virtual Desktop SlimCore Media Not Connected" ou "Citrix SlimCore Media Not Connected".

Novos registos do Teams para VDI

Os registos do Teams podem ser recolhidos ao selecionar Ctrl+Alt+Shift+1 enquanto executa o Teams numa VM. Esta ação produz uma pasta ZIP na pasta Transferências. No ficheiro PROD-WebLogs-*.zip, procure a pasta Core.

Azure Virtual Desktop/W365 Citrix
"vdiConnectedState": {"connectedStack": "remote"}, "vdiVersionInfo": {"bridgeVersion": "2024.18.1.11", "remoteSlimcoreVersion": "2024.18.01.11", "nodeId": "1051a908af6b160e", "clientOsVersion". "10.0.22631", "rdClientVersion": "1.2.5405.0", "rdClientProductName": "Microsoft® Remote Desktop", "pluginVersion": "2024.14.01.1", "screenShareFallback": true} "vdiConnectedState": {"connectedStack": "remote"}, "vdiVersionInfo": {"bridgeVersion": "2024.18.1.14", "remoteSlimcoreVersion": "2024.18.01.14", "nodeId": "ffffffff93eaee6a", "clientOsVersion": "10.0.22631", "rdClientVersion": "24.3.0.64", "rdClientProductName": "Citrix Workspace", "pluginVersion": "2024.15.01.3", "screenShareFallback": true}
  • vdiConnectedState mostra a pilha de chamadas ativa atual.
    • connectedStack: remote indica que o Teams se ligou com êxito ao ponto final remoto através do canal virtual. Não significa necessariamente que a pilha de chamadas foi inicializada com êxito, pelo que o utilizador ainda pode deparar-se com falhas relacionadas com chamadas, como não conseguir iniciar uma chamada.
    • connectedStack: local indica que a ligação do canal virtual falhou. O utilizador está agora no modo de contingência.
  • vdiVersionInfo fornece informações úteis para o cliente do Teams e o ponto final.
    • bridgeVersion está associada à versão do cliente de ambiente de trabalho do Teams em execução na VM.
    • remoteSlimcroreVersion é a versão do SlimCore VDI que está disponível no ponto final.
    • nodeId é um ID exclusivo associado ao ponto final.
    • clientOsVersion é a versão do SO para o ponto final.
    • rdClientVersion é a versão do cliente de ambiente de trabalho remoto em execução no ponto final, que é utilizado para ligar à VM.
    • rdClientProductName é o nome do cliente de ambiente de trabalho remoto em execução no ponto final.
    • pluginVersion é a versão do plug-in que está integrada no cliente de ambiente de trabalho remoto.

Diagnostics-logs.txt pode estar em weblogs\user(..)

Para investigar mais aprofundadamente problemas relacionados com a ligação VDI, a utilização da palavra-chave vdiBRidgeEventsHandler fornece os registos dos processamentos de eventos de ligação e desligamento vdiBridge, conforme mostrado (no Processamento de eventos ligados) no exemplo seguinte de uma ligação com êxito com a nova pilha de otimização:

7432 2024-03-01T17:51:22.032Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - onConnected: end, currentStack=remote 7435 2024-03-01T17:51:22.032Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - new calling stack type set: currentStack=remote 7436 2024-03-01T17:51:22.032Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - deviceManagerService reloaded 7445 2024-03-01T17:51:22.031Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - calling stack reinit complete with nextStack=remote 7464 2024-03-01T17:51:21.785Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - starting calling stack reinit with nextStack=remote 7465 2024-03-01T17:51:21.785Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - SlimCore replacement complete, remote is now available 7467 2024-03-01T17:51:21.783Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - setVDIOptimizationModeOverride: from SlimCore to SlimCore 7468 2024-03-01T17:51:21.782Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - onConnected: isVersionMismatch=false, forceVersion=undefined, bridgeVersion=2024.5.1.11 7469 2024-03-01T17:51:21.782Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - cached local SlimCore for future (fallback), currentStack=local 7470 2024-03-01T17:51:21.782Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - onConnected: start, vendorType=1, remoteSlimcoreVersion=2024.05.01.11, platform=win-x86, loadErrc=1, deployErrc=24002, nodeId=ffffffffbd7d5e77 7471 2024-03-01T17:51:21.782Z Inf vdiBridgeEventsHandler: VDI Mode: slimcore - enqueueBridgeCallback: adding onConnected to queue, 0 bridge callbacks in queue, isBridgeCallbacksQueueProcessing=false

Erro de ligação

Se existir um erro de ligação, o código de erro pode ser encontrado na linha de registo que contém "loadErrc" e "deployErrc". O código registado aqui tem de ser mapeado com esta tabela:

Código de erro deployErrc Definição Observações
0 0 OK Código especial para Mensagens de Telemetria "ConnectedNoPlugin".
5 43 ERROR_ACCESS_DENIED MsTeamsVdi.exe processo falhou no arranque. Pode ser causado pela ativação de BlockNonAdminUserInstall. Em alternativa, o ponto final pode estar ocupado a registar vários pacotes MSIX após o início de sessão de um utilizador e não terminou o registo de SlimCoreVdi.
404 3235 HTTP_STATUS_NOT_FOUND Problema de publicação: o pacote MSIX do SlimCore não foi encontrado na CDN.
1260 10083 ERROR_ACCESS_DISABLED_BY_POLICY Normalmente, este erro significa que o Gestor de Pacotes do Windows não consegue instalar o pacote MSIX do SlimCore. O Visualizador de Eventos pode mostrar o código de erro hexadecima 0x800704EC. As Políticas appLocker podem causar este código de erro. Pode desativar o AppLocker ou adicionar uma exceção para pacotes SlimCoreVdi na Política de Segurança Local –> Políticas de Controlo de Aplicações –> AppLocker. Selecione "Passo 3" em "Otimizar com a nova solução VDI para o Teams".
1460 11683 ERROR_TIMEOUT MsTeamsVdi.exe processo falhou no arranque (tempo limite de 60 segundos).
1722 RPC_S_SERVER_UNAVAILABLE "O servidor RPC está indisponível" MsTeamsVdi.exe erro relacionado.
2000 16002 Sem Plug-in O ponto final não tem o MsTeamsPlugin ou, se o tiver, não foi carregado (verifique com o Explorador de Processos).
2001 Canal Virtual Não Disponível Erro no Citrix VDA WFAPI.
3000 24002 Implementação do SlimCore não necessária Este código não é realmente um erro. É um bom indicador de que o utilizador está na nova arquitetura de otimização com o SlimCore.
3001 24010 SlimCore já carregado Este código não é realmente um erro. É um bom indicador de que o utilizador está na nova arquitetura de otimização com o SlimCore.
3004 24035 Plug-in irresponsivo Experimente reiniciar a sessão RDP ou ICA.
3005 24043 Tempo limite do plug-in durante a transferência Falha ao transferir o MSIX no prazo de 2 minutos.
3007 24058 Tempo limite de carregamento O tempo limite de transferência ou instalação do SlimCore foi excedido (a Internet lenta ou o Serviço de Preparação de Aplicações está ocupado).
4000 ERROR_WINS_INTERNAL O WINS encontrou um erro ao processar o comando.
15615 1951 ERROR_INSTALL_POLICY_FAILURE Erro relacionado com MSIX do SlimCore. Para instalar esta aplicação, precisa de uma licença de programador do Windows ou de um sistema com sideload ativado. A regkey AllowAllTrustedApps pode estar definida como 0?
15616 ERROR_PACKAGE_UPDATING Erro relacionado com o MSIX do SlimCore "Não é possível iniciar a aplicação porque está atualmente a atualizar".
15700 APPMODEL_ERROR_NO_PACKAGE O processo não tem identidade de pacote. Não existe nenhum alias para MsTeamsVdi em %LOCALAPPDATA%\Microsoft\WindowsApps. Os registos do Hub de Comentários são necessários ao reproduzir o erro (certifique-se de que seleciona Plataforma de Programador como a categoria e Implementação de aplicações como subcategoria)

Utilizar o Visualizador de Eventos na VM para resolução de problemas

Todos os eventos de ligação/desconexão são registados no Visualizador de Eventos em execução na Máquina Virtual. O Visualizador de Eventos também pode apresentar erros relacionados com o lado do cliente. Filtre por Origem (VDI do Microsoft Teams) e ID de Evento (0). Os códigos de erro podem ser encontrados na secção Novos registos do Teams para VDI .

Nota

Para poder filtrar por Origem, tem de executar este comando a partir de uma janela elevada do PowerShell:

PS C:\Windows\system32> New-EventLog -LogName Application -Source "Microsoft Teams VDI"

Resolver erros de implementação do Plug-in

As informações de diagnóstico podem ser encontradas nos registos de eventos detalhados no dispositivo do utilizador. Após a instalação, MsTeamsPluginCitrix.dll é escrito na pasta CWA. Apenas para a plataforma Citrix, são criadas as seguintes chaves no Ponto Final (não na VM):

Chave Tipo de chave Nome da chave Valor da chave
HKLM\SOFTWARE\WOW6432Node\Citrix\ICA Client\Engine\Configuration\Advanced\Modules\ICA 3.0 Cadeia de Caracteres VirtualDriverEx MicrosoftTeamsVDI
HKLM\SOFTWARE\WOW6432Node\Citrix\ICAClient\Engine\Configuration\Advanced\Modules\MicrosoftTeamsVDI Cadeia de Caracteres DriverNameWin32 MsTeamsPluginCitrix.dll

Para depurar instalações, pode ativar o registo do instalador, mas, em seguida, tem de utilizar o msiexec manualmente e passar os sinalizadores corretos. Por exemplo, se o plug-in não estiver atualmente instalado, pode ser instalado com registos como este: msiexec.exe /i MsTeamsPluginCitrix.msi /l*vx installer.log.txt.

Resolver erros de implementação do MsIX SlimCoreVdi

Certifique-se de que revê o teste e o registo MSIX do SlimCore na secção de ponto final , uma vez que determinados GPOs podem impedir instalações MSIX.

As informações de diagnóstico podem ser encontradas nos registos de eventos detalhados no dispositivo do utilizador.

  1. Aceda a Registos de Aplicações e Serviços do Visualizador de Eventos > (Local) > do Microsoft > Windows.
  2. Verifique se existem registos disponíveis nestas categorias:
  • AppxPackagingOM > Microsoft-Windows-AppxPackaging/Operacional
  • >AppXDeployment-Server Microsoft-Windows-AppXDeploymentServer/Operational
  1. Reveja os registos em AppXDeployment-Server.

Erro 15615

Normalmente, o erro 15615 significa que o Gestor de Pacotes do Windows não consegue instalar o pacote MSIX com o SlimCoreVdi.

  • Certifique-se de que a assinatura digital desse MSIX é considerada fidedigna pelo Ponto Final (Aceda a MsIX > Properties > Digital signatures Details > ). É uma assinatura Microsoft válida, mas os clientes podem ter algo especial configurado.
  • Experimente ativar a política AllowAllTrustedApps.
  • Tente permitir o sideload de aplicações de origens não arquivo fidedignas.
    • No Windows 10, esta definição está ativada por predefinição, por isso modifique-a aqui no caso de estar desativada: Atualização de Definições > e Segurança > para aplicações > sideload para programadores.
    • No Windows 11, esta definição está ativada por predefinição: Definições Aplicações >> Definições avançadas > da aplicação Escolha onde obter aplicações > Em Qualquer Lugar.

Recolha de registos

O registo pode ser encontrado nas seguintes localizações:

  • No cliente:
    • AppData\Roaming\Microsoft\TeamsVDI\<vdi_vendor>-default-<cloudname>\skylib
    • AppData\Roaming\Microsoft\TeamsVDI\<vdi_vendor>-default-<cloudname>\media-stack
  • No Servidor:
    • AppData\Local\Packages\MSTeams_8wekyb3d8bbwe\LocalCache\Microsoft\MSTeams\Logs\skylib