Amazon Web Services ブログ
Amazon Lex を組み合わせた Amazon Connect でダイヤルボタンの数字選択と発話入力を使う
あなたは公共の場所に座っていて、電話でカスタマーサポートに問い合わせる必要があるとします。あなたは移動中で、予約の確認か変更をしたい、もしくは口座の残高照会をする必要があるかもしれません。そしてあなたはアカウントのパスワードをリセットする必要があります。なぜならあなたはいつも電話ではなくタブレットから自身のアカウントにアクセスしているためです。私たちはみなそうしてきました。
そこで、あなたはカスタマーサポートに電話をかけます。しかし、あなたが公共の場所にいて機密の個人情報を入力したいとき、それを声に出すことは安全ではないかもしれません。あなたのまわりの誰もがあなたが話すことを聞こえるからです。もし、あなたがまわりの騒音の中で話そうとするときは特にそうです。
さて、あなたが喜ぶために、カスタマーサポートがあなたの個人情報をダイヤルボタンを使って数字入力できるようにすることを想像してみてください。あなたは何も言う必要はありません。
Amazon Lex のチャットボットを組み合わせた Amazon Connect は、問い合わせフローを使用した場合に顧客がキーパッドを押した数字を入力としてキャプチャーできます。Amazon Lex はキーパッドで押された数字をプッシュ信号 (DTMF) として解釈します。Lex はあなたが発話を話すときと同じ方法で、その入力に基づいてインテントと一致させます。これにより、顧客がコンタクトセンターと対話する柔軟性が向上します。これはまた、風邪のためか前の歯医者の予約によるためのどちらでも、話すことが難しい誰にとってもより容易になります。
お客様は、キーパッドに個人情報やアカウント番号などの機密情報を入力する方法を選択できるようになり、Amazon Lex の背後にある自然言語理解エンジンを使用して Amazon Connect を通じて Amazon Lex ボットと会話できるようになりました。
このブログポストでは、Amazon Connect の問い合わせフローの中で使うための Amazon Lex のボットを作成する方法を説明します。あなたも、リアルタイムで私のバージョンを試すことができます。
概要
このソリューションは以下のタスクを含みます。
- Amazon Lex のボットを作成する ― 名前を指定し、ボットのその他設定を選択する
- ボットを構成する―ボットがどのように動くかを定義するために設定を更新する。これは以下のステップを含みます。
- インテントを作成する ― インテントとは、口座残高の取得など、お客様が実行したいアクションです。ボットは1つ以上のインテントを持つことができます。
- スロットを追加する ― スロットは、顧客が意図を満たすために提供しなければならないデータを定義します。
- インテントを構成する ― 入力に基づいて、顧客の意図に一致する発話とスロットのコレクションを選択し、次に何が起こるかを決定します。
- ボットのエラーハンドリングを構成する ― 呼び出し元の発話が理解できない場合など、ボットがエラーを処理する方法を設定します。
- ボットをビルド、テストする ― ボットが意図したとおりに動くか確認します。
- ボットを公開し、エイリアスを作成する ― ボットを公開し、対話を可能にします。
- ボットを Amazon Connect インスタンスに追加する ― ボットをインスタンスに追加し、問い合わせフローの中で使用できるようにします。
- 問い合わせフローを作成し、ボットを追加する ― 問い合わせフローを作成し、ボットが発信者とやり取りする方法を定義します。
- 問い合わせフローに電話番号を割り当てる ― 顧客がボットを含む問い合わせフローを開始するために通話できる番号を選びます。
- 試す ― 問い合わせフローに割り当てた番号に電話をかけ、試してみてください。
このウォークスルーでは、開発環境で作業しているとします。情報を検証するバックエンドデータベースに統合し、サンプルデータを読み戻すだけの AWS Lambda 関数の使用をスキップしてください。
ウォークスルー
これを進めるためには以下が必要です。
- アクティブな AWS アカウント
- 米国東部 (バージニア北部) リージョンに作成された Amazon Connect インスタンス。インスタンスを作成した後、電話番号を取得してください。さらなる情報は Getting Started with Amazon Connect を参照してください。
Amazon Lex ボットを作成する
カスタムボットを作成して、Amazon Connect とのダイヤルボタンのプッシュまたは発話との統合を実証します。ボットは、タスクを完了するためのメニューオプションに一致する番号を押すか、または発言するように呼び出し元に求めます。この場合、入力は口座残高をチェックしています。
- Amazon Lex コンソールを開きます。
- もし初めてボットを作成する場合、Get Started を選びます。そうでない場合は、Bots の Create を選択します。
- Create your bot 画面で、Custom bot を選択し、以下の情報を入力します。
- Bot name ― このデモでは、 AccountBalance という名前にします。
- Output voice ― 発信者と話すときにボットが使用する音声を選択します。 Amazon Connect のデフォルトの音声は Joana です。
- Session timeout ― ボットがセッションを終了する前に呼び出し元からの入力を受け取るのを待つ時間を選択します。
- COPPA ― ボットがチャイルドオンラインプライバシー保護法の対象かどうかを選択します。
- Create を選択します。
Amazon Lex ボットを構成する
インテント、サンプル発話、入力用スロット、エラー処理を提供することで、ボットがカスタマーにどのように反応するかを決定します。
インテントを作成する
この例では、2つのインテントでボットを構成します。1つは口座情報の検索、もう1つはエージェントと会話するためのものです。
- Intents の隣にある + アイコンを選択し、Create intent を選びます。
- インテントの名前を AccountLookup とします。
- もう1つのインテントは名前を SpeakToAgent とします。
サンプルの発話を追加する
インテントを定義した後、いくつかのサンプルの発話を追加します。
- AccountLookup インテントを選択します。
- “Check my account balance” (クォートを含めないでください) のようなサンプルの発話を追加し、+ アイコンを選択します。
- 2つ目の発話で、“One” (クォートなし) を追加し、+ アイコンを選択してください。これで、“one” という発話と、ダイヤルボタンの “1” を押すことを AccountLookup インテントに割り当てます。
- SpeakToAgent を選択します。
- “Speak to an agent” のようなサンプルの発話を追加し、+ アイコンを選択します。
- 2つ目の発話で、“Two” (クォートなし) を追加し、+ アイコンを選択してください。
スロットを追加する
ボットは、発信者のアカウント残高で応答する前に、口座番号が必要です。
- Slots の下で、AccountNumber という名前のスロットを追加します。
- スロットのタイプとして、 AMAZON.NUMBER を選びます。
- Prompt にはコールに応答したときに話すテキストを追加します。 新しい DTMF サポートを強調表示するには、発信者にキーパッドを使用してアカウント番号を入力するように依頼します。例えば、“Using your touch-tone keypad, please enter your account number.” など
- Required のチェックボックスが選択されていることを確認し、+ アイコンを選択します。
応答を追加する
インテント、発話、スロットができたので、ボットが発信者に提供する応答を追加します。この例では単純なボットを作成しているため、実際の顧客データを検索するためにボットを接続していません。例のボットは、発信者が指定したアカウント番号に関係なく、追加したテキスト文字列で応答します。
- AccountLookup インテントを選択します。
- Response セクションで、ボットが顧客に話すメッセージを追加します。例えば、“The balance for your account is $2,586.34.” など。
- Save Intent を選択します。
- SpeakToAgent にて、発話者にコールがエージェントにつながることを知らせるメッセージを追加します。例えば、“Okay, an agent will be with you shortly.” など。
- Save Intent を選択します。
Amazon Lex ボットをビルド、テストする
ボットを作成した後、公開する前に意図したとおりに動くことを確認します。
- Test Bot ウィンドウを有効化するために、Build を選択します。これは 1〜2分かかります。
- Build が終わったら、Test Chatbot を選択します。
- Test Chatbot ペインで、チャットウィンドウにメッセージを入力します。
- AccountLookup インテントをテストするために、“1” (クォートなし) を入力し、次に口座番号を入力します。
- SpeakToAgent インテントが動作することを確認するために、“2” (クォートなし) を入力します。
Amazon Lex ボットを公開し、エイリアスを作成する
次に、Amazon Connect 問い合わせフローに追加するためにボットを公開します。
- Publish を選択します。
- ボットにエイリアスを付与します。問い合わせフローでこのバージョンのボットを特定するためにエイリアスを使います。例えば、“Blog” など。
- Publish を選択します。
Amazon Lex ボットを Amazon Connect インスタンスに追加する
ボットを問い合わせフローで使うために、Amazon Connect インスタンスにボットを追加します。ボットは同一AWSアカウント、かつインスタンスと同じリージョンで追加できます。
注) 正確にはボットが別のソリューションにあっても動作はします。ただしネットワークのレイテンシーは考慮に入れる必要があります。
- Amazon Connect コンソールを開きます。
- ボットを追加するインスタンスのインスタンスエイリアスを選択します。
- 問い合わせフローを選択します。
- Amazon Lex にて、リージョンとAccountBalanceボットを選択し、+ Lex ボットの追加を選択します。
- もしインスタンスの設定画面を開いてからボットを公開した場合、ページをリロードすると表示されます。
問い合わせフローを作成し、Amazon Lex ボットを追加する
次に、Amazon Lex ボットを使用する新規の問い合わせフローを作成します。
問い合わせフローを作成する
問い合わせフロー作成時に、発話者に流すメッセージを構成できます。
- Amazon Connect の問い合わせフローと Amazon Lex ボットへのアクセス権のあるアカウントで Amazon Connect インスタンスにログインします。
- ルーティング、問い合わせフロー、問い合わせフローの作成の順に選択し、名前を入力します。
- 操作 にて 顧客の入力を取得する ブロックをグリッドにドラッグし、エントリポイント ブロックとつなげます。
- 顧客の入力を取得する ブロックを開き、テキスト読み上げ機能 (アドホック)、テキストの入力 を選択します。
- 発信者に実行できる操作に関する情報を提供するメッセージを入力します。例えば、“To check your account balance, press or say 1. To speak to an agent, press or say 2.” のような、ボットで使われるインテントにマッチするメッセージを使います。
Amazon Lex ボットを問い合わせフローに追加する
ボットは顧客の入力を取得する方法として定義されます。
- 顧客の入力を取得する ブロックにて、Amazon Lex を選択します。
- 名前 に AccountBalance、エイリアス に Blog を使います。
- インテントを特定するために、インテント の下にある インテントの追加 を選択します。
- AccountLookup を入力し、別のインテントの追加を選択します。
- SpeakToAgent を入力し、Save を選択します。
問い合わせフローを完成させる
発信者がボットとやり取りした後、コンタクトフローを完了して顧客への通話を完了します。
- 発信者が口座残高を知るために 1 を押す場合、メッセージを再生し、通話を切断するために プロンプトの再生 ブロックを使います。
- 発信者がエージェントと会話するために 2 を押す場合、キューを設定し、問い合わせフローが終了するキューに発信者を転送するために キューの設定 ブロックを使います。
AccountLookup インテントを完成させるために:
- 操作 から プロンプトの再生 ブロックをグリッドにドラッグし、顧客の入力を取得する ブロックの AccountLookup ノードにつなぎます。顧客が口座残高を Amazon Lex botから認した後、「プロンプトを再生」ブロックにてメッセージが再生されます。
- 終了 / 転送 から 切断/ハングアップ をグリッドにドラッグし、プロンプトの再生 ブロックとつなげます。メッセージが再生された後、通話は切断されます。
SpeakToAgent インテントを完成させるために:
- キューの設定 ブロックを追加し、 顧客の入力を取得する ブロックの SpeakToAgent とつなげます。
- キューへの転送 ブロックを追加し、キューの設定 ブロックの Success と Error とつなげます。また、キューがいっぱいになるかエラーが発生したためにコールを転送できない場合に再生するメッセージを追加することもできます。
- 保存して公開 を選択します。
完成した問い合わせフローは以下のようになります。
問い合わせフローを電話番号に割り当てる
発信者がコンタクトセンターに通話する場合、発信者が送信される問い合わせフローは、ダイヤルした電話番号に割り当てられている問い合わせフローです。 新しい問い合わせフローをアクティブにするには、インスタンスの電話番号に割り当てます。
- Amazon Connect ダッシュボードを開きます。
- 電話番号の表示 を選択します。
- 問い合わせフローを割り当てる電話番号を選択します。
- 説明を追加します。
- 問い合わせフロー/IVR にて、作成した問い合わせフローを選択します。
- 保存 を選択します。
試してみましょう
Amazon Connectのデモ環境で、この投稿用に作成したボットとコンタクトフローを試すことができます。+1 206-607-8617 にダイヤルし、プロンプトに従ってください。
サマリー
この記事では、Amazon Lex ボットのダイヤルボタンのプッシュまたは発話機能を活用し、顧客に自動的なサポートを提供するために、Amazon Connect 問い合わせフローを作成する方法を説明しました。
Amazon Lexの会話インターフェイスを使用して、顧客は入力を提供する最善の方法を選択できるようになり、適切なボットまたはエージェントに電話をルーティングすることができます。これらの素晴らしい新機能で素晴らしいものを見られることを楽しみにしています。
原文:https://aws.amazon.com/jp/blogs/contact-center/amazon-connect-with-amazon-lex-press-or-say-input/
翻訳:松本 和久 (kazuhmat@)