← Back to Guides GN Logo

πŸ“ Prompt Management – User Guide

πŸ“

Overview

1 of 9

The Prompt Management tool lets you edit IVR prompt text stored in Amazon Connect Data Tables directly from the portal β€” no need to open the Connect console or redeploy flows. Changes take effect immediately for the next caller.

🌐

Multi-Region

Edit prompts in US, EU, JP, and AU regions from one interface.

🌍

Multi-Language

Each prompt row can have columns for different languages (EN, DE, etc.).

πŸ”Š

TTS Preview

Listen to how the prompt sounds using Amazon Polly before saving.

πŸ”’

Access Control

Data Table access is managed via Cognito groups in User Management.

πŸ’‘

Key Concepts

2 of 9

Before using the tool, it helps to understand how Amazon Connect Data Tables work and how they relate to your contact flows.

What is a Data Table?

A Data Table is a key-value store built into Amazon Connect. Think of it like a spreadsheet: each row has a Prompt Key (the lookup value) and one or more columns containing data β€” in our case, prompt text.

Column Naming Convention

For multi-language prompts, we use this naming pattern:

Column Name Purpose Example Value
Prompt-Key The lookup key (read-only in portal) Welcome
Prompt-EN English prompt text (SSML) <speak>Welcome to GN Hearing.</speak>
Prompt-DE German prompt text (SSML) <speak>Willkommen bei GN Hearing.</speak>
Description Notes about where/when the prompt is used Main welcome greeting
⚠️ Case Sensitivity: Column names and Prompt Key values are case-sensitive in Connect. Welcome and welcome are treated as different keys. Always match the exact casing in both the Data Table and the flow.
πŸ—‚οΈ

Setting Up a Data Table

3 of 9

Create the Data Table in the Amazon Connect console before using the portal to edit it.

  1. 1 Go to the Amazon Connect console β†’ your instance β†’ Data Tables (under Routing).
  2. 2 Click Create data table. Name it descriptively, e.g. GNH-DE-Prompts or Test Flow.
  3. 3 Add columns for each language you need. Use the naming convention Prompt-XX where XX is a short language code (EN, DE, FR, etc.).
  4. 4 Add a Description column (optional) for documentation.
  5. 5 Add rows for each prompt. The first column is the Prompt Key (e.g. Welcome, ClosedMessage, HoldMusic).
πŸ’‘ Tip: You can also add a Prompt-Key column if you want a separate human-readable name. The portal recognizes columns starting with Prompt- as language columns.

Example Data Table

Prompt-Key Prompt-EN Prompt-DE Description
Welcome <speak>Welcome to GN Hearing. Press 1 for orders, 2 for support.</speak> <speak>Willkommen bei GN Hearing. DrΓΌcken Sie 1 fΓΌr Bestellungen, 2 fΓΌr Support.</speak> Main menu greeting
Closed <speak>We are currently closed. Please call back during business hours.</speak> <speak>Wir sind derzeit geschlossen. Bitte rufen Sie wΓ€hrend der GeschΓ€ftszeiten an.</speak> After-hours message
πŸ–₯️

Using the Prompt Management Portal

4 of 9
  1. 1 Navigate to Prompt Management from the main portal.
  2. 2 Select the Region where your Data Table exists (e.g. EU Frankfurt).
  3. 3 Select the Data Table from the dropdown. The prompts will load automatically.
  4. 4 Click Edit on any prompt row to open the editing modal.
  5. 5 Switch between language tabs (KEY, DE, EN, etc.) to edit each translation.
  6. 6 Click Save Changes. The Data Table is updated immediately.
ℹ️ Auto SSML wrapping: You don't need to type <speak> and </speak> tags β€” the portal adds them automatically when saving language prompts. The KEY tab is always read-only.
πŸ”§

Connect Flow Setup (Single Language)

5 of 9

Here's how to wire up a Connect flow to read a prompt from a Data Table and play it. This example uses a single language.

Flow Diagram

β–Ά Entry β†’ πŸ”Š Set Voice
e.g. Joanna
β†’ πŸ“‹ Data Table
Evaluate: "Welcome"
β†’ πŸ”ˆ Play Prompt
SSML, Dynamic
β†’ ⏭ Next block

Step-by-Step

  1. 1 Set Voice block: Set the Amazon Polly voice (e.g. Joanna for English, Vicki for German). This determines how the TTS sounds.
  2. 2 Data Table block (Evaluate Table):
    β€’ Table: Select your Data Table (e.g. Test Flow)
    β€’ Query Key: Enter the Prompt Key value, e.g. Welcome
    β€’ Attribute to return: Select the column, e.g. Prompt-EN
  3. 3 Play Prompt block:
    β€’ Set Interpret as: to SSML
    β€’ Set Source: to Dynamic
    β€’ Set Attribute: to Data tables > Welcome.Prompt-EN
    (The dynamic reference is: $.DataTables.Welcome.Prompt-EN)
⚠️ Critical – Case Sensitivity: The query key in the Data Table block must exactly match the Prompt Key in the Data Table. Welcome β‰  welcome. A mismatch causes the Data Table block to take the Error branch, which typically disconnects the caller.
⚠️ Critical – SSML Tags: The Play Prompt block must be set to SSML interpretation. The portal wraps all language prompts in <speak>...</speak> tags automatically. If the tags are missing, the call may fail or speak the raw XML.
🌍

Multi-Language Flow Setup

6 of 9

Connect Data Tables do not automatically select a language column based on the caller's language. You must explicitly branch in your flow to pick the correct column.

ℹ️ How it works: Each language is a separate column in the Data Table (e.g. Prompt-EN, Prompt-DE). Your flow must check the language and use the matching column reference in the Play Prompt block.

Recommended Flow Pattern

β–Ά Entry β†’ πŸ“‹ Data Table
Evaluate: "Welcome"
Return: Prompt-EN & Prompt-DE
β†’ πŸ”€ Check Attribute
Language = ?
en-US / en-GB
πŸ”Š Set Voice
Joanna
β†’ πŸ”ˆ Play Prompt
$.DataTables.Welcome.Prompt-EN
de-DE
πŸ”Š Set Voice
Vicki
β†’ πŸ”ˆ Play Prompt
$.DataTables.Welcome.Prompt-DE

Step-by-Step

  1. 1 Data Table block: Evaluate the prompt key (e.g. Welcome). Return all language columns you need (Prompt-EN, Prompt-DE). The results are available as $.DataTables.Welcome.Prompt-EN etc.
  2. 2 Check Contact Attributes block:
    β€’ Type: User Defined or System
    β€’ Attribute: Your language attribute (e.g. Language or $.LanguageCode)
    β€’ Conditions: Add one per language: en-US β†’ EN branch, de-DE β†’ DE branch, etc.
  3. 3 Per branch β€” Set Voice: Use a voice matching the language (e.g. Joanna for English, Vicki for German).
  4. 4 Per branch β€” Play Prompt: Set to SSML, Dynamic. Reference the correct Data Table column:
    β€’ EN: $.DataTables.Welcome.Prompt-EN
    β€’ DE: $.DataTables.Welcome.Prompt-DE
πŸ’‘ Setting the Language: The language attribute should be set early in the flow β€” either from the customer's profile, from an IVR selection ("Press 1 for English, 2 for German"), or from a Set contact attributes block based on the dialled number.

Common Voice / Language Mapping

Language Column Recommended Neural Voice
English (US)Prompt-ENJoanna (Female) / Matthew (Male)
English (UK)Prompt-ENAmy (Female) / Brian (Male)
GermanPrompt-DEVicki (Female) / Daniel (Male)
FrenchPrompt-FRLΓ©a (Female) / RΓ©mi (Male)
SpanishPrompt-ESLucia (Female) / Sergio (Male)
ItalianPrompt-ITBianca (Female) / Adriano (Male)
JapanesePrompt-JPKazuha (Female) / Takumi (Male)
KoreanPrompt-KRSeoyeon (Female)
DanishPrompt-DKSofie (Female)
DutchPrompt-NLLaura (Female)
πŸ”Š

Text-to-Speech Preview

7 of 9

The Edit Prompt modal includes a built-in TTS Preview feature. You can listen to how your prompt text will sound before saving.

  1. 1 Open a prompt and switch to the language tab you want to preview (e.g. DE or EN).
  2. 2 In the Text-to-Speech Preview section at the bottom, select a voice matching the language (e.g. (DE) Vicki for a German prompt).
  3. 3 Click β–Ά Play. The text is sent to Amazon Polly and played back in your browser.
  4. 4 Click ⏹ Stop to stop playback at any time.
πŸ’‘ Tip: The preview always reads the text from the currently active language tab. Switch to the tab you want to hear before pressing Play.
ℹ️ SSML in preview: The preview automatically wraps your text in <speak> tags. You can use SSML inside your text (e.g. <break time="500ms"/>) and it will be interpreted by Polly. Use the SSML Quick Reference section in the modal to copy common tags.
πŸ“’

System Status Message (Enable / Disable)

8 of 9

You can use any prompt row as a switchable announcement. When you need to notify callers (e.g. outage, maintenance, holiday hours), type your message into the prompt text. When it's no longer needed, change the text to none and the flow skips it automatically — no flow changes needed.

How It Works

The flow reads the prompt text from the Data Table, then uses a Check Contact Attributes block to see if the value equals none. If it does, the prompt is skipped. If it’s anything else (i.e. an actual message), the caller hears the announcement.

This works with any prompt row — system status, welcome messages, holiday greetings, maintenance notices, etc. Any prompt whose text is none will be skipped by the flow.

Portal Usage

  1. 1 Enable: Edit the prompt (e.g. sysstatus) and type your message. Save.
  2. 2 Disable: Edit the same prompt and replace the text with none (lowercase). Save. Callers will no longer hear it.

Flow Setup

Add a Check Contact Attributes block after the Data Table block:

📋 Data Table
Evaluate: "sysstatus"
Return: Prompt-EN
🔀 Check Attribute
$.DataTables.sysstatus.Prompt-EN
= none (disabled)
⏩ Skip prompt
Continue to queue / next step
No Match (message active)
🔈 Play Prompt
$.DataTables.sysstatus.Prompt-EN

Step-by-Step

  1. 1 Data Table block: Evaluate the prompt key (e.g. sysstatus). Return the Prompt-EN column (and any other language columns you use).
  2. 2 Check Contact Attributes block:
    Type: External
    Attribute: sysstatus.Prompt-EN
    Condition: Equalsnone
  3. 3 = none branch: No announcement needed — skip to the next step in your flow (e.g. queue, menu, etc.).
  4. 4 No Match branch: The prompt contains a real message. Connect this to the Play Prompt block that reads the text aloud.
💡 Use case — System Status: Create a sysstatus row with initial text none. When there’s an incident, a manager edits it in the portal to the announcement message. When the incident is resolved, change it back to none. No extra columns, no flow editing required.
💡 Works with any prompt: The same pattern works for welcome messages, holiday greetings, maintenance windows, or any other prompt. Just set the text to none when it should be silent, and type a real message when it should play.
ℹ️ Multi-language: If you use multiple languages (e.g. Prompt-EN, Prompt-DE), set all language columns to none when disabling. The flow should check the relevant language column.
⚑

Tips & Common Pitfalls

9 of 9
⚠️ Case-sensitive keys: The #1 cause of "call drops after Data Table block" is a case mismatch. If your Data Table row key is Welcome, the flow must query Welcome, not welcome.
⚠️ SSML interpretation: The Play Prompt block must be set to "Interpret as: SSML" when the text contains <speak> tags. If set to "Text", the caller hears the raw XML markup spoken aloud.
πŸ’‘ Error branch: Always connect the Error output of the Data Table block to something useful (e.g. a fallback Play Prompt with a hardcoded message, or a Transfer to Queue). If left disconnected, a failed lookup disconnects the caller.
πŸ’‘ Changes are instant: When you save a prompt in the portal, it immediately updates the Data Table. The very next caller will hear the new text. There is no deployment or cache delay.
ℹ️ Access control: Data Table access is controlled via Cognito groups. Ask a ConnectTools-Admin to grant your group access via User Management β†’ Groups β†’ Data Table Access Groups.
πŸ’‘ Test with Polly TTS: You can also test prompt text in the Polly TTS Preview tool for more control over voice, speed, and download as MP3.