ヤマムギ

growing hard days.

*

Amazon Connectから問い合わせ追跡レコード(CTR)をエクスポート

   

Amazon Connectから発信した電話に出たのか、出なかったのかを確認したく、たどり着いた手段の一つがCTR(問い合わせ追跡レコード)のエクスポートでした。

Python SDKのboto3でAmazon ConnectのAPIから取得できないかと思い、describe_contactで試してみたものの、接続日時、切断理由がレスポンスには含まれておらずでした。

そこで、まずはCTRをS3バケットにエクスポートしてみて確認しました。
結果、接続日時、切断理由が取得できていました。
電話に出なかったときは接続していないので接続日時がnullでした。
切断理由も取得できましたが、接続日時で判定できそうなので今回は切断理由の値を詳しく調べるのはやめておきました。
ただし、Kinesis Firehoseなので、最大60秒のタイムラグが発生します。
これが許容できればありですね。

それでは設定です。

Amazon Connectで該当インスタンスを選択しました。

左ペインで[Data streaming]を選択して、「データストリーミングの有効化」をチェックしました。
送信先はKinesis Firehoseを選択しました。
FirehoseはS3バケットへ送信するよう作成済みです。

今回の要件ではエージェントイベントは発生しないので、未選択のままで作成しました。

AWS Lambda(Python)で生成した文字をAmazon Connectで音声を設定して発信する

電話を発信してみて、少し待ってからS3バケットを見るとCTRのオブジェクトが送信されていました。

マネジメントコンソールからオブジェクトを選択して[アクション]-[S3 Selectを使用したクエリ]でフォーマットをJSONにして確認しました。

電話に出なかったときのCTR

ConnectedToSystemTimestampがnullになっています。
発信先電話番号も含まれるので取り扱い注意ですね。
発信した際のレスポンスにContactIdが含まれるので、ContactIdで検索できます。

電話に出たときのCTR

ConnectedToSystemTimestampに日時値があります。
これで判定できそうです。

結論

今回の要件では、60秒のバッファは待てないので、EventBridgeでイベントルールを作って同じようにConnectedToSystemTimestampが含まれているかを確認してみます。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「AWS教科書 AWS認定デベロッパーアソシエイト テキスト&問題集 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

  関連記事

Cloud9でAWS CDK環境

最初ローカルに作ろうと思ったのですが、環境依存がというか、Macbookの環境で …

AWSアカウントrootユーザーのメールアドレスを変更

昔、うっかり会社の個人メールアドレスで作ってしまったAWSアカウントがあるのでメ …

AWS WAFのマネージドルールを見てみました

Web ACLで[Add managed rule groups]を選択しました …

CloudWatch Internet Monitor(プレビュー)を試しました

Amazon CloudWatch Internet Monitor プレビュー …

Amazon Location Service入門ワークショップ-マップの操作

関連記事 Amazon Location Service入門ワークショップの前提 …

Organizations対応のAWS CloudTrailのAthenaテーブルでPartition Projectionを使用しました

パーティション向けのAlterテーブルの定期実行が面倒だと思っていたら、Part …

php-fpm で Out of memoryが発生した際にメール通知する(AWS CloudWatch , Amazon SNS)

AWS CloudWatch LogsエージェントでAmazon EC2上のNg …

Transit GatewayポリシーテーブルでCloud WANのコアネットワークに接続しました

「ポリシーテーブルってなんですか?」のご質問をいただいたので設定してみました。 …

Amazon EC2 インスタンスメタデータサービス(IMDS) v2のみにしました

今さらながらですが、EC2 インスタンスメタデータサービス(IMDS) v2を確 …

ALBにWAFを関連付けて特定のヘッダー以外はブロックする

おかげさまで、ブログのアクセスも増えてきて、t3.nano EC2インスタンス単 …