Introducción al ejemplo de elementos principales de una llamada
En el ejemplo de elementos principales de llamada grupal de Azure Communication Services se muestra cómo se puede usar el SDK web de llamadas de Communication Services para crear una experiencia de llamada grupal.
En esta guía de inicio rápido de ejemplo, veremos cómo funciona el ejemplo antes de ejecutarlo en la máquina local. A continuación, implementaremos el ejemplo en Azure con sus propios recursos de Azure Communication Services.
Descarga de código
Busque el proyecto de este ejemplo en GitHub. Se puede encontrar una versión de la muestra que incluye características que se encuentran en versión preliminar pública actualmente, como Interoperabilidad de equipos y Grabación de llamadas, en otra rama.
Información general
El ejemplo tiene una aplicación del lado cliente y una aplicación del lado servidor. La aplicación del lado cliente es una aplicación web React/Redux que usa el marco de interfaz de usuario Fluent de Microsoft. Esta aplicación envía solicitudes a una aplicación del lado servidor de ASP.NET Core que ayuda a la aplicación del lado cliente a conectarse a Azure.
El ejemplo tendrá una apariencia similar a la siguiente:
Cuando se presiona el botón "Start a call", la aplicación web captura un token de acceso de usuario de la aplicación del lado servidor. A continuación, este token se usa para conectar la aplicación cliente con Azure Communication Services. Una vez recuperado el token, se le pedirá que especifique la cámara y el micrófono que quiere usar. Podrá deshabilitar o habilitar los dispositivos con los controles de alternancia:
Una vez que configure el nombre para mostrar y los dispositivos, puede unirse a la sesión de llamada. Verá el panel de llamada principal en el que reside la experiencia de llamada.
Componentes de la pantalla principal de llamada:
- Galería multimedia: la fase principal en la que se muestran los participantes. Si un participante tiene habilitada la cámara, aquí se muestra su fuente de vídeo. Cada participante tiene un icono individual que muestra su nombre para mostrar y la transmisión de vídeo (si hay alguna).
- Encabezado: aquí es donde se encuentran los controles de llamada principales para ajustar la configuración y la barra lateral de participantes, activar o desactivar el vídeo y mezclas, compartir la pantalla y abandonar la llamada.
- Barra lateral: aquí es donde se muestran los participantes y la información de configuración cuando se ajustan con los controles del encabezado. El componente se puede descartar con la "X" de la esquina superior derecha. En la barra lateral de participantes se mostrará una lista de participantes y un vínculo para invitar a más usuarios a conversar. La barra lateral de configuración permite configurar las opciones del micrófono y la cámara.
Nota
En función de las limitaciones del SDK de llamadas web, solo se representa una secuencia de vídeo remota. Para más información, consulte Compatibilidad con secuencias del SDK de llamadas.
A continuación encontrará más información sobre los requisitos previos y los pasos para configurar el ejemplo.
Requisitos previos
- Una cuenta de Azure con una suscripción activa. Para más información, consulte Creación de una cuenta gratuita
- Node.js (12.18.4 y posterior)
- Visual Studio (2019 y posterior)
- .NET Core 3.1 (asegúrese de instalar la versión que se corresponda con su instancia de Visual Studio, 32 o 64 bits)
- Un recurso de Azure Communication Services. Para más información, consulte Creación de un recurso de Azure Communication Services. Deberá registrar la cadena de conexión del recurso para esta guía de inicio rápido.
Implementación local del servicio y las aplicaciones cliente
El ejemplo de llamada grupal consta esencialmente dos aplicaciones: ClientApp y Service.NET.
Cuando queremos realizar una implementación localmente, es necesario iniciar ambas aplicaciones. Cuando se visita la aplicación de servidor desde el explorador, se usa la instancia de ClientApp implementada localmente para la experiencia del usuario.
Para probar el ejemplo localmente, puede abrir varias sesiones del explorador con la dirección URL de su llamada para simular una llamada multiusuario.
Antes de ejecutar el ejemplo por primera vez
- Abra una instancia de PowerShell, Terminal Windows, símbolo del sistema o equivalente y navegue hasta el directorio donde le gustaría clonar el ejemplo.
git clone https://github.com/Azure-Samples/communication-services-web-calling-hero.git- Obtenga
Connection Stringde Azure Portal. Para obtener más información sobre las cadenas de conexión, consulte Creación de recursos de Azure Communication Services. - Una vez que obtenga
Connection String, agregue la cadena de conexión al archivo Calling/appsetting.json que se encuentra en la carpeta de Service .NET. Escriba la cadena de conexión en la variable:ResourceConnectionString.
Ejecución local
- Vaya a la carpeta de llamadas y abra la solución
Calling.csprojen Visual Studio. - Ejecute el proyecto
Calling. El explorador se abrirá enlocalhost:5001.
Publicación del ejemplo en Azure
- Haga clic con el botón derecho en el proyecto
Callingy seleccione Publicar. - Cree un nuevo perfil de publicación y seleccione la suscripción a Azure.
- Antes de publicar, agregue la cadena de conexión con
Edit App Service Settingsy relleneResourceConnectionStringcomo clave y proporcione la cadena de conexión (copiada de appsettings.json) como valor.
Limpieza de recursos
Si quiere limpiar y quitar una suscripción a Communication Services, puede eliminar el recurso o grupo de recursos. Al eliminar el grupo de recursos, también se elimina cualquier otro recurso que esté asociado a él. Obtenga más información sobre la limpieza de recursos.
Pasos siguientes
Para más información, consulte los siguientes artículos.
- Familiarícese con el uso del SDK de llamadas.
- Más información sobre cómo funciona la llamada
Lecturas adicionales
- Ejemplos: encuentre más ejemplos en nuestra página de información general de ejemplos.
- Redux: Administración de estado del lado cliente
- FluentUI: Biblioteca de interfaz de usuario con tecnología de Microsoft
- React: Biblioteca para compilar interfaces de usuario
- ASP.NET Core: Marco para compilar aplicaciones web
El ejemplo de elementos principales de llamada de grupo para iOS de Azure Communication Services muestra cómo usar Calling SDK de Communication Services para iOS para crear una experiencia de llamada de grupo que incluya voz y vídeo. En este inicio rápido de ejemplo, aprenderá a configurar y ejecutar el ejemplo. Se proporciona información general del ejemplo con fines de contextualización.
Descarga de código
Busque el proyecto de este ejemplo en GitHub. Se puede encontrar una versión del ejemplo con la interoperabilidad de Teams en una rama independiente.
Información general
El ejemplo consiste en una aplicación iOS nativa que usa los SDK de Azure Communication Services para iOS para crear una experiencia de llamada que incluya llamadas de voz y vídeo. La aplicación usa un componente de servidor para aprovisionar los tokens de acceso que, posteriormente, se usan para inicializar el SDK de Azure Communication Services. Para configurar este componente de servidor, siga el tutorial Creación de un servicio de autenticación de confianza mediante Azure Functions.
El ejemplo tendrá una apariencia similar a la siguiente:
Al presionar el botón "Iniciar nueva llamada", la aplicación iOS crea una nueva llamada y se une a ella. La aplicación también le permite unirse a una llamada existente de Azure Communication Services mediante el identificador de esa llamada.
Después de unirse a una llamada, se le solicitará que conceda permiso a la aplicación para acceder a la cámara y el micrófono. También se le pedirá que facilite un nombre para mostrar.
Una vez que configure el nombre para mostrar y los dispositivos, podrá unirse a la llamada. Verá el panel de llamada principal en el que reside la experiencia de llamada.
Componentes de la pantalla principal de llamada:
- Galería multimedia: la fase principal en la que se muestran los participantes. Si un participante tiene habilitada la cámara, aquí se muestra su fuente de vídeo. Cada participante tiene un icono individual con su nombre para mostrar y la secuencia de vídeo (si la hay). La galería admite varios participantes y se actualiza al agregarlos o al quitarlos de la llamada.
- Barra de acciones: Aquí es donde se encuentran los principales controles de llamada. Estos controles permiten activar o desactivar el vídeo y el micrófono, compartir la pantalla y abandonar la llamada.
A continuación encontrará más información sobre los requisitos previos y los pasos para configurar el ejemplo.
Requisitos previos
- Una cuenta de Azure con una suscripción activa. Para más información, consulte Creación de una cuenta gratuita.
- Mac con Xcode, junto con un certificado de desarrollador válido instalado en el Llavero.
- Un recurso de Azure Communication Services. Para más información, consulte Creación de un recurso de Azure Communication Services.
- Una función de Azure que ejecuta el punto de conexión de autenticación para capturar tokens de acceso.
Ejecución local del ejemplo
El ejemplo de llamada de grupo se puede ejecutar localmente mediante XCode. Los desarrolladores pueden usar su dispositivo físico o un emulador para probar la aplicación.
Antes de ejecutar el ejemplo por primera vez
- Instale las dependencias mediante la ejecución de
pod install. - Abra
AzureCalling.xcworkspaceen XCode. - Actualice
AppSettings.plist. Establezca el valor de la clave decommunicationTokenFetchUrlpara que sea la dirección URL del punto de conexión de autenticación.
Ejecución del ejemplo
Compile y ejecute el ejemplo en XCode.
(Opcional) Protección de un punto de conexión de autenticación
Con fines de demostración, en este ejemplo se usa de forma predeterminada un punto de conexión de acceso público para capturar un token de acceso de Azure Communication Services. En escenarios de producción, se recomienda usar un punto de conexión propio protegido para aprovisionar los tokens.
Mediante alguna configuración adicional, este ejemplo permite conectarse a un punto de conexión protegido de Azure Active Directory (Azure AD) de manera que se solicite el inicio de sesión de usuario para que la aplicación capture un token de acceso de Azure Communication Services. Consulte los siguientes pasos:
- Habilite la autenticación de Azure Active Directory en la aplicación.
- Vaya a la página de información general de la aplicación registrada en Registros de aplicaciones, en Azure Active Directory. Anote los valores de
Application (client) ID,Directory (tenant) ID,Application ID URI.
- Abra
AppSettings.plisten Xcode y agregue los siguientes valores de clave:communicationTokenFetchUrl: la dirección URL para solicitar el token de Azure Communication Services.isAADAuthEnabled: un valor booleano que indica si se requiere o no la autenticación de token de Azure Communication Services.aadClientId: el identificador de la aplicación (cliente).aadTenantId: el identificador del directorio (inquilino).aadRedirectURI: el URI de redirección debe tener el formatomsauth.<app_bundle_id>://auth.aadScopes: una matriz de ámbitos de permisos solicitados a los usuarios con fines de autorización. Agregue<Application ID URI>/user_impersonationa la matriz para otorgar acceso al punto de conexión de autenticación.
Limpieza de recursos
Si quiere limpiar y quitar una suscripción a Communication Services, puede eliminar el recurso o grupo de recursos. Al eliminar el grupo de recursos, también se elimina cualquier otro recurso que esté asociado a él. Obtenga más información sobre la limpieza de recursos.
Pasos siguientes
Para más información, consulte los siguientes artículos.
- Familiarícese con el uso del SDK de llamadas.
- Más información sobre cómo funciona la llamada
Lecturas adicionales
- GitHub de Azure Communication: encuentre más ejemplos e información en la página oficial de GitHub.
- Ejemplos: encuentre más ejemplos en nuestra página de información general de ejemplos.
- Características de llamada de Azure Communication Services: para más información sobre el SDK de llamada para iOS, consulte Calling SDK de Azure Communication Services.
El ejemplo de elementos principales de llamada de grupo para Android de Azure Communication Services muestra cómo usar el SDK de llamadas de Communication Services para Android para crear una experiencia de llamada de grupo que incluya voz y vídeo. En este inicio rápido de ejemplo, aprenderá a configurar y ejecutar el ejemplo. Se proporciona información general del ejemplo con fines de contextualización.
Descarga de código
Busque el proyecto de este ejemplo en GitHub. Se puede encontrar una versión del ejemplo con la interoperabilidad de Teams en una rama independiente.
Información general
El ejemplo consiste en una aplicación Android nativa que usa los SDK de Azure Communication Services para Android para crear una experiencia de llamada que incluya llamadas de voz y vídeo. La aplicación usa un componente de servidor para aprovisionar los tokens de acceso que, posteriormente, se usan para inicializar el SDK de Azure Communication Services. Para configurar este componente de servidor, siga el tutorial Creación de un servicio de autenticación de confianza mediante Azure Functions.
El ejemplo tendrá una apariencia similar a la siguiente:
Al presionar el botón "Iniciar nueva llamada", la aplicación Android crea una nueva llamada y se une a ella. La aplicación también le permite unirse a una llamada existente de Azure Communication Services mediante el identificador de esa llamada.
Después de unirse a una llamada, se le solicitará que conceda permiso a la aplicación para acceder a la cámara y el micrófono. También se le pedirá que facilite un nombre para mostrar.
Una vez que configure el nombre para mostrar y los dispositivos, podrá unirse a la llamada. Verá el panel de llamada principal en el que reside la experiencia de llamada.
Componentes de la pantalla principal de llamada:
- Galería multimedia: la fase principal en la que se muestran los participantes. Si un participante tiene habilitada la cámara, aquí se muestra su fuente de vídeo. Cada participante tiene un icono individual con su nombre para mostrar y la secuencia de vídeo (si la hay). La galería admite varios participantes y se actualiza al agregarlos o al quitarlos de la llamada.
- Barra de acciones: Aquí es donde se encuentran los principales controles de llamada. Estos controles permiten activar o desactivar el vídeo y el micrófono, compartir la pantalla y abandonar la llamada.
A continuación encontrará más información sobre los requisitos previos y los pasos para configurar el ejemplo.
Requisitos previos
- Una cuenta de Azure con una suscripción activa. Para más información, consulte Creación de una cuenta gratuita.
- Android Studio en ejecución en el equipo.
- Un recurso de Azure Communication Services. Para más información, consulte Creación de un recurso de Azure Communication Services.
- Una función de Azure que ejecuta el punto de conexión de autenticación para capturar tokens de acceso.
Ejecución local del ejemplo
El ejemplo de llamada de grupo se puede ejecutar localmente mediante Android Studio. Los desarrolladores pueden usar su dispositivo físico o un emulador para probar la aplicación.
Antes de ejecutar el ejemplo por primera vez
- Abra Android Studio y seleccione
Open an Existing Project. - Abra la carpeta
AzureCallingdentro de la versión descargada para el ejemplo. - Expanda las aplicaciones o recursos para actualizar
appSettings.properties. Establezca el valor de la clavecommunicationTokenFetchUrlpara que sea la dirección URL del punto de conexión de autenticación configurado como requisito previo.
Ejecución del ejemplo
Compile y ejecute el ejemplo en Android Studio.
(Opcional) Protección de un punto de conexión de autenticación
Con fines de demostración, este ejemplo usa un punto de conexión de acceso público de forma predeterminada para capturar un token de Azure Communication Services. En escenarios de producción, se recomienda usar un punto de conexión propio protegido para aprovisionar los tokens.
Mediante configuración adicional, este ejemplo permite conectarse a un punto de conexión protegido de Azure Active Directory (Azure AD) de manera que se solicite el inicio de sesión de usuario para que la aplicación capture un token de Azure Communication Services. Consulte los siguientes pasos:
Habilite la autenticación de Azure Active Directory en la aplicación.
Vaya a la página de información general de la aplicación registrada en Registros de aplicaciones, en Azure Active Directory. Anote los valores de
Package name,Signature hash,MSAL Configutaion.
Edite
AzureCalling/app/src/main/res/raw/auth_config_single_account.jsony establezcaisAADAuthEnabledpara habilitar Azure Active Directory.Edite
AndroidManifest.xmly establezcaandroid:pathen el hash de firma del almacén de claves. (Opcional. El valor actual usa el hash del almacén de claves debug.keystore incluido. Si se usa un almacén de claves diferente, esto deberá actualizarse).<activity android:name="com.microsoft.identity.client.BrowserTabActivity"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:host="com.azure.samples.communication.calling" android:path="/Signature hash" <!-- do not remove /. The current hash in AndroidManifest.xml is for debug.keystore. --> android:scheme="msauth" /> </intent-filter> </activity>Copie la configuración de MSAL para Android desde Azure Portal y péguela en
AzureCalling/app/src/main/res/raw/auth_config_single_account.json. Incluya "account_mode": "SINGLE".{ "client_id": "", "authorization_user_agent": "DEFAULT", "redirect_uri": "", "account_mode" : "SINGLE", "authorities": [ { "type": "AAD", "audience": { "type": "AzureADMyOrg", "tenant_id": "" } } ] }Edite
AzureCalling/app/src/main/res/raw/auth_config_single_account.jsony establezca el valor de la clavecommunicationTokenFetchUrlpara que sea la dirección URL del punto de conexión de autenticación.Edite
AzureCalling/app/src/main/res/raw/auth_config_single_account.jsony establezca el valor de la claveaadScopesdesde los ámbitosExpose an APIdeAzure Active Directory.
Limpieza de recursos
Si quiere limpiar y quitar una suscripción a Communication Services, puede eliminar el recurso o grupo de recursos. Al eliminar el grupo de recursos, también se elimina cualquier otro recurso que esté asociado a él. Obtenga más información sobre la limpieza de recursos.
Pasos siguientes
Para más información, consulte los siguientes artículos.
- Familiarícese con el uso del SDK de llamadas.
- Más información sobre cómo funciona la llamada
Lecturas adicionales
- GitHub de Azure Communication: encuentre más ejemplos e información en la página oficial de GitHub.
- Ejemplos: encuentre más ejemplos en nuestra página de información general de ejemplos.
- Características de llamada de Azure Communication Services: para más información sobre el SDK de llamada para Android, consulte SDK de llamadas de Azure Communication Services.