Kotlin

Inicializar el cliente

VoiceClient es la clase principal utilizada para interactuar con Android Client SDK. Antes de su uso, debe inicializar el cliente proporcionando una instancia de la clase Android Contexto clase.

En la parte superior del MainActivity definir clase client que contendrá la referencia al cliente y la propiedad otherUser que contendrá el nombre del 2º usuario (el usuario al que se hará la llamada):

private lateinit var client: VoiceClient
private var otherUser: String = ""

Localice el onCreate en el método MainActivity e inicializar VoiceClient:

client = VoiceClient(this.application.applicationContext)
val config = VGClientConfig(ClientConfigRegion.US)
config.enableWebsocketInvites = true
client.setConfig(config)

NOTA: En enableWebsocketInvites en la configuración del cliente no debe utilizarse en producción. Habilite las notificaciones push para asegurarse de que recibe las llamadas entrantes incluso cuando su aplicación está en segundo plano. Consulte la notificaciones push para más información.

El IDE mostrará una advertencia sobre la referencia no resuelta:

Coloque el signo de intercalación sobre el texto rojo y pulse Alt + Enter para importar la referencia.

Ahora en el MainActivity add helper method that hides all UI items:

private fun hideUI() {
    val content = findViewById<LinearLayout>(R.id.content)
    content.forEach { it.visibility = View.GONE }
}

Por último, rellene el cuerpo de dos métodos para permitir el inicio de sesión de usuario. Por favor, asegúrese de reemplazar ALICE_JWT y BOB_JWT con los JWT que creó en un paso anterior:

private fun loginAsAlice() {
    otherUser = "Bob"
    client.createSession(ALICE_JWT) {
        err, sessionId ->
        when {
            err != null -> {
                hideUI()
                connectionStatusTextView.visibility = View.VISIBLE
                connectionStatusTextView.text = err.localizedMessage
            }
            else -> {
                hideUI()
                connectionStatusTextView.visibility = View.VISIBLE
                connectionStatusTextView.text = "Connected"
                startCallButton.visibility = View.VISIBLE
                waitingForIncomingCallTextView.visibility = View.VISIBLE
            }
        }
    }
}

private fun loginAsBob() {
    otherUser = "Alice"
    client.createSession(BOB_JWT) {
            err, sessionId ->
        when {
            err != null -> {
                hideUI()
                connectionStatusTextView.visibility = View.VISIBLE
                connectionStatusTextView.text = err.localizedMessage
            }
            else -> {
                hideUI()
                connectionStatusTextView.visibility = View.VISIBLE
                connectionStatusTextView.text = "Connected"
                startCallButton.visibility = View.VISIBLE
                waitingForIncomingCallTextView.visibility = View.VISIBLE
            }
        }
    }
}

NOTA El tiempo de caducidad del token se fijó en 6 horas, por lo que tendrás que generar uno nuevo si es demasiado antiguo.

Construir y ejecutar

Pulse Ctrl + R para crear y ejecutar la aplicación.

Después de iniciar sesión con éxito, verá waiting for incoming call texto y make a call botón:

Make a call

Hacer una llamada de voz de aplicación a aplicación

Realiza una llamada de voz desde una aplicación Android a la misma aplicación Android instalada en otro dispositivo utilizando el SDK Android Client.

Pasos
1
Introducción a esta tarea
2
Prerequisites
3
Crear un servidor webhook
4
Crear una aplicación de Vonage
5
Crear los usuarios
6
Generar JWT
7
Crear un proyecto Android
8
Añadir permisos
9
Construir pantalla principal
10
Inicializar el cliente
11
Recibir llamada
12
Realizar una llamada
13
¿Y ahora qué?