ちょっと話題の記事

[Amazon Connect] 留守番電話を構築するCFnのテンプレートを作ってみました

2019.05.25

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

1 はじめに

AIソリューション部の平内(SIN)です。

Amazon Connect(以下、Connect)では、電話をかけたユーザーの音声を、Kinesis Video Streamsに保存することができ、簡単に留守番電話を作成することができます。

前回、この利用方法を紹介させて頂きましたが、ちょっと再現が複雑だったので、今回、手軽に留守番電話が作成できるようにCloudformationのテンプレートにしてみました。

参考:[Amazon Connect] 営業時間外に着信したビジネスチャンスを失わないように留守番電話機能をつけてみた

構成については、以下のとおりです。 KinesisVideoStreams に保存されたデータからwavファイルに変換するのに少し時間がかかるので、一旦、SQSに貯めて、順次処理するようになっています。1件の留守番電話が、1つのwavファイルとして保存されます。

2 構築

手順は以下のとおりです。 Connectが、Cloudformationで構築できないため、その部分は、手作業となります。

  • 設定ファイルのダウンロード
  • Connectのインスタンスの生成と電話番号の取得
  • ストリーミングの有効化
  • スタック作成
  • 問い合わせフローの設定
  • 電話番号と問い合わせフローの紐づけ

(1) 設定ファイルのダウンロード

下記のURLからvoice-mail.zipをダウンロードして下さい。

https://d2uimqkb5rnyou.cloudfront.net/voice-mail.zip

voice-mail.zipには、下記の2つのファイルが含まれます。

  • VoiceMailFlow (Connect用の問い合わせフロー)
  • template.yml(Cloudformation用のテンプレート)

(2) Connectのインスタンスの生成と電話番号の取得

Connectのインスタンスの生成を行います。

インスタンスの名前を設定した後は、すべてデフォルト値で「次へ」を選択して下さい。 (インスタンスの名前は、同じ名前は使用できませんので、何か適当な名前を指定して下さい)

電話番号の取得も併せて行っておいて下さい。

(3) ストリーミングの有効化

作成したインスタンスの設定でライブメデイアストリーミングの有効化にチェックを入れて下さい。

設定を保存するためには、プレフィックスのとKMSマスターキーの指定が必要です。

(4) スタック作成

ダウンロードしたtemplate.ymlを使用してCloudformationのスタックを作成して下さい。

スタックの作成が完了したら、出力タブでLambdaARNの値をコピーして下さい。

(5) 問い合わせフローの設定

問い合わせフローの作成から、新規にフローを作成して下さい。

フローのインポート(ベータ) を使用して、ダウンロードしたファイル(VoiceMailFlow)をインポートして下さい。

インポートしたフローで、AWS Lambda関数を呼び出すブロックのプロパティを開いて下さい。

関数を選択するのところで、Cloudformationのスタックの出力からコピーしたLambdaARNを設定して下さい。

保存して発行を選択して、問い合わせフローの変更を反映して下さい。

(6) 電話番号と問い合わせフローの紐づけ

電話番号の編集問い合わせフロー/IVR に先程設定したフローを設定して下さい。

3 動作確認

動作を確認している様子です。

録音された音声は、S3に保存されますが、バケット名は、スタック出力のS3BucketNameで確認できます。

録音データはwavファイルとして保存されています。

4 最後に

今回は、軽易に留守番電話が再現できるように書いた、CFnのテンプレートを紹介させて頂きました。 プログラム等の細部内容については、前回の記事を見て頂ければ嬉しいです。

[Amazon Connect] 営業時間外に着信したビジネスチャンスを失わないように留守番電話機能をつけてみた


弊社では、Amazon Connectに関するキャンペーンを行なっています。