Intégrer TelecomManager à la bibliothèque d’interface utilisateur
La bibliothèque d’interface utilisateur pour Azure Communication Services fournit une prise en charge intégrée de TelecomManager. Les développeurs peuvent fournir leur propre configuration de TelecomManager à utiliser pour la bibliothèque d’interface utilisateur.
Dans cet article, vous allez apprendre à configurer TelecomManager correctement à l’aide de la bibliothèque d’interface utilisateur dans votre application.
Prérequis
- Compte Azure avec un abonnement actif. Créez un compte gratuitement.
- Une ressource Communication Services déployée. Créez une ressource Communication Services.
- Un jeton d’accès utilisateur pour activer le client d’appel. Obtenez un jeton d’accès utilisateur.
- Facultatif : complétion du guide de démarrage rapide pour prendre en main les composites de la bibliothèque d’interface utilisateur.
Pour plus d’informations, consultez la bibliothèque d’interface utilisateur Android open source et l’exemple de code d’application.
Configurer l’intégration de TelecomManager
Le kit de développement logiciel (SDK) appelant Azure Communication Services prend en charge l’intégration TelecomManager. Vous pouvez activer cette intégration dans la bibliothèque d’interface utilisateur en configurant une instance de CallCompositeTelecomManagerOptions
. Pour plus d’informations, consultez Intégrer à TelecomManager.
CallCompositeTelecomManagerIntegrationMode
fournit des options pour SDK_PROVIDED_TELECOM_MANAGER
et APPLICATION_IMPLEMENTED_TELECOM_MANAGER
. SDK_PROVIDED_TELECOM_MANAGER
nécessite phoneAccountId
et utilise l’implémentation à partir du kit de développement logiciel (SDK) appelant. APPLICATION_IMPLEMENTED_TELECOM_MANAGER
est utilisé si TelecomManager est intégré dans l’application.
val callComposite: CallComposite = CallCompositeBuilder()
.telecomManagerOptions(CallCompositeTelecomManagerOptions(
CallCompositeTelecomManagerIntegrationMode.SDK_PROVIDED_TELECOM_MANAGER,
"app_id"
)).build()
Maintenir et reprendre l’API
Pour APPLICATION_IMPLEMENTED_TELECOM_MANAGER
, utilisez hold
et resume
pour gérer l’état des appels.
callComposite.hold()?.whenComplete { _, error -> }
callComposite.resume()?.whenComplete { _, error -> }