Amazon ConnectでNGワードをリアルタイムに検知してSlackに通知する

こんにちは、エンジニアのyokomachiです

この記事はAmazon Connect Advent Calendar 2024の16日目のエントリとなります。

アドベントカレンダーの一覧はこちら↓

Amazon Connect – Qiita Advent Calendar 2024 – Qiita

 

 

今回はAmazon ConnectのContact Lensルールを使用して、リアルタイムの会話分析→EventBridge→ChatbotによるSlack通知を実装してみます。

これにより、例えば通話やチャットの途中にエージェントが特定のNGワードを話したとき、Slackなどの外部チャットツールにアラートを飛ばすことができるようになります。

今回はチャットで構築しますが、通話の会話分析ルールを使用することで音声通話についても同様にNGワードの検知アラートを実装可能です。

 

フローの会話分析の有効化

チャットで使用するコンタクトフローで会話分析を有効化します。

「記録と分析の動作を設定」ブロックで「チャット分析を有効にする」にチェックを入れます。

その下の言語設定も日本語にしておきましょう。

 

Contact Lensルールの作成

それではさっそくContact Lensのルールを作成していきましょう。

Amazon Connectのルール画面を開き、右上の「ルールを作成」をクリックし、「会話分析」を選択します。

 

まずは条件の定義です。

今回はリアルタイムなチャット分析を選択し、条件を完全一致として「儲かる」や「稼げる」という単語が出た場合に検知するとします。

 

なお、会話分析には他にもパターン一致やセマンティック一致を使用することも可能ですが、セマンティック一致は現在は英語のみの対応となるようです。

次にアクションの定義を行います。

先ほどの条件に合致した場合、EventBridgeイベントを生成するようにアクションを定義します。

 

以上でルールの定義は完了です。お手軽ですね。

 

SNSトピックの作成

EventBridgeからAWS Chatbotに接続するためにSNSトピックを作成します。

スタンダードタイプで特にオプションなどの設定はしません。

 

EventBridgeルールの作成

最後にEventBridgeのルールを作成します。

イベントパターンとしてAmazon Connectの「Contact Lens Reealtime Chat Rules Matched」を選択します。

 

ターゲットには先ほど作成したSNSトピックを設定します。

 

以上で設定は完了です。

デモ

では実際にテスト画面でチャットを行い、NGワードを打ってみます。

 

Slackに以下の通知が届きました。

・・・ちょっと味気ないですね

おまけ:EventBridgeの入力トランスフォーマー

Slackへの通知内容をカスタマイズしたいときはEventBridgeのルールで入力トランスフォーマーを設定しましょう。

ルールの「ターゲット」から編集画面を開き、以下のようにターゲット入力の設定で入力トランスフォーマーを選択します。

 

「入力トランスフォーマーを設定」ボタンから、入力パスとテンプレートを以下のように設定します。

 

もう一度NGワードを発言してみます。

さっきよりは内容が分かりやすく、情報量も増やすことができました。

おわりに

今回はAmazon Connect Contact Lensルールによる会話分析と検知、そしてそこからSlackに通知するためのEventBridgeなどの構築をやってみました。

Amazon ConnectのContact Lensは最近もアップデートが活発ですし、一部は日本語対応することでさらに使いやすくなると思うので今後にも期待ですね。

この記事が気に入ったら
いいね ! しよう

Twitter で

【採用情報】一緒に働く仲間を募集しています

採用情報
ページトップへ