Amazon Web Services ブログ
アプリケーションによる Amazon Connect のプロンプトの管理
はじめに
コンタクトセンターでは、プロンプトを使用して顧客とやり取りしたり、顧客から情報を入手したり、顧客に最新情報を提供します。プロンプトは録音されたオーディオファイルで、コールフローの中で再生されます。コンタクトセンターの管理者は、新しいプロンプトを追加したり、既存のプロンプトを変更したりして、ビジネスニーズに迅速に対応する必要があります。
多くのプロンプトを追跡、管理するのは時間がかかる作業です。複数のチャネル、複数の言語にわたってプロンプトを管理する場合、この作業はさらに複雑になります。加えてプロンプトを複数の環境全体にデプロイする場合、さらに複雑さが増します。手動でプロンプトを更新中に軽微なエラーが生じると、顧客へのメッセージの一貫性が失われ、顧客に混乱が生じ、問い合わせの誤ったルーティングにつながる可能性があります。Amazon Connect では、企業は Prompts API を使用して自動化ツールによりプロンプトをプログラム的に管理し、プロンプトの作成と管理のプロセスを合理化できます。
このブログ記事では、API オペレーションを使用して Amazon Connect のプロンプトを管理するウェブベースのアプリケーションをデプロイする方法について説明します。この記事では、プロンプトについての 6 つの API アクション (List Prompts、Create Prompt 、 Update Prompt 、 Describe Prompt、Delete Prompt、Get Prompt File) を使用します。
ソリューション概要
このソリューションは、AWS CloudFormation テンプレートを使用してデプロイされます。このテンプレートでは、 Amazon S3 バケットを作成し、すべてのアセットを Amazon CloudFront で利用します。ユーザーは Amazon CloudFront の URL を呼び出してウェブのユーザーインターフェイス (UI) を表示します。このUIで選択したプロンプトの API に基づいて、 Amazon Connect で適切なオペレーションが開始されます。
注: このサンプルプロジェクトは、検証の一環でデプロイするために設計されています。アイデンティティアクセス管理 (IAM) ポリシーの権限は最小の権限しか使用しませんが、デプロイされた Amazon CloudFront はパブリックにアクセス可能です。必要に応じて、CloudFront ディストリビューションを保護するための適切な対策を講じてください。
前提条件
このブログ投稿では、以下のサービスの使用について理解し、以下の条件を満たしていることを前提としています。
- 管理コンソール上とプログラム経由の両方で管理者アクセスを持つ AWS アカウント
- 既存の Amazon Connect インスタンス
- AWS IAM によりポリシーとロールを作成できること
- Amazon CloudFront でディストリビューションを作成できること
- Amazon S3 でバケットを作成できること
- AWS CloudFormation によりスタックを実行できること
- Connect API オペレーションを実行できる AWS IAM アクセスとシークレットキー認証情報
以下は、最低限必要なアクセス権限が設定されたサンプルポリシーです。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"s3:GetObject",
"connect:DescribeInstance",
"connect:UntagResource",
"connect:ListPrompts",
"connect:TagResource",
"s3:ListBucket"
],
"Resource": [
"arn:aws:connect:YOUR_REGION:YOUR_ACCOUNT_ID:instance/YOUR_INSTANCE_ID",
"arn:aws:s3:::YOUR_S3_BUCKET_NAME/*",
"arn:aws:s3:::YOUR_S3_BUCKET_NAME"
]
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": [
"connect:CreatePrompt",
"connect:UpdatePrompt",
"connect:DescribePrompt",
"connect:UntagResource",
"connect:DeletePrompt",
"connect:TagResource",
"connect:GetPromptFile"
],
"Resource": "arn:aws:connect:YOUR_REGION:YOUR_ACCOUNT_ID:instance/YOUR_INSTANCE_ID/prompt/*"
},
{
"Sid": "VisualEditor2",
"Effect": "Allow",
"Action": "connect:ListInstances",
"Resource": "*"
}
]
}
ソリューションのデプロイ
- AWS マネジメントコンソールにサインインし、Amazon Connect インスタンスのあるリージョンを選択します
- をクリックし、AWS CloudFormation テンプレートを起動します
- 一意なスタック名を設定します。(例 : prompts-api-web-ui )
- IAM リソース作成承認のチェックボックスにチェックを入れます
- スタックの作成を選択します。この AWS CloudFormation テンプレートがすべてのリソースを作成するには約10分程度時間が必要です。完了すると、ステータスが CREATE_COMPLETE に変わります。
- 作成されたスタックの出力セクションを開きます
- CloudfrontEndpoint の値をコピーします
- コピーしたURLをブラウザの新しいタブかウィンドウに貼り付け、CloudFront Web UI にアクセスします
プロンプトの管理用 Web UI へのアクセス
初期設定
- IAM ユーザーのアクセスキー ID を Access Key に、シークレットアクセスキーを Secret Key に、リージョンを Region に入力します。(アクセスキー ID とシークレットアクセスキーの作成方法)
- Amazon Connect インスタンスの ARN を Instance ARN に入力します(Amazon Connect インスタンスの ARN 確認方法)
- Save Configuration ボタンをクリックします
Amazon Connect インスタンスでプロンプトを管理するためのソリューションのテスト
次にナビゲーションパネルから 6 つのプロンプトに関する API オペレーションをテストします。
1. List Prompts: プロンプトの一覧取得
- ナビゲーションメニューから List Prompts を選択します
- Amazon Connect インスタンスのすべてのプロンプトが中央のパネルに表形式で一覧表示されます。結果はプロンプト名に基づいてソートできます。右側のパネルには、プロンプト ID、ARN、名前を含む JSON リストが表示されます
- Amazon Connect コンソールにログインし、両方のユーザーインターフェイスでプロンプトを確認します
2. Create Prompt: プロンプトの作成
- ナビゲーションメニューから Create Prompt を選択します
- 一意なプロンプト名を Name に入力します
- 有効な説明を Description に入力します
- プロンプトの Amazon S3 URI を入力します (Amazon Connect インスタンスにインポートするプロンプトファイルの Amazon S3 ロケーション)
- Create Prompt を選択します。作成した新しいプロンプトが表と、更新された JSON の出力から確認できます。
- Amazon Connect コンソールからも新たに作成したプロンプトが見えることを確認します
3. Update Prompt: プロンプトの更新
- 中央のパネルから更新するプロンプトファイル名を選択します
- ナビゲーションメニューから Update Prompt を選択します
- 名前や説明が既に入力されたポップアップウィンドウが表示されます
- ウィンドウで修正する値を入力し、 Update Prompt をクリックします。画像の例では、説明 (Description) を更新しています
- Amazon Connect コンソールからもプロンプトの説明が更新されたことを確認します
4. Describe Prompt: プロンプトの詳細確認
- 中央のパネルから確認するプロンプトファイル名を選択します
- ナビゲーションメニューから Describe Prompt を選択します
- 右のパネルの表示 (プロンプトの ARN、ID、Name、Description、Tags) が前のセクションで Update Prompt を実行した内容に更新されます
5. Get Prompt File: プロンプトの音声ファイルの取得
- 中央のパネルから再生、ダウンロードしたいプロンプト名を選択します
- ナビゲーションメニューから Get Prompt File ボタンをクリックします
- 右のパネルにプロンプトの署名付き URL を含んだ API レスポンスが表示されます
- 新しいタブでプロンプトの音声ファイルを再生します
6. Delete Prompt: プロンプトの削除
- 中央のパネルから削除したいプロンプトのファイル名を選択します
- ナビゲーションパネルから Delete Prompt ボタンをクリックします
- 削除確認のポップアップで Yes をクリックします
- プロンプトが削除されると、中央のパネルのプロンプト一覧と、右の JSON 出力結果のパネルが更新されます
クリーンアップ
今後料金が発生しないように、このブログの手順で作成した Amazon S3 バケットのコンテンツをすべて削除してください。Amazon S3 バケットを空にし、バケットを削除します。AWS CloudFormation スタックを削除することで、作成されたその他すべてのリソースも削除できます。
結論
このブログ記事では、新しく提供された Amazon Connect Prompts API を使用してプロンプトをプログラムで管理する方法について、ウェブ UI の例を使用して示しました。お客様は API を使用して、Amazon Connect 内に保存されているプロンプトを抽出し、Amazon S3 バケットにバックアップできるようになりました。たとえば、新しく有名人を雇って録音した挨拶の音声など、既存のオーディオファイルをプログラムで既存のプロンプトと置き換えることができます。プロンプト変更のログは管理コンソール内で保存、表示されます。プロンプトの API 操作は、AWS CloudTrail、AWS CloudFormation、およびタグ付けをサポートしています。
関連リンク
このソリューションの作成に使用されたテクノロジーや機能の詳細については、以下を参照してください。
翻訳はテクニカルアカウントマネージャー高橋が担当しました。原文はこちらです。