【Amazon Connect】各種フローの役割と実行タイミングまとめ

## はじめに

Amazon Connectのフローを活用すると、顧客からの問い合わせ対応を柔軟にカスタマイズできます。
着信時のルーティング、IVR（自動音声応答）、キュー管理、保留対応、オペレーターへの転送など、様々なシーンで「フロー」を定義することで、意図した顧客体験・業務オペレーションを設計できます。
また、Amazon Connectでの通話操作は、**Contact Control Panel (CCP)** という **Webベースのインターフェース** から実施されるため、オペレーター視点の操作と連動して各種フローが実行される仕組みとなっています。

本記事では、各フローの概要とその実行タイミングに焦点を当てて解説します。

## 本記事の内容

[1.Amazon Connectについて](#1-amazon-connectについて)
[2.フロータイプ一覧](#2-フロータイプ一覧)
[3.各フローの実行タイミング](#3-各フローの実行タイミング)
[まとめ](#まとめ)

## 1. Amazon Connectについて

Amazon Connectは、AWSが提供する**クラウド型のコンタクトセンターサービス**です。従来のオンプレミス型コールセンターと異なり、インフラの管理が不要でスケーラブルな環境を構築できるのが特徴です。

https://aws.amazon.com/jp/connect/

- 主な特徴
  - **クラウドネイティブ**: オンプレミス設備が不要で、ブラウザベースの**CCP**から簡単にオペレーションが可能です
  - **柔軟性**： コンタクトフローやウィスパーフローなど多種多様なフローを組み合わせることで、柔軟な応対シナリオが構築可能です
  - **拡張性**：Lambda、Lex、S3などのAWSサービスはもちろん、Salesforceなどの外部サービスとの連携も可能です

:::note warn
本記事では、**各フローの概要**とその**実行タイミング**に焦点を当てて解説します。
CCPの操作手順や、フローブロックの詳細設定方法には踏み込みませんので、そちらを知りたい場合は別資料を参照してください。
:::

## 2. フロータイプ一覧

Amazon Connectでは以下9種類のフロータイプが存在します。(2025年5月時点)

https://docs.aws.amazon.com/connect/latest/adminguide/create-contact-flow.html#contact-flow-types

| フロータイプ                   | 説明                                                                                                                    | フローの対象         |
| ------------------------------ | ----------------------------------------------------------------------------------------------------------------------- | -------------------- |
| コンタクトフロー(インバウンド) | 着信時の顧客体験を記述する汎用のフロー <br/> 顧客へのアナウンス（プロンプトの再生）や番号入力による分岐、他処理が行える | 顧客                 |
| 顧客キューフロー               | 顧客がキューで滞留している際に、顧客が体験するフロー                                                                    | 顧客                 |
| 顧客ウィスパーフロー           | エージェントに繋がる直前に、顧客が体験するフロー                                                                        | 顧客                 |
| エージェントウィスパーフロー   | 顧客に繋がる直前に、エージェントが体験するフロー                                                                        | エージェント         |
| 顧客保留フロー                 | エージェント側で通話を保留とした場合に、保留中に顧客が体験するフロー                                                    | 顧客                 |
| エージェント保留フロー         | エージェント側で通話を保留とした場合に、保留中にエージェントが体験するフロー                                            | エージェント         |
| 発信ウィスパーフロー           | エージェントが発信した際に顧客が体験するフロー                                                                          | 顧客                 |
| エージェントへの転送フロー     | エージェントから別のエージェントへ通話が転送される際に、転送元のエージェントが体験するフロー                            | エージェント(転送元) |
| キューへの転送フロー           | エージェントからキューへ通話が転送される際に、転送元のエージェントが体験するフロー                                      | エージェント(転送元) |

## 3. 各フローの実行タイミング

### 3.1 エージェント受電時

以下の図は、顧客が電話をかけてからエージェントに接続されるまでの処理を示したものです。
![AmazonConnect受電フロー-.drawio.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/16dc4102-c440-405b-8d81-367c2b2d9101.png)

以下、図中①〜⑤の補足です。

#### ① コンタクトフローの実行

- 顧客が電話番号に発信すると、Amazon Connectのシステムがその着信を検知し、最初のエントリーポイントとなるコンタクトフローが自動的に開始されます
- この時点ではまだ顧客とエージェントは**接続されておらず**、システム内部で定義された一連の処理がスタートします
- 「作業キューの設定」ブロックにより、問い合わせの転送先となるキューを指定することができます。(参考:下図①) [^1]
- フロー内で「キューへ転送」ブロックが実行されると、通話は **指定されたキューに関連付けられた「顧客キューフロー」** へと遷移します。(参考：下図②)
  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/c092f4a5-1bef-4640-be3a-2aeb5b827084.png)

##### モジュールの呼び出し

- コンタクトフローでは、「呼び出しモジュール」ブロックを利用して、**共通処理を外部化**した**フローモジュール**を呼び出すことができます
- フローモジュールは、**再利用されるロジックをひとまとめにして管理できるサブフロー**で、「営業時間の判定」や「顧客情報の取得」などの汎用的な処理を管理するのに使われます
- 共通処理をモジュール管理することで、**複数のフローで再利用が可能**です
- 処理が完了すると呼び出し元のフローに戻り、後続の処理が再開されます

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/68d62559-d602-4972-b11b-19c9d2e530c0.png)



#### ② 顧客キューフローの実行

- **顧客キューフロー**は、顧客が「キューへ転送」ブロックを通過し、**エージェントに接続されるまでの間に実行**されるフローです
- キューへ転送された顧客の待ち時間に応じた顧客体験を定義できます
  - 例1. 待ち時間の間、定期的に「順番にお繋ぎしておりますので、しばらくお待ちください。」などのメッセージや保留音楽を再生する
  - 例2. 「キューA」へ転送 → 指定時間経過 →「キューB」へ転送

#### ③ エージェント割り当てと受電

- 対応可能なエージェントから選出され、自動で通話を割り当てます
- エージェントが **Contact Control Panel（CCP）** から「受電」操作を実行すると、ウィスパーフローの実行が開始されます

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/404eae14-40d3-4945-ab02-623373abfbe0.png)

#### ④ ウィスパーフローの実行と通話開始

- **ウィスパーフロー**は、顧客とエージェントが**通話を開始する直前**に、それぞれに対して特定のメッセージを再生するために実行されるフローです
- 実行タイミングは同時ではなく、**エージェントウィスパーフロー** -> **顧客ウィスパーフロー**の順で実行されます
- エージェントに対し再生するメッセージはエージェントウィスパーフローで設定し、顧客に対し再生するメッセージは顧客ウィスパーフローで設定します

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/4a503662-6cde-4055-8686-e3689d63f438.png)

#### ⑤ 保留フローの実行と通話再開

- **保留フロー**は、**エージェント**が通話中に「保留」を行なった際に実行されるフローです
- **顧客保留フロー**：保留状態の顧客に対し、保留音やメッセージを再生するために実行されるフローです
- **エージェント保留フロー**：保留状態のエージェントに対し、保留音やメッセージを再生するために実行されるフローです

その後、エージェントがCCP上の「再開」ボタンをクリックすると、保留が解除(保留フローでの処理が終了)され、通話が再開されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/31d1e1f4-95b2-4dc1-a939-1d3f23e84ad7.png)

### 3.2 エージェント架電(発信)時

以下の図は、エージェントが電話をかけてから顧客に接続されるまでの処理を示したものです。

![AmazonConnect架電フロー.drawio.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/d3730d3b-9e50-42c1-9684-4ab577a330de.png)

以下、図中①の補足です。

#### ① 発信ウィスパーフローの実行

- **発信ウィスパーフロー**は、エージェントがAmazon Connectから顧客へ発信する際に実行されるフローです
- 通話が開始される直前の顧客体験を定義できます
**※発信時のエージェント側体験を定義するフロータイプは存在しません**

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/6eb8554f-d461-40a5-8ead-46fcf47113ad.png)

### 3.3 エージェント転送時

以下の図は、エージェントが顧客との通話中に転送操作を実行してから通話が転送されるまでの処理を示したものです。

![AmazonConnect転送フロー.drawio.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/c6bbe509-e216-42cc-9407-21682f703dde.png)

以下、図中①〜②の補足です。

#### ① 「クイック接続」の実行

- エージェントはCCP上の「クイック接続」を使用することで、他のエージェントへ通話を転送することができます

- 転送が開始されると、転送元エージェントと顧客との通話は一時的に保留状態となります
- この際、**エージェント側では 「エージェント保留フロー」** が、**顧客側では 「顧客保留フロー」** がそれぞれ実行されます

- 転送先エージェントが受電すると、**転送元エージェント**の保留が解除され、転送先エージェントと転送元エージェントの2者間での通話が開始され、通話内容の引き継ぎ等を行うことができます(このとき顧客は保留状態となります)。[^2]

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/2e4c8965-7a85-402d-ac01-fbc6ec2945c7.png)

#### ② クイック接続による転送フローの実行[^3]

- エージェントが通話中に **「クイック接続」** を使用して通話を転送する際には、転送先の種類に応じて以下のいずれかのフローが実行されます：
- エージェントタイプ(図中「`suzuki_agent_transfer`」)を選択 → エージェントへの転送フローが実行されます
- キュータイプ(図中「`suzuki_queue_transfer`」)へ転送 → キューへの転送フローが実行されます

:::note warn
通話の転送先に「外部の電話番号」を指定することも可能です。
なお、外部転送時における**転送元エージェントが体験するフロータイプは存在しません。**
:::

![クイック接続_転送先指定.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3843906/fafce82e-d441-4855-b6c0-ae0764a96981.png)

## まとめ

本記事では、**Amazon Connectにおける各種フローの概要と実行タイミング**について解説しました。  
コンタクトフロー、顧客キューフロー、ウィスパーフロー、転送フロー、保留フローなど、計9種類のフローにはそれぞれ異なる役割と実行条件が存在するため、動作仕様を正しく認識し、適切に設定する事が重要です。


---

### 参考

- [Amazon Connect管理者ガイド](https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/what-is-amazon-connect.html)
- [コンタクトフロー解説 - Amazon Connect再入門シリーズ](https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2022_AmazonConnect-ContactFlow_1117_v1.pdf)

---

### 注釈

[^1]:「作業キューの設定」ブロックは、『コンタクトフロー』のほか、『エージェントへの転送フロー』、『キューへの転送フロー』内で使用できます。また、「キューへ転送」ブロックの前に配置しキューを指定する必要があります。([参考: Flow block in Amazon Connect: Set working queue](https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/set-working-queue.html))

[^2]:参考：CCP上の「参加」ボタンや「スワップ」ボタンによる通話操作
[Quick connect scenarios for transferring contacts](https://docs.aws.amazon.com/connect/latest/adminguide/how-quick-connects-work.html)

[^3]:参考：CCPからクイック接続または外部番号に転送する方法
[Transfer calls to a quick connect or external phone number using the Contact Control Panel (CCP)](https://docs.aws.amazon.com/ja_jp/connect/latest/adminguide/transfers.html)