Integrare TelecomManager nella libreria dell'interfaccia utente

La libreria dell'interfaccia utente di Servizi di comunicazione di Azure offre supporto predefinito per TelecomManager. Gli sviluppatori possono fornire la propria configurazione per TelecomManager da usare per la libreria dell'interfaccia utente.

Questo articolo illustra come configurare correttamente TelecomManager usando la libreria dell'interfaccia utente nell'applicazione.

Prerequisiti

Per altre informazioni, vedere la libreria dell'interfaccia utente Android open source e il codice dell'applicazione di esempio.

Configurare l'integrazione di TelecomManager

L'SDK di chiamata dei Servizi di comunicazione di Azure supporta l'integrazione di TelecomManager. È possibile abilitare questa integrazione nella libreria dell'interfaccia utente configurando un'istanza di CallCompositeTelecomManagerOptions. Per altre informazioni, vedere Integrare con TelecomManager.

CallCompositeTelecomManagerIntegrationMode offre opzioni per SDK_PROVIDED_TELECOM_MANAGER e APPLICATION_IMPLEMENTED_TELECOM_MANAGER. SDK_PROVIDED_TELECOM_MANAGER richiede phoneAccountId e usa l'implementazione dell'SDK di chiamata. APPLICATION_IMPLEMENTED_TELECOM_MANAGER indica se TelecomManager è integrato nell'applicazione.

    val callComposite: CallComposite = CallCompositeBuilder()
        .telecomManagerOptions(CallCompositeTelecomManagerOptions(
            CallCompositeTelecomManagerIntegrationMode.SDK_PROVIDED_TELECOM_MANAGER,
            "app_id"
        )).build()

API di blocco e ripresa

Per APPLICATION_IMPLEMENTED_TELECOM_MANAGER usare hold e resume per gestire lo stato delle chiamate.

    callComposite.hold()?.whenComplete { _, error ->  }
    callComposite.resume()?.whenComplete { _, error ->  }

Passaggi successivi