Node.js

Erstellen Sie den Antwort-Webhook

Wenn Ihre Vonage Nummer einen Anruf erhält, stellt die Vonage API-Plattform eine Anfrage an den Webhook-Endpunkt Ihrer Antwort-URL. Der Webhook muss einen NCCO zurückgeben, der ein JSON-Array von Objekten ist. Jedes Objekt in diesem Array besteht aus einem action die den weiteren Verlauf des Gesprächs bestimmt.

Hinweis: Erfahren Sie mehr über NCCOs hier

In diesem Schritt werden Sie diesen Webhook erstellen. Fügen Sie den folgenden Handler für den /webhooks/answer Route:

app.get('/webhooks/answer', (req, res) => {
	res.json(mainMenu(req));
});

Darunter schreiben Sie den Code für die mainMenu Funktion, die einen NCCO erstellt und zurückgibt. Wir haben den Code, der den NCCO erzeugt, in eine Funktion verpackt, damit wir ihn von anderen Stellen in unserer Anwendung aus aufrufen können und nicht nur von unserem Antwort-Webhook:

function mainMenu (req) {
	return [
		{
			action: 'talk',
			bargeIn: true,
			text:
				'Welcome. Press 1 to hear the current date or 2 to play audio. Press any other key to hear these options again.',
		},
		{
			action: 'input',
      type: [ 'dtmf' ],
      dtmf: {
        maxDigits: 1,  
      },
			eventUrl: [ `${req.protocol}://${req.get('host')}/webhooks/dtmf` ],
		},
	];
}

Der NCCO, den diese Funktion erzeugt, besteht aus zwei Aktionen:

  • talk liest dem Anrufer die Menüoptionen per Text-to-Speech vor. Die bargeIn Eigenschaft wird auf truedie es einem Benutzer ermöglicht, das Lesen der Nachricht zu unterbrechen
  • input wartet darauf, dass der Benutzer eine Taste auf der Telefontastatur drückt und stellt dann eine Anfrage an einen anderen Webhook (definiert in eventUrl) mit den Details der gedrückten Taste. Sie werden diesen Webhook im nächsten Schritt erstellen.