連絡先が Amazon Connect のキューで待機した時間の計算方法を教えてください。
連絡先が Amazon Connect のキューで待機している時間を計算したいと考えています。
簡潔な説明
Amazon Connect では、アクティブな連絡先と完了した連絡先のキューにある問い合わせの時間を計算できます。
アクティブな連絡先がキュー内で待機した時間を計算するには、次の方法を使用します。
- CloudWatch に送信された Amazon Connect メトリクスを追跡して、QueueSize と LongestQueueWaitTime を調べる
- GetCurrentMetricData API を使用して、CONTACTS_IN_QUEUE と OLDEST_CONTACT_AGE を追跡する
- Amazon Connect の連絡先イベントを使用して個々の連絡先を追跡する
完了した連絡先がキュー内で待機した時間を計算するには、次の方法を使用します。
- 履歴メトリクスを使用してキューに入っている最大時間を追跡する
- 個々の連絡先の連絡先レコードの QueueInfo データを使用して時間を追跡する
解決策
アクティブな連絡先の場合
QueueSize と LongestQueueWaitTime のメトリクスを追跡する
- Amazon CloudWatch コンソールを開きます。
- ナビゲーションペインで [メトリクス] をクリックし、[すべてのメトリクス] を選択します。
- [メトリクス] タブで [接続] を選択し、[キューメトリクス] を選択します。
- メトリクスの [QueueSize] および [LongestQueueWaitTime] を選択します。
- [グラフ化したメトリクス] タブを選択します。[統計] で [最大値] を選択します。
- [QueueSize] と [LongestQueueWaitTime] の両方を確認します。
QueueSize は、キュー内の連絡先の数です。LongestQueueWaitTime は、連絡先がキューで待機していた最長時間を秒単位で示します。詳細については、「Monitoring your Amazon Connect instance using CloudWatch (CloudWatch を使用した Amazon Connect インスタンスのモニタリング)」を参照してください。
ヒント: LongestQueueWaitTime メトリクスに CloudWatch アラームを設定して、特定のしきい値に達したときに通知を受け取ることができます。詳細については、「グラフのメトリクスからアラームを作成する」を参照してください。
GetCurrentMetricData API を使用して CONTACTS_IN_QUEUE と OLDEST_CONTACT_AGE を追跡する
API リクエストパラメータの QueueID と InstanceID を見つけるには、まず次の操作を行います。
- アクセス URL (https://alias.awsapps.com/connect/login または https://domain.my.connect.aws) を使用して Amazon Connect インスタンスにログインします。管理者アカウントまたは緊急アクセスの Amazon Connect インスタンスログインを使用する必要があります。
- ナビゲーションメニューで [ルーティング]、[キュー] の順に選択します。
- 確認するタスクの名前を選択します。
- [キューの詳細] で、[追加のキュー情報を表示] を選択します。
- arn:aws:connect:region:account-id:instance/instance-id/queue/queue-id と表示されているキュー ARN を探します。次のステップに備えて、AWS リージョン、インスタンス ID、キュー ID をメモしておきます。
次に、GetCurrentMetricData API を実行するには、次の操作を行います。
1.AWS CloudShell に移動します。
2.次の AWS コマンドラインインターフェイス (AWS CLI) コマンドを実行します。
注: **キュー ID **、**インスタンス ID **、リージョンをご使用の値に置き換えてください。
aws connect get-current-metric-data --filters Queues=<queue-id> --instance-id <instance-id> --current-metrics Name=CONTACTS_IN_QUEUE,Unit=COUNT Name=OLDEST_CONTACT_AGE,Unit=SECONDS --groupings QUEUE --region <region>
注: AWS CLI のコマンドの実行時にエラーが発生する場合は、「AWS CLI でのエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
次のような出力が表示されます。
{ "MetricResults": [ { "Dimensions": { "Queue": { "Id": "<queue-id>", "Arn": "<queue-arn>" } }, "Collections": [ { "Metric": { "Name": "CONTACTS_IN_QUEUE", "Unit": "COUNT" }, "Value": 0.0 }, { "Metric": { "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" }, "Value": 0.0 } ] } ], "DataSnapshotTime": "<The time at which the metrics were retrieved and cached for pagination.>" }
連絡先イベントを使用して個々の連絡先を追跡する
1.Amazon EventBridge コンソールを開きます。
2.ナビゲーションペインで [ルール] を選択します。
3.[ルールを作成] を選択します。
4.[ルールタイプ] で [イベントパターンを持つルール] を選択します。
5.[次へ] を選択します。
6.[作成方法]で、[パターンフォームを使用する] を選択します。
7.[イベントパターン] で、[イベントソース] で [AWS のサービス] を、[AWS のサービス] で**[Amazon Connect]** を、[イベントタイプ] で [Amazon Connect 連絡先イベント] を選択します。
8.[ターゲット 1] で、[ターゲットタイプ] として [AWS のサービス] を選択します。
9.[ターゲットの選択] で [Lambda 関数] を選択します。この関数では、次の操作を行います。
ランタイム Python 3.8 を使用して、コンソールで Lambda 関数を作成します。
Lambda 関数コードには、以下を使用してください。
import json def lambda_handler(event, context): # TODO implement print(event) return { 'statusCode': 200, 'body': json.dumps('Hello from Lambda!') }
注: Lambda 関数はテストを目的とするもので、すべてのイベントを出力します。特定の連絡先がキュー内で待機した時間を計算するプロセスは、手動で設定する必要があります。
10.[スキップして、確認および作成] を選択し、[ルールを作成] を選択します。
11.AWS Lambda の Amazon CloudWatch Logs にアクセスして、音声通話、チャット、タスクイベントなどの連絡先のストリームをほぼリアルタイムで確認できます。たとえば、Amazon Connect コンタクトセンターで通話がキューに入っているかどうかを確認できます。
注: 使用可能なコンタクトイベントは、INITIATED、CONNECTED_TO_SYSTEM、QUEUED、CONNECTED_TO_AGENT、DISCONNECTED です。イベントはベストエフォートベースで出力されます。
12.特定の連絡先がキュー内で待機した時間を調べるには、まず次の情報を確認します。
- 特定の連絡先 ID の QUEUED イベントのタイムスタンプ。
- 同じ連絡先 ID の CONNECTED_TO_AGENT イベントのタイムスタンプ。
13.特定の連絡先がキュー内で待機した時間を計算するには、CONNECTED_TO_AGENT タイムスタンプから QUEUED タイムスタンプを減算します。
完了した連絡先の場合
履歴メトリクスを使用してキュー時間を追跡する
過去のメトリクスレポートを表示するには、次の操作を行います。
- アクセス URL (https://alias.awsapps.com/connect/login または https://domain.my.connect.aws) を使用して Amazon Connect インスタンスにログインします。
重要: 履歴メトリレポートを表示するのに必要な十分なアクセス許可を持つユーザーとしてログインする必要があります。 - ナビゲーションメニューで、[分析と最適化]、[履歴メトリクス] を選択します。
- [キュー] レポートタイプを選択します。
- 歯車のアイコンを選択します。
- [メトリクス] タブで、[キューに入っている最大時間] を選択します。
- [間隔と時間範囲] タブで、[間隔]、[タイムゾーン]、[時間範囲] を設定します。
- レポートのカスタマイズが完了したら、[適用] を選択します。[キューに入っている最大時間] には、選択した間隔と時間範囲で連絡先がキューで待機していた最長の時間が表示されます。
- (オプション) 将来使用できるようにレポートを保存するには、[保存] をクリックし、レポートの名前を入力して [保存] を選択します。
ヒント: 履歴メトリクスレポートは将来使用できるようにスケジュールできます。
GetMetricData API を使用して QUEUED_TIME を追跡することもできます。GetMetricData API メトリクスは 24 時間のみ利用可能です。
個々の連絡先の連絡先検索を使用して、QueueInfo の所要時間を追跡する
連絡先検索を使用するには、次の操作を行います。
- UI で連絡先レコードを表示して、表示したい連絡先トレースレコード (CTR) を開きます。
- 連絡先がキューに入っていた場合は、[キュー] セクションが表示され、連絡先がキューで待機した時間が一覧表示されます。**
注:** CTR のデータ保持期間は、問い合わせ開始から 24 か月です。 - 連絡先データを 24 か月以上保持するには、次の方法でCTRをストリーミングします。
Amazon Kinesis Data Firehose デリバリーストリーム、または Amazon Kinesis データストリームを作成します。次に、インスタンスでデータストリーミングを有効にします。
注: 別の方法については、「Analyze Amazon Connect contact trace record with Amazon Athena and Amazon Quick Sight (Amazon Athena と Amazon QuickSight を使用して Amazon Connect のコンタクトトレースレコードを分析する)」を参照してください。
- 言語
- 日本語

関連するコンテンツ
質問済み 1年前