Configuring Verba Cisco Recording Announcement for Inbound Calls


Verba uses Cisco External Call Control (ECC) to trigger prompts for the calls controlled by CUCM.

For more information on ECC, click here.

The Cisco ECC feature relies on an external application (hosted on Verba servers in this case) that responds to external call control requests configured on various trigger points, such as translation patterns, route patterns, lines, etc. Cisco UCM provides an XML/HTTP API for ECC request, called Cisco Unified Routing Rules XML Interface (CURRI).

Inbound call flow

  1. External person calls an internal number.

  2. ECC is triggered on the called directory number.

  3. CUCM sends a routing request to the Verba Announcement service (XML/HTTP API)

  4. The Verba Announcement service decides based on the announcement configuration what to do with the call, or if the call can be established without an announcement. It returns an appropriate routing decision to the CUCM.

  5. CUCM based on CURRI response redirects the call to the Verba Announcement server/SIP trunk.
  6. The Verba Announcement service accepts caller's call and plays the announcement prompt
  7. The Verba Announcement service blind transfers the call back to the original callee


new SIP Trunk pointing to the Verba Announcement server has to be created.

The SIP Trunk used for the recording cannot be used; this has to be a separate SIP Trunk. Note that it requires a custom SIPTrunkSecurityProfile,since it needs a separate incoming port at the UCM side. The same SIP Trunk can be used for inbound and outbound announcement.

The SIP trunk should deliver Diversion header and use the appropriate redirection CSS to be able to handle the redirected calls properly.
Diversion header should deliver callee in a routable form (translation issues) and rerouting CSS should resolve this number to successfully blind transfer the call back to original callee after announcement played
See more under SIP trunk settings.

Configuring Cisco for Recording Announcement

Creating routing to the Announcement Service:

Configuring call routing in Cisco UCM for recording

Inbound Announcement and Proxy-based Recording

In case of proxy-based recording, the number of the announcement service has to be proxied.

Creating the External Call Control Profile:

If the outbound announcement is configured already, then the existing External Call Control Profile can be used, so Step 1-5 can be skipped.

Step 1 - Open the Cisco Unified Call Manager web interface and go to the Call Routing \ External Call Control Profile menu.

Step 2 - Click on the Add New button.

Step 3 - Provide a Name, and set the Primary Web Service setting the following way: http://verba_server_hostname:10205/ciscoannouncement

              Optionally, the announcement service can redirect the call to multiple trunks and announcement service can terminate multiple trunks.
              In large deployments it might be neccessary to use different CSSs for outbound announcement's outbound leg or for resolving original callee at redirection CSS.
              This would also require to setup different ECCs routing the call to the desired trunk (route pattern) and assign it to the desired triggering point(s) (lines/translation patterns/route patterns).
              In this case the trunk's phone number where the calls to be announced should be redirected should be set in the web service URL with ?redirectto=trunks_number.
              For example, redirecting calls to 989898 can be specified by setting the url to: http://verba_server_hostname:10205/ciscoannouncement?redirectto=989898.
              If not specified, then the redirection will happen to the number set in the Announcement server's config handling the CURRI request

Step 4 - Set the Call Treatment on Failures setting to Block Calls.

Step 5 - Click on the Save button.

Assigning the External Call Control Profile to the Directory Number(s):

Step 1 - Go to the Device \ Phone menu, and search for the phone device.

Step 2 - Select the phone device, then on the left side click on the directory number.

Step 3 - Set the External Call Control Profile setting to the one created earlier.

Step 4 - Click on Save button then on the Apply Config.

Step 5 - Repeat Step 1-4 at all phone devices where the inbound announcement si required.

Inbound Announcement and Proxy-based Recording

In case of proxy-based recording, the External Call Control Profile has to be set on the patterns (which are matching to the outside numbers) pointing to the Verba Proxy server.

Configuring Verba for Cisco Recording Announcement

Step 1 - On the Verba web interface, navigate to System > Servers > Select the server which is hosting the Announcement service  > Click on the Service Activation tab.

Step 2 - Activate the Verba Cisco Announcement Service by clicking on the  icon.

Step 3 - Click on the Change Configuration Settings tab. Expand the Cisco Recording Announcement section.

Step 4 - Add a new SIP port by clicking on the  icon at the SIP Ports setting.

Step 5 - At the right panel, provide the SIP Port number. This has to be port the SIP Trunk connecting to the Verba server on. 

Secure SIP Trunk Connection

If secure SIP Trunk connection is required, the following settings have to be set:

SSL/TLS Certificate: The thumbprint of the Verba server certificate being used for the connection. This has to be the same certificate which was uploaded to the CUCM.

SSL/TLS Trust List: The thumbprint of the CUCM server certificate, or the thumbprint of the CA certificate which issued the CUCM server certificate. Alternatively, "*" can be used. In this case, every certificate going to be trusted, whose CA certificate can be foundin under the Trusted Root Certificate Authorities folder. If left empty, every certificate going to be trusted.

Alternatively, .crt/.cer and .key files can be used. In this case, UNC paths can be provided in the SSL/TLS Certificate and the SSL/TLS Key settings, and the SSL/TLS Key Password has to be provided.

Step 6 - Provide the announcement service SIP trunk number at the Service's Phone Number setting. (see more at ECC profile setup Step 3)

Step 7 - Set a value for the Internal Number/Domains Pattern parameter. The value is a regular expression that defines the internal phone numbers or number ranges to accurately identify the direction of the recorded calls.

In multi-tenant environments, if an internal pattern regular expression is defined in both the environment and the recording announcements configuration, the pattern specified in the environment configuration is used to determine the internal values, not the pattern defined in the recording announcements configuration.

Step 8 - If multiple announcement services are configured for redundancy, enumerate the CURRI listener address/URL of all announcement servers in Announcement Servers (URL) setting. Make sure firewall will allow this communication.
              The services shares with eachother what calls they are dealing with to ensure CURRI will not redirect already redirected calls again if related call legs were handled on different servers



Step 9 - Save the changes by clicking on the  icon.

Step 10 - A notification banner will appear on the top. Click on the click here link, so you will be redirected to the Configuration Tasks tab. Click on the Execute button in order to execute the changes.

Step 11 - Click on the Service Control tab.

Step 12 - Start the Verba Cisco Announcement Service by clicking on the  icon.

Setting up Extensions for Inbound Announcement

Step 1 - In the Verba web interface, go to Users > Users menu.

Step 2 - Select the user from the list.

Step 3 - Under the Cisco Recording Announcement section set the Play Notification for Inbound Calls setting.

Step 4 - Click the Save.

Step 5 - A notification banner will appear on the top. Click on the click here link, and you will be redirected to the Configuration Tasks tab. Click on the Execute button in order to execute the changes.

Configuring custom prompts for users (optional)

Step 1 - Login to the Announcement server, and go to the C:\Program Files\Verba\resources\announcement folder.It is possible to configure custom notification sounds on a per user basis. To achieve this follow these steps:

Step 2 - Copy the .wma files to the conferenceinbound and outbound folders.

Step 3 - Open the Verba web interface, click on the System / Servers and select the Media Repository server, or select the appropriate Configuration Profile at System / Configuration Profiles

Step 4 - Click on the Change Configuration Settings tab. Expand the Web Application section.

Step 5 - Expand the Lync recording Announcement node, and add the names of the .wma files to the PSTN Inbound Announcement Prompt Files and the Conference Announcement Prompt Files, one in a line.

Step 6 - Click the  icon to save your settings.

Step 7 - The system will notify you that the changes need to be applied to the server by restarting the involved services. Execute the required tasks.

Step 8 - Repeat the steps on each Media Repository server.

To configure the custom prompt for the users please see the User Configuration configuration.