Kotlin

Inicializar o cliente

VoiceClient é a classe principal usada para interagir com o Client SDK do Android. Antes de utilizá-la, é necessário inicializar o cliente fornecendo uma instância do Android Contexto classe.

No topo do MainActivity definição de classe client propriedade que armazenará a referência ao cliente e otherUser propriedade que conterá o nome do segundo usuário (aquele para quem a chamada será feita):

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

Localize o onCreate método no MainActivity definir classe e inicializar VoiceClient:

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

NOTA: O enableWebsocketInvites O sinalizador na configuração do cliente não deve ser usado em ambiente de produção. Habilite as notificações push para garantir que você receba chamadas mesmo quando o aplicativo estiver em segundo plano. Consulte o notificações push guia para obter mais informações.

O IDE exibirá um aviso sobre a referência não resolvida:

Posicione o cursor sobre o texto em vermelho e pressione Alt + Enter para importar a referência.

Agora no MainActivity Adicionar um método auxiliar à classe que oculte todos os itens da interface do usuário:

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

Por fim, preencha o corpo dos dois métodos para permitir o login do usuário. Certifique-se de substituir ALICE_JWT e BOB_JWT com os JWTs que você criou em uma etapa 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 O prazo de validade do token foi definido para 6 horas; portanto, você precisará gerar um novo caso ele já esteja vencido.

Compilar e executar

Imprensa Ctrl + R botões para criar e executar o aplicativo.

Após o login bem-sucedido do usuário, você verá waiting for incoming call texto e make a call botão:

Make a call

Fazendo uma chamada de voz de aplicativo para aplicativo

Faça uma chamada de voz a partir de um aplicativo Android para o mesmo aplicativo Android instalado em outro dispositivo usando o Client SDK.

Etapas
1
Introdução a esta tarefa
2
Prerequisites
3
Criar um servidor de webhooks
4
Criar uma aplicação da Vonage
5
Criar os usuários
6
Gerar JWTs
7
Criar um projeto Android
8
Adicionar permissões
9
Criar a tela principal
10
Inicializar o cliente
11
Receber chamada
12
Fazer uma ligação
13
E agora?