
Compartilhar:
Steve se autodenomina “Mathlete” e “Rei da Ironia”. Ele também é apaixonado por galgos, quebra-cabeças de torção e jogos de tabuleiro europeus. Quando não está falando de matemática para quem não entende de matemática, nem de Java para quem não entende de Java, ele pode ser encontrado tomando café e programando.
Como criar uma teleconferência com Java
Tempo de leitura: 9 minutos
Neste tutorial, você aprenderá como iniciar uma teleconferência para conectar várias pessoas que ligam para um número. O código de exemplo está no GitHub.
Anteriormente, mostramos a vocês como receber uma ligação e reencaminhar uma ligação ; portanto, se você ainda não estiver familiarizado com esses Concepts, leia esses posts primeiro.
Pré-requisitos
Você utilizará o Gradle para gerenciar suas dependências e executar seu aplicativo. Além disso, você precisará se certificar de que tem uma cópia do JDK instalada. Vou usar o JDK 11 neste tutorial, mas qualquer versão a partir do JDK 8 deve funcionar.
Por fim, você precisará do CLI da Vonage instalada. Você a utilizará para adquirir um número de telefone e configurar sua conta da Vonage para que ela aponte para seu novo aplicativo.
Como criar uma teleconferência com Java
Este tutorial irá guiá-lo pelas seguintes etapas:
Usando o Gradle para configurar um novo projeto em Java.
Usando o estrutura do Spark para controlar a chamada.
Adquirir um número e configurar sua conta da Vonage para usar esse número com seu aplicativo.
Usando o Gradle para configurar um novo projeto em Java
Você usará o Gradle para gerenciar suas dependências e para criar e executar sua aplicação Java.
O gradle init --type=java-application comando criará todas as pastas necessárias, além de uma classe de exemplo na qual você escreverá seu código.
Na linha de comando, crie um novo projeto Java com os seguintes comandos, aceitando qualquer uma das opções padrão apresentadas pelo Gradle:
O Gradle criará a App classe na src/main/java/conference/call pasta.
Dentro dessa classe há um getGreeting e main método. Você não vai precisar do getGreeting , então fique à vontade para removê-lo.
Sua App classe deve ficar assim:
/*
* This Java source file was generated by the Gradle 'init' task.
*/
package conference.call;
public class App {
public static void main(String[] args) {
// Future Code Goes Here
}
} Utilização do Spark Framework para controlar a chamada
Você utilizará o framework Spark para receber uma chamada HTTP enviada pela Vonage sempre que seu número receber uma chamada.
Adicionando as dependências
Adicione o seguinte ao dependencies bloco no seu build.gradle arquivo:
// Spark Framework
implementation "com.sparkjava:spark-core:2.8.0"
// Nexmo Java Client
implementation "com.nexmo:client:5.1.0"Seu dependencies bloco deve ficar assim:
dependencies {
implementation "com.sparkjava:spark-core:2.8.0"
implementation "com.nexmo:client:5.1.0"
// Use JUnit test framework
testImplementation 'junit:junit:4.12'
} Definir a rota de resposta
Quando uma chamada é recebida, a Vonage enviará uma solicitação para uma URL de webhook predefinida. Ela espera receber um Objeto de Controle de Chamadas da Vonage (NCCO) contendo uma lista de ações a serem executadas.
Você utilizará a talk ação para atender a pessoa que está ligando e a conversation ação para conectar as chamadas recebidas a uma conferência.
Este é o NCCO resultante que seu aplicativo irá criar:
[
{
"text": "You will now be added to the conference call.",
"action": "talk"
},
{
"name": "team-meeting",
"action": "conversation"
}
]Você utilizará o TalkAction e ConversationAction do SDK do Servidor Java da Vonage para criar o NCCO acima.
Adicione o código a seguir ao main método:
TalkAction talk = TalkAction.builder("You will now be added to the conference call.")
.build();
ConversationAction conversation = ConversationAction.builder("team-meeting")
.build();
Ncco ncco = new Ncco(talk, conversation);Agora que você definiu o NCCO, vai configurar o Spark para atender ao NCCO. Sua aplicação ficará à escuta na porta 3000 e a rota será /webhooks/answer.
Adicione o seguinte ao main método:
port(3000);
get("/webhooks/answer", (req, res) -> {
res.type("application/json");
return ncco.toJson();
});
O main método ficará assim:
public static void main(String[] args) {
TalkAction talk = TalkAction.builder("You will now be added to the conference call.")
.build();
ConversationAction conversation = ConversationAction.builder("team-meeting")
.build();
Ncco ncco = new Ncco(talk, conversation);
port(3000);
get("/webhooks/answer", (req, res) -> {
res.type("application/json");
return ncco.toJson();
});
}
Compra de um número
Você precisará de um número da Vonage para receber chamadas telefônicas. Caso não tenha um número, você pode usar o CLI da Vonage para adquirir um:
Observação: NUMBER aqui representa o número que você deseja comprar, e COUNTRYCODE o código do país desse número. Se você ainda não souber o número, pode pesquisar números disponíveis em um país específico desta forma (aqui estamos pesquisando números nos EUA):
Anote o número que você comprou. Você precisará desse número para vincular seu aplicativo e para realizar os testes.
Como disponibilizar seu aplicativo
Para enviar uma solicitação HTTP ao seu aplicativo, a Vonage precisa saber a URL em que o seu aplicativo está sendo executado.
Em vez de configurar sua rede local ou hospedar seu aplicativo em um serviço externo, você pode usar o ngrok para disponibilizar seu aplicativo na internet com segurança.
Baixe o ngrok e execute o seguinte comando:
Anote o endereço de encaminhamento, pois você precisará dele ao configurar sua conta. Na imagem a seguir, o endereço de encaminhamento é http://99cad2de.ngrok.io.
ngrok running in a terminal
Configure seu Account da Vonage
Se você não tiver uma aplicação, pode usar a CLI da Vonage para criar uma utilizando seu endereço de encaminhamento do ngrok:
Após executar esse comando, será exibido um ID de aplicativo. Por exemplo: notreal-1111-2222-3333-appid. Você precisará desse ID de aplicativo para vincular seu número de telefone ao aplicativo.
Você pode usar a CLI da Vonage para vincular seu número de telefone ao aplicativo:
Teste seu aplicativo
Inicie seu aplicativo com o gradle run comando dentro do seu conference-call diretório.
Ligue para o seu número da Vonage e peça a um amigo, colega ou use outro telefone para fazer o mesmo. Cada nova pessoa que ligar será incluída na teleconferência.
Conclusão
Com apenas algumas linhas de código, você criou um aplicativo capaz de realizar teleconferências com várias pessoas.
Confira nossa documentação sobre Vonage Developer , onde você pode saber mais sobre fluxo de chamadas ou Objetos de Controle de Chamadas da Vonage.
Você também pode dar uma olhada na trecho de código deste exemplo e muito mais.
Compartilhar:
Steve se autodenomina “Mathlete” e “Rei da Ironia”. Ele também é apaixonado por galgos, quebra-cabeças de torção e jogos de tabuleiro europeus. Quando não está falando de matemática para quem não entende de matemática, nem de Java para quem não entende de Java, ele pode ser encontrado tomando café e programando.