Course Outline:
TOPICS:
- Introduction to the Java API, its capabilities and limitations
- Practice creating every different Java component to extend Studio (see below)
- Introduction to Voice Elements and their complexity
- This course is applicable to any version of CVP and Studio.
HANDS-ON PROGRAMMING TOPICS:
- Standard Actions and Decision as ‘drop-in code’ to execute functions on VXML Server such as obtaining the IP address for setting the Default Media Server, for accessing substrings, validation of dates and times, performing date arithmetic.
- Configurable Action and Decision elements – creating new elements in Studio. Substring element, String Length element, Read File of name=value pairs, Read an XML file, Date comparison element test if a date is in the past, future, or today.
- Say it Smart plugins – Say it Smarts convert data into a list of audio files and/or text for TTS playback. For example, create a plugin to spell data to the caller. For example, speaking date in European format.
- Start of Call classes – Create session variables or VoiceXML Properties based on ICM passed data, or database or file. For example, access a database to create root document VXML Properties.
- End of Call classes – execute code at the end of visit to an application, regardless of how the visit ends (hangup, complete, error, application transfer, telephony transfer). For example, determine if the call ended with an error, write to a custom log file.
- Start of Application classes – execute application-specific code whenever VXML Server is started or the application is updated. This is often used to create customer detail records. For example, create persistent variables.
- Create Persistent Variables – Global variables and Application variables remain in memory between phone calls but can only be accessed through Java code.
- Dynamic Menus – configure Settings and Audio for Studio elements at runtime using Java. This is especially useful for building Dynamic Menus with a varying number of options and audio prompts. For example, create a Dynamic Menu based upon the caller’s account number.
- Extend existing Studio elements to add/modify settings, catch Java exceptions, encapsulate multiple elements