Finalizar una llamada
La llamada puede ser finalizada por una de las dos partes:
- llamando a la aplicación
hangupen elcallinstancia - callee colgando en el dispositivo físico
Finalizar la llamada cuando el interlocutor cuelga
Para finalizar la llamada (colgar), debes guardar la referencia al objeto de la llamada en curso. Añade onGoingCallID en la parte superior de MainActivity:
private var onGoingCallID: CallId? = null
Es necesario almacenar la referencia de llamada en curso en el onGoingCallID y añada setOnRTCHangupListener para avisarte cuando finalice la llamada.
En el MainActivity actualizar el cuerpo del onCreate para incluir el siguiente listener al final del método.
client.setOnCallHangupListener { callId, callQuality, isRemote ->
onGoingCallID = null
startCallButton.visibility = View.VISIBLE
endCallButton.visibility = View.INVISIBLE
}
En el MainActivity actualizar el cuerpo del startCall método. Asegúrese de sustituir PHONE_NUMBER a continuación con el número de teléfono real al que desea llamar, en el campo E.164 (por ejemplo, 447700900000):
@SuppressLint("MissingPermission")
fun startCall() {
client.serverCall(mapOf("to" to "PHONE_NUMBER")) {
err, outboundCall ->
when {
err != null -> {
connectionStatusTextView.text = err.localizedMessage
}
else -> {
onGoingCallID = outboundCall
startCallButton.visibility = View.INVISIBLE
endCallButton.visibility = View.VISIBLE
}
}
}
}
Cuando finaliza la llamada (independientemente de quién la finalice, ya sea la aplicación de llamadas o el destinatario), la interfaz de usuario se actualiza para reflejar el estado actual de la llamada (make a call button se muestra y END CALL (el botón está oculto).
Finalizar la llamada en la aplicación
En el MainActivity rellena el cuerpo del hangup método:
private fun hangup() {
onGoingCallID?.let {
client.hangup(it) {
err ->
when {
err != null -> {
connectionStatusTextView.text = err.localizedMessage
}
else -> {
onGoingCallID = null
}
}
}
}
}
Observe que después de colgar con éxito se establece el valor de la opción onGoingCallID a null.
Construir y ejecutar
Pulse el botón Ctrl + R Teclas para compilar y ejecutar la aplicación. Inicia y finaliza la llamada para ver los cambios en la interfaz de usuario.
Realizar una llamada de voz desde la aplicación
Realiza una llamada de voz desde una aplicación android a un teléfono utilizando el Client SDK de Android.