|
|
The following sections serve demonstrate how to create a new application using the programming constructs and the Cisco Application Editor.
The tutorial provides step-by-step procedures for creating the Cisco IP AA application, which is provided with the Cisco Application Editor. It divides the process of creating the application into distinct tasks, as follows:
After completing this tutorial, you should have a sufficient understanding of the different features of the Cisco Application Editor so as to modify the Cisco IP AA application or to design your own application. You can view the completed Cisco IP AA application by opening the file aa.aef.
![]() |
Caution Modifying the aa.aef file could potentially damage your Cisco IP AA. |
The Cisco IP AA application provides the following functionality:
The Cisco IP AA application requires the use of the following audio prompts, stored as .wav files in the WFAVVID/Prompts/user/en_Us directory and installed automatically with the Cisco IP Telephony application engine:
This section describes how to perform the following procedures:
Open the Cisco Application Editor by selecting the following option from the Windows Start menu:
Start > Programs > Application 2.0 > Application Editor
The system displays the Cisco Application Editor window.
Procedure
The system displays a new Designer window, as shown in Figure 3-1.

Step 2 View the file's properties.
a. With the new application highlighted, choose File > Properties
This window displays the name of the active application and is informational only.
b. Click the Summary tab.
The system displays the File Properties Summary window.
c. Supply the descriptive information for the script.
d. Click OK.
Step 3 Declare variables for the application.
The Variable pane lets you create, modify, and view the global variables for your application. You need to define a variable before you can define the action of an application step on that variable.
For an auto attendant type application, the following string variables have already been declared to store the filename of the user prompts. You need to define the name of the files when you define the variables.
a. Click the New Variable icon at the top of the Variable pane, as shown in Figure 3-2.

The system displays the Edit Variable window.
b. In the Name field, enter welcomePrompt. This defines the variable that stores the filename of the .wav file that users hear when the application answers a call.
c. Select String from the Type drop-down list box.
d. Declare the string variable operExtn to store the extension for connecting to a human agent, as shown Figure 3-3.

e. Declare the string variable extnXfer by entering "extnXfer" in the name field and selecting String from the Type drop down menu. This variable will be used to store the number entered by the user for the extension that the caller wishes to reach.
When you are finished, the completed Variable window will appear, as shown in Figure 3-4.

Related Topics
This section describes how to do the following:
Procedure
a. With the left mouse button, click on the IVR folder to view the available application steps.
The system displays the contents of the IVR folder.
b. With the left mouse button, drag the Accept step to the Start step on the blank Designer window.
![]() |
Note Get AA Properties is only allowed for Cisco IP AA, and there can be only one Cisco IP AA file for each Cisco Application Engine. |
The cursor displays the international "prohibited" sign until you move it to the correct location.
c. Drag the Output step to the Accept step.
d. With the left mouse button, click on the General folder to view the available application steps.
The system displays the contents of the General folder.
e. Drag the Label step from the General folder to the Output step on the Designer window.
f. Drag the Menu step from the IVR folder to the Label step.
When you finish, the Designer window will appear.
Step 2 Customize the Output step.
a. With the right mouse button, click on the Output step and select Properties from the popup menu that appears.
b. Accept the default selection for Media Type.
c. Click the Select a Variable selection button.
d. Select welcomePrompt for Name.
e. Accept the default selection for Type.
f. Accept the default values for Interruptible and Flush Input Buffer.
Interruptible means that the playback of the prompt is stopped when the caller enters the first DTMF value. Flush Input Buffer is not desirable here, because it would cause the user's entries prior to the start of the prompt to be ignored.
g. Click OK to apply the changes and close the customizer window.
Step 3 Customize the Label step.
a. With the right mouse button, click on the Label step and select Properties from the popup menu that appears.
The system displays the customizer for the Label step.
b. Enter MainMenu in the field provided and click OK.
Step 4 Customize the Menu step.
a. With the right mouse button, click the Menu step and select Properties from the popup menu that appears.
The system displays the customizer for the Menu step.
b. Click Output 1. Selection box 1 is automatically enabled.
c. Click Rename.
d. Enter Key 1 in the field provided and click OK.
e. To provide callers the options of spelling a name or speaking to an operator, repeat Steps a through d for Output 2 and Output 3, using the following connection names and mapping:
Step 5 Set the main menu prompt.
a. Click the Settings tab.
b. Enter AAMainMenu.wav in the Prompt field.
c. Click OK to apply the changes and close the customizer.

When you are finished, the Designer window should appear as in Figure 3-6.

Step 6 Save your application.
a. Pull down the File menu and select Save As.
b. Enter a name for the application, such as aa.aef and click Save.
Step 7 Expand the Menu step.
a. With the left mouse button, click the plus sign (+) to the left of the Menu step to expand it.
b. The Designer window appears as illustrated below.

The Menu step, like other application steps that control application branching, generates a number of outputs that you can use to direct control of the application logic. In the next section, you will learn how to add application steps to handle each of the possible branches provided.
When callers press 1, the application prompts them to enter an extension. You use a Parse Input step to handle this entry. To create a Parse Input step, perform the following procedures.
Procedure
The Parse Input step captures user entries and stores them in a selected variable.
a. Drag the Parse Input step from the IVR folder to the Key 1 output of the Menu step.
b. Click the Parse Input step to expand its outputs.
The Parse Input step provides three outputs: Successful, Timeout, and Unsuccessful.
c. With the right mouse button, click the Parse Input step and select Properties from the popup menu that appears.
The system displays the customizer for the Parse Input step
d. Select extnXfer from the Input Variable drop-down list box.
This variable will be used to store the user entries.
e. Enter AAEnterExtn.wav in the Media Address field.
This .wav file will prompt the user to enter an extension.
f. Click on the Input tab.
The system displays the customizer for the Parse Input step, as shown next.

g. Enter 15 in the Input Length field.
h. Click OK to accept the other default values and close the customizer window.
Step 2 Add a Redirect step to the Successful branch of the Parse Input step.
If Parse Input is successful, the application will redirect the incoming call to the extension entered by the user and which is stored in the variable extnXfer. However, the Redirect step itself has four outputs that you have to handle to complete the step.
a. Drag the Redirect step to the Successful output.
b. Open the properties window by clicking the right mouse button on the Redirect step icon.
c. Select extnXfer from the Extension selection list and click OK.
d. Expand the Redirect step to display the following four outputs:
e. Drag an End step from the General steps folder to the Successful output.
Once the call has been transferred, the application ends and is ready to accept another call.
f. Drag an Output step (from the IVR folder) and a Goto step (from the General folder) to each of the other three outputs to create the sequence shown in Figure 3-9.

g. Customize the Output steps to use the following prompts, as shown in the previous illustration.
h. On each Goto step, click the right mouse button, select Properties, and select the MainMenu label from the customizer's drop-down list box, as shown in Figure 3-10.

Step 3 To handle the Timeout output of the Parse Input step add an Output step to play the AASorry.wav prompt. You also need to add a Redirect step after the prompt.
a. Select the Redirect step that you added earlier after the Parse Input Step.
b. Copy the Redirect step.
Select the Output step and click the Copy icon on the toolbar, or choose Edit > Copy.
Step 4 Paste the Redirect step after the Output step following the Unsuccessful output, using the icon on the toolbar or the option on the Edit menu.
Step 5 Handle the Unsuccessful output of the Parse Input step, as shown in Figure 3-11.

Step 6 After the Unsuccessful output, add an Output step to play the AASorry.wav prompt when the Parse Input step is not successful.
Step 7 Copy the Redirect step from the Parse Input step to the Output step.
a. Select the Redirect step that you added earlier after the Parse Input Step.
b. Copy the Redirect step.
Select the step and click the Copy icon on the toolbar, or choose Edit > Copy.
c. Paste the Redirect step after the Output step following the Unsuccessful output, using the icon on the toolbar or the option on the Edit menu.
d. Remove the Output step from the Invalid and Unsuccessful branches.
e. Click the right mouse button on the Redirect step, then choose Properties > OperExtn.
When a caller enters 2, the application expects users to enter the first few characters of a user name. When the application receives these characters, it maps the caller's entry with a user's primary extension as defined in Cisco CallManager and redirects the call. To add this functionality, you use a Name to Address step.
Procedure
The Name to Address step maps user entries to a directory of extensions and provides Successful, Timeout, and Unsuccessful outputs.
The extensions and names used for this step are stored in the LDAP directory, along with the mapping between the two, and the minimum number of characters required to uniquely identify each user object.
a. With the right mouse button, click on the Name to Address step and select Properties from the popup menu that appears.
The system displays the customizer for the Name to Address step.
b. Select extnXfer from the Address Variable drop-down list box.
This variable stores the user entries.
The default value for the Announce When Number of Matches Less Than property allows the application to prompt the user to select from a maximum of three matches. If the number of matches is four or more, the application prompts the user to enter more characters.
c. Click the Input tab.
The system displays the customizer for the Parse Input step.
d. Enter 15 in the Input Length field.
e. Make sure that Flush Input Buffer is set to No.
f. Click OK to accept the other default values and close the window.
Step 2 Add application steps to create the sequence, as shown in Figure 3-12.

a. Copy the Redirect step from the Successful output of the Parse Input step to the Successful output of the Name to Address step.
b. Copy the Output and Redirect steps from the Unsuccessful output of the Parse Input step to the Timeout output of the Name to Address step
c. Copy the Output and Redirect steps from the Unsuccessful output of the Parse Input step to the Unsuccessful output of the Name to Address step.
You have now completed the core functionality of the Cisco IP AA application, and all that remains is to handle the remaining three outputs of the Menu step: Operator, Unsuccessful, and Timeout, as shown in Figure 3-13.

Procedure
Step 2 Add Output and Goto MainMenu steps to handle The Rest output of the Menu step.
Step 3 Copy Output and Redirect steps to the Unsuccessful output of the Menu step.
Step 4 Save your application by choosing File > Save.
Inserting a breakpoint at a step stops the debug process at that step. The user can continue the process by choosing either Debug > Continue or Debug > Step Over. On choosing Debug > Step Over, the debug process proceeds one step at a time. Therefore, the user must continue to choose Debug>Step Over until the user reaches the end of the application. Similarly, the user can remove the breakpoint by choosing Debug > Remove Breakpoint.
You use this procedure to debug applications that depend on external events for their execution. For example, Cisco IP AA depends on an external call event (an incoming call) for triggering the execution.
All applications that require event-triggered debugging must be registered by uploading to the Cisco IP Telephony Directory server using the Repository Manager. This means that every time you edit the application, you must re-register it. For details on the registration process, see the "Administering Applications."
To debug an event-triggered application, do the following.
Procedure.
The system displays the Reactive Application Information for Debugging dialog box, which lets you identify the application filename.
Step 2 Identify the filename of the application to be debugged and specify the amount of time the Cisco Application Engine should wait for an external event to trigger the application.
![]() |
Note The Cisco Application Engine must be running, and the computer you are using must have a connection to the application server. |
![]() |
Note The application name should exactly match the one you supply on the Application Configuration page. |
Step 3 Click OK.
How the event is invoked depends on the type of event required. For example, for the Cisco IP AA, a call is made to the required number and the application window opens in the Cisco Application Editor.
![]() |
Note You cannot perform non-event triggered debugging on an application that requires an external event to initiate it, like an incoming call. |
Step 4 Choose Debug > Continue or Debug > Step Over.
Step 5 Correct any errors flagged by the system prompt.
You use this procedure to debug applications that do not require external events for their execution (for example, applications that derive their steps from the General palette alone).
Applications that require non-event triggered debugging can be created, validated, and debugged directly from the Cisco Application Editor.
To debug a non-event triggered application, perform the following steps.
Procedure
Step 2 Correct any errors flagged by system prompts.
![]() |
Note If the application already exists, then you must choose Application Administration > Engine > Reload to force the application to be reloaded into the Cisco Application Engine. |
Procedure
a. Choose Start > Programs > Application 2.0 > Repository Manager
The system displays the following window.

b. Click Upload and browse to the Cisco IP AA or other application file (with an .aef extension).
c. Select the .aef file you want to upload and click Open.
d. Click Refresh to verify that the file was successfully uploaded.
Step 2 Add the application to the production Cisco IP Telephony application engine.
To register an application with a Cisco IP Telephony application engine, perform the following steps.
a. Connect to the Application Administration web server with the following URL:
http://<servername>/AppAdmin
where servername is the Domain Name Service (DNS) name of your application server computer or IP address.
The system displays the Application Administration main menu.
b. From the Application Administration main menu, select the Applications link.
The system displays the Application Configuration page.
c. To add a new application to the current Cisco IP Telephony application engine profile, click the application link.
The system displays the Application Configuration page.
![]() |
Note If you chose to edit an existing configuration by clicking on the Name link on the Application Configuration Summary Table page, the same page displays. |
d. Enter a user-friendly name for the application in the Application Name field.
e. Enter the extension that the application will answer in the CTI Route Point field.
f. Enter the application filename (ending in .aef) in the Application File Name field.
g. Enter the number of concurrent connections that will be supported for this application to the Cisco CallManager server in the Maximum Number of Sessions field.
Step 3 Start the application by clicking the Yes radio box for Enabled.
Step 4 Click Update to enter the changes and close the window.
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Posted: Fri May 18 17:05:58 PDT 2001
All contents are Copyright © 1992--2001 Cisco Systems, Inc. All rights reserved.
Important Notices and Privacy Statement.