検証済みのAI要約◀▼
コンタクトセンターの主要な構成要素について説明します。通話やチャットを処理するAmazon Connect、ユーザー認証を行うAmazon Cognito、AWSリソースのセットアップを自動化するAmazon CloudFormationです。コンタクトセンターアプリは、エージェントデスクトップやAIツールなどの機能を追加し、Amazon Connectの利用体験を向上させます。データはお客様のAWSアカウント内に保持されるため、安全に管理できます。更新には、安全にロールバックできるデュアルスタック方式を使用します。
ここでは、コンタクトセンターの基本構成要素と、それらがどのように連携するかを見ていきます。
この記事では、以下のトピックについて説明します。
Amazon Connect Customer
Amazon Connect Customer(以下Connect)は、AWSが提供するクラウドベースのコンタクトセンターサービスであり、カスタマーサポートの音声通話やチャットの設定および管理を支援します。これは、コンタクトセンターのテレフォニーおよびコンタクトルーティングのエンジンと考えられます。電話の通話、チャットの会話、キュー、コンタクトフローなどを処理します。Connectはコンタクトセンターの基盤です。コンタクトセンターを利用するすべてのお客様は、ご自身のAWSアカウント内にConnectインスタンスを用意する必要があります。各コンタクトセンターの環境は、特定のConnectインスタンスと1対1で紐付けられます。コンタクトセンターの1つのアカウントに複数のConnectインスタンスを紐付けることはできません。また、その逆も同様です。
Amazon Cognito
Amazon Cognitoは、ユーザーの認証と認可を行うAWSサービスです。Webアプリケーションやモバイルアプリケーションのユーザー登録、サインイン、アクセス制御を管理できます。Amazon Cognitoは、コンタクトセンターにログインするユーザー(エージェント、スーパーバイザー、管理者)のアカウントを保存するユーザープールを提供します。Cognitoがパスワードやサインインを安全に処理するため、ユーザーはコンタクトセンターアプリ(Webアプリケーション)にサインインできます。Cognitoを使用すると、カスタムシステムを使用することなく、エージェントのアイデンティティを作成、管理できます。セットアップ時には、ID管理を容易にするため、CloudFormationによってCognitoユーザープールが自動的に作成されます。
Amazon CloudFormation
AWS CloudFormationは、テンプレートを使用してAWSリソースのセットアップを自動化するためのサービスです。CloudFormationでは、手動による入力を最小限に抑えながら、コンタクトセンターに必要なAWSコンポーネント、サービス、権限をテンプレートに基づいてデプロイします。
CloudFormationスタック(テンプレートで定義されたAWSリソースの集合)は、Amazon Cognitoユーザープール、Identity and Access Management(IAM)のロールと権限、AWS Lambda関数、ストリーミング接続、およびConnectとコンタクトセンターを連携させるその他のコンポーネントなどのリソースを作成、構成します。CloudFormationを使用することで、コンタクトセンターを支えるバックエンドサービスのセットアップにかかる時間を短縮し、エラーを減らすことができます。
AWS Lambda関数
AWS Lambdaは、イベントに応じてコードを実行するサーバーレスコンピューティングサービスです。コンタクトセンターでは、Lambda関数を使用して、デプロイメントタスクを自動化し、Amazon Connect Customer、Amazon S3、Amazon Kinesisなどのサービスから発生するランタイムイベントを処理します。
デプロイメント用Lambda関数
これらのLambda関数はデプロイメント時に実行され、コンタクトセンターで使用するAWSリソースを検出または構成します。
| Lambda | 内容 |
| FetchConnectDetails | デプロイメント時に、ストレージ設定、バケット名、KMSキー、Kinesisストリーム、Amazon Customer Profilesドメインなど、Connectインスタンスの構成を読み取ります。出力は、ネストされたスタックのパラメータを設定するために使用されます。 |
| SubscribeRecordingBucket | デプロイメント時に、録音用S3バケットのEventBridge通知を有効にします。 |
| ContactLensStreamsLambda | 既存のストリームが設定されていない場合、デプロイメント時にAmazon Contact LensのKinesisストリームを、Connectインスタンスのストレージ構成に関連付けます。 |
ランタイムLambda関数
これらのLambda関数は、コンタクトセンターでコールアクティビティ、会話データ、またはユーザーリクエストを処理する必要があるときに実行されます。
| Lambda | 内容 | 実行タイミング |
| ZendeskVoicePostCall | Contact Trace Record(CTR)ストリームのレコードを処理し、S3から通話録音を読み取って、通話データをZendesk Voice APIに送信します。 | 音声通話の終了後、CTRストリームのレコードが利用可能になったとき。 |
| ZendeskVoiceSearch | 発信者のZendeskチケットまたはコンタクトレコードを検索します。 | 音声通話中にConnectがこのLambda関数を呼び出したとき。 |
| ContactLensEventsLambda | Contact LensのKinesisストリームを取り込み、リアルタイムの会話分析イベントをZendeskに転送します。 | Amazon Contact Lensがストリームイベントを出力したとき。 |
| CTRIngestLambda | KinesisからContact Trace Record(CTR)データを取り込み、Resolution Codeダッシュボードで使用されるデータを含む分析データをZendeskに転送します。 | ConnectがCTRレコードをストリームにパブリッシュしたとき。 |
| TranscriptIngestLambda | S3からチャットの会話ログのJSONファイルを読み取り、Zendeskにアップロードします。 | チャットの会話ログファイルがS3に保存されたことをEventBridgeが検出したとき。 |
| RecordingIngestLambda | 音声通話の録音ファイル(.wav)がS3に保存されたことをZendeskに通知します。 | 録音ファイルがS3に保存されたことをEventBridgeが検出したとき。 |
| ZendeskAPI | Zendesk管理インターフェイスのAPI Gatewayプロキシとして機能します。AWS Systems Manager Parameter StoreとAWS Secrets Managerの値を読み書きします。 | Zendesk管理インターフェイスがAPIリクエストを送信したとき。 |
| VoiceAIBrokerRegisterContext | Voice AIコンテキストを登録し、通話フローの継続に必要な転送先電話番号とDTMFトーンを返します。 | ConnectがコンタクトフローからこのLambda関数を呼び出したとき。 |
| MainHandler | コンタクトセンターのエージェントインターフェイスから送信されたブラウザリクエストを処理します。Connect、Customer Profiles、Wisdomへの呼び出しをプロキシし、会話ログや添付ファイル用の署名付きS3 URLを生成して、Cognitoセッションを管理します。 | エージェントインターフェイスがブラウザリクエストを送信したとき。 |
Zendesk IDプロバイダー
Zendeskは、コンタクトセンターを支えるAWSサービスに対してSAML 2.0 IDプロバイダー(IdP)として機能することで、シングルサインオン(SSO)を提供します。Zendeskにサインインする際は、Okta、Entra ID、Google Workspaceなどの企業IdPを引き続き使用します。Zendeskにサインインすると、ZendeskはSAML 2.0 IdPとして機能し、IdP起点のSAML SSOを使用して、Amazon Connect Customer、Amazon Cognito、AWS Management Consoleにサインインできるようにします。これらのサービスに対して個別にSSOインテグレーションを設定する必要はなく、多要素認証(MFA)とアクセスポリシーはIdP内に保持されます。この仕組みはコンタクトセンターのAWSサービス向けに構築されたものであり、任意のサードパーティサービスプロバイダー向けの汎用SAMLブローカーとして設計されたものではありません。
コンタクトセンターアプリ
Zendeskコンタクトセンターは、Zendeskが開発した、Connectと連携するアプリです。直感的なエージェントインターフェイスに加え、オムニチャネル受信トレイ、AI搭載ツール、高度なダッシュボードなどの追加機能を提供し、Connectの利用体験を強化します。エージェントはコンタクトセンターのWebインターフェイスにログインして、カスタマーのConnectインスタンスを通じて処理されるコールやメッセージを受け取ります。
コンタクトセンターはカスタマーのAWS環境にデプロイされます。カスタマーおよびコンタクトセンターに関するデータ(コール録音、カスタマー情報など)はすべて、Zendeskのサーバーではなく、お客様のAWSアカウント内に保存されます。これにより、セキュリティとプライバシーの確保に役立ちます。コンタクトセンターを使用するには、Connectインスタンスをコンタクトセンターアプリにリンクし、インテグレーションを可能にするAWSコンポーネントをCloudFormationを使用してデプロイする必要があります。セットアップが完了すると、コンタクトセンターとConnectが一体となったコンタクトセンターソリューションとして動作します。
詳細については、「コンタクトセンターアプリの操作」を参照してください。
デュアルスタックのアップグレードプロセス
コンタクトセンターに必要なインフラストラクチャは、CloudFormationを使用してお客様のAWS環境にデプロイされます。デプロイ後、そのスタックがCloudFormationの更新プロセスによって更新されることはありません。代わりに、新しいCloudFormationスタックが並行して作成され、準備が整うと、コンタクトセンターは新しいインフラストラクチャを使用するように再構成されます。テストと検証が完了したら、古いスタックを削除できます。これにより、安全にロールバックできる状態が確保されます。
更新を行うには、更新用テンプレートのURLをZendeskにリクエストする必要があります。