Amazon Connect Customerの通話録音とIVRの文字起こしを削除してみた

Amazon Connect Customerの通話録音とIVRの文字起こしを削除してみた

Amazon Connect Customerで通話終了後の録音と文字起こしを削除する方法を、管理コンソールとS3の両面から試してみました。エージェント通話録音は削除できましたが、IVR録音と文字起こしの削除には複数のS3ファイル削除が必要です。
2026.09.29

はじめに

Amazon Connect Customerで、通話終了後の録音と文字起こしを削除する方法を確認しました。

対象は、エージェントとの通話録音に加え、自動インタラクション(IVR)の録音と文字起こしです。確認した公開ドキュメントだけでは、これらをそれぞれどのように削除するのか分からなかったため、管理コンソールとS3で実際に試してみました。

管理コンソールからはエージェントとの通話録音を削除できましたが、IVR録音は残りました。その後、S3からIVR録音と関連ファイルを削除し、文字起こしが表示されなくなるまでの結果を紹介します。

検証環境

  • リージョン:ap-northeast-1
  • チャネル:音声
  • コンタクトID:8b09f11f-39dd-4640-b506-e42d78efcf4e
  • S3バケット:amazon-connect-1b33d85eab5b
  • 確認方法:Amazon Connect Customerの管理コンソール、AWS CloudShell

今回のコンタクトでは、フローでエージェントとの通話録音と自動インタラクション通話録音を有効にしています。録音する区間はフローの設定によって異なります。

https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/set-up-recordings.html

記事中のID、バケット名、S3キーは今回の検証環境の値です。ただし、インスタンスエイリアスはマスクしています。コマンドを実行する場合は、後述する INSTANCE_ALIAS を含め、自分の環境の値に置き換えてください。

管理コンソールから通話録音を削除する

セキュリティプロファイルを設定する

今回操作したユーザーのセキュリティプロファイルでは、「録音とトランスクリプト」の「録音した会話を削除」を設定しました。

cm-hirai-screenshot 2026-09-02 9.43.01
「録音した会話を削除」を設定したセキュリティプロファイル

コンタクト検索画面から削除する

コンタクト検索画面で対象のコンタクトを表示し、削除アイコンをクリックします。

cm-hirai-screenshot 2026-09-02 9.24.48
コンタクト検索画面の削除アイコン

削除理由を選択します。

cm-hirai-screenshot 2026-09-02 9.26.04
削除理由を選択する画面

内容を確認して録音を削除します。

cm-hirai-screenshot 2026-09-02 9.25.53
録音の削除操作

削除後、「通話録音は削除されました」と表示されました。

cm-hirai-screenshot 2026-09-02 9.26.15
削除完了のメッセージ

管理コンソールで削除結果を確認する

コンタクト詳細画面の「エージェントとのやり取り」では、通話録音と文字起こしが削除され、録音のステータスが DELETED になりました。

cm-hirai-screenshot 2026-09-02 9.35.43
「エージェントとのやり取り」の通話録音と文字起こしが削除された状態

一方、画面上の「自動のやり取り」では、エージェント接続前の録音を引き続き再生でき、文字起こしも表示されていました。本記事では、この区間の音声を「IVR録音」と呼びます。

cm-hirai-screenshot 2026-09-02 9.35.36
管理コンソールでの削除後も、IVR録音と文字起こしは残っている

AWS CloudShellから録音の状態を確認する

管理コンソールの表示に加えて、AWS CloudShellから DescribeContact を実行しました。

export AWS_REGION="ap-northeast-1"
export INSTANCE_ID="3ff2093d-af96-43fd-b038-3c07cdd7609c"
export CONTACT_ID="8b09f11f-39dd-4640-b506-e42d78efcf4e"

aws connect describe-contact \
  --region "$AWS_REGION" \
  --instance-id "$INSTANCE_ID" \
  --contact-id "$CONTACT_ID" \
  --query 'Contact.Recordings[*].{ParticipantType:ParticipantType,MediaStreamType:MediaStreamType,Status:Status,Location:Location,DeletionReason:DeletionReason}' \
  --output table

管理コンソールで削除した後の結果から、主な列を抜粋します。

ParticipantType  MediaStreamType          Status
IVR              AUDIO                    AVAILABLE
None             AUTOMATED_INTERACTION    AVAILABLE
None             AUDIO                    DELETED

ParticipantType: IVR の AUDIO はIVR録音です。一方、AUTOMATED_INTERACTION は自動インタラクションログであり、WAV形式の録音ファイルとは別のデータです。今回の操作では、エージェントとの通話録音のみが DELETED になりました。

自動インタラクションログには、フローやボットとのやり取りなど、自動応答中の情報が含まれ得ます。

https://docs.aws.amazon.com/connect/latest/adminguide/monitor-automated-interaction-logs.html

S3からIVR録音と関連ファイルを削除する

DescribeContact の Location から、IVR録音のWAVファイルと自動インタラクションログの保存先を確認できました。

さらに、S3の CallRecordings/ 配下を対象コンタクトIDで調べると、Staging 配下の自動インタラクションログと、IVR録音に関連する participant_input.json も見つかりました。まずは、この4つのオブジェクトを削除します。

ここで示す INSTANCE_ALIAS はインスタンスエイリアスをマスクした値です。以下のコマンドを実行する前に、自分の環境のエイリアスを設定してください。

export BUCKET="amazon-connect-1b33d85eab5b"
export INSTANCE_ALIAS="your-instance-alias"

export IVR_KEY="connect/${INSTANCE_ALIAS}/CallRecordings/ivr/2026/08/19/${CONTACT_ID}_20260819T07:02_UTC.wav"

export LOG_KEY="connect/${INSTANCE_ALIAS}/CallRecordings/AUTOMATED_INTERACTION_LOG/2026/08/19/${CONTACT_ID}_8a99c0e9-778e-4697-9f45-2815099ff556_20260819T07:10_UTC.json"

export STAGING_LOG_KEY="connect/${INSTANCE_ALIAS}/CallRecordings/Staging/AUTOMATED_INTERACTION_LOG/2026/08/19/${CONTACT_ID}_8a99c0e9-778e-4697-9f45-2815099ff556_20260819T07:10_UTC.json"

export PARTICIPANT_INPUT_KEY="connect/${INSTANCE_ALIAS}/CallRecordings/ivr/2026/08/19/${CONTACT_ID}_20260819T07:02_UTC_participant_input.json"

INSTANCE_ALIAS だけでなく、ファイル名や日時もコンタクトによって異なります。削除対象のキーは、DescribeContact とS3の一覧で確認した値を使用してください。

削除前には、それぞれのオブジェクトが存在することを head-object で確認しました。IVR録音の場合は次のコマンドです。

aws s3api head-object \
  --region "$AWS_REGION" \
  --bucket "$BUCKET" \
  --key "$IVR_KEY"

対象キーを確認したうえで、4つのオブジェクトを個別に削除しました。

aws s3api delete-object \
  --region "$AWS_REGION" \
  --bucket "$BUCKET" \
  --key "$IVR_KEY"

aws s3api delete-object \
  --region "$AWS_REGION" \
  --bucket "$BUCKET" \
  --key "$LOG_KEY"

aws s3api delete-object \
  --region "$AWS_REGION" \
  --bucket "$BUCKET" \
  --key "$STAGING_LOG_KEY"

aws s3api delete-object \
  --region "$AWS_REGION" \
  --bucket "$BUCKET" \
  --key "$PARTICIPANT_INPUT_KEY"

削除後、IVR録音と participant_input.json に対する head-object は 404 Not Found となりました。後から4つのキーを再確認した際も、現行オブジェクトはいずれも見つかりませんでした。

なお、S3バージョニングが有効なバケットでは、通常の delete-object 後も過去バージョンが残る場合があります。今回のバケットでは、get-bucket-versioning の結果は空でした。

IVR録音とログを削除しても文字起こしは表示された

4つのファイルを削除した後、IVR録音は再生できなくなりました。しかし、コンタクト詳細画面の「自動のやり取り」には、文字起こしに相当する内容が表示されたままでした。

cm-hirai-screenshot 2026-09-15 14.55.33
IVR録音とログを削除した後。音声は再生できないが、「自動のやり取り」の内容は表示されている

この時点では、connect/<インスタンスエイリアス>/CallRecordings/ や connect/<インスタンスエイリアス>/Analysis/ 配下を確認していました。ただし、これらの検索にはバケット直下の Analysis/ は含まれていません。そこで、プレフィックスを指定せずにバケット全体を検索しました。

バケット直下のIVR分析ファイルを削除する

AWS CloudShellで、キーに対象コンタクトIDを含む現行オブジェクトを検索します。

aws s3api list-objects-v2 \
  --region "$AWS_REGION" \
  --bucket "$BUCKET" \
  --query "Contents[?contains(Key, '$CONTACT_ID')].[Key,Size,LastModified]" \
  --output table

今回の検索では、次のファイルが見つかりました。

Analysis/Voice/ivr/2026/08/19/8b09f11f-39dd-4640-b506-e42d78efcf4e_analysis_2026-08-19T07:02:42Z.json

これは、先に削除した CallRecordings/AUTOMATED_INTERACTION_LOG/ 配下のJSONとは別のオブジェクトです。保存先も connect/<インスタンスエイリアス>/ 配下ではなく、バケット直下の Analysis/Voice/ivr/ でした。

見つかったキーを指定して削除しました。

export ANALYSIS_IVR_KEY="Analysis/Voice/ivr/2026/08/19/${CONTACT_ID}_analysis_2026-08-19T07:02:42Z.json"

aws s3api delete-object \
  --region "$AWS_REGION" \
  --bucket "$BUCKET" \
  --key "$ANALYSIS_IVR_KEY"

その後、コンタクト詳細画面を再読み込みすると、「自動のやり取り」の文字起こしは表示されなくなりました。

cm-hirai-screenshot 2026-09-29 16.41.37
バケット直下のIVR分析ファイルを削除した後。「自動のやり取り」の文字起こしが表示されなくなった

今回の検証では、IVR録音と自動インタラクションログを削除するだけでは文字起こしは消えず、残っていたIVR分析ファイルを削除した後に表示されなくなりました。

なお、バケット全体の検索でも、確認できるのはキーにコンタクトIDを含む現行オブジェクトです。コンタクトIDをキーに含まないデータや、別バケットのオブジェクトまで網羅するものではありません。

S3から削除してもIVR録音と自動インタラクションログはAVAILABLEのままだった

IVR録音、自動インタラクションログ、IVR分析ファイルをS3から削除した後、AWS CloudShellで DescribeContact を再実行しました。

aws connect describe-contact \
  --region "$AWS_REGION" \
  --instance-id "$INSTANCE_ID" \
  --contact-id "$CONTACT_ID" \
  --query 'Contact.Recordings[*].{ParticipantType:ParticipantType,MediaStreamType:MediaStreamType,Status:Status,Location:Location,DeletionReason:DeletionReason}' \
  --output table

結果から主な列を抜粋します。

ParticipantType  MediaStreamType          Status
IVR              AUDIO                    AVAILABLE
None             AUTOMATED_INTERACTION    AVAILABLE
None             AUDIO                    DELETED

コンタクト詳細画面では、IVR録音を再生できず、「自動のやり取り」の文字起こしも表示されなくなりました。一方、DescribeContact ではIVR録音と自動インタラクションログが AVAILABLE のままで、Location にも削除済みS3オブジェクトのパスが残っていました。管理コンソールから削除したエージェントとの通話録音は DELETED です。

まとめ

今回の検証では、管理コンソールからエージェントとの通話録音を削除しても、IVR録音は残りました。

S3からIVR録音と自動インタラクションログを削除した後も文字起こしは表示されていましたが、バケット直下の Analysis/Voice/ivr/ に残っていた分析ファイルを削除すると、表示されなくなりました。

この記事をシェアする

AWSのお困り事はクラスメソッドへ

関連記事