
Partager:
Julia s'engage à aider ses collègues développeurs en créant des tutoriels, des guides et des ressources pratiques. Grâce à son expérience en matière de sensibilisation et d'éducation, elle vise à rendre la technologie plus accessible et à améliorer l'expérience globale des développeurs. Vous pouvez souvent la trouver lors d'événements communautaires locaux.
Comment construire un SVI en utilisant Node-RED et les API Nexmo
Temps de lecture : 16 minutes
Un SVI ou serveur vocal interactif est un menu d'options présenté à un appelant. Il navigue ensuite dans ce menu en utilisant les chiffres de son clavier pour envoyer des signaux DTMF (Dual Tone Multi-Frequency).
Chaque option du SVI peut orienter l'appel vers un chemin différent, par exemple en transférant l'appel vers une destination spécifique, en diffusant une information enregistrée ou même en déclenchant un autre service tel qu'un SMS.
Les SVI sont la méthode de navigation fondamentale des applications Voice Call. Ils peuvent avoir plusieurs niveaux, où la sélection d'une option présente à l'utilisateur d'autres options, et ce jusqu'à une profondeur infinie !
Pour ce tutoriel, nous allons créer un SVI à un seul niveau avec trois chemins possibles :
Renvoyer l'appel vers un numéro spécifique
Renvoyer l'appelant à la messagerie vocale
Envoyer un SMS à l'appelant
Dépendances
Conditions préalables
Avant de commencer, vous aurez besoin de quelques éléments :
Un moyen d'exposer votre serveur à l'internet. Cela signifie que vous utilisez une version hébergée de Node-RED ou que vous utilisez un service de tunneling comme ngrok - pour vous familiariser avec ce service Démarrer avec Ngrok dans Node-RED tutoriel
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.
Obtenir ses diplômes
Pour utiliser les nœuds Nexmo dans Node-RED, vous devrez fournir vos identifiants, il est donc préférable de les garder à portée de main. Allez dans votre tableau de bord pour trouver votre clé API et votre secret, et notez-les.
Ensuite, vous aurez besoin d'un numéro virtuel compatible avec la Voice vocal. Allez dans Numbers > Acheter des Numbers pour en obtenir un.

Configuration de l'éditeur Node-RED
Accédez à votre éditeur Node-RED en pointant votre navigateur sur http://localhost:1880.
Une fois l'éditeur ouvert, vous devez installer les nœuds Nexmo nodesle nœud nœud Ngrok(si vous n'utilisez pas une version hébergée de Node-RED) et le nœud par défaut Email par défaut. Vous pouvez le faire sous la palette Gérer la palette en recherchant les paquets correspondants et en cliquant sur installer :
Nexmo :
node-red-contrib-nexmoNgrok :
node-red-contrib-ngrokCourriel :
node-red-node-email
Après avoir redémarré Node-RED, vous devriez voir tous ces nœuds apparaître sur le côté gauche de votre écran - dans votre palette de nœuds, parmi d'autres nœuds par défaut.
Exposer votre serveur local à l'Internet
Si vous n'utilisez pas une version hébergée de Node-RED, l'API Voice de Nexmo aura besoin d'un autre moyen d'accéder à vos points de terminaison webhook. rendre votre serveur local accessible via l'internet public. Si vous exécutez Node-RED sur un serveur web public au lieu de votre machine locale, vous êtes prêt à passer à l'étape [Créer une application Nexmo Voice].
Un moyen pratique d'y parvenir est d'utiliser un service de tunnelisation tel que ngroket qu'il existe un nœud que vous venez d'ajouter à votre palette.
Il prend les cordes sur et off pour démarrer/arrêter le tunnel, et affiche l'adresse de l'hôte ngrok dans le champ msg.payload. Consultez notre tutoriel sur Débuter avec Ngrok dans Node-RED pour en savoir plus.
Importation du presse-papiers l'extrait ci-dessous, puis ouvrez les propriétés du nœud ngrok et spécifiez le numéro de port (1880 pour Node-RED) et la région.
[
{
"id": "faed0f7.1e524f",
"type": "inject",
"z": "5b8bbfc3.1a9f18",
"name": "",
"topic": "",
"payload": "on",
"payloadType": "str",
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"x": 190,
"y": 100,
"wires": [
[
"8a01baeb.6756d"
]
]
},
{
"id": "11051fa9.75bd1",
"type": "inject",
"z": "5b8bbfc3.1a9f18",
"name": "",
"topic": "",
"payload": "off",
"payloadType": "str",
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"x": 190,
"y": 160,
"wires": [
[
"8a01baeb.6756d"
]
]
},
{
"id": "8a01baeb.6756d",
"type": "ngrok",
"z": "5b8bbfc3.1a9f18",
"port": "1880",
"creds": "5a9e2b8c.173a2c",
"region": "ap",
"subdomain": "",
"name": "",
"x": 400,
"y": 140,
"wires": [
[
"93fd5675.743c1"
]
]
},
{
"id": "93fd5675.743c1",
"type": "debug",
"z": "5b8bbfc3.1a9f18",
"name": "",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"x": 620,
"y": 140,
"wires": []
},
{
"id": "5a9e2b8c.173a2c",
"type": "ngrokauth",
"z": ""
}
]Frapper Déployer et cliquez sur l'icône sur inject puis naviguez vers l'URL affichée dans la zone de débogage (YOUR_URL pour référence future) pour trouver votre éditeur Node-RED à une adresse publique.

Créer une application Nexmo Voice
L'API Voice de Nexmo utilise les Applications Nexmo pour contenir les informations de sécurité et de configuration nécessaires pour se connecter aux terminaux Nexmo.
Dans la palette Nexmo Node-RED, plusieurs nœuds ont la capacité de créer ces Applications : getrecording, earmuff, mute, hangup, transfer, createcall, playaudio, playtts et playdtmf.
Faites glisser l'un de ces nœuds dans votre espace de travail, puis double-cliquez dessus pour ouvrir les propriétés du nœud.
A côté de l'application Nexmo Credentialssélectionnez "Add new nexmovoiceapp..." dans le menu déroulant et cliquez sur le bouton "Editer". Remplissez les détails ci-dessous et cliquez sur Créer une nouvelle application.
| KEY | DESCRIPTION |
|---|---|
Name |
Choose a name for your Voice Application, for example, "Nexmo Voice Application". |
API Key |
Your Nexmo API key, shown in your account overview. |
API Secret |
Your Nexmo API secret, shown in your account overview. |
Answer URL |
YOUR_URL/answer, you'll be hosting a Nexmo Call Control Object (NCCO) here. - more about this later on. |
Event URL |
YOUR_URL/event, you'll need to reference this when setting up the event handler. |
Node-RED va alors créer une nouvelle Applications Nexmo sur votre Account et remplir les champs App ID et Private Key. Après cette étape, n'hésitez pas à supprimer le nœud Nexmo que vous avez utilisé, car un nœud de configuration a été créé et contient toutes les informations d'identification Nexmo dont ce flux a besoin. nexmovoiceapp config a été créé et contient toutes les informations d'identification Nexmo dont ce flux a besoin.

Configurer un numéro à appeler
Ensuite, vous devrez lier votre numéro virtuel à cette application.
Trouvez l'Application Voice que vous venez de créer dans votre Nexmo Dashboard en naviguant vers Voice > Vos Applications.
Cliquez sur le nom de cette application, puis sous l'onglet Numbers cliquez sur l'onglet Lien à côté du numéro virtuel que vous avez loué précédemment.
Si le numéro que vous souhaitez utiliser est déjà lié à une autre application, cliquez sur Gérer le numéro et configurez-le pour qu'il transfère les appels entrants vers votre application.

Conseil supplémentaire : Utilisez un nœud comment pour noter le numéro Numbers lié à votre application, vous l'aurez ainsi toujours à portée de main.
Enregistrer les événements d'appel
Lorsque vous construisez des flux, il est très utile de voir vos événements d'appel dans la zone de débogage et d'avoir une meilleure compréhension de ce qui se passe réellement, alors ajoutons un webhook d'événement ! Cela aidera également à déboguer plus tard, si nécessaire.
Connecter un nœud http in à un nœud http response ainsi qu'à un nœud debug afin que vous puissiez voir les événements d'appel dans la barre latérale de débogage.
Dans le nœud http in sélectionnez POST en tant que Method et remplissez le champ URL avec /event. Le nœud http response devrait avoir 200 défini comme Status codemais ne vous inquiétez pas, c'est aussi la valeur par défaut.

Traiter les appels entrants
Lorsque vous recevez un appel entrant vers votre numéro virtuel, l'API Voice de Nexmo envoie une demande à un point de terminaison que vous définissez. GET à un point de terminaison que vous définissez, YOUR_URL/answeret attend un ensemble d'instructions sur la manière de traiter l'appel.
Tout d'abord, mettons en œuvre ce point final.
Définir le point de terminaison Webhook pour les appels entrants
Ajouter un voice webhook et un nœud return ncco à votre espace de travail, et reliez-les pour définir un point de terminaison webhook.
Ensuite, ouvrez les propriétés du voice webhook et sélectionnez GET comme Method et tapez /answer dans le champ URL puis appuyez sur Déployer.

C'est très bien ! Vous avez maintenant un webhook qui renvoie un NCCO à l'API de Nexmo. A ce stade, il ne contient pas d'instructions, alors ajoutons-en !
Construire l'objet de contrôle d'appel Nexmo (NCCO)
Les instructions attendues par l'API Nexmo se présentent sous la forme d'un Nexmo Call Control Objectégalement connu sous le nom de NCCO. Il y a beaucoup d'actions différentes disponibles, trouvez les nœuds verts foncés correspondants sous la palette Nexmo dans votre éditeur Node-RED ou consultez la Référence NCCO pour en savoir plus.
Dans ce cas, vous voudrez probablement accueillir l'appelant et lui expliquer les différents itinéraires qu'il peut emprunter, puis l'écouter. Pour ce faire, vous devrez ajouter un nœud talk suivi d'un nœud input nœud.
Ajoutez-les à votre espace de travail, puis connectez-les entre les boutons voice webhook et return ncco entre les nœuds

talk
Ensuite, ouvrez l'éditeur de nœuds talk et définissez le champ Text{} au message que vous souhaitez lire à l'appelant.
Dans ce tutoriel, nous mettrons en place 3 routes :
entrer en contact avec un être humain
laisser un message vocal
recevoir un SMS contenant un lien de réservation en ligne.
Text{}en conséquence. Par exemple "Bonjour ! Vous êtes bien chez X, veuillez appuyer sur 1 pour être mis en relation, sur 2 pour laisser un message, ou sur 3 pour réserver en ligne."
Vous pouvez également personnaliser davantage l'expérience en sélectionnant un Voice Name ou en utilisant des balises balises SSML.
Veillez à cocher également la case Pénétrer dans le texte qui permet à l'appelant d'envoyer ses données avant la fin de la lecture du texte. Cette option est très utile dans le cadre d'un SVI et évite aux personnes d'avoir à écouter une longue liste d'options.

input
Ensuite, nous configurons le nœud input nœud.
Une fois que l'utilisateur a saisi le nombre de Numbers requis, ceux-ci seront envoyés en tant que nouveau webhook, nous devons donc configurer ce chemin.
Dans le champ URL {} entrez l'adresse complète de votre instance NodeRED suivie de /input1 (VOTRE_URL/entrée1), puis définissez le champ Method à GET. Si nous devions par la suite créer un deuxième niveau pour notre SVI, nous devrions envoyer cette entrée à une adresse différente, par exemple /input2.
Profitons-en pour transmettre le numéro de l'appelant en mettant à jour le champ URL {} en YOUR_URL/input1?from={{msg.call.from}}. Cela pourrait s'avérer utile plus tard si nous voulons conserver un enregistrement de ces numéros.
Ne pas cocher Submit on Hash Ne pas cocher cette case pour l'instant - cela signifie que l'entrée est envoyée par l'utilisateur qui appuie sur la touche # par exemple pour collecter un numéro de compte. Conserver la valeur par défaut de Time Outpar défaut, mais fixez la valeur de Max Digits à 1. Cela garantit que l'utilisateur ne peut appuyer que sur une seule touche avant que l'entrée ne soit envoyée, ce qui nous laisse un maximum de 9 options dans notre menu.

Traiter les données
Une fois que l'appelant a soumis son entrée, nous devons l'écouter au nouveau webhook pour l'événement d'entrée.
Tout d'abord, nous devrons implémenter ce point d'accès pour capturer la valeur de l'entrée, puis, en fonction de cette valeur, continuer avec l'itinéraire choisi par l'appelant.
Pour prendre une décision basée sur la valeur d'entrée, nous utiliserons un nœud switch puis, pour chacune des options, nous construirons le NCCO en reliant des nœuds d'action, fermés par un nœud de sortie return NCCO nœud de sortie.
voice webhook
Commencez par ajouter un nœud voice webhook à votre espace de travail. Dans les propriétés du nœud, sélectionnez POST comme méthode et tapez /input dans le champ URL de réponse.
Si vous connectez un nœud debug après celui-ci, après avoir terminé et exécuté le flux, vous verriez les paramètres renvoyés à l /input URL :
| Name | Description |
|---|---|
uuid |
The unique ID of the Call leg for the user initiating the input. |
conversation_uuid |
The unique ID for this conversation. |
timed_out |
Returns true if this input timed out based on the value of Time Out. |
dtmf |
The numbers input by your caller, in order. |
Dans notre cas d'utilisation, nous essayons d'obtenir la valeur dtmf car c'est la voie choisie par l'appelant.
En regardant de plus près la barre latérale de débogage à l'achèvement, nous pouvons voir qu'elle sera dans la propriété dtmf de l'objet call imbriqué dans l'objet msg de sorte que nous pouvons le référencer en tant que {{msg.call.dtmf}} dans les autres nœuds de ce chemin.
switch
Ensuite, nous allons séparer les différents itinéraires en fonction de la valeur {{msg.call.dtmf}} comme suit :
est vide -> relire les options
Ce n'est pas l'une des options proposées (contient 0, 4, 5, 6, 7, 8, 9) -> relire les options
= 1 -> connecter l'appelant
= 2 -> envoi à la messagerie vocale
= 3 -> envoyer le lien de réservation en ligne par SMS à l'appelant.
Pour ce faire, ajoutez un nœud switch à votre canevas, dans son éditeur de nœuds, définissez Property à {{msg.call.dtmf}}puis définissez des règles pour les cinq cas mentionnés ci-dessus.

Route 1 & 2 : Entrée invalide
Connecter les deux premières sorties du nœud switch à l'entrée du nœud talk à l'entrée du nœud. Ainsi, si l'appelant donne une entrée non valide (pas 1, 2 ou 3), le message TTS initial sera répété, énumérant les options disponibles.

Itinéraire 3 : Connecter l'appelant
Pour transférer l'appel entrant, nous devons le connecter à un nouveau point de terminaison - dans ce cas, un numéro de téléphone. Pour ce faire, nous avons besoin d'une connect action. En option, nous pouvons également ajouter un nœud talk pour informer l'appelant que la connexion est en cours.
Câblez un nœud talk dans la troisième sortie du nœud switch dans la troisième sortie du nœud, puis suivre avec un connect et un nœud return ncco nœud.
Tout d'abord, informons l'appelant qu'il est connecté. Dans les propriétés du talk définir la valeur de Text {} à quelque chose comme Veuillez patienter pendant que nous vous connectons. ou le message de votre choix. N'hésitez pas à personnaliser cette expérience en sélectionnant une option Voice Name ou en utilisant les [balises SSML] (/voice/voice-api/concepts/customizing-tts).
Ensuite, ouvrez l'éditeur de nœuds connect et sélectionnez Phone en tant que Endpoint et tapez le numéro que vous souhaitez appeler dans le champ Number {} dans le champ
Laissez le champ From {} Laissez le champ vide pour que l'identification de l'appelant apparaisse comme inconnue, ou remplissez-le avec l'un de vos numéros virtuels Nexmo.

Si vous souhaitez avoir un aperçu du produit fini, appelez votre numéro Nexmo et essayez-le ! Veillez à ne pas appuyer sur la touche 2 ou 3car nous n'avons pas encore mis en place ces itinéraires.
Vous pouvez également consulter notre article de blog [Renvoyer un appel via un proxy Voice avec Node-RED] (https://developer.vonage.com/en/blog/forward-call-via-voice-proxy-node-red-dr) pour une explication plus détaillée de ce chemin.
Itinéraire 4 : Envoyer à la messagerie vocale
Le cas suivant que nous allons couvrir est celui où l'appelant appuie sur 2et choisit de laisser un message vocal.
Si vous souhaitez créer une boîte vocale à partir de zéro, consultez notre tutoriel [Construisez votre propre boîte vocale avec Node-RED et Nexmo Voice API] (https://developer.vonage.com/en/blog/build-voicemail-node-red-voice-api-dr) pour obtenir un guide étape par étape.
Sinon, importez depuis le presse-papiers le fichier JSON suivant dans votre éditeur Node-RED :
[
{
"id": "1a10292a.0468d7",
"type": "talk",
"z": "5b66a8fe.c283c",
"text": "Please leave your message at the tone.",
"voicename": "",
"bargein": false,
"loop": "",
"level": "",
"x": 150,
"y": 140,
"wires": [
[
"9f6c7f15.1e4d48"
]
]
},
{
"id": "9f6c7f15.1e4d48",
"type": "record",
"z": "5b66a8fe.c283c",
"format": "mp3",
"channel": "",
"endonsilence": "3",
"endonkey": "",
"timeout": "",
"beepstart": true,
"eventurl": "YOUR_URL/record?from={{msg.call.from}}",
"eventmethod": "post",
"x": 360,
"y": 140,
"wires": [
[
"f5ae270b.51ba6"
]
]
},
{
"id": "3062ef0c.58d478",
"type": "http in",
"z": "5b66a8fe.c283c",
"name": "",
"url": "/record",
"method": "post",
"upload": false,
"swaggerDoc": "",
"x": 230,
"y": 300,
"wires": [
[
"5b9e35c2.78611c",
"a0e2a9ff.c666d8",
"200966c.00b679a"
]
]
},
{
"id": "200966c.00b679a",
"type": "http response",
"z": "5b66a8fe.c283c",
"name": "",
"statusCode": "",
"headers": {},
"x": 510,
"y": 300,
"wires": []
},
{
"id": "5b9e35c2.78611c",
"type": "getrecording",
"z": "5b66a8fe.c283c",
"creds": "",
"filename": "recordings/{{msg.req.query.from}}_{{msg.payload.timestamp}}.mp3",
"x": 460,
"y": 360,
"wires": [
[
"1c3d166.591956a"
]
]
},
{
"id": "a0e2a9ff.c666d8",
"type": "debug",
"z": "5b66a8fe.c283c",
"name": "",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"x": 470,
"y": 240,
"wires": []
},
{
"id": "a4651c0b.926068",
"type": "e-mail",
"z": "5b66a8fe.c283c",
"server": "smtp.gmail.com",
"port": "465",
"secure": true,
"tls": true,
"name": "",
"dname": "",
"x": 930,
"y": 360,
"wires": []
},
{
"id": "1c3d166.591956a",
"type": "change",
"z": "5b66a8fe.c283c",
"name": "",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "'Voicemail from ' & msg.req.query.from",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 720,
"y": 360,
"wires": [
[
"a4651c0b.926068"
]
]
},
{
"id": "5a0c6126.26ff9",
"type": "return ncco",
"z": "5b66a8fe.c283c",
"name": "",
"x": 770,
"y": 140,
"wires": []
},
{
"id": "f5ae270b.51ba6",
"type": "talk",
"z": "5b66a8fe.c283c",
"text": "Thank you, good bye!",
"voicename": "",
"bargein": false,
"loop": "",
"level": "",
"x": 550,
"y": 140,
"wires": [
[
"5a0c6126.26ff9"
]
]
}
]
Il y a deux choses que vous devez faire pour que cela fonctionne.
Tout d'abord, connectez la quatrième sortie du nœud
switchau nœudtalknœud.Ensuite, dans les propriétés du
recordremplacez VOTRE_URL par l'adresse à laquelle vous hébergez l'éditeur Node-RED (YOUR_URL/record?from={{msg.call.from}}).Dans le nœud
Get Recordingsous Références Nexmo sélectionnez votre Voice Application dans le menu déroulant.Dans le nœud
emaildéfinissez l'adresse électroniqueTol'adresse électronique à laquelle vous souhaitez envoyer les enregistrements vocaux, puis indiquez les informations d'identification de votre client de messagerie dans les champsUseridetPassworddans les champs
Frapper Déployeret votre boîte vocale devrait être opérationnelle. Essayez-le !

Itinéraire 5 : Lien par SMS
La dernière route que nous devons construire concerne le cas où l'appelant appuie sur 3pour choisir de recevoir un lien de réservation en ligne par SMS.
Commençons par Importer depuis le presse-papiers l'extrait ci-dessous :
[
{
"id": "a69bd1e4.39586",
"type": "sendsms",
"z": "5b66a8fe.c283c",
"creds": "",
"to": "{{msg.call.from}}",
"fr": "",
"text": "This is supposed to be your link :)",
"unicode": false,
"x": 550,
"y": 660,
"wires": [
[
"3fd04afe.60abf6"
]
]
},
{
"id": "3fd04afe.60abf6",
"type": "debug",
"z": "5b66a8fe.c283c",
"name": "",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"x": 750,
"y": 660,
"wires": []
},
{
"id": "2af4d230.bb1bbe",
"type": "talk",
"z": "5b66a8fe.c283c",
"text": "Your message is on its way!",
"voicename": "",
"bargein": false,
"loop": "",
"level": "",
"x": 350,
"y": 600,
"wires": [
[
"a69bd1e4.39586",
"6f1df801.8db2e8"
]
]
},
{
"id": "6f1df801.8db2e8",
"type": "return ncco",
"z": "5b66a8fe.c283c",
"name": "",
"x": 610,
"y": 600,
"wires": []
}
]Après l'avoir ajouté à votre espace de travail, connectez la dernière sortie du nœud switch dans l'entrée du nœud talk à l'entrée du nœud

Examinons maintenant de plus près les différents nœuds de ce chemin.
talk
Nous utilisons le nœud talk pour indiquer à l'appelant qu'il se passe quelque chose. N'hésitez pas à faire preuve de créativité avec des [noms de voix personnalisés]((/voice/voice-api/guides/text-to-speech#voice-names)) ou des [balises SSML]((/voice/voice-api/concepts/customizing-tts)), mais un simple "Votre message est en route ! suffira également.
return NCCO
Il est suivi d'un nœud return NCCO pour fermer ce chemin et renvoyer notre "ensemble d'instructions" à l'API Nexmo. Aucune configuration n'est nécessaire ici.
Send SMS
Le nœud Send SMS se charge des tâches les plus lourdes, car c'est lui qui envoie le SMS.
Vous pouvez configurer ce nœud en double-cliquant dessus et en remplissant les paramètres ci-dessous. Vous trouverez API KEY et API SECRET en cliquant sur le bouton d'édition à côté de Nexmo Credentialsaprès avoir sélectionné Ajouter un nouveau nexmobasic dans la liste déroulante.
| KEY | DESCRIPTION |
|---|---|
API KEY |
Your Nexmo API key, shown in your [account overview](${CUSTOMER_DASHBOARD_URL}/getting-started-guide). |
API SECRET |
Your Nexmo API secret, shown in your [account overview](${CUSTOMER_DASHBOARD_URL}/getting-started-guide). |
TO |
The number you are sending the SMS to. In this case {{msg.call.from}}, the caller. |
FROM |
The number or text shown on a handset when it displays your message. You can set a custom alphanumeric FROM to better represent your brand, if this feature is [supported in your country](https://help.nexmo.com/hc/en-us/articles/115011781468). Otherwise, add one of your Nexmo numbers. |
TEXT |
The content of your message. Time to get creative :) |

Le nœud debug est totalement facultatif, mais il est utile lorsque vous souhaitez voir un peu plus de détails dans la barre latérale de débogage.
Vous pouvez consulter notre guide [Comment envoyer des messages SMS avec Node-RED] (https://developer.vonage.com/en/blog/send-sms-messages-node-red-dr) pour en savoir plus sur l'utilisation de l'API SMS.
Essayez-le !
Félicitations ! Vous venez de créer un menu de réponse vocale interactive entièrement fonctionnel ! Il est enfin temps de l'essayer, alors profitez-en !

Quelle est la prochaine étape ?
Ressources
Essayez un autre tutoriel !
Partager:
Julia s'engage à aider ses collègues développeurs en créant des tutoriels, des guides et des ressources pratiques. Grâce à son expérience en matière de sensibilisation et d'éducation, elle vise à rendre la technologie plus accessible et à améliorer l'expérience globale des développeurs. Vous pouvez souvent la trouver lors d'événements communautaires locaux.
