Registro de llamadas y bots de reuniones para Microsoft teams

Un bot que participe en llamadas de audio o vídeo y reuniones en línea se trata de un bot normal de Microsoft Teams con algunas características adicionales que se usan para registrar el bot:

  • Hay una nueva versión del manifiesto de aplicación (anteriormente denominado manifiesto de aplicación de Teams) con dos configuraciones adicionales, supportsCalling y supportsVideo. Esta configuración se incluye en el manifiesto de la aplicación.
  • Microsoft Graph permisos deben configurarse para el identificador de aplicación de Microsoft del bot.
  • Los permisos de las API de llamadas y reuniones en línea de Graph requieren el consentimiento del administrador de inquilinos.

Nueva configuración de manifiesto de aplicación

Los bots de llamadas y reuniones en línea tienen las dos opciones adicionales siguientes en manifest.json que habilitan el audio o el vídeo para el bot en Teams.

  • bots[0].supportsCalling. Si está presente y se establece en true, Teams permite que el bot participe en llamadas y reuniones en línea.
  • bots[0].supportsVideo. Si está presente y se establece en true, Teams sabe que el bot admite vídeo.

Si quiere que el IDE valide correctamente el esquema manifest.json de los bots de llamadas y reuniones para estos valores, puede cambiar el atributo $schema de la siguiente manera:

"$schema": "https://developer.microsoft.com/json-schemas/teams/v1.11/MicrosoftTeams.schema.json",

La siguiente sección le permite crear un nuevo bot o agregar funcionalidades de llamada al bot existente.

Creación de un nuevo bot o adición de funcionalidades de llamada

Para obtener información sobre cómo crear bots, consulte cree un bot para Teams.

Para crear un nuevo bot para Teams:

  1. Use este vínculo para crear un nuevo bot, https://dev.botframework.com/bots/new. Como alternativa, si selecciona el botón Crear un bot en el portal de Bot Framework, creará el bot en Microsoft Azure, para el que debe tener una cuenta de Azure.

  2. En el canal de Teams:

  3. Seleccione la pestaña Llamada en la página del canal de Teams. Seleccione Permitir llamada, y, a continuación, actualice Webhook (para llamar) con la dirección URL HTTPS donde recibirá las notificaciones entrantes, por ejemplo, https://contoso.com/teamsapp/api/calling. Para obtener más información, vea configurar canales.

    Configurar la información del canal de Teams

En la sección siguiente se proporciona una lista de los permisos de aplicación admitidos para llamadas y reuniones en línea.

Conceder permisos de Graph

Graph proporciona permisos granulares para controlar el acceso que las aplicaciones tienen a los recursos. Usted decide qué permisos de Graph solicita la aplicación. Las API de llamada de Graph admiten permisos de consentimiento específico de recursos (RSC) y permisos de aplicación.

Permisos de RSC para llamadas

RSC es un marco de autorización creado por Teams y Plataforma de identidad de Microsoft que permite conceder acceso con ámbito a una aplicación. A través de RSC, un usuario autorizado puede conceder a una aplicación acceso a los datos de una instancia específica de un tipo de recurso.

Si un chat tiene asociada una reunión o una llamada, también se aplican los permisos de RSC pertinentes a esos recursos.

En la tabla siguiente se proporcionan permisos de aplicación de RSC para las llamadas:

Nombre del permiso Acción
Calls.AccessMedia.Chat Accede a secuencias multimedia en llamadas asociadas a este chat o reunión.
Calls.JoinGroupCalls.Chat Unirse a llamadas asociadas a este chat o reunión.

Permisos de aplicación para llamadas

Los permisos de aplicación para las llamadas los usan las aplicaciones que se ejecutan sin un usuario que ha iniciado sesión presente. Un administrador de inquilinos debe conceder consentimiento a los permisos de aplicación.

En la tabla siguiente se proporciona una lista de permisos de aplicación para las llamadas:

Permiso Mostrar cadena Descripción Se requiere el consentimiento del administrador
Calls.Initiate.All Iniciar llamadas salientes de 1:1 desde la aplicación versión preliminar Permite a la aplicación realizar llamadas a un único usuario y transferir las llamadas a usuarios en el directorio de su organización, sin que el usuario haya iniciado sesión en la aplicación.
Calls.InitiateGroupCall.All Inicie las llamadas salientes 1:1 y agrupar desde la versión preliminar de la aplicación. Permite a la aplicación realizar llamadas salientes a un único usuario, varios usuarios, transferir llamadas y agregar participantes a reuniones de su organización, sin que un usuario haya iniciado sesión.
Calls.JoinGroupCall.All Unirse a llamadas y reuniones de grupo como una aplicación versión preliminar Permite a la aplicación unirse a llamadas de grupo y reuniones programadas de la organización, sin que el usuario haya iniciado sesión en la aplicación. La aplicación se combinará con los privilegios de un usuario del directorio a las reuniones en su espacio empresarial.
Calls.JoinGroupCallasGuest.All Unirse a llamadas y reuniones de grupo como invitado versión preliminar Permite a la aplicación unirse a llamadas de grupo y reuniones programadas de la organización de forma anónima, sin que el usuario haya iniciado sesión en la aplicación. La aplicación se unirá como invitado a las reuniones de su espacio empresarial.
Calls.AccessMedia.All Accede a los flujos de medios en una llamada como aplicación versión preliminar Permite a la aplicación obtener acceso directo a los flujos de medios en una llamada, sin que el usuario haya iniciado sesión en la aplicación.

Importante

No puede usar la API de acceso multimedia para grabar o conservar contenido multimedia de llamadas o reuniones a las que la aplicación tenga acceso o derive datos de ese registro o grabación de contenido multimedia. Primero debe llamar al updateRecordingStatus API para indicar que la grabación ha comenzado y recibir una respuesta correcta de esa API. Si la aplicación comienza a grabar cualquier reunión o llamada, debe finalizar la grabación antes de llamar a la API updateRecordingStatus para indicar que la grabación ha finalizado.

Permisos de aplicación para reuniones en línea

En la tabla siguiente se proporciona una lista de permisos de aplicación para reuniones en línea:

Permiso Mostrar cadena Descripción Se requiere el consentimiento del administrador
OnlineMeetings.Read.All Leer detalles de la reunión en línea desde la aplicación versión preliminar Permite a la aplicación leer los detalles de las reuniones en línea de la organización, sin que un usuario haya iniciado sesión.
OnlineMeetings.ReadWrite.All Leer y crear reuniones en línea desde la aplicación versión preliminar en nombre de un usuario Permite a la aplicación crear reuniones en línea dentro de la organización en nombre de un usuario, sin que un usuario haya iniciado sesión.

Asignar permisos

Debe configurar los permisos de aplicación para el bot de antemano mediante microsoft Azure Portal si prefiere usar el punto de conexión de Azure Active Directory (Azure AD) v1.

En el caso de las aplicaciones que usan el punto de conexión de Azure AD v1, un administrador de inquilinos puede dar su consentimiento a los permisos de aplicación mediante microsoft Azure Portal cuando la aplicación está instalada en su organización. Como alternativa, puede proporcionar una experiencia de registro en la aplicación a través de la cual los administradores pueden dar su consentimiento a los permisos que ha configurado. Una vez que el consentimiento del administrador se registra mediante Microsoft Entra identificador, la aplicación puede solicitar tokens sin tener que volver a solicitar el consentimiento.

Puede confiar en un administrador para conceder los permisos que necesita la aplicación en microsoft Azure Portal. Una mejor opción es proporcionar una experiencia de registro para los administradores mediante el punto de conexión de Azure AD v2 /adminconsent . Para obtener más información, consulte instrucciones sobre cómo crear una dirección URL de consentimiento de Administración.

Nota:

Para construir el inquilino Administración dirección URL de consentimiento, se requiere un URI de redireccionamiento configurado o una dirección URL de respuesta en el portal de registro de aplicaciones. Para agregar direcciones URL de respuesta para el bot, acceda al registro del bot, elija Opciones avanzadas>Edit Application Manifest. Agregue la dirección URL de redireccionamiento a la colección replyUrls.

Importante

Cada vez que realice un cambio en los permisos de la aplicación, también debe repetir el proceso de consentimiento del administrador. Los cambios realizados en el portal de registro de la aplicación no se reflejarán hasta que el administrador del espacio empresarial haya vuelto a aplicar el consentimiento.

Ejemplo de código

Ejemplo de nombre Descripción .NET
Bots de llamadas y reuniones La aplicación de ejemplo muestra cómo el bot puede crear una llamada, unirse a una reunión y transferirla. View
Eventos de reunión en tiempo real La aplicación de ejemplo muestra cómo bot puede recibir eventos de reunión en tiempo real. View

Guía paso a paso

Siga la guía paso a paso para configurar el bot de llamadas y reuniones de Teams.

Paso siguiente

Vea también