¿Qué son las extensiones de mensaje?
Al compilar una extensión de mensaje, se crea una aplicación para Microsoft Teams que se extiende a través de Microsoft 365. La extensión de la aplicación le permite mostrarse en Microsoft Outlook y en Microsoft 365 Copilot como complemento.
Una aplicación extendida de Microsoft Teams se conoce como aplicación de Microsoft 365. Una aplicación de Microsoft 365 usa un manifiesto de aplicación común, un formato de empaquetado de aplicaciones y herramientas de desarrollador y administrador que se usan para compilar una aplicación para Microsoft Teams.
Una extensión de mensaje es una característica de aplicación y usa un bot para comunicarse entre el usuario y el sistema externo.
Funcionalidades de extensión de mensaje
Las funcionalidades de la extensión de mensaje, cómo aparece en la interfaz de usuario y las interacciones que puede admitir, se definen en el manifiesto de la aplicación.
Los comandos y los controladores de mensajes son funcionalidades que puede tener una extensión de mensaje. Una extensión de mensaje puede usar una combinación de comandos de búsqueda y acción, y controladores de mensajes.
Hay dos tipos de comandos:
- Comandos de búsqueda, permitir a los usuarios buscar sistemas externos e insertar los resultados de esa búsqueda en un mensaje en forma de tarjeta.
- Comandos de acción, permiten a los usuarios actuar sobre los mensajes en Teams, mostrando un elemento emergente modal que se puede usar para recopilar o mostrar información.
Los controladores de mensajes permiten que la extensión de mensaje desplege vínculos cuando se pega una dirección URL con un dominio determinado en el cuadro de mensaje de redacción.
Comandos de búsqueda
Los comandos de búsqueda se usan para buscar sistemas externos y devolver resultados como tarjetas con formato enriquecido. Al compilar un complemento de extensión de mensaje Microsoft 365 Copilot, necesita una aplicación que contenga un comando de búsqueda de extensión de mensaje.
¿Cómo funciona una extensión de mensaje?
Las extensiones de mensaje usan un bot registrado con Bot Framework para comunicarse entre un cliente y el sistema externo.
Bot Framework es una plataforma proporcionada por Microsoft, que proporciona las herramientas y servicios que necesita para compilar, probar, implementar y administrar bots.
Una extensión de mensaje consta de un recurso de bot, un registro de aplicación Microsoft Entra y código que usa el SDK de Bot Framework para controlar las interacciones del usuario.
En la imagen siguiente se muestra una estructura de alto nivel de una extensión de mensaje:
El servicio bot registra un bot con Bot Framework y recibe solicitudes del cliente cuando el usuario interactúa con la extensión de mensaje. Envía solicitudes a un servicio web, que contiene el código del bot. El servicio web usa las credenciales de registro de la aplicación de bot en Microsoft Entra para autenticarse con el servicio de bot. Recopila datos del sistema externo y devuelve los datos al servicio bot, que se devuelve al cliente.
Supongamos que un usuario inicia una búsqueda mediante una extensión de mensaje. En el diagrama de secuencia siguiente se muestran las interacciones:
- El usuario abre la extensión de mensaje en el cliente y escribe una consulta de búsqueda.
- El cliente envía una solicitud al servicio bot a través de un punto de conexión de canal, que contiene información sobre la consulta del usuario.
- El servicio bot envía una solicitud a un punto de conexión de mensajería expuesto en el servicio web para controlar la consulta del usuario.
- El punto de conexión de mensajería recibe la solicitud e invoca el adaptador del bot. El adaptador de bot usa el bot Microsoft Entra credenciales de registro de aplicaciones para proteger la comunicación entre el servicio web y el servicio de bot.
- El adaptador de bot invoca el
OnTeamsMessageExtensionQuery
método en la clase del controlador de actividad del bot, que contiene la lógica para controlar la solicitud entrante. - El controlador de actividad del bot obtiene datos del sistema externo. Crea un
MessageExtensionResult
, que contiene los datos externos como tarjetas con formato enriquecido y crea unMessageExtensionResponse
, que contiene .MessageExtensionResult
- El adaptador de bot recibe la respuesta del controlador de actividad del bot y crea una respuesta HTTP.
- El punto de conexión de mensajería devuelve la respuesta al servicio bot.
- El servicio bot devuelve la respuesta a través del punto de conexión del canal a la extensión de mensaje.
- La extensión de mensaje representa la respuesta en el cliente y muestra los resultados de la búsqueda al usuario.
Independientemente de si la extensión de mensaje admite comandos de búsqueda o acción o desplegamiento de vínculos, se produce el mismo flujo. El servicio bot reenvía una solicitud al servicio web que controla y responde a él.