CCXML Voxeo 1.0 Development Guide Home  |  Frameset Home

  Learning Call Control XML  |  TOC  |  tutorial Hello World  
This documentation is for CCXML 1.0-Voxeo, which has been superceded by CCXML 1.0-W3C. The CCXML-Voxeo platform is not being updated any longer. The CCXML 1.0-W3C version, however, has many new features and is actively being enhanced. If you're writing a new CCXML application, you should use CCXML 1.0-W3C. Click here for the CCXML 1.0-W3C documentation.

What is CCXML?

Call Control XML is a markup which was devised as a method for adding an asynchronous event handling layer and superior call control capabilities to existing telephony applications. In addition, the CCXML language allows a developer to perform advanced tasks such as multiparty conferencing, the ability to programatically join and unjoin call legs, and a bevy of other features that were unavailable with the scope of the VoiceXML markup.

While using VoiceXML in conjunction with CCXML can certainly enrich an existing application, using the two together is by no means required. Each language can work just fine on its own for specific tasks, but when they are added together, you can add unparalleled call control to any voice application that you deploy.

Common Questions

Is CCXML a replacement for VXML?
In a word, no. CCXML complements and allows superior features and event handling to the existing VoiceXML markup language.

Is CCXML a standalone markup language?
Yes, although CCXML is designed to be used in conjunction with existing VoiceXML applications, thus delivering unparalleled and robust event handling and dialog control.  For instance, the ability to perform multiparty conferencing, which is something that a 'plain' VoiceXML application is simply unable to do. However, you should be aware that the CCXML browser has no voice recognition capabilities of its own, and fully relies on VXML for any voice-driven commands.

Is CCXML a Voxeo-proprietary language?
While the CCXML working draft is indeed chaired by Voxeo's own CTO, RJ Auburn, many industry leaders such as Intel, Telera, TellMe, and Cisco, (to name but a few!), have added input and contributed significantly to the final specification which has been accepted by the World Wide Web Consortium. You can see more information by going to the w3c CCXML specification.

Can I combine CCXML with CallXML?
At this time, there aren't any provisions for allowing CCXML to interact with a CallXML application. Based on user demand, we may decide to incorporate this in the future, but it is far off in the Voxeo engineering queue at the time of this writing.

How much does it cost to develop CCXML applications on the Voxeo network?
Voxeo offers a free developer environment that allows you to test and tune your CCXML/VXML applications. Sign up now to get on board!

What do I need to get started?
All you need to get started is a Voxeo developer account, and publicly available webspace to host your XML files. It also helps to have a an understanding of XML-based telephony application design, but for neophyte developers, we offer a series of tutorials that can get you up to speed in no time.

Which version of the specification should I use as a guide?
Being a maverick is never easy. Voxeo is the very first provider to have launched CCXML support for telephony applications, and we are very serious about CCXML. Our current deployment of CCXML interpreter most closely follows the Working Draft dated October 11th, 2002. As the specification is still in a state of flux, we will in all likelihood not update our offering significantly until the Final Draft of the specification is announced.

What does CCXML do?

A VoiceXML application that incorporates CCXML has a number of benefits and advantages over standalone VXML applications. As the working draft states, the following are the primary goals of the CCXML markup:

The Voxeo CCXML Lesson Guide

In this ever-expanding catalogue of sample scripts and instructional Lessons, we will guide you through CCXML application development from the ground up, even if you have never tried coding a CCXML app before. Starting from the bare-bones basics, you can have your very first CCXML application written, mapped, and active within 30 minutes. Intrigued? Read on.......

5/25/2005 5:04 AM (EDT)
Sorry to quibble, but couldn't help noticing... "compliments" above should be "complements"
5/25/2005 6:59 AM (EDT)
Nice catch, "deg!"

We have corrected this typo.  The changes will push out to the live doc-set later this week...

Thanks Again,

~ Michael
10/28/2006 8:08 PM (EDT)
Hey Mike.

I'm going through the Voxeo doc trying to figure out how to do the application you and I ICQ'd about. I need to forward an incoming call to an operator and record the entire conversation until the call ends. I thought maybe CCXML is the way to go but not sure at this point.

Since correcting spelling errors seems to be valid feedback, here's a couple more :)

1) 'unparalleled' in paragraph 2 and question #2.
2) Also a couple of it's which should be its are above.
10/29/2006 9:49 AM (EST)
Howdy wadebee,

Thanks for the head-up.  I have alerted the documentation admins about the errors.

As far as recording both sides of a two-party bridge, CallXML or VoiceXML both have a call recording function.  Sadly, CCXML currently only has a recording dialog extension capable of recording one-way audio (e.g. for a voicemail message).


~ Michael
4/22/2009 2:20 AM (EDT)
1. Is it possible to forward a call being processed by CCXML to another telephone number?
2. Can CCXML handle both SIP and SS7 (CAP3) calls , in a real deployment where does the CCXML/VoiceXML is placed
3. Is it possible to execute a java application from CCXML context. I think VoiceXML has support for JavaScript
4/22/2009 3:48 AM (EDT)

I'll try to answer your questions in order:

>> 1. Is it possible to forward a call being processed by CCXML to another telephone number?

This would be accomplished with the <redirect> element, details of which can be found here:

Conferencing may also be relevant to your question depending on the application specifics to meet your goals. CCXML should be able to meet your needs either way.

>> 2. Can CCXML handle both SIP and SS7 (CAP3) calls , in a real deployment where does the CCXML/VoiceXML is placed

This question really addresses the hardware and software aspects of the platform rather than CCXML. The Voxeo Prophecy platform speaks SIP/RTP natively. SS7 interops would require the use of a SS7->SIP gateway. CCXML and VoiceXML address the application aspects of the calls/connections. The platform would handle the input/output of the physical signals.

>> 3. Is it possible to execute a java application from CCXML context. I think VoiceXML has support for JavaScript

CCXML also encompasses Javascript functionlity. Other dynamic code such as Java can be run as an external resource where CCXML communicates data with, for instance, <goto>, <fetch> or <send>.

Please feel free to ask if we can clarify any of the above information, or if you have additional questions.

Jeff Kustermann
Voxeo Support

  Learning Call Control XML  |  TOC  |  tutorial Hello World  

© 2013 Voxeo Corporation  |  Voxeo IVR  |  VoiceXML & CCXML IVR Developer Site