Node.js

アンサーウェブフックを作成する

あなたのVonage番号がコールを受信すると、Vonage APIプラットフォームはあなたのアンサーURLのWebhookエンドポイントにリクエストを行います。WebhookはオブジェクトのJSON配列であるNCCOを返す必要があります。配列の各オブジェクトは action これは、通話がどのように進行するかを決定するものである。

:NCCOの詳細 これ

このステップでは、そのウェブフックを構築します。以下のハンドラを /webhooks/answer のルートだ:

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

その下に mainMenu 関数を作成し、NCCOを返します。アンサーウェブフックからだけでなく、アプリケーションの他の場所から呼び出せるように、NCCOを生成するコードを関数にラップしました:

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` ],
		},
	];
}

この関数が生成するNCCOは2つのアクションで構成される:

  • talk は、音声合成を使って通話相手にメニューオプションを読み上げます。その bargeIn プロパティが trueこれにより、ユーザーはメッセージの読み取りを中断することができる。
  • input ユーザが電話のキーパッドでキーを押すのを待ち、それから別のウェブフック( eventUrl)に、押されたキーの詳細を送る。次のステップでこのウェブフックを作成します。