# Building IVR menus and collecting digits in Webex Contact Center flows

Systems: Webex Contact Center

For Webex Contact Center administrators and flow developers adding IVR menus and digit collection to a voice flow that is already mapped to an entry point.

Canonical: https://warmtransfer.net/guides/wxcc-ivr-menu-setup

Last verified: 2026-10-02

Text-to-speech in Webex Contact Center is supported in the Play Message, Menu and Collect Digits activities[^45]. Cisco's IVR labs add each menu choice as a custom menu link on the Menu activity and wire each link output to a following activity, and a Cisco TAC technote returns callers to the Menu after a wrong option or timeout by incrementing a counter, then plays a message and disconnects when the limit is reached[^30][^18][^19].

## Before you start

- Accessing Flow Designer requires a Premium Agent License plus a user profile with rights to edit flows[^62].
- An Entry Point associates an inbound telephone number with a flow, and inbound numbers must be mapped to entry points as part of PSTN provisioning[^63].
- Webex Contact Center requires calls to arrive using the G.711 uLaw or G.711 aLaw codec[^64].
- Webex Contact Center's PSTN media and signalling requirements list RFC2833 as the DTMF method for calls arriving at Webex Contact Center[^65].
- A flow can contain a maximum of 30 variables in total, counting all global variables plus custom flow variables[^66].
- Flow Designer undo and redo covers the last 10 canvas actions[^67].
- For testing, have an agent who can sign in to Agent Desktop and go Ready, as Cisco's Lab 3 does before placing test calls[^35].

## What changes by situation

- How does the caller first interact with the IVR? Touch-tone menu built with the Menu activity; Webex AI Agent at the front, with DTMF allowed; Dialogflow CX/ES or Bring Your Own Virtual Agent through Virtual Agent V2.
- How are prompts produced? Text-to-speech in the activity; Pre-recorded .wav files.
- Do you also need a multi-digit entry such as an account number or PIN? No, only single-key choices or the bot handles everything; Yes, collect a digit string with Collect Digits.
- When a touch-tone Menu gets no input or an invalid key, what happens? Go straight to the default route on the first failure; Return to the Menu up to a fixed number of times, then take the default route.
- Where does a caller go when attempts run out? Into a general queue for an agent; A goodbye message, then the call is disconnected.

## Step 1: Prepare the prompts

**Text-to-speech in the activity**

### Do
Text-to-speech is supported in the Play Message, Menu and Collect Digits activities[^45]. On the Next Generation voice media platform, choose Cisco TTS or Google TTS as the connector in each activity's Prompt settings, along with a voice[^47]. The next generation media platform is the default for all new Webex Contact Center trials and subscriptions during activation[^68]. Cisco TTS supports 22 languages with 2 voices per language[^46]. To override the default TTS language and voice, use a Set Variable activity with the global variables Global_Language and Global_VoiceName[^49]. If you use SSML, its mandatory root element is `<speak>`, and supported tags include break, say-as, audio, prosody, sub, p and s[^50]. A 2024 Cisco developer blog says Play Message, Collect Digits and Menu support dynamic TTS, using expressions to insert custom data and SSML to change intonation[^48].
### Verify
Suggested check: during the test calls in Step 9, listen to every prompt and confirm the voice, the language and any inserted values.
### Rollback
Suggested rollback: change the prompt text or turn off text-to-speech in the activity, then validate and publish again.

**Pre-recorded .wav files**

### Do
Record each prompt as a.wav file, mono, 8 kHz sample rate and 8-bit u-law encoding, with a maximum size of 5 MB[^5]. Upload each file in Control Hub under Services > Contact Center > Customer Experience > Audio files with Create Audio file[^7]. An Audio Files API upload is also possible, as multipart form data with a JSON audioFileInfo part whose contentType is AUDIO_WAV or AUDIO_X_WAV and a binary audioFile part[^69].
### Verify
Suggested check: confirm each file appears in the audio files list, then listen for it during the test calls in Step 9.
### Rollback
The system does not support updating audio files that are in use, and the file's Referenced by section lists what uses it[^6]. The Audio Files API's List References operation shows which variables in which flows are tied to a given audio file[^70]. Suggested rollback: remove the file from every activity listed under Referenced by, then replace or delete it.

## Step 2: Create global variables for anything you will report on

### Do
Global variables are created by an administrator in the Provisioning module of Control Hub, and flow developers then add, edit the default value of, or remove them inside a flow[^71]. A global variable can be Boolean, String (up to 256 characters), Integer, Decimal or DateTime[^28]. Its name can be up to 80 characters of letters, digits and underscores[^23]. Only up to 100 global variables can be enabled for reporting at a time[^26]. Cisco says never to store secure data such as credit card numbers, PINs or social security numbers in global variables[^25]. Global variables cannot be marked as secure; only custom flow variables can be marked secure[^72]. A flow variable marked Secure is not logged or stored by the system and is masked in the Flow Debugging pane[^73]. If the menu sits inside a subflow, map the global variable from the main flow to a local subflow variable, because global variables cannot be added directly inside subflows[^27].
### Verify
Suggested check: confirm the variable is listed as active and reportable, and that you can add it to the flow.
### Rollback
Global variables cannot be deleted; a variable can only be deactivated, and only when no flow uses it[^24]. Suggested rollback: remove the variable from every flow that uses it, then deactivate it.

## Step 3: Build the front end

**Touch-tone menu built with the Menu activity**

### Do
Add a Menu activity and add each menu choice as a custom menu link, wiring each link output to a following activity, as Cisco's IVR lab does[^30]. Cisco's Lab 3 builds a Menu with 3 options, 2 that route to queues and 1 blind transfer, and asks builders to configure every Menu field including prompts and entry timeout[^36]. Tick Make Prompt Interruptible: Cisco's IVR lab tells builders to, and the Lab 3 guide recommends making all Menu steps interruptible so callers can bypass the prompt[^33]. Cisco's IVR lab sets the Menu's Advanced Settings Entry Timeout to 10 seconds to give callers enough time to complete DTMF entry[^31].
### Verify
Suggested check: during the test calls in Step 9, press each configured key and confirm the call follows its link.
### Rollback
Suggested rollback: delete the Menu activity or the individual link, then validate and publish again.

**Webex AI Agent at the front, with DTMF allowed**

### Do
Open the agent's Configuration > Conversation tab in AI Agent Studio, where Webex AI Agent DTMF input settings are configured[^2]. Set the timeout between 2 DTMF digits, which can be 2 to 10 seconds and defaults to 5 seconds[^1][^74]. Set the termination character the caller uses to end input, which can be # or *[^4]. Set the maximum DTMF input length, which can be 8 to 32 characters and defaults to 16[^3]. Webex AI Agent can play an AI transparency disclosure on voice channels that callers cannot interrupt and that plays before the welcome message[^75]. The disclosure is configured at the AI agent level and applies to both scripted and autonomous AI agents[^76]. In European regions it is enabled by default, and administrators who disable it must acknowledge the risks and add audit comments[^77]. Outside European regions, administrators choose whether to enable it and can configure its message, and Cisco recommends enabling it as a best practice[^78].
### Verify
Suggested check: on a test call, key a long number, end it with the termination character, and confirm the agent acts on the whole string.
### Rollback
Suggested rollback: restore the previous DTMF values on the same tab.

**Dialogflow CX/ES or Bring Your Own Virtual Agent through Virtual Agent V2**

### Do
For a Dialogflow or BYOVA bot, note that the Virtual Agent V2 DTMF defaults are documented for Google Dialogflow CX, Google Dialogflow ES and Bring Your Own Virtual Agent[^58]. Design the bot around fixed DTMF behaviour: # as the termination symbol, a 5-second no-input timeout, a 3-second inter-digit timeout, barge-in enabled and an infinite number of retries for invalid or no input[^59]. These settings do not appear in the user interface and cannot be changed[^60]. Do not place Virtual Agent V2 immediately after a Queue Contact activity or in the Event Flow canvas, because both are unsupported[^79]. Neither placement produces a runtime warning[^80]. Virtual Agent V2 has a Handled path, an Escalated path for a call that must go to a human agent, and an Errored path[^81]. Dialogflow CX processes DTMF only through telephony integrations, where key presses are converted to text end-user input[^82]. Dialogflow CX DTMF can be enabled at agent level, at flow or page level, and at parameter level[^83]. If the flow uses the original Virtual Agent activity instead, its terminator symbol is # or * depending on configuration[^53]. Its Inter-digit Timeout defaults to 3 seconds and can range from 0 to 30 seconds[^55]. Its No-Input Timeout defaults to 5 seconds and can range from 1 to 30 seconds[^57]. Its Make Prompts Interruptible setting lets callers interrupt the virtual agent to make new requests or end the call[^56].
### Verify
Suggested check: on a test call, enter digits, end them with the terminator, and confirm the bot receives them.
### Rollback
Suggested rollback: remove the activity and reconnect the flow to its previous path.

## Step 4: Collect and check a digit string

**No, only single-key choices or the bot handles everything**

### Do
In Cisco's IVR labs, Collect Digits is the activity configured for a multi-digit PIN, set to 5 digits minimum and maximum[^29].
### Verify
Suggested check: confirm the flow contains no unused digit-collection activity.

**Yes, collect a digit string with Collect Digits**

### Do
Add a Collect Digits activity with its prompt; text-to-speech is supported in Collect Digits[^45]. Cisco's IVR labs set Collect Digits to 5 digits minimum and maximum for a PIN and tell builders to make sure its timeouts are set[^29]. In the field, practitioners validate caller-entered digits in a Condition with the Pebble length filter, for example checking that a callback number has 10 digits and reprompting otherwise[^15]. Field reports suggest that Condition expressions accept ==,!=, <, >, <=, >=, +, -, * and / and the logical words and, or and not, as a partner blog reports[^16]. Cisco's TAC technote writes Condition expressions in the double-brace form {{Timeout >= n}}[^17]. In the field, expression fields show a small `</>` button that opens a tester for assigning sample variable values and previewing the result[^22]. If the string is a PIN, keep it out of global variables, because Cisco says never to store PINs there[^25].
### Verify
Flow validation only checks for structural errors and cannot confirm that variables resolve to expected values at runtime[^84]. Suggested check: run the expression tester with a valid sample and a short one, then place test calls that enter too few digits and no digits.
### Rollback
Suggested rollback: delete the Collect Digits and Condition activities, reconnect the flow, then validate and publish again.

## Step 5: Store the caller's input in variables

**Touch-tone menu built with the Menu activity**

### Do
This is disputed: a 2023 Cisco TAC technote tells administrators to add a Set Variable activity after the Menu activity and map a global variable to the Menu node's output variable DigitsEntered[^38]. Map the output only to a non-secure value, because Cisco says never to store PINs or other secure data in global variables[^25].
### Verify
A reportable global variable set from the Menu output appears as a profile variable in Analyzer's Customer Session Record report[^37]. Suggested check: after the test calls in Step 9, find each call's record and confirm the stored menu choice.
### Rollback
Suggested rollback: remove the Set Variable activity, then validate and publish again.

**Webex AI Agent at the front, with DTMF allowed**

### Do
A Webex developer blog describes 5 categories of flow data: Local (custom flow) Variables, Global Variables, Caller Associated Data (CAD) Variables, Activity Output Variables and Event Output Variables[^85]. Keep any PIN collected with Collect Digits out of global variables, because Cisco says never to store PINs there[^25]. Only custom flow variables can be marked secure[^72].
### Verify
Suggested check: after a test call, open the debug run for that call and confirm each stored value.
### Rollback
Suggested rollback: remove the Set Variable activity, then validate and publish again.

**Dialogflow CX/ES or Bring Your Own Virtual Agent through Virtual Agent V2**

### Do
The original Virtual Agent activity's output VVA.ErrorCode can hold no_error, max_no_input, term_char_without_input or system_error[^54]. A Webex developer blog lists Activity Output Variables among 5 categories of flow data, alongside Local, Global, Caller Associated Data and Event Output Variables[^85]. Keep any PIN collected with Collect Digits out of global variables, because Cisco says never to store PINs there[^25].
### Verify
Cisco's LAB-2352 tells builders to open the Flow Designer debug view after a test call to explore the call path and the steps taken[^20]. Suggested check: place a silent test call and confirm which error code the run records.
### Rollback
Suggested rollback: remove the Set Variable or Condition activity, then validate and publish again.

## Step 6: Handle no-input and invalid input

**Touch-tone menu built with the Menu activity + Go straight to the default route on the first failure**

### Do
Connect the Menu's Entry Timeout and Unmatched Entry error outputs to the default route built in the next step, rather than looping them back to the Menu's own input as Cisco's IVR lab does[^32]. Configure each activity's Undefined Error path to handle system errors during flow execution[^52]. Where no error handling path is configured, execution falls back to the path defined in the OnGlobalError event handler[^86].
### Verify
Suggested check: place a silent test call and a wrong-key test call, and confirm each reaches the default route at the first failure.
### Rollback
Suggested rollback: rewire the error outputs to their previous targets, then validate and publish again.

**Touch-tone menu built with the Menu activity + Return to the Menu up to a fixed number of times, then take the default route**

### Do
On the Menu's wrong-option and timeout paths, add a Set Variable activity that increments a counter with an expression of the form {{Timeout+1}}, as Cisco's TAC technote does to return callers to the Menu[^18]. Then check the counter in a Condition activity with an expression of the form {{Timeout >= n}}; the technote uses 3 as the example limit[^17]. On the false branch, return to the Menu's input, the way Cisco's IVR lab loops the Entry Timeout and Unmatched Entry outputs back to the Menu[^32]. The true branch is where the technote's flow plays a message and disconnects, and where the next step attaches the default route[^19]. Menu and Collect Digits each carry a system-enforced self-loop limit of 100 executions[^87]. Exceeding a self-loop limit at runtime produces a warning that a loop was detected[^88]. Configure each activity's Undefined Error path to handle system errors during flow execution[^52]. Where no error handling path is configured, execution falls back to the OnGlobalError event handler[^86].
### Verify
Cisco's LAB-2352 notes that the interaction ID uniquely identifies a run in the Flow Designer debug view and helps debugging[^20]. Suggested check: on a silent test call, confirm the prompt replays the chosen number of times and then the call reaches the default route.
### Rollback
Suggested rollback: remove the counter activities and rewire the error outputs, then validate and publish again.

**Webex AI Agent at the front, with DTMF allowed**

### Do
Configure each flow activity's Undefined Error path to handle system errors during flow execution[^52]. Where no error handling path is configured, execution falls back to the path defined in the OnGlobalError event handler[^86].
### Verify
Suggested check: place a silent test call and confirm where the call goes.
### Rollback
Suggested rollback: rewire the error paths to their previous targets, then validate and publish again.

**Dialogflow CX/ES or Bring Your Own Virtual Agent through Virtual Agent V2**

### Do
Virtual Agent V2 retries invalid or no input an infinite number of times, and this cannot be changed[^59][^60]. Its Escalated path marks a call that must be escalated to a human agent, and its Errored path handles errors[^81]. The original Virtual Agent activity's Max No-Input Attempts defaults to 3 and can be 0 to 9[^89]. Virtual Agent and Virtual Agent V2 each have a system-enforced self-loop limit of 50 executions[^90]. Where no error handling path is configured, execution falls back to the OnGlobalError event handler[^86].
### Verify
Suggested check: place a silent test call and a test call with invalid digits, and confirm which outcome path each takes.
### Rollback
Suggested rollback: rewire the outcome paths to their previous targets, then validate and publish again.

## Step 7: Build the default route

**Into a general queue for an agent**

### Do
Connect the final failure path to a queueing path, as Cisco's Lab 3 does for 2 of the 3 options in its Menu[^36]. Queue Contact has a self-loop limit of 100[^91]. A Virtual Agent V2 activity must not be placed immediately after a Queue Contact activity[^79].
### Verify
Cisco's Lab 3 verifies a new IVR flow end to end by signing in to Agent Desktop, going Ready, and placing test calls[^35]. Suggested check: with an agent Ready, place a failing test call and confirm it is offered to that agent.
### Rollback
Suggested rollback: reconnect the failure path to its previous target, then validate and publish again.

**A goodbye message, then the call is disconnected**

### Do
Connect the final failure path to a Play Message activity with a goodbye prompt and then to Disconnect Contact, as the TAC technote's flow does when its counter reaches the limit[^19]. Disconnect Contact has a self-loop limit of 0, so the system does not allow it to loop back into itself[^92].
### Verify
Suggested check: place a failing test call and confirm the caller hears the goodbye before the call is released.
### Rollback
Suggested rollback: remove the goodbye prompt and the disconnect activity and reconnect the path, then validate and publish again.

## Step 8: Validate and publish

### Do
Turn on validation and fix every error, because a flow must be validated and its errors fixed before it is published, and the Publish button stays disabled while the validation toggle is off[^44][^93]. When publishing, you can attach 1 or more version labels such as Live, Test or Dev, and Latest is applied by default to the most recently published version[^94].
### Verify
The flow version number counts how many times the flow has been published[^95]. Suggested check: confirm validation reports no errors and the version number has increased.
### Rollback
Flow Designer has no version control feature[^95]. Suggested rollback: correct the flow, validate it, and publish again.

## Step 9: Test with calls and the debugger

### Do
Sign an agent in to Agent Desktop and set the agent to Ready, as Cisco's Lab 3 does before placing test calls that enter the PIN and menu selections[^35]. Call the number mapped to the flow, as Cisco's LAB-2352 does by calling the support number mapped to it in the channel configuration[^34]. After each call, open the Flow Designer debug view to explore the call path and the steps taken, using the interaction ID that uniquely identifies the run[^20].
### Verify
A reportable global variable set from the Menu output appears as a profile variable in Analyzer's Customer Session Record report[^37]. WarmTransfer's reading of the sources is that a Menu or Collect Digits activity that always takes its no-input path on a BYO PSTN entry point, even though callers press keys, matches carrier digits not arriving as RFC2833 telephone-events, and the SDP and RTP should be checked first[^96]. Suggested check: test each key, a wrong key, silence, and any digit string both short and valid, and confirm each takes the branch you designed.

## Applicability

Cisco's What's New changelog dated the Flow Designer self-loop limits February 17, 2026, under the heading Flow Reliability Enhancements[^97]. The default-on AI transparency disclosure with a mandatory acknowledgement to disable it applies in European regions[^77]. Cisco states that Webex Contact Center is deployed in Amazon Web Services (AWS)[^98]. Applies to: Cisco Webex AI Agent, Cisco Webex Contact Center, Cisco Webex AI Agent (Webex Contact Center), Cisco Webex AI Agent Studio, and Google Dialogflow CX. Deployments: cloud and multi-tenant. Sources checked 2026-10-02.

## What remains uncertain

This is disputed: the Menu output name DigitsEntered comes from a 2023 Cisco TAC technote, so confirm the name your tenant's variable picker offers[^38]. The default values and ranges of the Menu and Collect Digits activities, beyond the lab values used above, are not covered by the sources below. The name of the Collect Digits output variable and the names of its failure outputs are not covered by the sources below. Which prompt setting selects an uploaded audio file in each activity is not covered by the sources below. Whether the counter technique applies to Collect Digits in the same way as to Menu is not covered by the sources below. Field reports suggest the Condition operator list, which rests on a single partner blog, so test expressions before relying on them[^16]. How long debug runs are kept is not covered by the sources below. How Webex AI Agent passes collected data back into flow variables is not covered by the sources below.

## Sources

[^1]: The Webex AI Agent timeout between two DTMF digits can be set from 2 to 10 seconds and defaults to 5 seconds. Source: [Webex AI Agent Studio Administration guide](https://help.webex.com/article/ncs9r37/Webex-AI-Agent-Studio-Administration-guide), DTMF input settings (Timeout between digits). Checked 2026-10-02.
[^2]: Webex AI Agent DTMF input settings are configured in AI Agent Studio on the agent's Configuration > Conversation tab. Source: [Webex AI Agent Studio Administration guide](https://help.webex.com/article/ncs9r37/Webex-AI-Agent-Studio-Administration-guide), Configuration > Conversation tab, DTMF input settings. Checked 2026-10-02.
[^3]: The Webex AI Agent maximum DTMF input length can be set from 8 to 32 characters and defaults to 16. Source: [Webex AI Agent Studio Administration guide](https://help.webex.com/article/ncs9r37/Webex-AI-Agent-Studio-Administration-guide), DTMF input settings (Max length). Checked 2026-10-02.
[^4]: The Webex AI Agent DTMF termination character, used by the caller to end input, can be # or *. Source: [Webex AI Agent Studio Administration guide](https://help.webex.com/article/ncs9r37/Webex-AI-Agent-Studio-Administration-guide), DTMF input settings (Termination character). Checked 2026-10-02.
[^5]: Webex Contact Center audio files must be .wav, mono, 8 kHz sample rate and 8-bit u-law encoding, with a maximum size of 5 MB. Source: [Manage audio files](https://help.webex.com/en-us/article/be12vp/Manage-audio-files), Upload audio files (format requirements). Checked 2026-10-02.
[^6]: The system does not support updating audio files that are in use, and the file's Referenced by section lists what uses it. Source: [Manage audio files](https://help.webex.com/en-us/article/be12vp/Manage-audio-files), Edit or delete audio files. Checked 2026-10-02.
[^7]: Audio files are created in Control Hub under Services > Contact Center > Customer Experience > Audio files with Create Audio file. Source: [Manage audio files](https://help.webex.com/en-us/article/be12vp/Manage-audio-files), Upload audio files (procedure). Checked 2026-10-02.
[^8]: Collect Digits accepts DTMF digits 0 through 9 and the letters A, B, C and D; the caller can enter # or * as a termination symbol, and the termination symbols cannot be used for any other purpose in the activity. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Collect Digits (accepted input). Checked 2026-10-02.
[^9]: The Collect Digits output variable CollectDigits.DigitsEntered stores the digits the caller entered in that activity instance. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Collect Digits > output variables. Checked 2026-10-02.
[^10]: Collect Digits Inter-Digit Timeout is the longest the activity waits between digits, applies only after at least one digit is entered, and is skipped when the caller enters the terminator symbol. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Collect Digits > Advanced Settings (Inter-Digit Timeout). Checked 2026-10-02.
[^11]: Collect Digits Maximum Digits is the most digits the caller can enter, with a default of 10. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Collect Digits > Advanced Settings (Maximum Digits). Checked 2026-10-02.
[^12]: Collect Digits Minimum Digits defaults to 1, and input shorter than the minimum sends the flow down the Unmatched Entry path configured in Error Handling. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Collect Digits > Advanced Settings (Minimum Digits). Checked 2026-10-02.
[^13]: In Collect Digits Advanced Settings, No-Input Timeout is the longest the activity waits for input before taking the Entry Timeout path; its default is 3 seconds. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Collect Digits > Advanced Settings (No-Input Timeout). Checked 2026-10-02.
[^14]: The Collect Digits activity prompts the caller for DTMF input such as an account number, and its prompt can use audio files, text-to-speech or both. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Collect Digits (description). Checked 2026-10-02.
[^15]: Practitioners validate caller-entered digits in a Condition with the Pebble length filter, for example checking that a callback number has 10 digits and reprompting otherwise (field report). Source: [Webex Contact Center Conditions and Variable Formatting with Pebble](https://blog.cloverhound.com/2022/11/30/webex-contact-center-conditions-and-variable-formatting-with-pebble/), Length filter example. Checked 2026-10-02.
[^16]: A partner blog reports that Condition expressions accept ==, !=, <, >, <=, >=, +, -, * and / and the logical words and, or and not (field report). Source: [Webex Contact Center Conditions and Variable Formatting with Pebble](https://blog.cloverhound.com/2022/11/30/webex-contact-center-conditions-and-variable-formatting-with-pebble/), Conditions section. Checked 2026-10-02.
[^17]: The TAC technote checks the counter in a Condition activity with an expression of the form {{Timeout >= n}}, using 3 as the example limit. Source: [Configure Counter in Menu Block for Webex Contact Center Flows](https://www.cisco.com/c/en/us/support/docs/contact-center/webex-contact-center/217379-configure-counter-in-menu-block-for-webe.html), Configure section (Condition). Checked 2026-10-02.
[^18]: Cisco's TAC technote returns callers to a Menu after a wrong option or menu timeout by incrementing a counter variable with the expression {{Timeout+1}} in a Set Variable activity on those error paths. Source: [Configure Counter in Menu Block for Webex Contact Center Flows](https://www.cisco.com/c/en/us/support/docs/contact-center/webex-contact-center/217379-configure-counter-in-menu-block-for-webe.html), Configure section (Set Variable for counter). Checked 2026-10-02.
[^19]: When the counter reaches the limit, the technote's flow plays a message with Play Message and then disconnects the call with Disconnect Contact. Source: [Configure Counter in Menu Block for Webex Contact Center Flows](https://www.cisco.com/c/en/us/support/docs/contact-center/webex-contact-center/217379-configure-counter-in-menu-block-for-webe.html), Configure section (true branch of Condition). Checked 2026-10-02.
[^20]: Cisco's LAB-2352 tells builders to open the Flow Designer debug view after a test call to explore the call path and the steps taken, noting that the interaction ID uniquely identifies the run and helps debugging. Source: [IVR Experience - LAB-2352 Webex Contact Center Advanced Lab: AI-powered Customer & Agent Experience](https://webexcc-sa.github.io/LAB-2352/Labguide/Lab1/), Text-to-speech exercise, debug steps. Checked 2026-10-02.
[^21]: Entry Timeout is the error output path a flow takes after the entry timeout elapses, so the caller does not sit idle too long; the duration is set in the activity's Advanced Settings. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Collect Digits > Error Handling (Entry Timeout). Checked 2026-10-02.
[^22]: Practitioners report that expression fields in Flow Designer show a small </> button that opens a tester for assigning sample variable values and previewing the result (field report). Source: [Webex Contact Center Conditions and Variable Formatting with Pebble](https://blog.cloverhound.com/2022/11/30/webex-contact-center-conditions-and-variable-formatting-with-pebble/), Expression tester paragraph. Checked 2026-10-02.
[^23]: Global variable names can be up to 80 characters of letters, digits and underscores. Source: [Manage global variables](https://help.webex.com/en-us/article/ngfdsbi/Manage-global-variables), Create global variables (name). Checked 2026-10-02.
[^24]: Global variables cannot be deleted; a variable can only be deactivated, and only when no flow uses it. Source: [Manage global variables](https://help.webex.com/en-us/article/ngfdsbi/Manage-global-variables), Deactivate global variables. Checked 2026-10-02.
[^25]: Cisco says never to store secure data such as credit card numbers, PINs or social security numbers in global variables. Source: [Manage global variables](https://help.webex.com/en-us/article/ngfdsbi/Manage-global-variables), Note on secure data. Checked 2026-10-02.
[^26]: Only up to 100 global variables can be enabled for reporting at a time. Source: [Manage global variables](https://help.webex.com/en-us/article/ngfdsbi/Manage-global-variables), Reportable variables. Checked 2026-10-02.
[^27]: Global variables cannot be added directly inside subflows; they are mapped from the main flow to local subflow variables. Source: [Manage global variables](https://help.webex.com/en-us/article/ngfdsbi/Manage-global-variables), Use global variables in flows. Checked 2026-10-02.
[^28]: Global variables can be Boolean, String (up to 256 characters), Integer, Decimal or DateTime. Source: [Manage global variables](https://help.webex.com/en-us/article/ngfdsbi/Manage-global-variables), Variable types. Checked 2026-10-02.
[^29]: Cisco's IVR labs set the Collect Digits activity to 5 digits minimum and maximum for a PIN and tell builders to make sure its timeouts are set. Source: [Lab 3: IVR and Contact Routing](https://wxcctechsummit.github.io/wxcclabguides/labsnew/Lab3.html), Collect Digits Block instructions. Checked 2026-10-02.
[^30]: In Cisco's IVR lab, each menu choice is added as a custom menu link on the Menu activity and each link output is wired to a following activity. Source: [Lab 2: IVR and Contact Routing (Tech Summit RoW 2021)](https://wxcctechsummit.github.io/wxcclabguides/TechSummitRoW_2021/IVR.html), Menu activity configuration, custom menu link instructions. Checked 2026-10-02.
[^31]: Cisco's IVR lab sets the Menu activity's Advanced Settings Entry Timeout to 10 seconds to give callers enough time to complete DTMF entry. Source: [Lab 2: IVR and Contact Routing (Tech Summit RoW 2021)](https://wxcctechsummit.github.io/wxcclabguides/TechSummitRoW_2021/IVR.html), Menu Block > Advanced Settings > Entry Timeout. Checked 2026-10-02.
[^32]: Cisco's IVR lab loops both the Entry Timeout and Unmatched Entry error outputs of the Menu activity back to the Menu activity's own input. Source: [Lab 2: IVR and Contact Routing (Tech Summit RoW 2021)](https://wxcctechsummit.github.io/wxcclabguides/TechSummitRoW_2021/IVR.html), Menu activity configuration, Error Handling instructions. Checked 2026-10-02.
[^33]: Cisco's IVR lab tells builders to tick 'Make Prompt Interruptible' on the Menu activity, and the Lab 3 guide recommends making all Menu steps interruptible so callers can bypass the prompt. Source: [Lab 2: IVR and Contact Routing (Tech Summit RoW 2021)](https://wxcctechsummit.github.io/wxcclabguides/TechSummitRoW_2021/IVR.html), Menu activity configuration steps. Checked 2026-10-02.
[^34]: Cisco's LAB-2352 tests a published flow by validating and publishing it, then calling the support number mapped to it in the channel configuration. Source: [IVR Experience - LAB-2352 Webex Contact Center Advanced Lab: AI-powered Customer & Agent Experience](https://webexcc-sa.github.io/LAB-2352/Labguide/Lab1/), Flow creation and publishing; test call. Checked 2026-10-02.
[^35]: Cisco's Lab 3 verifies a new IVR flow end to end by signing in to Agent Desktop, going Ready, and then placing test calls that enter the PIN and menu selections. Source: [Lab 3: IVR and Contact Routing](https://wxcctechsummit.github.io/wxcclabguides/labsnew/Lab3.html), Testing section. Checked 2026-10-02.
[^36]: Cisco's Lab 3 builds a Menu with three options, two that route to queues and one blind transfer, and asks builders to configure every Menu field including prompts and entry timeout. Source: [Lab 3: IVR and Contact Routing](https://wxcctechsummit.github.io/wxcclabguides/labsnew/Lab3.html), Menu Block Setup. Checked 2026-10-02.
[^37]: A reportable global variable set from the Menu output appears as a profile variable in Analyzer's Customer Session Record report. Source: [Configure a Reportable Global Variable to Capture the Digits Selected at a Menu Node](https://www.cisco.com/c/en/us/support/docs/contact-center/webex-contact-center/220470-configure-a-reportable-global-variable-t.html), Verify section. Checked 2026-10-02.
[^38]: A 2023 Cisco TAC technote tells administrators to add a Set Variable activity after the Menu activity and map a global variable to the Menu node's output variable DigitsEntered (disputed). Source: [Configure a Reportable Global Variable to Capture the Digits Selected at a Menu Node](https://www.cisco.com/c/en/us/support/docs/contact-center/webex-contact-center/220470-configure-a-reportable-global-variable-t.html), Configure, step 3. Checked 2026-10-02.
[^39]: The Menu activity output variable Menu.OptionEntered stores the option the caller selected, a single digit from 0 to 9, and can be used in later activities to control the flow (disputed). Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Menu > output variables. Checked 2026-10-02.
[^40]: The Flow Designer Menu activity plays a prompt that lets the caller enter a DTMF digit, and the flow takes a different path depending on the digit entered. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Menu (description). Checked 2026-10-02.
[^41]: Unmatched Entry is the Menu activity's error output path taken when the caller enters a DTMF digit that is not configured in Custom Menu Links; Cisco advises that it play a message clarifying what is expected before looping back to the start of the activity. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Menu > Error Handling (Unmatched Entry). Checked 2026-10-02.
[^42]: The name of the Menu activity's output variable changes with the activity label, so a Menu labelled differently exposes its option under that label rather than under 'Menu'. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Menu > output variables. Checked 2026-10-02.
[^43]: Because the Menu output holds a single digit while Collect Digits has minimum, maximum and terminator settings, Menu fits single-key choices and Collect Digits fits multi-digit strings such as account numbers or PINs (inferred). Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Voice > Menu; Activities in Voice > Collect Digits. Checked 2026-10-02.
[^44]: A flow must be validated and its errors fixed before it is published; if the validation toggle is off the Publish button stays disabled. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Footer pane / flow validation. Checked 2026-10-02.
[^45]: Text-to-speech in Webex Contact Center is supported in the Play Message, Menu and Collect Digits activities. Source: [Text-to-Speech (TTS) in Webex Contact Center](https://help.webex.com/en-us/article/ntkjqhw/Text-to-Speech-(TTS)-in-Webex-Contact-Center), Supported activities. Checked 2026-10-02.
[^46]: Cisco TTS supports 22 languages with two voices per language. Source: [Text-to-Speech (TTS) in Webex Contact Center](https://help.webex.com/en-us/article/ntkjqhw/Text-to-Speech-(TTS)-in-Webex-Contact-Center), Language and voice support. Checked 2026-10-02.
[^47]: Customers on the Next Generation voice media platform can choose Cisco TTS or Google TTS as the connector in an activity's Prompt settings, along with a voice. Source: [Text-to-Speech (TTS) in Webex Contact Center](https://help.webex.com/en-us/article/ntkjqhw/Text-to-Speech-(TTS)-in-Webex-Contact-Center), Available connectors; Configuration. Checked 2026-10-02.
[^48]: A 2024 Cisco developer blog says Play Message, Collect Digits and Menu support dynamic TTS, using expressions to insert custom data and SSML to change intonation. Source: [Design Delightful Customer Experiences with Webex Contact Center Flow Designer](https://developer.webex.com/blog/design-delightful-customer-experiences-with-webex-contact-center-flow-designer), Media activities paragraph. Checked 2026-10-02.
[^49]: The default TTS language and voice can be overridden with a Set Variable activity using the global variables Global_Language and Global_VoiceName. Source: [Text-to-Speech (TTS) in Webex Contact Center](https://help.webex.com/en-us/article/ntkjqhw/Text-to-Speech-(TTS)-in-Webex-Contact-Center), Configuration (override default language settings). Checked 2026-10-02.
[^50]: Webex Contact Center TTS accepts SSML whose mandatory root element is <speak>, with supported tags including break, say-as, audio, prosody, sub, p and s. Source: [Text-to-Speech (TTS) in Webex Contact Center](https://help.webex.com/en-us/article/ntkjqhw/Text-to-Speech-(TTS)-in-Webex-Contact-Center), SSML support. Checked 2026-10-02.
[^51]: Looping Entry Timeout and Unmatched Entry straight back to the Menu, as the lab does, has no exit, so a caller who never presses a valid key stays in the menu until they hang up; a counter is needed to reach a default route (inferred). Source: [Lab 2: IVR and Contact Routing (Tech Summit RoW 2021)](https://wxcctechsummit.github.io/wxcclabguides/TechSummitRoW_2021/IVR.html), Menu activity configuration, Error Handling instructions. Checked 2026-10-02.
[^52]: Flow Designer lets an activity's Undefined Error path be configured to handle system errors during flow execution, and an OnGlobalError event flow is available. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Error handling; Event flows. Checked 2026-10-02.
[^53]: In the Flow Designer Virtual Agent activity the DTMF terminator symbol, which the caller enters to end input, is # or * depending on configuration. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Call Handling > Virtual Agent (DTMF settings). Checked 2026-10-02.
[^54]: The Virtual Agent activity output VVA.ErrorCode can hold no_error, max_no_input, term_char_without_input or system_error. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Call Handling > Virtual Agent (output variables). Checked 2026-10-02.
[^55]: In the Virtual Agent activity the Inter-digit Timeout defaults to 3 seconds and can range from 0 to 30 seconds. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Call Handling > Virtual Agent (Inter-digit Timeout). Checked 2026-10-02.
[^56]: The Virtual Agent activity's Make Prompts Interruptible setting lets callers interrupt the virtual agent to make new requests or end the call. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Call Handling > Virtual Agent (Make Prompts Interruptible). Checked 2026-10-02.
[^57]: In the Virtual Agent activity the No-Input Timeout for voice or DTMF input defaults to 5 seconds and can range from 1 to 30 seconds. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Activities in Call Handling > Virtual Agent (No-Input Timeout). Checked 2026-10-02.
[^58]: The Virtual Agent V2 DTMF defaults are documented for Google Dialogflow CX, Google Dialogflow ES and Bring Your Own Virtual Agent. Source: [Configure Virtual Agent-Voice in Webex Contact Center](https://help.webex.com/en-us/article/n6gaghu/Configure-Virtual-Agent-Voice-in-Webex-Contact-Center), Virtual Agent V2 default DTMF settings. Checked 2026-10-02.
[^59]: Virtual Agent V2 uses fixed DTMF defaults: # as the termination symbol, a 5-second no-input timeout, a 3-second inter-digit timeout, barge-in enabled and an infinite number of retries for invalid or no input. Source: [Configure Virtual Agent-Voice in Webex Contact Center](https://help.webex.com/en-us/article/n6gaghu/Configure-Virtual-Agent-Voice-in-Webex-Contact-Center), Virtual Agent V2 default DTMF settings. Checked 2026-10-02.
[^60]: The Virtual Agent V2 default DTMF settings do not appear in the user interface and cannot be changed. Source: [Configure Virtual Agent-Voice in Webex Contact Center](https://help.webex.com/en-us/article/n6gaghu/Configure-Virtual-Agent-Voice-in-Webex-Contact-Center), Virtual Agent V2 default DTMF settings. Checked 2026-10-02.
[^61]: Because Virtual Agent V2 retries invalid or missing DTMF input an unlimited number of times and the setting cannot be changed, a retry cap before a default route cannot be set on that activity and has to come from the bot's own design (inferred). Source: [Configure Virtual Agent-Voice in Webex Contact Center](https://help.webex.com/en-us/article/n6gaghu/Configure-Virtual-Agent-Voice-in-Webex-Contact-Center), Virtual Agent V2 default DTMF settings. Checked 2026-10-02.
[^62]: Accessing the Flow Designer application requires a Premium Agent License plus a user profile with rights to edit flows. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Get started / Access Flow Designer. Checked 2026-09-04.
[^63]: An Entry Point is the configuration object that associates an inbound telephone number with an IVR service flow (a Webex CC Flow) in Webex Contact Center; inbound numbers must be mapped to entry points as part of PSTN provisioning. Source: [Set up voice channels for Webex Contact Center](https://help.webex.com/en-us/article/nhy3codb/Set-Up-Voice-Channel-for-Webex-Contact-Center), Configuration of Inbound Entry Points to Webex Contact Center subsection. Checked 2026-09-04.
[^64]: Webex Contact Center requires calls to arrive using the G.711 uLaw or G.711 aLaw codec. Source: [Set up voice channels for Webex Contact Center](https://help.webex.com/en-us/article/nhy3codb/Set-Up-Voice-Channel-for-Webex-Contact-Center), section 'PSTN Media and Signaling Requirements for Webex Contact Center', Codec row. Checked 2026-10-02.
[^65]: Webex Contact Center's PSTN media and signalling requirements list RFC2833 as the DTMF method for calls arriving at Webex Contact Center. Source: [Set up voice channels for Webex Contact Center](https://help.webex.com/en-us/article/nhy3codb/Set-Up-Voice-Channel-for-Webex-Contact-Center), section 'PSTN Media and Signaling Requirements for Webex Contact Center', DTMF row. Checked 2026-10-02.
[^66]: A flow can contain a maximum of 30 variables in total, and this count includes all global variables plus flow (custom) variables regardless of whether they are reportable or agent viewable. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Use variables and expressions / Create Custom Flow Variables. Checked 2026-09-04.
[^67]: Flow Designer undo and redo covers the last 10 canvas actions. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), canvas actions, undo/redo. Checked 2026-09-30.
[^68]: The next generation media platform is the default for all new Webex Contact Center trials and subscriptions during activation. Source: [Set up voice channels for Webex Contact Center](https://help.webex.com/en-us/article/2dputx/Set-up-voice-channel-for-Webex-Contact-Center), voice platform statement near the top of the article. Checked 2026-09-30.
[^69]: An Audio Files API upload is multipart form data with a JSON audioFileInfo part, whose contentType is AUDIO_WAV or AUDIO_X_WAV, and a binary audioFile part. Source: [The A-Z of Webex Contact Center APIs: Audio Files](https://developer.webex.com/blog/the-a-z-of-webex-contact-center-apis-audio-files), Create a New Audio File section. Checked 2026-09-30.
[^70]: The Audio Files API's List References operation shows which variables in which flows are tied to a given audio file. Source: [The A-Z of Webex Contact Center APIs: Audio Files](https://developer.webex.com/blog/the-a-z-of-webex-contact-center-apis-audio-files), List References For a Specific Audio File section. Checked 2026-09-30.
[^71]: Global variables are created by an administrator in the Provisioning module of Control Hub, and flow developers consume (add, edit default value of, or remove) them inside a flow rather than fully redefining them. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Use variables and expressions / Global variables. Checked 2026-09-04.
[^72]: Global variables cannot be marked as secure; only custom flow variables can be marked secure. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Use variables and expressions / Custom variables. Checked 2026-09-04.
[^73]: Flow variables can be marked Secure, which prevents the system from logging or storing sensitive values and masks those values in the Flow Debugging pane. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Use variables and expressions / Custom variables. Checked 2026-09-04.
[^74]: For autonomous AI agents in Webex AI Agent Studio, the DTMF Digit Timeout between two digits defaults to 5 seconds and can be 2 to 10 seconds. Source: [Webex AI Agent Studio Administration guide](https://help.webex.com/en-us/article/ncs9r37/Webex-AI-Agent-Studio-Administration-guide), section 'Configure the DTMF settings', Digit Timeout. Checked 2026-10-02.
[^75]: Webex AI Agent can play an AI transparency disclosure on voice channels that callers cannot interrupt and that plays before the welcome message. Source: [What's new for administrators in Webex Contact Center](https://help.webex.com/en-us/article/a1gx3h/What's-New-in-Webex-Contact-Center), What's New entry 'AI Transparency Compliance: Disclosure Notice for Webex AI Agent' (July 31, 2026). Checked 2026-09-30.
[^76]: The Webex AI Agent transparency disclosure is configured at the AI agent level and applies to both scripted and autonomous AI agents. Source: [What's new for administrators in Webex Contact Center](https://help.webex.com/en-us/article/a1gx3h/What's-New-in-Webex-Contact-Center), What's New entry 'AI Transparency Compliance: Disclosure Notice for Webex AI Agent' (July 31, 2026). Checked 2026-09-30.
[^77]: In European regions the Webex AI Agent transparency disclosure is enabled by default, and administrators who disable it must acknowledge the risks and add audit comments before opting out. Source: [What's new for administrators in Webex Contact Center](https://help.webex.com/en-us/article/a1gx3h/What's-New-in-Webex-Contact-Center), What's New entry 'AI Transparency Compliance: Disclosure Notice for Webex AI Agent' (July 31, 2026). Checked 2026-09-30.
[^78]: Outside European regions, Webex AI Agent administrators choose whether to enable the AI transparency disclosure and can configure its message; Cisco recommends enabling it as a best practice. Source: [Webex AI Agent Studio Administration guide](https://help.webex.com/en-us/article/ncs9r37/Webex-AI-Agent-Studio-Administration-guide), section 'Update autonomous AI agent profile', AI transparency settings. Checked 2026-09-30.
[^79]: The Virtual Agent V2 activity must not be placed immediately after a Queue Contact activity, and must not be placed in the Event Flow canvas -- both configurations are explicitly unsupported. Source: [Configure Virtual Agent-Voice in Webex Contact Center](https://help.webex.com/en-us/article/n6gaghu/Configure-Virtual-Agent-Voice-in-Webex-Contact-Center), Configure Virtual Agent V2 activity (Dialogflow ES section). Checked 2026-09-04.
[^80]: Placing the Virtual Agent V2 activity immediately after a Queue Contact activity, or in the Event Flow canvas, produces no runtime warning even though both configurations are unsupported. Source: [Configure Virtual Agent-Voice in Webex Contact Center](https://help.webex.com/en-us/article/n6gaghu/Configure-Virtual-Agent-Voice-in-Webex-Contact-Center), Configure Virtual Agent V2 activity (Dialogflow ES section). Checked 2026-09-04.
[^81]: The Virtual Agent V2 flow activity has 2 outcome paths -- 'Handled' (virtual agent execution completed) and 'Escalated' (call must be escalated to a human agent) -- plus an 'Errored' error-handling path. Source: [Configure Virtual Agent-Voice in Webex Contact Center](https://help.webex.com/en-us/article/n6gaghu/Configure-Virtual-Agent-Voice-in-Webex-Contact-Center), Configure Virtual Agent V2 Activity section. Checked 2026-09-04.
[^82]: Dialogflow CX processes DTMF only through telephony integrations, where the key presses are converted to text end-user input. Source: [DTMF for telephony integrations](https://cloud.google.com/dialogflow/cx/docs/concept/dtmf), page introduction. Checked 2026-10-02.
[^83]: Dialogflow CX DTMF can be enabled at agent level (Agent settings, Speech and IVR), at flow or page level, and at parameter level. Source: [DTMF for telephony integrations](https://cloud.google.com/dialogflow/cx/docs/concept/dtmf), section on enabling DTMF. Checked 2026-10-02.
[^84]: Flow validation only checks for structural errors (required fields, valid structure); it cannot evaluate functions or confirm that variables resolve to expected values at runtime. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Create and manage flows / Validate a flow. Checked 2026-09-04.
[^85]: A Webex developer blog describes 5 categories of flow data: Local (custom flow) Variables, Global Variables, Caller Associated Data (CAD) Variables, Activity Output Variables, and Event Output Variables. Source: [Design Delightful Customer Experiences with Webex Contact Center Flow Designer](https://developer.webex.com/blog/design-delightful-customer-experiences-with-webex-contact-center-flow-designer), developer.webex.com blog / Data Definitions for Effective Flow Design. Checked 2026-09-04.
[^86]: If a flow developer does not configure an error handling path for an activity, execution falls back to the path defined in the OnGlobalError event handler. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Configure error handling. Checked 2026-09-04.
[^87]: Collect Digits, Menu, Queue Contact, Queue to Agent, Set Caller ID and Set Contact Priority each carry a system-enforced self-loop limit of 100 executions. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), System-enforced self-loop limits for activities (table). Checked 2026-09-04.
[^88]: Self-loop limits exist to prevent activities from entering endless loops within a single interaction; exceeding the limit at runtime produces a warning that a loop was detected. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), System-enforced self-loop limits for activities. Checked 2026-09-04.
[^89]: In the Flow Designer Virtual Agent activity, Max No-Input Attempts defaults to 3 and can be 0 to 9. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), activity 'Virtual Agent', Advanced Settings, Max No-Input Attempts. Checked 2026-10-02.
[^90]: The system-enforced self-loop limit for both the Virtual Agent and Virtual Agent V2 activities is 50 executions each. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), System-enforced self-loop limits for activities (table). Checked 2026-09-04.
[^91]: Flow Designer enforces self-loop limits per activity: 100 for Queue Contact, 1,500 for Advanced Queue Information and 750 for Escalate Call Distribution Group. Source: [System limits in Webex Contact Center](https://help.webex.com/en-us/article/n7s6ed7/System-limits-in-Webex-Contact-Center), Flow Designer self-loop limits table. Checked 2026-09-30.
[^92]: The Disconnect Contact activity has a self-loop limit of 0, meaning the system does not allow it to loop back into itself at all. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), System-enforced self-loop limits for activities (table). Checked 2026-09-04.
[^93]: The publish control is disabled while the validation toggle is off so a new flow cannot be published until the author turns validation on. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Flow Designer, validate and publish a flow. Checked 2026-09-15.
[^94]: When publishing a flow, you can attach 1 or more version labels (such as Live, Test, or Dev); 'Latest' is applied by default and cannot be removed from the most recently published version. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), Create and manage flows / Publish a flow. Checked 2026-09-04.
[^95]: Flow Designer has no version control feature. The flow version number counts how many times the flow has been published, and version labels can be applied. Source: [Build and manage flows with Flow Designer](https://help.webex.com/en-us/article/nhovcy4/Build-and-manage-flows-with-Flow-Designer), flow versioning section. Checked 2026-09-30.
[^96]: A Menu or Collect Digits activity that always takes its no-input path on a BYO PSTN entry point, even though callers press keys, matches carrier digits not arriving as RFC2833 telephone-events, and the SDP and RTP should be checked first (inferred). Source: [Set up voice channels for Webex Contact Center](https://help.webex.com/en-us/article/nhy3codb/Set-Up-Voice-Channel-for-Webex-Contact-Center), section 'PSTN Media and Signaling Requirements for Webex Contact Center', DTMF row. Checked 2026-10-02.
[^97]: Cisco's Webex Contact Center 'What's new' changelog announced self-loop limits for Flow Designer activities under the heading 'Flow Reliability Enhancements', dated February 17, 2026. Source: [What's new for administrators in Webex Contact Center](https://help.webex.com/en-us/article/a1gx3h/What's-New-in-Webex-Contact-Center), What's new for administrators in Webex Contact Center changelog. Checked 2026-09-04.
[^98]: Webex Contact Center is deployed in Amazon Web Services (AWS). Source: [Webex Contact Center Architecture](https://help.webex.com/en-us/article/utqcm7/Webex-Contact-Center-Architecture), Deployment and Connectivity section. Checked 2026-09-30.
