Amazon Connect + Kinesis Firehose + Amazon Elasticsearch

こんにちは。katoです。

今回はAmazon Connectのデータストリーミング機能を利用して、通話イベントの情報をAmazon Elasticsearchに連携していきたいと思います。

 

概要

今回ご紹介するAmazon Connectのデータストリーミング機能は、Amazon Connectのエージェントイベントなどの情報をKinesisを経由してS3やAmazon Elasticsearchに連携できるものとなっております。

今回はKinesis Firehoseを利用し、Amazon Elasticsearchにデータを連携していきたいと思います。
全体の構成としては下記になります。

 

Amazon Elasticsearchにデータを連携

 

手順

まずはじめにAmazon Elasticsearchのドメインを作成します。

Amazon Elastcsearchに関しましては特に難しい設定はありません。

 

Amazon Elasticsearchのドメインを作成

 

Amazon Elasticsearch ノードの設定

 

Amazon Elasticsearch 設定

 

今回はパブリックアクセスとして、IP制限を実施しております。

ドメインのステータスがアクティブになるまでに少し時間がかかりますので、この間にKinesis Firehoseのstreamを作成していきます。

今回はデータソースがAmazon Connectとなるので、「Direct PUT or other sources」を選択します。

 

「Direct PUT or other sources」を選択

 

Process records

 

データの連携先として先程作成したAmazon Elasticsearchのドメインを指定します。
indexは適当に指定してください。
index rotationはお好きなものを指定してください。今回は「Every day」を指定します。

 

Select destination

 

Kinesis Firehoseでは、エラーが発生した場合にS3にデータを保存します。
保存先のS3バケットを選択します。

 

S3 backup

 

なお、今回はエラー以外のデータもアーカイブとして保存しておきたいので、バックアップモードに「All records」を指定しております。

configure settingsはご利用環境に合わせて適宜設定してください。

IAMロールに関しましては「Create new or choose」をクリックすれば、必要な権限を持ったロールを作成できます。

 

Configure settings

 

Error logging

 

最後に設定を確認して作成を行います。

ステータスがActiveになるのを確認したら、最後にAmazon Connectを連携していきます。

Amazon Connectの連携に関しては、サービスページから「データストリーミングの有効化」をオンにします。

問合せ追跡レコードとしてKinesis Firehose を選択し、先ほど作成してstreamを指定します。

 

Kinesis Firehose を選択

 

保存を行えば、設定は完了となります。

 

動作確認

インバウンドまたはアウトバウンドのイベントが発生すると、Amazon Elasticsearchにindexが作成されます。

 

connnect-metrics

 

Amazon Connectのイベントデータはjson形式として連携されますので、そのままKibanaで可視化を行うことが可能です。

indexパターンとして「connect-stream*」の様に指定し、データを確認してみます。

Discoverを確認してみると、イベント情報が確認できるはずです。

 

Discoverを確認

 

後は好きな情報を選択し、グラフの作成とダッシュボードの作成を行います。
今回はコンタクトイベントの数と通話時間の平均をユーザや電話番号別にグラフ化してみました。
また、時間ごとのアウトバウンドとインバウンドのイベント数もグラフ化しております。

 

アウトバウンドとインバウンドのイベント数グラフ化

 

Kinesis Firehoseの設定でLambdaを挟んで、データの成形などが可能なので、電話番号から顧客情報を出力したりさまざまな用途に活用できます。

 

まとめ

今回はAmazon Connectのデータストリーミング機能を利用し、コンタクトイベントの情報をAmazon Elasticsearchに連携してみました。

コールセンターの運用にあたって、エージェントのステータスや顧客毎のイベント情報をリアルタイム分析に近い形で情報をモニタリングすることが可能となります。

AWSサービスの組み合わせで簡単に導入を行うことができるので、Amazon Connectを導入する場合には、ぜひともデータストリーミングの機能も利用してみて下さい。

 

 

 

このブログの著者

 

 

AWS相談会バナー  

おてがるCTIバナー