
Compartilhar:
Sina é um ex-membro da equipe da Vonage. Ele atuou como Java Developer Advocate na Vonage. Com formação acadêmica, ele tem uma curiosidade geral por tudo o que se relaciona a carros, computadores, programação, tecnologia e natureza humana. Em seu tempo livre, ele gosta de caminhar ou jogar videogames competitivos.
Como enviar uma mensagem de texto em 5 linhas de Java
Tempo de leitura: 5 minutos
Introdução
Se você é um desenvolvedor Java, talvez já tenha ouvido falar sobre JEP 445: Classes sem nome e métodos Main de instância. Esse recurso em pré-visualização, introduzido no Java 21, reduz significativamente o código repetitivo necessário para escrever um programa simples do tipo “Hello, World!”. Embora a maioria dos desenvolvedores profissionais raramente precise escrever um aplicativo com um único método, isso pode, às vezes, ser útil para criar exemplos mínimos reproduzíveis ou para testar se seu ambiente está configurado corretamente. Neste artigo, demonstrarei essa nova sintaxe mostrando como enviar uma mensagem de texto em apenas cinco linhas de código usando nossa Messages API.
Pré-requisitos
Baixe e instale o Java 21. Você pode encontrar versões de acesso antecipado antes do lançamento oficial. Se você estiver lendo isso depois de setembro de 2023, poderá encontrar versões do JDK 21 em vários lugares, por exemplo, Eclipse Temurin ou Oracle.
Abra um terminal e acesse ou crie um diretório de trabalho adequado. Por exemplo,
cd ~/Projects && mkdir vonage-java-demo.Defina o JDK 21 como sua versão do Java. A maneira de fazer isso dependerá do seu sistema operacional, mas, em teoria, não deve ser mais complicado do que atualizar sua
JAVA_HOMEvariável de ambiente para que ela aponte para o JDK que você baixou na Etapa 1. Você pode verificar qual JDK está usando digitandojava --versionno seu terminal.Baixe o Java SDK com todas as suas dependências e salve-o no seu diretório de trabalho. Substitua o número da versão fornecido no link pela versão mais recente, que pode ser encontrada na página de lançamentos do GitHub.
O Código
Abaixo está o código para enviar um SMS. Crie um arquivo Java no seu diretório de trabalho — por exemplo, VonageTextDemo.java. Em seguida, cole o código abaixo no arquivo e salve-o. Substitua o número to pelo seu número de telefone, apiKey pela sua chave de API e apiSecret pelo seu segredo (disponível no no painel do desenvolvedor).
import com.vonage.client.*; import com.vonage.client.messages.*; import com.vonage.client.messages.sms.*;
void main() {
var client = VonageClient.builder().apiKey("a1b2c3d4").apiSecret("0123456789Abcdef").build();
client.getMessagesClient().sendMessage(SmsTextRequest.builder().from("Vonage Java").to("447418360119").text("Hello, World!").build());
}Veja como o código funciona.
A linha 1 importa as classes dos pacotes necessários para a compilação.
A linha 2 apresenta a nova sintaxe introduzida no Java 21. Embora sempre tenha sido possível omitir a declaração de um pacote, até o Java 21, o método `main` precisava estar contido em uma classe e tinha que ser declarado exatamente da seguinte forma
public static void main(String[] args)(ou mesmopublic static void main(String… args)). Você pode saber mais sobre a nova sintaxe em Inside Java Newscast #49.A linha 3 cria o cliente Vonage utilizando sua chave de API e seu segredo como método de autenticação. Essa é a maneira mais simples de começar a usar a Messages API, mas recomendamos que você utilize um ID de aplicativo e uma chave privada em um ambiente de produção.
Na linha 4, a mensagem é construída e enviada. O
com.vonage.client.messages.MessagesClient#sendMessage(MessageRequest)método está sendo chamado com umaSmsTextRequest— uma subclasse deMessageRequest. Todas as solicitações de mensagem seguem o padrão Builder (você pode ler mais sobre isso em um dos meus posts anteriores no blog]. Isso permite a construção declarativa do conteúdo da mensagem. Por fim, para completar.A linha 5 é, obviamente, a chave de fechamento do método principal declarado na linha 2.
Se você quiser enviar uma mensagem pelo WhatsApp, substitua SmsTextRequest por WhatsappTextRequest e atualize a importação. Observe que você precisará usar a Sandbox da Messages API para enviar uma mensagem pelo WhatsApp; caso contrário, você precisará configurar um Account do WhatsApp Business e usar esse número. O SDK do Java oferece o useSandboxEndpoint() método em MessagesClient para maior comodidade.
import com.vonage.client.*; import com.vonage.client.messages.*; import com.vonage.client.messages.whatsapp.*;
void main() {
var client = VonageClient.builder().apiKey("a1b2c3d4").apiSecret("0123456789Abcdef").build();
client.getMessagesClient().useSandboxEndpoint().sendMessage(WhatsappTextRequest.builder().from("14157386102").to("447418360119").text("Hello, World!").build());
}Da mesma forma, você pode enviar uma mensagem de texto pelo Viber assim:
import com.vonage.client.*; import com.vonage.client.messages.*; import com.vonage.client.messages.viber.*;
void main() {
var client = VonageClient.builder().apiKey("a1b2c3d4").apiSecret("0123456789Abcdef").build();
client.getMessagesClient().useSandboxEndpoint().sendMessage(ViberTextRequest.builder().from("My Company").to("447418360119").text("Hello, World!").build());
}E aqui está o mesmo para o Facebook Messenger — use seu ID de destinatário em to e o ID do Sandbox de Mensagens em from:
import com.vonage.client.*; import com.vonage.client.messages.*; import com.vonage.client.messages.messenger.*;
void main() {
var client = VonageClient.builder().apiKey("a1b2c3d4").apiSecret("0123456789Abcdef").build();
client.getMessagesClient().useSandboxEndpoint().sendMessage(MessengerTextRequest.builder().from("107083064136738").to("6573130892744564").text("Hello, World!").build());
} Compilar e executar
No seu diretório de trabalho, digite o seguinte comando:
É claro, substitua client-7.6.0-all.jar pelo nome do arquivo JAR que você baixou, assim como “VonageTextDemo” — esse deve ser o nome que você deu ao arquivo criado anteriormente. Se a compilação for bem-sucedida, você deverá ver um .class arquivo gerado no seu diretório de trabalho, por exemplo, VonageTextDemo.class. Agora você pode executá-lo da seguinte maneira:
Se você der uma olhada no seu celular agora, deve ter recebido uma mensagem de texto!
Você pode conferir mais exemplos em nosso repositório de trechos de código Java. A Messages API oferece suporte não apenas a mensagens de texto, mas também a multimídia, como arquivos, imagens, áudio, vídeo e muito mais.
Encerrando
Por enquanto é só isso! Se você encontrar algum problema ou tiver sugestões de melhorias, fique à vontade para abrir um ticket no GitHubou entre em contato conosco no Twitter ou dar uma passada no nosso Slack da Comunidade se tiver algum feedback ou apenas quiser dar um oi. Espero que você tenha uma ótima experiência ao usar as APIs da Vonage em Java!
Compartilhar:
Sina é um ex-membro da equipe da Vonage. Ele atuou como Java Developer Advocate na Vonage. Com formação acadêmica, ele tem uma curiosidade geral por tudo o que se relaciona a carros, computadores, programação, tecnologia e natureza humana. Em seu tempo livre, ele gosta de caminhar ou jogar videogames competitivos.