
Partager:
Je suis développeur JavaScript et éducateur de développeurs chez Vonage. Au fil des ans, j'ai été très intéressé par les modèles, Node.js, les applications Web progressives et les stratégies offline-first, mais ce que j'ai toujours aimé, c'est une API utile et bien documentée. Mon objectif est de faire en sorte que votre expérience de l'utilisation de nos API soit la meilleure possible.
Comment envoyer un message Viber avec Node.js
Temps de lecture : 2 minutes
Si vous ou vos clients vous trouvez dans un pays où Viber est la plateforme de messagerie par défaut, vous voudrez que votre organisation puisse également communiquer à l'aide de ce service. Vous pouvez effectuer des tâches essentielles par SMS ou simplement envoyer des notifications. Quelle que soit la complexité, vous pouvez ajouter la communication Viber à votre application Node.js. Pour voir comment cela fonctionne sans demander un profil commercial Vibervous pouvez utiliser le bac à sable Viber de Vonage.
Conditions préalables
Pour cet exemple, vous utiliserez le logiciel léger axios pour effectuer une requête POST. Vous avez accès à tout ce dont vous avez besoin à partir de l'API Messages, via le bac à sable. Pour commencer, vous n'avez donc besoin que de
Vonage API Account
To complete this tutorial, you will need a Vonage API account. If you don’t have one already, you can sign up today and start building with free credit. Once you have an account, you can find your API Key and API Secret at the top of the Vonage API Dashboard.
This tutorial also uses a virtual phone number. To purchase one, go to Numbers > Buy Numbers and search for one that meets your needs.
Mettre en place votre bac à sable
Si vous ne l'avez pas encore fait, naviguez vers Messages et envoi > Bac à sable dans votre tableau de bord pour configurer votre bac à sable. Le moyen le plus rapide est de prendre votre appareil avec Viber installé et de centrer la caméra sur le code QR fourni. L'envoi du message personnalisé généré mettra votre numéro sur liste blanche. Si le code QR ne fonctionne pas avec votre configuration, vous pouvez également rejoindre la liste blanche par e-mail.
Configurer Axios
Vous pouvez utiliser axios dès sa sortie de l'emballage, mais vous devez l'installer. Créez un fichier appelé app.js dans un nouveau répertoire ou dans un répertoire que vous utilisez pour vos expériences. Dans le même répertoire, installez axios :
> npm install axios -s
Commencez votre code dans app.js en créant un client axios :
const axios = require('axios'); Fournir vos données
Les données que vous devez fournir sont toutes visibles dans la commande cURL de votre tableau de bord. Vous aurez besoin d'un nom d'utilisateur et d'un mot de passe, de l'identifiant Viber à partir duquel envoyer le message, et du numéro sur liste blanche auquel envoyer le message.
Vous pouvez copier le nom d'utilisateur et le mot de passe à partir de la valeur masquée suivant l'indicateur -u . Vous les reconnaîtrez peut-être comme votre clé et votre secret API, et vous pouvez également les copier à partir de la page "Getting Started" (Démarrage) du tableau de bord. L'identifiant from est également indiqué dans la commande cURL, et le numéro to est votre propre numéro sur liste blanche :
var user = '12ab3456';
var password = '123AbcdefghIJklM';
var from_id = `12345`;
var to_num = '441234567890';Pour ne pas envoyer un texte statique, vous pouvez ajouter le jour de la semaine à votre message. Créez quelques variables pour le stocker et l'utiliser dans vos données. Ou, mieux encore, remplacez-les par des données dynamiques issues de votre propre cas d'utilisation ou application :
const weekdays = [
'Sunday',
'Monday',
'Tuesday',
'Wednesday',
'Thursday',
'Friday',
'Saturday'
];
var today = weekdays[new Date().getDay()]; Faire la demande
Axios fournira les paramètres par défaut pour votre requête POST si vous fournissez l'URL et les données. L'objet data est le même que celui de la commande cURL dans le tableau de bord. Si vous souhaitez envoyer un message de test plus adapté à votre cas d'utilisation, vous pouvez le modifier en ligne. Vous pouvez également fournir un objet options, qui contiendra vos informations d'autorisation.
Une fois la requête terminée, le callback suivant recevra la réponse. À partir de là, vous pouvez vérifier le code d'état et toutes les données qui ont été renvoyées. Dans ce cas, vous devriez obtenir l'UUID du message. Vous pouvez également détecter les erreurs éventuelles et les enregistrer dans la 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);
}); Essayez-le
Dans le répertoire où vous avez créé votre fichier, exécutez :
> node app.js
Vous devriez recevoir votre message de test dans Viber sur l'appareil que vous avez inscrit sur la liste blanche. Pour voir l'ensemble de l'exemple, vous pouvez consulter le sur Github.
Partager:
Je suis développeur JavaScript et éducateur de développeurs chez Vonage. Au fil des ans, j'ai été très intéressé par les modèles, Node.js, les applications Web progressives et les stratégies offline-first, mais ce que j'ai toujours aimé, c'est une API utile et bien documentée. Mon objectif est de faire en sorte que votre expérience de l'utilisation de nos API soit la meilleure possible.
