問い合わせ追跡レコード (CTR) とエージェントイベントを Amazon Connect から Amazon Kinesis にストリーミングしたいと考えています。
簡単な説明
Amazon Connect インスタンスでデータストリーミングをアクティブ化すると、エージェントイベントと CTR を Amazon Kinesis Data Firehose や Amazon Kinesis Data Streams にストリーミングできます。エージェントイベントは、インスタンス内のエージェントアクティビティをほぼリアルタイムでレポートします。CTR は、インスタンス内の音声通話、チャット、タスクなどの連絡先イベントのほぼリアルタイムのデータを提供します。
Amazon Connect を Kinesis Data Firehose または Kinesis Data Streams と統合するには、以下の手順を実行してください。
- Kinesis Data Firehose 配信ストリームまたは Kinesis データストリームを作成します。
- インスタンスのデータストリーミングを有効にします。
- 設定をテストします。
解決方法
Kinesis Data Firehose 配信ストリームを作成する
Amazon Connect を Kinesis Data Firehose と統合するには、以下の手順を実行してください。
- Kinesis Data Firehose 配信ストリームのソース、送信先、および名前を設定します。
注: Direct PUT により、Kinesis データストリームを作成しなくても Amazon Connect からデータをストリーミングできる Kinesis Data Firehose を作成できます。Kinesis ストリームでは、Amazon Connect データ用の Kinesis データストリームを作成する必要があります。
- (オプション) レコードデータを変換および変換するように Kinesis Data Firehose を設定します。
- (オプション) Kinesis Data Firehose 配信ストリームのバックアップ設定と詳細設定を行います。
- インスタンスのデータストリーミングを有効にします。
- サンプルデータを使用して配信ストリームをテストします。
Kinesis データストリームを作成する
Amazon Connect を Kinesis Data Streams と統合するには、以下の手順を実行します。
- AWS マネジメントコンソールを使用してストリームを作成します。
- インスタンスのデータストリーミングを有効にします。
- セットアップをテストするには、ユースケースに応じて次のいずれかの手順を実行します。
連絡先イベントのデータストリーミングを有効にした場合:
- アウトバウンドまたはインバウンドコールを発信して、インスタンスに連絡先レコードを作成します。
- 連絡先レコードが連絡先検索 UI で生成されていることを確認します。
- 配信ストリームに設定されている送信先で、連絡先レコードイベントを確認してください。連絡先イベントは一括配信されます。複数の連絡先 ID が同時に送信先に配信されることがあります。例については、「音声通話がエージェントに接続されたときの連絡先イベントの例」を参照してください。
-または-
エージェントイベントのデータストリーミングを有効にした場合:
- エージェントにステータスを変更してもらうか、連絡先に連絡してエージェントイベントを作成します。
- エージェントイベントの Kinesis データストリーム用に設定されている送信先を確認します。エージェント ARN は、データがデータストリームに送信されるときに使用されるパーティションキーです。1 つのエージェントのすべてのイベントは同じシャードに送信され、ストリーム内のリシャーディングイベントは無視されます。例については、「エージェントイベントストリームのサンプル」を参照してください。
エラーの特定とトラブルシューティング
Kinesis 配信ストリームの送信先に公開されたデータが表示されません。
公開されたデータが表示されない問題を解決するには、次の 1 つ以上のアクションを実行してください。
- 選択した Kinesis データストリームがサーバー側の暗号化を行えるように有効になっていることを確認します。kms:GenerateDataKey を呼び出す権限がないためにサーバー側の暗号化が有効になっている場合、Amazon Connect はストリームにデータを公開できません。この問題を解決するには、「Kinesis ストリームにサーバー側の暗号化を使用する」の手順に従ってください。
- Kinesis Data Firehose の [デモデータのテスト] オプションを使用して配信ストリームをテストし、配信ストリームが想定どおりに設定されていることを確認します。
- Kinesis Data Firehose のデータ配信頻度を確認します。データ配信頻度は、選択した送信先によって異なる場合があります。5 分が経過してもデータが配信されない場合は、受信レコードの配信ストリームメトリクスを確認してください。Kinesis Data Firehose のエラーログ記録を設定して、データ配信エラーをキャプチャできます。
Amazon Connect のデータストリームを有効にしたときに作成した Kinesis Data Firehose または Kinesis データストリームを選択できません。
まず、Kinesis Data Firehose または Kinesis データストリームが Amazon Connect インスタンスと同じ AWS リージョンに存在することを確認します。サービスが同じリージョンにある場合は、ストリームを一覧表示できるアクセス許可がない可能性があります。Kinesis Data Firehose の場合は ListDeliveryStreams、Kinesis Data Streams の場合は ListStreams のアクセス許可が付与されていることを確認します。
また、AWS コマンドラインインターフェイス (AWS CLI) コマンド associate-instance-storage-config を使用してデータストリーミングを有効にすることもできます。
注: AWS コマンドラインインターフェイス (AWS CLI) のコマンド実行中にエラーが発生した場合は、AWS CLI の最新バージョンを使用していることを確認してください。
エージェントイベントやコンタクトトレースレコード (CTR) にはどこからアクセスできますか?
エージェントイベントと CTR が Kinesis Data Streams に送信される場合は、Kinesis コンソールのデータビューアを使用してデータを確認します。また、Kinesis データストリームからのデータを処理するようにコンシューマーを設定できます。例えば、Kinesis Data Firehose を作成して、Kinesis データストリームのデータをエージェントイベントに使用することができます。
CTR が Kinesis Data Firehose に送信されると、配信ストリーム用に設定された送信先で CTR にアクセスできます。例えば、送信先が Amazon Simple Storage Service (Amazon S3) バケットの場合、選択した S3 バケットの CTR にアクセスできます。Kinesis Data Firehose を作成するときに、Amazon S3 の送信先バケットを選択します。
問い合わせ追跡レコード (CTR) に複数の Kinesis 配信ストリームを設定できますか?
デフォルトでは、CTR でサポートされる配信ストリームは 1 つだけです。ただし、複数のコンシューマーを使用して、Kinesis Data Stream への CTR を複数の配信ストリームを持つことができます。この設定を使用するには、Kinesis データストリームが CTR データのプロデューサーとして機能する必要があります。次に、複数のコンシューマーを設定してデータを取り込むことができます。Kinesis Data Streams のコンシューマーの詳細については、「Amazon Kinesis Data Streams からのデータの読み取り」を参照してください。
Amazon Connect からの重複データが Kinesis Data Streams アプリケーションに公開されています。
プロデューサーの再試行とコンシューマーの再試行により、データが重複する可能性があります。再試行の耐障害性を持てるように、最終データの送信先に重複を処理させるのがベストプラクティスです。
関連情報
Amazon Connect エージェントイベントストリーム
Amazon Connect の連絡先イベント
Amazon Kinesis Data Streams とは何ですか?
Amazon Kinesis Data Firehose とは何ですか?