
Compartilhar:
Sou desenvolvedor de JavaScript e instrutor de desenvolvimento na Vonage. Ao longo dos anos, tenho me interessado muito por modelos, Node.js, aplicativos web progressivos e estratégias “offline-first”, mas o que sempre adorei de verdade é uma API útil e bem documentada. Meu objetivo é tornar a sua experiência com nossas APIs a melhor possível.
Como enviar uma mensagem pelo Viber usando o Node.js
Tempo de leitura: 2 minutos
Se você ou seus clientes estiverem em um país onde o Viber é a plataforma de mensagens padrão, você vai querer que sua organização também possa se comunicar usando esse serviço. Você pode realizar tarefas essenciais por meio de mensagens de texto ou simplesmente querer enviar notificações. Seja qual for a complexidade, é possível adicionar a comunicação pelo Viber ao seu aplicativo Node.js. Para ver como isso funciona sem precisar se inscrever para obter um perfil empresarial do Viber, você pode usar sandbox do Viber da Vonage.
Pré-requisitos
Neste exemplo, você usará a biblioteca leve axios para fazer uma solicitação POST. Você tem acesso a tudo o mais de que precisa na Messages API, por meio do ambiente de teste. Portanto, para começar, você só precisa de:
Configure seu ambiente de teste
Caso ainda não tenha feito isso, acesse Mensagens e Despacho > Sandbox no seu painel para configurar sua sandbox. A maneira mais rápida é pegar seu dispositivo com o Viber instalado e posicionar a câmera no centro do código QR fornecido. Ao enviar a mensagem personalizada gerada, seu número será adicionado à lista de permissões. Se o código QR não funcionar com a sua configuração, você também pode entrar na lista de permissões por e-mail.
Configurar o Axios
Você pode usar o axios praticamente assim que instalá-lo, mas será necessário instalá-lo primeiro. Crie um arquivo chamado app.js em um novo diretório ou em um diretório que você usa para experimentos. No mesmo diretório, instale o axios:
> npm install axios -s
Comece seu código em app.js criando um cliente axios:
const axios = require('axios'); Forneça seus dados
Todos os dados que você precisa fornecer estão visíveis no comando cURL no seu painel. Você precisará de um nome de usuário e uma senha, o ID do Viber de onde a mensagem será enviada e o número incluído na lista de permissões para o qual a mensagem será enviada.
Você pode copiar o nome de usuário e a senha do valor mascarado após o -u sinalizador. Você pode reconhecê-los como sua chave e seu segredo de API, e também pode copiá-los da página “Introdução” no painel de controle. O ID de origem também é exibido no comando cURL, e o número de destino é o seu próprio número incluído na lista de permissões:
var user = '12ab3456';
var password = '123AbcdefghIJklM';
var from_id = `12345`;
var to_num = '441234567890';Assim, você não estará apenas enviando texto estático; poderá acrescentar o dia da semana à sua mensagem. Crie algumas variáveis para armazenar esses dados e utilizá-los em sua aplicação. Ou, melhor ainda, substitua por dados dinâmicos do seu próprio caso de uso ou aplicativo:
const weekdays = [
'Sunday',
'Monday',
'Tuesday',
'Wednesday',
'Thursday',
'Friday',
'Saturday'
];
var today = weekdays[new Date().getDay()]; Faça a solicitação
O Axios fornecerá as configurações padrão para sua solicitação POST caso você forneça a URL e os dados. O objeto de dados corresponde aos mesmos dados do comando cURL exibido no painel. Se você quiser enviar uma mensagem de teste mais relevante para o seu caso de uso, pode alterá-la diretamente no código. Você também pode fornecer um objeto de opções, que conterá suas credenciais de autorização.
Assim que a solicitação for concluída, a próxima função de retorno receberá a resposta. A partir daí, você poderá verificar o código de status e quaisquer dados que tenham sido retornados. Nesse caso, você deverá receber um UUID da mensagem. Você também pode interceptar quaisquer erros que possam ocorrer e registrá-los no console:
axios.post('https://messages-sandbox.nexmo.com/v0.1/messages',{
"from": { "type": "viber_service_msg", "id": from_id },
"to": { "type": "viber_service_msg", "number": to_num },
"message": {
"content": {
"type": "text",
"text": "Hello from Vonage! Happy " + today
}
}
},{
auth: {
username: user,
password: password
}
})
.then(function (response) {
console.log('Status: ' + response.status);
console.log(response.data);
})
.catch(function (error) {
console.error(error);
}); Experimente
No diretório em que você criou o arquivo, execute:
> node app.js
Você deve receber sua mensagem de teste no Viber no dispositivo que você adicionou à lista de permissões. Para ver o exemplo completo, você pode conferir o código no GitHub.
Compartilhar:
Sou desenvolvedor de JavaScript e instrutor de desenvolvimento na Vonage. Ao longo dos anos, tenho me interessado muito por modelos, Node.js, aplicativos web progressivos e estratégias “offline-first”, mas o que sempre adorei de verdade é uma API útil e bem documentada. Meu objetivo é tornar a sua experiência com nossas APIs a melhor possível.