Amazon Connect ワークスペースでデータテーブルを更新し、着信フローを切り替える「緊急スイッチ」を作ってみた
はじめに
2025年11月のアップデートにより、Amazon Connect でカスタム UI を作成・表示できる「Amazon Connect ワークスペース」機能が追加されました。
この機能により、管理者やエージェントといった役割ごとに最適化された専用ダッシュボードを作成できるようになりました。
特に、「Data Tableコンポーネント」と「ワークスペース」を組み合わせることで、運用の柔軟性が大きく向上します。
従来、緊急時のアナウンス切り替えなどを行うには、管理者がコンタクトフローを直接編集して公開し直すか、別途開発したツールを使う必要がありました。
また、「データテーブルを直接編集すれば良いのでは?」と思われるかもしれませんが、データテーブルの管理画面はすべてのデータが表示されるため、誤って別の設定を削除してしまうリスクがあります。
しかし本機能を使えば、「必要なスイッチだけ」をフィルタリングして表示し、トップページから安全かつ直感的に操作できるようになります。
本記事では、この機能を活用して、現場担当者(スーパーバイザーなど)向けの「緊急モード切り替えスイッチ」を作成する手順を解説します。
実現する構成
- データテーブル: スイッチの状態(ON/OFF)を保存する場所。
- Views(ビュー): スイッチを操作する「画面(UI)」を作成する機能。
- Workspace(ワークスペース): 作成したビューをConnect管理画面に表示させる設定。
- Connectフロー: 電話着信時にデータテーブルを参照し、通常/緊急を分岐させるフロー。
データテーブルの作成
まず、スイッチの状態を保存するためのデータテーブルを作成します。
Amazon Connect コンソールの「ルーティング」>「データテーブル」から「データテーブルを作成」をクリックし、名前を EmergencySwitchTable とします。

属性(列)の定義
以下の2つの属性を追加します。
-
SettingKey
- プライマリ属性として設定
- タイプ:テキスト
- 役割:スイッチを特定するための「名前(ID)」

-
IsActive
- タイプ:ブール値
- 役割:スイッチの「ON/OFF状態」

レコード(行)の追加
テーブル作成後、実際に使用するスイッチのデータを1行追加します。
- SettingKey:
MainSwitch - IsActive:
false(初期状態はOFF)

なお、テーブル作成時に自動生成される デフォルト という値の行は削除できない仕様のため、そのまま残しておきます。(後ほどView側でフィルタリングして非表示にします)

Connectフロー(着信時)の作成
電話がかかってきた際に、データテーブルの値を読み取って分岐するフローを作成します。

-
データテーブル ブロック
- 作成した
EmergencySwitchTable - クエリ名:
GetStatus - 検索条件:
SettingKeyがMainSwitchと等しい固定値を設定します。 - クエリ属性:
IsActiveを指定します。(この設定により、IsActiveの値が後続のブロックで利用可能になります)

- 作成した
-
コンタクト属性を確認する ブロック
先ほど取得したIsActiveの値をチェックします。- 確認する属性のタイプ:
データテーブル - データテーブルのキー:
GetStatus.IsActive - 条件:
true,falseと等しい

- 確認する属性のタイプ:
-
プロンプトの再生 ブロック(分岐先)
- Trueの場合: 「現在、緊急メンテナンス中です...」などの緊急アナウンスを流します。
- False: 通常のアナウンスを流します。
ビュー(操作画面)の作成
次に、スイッチを切り替えるための画面を作成します。
Amazon Connect コンソールの「Views」から「ビューを作成」をクリックします。
- 名前:
EmergencySwitchView - 目的タイプ: Workspace Page

Data Table コンポーネントの設定
画面左側のコンポーネント一覧から [Data Table] をドラッグ&ドロップし、以下の設定を行います。
- Data Table:
EmergencySwitchTable - Mode:
Read and Write- ここをWrite可能にすることで、更新用のフローを作成することなく、画面操作だけで直接データテーブルを書き換えることができます。
- Display:
Table - Primary Values 1 (フィルタリング設定)
- Attribute Name:
SettingKey - Value:
MainSwitch
- Attribute Name:

フィルタリング設定について
Primary Valuesを設定することで、画面上には MainSwitch の行だけが編集可能となり、編集対象を限定できます。

もしこの設定を行わない場合、削除できない仕様の「デフォルト」行や、他の設定行まで表示・編集できてしまい、誤操作の原因となります。
▼ フィルタリングなしの状態(Default行が見えてしまっている)

設定が完了したら、ビューを「公開」します。
ワークスペース(表示設定)
作成したビューを、Connectの管理画面に表示させるための設定を行います。
「ワークスペース」 を新規作成します。
- 名前:
EmergencySwitchWorkSpace

ページの追加
「ページを追加」をクリックし、以下のように設定します。
- 既存の接続ページを使用する
- ページ:
ホーム(Connect管理トップページ) - 表示:
EmergencySwitchView(先ほど作成したビュー)
これにより、Connectにログインした直後のホーム画面(ダッシュボード)にスイッチが表示されるようになります。

割り当て
このワークスペースを表示させるユーザー(セキュリティプロファイルまたは特定のユーザー)を選択します。

設定を保存します。
動作確認
対象ユーザーでAmazon Connect管理画面にログイン(またはリロード)します。
トップページに、作成したデータテーブルのビューが表示されました。

「書き込み」モードに切り替えると、false を変更できます。
MainSwitch の行のみが編集可能なため、迷うことなく操作可能です。


修正できました。これで、電話着信時のフローがこの値を参照し、緊急アナウンスへ切り替わるようになります。

補足:カスタムページとして表示する場合
ホーム画面ではなく、左側メニューの専用アイコンから開く「カスタムページ」として設定することも可能です。
ワークスペース設定の「カスタムページスラッグでページを設定」を使用します。
- ページスラッグ:page/EmergencySwitchView


設定すると、サイドバーにアイコンが出現し、クリックすると専用URLでビューが表示されます。

補足:エージェントワークスペースに表示させる場合
エージェントワークスペース(CCP)上にこのビューを表示させることも可能ですが、「常時表示」はできない点に注意が必要です。
エージェントワークスペースの「ガイド(Guides)」機能は、あくまでエンドユーザーからの問い合わせ(コンタクト)に対応するための機能であるため、通話やチャットが発生していない待機状態では表示されません。
実装する場合は、以下の手順が必要です。
- 表示用フローの作成:
「ビューを表示」ブロックを配置し、作成したEmergencySwitchViewを指定したフロー(例:ShowEmergencyViewFlow)を作成します。 - インバウンドフローの設定:
着信フローの中に**「イベントフローの設定」**ブロックを配置し、「エージェントUIのデフォルトフロー」として、上記 1 で作成したフローを指定します。
これにより、電話着信時(通話中)のみスイッチ画面を表示させることが可能です。
参考







