Integración de TelecomManager en la biblioteca de interfaz de usuario
La biblioteca de interfaz de usuario de Azure Communication Services proporciona compatibilidad integrada con TelecomManager. Los desarrolladores pueden proporcionar su propia configuración para usar TelecomManager para la biblioteca de interfaz de usuario.
En este artículo, obtendrá información sobre cómo configurar TelecomManager correctamente mediante la biblioteca de interfaz de usuario de la aplicación.
Requisitos previos
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Un recurso de Communication Services implementado. Cree un recurso de Communication Services.
- Un token de acceso de usuario para habilitar el cliente de llamada. Obtenga un token de acceso de usuario.
- Opcional: Realización del inicio rápido para empezar a trabajar con los compuestos de la Biblioteca de interfaz de usuario.
Para más información, consulte la Biblioteca de interfaz de usuario de código abierto de Android y el código de aplicación de ejemplo.
Integración de la configuración de TelecomManager
El SDK de llamadas de Azure Communication Services admite la integración con TelecomManager. Puede habilitar esta integración en la biblioteca de interfaz de usuario configurando una instancia de CallCompositeTelecomManagerOptions
. Para obtener más información, consulte Integración con TelecomManager.
CallCompositeTelecomManagerIntegrationMode
proporciona opciones para SDK_PROVIDED_TELECOM_MANAGER
y APPLICATION_IMPLEMENTED_TELECOM_MANAGER
. SDK_PROVIDED_TELECOM_MANAGER
requiere phoneAccountId
y usa la implementación del SDK de llamadas. APPLICATION_IMPLEMENTED_TELECOM_MANAGER
se usa en el caso de que TelecomManager esté integrado en la aplicación.
val callComposite: CallComposite = CallCompositeBuilder()
.telecomManagerOptions(CallCompositeTelecomManagerOptions(
CallCompositeTelecomManagerIntegrationMode.SDK_PROVIDED_TELECOM_MANAGER,
"app_id"
)).build()
Suspensión y reanudación de la API
Para APPLICATION_IMPLEMENTED_TELECOM_MANAGER
, use hold
y resume
para administrar el estado de la llamada.
callComposite.hold()?.whenComplete { _, error -> }
callComposite.resume()?.whenComplete { _, error -> }