# Setting up courtesy callback in Unified CVP

Systems: Cisco Unified CVP

For Unified CCE or Packaged CCE administrators who already run a working Unified CVP queuing call flow and want to enable Courtesy Callback using Cisco's sample scripts.

Canonical: https://warmtransfer.net/guides/cvp-courtesy-callback-setup

Last verified: 2026-10-01

In Unified CVP Courtesy Callback, a caller queued by Unified CVP can hang up and be called back when an agent is close to becoming available, which Cisco calls preemptive callback[^52]. Preemptive callback does not change how long a customer waits to reach an agent; it only lets the caller hang up instead of staying in queue listening to music[^78].

## Before you start

Cisco's Courtesy Callback documentation states that a callback cannot be scheduled for a specific time[^43]. The CallBack table's CallBackType column still holds P for preemptive and S for scheduled[^9]. WarmTransfer's reading of the sources is that none of the 15.0(1) configuration material reviewed exposes a way to configure scheduled callbacks, so only preemptive callback can be planned for[^62].

- Calls that allow callback must be queued using a Unified CVP VXML Server[^77].
- The Unified CVP Reporting Server is a prerequisite for Courtesy Callback[^56].
- A courtesy callback is placed through the same ingress gateway through which the original call arrived[^61], and Courtesy Callback cannot place its outbound calls through any other egress gateway[^42].
- Cisco states that Courtesy Callback is supported for IP-originated calls as well as TDM calls[^31].
- If the Reporting Server is not back online within the CallbackWait retry window, the pending entry is not called back[^54]. The CallbackWait application's WaitLoop retry count defaults to 6 retries in the Check Retry element and can be raised to give a longer window before the call is dropped[^79]. Failure of a CVP Reporting Server has no impact on call survivability[^82].
- Field reports suggest that offering callback to too many callers at once skews the wait estimate; one integrator recommends starting with a fraction of eligible callers and not re-offering after 2 declines[^26]. In the field, an integrator also recommends capturing numbers from unsuccessful callbacks and adding them to an outbound campaign for later attempts[^25].

See also [Setting up a CVP comprehensive call flow in UCCE](https://warmtransfer.net/knowledge/cvp-comprehensive-call-flow-setup).

See also [Outbound callback and dialer compliance](https://warmtransfer.net/knowledge/contact-center-callback-compliance).

## What changes by situation

- Which Cisco contact center deployment runs your Unified CVP? Unified CCE (CVP administered from the Unified CVP Operations Console); Packaged CCE (CVP administered from Unified CCE Administration).
- What estimated wait time should trigger a callback offer? Keep the default of 900 seconds; Set your own threshold in seconds.
- When may the system place callbacks? Any time of day, every day (the default); Only within time ranges you define for each day.
- Which callback numbers will you allow? Only numbers matching patterns you list as allowed; Any number unless it matches a denied pattern.

## Step 1: Confirm the prerequisites and limitations

### Do

Confirm that the calls you want to make eligible are queued using a Unified CVP VXML Server[^77]. Confirm that a Unified CVP Reporting Server is available, because it is a prerequisite for Courtesy Callback[^56]. WarmTransfer's reading of the sources is that each ingress gateway also needs to reach the PSTN for outbound calls, because the callback is placed through the same ingress gateway the original call arrived on[^61] and cannot use any other egress gateway[^42]. Exclude call flows that transfer to agents using DTMF *8, TBCT or hookflash, because those calls cannot use Courtesy Callback[^40]. Tell the business that answering machine detection is not available for Courtesy Callback[^39]. Also tell them that callbacks are best effort: after a limited number of attempts to reach the caller, the callback is terminated and marked as failed[^2]. If you use Cisco Virtualized Voice Browser instead of a VXML gateway, no special Courtesy Callback configuration is required on it[^76].

### Verify

Suggested check: for each target queue, write down its queuing path, the ingress gateways its calls arrive on, and the reporting server that will hold callback data.

## Step 2: Configure the ingress gateway

### Do

Make sure survivability.tcl, along with the other CVP gateway script files, has been copied to the gateway[^83]. Add the ccb parameter to the cvp-survivability service in the form `id:<host name or IP>;loc:<location name>;trunks:<number of callback trunks>`[^11]. Bind the cvp-survivability service to the incoming POTS dial peer for the called number, and add an outgoing POTS dial peer for the PSTN destinations that callbacks will use[^12]. Under `voice service voip`, configure `signaling forward unconditional` so that SIP INFO messages are forwarded[^66]. Reload the service with `call application voice load cvp-survivability`[^3]. Add a sip-profile configuration on the ISR only if you deploy an IOS-XE version affected by CSCts00930[^67].

### Verify

Suggested check: display the running configuration and confirm that the ccb parameter and both dial peers are present.

Size the trunks value deliberately: an older technote, not re-verified for the current release, says gateway capacity validation fails when the callbacks counted for that gateway (pending, in progress or tentative, plus completed and connected in Callback_Current) reach the ccb trunks value[^28]. When gateway capacity is exceeded, the caller is not offered a callback and goes straight to queue whatever the EWT, and Validate logs the result none with the EXCEED_CAPACITY_GW bit set[^29].

### Rollback

Suggested rollback: remove the ccb parameter and the outgoing callback dial peer you added.

Reload the service again with `call application voice load cvp-survivability`[^3].

## Step 3: Point Courtesy Callback at the Reporting Server

**Unified CCE (CVP administered from the Unified CVP Operations Console)**

### Do

In the Unified CVP Operations Console, open System > Courtesy Callback[^44]. On the General tab, select the Reporting Server that stores callback data; leaving it blank associates no Reporting Server with the Courtesy Callback deployment[^55]. Optionally check "Enable secure communication with the Courtesy Callback database", which secures Call Server to Reporting Server communication for callbacks[^64]. On the Call Server Deployment tab, move the Call Servers from the Available list to the Selected list and click Save & Deploy[^4]. Cisco advises deploying later changes to this configuration, such as a different Reporting Server, in a maintenance window, because restarting the Reporting Server can cancel currently scheduled callbacks[^33].

### Verify

Suggested check: reopen the page and confirm that the selected reporting server and the selected call servers were saved.

### Rollback

Clear the Reporting Server selection, which leaves no Reporting Server associated with the Courtesy Callback deployment[^55], and deploy the change in a maintenance window[^33].

**Packaged CCE (CVP administered from Unified CCE Administration)**

### Do

In Unified CCE Administration, open Overview > Features > Courtesy Callback and set the Reporting Server[^45]. To script the change instead, the Courtesy CallBack API at `/unifiedconfig/config/ccb/{datacenter}` reads and updates the CVP Reporting Server address through the `reportingAddress` parameter[^47]. Cisco advises deploying later changes, such as a different Reporting Server, in a maintenance window, because restarting the Reporting Server can cancel currently scheduled callbacks[^33].

### Verify

Suggested check: send a read request to the API and confirm it returns the address you set.

A 201 response means the setting was saved in the AW database but the update failed for one or more CVP devices, and a 503 response means a sync is still in progress[^46].

### Rollback

Set `reportingAddress` back to its previous value through the same API[^47], in a maintenance window[^33].

## Step 4: Set the callback dialed-number policy

**Only numbers matching patterns you list as allowed**

### Do

In Packaged CCE, the dialed-number settings are on the same Unified CCE Administration page as the Reporting Server, under Overview > Features > Courtesy Callback[^45]. Leave "Allow Unmatched Dialed Numbers" unchecked, which is the default and restricts callbacks to numbers in the Allowed Dialed Numbers list[^1]. Initially there are no allowed dialed numbers, so add patterns for every range you will call back[^41]. In these patterns, "." and "X" each match a single character in any position[^80]. The characters ">", "*", "!" and "T" match multiple characters but can only be used at the end of a pattern[^81]. Optionally set "Maximum Number of Calls Per Calling Number"; the default of 0 means unlimited callbacks, and the maximum is 1000[^35].

### Verify

Suggested check: confirm that every number range in your callback population matches at least one allowed pattern.

An exact match takes highest precedence, and when an allowed and a denied pattern are equally specific, the denied pattern wins[^17].

### Rollback

Suggested rollback: remove the allowed patterns you added.

**Any number unless it matches a denied pattern**

### Do

In Packaged CCE, the dialed-number settings are on the same Unified CCE Administration page as the Reporting Server, under Overview > Features > Courtesy Callback[^45]. Check "Allow Unmatched Dialed Numbers" so that every number not in the Denied list is allowed[^1]. Review the Denied Dialed Numbers list, which is prepopulated only when the local language is en-us[^16]. In the patterns you add, "." and "X" each match a single character in any position[^80]. The characters ">", "*", "!" and "T" match multiple characters but can only be used at the end of a pattern[^81]. Optionally set "Maximum Number of Calls Per Calling Number"; the default of 0 means unlimited callbacks, and the maximum is 1000[^35].

### Verify

Suggested check: confirm that the premium-rate, emergency and international ranges you must never dial are covered by denied patterns.

An exact match takes highest precedence, and when an allowed and a denied pattern are equally specific, the denied pattern wins[^17]. After upgrading CVP from 12.x to 15.0(1) with this box checked, uncheck and save it, re-check and save it on the Courtesy Callback page, then restart the CVP Reporting Server[^50].

### Rollback

Uncheck "Allow Unmatched Dialed Numbers" to restrict callbacks to numbers in the Allowed Dialed Numbers list again[^1].

## Step 5: Load the Courtesy Callback media

### Do

Unzip `%CVP_HOME%\OPSConsoleServer\CCBDownloads\CCBAudioFiles.zip` and copy the contents to your media server[^38]. Courtesy Callback application media goes under `en-us\app` and Say It Smart media under `en-us\sys`; if the Say It Smart media is already present, only the `en-us\app` files are needed[^37].

### Verify

Suggested check: fetch one application prompt from the media server's en-us/app path in a browser.

### Rollback

Suggested rollback: delete the application prompt files you copied.

## Step 6: Import and customise the Call Studio projects

### Do

Import the 5 Call Studio projects in CourtesyCallbackStudioScripts.zip: BillingQueue, CallbackEngine, CallbackEntry, CallbackQueue and CallbackWait[^27]. Cisco says not to modify CallbackEngine and CallbackQueue, which keep the VoIP leg alive and handle the in-queue keepalive; BillingQueue, CallbackEntry and CallbackWait are the customisable ones[^19]. Update each project's Default Audio Path URI with the media server's IP address and port[^15]. In the CallbackEntry project's Callback_Set_Queue_Defaults node, set the keepalive greater than the length of your queue music; the sample's default is 120 seconds[^7]. The element's Keepalive Interval setting defaults to 180 seconds, with a minimum of 1 and a maximum of 300[^32]. Keep Ring No Answer Timeout, which defaults to 30 seconds and ranges 0 to 300, less than the Keepalive Interval[^60]. Set the required settings Queue Name and Calling Line ID, the CLI used on the callback[^58]. Review the per-queue caps: Maximum Percentage defaults to 50 with a range of 0-100, and Maximum Count defaults to 9999999[^53]. Review the retry settings, which take "attempts;interval-seconds" values and default to 3;300 for no response and 4;300 for busy, no answer, trunks busy and error[^59].

### Verify

Validate all 5 Courtesy Callback projects in Call Studio before deploying them[^73].

### Rollback

Suggested rollback: re-import the unmodified projects from the original archive.

## Step 7: Set the wait-time threshold that triggers an offer

**Keep the default of 900 seconds**

### Do

Leave Maximum Estimated Wait Time in CallbackEntry's Callback_Set_Queue_Defaults at its default of 900; callbacks are offered for the queue only when the EWT is greater than or equal to that number of seconds[^36].

### Verify

Suggested check: confirm the field still shows its default value.

**Set your own threshold in seconds**

### Do

Set Maximum Estimated Wait Time in CallbackEntry's Callback_Set_Queue_Defaults to your threshold in seconds; callbacks are offered for the queue only when the EWT is greater than or equal to that value[^36]. Cisco's example callback criteria include an expected queue wait exceeding a maximum number of minutes, an assigned customer status such as gold, or the service the caller requested[^13].

### Verify

Validate all 5 Courtesy Callback projects in Call Studio again before deploying them[^73].

### Rollback

Set Maximum Estimated Wait Time back to its default of 900[^36].

## Step 8: Set the hours when callbacks may be placed

**Any time of day, every day (the default)**

### Do

Leave each Sunday-to-Saturday time range in Callback_Set_Queue_Defaults at its default of 00:00:00-23:59:59[^14].

### Verify

Suggested check: confirm that every day's range still shows its default value.

**Only within time ranges you define for each day**

### Do

Set each Sunday-to-Saturday time range in Callback_Set_Queue_Defaults to your callback window, and set the value `none` for any day on which no callbacks are allowed[^14].

### Verify

Validate all 5 Courtesy Callback projects in Call Studio again before deploying them[^73]. During the end-to-end test, a call refused outside the window shows the time-of-day failure bit 0x0010 in CallBackQueue.ValidationStatus[^74].

### Rollback

Restore 00:00:00-23:59:59 on each day[^14].

## Step 9: Deploy the applications to the VXML Server

**Unified CCE (CVP administered from the Unified CVP Operations Console)**

### Do

Deploy each Courtesy Callback application to the VXML Server by running deployApp.bat from that application's admin folder[^18].

### Verify

Run status.bat in `%CVP_HOME%\VXMLServer\admin` to verify that all the Courtesy Callback applications are running on the VXML Server[^68].

### Rollback

Suggested rollback: redeploy the previous application versions with the same procedure.

**Packaged CCE (CVP administered from Unified CCE Administration)**

### Do

Deploy the Courtesy Callback Call Studio applications to the VXML Server from Unified CCE Administration under Overview > Call Settings > IVR Settings > File Transfers[^48].

### Verify

Run status.bat in `%CVP_HOME%\VXMLServer\admin` to verify that all the Courtesy Callback applications are running on the VXML Server[^68].

### Rollback

Suggested rollback: transfer the previous application archives through the same page.

## Step 10: Configure the CCE routing script

### Do

Copy the sample routing script CourtesyCallback.ICMS from `\CVP\Downloads and Samples\` on the CVP install media to a CCE Admin Workstation[^30]. Enable the ECC variables user.CourtesyCallbackEnabled, user.microapp.ToExtVXML (an array of up to 5 elements) and user.microapp.FromExtVXML (an array of up to 4 elements)[^20]. Confirm that the VXML_Server_Interruptible and VXML_Server_Noninterruptible Network VRU scripts exist[^75]. Set the "Set media server" node to your VXML Server URL, for example `http://<ip>:7000/CVP`, and map the script's routes and skill groups to your own[^65]. In Block 3, the sample passes the CallbackEntry application, the EWT, qname=billing, queueapp=BillingQueue and the caller's ANI to the VXML Server through ToExtVXML[0] to ToExtVXML[3], so replace the queue name and queue application with your own[^69]. Cisco states that Courtesy Callback requires an accurate EWT calculation to behave optimally[^22]. The sample EWT formula multiplies calls in queue plus 1 by the skill group's average handle time (20 seconds if invalid), divides by the larger of Ready agents and agents talking, and returns 100 if the result is invalid[^24]. For precision queues, Cisco recommends queuing the call to a single precision queue, avoiding Consider If expressions and using minimal or no wait time between steps[^51].

### Verify

Import the script into the CCE Script Editor and run its validation tool to find nodes that need extra configuration[^63].

### Rollback

Suggested rollback: point the call type back to its previous routing script.

## Step 11: Test end to end

### Do

Place a test call into a queue whose EWT meets your Maximum Estimated Wait Time, because callbacks are offered only then[^36]. Accept the offer: the caller records a name and gives a number, a database record is written, and only the TDM side of the call is disconnected while the IP call keeps its place in queue[^70]. Answer the callback: the recorded caller name is played, the CallbackWait application confirms through the IVR that the right person answered, and the caller is briefly queued and connected to an agent with a screen pop[^10]. Repeat the test without answering the callback to exercise the retry settings, which default to 3;300 for no response and 4;300 for busy, no answer, trunks busy and error[^59]. After a limited number of attempts, the callback is terminated and marked as failed[^2].

### Verify

Callback_Validate exits with preemptive when the callback is valid, none when it is not allowed, refresh when the DBServlet needs a reference-data refresh so SetQueueDefaults must run first, or error[^72]. Its element data records result, ewt (the EWT passed from Unified ICM), gw, loc and capacity[^71]. If a call was refused, decode CallBackQueue.ValidationStatus: 0x0001 is OK, 0x0010 a time-of-day failure, 0x0020 an EWT failure, 0x0100 EXCEED_CAPACITY_GW and 0x0200 EXCEED_CAPACITY_QUEUE[^74].

### Rollback

Suggested rollback: point the call type back to its previous routing script.

## Step 12: Set up callback reporting

### Do

Import the Pending Callbacks report, which covers the last 30 minutes, and the Historical Callbacks report for older callbacks from CVP's Unified Intelligence Center templates[^49]. Set the callback database as their data source, otherwise an error occurs[^57]. The CallBack, CallBackEvent and CallBackQueue tables live in a separate callback database on the Reporting Server because of their OLTP nature[^5]. The CallBack table is a view over Callback_Current and Callback_Historical, and data moves from current to historical every 30 minutes[^6]. The CallBackEvent table keeps 7 days of data and is purged daily[^8]. When a caller cannot be reached after the retries, the callback is aborted and its database status updated, and these reports can be run to decide whether manual callbacks are needed[^34].

### Verify

Suggested check: confirm that your test calls from the previous step appear in the reports.

Callback event types in EventTypeRef are 20 Canceled, 21 Pending, 22 In Progress, 23 Tentative, 24 Complete, 25 Recover, 26 Created, 27 Dropped from queue, 28 Added to queue and 29 Max allowed callbacks to this ANI exceeded[^21].

### Rollback

Suggested rollback: remove the imported reports.

## Applicability

Applies to: Cisco Unified Customer Voice Portal, Cisco Packaged Contact Center Enterprise, and Cisco Unified Customer Voice Portal 12.5. Deployments: on-premises. Sources checked 2026-10-01. As of 2026-09-24, Cisco's CVP support page lists 15.0(1), released 30 April 2025, as the latest Unified CVP release[^84]. Unified CVP 12.5(1), 12.6(1) and 12.6(2) are Not Orderable, with End-of-Support on 31 December 2027[^85]. Cisco's 12.5/12.6 end-of-life bulletin covers CVP among its on-premises contact center applications[^86] and encourages customers to move to version 15 or higher[^87]. Packaged CCE is a predesigned, bounded deployment model of Unified CCE that uses the browser-based Unified CCE Administration interface[^88].

## What remains uncertain

Courtesy Callback configuration on a VXML gateway, as opposed to Cisco Virtualized Voice Browser, is not covered by the sources below. Which IOS-XE versions are affected by CSCts00930 is not covered by the sources below. Whether callback dialing rules on permitted hours, consent or caller ID apply to courtesy callbacks is not covered by the sources below.

## Sources

[^1]: 'Allow Unmatched Dialed Numbers' is unchecked by default, which restricts callbacks to numbers in the Allowed Dialed Numbers list; checking it allows every number not in the Denied list. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback > Dialed Number Configuration. Checked 2026-10-01.
[^2]: Callbacks are best effort: after a limited number of attempts to reach the caller, the callback is terminated and marked as failed. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Design Considerations. Checked 2026-10-01.
[^3]: The CVP 15.0(1) ingress gateway procedure for Courtesy Callback includes reloading the service with 'call application voice load cvp-survivability'. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Ingress Gateway for Courtesy Callback. Checked 2026-10-01.
[^4]: On the Courtesy Callback Call Server Deployment tab you move Call Servers from the Available list to the Selected list and click Save & Deploy. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback > Call Server Deployment tab. Checked 2026-10-01.
[^5]: The Courtesy Callback tables CallBack, CallBackEvent and CallBackQueue live in a separate callback database on the Reporting Server because of their OLTP nature. Source: [Reporting Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Database Schema](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/reporting/guide/ccvp_b_150_reporting-guide-for-cisco-unified-customer-voice-portal/cvp_m_150_database-schema.html), Database Schema > Courtesy CallBack Tables. Checked 2026-10-01.
[^6]: The CallBack table is a view over Callback_Current and Callback_Historical, and data moves from current to historical every 30 minutes. Source: [Reporting Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Database Schema](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/reporting/guide/ccvp_b_150_reporting-guide-for-cisco-unified-customer-voice-portal/cvp_m_150_database-schema.html), Database Schema > Courtesy CallBack Tables > CallBack Table. Checked 2026-10-01.
[^7]: In the CallbackEntry project's Callback_Set_Queue_Defaults node, the keepalive value must be greater than the length of the queue music; the sample's default is 120 seconds. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Call Studio Scripts for Courtesy Callback. Checked 2026-10-01.
[^8]: The CallBackEvent table holds a record of each callback event and keeps seven days of data, purged daily. Source: [Reporting Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Database Schema](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/reporting/guide/ccvp_b_150_reporting-guide-for-cisco-unified-customer-voice-portal/cvp_m_150_database-schema.html), Database Schema > Courtesy CallBack Tables > CallBackEvent Table. Checked 2026-10-01.
[^9]: The CallBack table's CallBackType column is char(1), with P for preemptive and S for scheduled. Source: [Reporting Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Database Schema](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/reporting/guide/ccvp_b_150_reporting-guide-for-cisco-unified-customer-voice-portal/cvp_m_150_database-schema.html), Database Schema > Courtesy CallBack Tables > CallBack Table > CallBackType. Checked 2026-10-01.
[^10]: On the callback, the recorded caller name is played and the CallbackWait application confirms through the IVR that the right person answered before the caller is briefly queued and connected to an agent with a screen pop. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Typical Use Scenario. Checked 2026-10-01.
[^11]: On the ingress gateway, the cvp-survivability service takes a ccb parameter of the form id:<host name or IP>;loc:<location name>;trunks:<number of callback trunks>. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Ingress Gateway for Courtesy Callback. Checked 2026-10-01.
[^12]: Cisco's sample ingress configuration binds the cvp-survivability service to an incoming POTS dial peer for the called number and adds an outgoing POTS dial peer for the PSTN destinations used by callbacks. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Configure the Ingress Gateway (sample dial-peer voice 978555 pots and 978554 pots). Checked 2026-10-01.
[^13]: Cisco gives as example callback criteria an expected queue wait exceeding a maximum number of minutes, an assigned customer status such as gold, or the service the caller requested. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Callback Criteria. Checked 2026-10-01.
[^14]: Callback_Set_Queue_Defaults has a time-range setting for each day from Sunday to Saturday, defaulting to 00:00:00-23:59:59, where the value 'none' allows no callbacks that day. Source: [Element Specifications for Cisco Unified CVP VXML Server and Call Studio, Release 15.0(1) - Callback_Set_Queue_Defaults](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/elementspecification/guide/ccvp_b_150-element-specifications-guide-for-cvp-vxml-and-call-studio/callback_set_queue_defaults.html), Callback_Set_Queue_Defaults > Settings > Sunday through Saturday Time Range. Checked 2026-10-01.
[^15]: After importing the Courtesy Callback projects into Call Studio, each project's Default Audio Path URI must be updated with the media server's IP address and port. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Configure Call Studio Scripts for Courtesy Callback. Checked 2026-10-01.
[^16]: The Denied Dialed Numbers list is prepopulated when the local language is en-us (United States English). Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback > Denied Dialed Numbers. Checked 2026-10-01.
[^17]: An exact match takes highest precedence, and when an allowed and a denied pattern are equally specific the denied pattern wins. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback > Dialed Number Configuration. Checked 2026-10-01.
[^18]: In the CVP 15.0(1) procedure, each Courtesy Callback application is deployed to the VXML Server by running deployApp.bat from that application's admin folder. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Call Studio Scripts for Courtesy Callback. Checked 2026-10-01.
[^19]: Cisco says not to modify the CallbackEngine and CallbackQueue applications, which keep the VoIP leg alive and handle the in-queue keepalive; BillingQueue, CallbackEntry and CallbackWait are the customisable ones. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Sample Scripts and Audio Files for Courtesy Callback. Checked 2026-10-01.
[^20]: The Courtesy Callback CCE script needs the ECC variables user.CourtesyCallbackEnabled, user.microapp.ToExtVXML (array of up to 5 elements) and user.microapp.FromExtVXML (array of up to 4 elements) enabled. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), CCE Script for Courtesy Callback > Configure the CCE Script. Checked 2026-10-01.
[^21]: Callback event types in EventTypeRef are 20 Canceled, 21 Pending, 22 In Progress, 23 Tentative, 24 Complete, 25 Recover, 26 Created, 27 Dropped from queue, 28 Added to queue and 29 Max allowed callbacks to this ANI exceeded. Source: [Reporting Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Database Schema](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/reporting/guide/ccvp_b_150_reporting-guide-for-cisco-unified-customer-voice-portal/cvp_m_150_database-schema.html), Database Schema > EventTypeRef Table. Checked 2026-10-01.
[^22]: Cisco states that Courtesy Callback requires an accurate EWT calculation to behave optimally. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), CCE Script for Courtesy Callback > Overview of CCE Script Configuration. Checked 2026-10-01.
[^23]: The CVP configuration guide states that the default EWT value for Courtesy Callback is 90 minutes (5400 seconds) and can be configured up to four hours (14400 seconds). Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Courtesy Callback up to Four Hours. Checked 2026-10-01.
[^24]: The sample EWT formula multiplies calls in queue plus one by the skill group's average handle time (20 seconds if invalid), divides by the larger of Ready agents and agents talking, and returns 100 if the result is invalid. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), CCE Script for Courtesy Callback > Overview of CCE Script Configuration (EWT expression). Checked 2026-10-01.
[^25]: An integrator recommends capturing numbers from unsuccessful callbacks and adding them to an outbound campaign for later attempts (field report). Source: [Deploying Courtesy Callback the Correct Way](https://www.ctipath.com/articles/customer-experience/deploying-courtesy-callback-the-correct-way/), article body, closing recommendations. Checked 2026-10-01.
[^26]: An integrator reports that offering callback to too many callers at once skews the wait estimate and recommends starting with a fraction of eligible callers and not re-offering after two declines (field report). Source: [Deploying Courtesy Callback the Correct Way](https://www.ctipath.com/articles/customer-experience/deploying-courtesy-callback-the-correct-way/), article body, paragraphs on offer rate. Checked 2026-10-01.
[^27]: CourtesyCallbackStudioScripts.zip contains five Call Studio projects: BillingQueue, CallbackEngine, CallbackEntry, CallbackQueue and CallbackWait. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Sample Scripts and Audio Files for Courtesy Callback. Checked 2026-10-01.
[^28]: Gateway capacity validation fails when the callbacks counted for that gateway (pending, in progress or tentative, plus completed and connected in Callback_Current) reach the ccb trunks value. Source: [Troubleshoot CVP Courtesy Callback (CCB) Gateway Capacity Validation Failure](https://www.cisco.com/c/en/us/support/docs/customer-collaboration/unified-customer-voice-portal/211537-Troubleshoot-CVP-Courtesy-Callback-CCB.html), Problem; How gateway capacity is validated. Checked 2026-10-01.
[^29]: When gateway capacity is exceeded the caller is not offered a callback and goes straight to queue whatever the EWT, logging Validate result none with the EXCEED_CAPACITY_GW bit set. Source: [Troubleshoot CVP Courtesy Callback (CCB) Gateway Capacity Validation Failure](https://www.cisco.com/c/en/us/support/docs/customer-collaboration/unified-customer-voice-portal/211537-Troubleshoot-CVP-Courtesy-Callback-CCB.html), Problem; Log messages. Checked 2026-10-01.
[^30]: The sample routing script CourtesyCallback.ICMS is supplied on the CVP install media under \CVP\Downloads and Samples\ and is copied to a CCE Admin Workstation. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), CCE Script for Courtesy Callback > Modifiable Example Scripts and Sample Audio Files; Configure the CCE Script. Checked 2026-10-01.
[^31]: Cisco states that Courtesy Callback is supported for IP-originated calls as well as TDM calls. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Design Considerations. Checked 2026-10-01.
[^32]: The Callback_Set_Queue_Defaults Keepalive Interval setting defaults to 180 seconds, with a minimum of 1 and a maximum of 300. Source: [Element Specifications for Cisco Unified CVP VXML Server and Call Studio, Release 15.0(1) - Callback_Set_Queue_Defaults](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/elementspecification/guide/ccvp_b_150-element-specifications-guide-for-cvp-vxml-and-call-studio/callback_set_queue_defaults.html), Callback_Set_Queue_Defaults > Settings > Keepalive Interval. Checked 2026-10-01.
[^33]: Cisco advises deploying changes to the Courtesy Callback configuration, such as a different Reporting Server, in a maintenance window, because restarting the Reporting Server can cancel currently scheduled callbacks. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback (note). Checked 2026-10-01.
[^34]: When a caller cannot be reached after the retries, the callback is aborted, its database status is updated, and reports can be run to decide whether manual callbacks are needed. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Typical Use Scenario. Checked 2026-10-01.
[^35]: 'Maximum Number of Calls Per Calling Number' defaults to 0, meaning unlimited callbacks, and accepts at most 1000. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback > Dialed Number Configuration. Checked 2026-10-01.
[^36]: The Callback_Set_Queue_Defaults 'Maximum Estimated Wait Time' setting defaults to 900, and callbacks are offered for the queue only when the EWT is greater than or equal to that number of seconds. Source: [Element Specifications for Cisco Unified CVP VXML Server and Call Studio, Release 15.0(1) - Callback_Set_Queue_Defaults](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/elementspecification/guide/ccvp_b_150-element-specifications-guide-for-cvp-vxml-and-call-studio/callback_set_queue_defaults.html), Callback_Set_Queue_Defaults > Settings > Maximum Estimated Wait Time. Checked 2026-10-01.
[^37]: Courtesy Callback application media sits under en-us\app on the media server and Say It Smart media under en-us\sys; if Say It Smart media is already present, only the en-us\app files are needed. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Media Server for Courtesy Callback. Checked 2026-10-01.
[^38]: The Courtesy Callback media files ship as %CVP_HOME%\OPSConsoleServer\CCBDownloads\CCBAudioFiles.zip, which is unzipped and copied to a media server. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Media Server for Courtesy Callback. Checked 2026-10-01.
[^39]: Answering machine detection is not available for Courtesy Callback. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Design Considerations. Checked 2026-10-01.
[^40]: Calls transferred to agents using DTMF *8, TBCT or hookflash cannot use Courtesy Callback. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Design Considerations. Checked 2026-10-01.
[^41]: Initially there are no allowed dialed numbers for the Courtesy Callback feature. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback > Dialed Number Configuration. Checked 2026-10-01.
[^42]: Courtesy Callback cannot place its outbound calls through any other egress gateway. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Design Considerations. Checked 2026-10-01.
[^43]: Cisco's Courtesy Callback documentation states that a callback cannot be scheduled for a specific time. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Introduction. Checked 2026-10-01.
[^44]: In the Unified CVP 15.0(1) Operations Console, Courtesy Callback is configured under System > Courtesy Callback. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback. Checked 2026-10-01.
[^45]: In Packaged CCE 15.0(1), the Courtesy Callback Reporting Server and dialed-number settings are configured in Unified CCE Administration under Overview > Features > Courtesy Callback. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Configure the Reporting Server. Checked 2026-10-01.
[^46]: The Packaged CCE Courtesy CallBack API returns 201 when the setting is saved in the AW database but the update failed for one or more CVP devices, and 503 while a sync is in progress. Source: [Cisco Packaged Contact Center Enterprise Developer Reference, Release 15.0(1) - Courtesy CallBack API](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/icm_enterprise/icm_enterprise_15_0_1/Program/guide/pcce_b_cisco_packaged_cce_developer_reference_release_1501/pcce_m_courtesy-callback-api_1501.html), Courtesy CallBack API > Response codes. Checked 2026-10-01.
[^47]: The Packaged CCE 15.0(1) Courtesy CallBack API at /unifiedconfig/config/ccb/{datacenter} reads and updates the CVP Reporting Server address through a reportingAddress parameter. Source: [Cisco Packaged Contact Center Enterprise Developer Reference, Release 15.0(1) - Courtesy CallBack API](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/icm_enterprise/icm_enterprise_15_0_1/Program/guide/pcce_b_cisco_packaged_cce_developer_reference_release_1501/pcce_m_courtesy-callback-api_1501.html), Courtesy CallBack API > URL and Operations; Parameters. Checked 2026-10-01.
[^48]: In Packaged CCE 15.0(1), the Courtesy Callback Call Studio applications are deployed to the VXML Server from Unified CCE Administration under Overview > Call Settings > IVR Settings > File Transfers. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Deploy the VXML Application to VXML Server. Checked 2026-10-01.
[^49]: CVP's Unified Intelligence Center templates include a Pending Callbacks report covering the last 30 minutes and a Historical Callbacks report for older callbacks. Source: [Reporting Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Cisco Unified Customer Voice Portal Templates for Cisco Unified Intelligence Center](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/reporting/guide/ccvp_b_150_reporting-guide-for-cisco-unified-customer-voice-portal/cvp_m_150_unified-cvp-templates-for-unified-intelligence-center.html), Cisco Unified Customer Voice Portal Templates for Cisco Unified Intelligence Center > Callback reports. Checked 2026-10-01.
[^50]: After upgrading CVP from 12.x to 15.0(1), if 'Allow unmatched Dialed Numbers' is checked, uncheck and save it, re-check and save it on the Courtesy Callback page, then restart the CVP Reporting Server. Source: [Installation and Upgrade Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Upgrade Unified CVP](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/installation/guide/ccvp_b_1501_installation-upgrade-guide-cisco-unified-customer-voice-portal/ccvp_b_install_and_upgrade_12-5_chapter_0101.html), Postupgrade Tasks > Synchronize Unified CVP Property for Courtesy Callback. Checked 2026-10-01.
[^51]: For precision queues Cisco recommends queuing the call to a single precision queue, avoiding Consider If expressions and using minimal or no wait time between steps so EWT stays accurate. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), CCE Script for Courtesy Callback > Overview of CCE Script Configuration. Checked 2026-10-01.
[^52]: In Unified CVP Courtesy Callback, a caller queued by Unified CVP can hang up and be called back when an agent is close to becoming available; Cisco calls this preemptive callback. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Introduction. Checked 2026-10-01.
[^53]: Callback_Set_Queue_Defaults caps callbacks per queue with Maximum Percentage (default 50, range 0-100) and Maximum Count (default 9999999). Source: [Element Specifications for Cisco Unified CVP VXML Server and Call Studio, Release 15.0(1) - Callback_Set_Queue_Defaults](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/elementspecification/guide/ccvp_b_150-element-specifications-guide-for-cvp-vxml-and-call-studio/callback_set_queue_defaults.html), Callback_Set_Queue_Defaults > Settings > Maximum Percentage; Maximum Count. Checked 2026-10-01.
[^54]: If the Reporting Server is not back online within the CallbackWait retry window, the pending entry is not called back. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Sample Scripts and Audio Files for Courtesy Callback (CallbackWait). Checked 2026-10-01.
[^55]: On the Courtesy Callback General tab you select the Reporting Server that stores callback data; leaving it blank associates no Reporting Server with the Courtesy Callback deployment. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback > General tab. Checked 2026-10-01.
[^56]: The Unified CVP Reporting Server is a prerequisite for Courtesy Callback. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Design Considerations. Checked 2026-10-01.
[^57]: Callback reports must use the callback database as their data source or an error occurs. Source: [Reporting Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Cisco Unified Customer Voice Portal Templates for Cisco Unified Intelligence Center](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/reporting/guide/ccvp_b_150_reporting-guide-for-cisco-unified-customer-voice-portal/cvp_m_150_unified-cvp-templates-for-unified-intelligence-center.html), Cisco Unified Customer Voice Portal Templates for Cisco Unified Intelligence Center > Callback reports. Checked 2026-10-01.
[^58]: Queue Name and Calling Line ID, the CLI used on the callback, are the required Callback_Set_Queue_Defaults settings. Source: [Element Specifications for Cisco Unified CVP VXML Server and Call Studio, Release 15.0(1) - Callback_Set_Queue_Defaults](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/elementspecification/guide/ccvp_b_150-element-specifications-guide-for-cvp-vxml-and-call-studio/callback_set_queue_defaults.html), Callback_Set_Queue_Defaults > Settings > Queue Name; Calling Line ID. Checked 2026-10-01.
[^59]: Callback_Set_Queue_Defaults retry settings take 'attempts;interval-seconds' values, defaulting to 3;300 for no response and 4;300 for busy, no answer, trunks busy and error. Source: [Element Specifications for Cisco Unified CVP VXML Server and Call Studio, Release 15.0(1) - Callback_Set_Queue_Defaults](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/elementspecification/guide/ccvp_b_150-element-specifications-guide-for-cvp-vxml-and-call-studio/callback_set_queue_defaults.html), Callback_Set_Queue_Defaults > Settings > Max No Response Count, Max Busy Count, Max No Answer Count, Max Trunks Busy Count, Max Error Count. Checked 2026-10-01.
[^60]: The Callback_Set_Queue_Defaults Ring No Answer Timeout defaults to 30 seconds, ranges 0 to 300, and must be less than the Keepalive Interval. Source: [Element Specifications for Cisco Unified CVP VXML Server and Call Studio, Release 15.0(1) - Callback_Set_Queue_Defaults](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/elementspecification/guide/ccvp_b_150-element-specifications-guide-for-cvp-vxml-and-call-studio/callback_set_queue_defaults.html), Callback_Set_Queue_Defaults > Settings > Ring No Answer Timeout. Checked 2026-10-01.
[^61]: A courtesy callback is placed through the same ingress gateway through which the original call arrived. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Design Considerations. Checked 2026-10-01.
[^62]: Although the callback schema keeps an S (scheduled) callback type and an ICM_NO_SCHEDULED_ALLOWED validation bit, none of the 15.0(1) configuration material reviewed exposes a way to configure scheduled callbacks, so only preemptive callback can be planned for (inferred). Source: [Reporting Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Database Schema](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/reporting/guide/ccvp_b_150_reporting-guide-for-cisco-unified-customer-voice-portal/cvp_m_150_database-schema.html), Database Schema > CallBack Table (CallBackType) and CallBackQueue Table (ValidationStatus), read against Features Guide > Introduction. Checked 2026-10-01.
[^63]: As a starting point for a simple test, Cisco suggests importing the sample script into the CCE Script Editor and running its validation tool to find nodes that need extra configuration. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), CCE Script for Courtesy Callback > Modifiable Example Scripts and Sample Audio Files. Checked 2026-10-01.
[^64]: The Courtesy Callback General tab has an 'Enable secure communication with the Courtesy Callback database' check box that secures Call Server to Reporting Server communication for callbacks. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback > General tab. Checked 2026-10-01.
[^65]: In the sample CCE script, the 'Set media server' node is set to the VXML Server URL, for example http://<ip>:7000/CVP, and the script's routes and skill groups are mapped to your own. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), CCE Script for Courtesy Callback > Configure the CCE Script. Checked 2026-10-01.
[^66]: Courtesy Callback requires 'signaling forward unconditional' under voice service voip on the gateway so that SIP INFO messages are forwarded. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Configure the Ingress Gateway. Checked 2026-10-01.
[^67]: A sip-profile configuration is needed on the ISR for Courtesy Callback only when deploying an IOS-XE version affected by CSCts00930. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Ingress Gateway for Courtesy Callback. Checked 2026-10-01.
[^68]: Running status.bat in %CVP_HOME%\VXMLServer\admin verifies that all the Courtesy Callback applications are running on the VXML Server. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Call Studio Scripts for Courtesy Callback. Checked 2026-10-01.
[^69]: Block 3 of the sample CCE script passes the CallbackEntry application, the EWT, qname=billing, queueapp=BillingQueue and the caller's ANI to the VXML Server through ToExtVXML[0] to ToExtVXML[3]. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), CCE Script for Courtesy Callback > Configure the CCE Script (Block 3). Checked 2026-10-01.
[^70]: When the caller accepts, they record their name and give a number, a database record is written, and only the TDM side of the call is disconnected while the IP call keeps its place in queue. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Typical Use Scenario. Checked 2026-10-01.
[^71]: Callback_Validate records element data for result, ewt (the EWT passed from Unified ICM), gw, loc and capacity. Source: [Element Specifications for Cisco Unified CVP VXML Server and Call Studio, Release 15.0(1) - Callback_Validate](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/elementspecification/guide/ccvp_b_150-element-specifications-guide-for-cvp-vxml-and-call-studio/callback_validate.html), Callback_Validate > Element Data. Checked 2026-10-01.
[^72]: The Callback_Validate element exits with preemptive (callback valid), none (not allowed), refresh (DBServlet needs a reference-data refresh, so SetQueueDefaults must run first) or error. Source: [Element Specifications for Cisco Unified CVP VXML Server and Call Studio, Release 15.0(1) - Callback_Validate](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/elementspecification/guide/ccvp_b_150-element-specifications-guide-for-cvp-vxml-and-call-studio/callback_validate.html), Callback_Validate > Exit States. Checked 2026-10-01.
[^73]: Cisco's procedure validates all five Courtesy Callback projects in Call Studio before deploying them. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Configure Call Studio Scripts for Courtesy Callback. Checked 2026-10-01.
[^74]: CallBackQueue.ValidationStatus is a bitmask in which 0x0001 is OK, 0x0010 a time-of-day failure, 0x0020 an EWT failure, 0x0100 EXCEED_CAPACITY_GW and 0x0200 EXCEED_CAPACITY_QUEUE. Source: [Reporting Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Database Schema](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/reporting/guide/ccvp_b_150_reporting-guide-for-cisco-unified-customer-voice-portal/cvp_m_150_database-schema.html), Database Schema > Courtesy CallBack Tables > CallBackQueue Table > ValidationStatus. Checked 2026-10-01.
[^75]: The Courtesy Callback CCE script uses the VXML_Server_Interruptible and VXML_Server_Noninterruptible Network VRU scripts, which must exist. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), CCE Script for Courtesy Callback > Configure the CCE Script. Checked 2026-10-01.
[^76]: No special Courtesy Callback configuration is required on Cisco Virtualized Voice Browser when it is used instead of a VXML gateway. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup (component list: Virtualized Voice Browser). Checked 2026-10-01.
[^77]: Calls that allow callback must be queued using a Unified CVP VXML Server. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Initial Setup > Design Considerations. Checked 2026-10-01.
[^78]: Preemptive callback does not change how long a customer waits to reach an agent; it only lets the caller hang up instead of staying in queue listening to music. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Introduction. Checked 2026-10-01.
[^79]: The CallbackWait application's WaitLoop retry count defaults to six retries in the Check Retry element and can be raised to give a longer window before the call is dropped. Source: [Cisco Packaged Contact Center Enterprise Features Guide, Release 15.0(1) - Courtesy Callback](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/maintenance/guide/pcce_b_1501_features-guide/pcce_m_1501_courtesy-callback.html), Courtesy Callback > Sample Scripts and Audio Files for Courtesy Callback (CallbackWait). Checked 2026-10-01.
[^80]: In Courtesy Callback dialed-number patterns, '.' and 'X' each match a single character in any position. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback > Dialed Number Configuration. Checked 2026-10-01.
[^81]: In Courtesy Callback dialed-number patterns, the characters '>', '*', '!' and 'T' match multiple characters but can only be used at the end of a pattern. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - System Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_150-configuration-guide-for-cisco-unified-customer-voice-portal/system_configuration.html), Courtesy Callback > Configure Reporting Server for Courtesy Callback > Dialed Number Configuration. Checked 2026-10-01.
[^82]: Failure of a CVP Reporting Server has no impact on call survivability. Source: [Solution Design Guide for Cisco Unified Contact Center Enterprise, Release 15.0(1) - High Availability and Network Design](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/icm_enterprise/icm_enterprise_15_0_1/design/guide/ucce_b_ucce_soldg-for-unified-cce-1501/rcct_m_high-availability-and-network-design_15_0.html), High Availability and Network Design chapter, CVP Reporting Server. Checked 2026-09-24.
[^83]: CVP ingress gateway setup involves copying bootstrap.tcl, handoff.tcl, cvperror.tcl, ringtone.tcl and survivability.tcl, plus related VXML and WAV files, to the gateway. Source: [Configuration Guide for Cisco Unified Customer Voice Portal, Release 15.0(1) - Gateway Configuration](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/15-0-1/configuration/guide/ccvp_b_1501-configuration-guide-for-cisco-customer-voice-portal-release/gateway_configuration.html), Gateway Configuration chapter, transfer script files procedure. Checked 2026-09-24.
[^84]: As of 2026-09-24, Cisco's CVP support page lists 15.0(1), released 30 April 2025, as the latest Unified CVP release, and the series is Available for order. Source: [Cisco Unified Customer Voice Portal - Support](https://www.cisco.com/c/en/us/support/customer-collaboration/unified-customer-voice-portal/series.html), Product Information / Latest release block. Checked 2026-09-24.
[^85]: Unified CVP 12.5(1), 12.6(1) and 12.6(2) are Not Orderable, with End-of-Support on 31 December 2027. Source: [Cisco Unified Customer Voice Portal - Support](https://www.cisco.com/c/en/us/support/customer-collaboration/unified-customer-voice-portal/series.html), Release list rows for 12.6(2), 12.6(1), 12.5(1). Checked 2026-09-24.
[^86]: For the Collaboration Flex Plan 12.5/12.6 on-premises contact center offers (including CVP), end of sale was 31 December 2025, last ship 31 March 2026, and end of software maintenance releases is 31 December 2026. Source: [End-of-Sale and End-of-Life Announcement for the Cisco Version 12.5/12.6 of On-Premises Contact Center applications (UCCE, PCCE, UCCX, CVP) and associated On-Premises software and licenses](https://www.cisco.com/c/en/us/products/collateral/unified-communications/cisco-collaboration-flex-plan/12-5-12-6-ucce-pcce-uccx-cvp-eol.html), Table 1 End-of-Life Milestones. Checked 2026-09-24.
[^87]: Cisco's 12.5/12.6 EoL bulletin encourages customers to move to version 15 or higher. Source: [End-of-Sale and End-of-Life Announcement for the Cisco Version 12.5/12.6 of On-Premises Contact Center applications (UCCE, PCCE, UCCX, CVP) and associated On-Premises software and licenses](https://www.cisco.com/c/en/us/products/collateral/unified-communications/cisco-collaboration-flex-plan/12-5-12-6-ucce-pcce-uccx-cvp-eol.html), Product Migration Options section. Checked 2026-09-24.
[^88]: Packaged CCE is a predesigned, bounded deployment model of Unified CCE, offering simpler ordering and rollout and the browser-based Unified CCE Administration interface. Source: [Solution Design Guide for Cisco Packaged Contact Center Enterprise, Release 15.0(1) - Contact Center Enterprise Solutions Overview](https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/pcce/pcce_15_0_1/design/guide/pcce_b_pcce-solution-design-guide-15-0/rcct_m_contact-center-enterprise-solutions-overview_15_0.html), Contact Center Enterprise Solutions Overview chapter, Packaged CCE description. Checked 2026-09-24.
