Categories: バックエンド

Amazon Lex V2 で入力させる内容を分岐する方法

Amazon Lex (V2) を触っていたところ、入力内容によって次に入力させる内容を分岐させたかったのですが、Lambda 関数での制御の仕方を含めてあまりドキュメントに記載が見当たらなくて少し時間がかかったので、備忘録として残しておきます。 Bot の実行イメージは以下です。Lex V2 コンソールのテストモードで試したときのスクリーンショットです。(日本語でもできます。)

Lex V2 コンソールで Bot のスロット設定

3 つのスロットを設定します。1 つ目は電話番号か E メールアドレスのどちらを入力させるかを選択させる用のスロットで、スロットタイプはカスタムスロットタイプです。PhoneNumber と EmailAddress の「Required for this intent」は無効にしています。
ボタンで電話番号か E メールアドレスかを選択させたいので、カードとボタンの設定をしました。

Lambda 関数のコード

流れの制御は Lambda 関数で行います。以下のようなコードを作成しました。 これで、冒頭のスクリーンショットのような動作をする Bot を作成することができます。
zuqqhi2

某Web系の会社でエンジニアをやっています。 学術的なことに非常に興味があります。 趣味は楽器演奏、ジョギング、読書、料理などなど手広くやっています。

Share
Published by
zuqqhi2
Tags: amazon lex