Características y problemas adicionales relacionados con los equipos y los canales en Microsoft Teams para empresas
Nota: Esta respuesta ha sido traducida automáticamente. Como resultado, puede contener errores gramaticales o expresiones incómodas.
Hola Joaquin Capdevila Taboada
Gracias por publicar tu pregunta en el foro de preguntas y respuestas de Microsoft
Después de revisar tu escenario y consultar la documentación oficial de Microsoft, aquí tienes algunos puntos clave que pueden ayudarte a aclarar tu enfoque:
1) Instalación multi‑tenant
Por lo que describes, tu plan es usar una única aplicación de Azure Bot (SingleTenant) en tu tenant principal y una aplicación multi‑tenant para Microsoft Graph para los flujos de consentimiento de administrador, y luego distribuir el paquete de la aplicación de Teams (.zip) a otros tenants mediante su catálogo de aplicaciones de la organización.
Este flujo es válido y soportado:
- El bot se autentica con Bot Framework Service usando credenciales de su tenant principal.
- La aplicación de Teams puede instalarse en tenants externos mediante AppSource, catálogo privado o API de Graph.
- No se requiere un registro separado del bot en cada tenant cliente, salvo que sus políticas de cumplimiento lo exijan.
2) Instalación proactiva para usuarios
Para habilitar la mensajería proactiva y capturar el contexto del usuario, Microsoft ofrece un endpoint en Graph para instalar la aplicación a un usuario: https://learn.microsoft.com/es-es/microsoftteams/platform/bots/how-to/conversations/send-proactive-messages?tabs=dotnet#proactively-install-your-app-using-graph
Puntos clave:
- La aplicación debe existir en el catálogo del tenant (ya sea desde la tienda o cargada manualmente).
- Usa
POST /users/{id}/teamwork/installedAppscon elteamsAppIdcorrespondiente en ese tenant. - Requiere permisos adecuados en Graph y consentimiento de administrador.
3) Mensajería proactiva cross‑tenant
Este es el punto más crítico. Según la guía de Microsoft:
- La autenticación del bot es channel‑to‑bot, no específica por tenant. El bot usa un token emitido por su tenant principal para comunicarse con Bot Service.
- Una vez que la aplicación está instalada en el tenant de destino, Teams enruta los mensajes mediante el
serviceUrlcorrecto. - El hecho de que el token tenga
tiddel tenant principal no impide enviar mensajes a usuarios en otros tenants, siempre que la aplicación esté instalada y autorizada en ese tenant. - No puedes depender solo de la instalación previa para enviar un mensaje de bienvenida; debes crear o continuar la conversación proactivamente usando el SDK de Bot Framework.
4) Obtener usuarios y enviar mensajes
Tu flujo propuesto es correcto:
- Con consentimiento de administrador y permisos de Graph (
User.Read.All,Directory.Read.All), puedes obtener la lista de usuarios. - Luego, instala la aplicación para cada usuario mediante Graph.
- Cuando la aplicación se instala, Teams envía un evento
membersAddeda tu endpoint, lo que permite enviar un mensaje de bienvenida proactivo. - Alternativamente, puedes crear la conversación proactivamente después de la instalación usando el SDK de Bot Framework.
Espero que la información anterior te resulte útil.
Si la respuesta es útil, por favor haz clic en "Aceptar respuesta" y dale un voto positivo. Si tienes preguntas adicionales sobre esta respuesta, haz clic en "Comentar".
Nota: Por favor, siga los pasos en nuestra documentación para habilitar las notificaciones por correo electrónico si desea recibir la notificación correspondiente para este hilo.