CCXML ApplicationIt consists of a collection of CCXML documents that control and manage objectsCCXML Session - the execution of a CCXML document or sequence of documents. Each CCXML document is a separate session that can be, uniquely, identified and referenced.Connections (sometimes called "call legs") or phone connections or system resources to manage interaction with a voice dialogConference objects used to mix media streamsDialog, which may interact with other Connections or Conferences using one-way or two-way audio streams, often controlled by VXML dialog environmentsSend and/or receive asynchronous events associated with these entities.Directly manipulate Connection and Conference objectsUsing <accept>, <createconference> <join>Start and kill voice dialogs using language elementsStandardized events like dialog.exitCreate other CCXML sessionsUsing <createccxml>Event ProcessingLives on its own threadRapid asynchronous event handlingConferencingAn audio stream that mixes all the legs togetherCCXML conference networks allow for conference objects which mix inputs into a single output channelConferencing implementation is vendor specificSCRIPTINGSupport ECMAScriptECMAScript expressions (including left hand side expressions)ECMAScript variable nameECMAScript object (An object returned by the new Object() ECMAScript expression, an object with no properties)CCXML variable name (using <var> keyword)Scope element.Event - An action or occurrence to which an application can respondAssociative array - map, lookup table or dictionaryClass - These are ECMAScript constructor objectsSession life cycleStartup - The URI for the initial CCXML document must be knownAn incoming phone call on the platformAnother CCXML application using <createccxml>An external session launch requestShutdown - All active connections and conferences and dialogs owned by the session are terminatedExecution of <exit>An unhandled "error.*" eventAn unhandled "ccxml.kill" eventA "ccxml.kill.unconditional" event