サービスと組み合わせたチャットボットアプリを開発します。Lexの設定を完了するところまでを紹介します。完成したアプリは次のようになります。アプリのトップ画面にチャットが表示されます。チャットでやり取りする内容は、複数あるMonacaプランの中からユーザーへ最適なプランを案内するシナリオとなっています。ここではサンプルのためチャットとのやり取りはシンプルとなっていますが、AWSの設定画面で複雑なやり取りも可能です。同じテクノロジーを利用し、音声またはテキストのインターフェイスを使用するアプリケーションをすばやく構築できます。利用する技術・ライブラリこのアプリで利用している技術やライブラリは次の通りです。Interface」を使い、Monacaのプロジェクトに組み込みます。Interface仕様このアプリの仕様は次の通りです。トップ画面には、前面にチャット画面を表示するチャットボットは、Monacaプランの提案をするチャットボットは、Monacaプラン決定のために受け答えをするプラン決定のロジックは次のようにします。法人利用でない場合は、「Proプラン」を提案ユーザーの回答による条件分岐は、AWSの別サービスである「Lambda」が担当します。Lambdaについては、次回の記事で解説します。Lexでチャットボットを作成していきます。AWSのアカウントはあらかじめ作成しておいてください。記事ではAWSのリージョンは東京リージョンを使用する前提で作成していきます。Started」ボタンをクリックしてください。(US)」をクリックして「日本語」を選択してください。「ボットを作成」をクリックします。「ボットの設定」画面では「ボット名」に任意のボット名を入力します。権限を持つロールを作成します。(COPPA)」は、今回は「13歳未満」のユーザーを対象にしないため「いいえ」を選択します。オプション」は、デフォルト設定のままにしておきます。それでは「次へ」ボタンをクリックしてください。(JP)」を選択し、「音声による対話」「インテント分類信頼スコアのしきい値」はデフォルトのままにします。「完了」ボタンをクリックしてください。今回のボットでは、質問に対して「はい」「いいえ」で回答します。回答で使用する「スロット」を作成します。Lexに組み込まれているスロットにはイエス/ノーを扱うスロットが無いので、「カスタムスロット」を作成します。組み込み済みのスロットも利用できるので慣れてきたら試してみるといいでしょう。それではカスタムスロットを作成していきます。(Japan)」をクリックします。「スロットタイプを表示」をクリックします。「スロットタイプを追加」ドロップダウンの「空のスロットタイプを追加」をクリックします。スロットタイプ名は「YesOrNo」とし、「追加」ボタンをクリックしてください。「スロッタタイプ値の解決」は「yes」か「no」のみを値とするので、「スロット値に制限」を選択してください。「スロット値」には「yes」「no」を入力し、右側のテキストボックスにはそれぞれに関係する値を入力します。入力が完了したら画面下部の「スロットタイプを保存」をクリックしてください。次にボットの会話の準備をしていきます。最終ゴールにあたる「インテント」を作成しましょう。インテントは、ユーザーが実行したいアクションを表します。このアプリのインデントは、最適なプラン選んでもらうことです。チャットではこのインテントを達成するために、質問を2つ用意します。(JP)」に戻り、「インテントを表示」をクリックします。「NewIntent」をクリックします。インテント名を「SuggestMonacaPlan」に変更します。サンプル発話にはこのインテントを起動するためのサンプルを入力します。ここでは次の3つを入力しました。どのようなプランがありますかプランを契約したいですプランを選びたいですいよいよ質問を設定していきます。「スロットを追加」をクリックし、下記の内容でスロットを追加します。アプリのソースコードやストレージの暗号化に興味はありますか?「確認プロンプトと応答拒否」「フルフィルメント」はデフォルトのままにしておきます。「応答を閉じる」のメッセージに次の内容を入力します。」と「{UseEnterprisePlugins}」には、ユーザーの返答に応じたスロットの値が設定されます。このメッセージは最終的にはLambda側で返すメッセージに置き換えられるのですが、それは次回解説します。入力が完了したら画面下部の「インデントを保存」ボタンをクリックしてください。テストこれですべての設定が完了したので、画面下部の「構築」をクリックしてください。構築が完了したら「テスト」クリックをクリックしてみてください。AWSコンソールにチャットのUIが表示されます。「検査」を押すと、現在のスロットに設定されている値などを確認することができます。質問に回答していくことで、このスロットに値が設定されていくことがわかります。「メッセージを入力してください」テキストエリアに、「こんにちは」と入力し、エンターキーを押してみてください。スロットに設定した質問の「法人でのご利用ですか?」が表示されます。この質問に回答すると、「アプリのソースコードやストレージの暗号化に興味はありますか?」という2つ目の質問が表示されます。回答すると、全ての必須スロットの値が満たされるので、「応答を閉じる」で設定したメッセージが表示されます。Lexの設定方法を紹介しました。次回はLambdaと組み合わせる方法を紹介します。Lambda編)関連記事MonacaアプリのセキュリティについてPC/スマートフォンに対応したUIフレームワーク「El...手軽にアプリの収益化。見やすい、メンテナンスしやすいJavaScriptのために。