
Teilen Sie:
Julia hat es sich zur Aufgabe gemacht, andere Entwickler durch die Erstellung von Tutorials, Anleitungen und praktischen Ressourcen zu unterstützen. Mit ihrem Hintergrund in den Bereichen Öffentlichkeitsarbeit und Bildung möchte sie Technologien zugänglicher machen und die Erfahrung von Entwicklern insgesamt verbessern. Man kann sie oft bei lokalen Veranstaltungen antreffen.
Wie man eine IVR mit Node-RED und den Nexmo APIs erstellt
Lesedauer: 15 Minuten
Eine IVR oder Interactive Voice Response ist ein Menü mit Optionen, das einem Anrufer präsentiert wird. Der Anrufer navigiert dann durch dieses Menü, indem er die Nummern auf seiner Tastatur benutzt, um DTMF-Signale (Dual Tone Multi-Frequency) zu senden.
Jede Option im IVR kann den Anruf auf einen anderen Weg leiten, z. B. den Anruf an ein bestimmtes Ziel weiterleiten, eine aufgezeichnete Information abspielen oder sogar einen anderen Dienst wie eine SMS auslösen.
IVRs sind die grundlegende Navigationsmethode von Voice Call Applications. Sie können mehrere Ebenen haben, auf denen die Auswahl einer Option dem Benutzer weitere Optionen präsentiert, und das kann bis in unendliche Tiefen gehen!
In diesem Tutorial werden wir nur eine einstufige IVR mit drei möglichen Pfaden erstellen:
Weiterleitung des Anrufs an eine bestimmte Nummer
Anrufer an Voicemail senden
Senden Sie dem Anrufer eine SMS
Abhängigkeiten
Voraussetzungen
Bevor Sie beginnen, benötigen Sie einige Dinge:
Node.js und Node-RED installiert haben, wenn Sie lokal entwickeln
Eine Möglichkeit, Ihren Server dem Internet auszusetzen. Das bedeutet entweder, dass Sie eine gehostete Version von Node-RED betreiben oder einen Tunneldienst wie ngrok - Machen Sie sich mit diesem Service vertraut Erste Schritte mit Ngrok in Node-RED Lehrgang
Vonage API-Konto
Um dieses Tutorial durchzuführen, benötigen Sie ein Vonage API-Konto. Wenn Sie noch keines haben, können Sie sich noch heute anmelden und mit einem kostenlosen Guthaben beginnen. Sobald Sie ein Konto haben, finden Sie Ihren API-Schlüssel und Ihr API-Geheimnis oben auf dem Vonage-API-Dashboard.
In diesem Lernprogramm wird auch eine virtuelle Telefonnummer verwendet. Um eine zu erwerben, gehen Sie zu Rufnummern > Rufnummern kaufen und suchen Sie nach einer Nummer, die Ihren Anforderungen entspricht.
Erlangung von Berechtigungsnachweisen
Um die Nexmo-Knoten in Node-RED zu nutzen, müssen Sie Ihre Anmeldedaten angeben, also halten Sie sie am besten bereit. Gehen Sie zu Ihrem Dashboard um Ihren API-Schlüssel und Ihr Geheimnis zu finden und sie zu notieren.
Als nächstes benötigen Sie ein Voice-aktivierte virtuelle Nummer. Gehen Sie zu Numbers > Numbers kaufen um eine zu erhalten.

Einrichten des Node-RED-Editors
Rufen Sie Ihren Node-RED-Editor auf, indem Sie Ihren Browser auf http://localhost:1880.
Sobald Sie den Editor geöffnet haben, müssen Sie die Nexmo-Knoten, den Ngrok-Knoten(wenn Sie nicht eine gehostete Version von Node-RED verwenden) und den Standard E-Mail-Knoten. Sie können dies unter der Palette verwalten nach den entsprechenden Paketen suchen und auf installieren klicken:
Nexmo:
node-red-contrib-nexmoNgrok:
node-red-contrib-ngrokE-Mail:
node-red-node-email
Nach dem Neustart von Node-RED sollten Sie alle diese Knoten auf der linken Seite Ihres Bildschirms sehen - in Ihrer Knotenpalette, neben anderen Standardknoten.
Öffnen Sie Ihren lokalen Server für das Internet
Falls Sie keine gehostete Version von Node-RED verwenden, benötigt die Nexmo Voice API einen anderen Weg, um auf Ihre Webhook-Endpunkte zuzugreifen. Ihren lokalen Server über das öffentliche Internet zugänglich machen. Wenn Sie Node-RED auf einem öffentlichen Webserver statt auf Ihrem lokalen Rechner laufen lassen, sind Sie bereit für den nächsten Schritt: [Erstellen einer Nexmo Voice ApplikationSchritt].
Ein bequemer Weg, dies zu tun, ist die Verwendung eines Tunneldienstes wie ngrokverwenden, und es gibt einen Knoten für diesen Dienst, den Sie gerade Ihrer Palette hinzugefügt haben.
Es nimmt die Saiten auf und aus als Eingabe, um den Tunnel zu starten/stoppen, und gibt die ngrok-Hostadresse als die msg.payload. Sehen Sie sich unser Tutorial an Erste Schritte mit Ngrok in Node-RED um mehr darüber zu erfahren.
importieren von Zwischenablage das unten stehende Snippet, öffnen Sie dann die ngrok Knoteneigenschaften und geben Sie die Anschlussnummer (1880 für Node-RED) und die Region an.
[
{
"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": ""
}
]Besuchen Sie Bereitstellen und klicken Sie auf das auf inject und navigieren Sie dann zu der im Debug-Bereich angezeigten URL (YOUR_URL für zukünftige Referenzen), um Ihren Node-RED-Editor unter einer öffentlichen Adresse zu finden.

Erstellen einer Nexmo Voice Applikation
Die Nexmo Voice API verwendet Nexmo Applications, um Sicherheits- und Konfigurationsinformationen zu speichern, die für die Verbindung mit Nexmo-Endpunkten benötigt werden.
In der Nexmo Node-RED-Palette gibt es mehrere Knoten, mit denen diese Applications erstellt werden können: getrecording, earmuff, mute, hangup, transfer, createcall, playaudio, playtts und playdtmf.
Ziehen Sie einen dieser Knoten in Ihren Arbeitsbereich und doppelklicken Sie dann darauf, um die Knoteneigenschaften zu öffnen.
Neben dem Nexmo Credentialswählen Sie "Neue nexmovoiceapp hinzufügen..." aus dem Dropdown-Menü und klicken Sie auf die Schaltfläche "Bearbeiten". Geben Sie die unten stehenden Daten ein und klicken Sie auf Neue Anwendung erstellen.
| 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 erstellt dann eine neue Nexmo Application auf Ihrem Account und füllt die Felder App ID und Private Key aus. Nach diesem Schritt können Sie den Nexmo-Knoten, den Sie verwendet haben, löschen, da ein nexmovoiceapp Konfigurationsknoten erstellt wurde, der alle Nexmo-Anmeldeinformationen enthält, die dieser Ablauf benötigt.

Einrichten einer Nummer zum Anrufen
Als nächstes müssen Sie Ihre virtuelle Nummer mit dieser Anwendung verknüpfen.
Sie finden die soeben erstellte Voice Application in Ihrem Nexmo Dashboard, indem Sie zu Voice > Deine Applications.
Klicken Sie auf den Namen dieser Anwendung und dann unter dem Menüpunkt Numbers auf die Registerkarte Link neben der virtuellen Nummer, die Sie zuvor gemietet haben.
Falls die Nummer, die Sie verwenden möchten, bereits mit einer anderen App verknüpft ist, klicken Sie auf Nummer verwalten und konfigurieren Sie sie so, dass eingehende Anrufe an Ihre App weitergeleitet werden.

Bonus-Tipp: Verwenden Sie einen comment Knoten, um die mit Ihrer Anwendung verknüpfte Nexmo-Nummer zu notieren, so haben Sie sie immer griffbereit.
Anrufereignisse protokollieren
Bei der Erstellung von Abläufen ist es sehr nützlich, Ihre Anrufereignisse im Debug-Bereich zu sehen und besser zu verstehen, was wirklich vor sich geht, also fügen wir einen Ereignis-Webhook hinzu! Dies wird auch bei der späteren Fehlersuche helfen, falls erforderlich.
Verbinden Sie einen http in Knoten mit einem http response Knoten, als auch mit einem debug Knoten, so dass Sie Ihre Aufrufereignisse in der Debug-Seitenleiste anzeigen können.
Im Knoten http in Knoten, wählen Sie POST als Method und füllen Sie das Feld URL Feld mit /event. Der http response Knoten sollte 200 setzen als Status codegesetzt sein, aber keine Sorge, dies ist auch der Standardwert.

Eingehende Anrufe abwickeln
Wenn Sie einen eingehenden Anruf an Ihre virtuelle Nummer erhalten, stellt die Nexmo Voice API eine GET Anfrage an einen von Ihnen definierten Endpunkt, YOUR_URL/answerund erwartet eine Reihe von Anweisungen, wie der Anruf zu behandeln ist.
Zunächst müssen wir diesen Endpunkt implementieren.
Definieren Sie den Webhook-Endpunkt für eingehende Anrufe
a hinzufügen voice webhook und einen return ncco Knoten zu Ihrem Arbeitsbereich hinzu und verbinden Sie sie miteinander, um einen Webhook-Endpunkt zu definieren.
Als nächstes öffnen Sie die voice webhook Knoteneigenschaften, wählen Sie GET als Method und geben Sie /answer in das Feld URL ein, und drücken Sie dann Bereitstellen.

Großartig! Jetzt haben Sie einen Webhook, der einen NCCO an die Nexmo-API zurückgibt. Zu diesem Zeitpunkt enthält er noch keine Anweisungen, also fügen wir welche hinzu!
Erstellen Sie das Nexmo Call Control Object (NCCO)
Die von der Nexmo-API erwarteten Anweisungen kommen in Form eines Nexmo-Aufrufsteuerungsobjekts, auch bekannt als NCCO. Es gibt viele verschiedene Aktionen, finden Sie die entsprechenden dunkelgrünen Knoten unter der Nexmo-Palette in Ihrem Node-RED-Editor oder schauen Sie in der NCCO-Referenz um mehr über sie zu erfahren.
In diesem Fall sollten Sie den Anrufer begrüßen und ihm die verschiedenen Möglichkeiten erklären, die er wählen kann, und dann seine Meinung hören. Zu diesem Zweck müssen Sie einen talk Knoten, gefolgt von einem input Knoten.
Fügen Sie sie zu Ihrem Arbeitsbereich hinzu und verbinden Sie sie dann zwischen den voice webhook und return ncco Knoten.

talk
Als nächstes öffnen Sie den talk Knoteneditor und setzen Sie das Feld Text{} auf die Nachricht, die dem Anrufer vorgelesen werden soll.
In diesem Lernprogramm werden wir 3 Routen implementieren:
mit einem Menschen verbunden werden
eine Sprachnachricht hinterlassen
eine SMS mit einem Online-Buchungslink erhalten, also fügen wir die
Text{}entsprechend. Z.B.. "Hallo, Sie haben X erreicht, bitte drücken Sie 1, um verbunden zu werden, drücken Sie 2, um eine Nachricht zu hinterlassen, oder drücken Sie 3, um online zu buchen."
Sie können das Erlebnis auch weiter personalisieren, indem Sie eine Voice Name oder durch die Verwendung von SSML-Tags.
Vergewissern Sie sich, dass Sie auch das Häkchen bei Zuschlagen aktivieren, damit der Anrufer seine Eingaben senden kann, bevor der Text zu Ende gelesen wurde. Dies ist in einem IVR sehr nützlich und verhindert, dass der Anrufer eine lange Liste von Optionen anhören muss.

input
Als nächstes konfigurieren wir den input Knoten.
Sobald der Benutzer die erforderliche Anzahl von Ziffern eingegeben hat, werden diese als neuer Webhook gesendet, weshalb wir diesen Pfad konfigurieren müssen.
In das Feld URL {} Feld geben Sie die vollständige Adresse Ihrer NodeRED-Instanz ein, gefolgt von /input1 (IHRE_URL/Eingabe1) ein, dann setzen Sie die Method auf GET. Wenn wir später eine zweite Ebene für unser IVR erstellen, müssen wir diese Eingabe an eine andere Adresse senden, z. B. /input2.
Nutzen wir diese Gelegenheit, um die Anrufernummer weiterzugeben, indem wir das Feld URL {} Feld auf YOUR_URL/input1?from={{msg.call.from}}. Dies könnte sich später als nützlich erweisen, wenn wir diese Nummern aufzeichnen wollen.
Lassen Sie Submit on Hash vorerst unmarkiert - dies würde dazu führen, dass die Eingabe durch Drücken der Taste # Taste drückt, z. B. um eine Kontonummer zu erfassen. Behalten Sie den Standardwert von Time Out, aber setzen Sie Max Digits auf 1. Dadurch wird sichergestellt, dass der Benutzer nur eine einzige Taste drücken kann, bevor die Eingabe gesendet wird, so dass wir maximal 9 Optionen in unserem Menü haben.

Verarbeitung der Eingabe
Nachdem der Anrufer seine Eingaben übermittelt hat, müssen wir sie über den neuen Webhook für das Eingabeereignis abhören.
Zunächst müssen wir diesen Endpunkt implementieren, um den Eingabewert zu erfassen, und dann auf der Grundlage dieses Wertes mit der vom Anrufer gewählten Route fortfahren.
Um eine Entscheidung auf der Grundlage des Eingabewerts zu treffen, verwenden wir einen switch Knoten, dann bauen wir für jede der Optionen den NCCO auf, indem wir Aktionsknoten miteinander verdrahten, die durch einen return NCCO Ausgangsknoten.
voice webhook
Beginnen Sie mit dem Hinzufügen eines voice webhook Knoten zu Ihrem Arbeitsbereich hinzu. Wählen Sie in seinen Knoteneigenschaften POST als Methode und geben Sie /input in das Feld Antwort-URL ein.
Wenn Sie eine Verbindung zu einem debug Knoten anschließen, nachdem Sie den Ablauf beendet und ausgeführt haben, würden Sie die Parameter sehen, die an die /input URL ZURÜCKGEGEBEN:
| 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. |
In unserem Anwendungsfall versuchen wir, den dtmf Wert zu erhalten, da dies der vom Aufrufer gewählte Weg ist.
Wenn wir uns die Debug-Seitenleiste nach der Fertigstellung genauer ansehen, können wir feststellen, dass sie in der dtmf Eigenschaft des call Objekts innerhalb des msg Objekt verschachtelt ist, so dass wir es als {{msg.call.dtmf}} in den anderen Knoten dieses Pfades.
switch
Als nächstes werden wir die verschiedenen Routen anhand des {{msg.call.dtmf}} Wert wie folgt:
leer ist -> lesen Sie die Optionen erneut vor
Es handelt sich nicht um eine der angegebenen Optionen (enthält 0, 4, 5, 6, 7, 8, 9) -> lesen Sie die Optionen noch einmal vor
= 1 -> Anrufer verbinden
= 2 -> an Voicemail senden
= 3 -> Onlinebuchungslink per SMS an den Anrufer senden.
Fügen Sie dazu einen switch Knoten zu Ihrer Leinwand hinzu, setzen Sie im Knoteneditor Property auf {{msg.call.dtmf}}und definieren Sie dann Regeln für die fünf oben genannten Fälle.

Route 1 & 2: Ungültige Eingabe
Verbinden Sie die ersten beiden Ausgänge des switch Knotens mit dem Eingang des talk Eingang des Knotens. Wenn der Anrufer eine ungültige Eingabe macht (nicht 1, 2 oder 3), wird die anfängliche TTS-Nachricht mit den verfügbaren Optionen wiederholt.

Route 3: Anrufer verbinden
Um den eingehenden Anruf weiterzuleiten, müssen wir ihn mit einem neuen Endpunkt verbinden - in diesem Fall mit einer Telefonnummer. Dazu benötigen wir eine connect Aktion. Optional können wir auch einen talk Knoten hinzufügen, um dem Anrufer mitzuteilen, dass die Verbindung hergestellt wird.
Verdrahten Sie einen talk Knoten mit dem switch dritten Ausgang des Knotens, dann folgen ein connect und einem return ncco Knoten.
Zunächst sollten wir dem Anrufer mitteilen, dass er verbunden wird. In den talk Knoteneigenschaften, setzen Sie Text {} auf etwas wie Bitte warten Sie, während wir Sie verbinden. oder eine Nachricht Ihrer Wahl ein. Sie können diese Erfahrung anpassen, indem Sie ein Voice Name oder durch die Verwendung von [SSML-Tags](/voice/voice-api/concepts/customizing-tts).
Als nächstes öffnen Sie den connect Knoten-Editor, wählen Sie Phone als eine Endpoint und geben Sie die Nummer, die Sie anrufen möchten, in das Feld Number {} Feld ein.
Lassen Sie das From {} leer, damit die Anrufer-ID als unbekannt angezeigt wird, oder geben Sie eine Ihrer virtuellen Nexmo-Nummern ein.

Wenn Sie einen Blick auf das fertige Produkt werfen möchten, rufen Sie Ihre Nexmo-Nummer an und probieren Sie es aus! Achte nur darauf, dass du nicht die Taste 2 oder 3drücken, da wir diese Routen noch nicht implementiert haben.
In unserem Blogbeitrag [Weiterleitung eines Anrufs über einen Voice-Proxy mit Node-RED] (https://developer.vonage.com/en/blog/forward-call-via-voice-proxy-node-red-dr) finden Sie eine ausführlichere Erläuterung dieses Pfads.
Route 4: An die Voicemail senden
Der nächste Fall, den wir behandeln werden, ist, wenn der Anrufer die Taste 2drückt, um eine Voice-Nachricht zu hinterlassen.
Wenn Sie die Voicemail von Grund auf neu erstellen möchten, finden Sie in unserem Tutorial [Build Your Own Voicemail With Node-RED and the Nexmo Voice API] (https://developer.vonage.com/en/blog/build-voicemail-node-red-voice-api-dr) eine Schritt-für-Schritt-Anleitung.
Andernfalls importieren Sie die folgende JSON-Datei aus der Zwischenablage in Ihren Node-RED-Editor:
[
{
"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"
]
]
}
]
Damit das funktioniert, müssen Sie ein paar Dinge tun.
Verbinden Sie zunächst den
switchden 4. Ausgang des Knotens mit demtalkKnoten.Als nächstes müssen Sie in den
recordKnoteneigenschaften ersetzen Sie IHRE_URL durch die Adresse, unter der Sie den Node-RED-Editor hosten (YOUR_URL/record?from={{msg.call.from}}).In dem
Get RecordingKnoten unter Nexmo Anmeldeinformationen wählen Sie Ihre Voice Application aus dem Dropdown-Menü.Im Knoten
emailKnoten setzen SieToauf die E-Mail-Adresse, an die Sie die Sprachaufnahmen senden möchten, und geben Sie dann die Anmeldedaten Ihres E-Mail-Clients in den FeldernUseridundPasswordFelder ein.
Besuchen Sie Bereitstellenund schon sollte Ihre Voicemail einsatzbereit sein. Probieren Sie es aus!

Route 5: Link per SMS
Die letzte Route, die wir erstellen müssen, ist für den Fall, dass der Anrufer die Taste 3drückt und sich dafür entscheidet, einen Online-Buchungslink per SMS zu erhalten.
Zunächst Importieren aus der Zwischenablage das unten stehende Snippet:
[
{
"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": []
}
]Nachdem Sie ihn zu Ihrem Arbeitsbereich hinzugefügt haben, verbinden Sie den switch Knoten mit dem letzten Ausgang des talk Eingang des Knotens.

Schauen wir uns nun die einzelnen Knoten in diesem Pfad genauer an.
talk
Wir verwenden den talk Knoten, um dem Anrufer eine Rückmeldung zu geben, dass etwas passiert. Sie können mit [custom voice names]((/voice/voice-api/guides/text-to-speech#voice-names)) oder [SSML tags]((/voice/voice-api/concepts/customizing-tts)) kreativ werden, aber eine einfache "Ihre Nachricht ist auf dem Weg!" ist ebenfalls ausreichend.
return NCCO
Es folgt ein return NCCO Knoten, um auch diesen Pfad zu schließen und unsere "Anweisungen" zurück an die Nexmo-API zu senden. Hier ist keine Einrichtung erforderlich.
Send SMS
Der Send SMS Knoten übernimmt die Hauptarbeit dieses Pfades, da er die SMS versendet.
Sie können diesen Knoten einrichten, indem Sie auf ihn doppelklicken und die unten stehenden Parameter eingeben. Sie finden API KEY und API SECRET durch einen Klick auf die Schaltfläche Bearbeiten neben Nexmo Credentialsklicken, nachdem Sie Neuen nexmobasic hinzufügen aus der Dropdown-Liste auswählen.
| 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 :) |

Der debug Knoten ist völlig optional, aber er ist sehr nützlich, wenn Sie etwas mehr Details in der Debug-Seitenleiste sehen wollen.
Vielleicht möchten Sie einen Blick auf unseren [How to Send SMS Messages with Node-RED guide] (https://developer.vonage.com/en/blog/send-sms-messages-node-red-dr) werfen, um mehr über die Verwendung der SMS API zu erfahren.
Probieren Sie es aus!
Herzlichen Glückwunsch! Sie haben sich soeben ein voll funktionsfähiges Interactive Voice Response Menu gebaut! Jetzt ist es an der Zeit, es auszuprobieren, also viel Spaß!

Wie geht es weiter?
Ressourcen
Versuchen Sie ein anderes Tutorial!
Teilen Sie:
Julia hat es sich zur Aufgabe gemacht, andere Entwickler durch die Erstellung von Tutorials, Anleitungen und praktischen Ressourcen zu unterstützen. Mit ihrem Hintergrund in den Bereichen Öffentlichkeitsarbeit und Bildung möchte sie Technologien zugänglicher machen und die Erfahrung von Entwicklern insgesamt verbessern. Man kann sie oft bei lokalen Veranstaltungen antreffen.
