You can provide voice access to business applications using VoiceXML alone, but more advanced (and efficient) system requirements can be met by integrating CCXML with VoiceXML or Java. Figure 1 shows how CCXML can be used to directly drive telephony operations, while invoking multiple VoiceXML dialogs or Java applications to manage interaction with a caller.
Figure 2 shows how a VoiceXML dialog, whether invoked from a CCXML application, or directly from call routing, can make use of the <object> tag to get access to Java classes, including voice applications created with the Java API, or state tables.
Figure 3 shows how a Java application that has been invoked either from a CCXML application, or directly by call routing, can be used in an integrated system to make calls to existing state table applications or custom servers, as well as handling some telephony functions.