accelerating application development - …€¦ · accelerating application development john...
TRANSCRIPT
Agenda
Introduction to VoiceXMLBenefits, Standards, Market Adoption
Introduction to VoiceXML and CCXMLFramework, Paradigm, Syntax
ApplicationsExamples with Code and Hints
Service CreationVicorp Americas
NMS Offer
VoiceXML – Business Benefits
VoiceXML is the natural voice user interface for bringing web–enabled services to telephony usersMigration of IVR systems to web technologies
The web offers forums for standardizing proprietary protocols and APIsThe web offers solutions to distribution, scaling, security and robustnessWeb deployment mechanisms reduce time and cost of service introductionThe web is rich with tools and skilled developers
VoiceXML – Place in the Market
IVR replacement – cost savings through…Reduced development and deployment costsLeveraging existing web–enabled customer servicesEfficient exploitation of costly speech processors
Application portability and reusable componentsDeploying on a different voice browsers with little or modifications to the application code
Minimal coupling between the application server and the telephony infrastructure
Use of dynamic content is invisible to the voice browserCompetition makes for a healthy hosting marketplace
VoiceXML – Place in the Market
Reuse of Web concepts and tools for the development of speech applications
HTTP Server (Apache, ISS, ..)Application servers (BEA, WebSphere, Tomcat, ..)Languages (Java, ….)
Maintenance of different service access can be synchronizedDifferent media are published in a uniform way for different services (e.g. voice services, Web, WAP)
Multimodal servicesTreat voice access as one of a coherently handled set of customer–contact modesAsynchronous and simultaneous voice/visual modal services now possible
VoiceXML – Introduction
Voice access (e.g. telephone) to the InternetXML-based mark-up language to design speech applications
VXMLHTML
PresentationWeb Browser
Monitor, Keyboardand Mouse Telephone
Voice Browser
IPNetwork
User Interface
PSTN
Application Server
Vision VoiceXML Server
VoiceXML – Introduction
Three-Tier Architecture Applied to Telecom
High productivity Differentiated productsServer softwarere-use Distributed computing overIP networksCommunications apps require the “network tier”
NetworkSignaling, Load
Balancing…
PresentationBrowser, Media Processing…
ApplicationBusiness Logic, Scripting…
ServicesDatabase, Streaming, Storage…
VoiceXML – Introduction
Scalable DeploymentIP InfrastructureLoad-balance
SpeechRecognition
SpeechSynthesis
Application Server
ContentServer
Vision VoiceXML Server
Private IPNetwork Public IP
Network
PSTN orPLMN
VoiceXML – Introduction
The VoiceXML ForumProfessional organisation created in march 1999
4 founders: AT&T, IBM, Lucent, Motorola~60 sponsor member companies~500 supporter member companies
Published the 1.0 specification in March 2000Accepted by the W3C in may 2000Current focus: promotion, education, conformance
VoiceXML Review e-zine (www.voicexmlreview.org)Tutorials (www.voicexml.org/tutorials/index.html)Conformance (www.voicexml.org/conformance/index.html)
VoiceXML 2.1Became a W3C Recommendation in April 2007
VoiceXML – Primer
SIP
Application Server (HTTP)
Event Queue
Events
POST / GET
Actions
Speech Server
MRCP
VoiceXML Session
ApplicationApplication – State Machine
Dialog - StateDialog - State
Connection
VoiceXML – Primer
SessionBegins when the user starts interacting with the VoiceXML context.Termination events / actions:
User : Hang-upDocument : <exit />Platform : Maximum call duration exceeded.
Session variables available to all applications.Support for all session variables defined in the specification.
DNISANIprotocol
Session Variables (extension)Call modeCall typeInitial URI
VoiceXML – Primer
ApplicationOne or more VoiceXML document with the same root document.Application variables and grammars available to all document in the application.
Root
D1 D2 D3
VoiceXML – Primer
DialogsMenu
Presents the user with a choice of optionTransition to another dialog based on the choice<menu> and <choice>
FormsCollect values for a set of form item variables.Each field input <form>, <field>
SubdialogsMechanism for reusing common dialogs and building libraries of reusable applications.Subdialog context and called dialog context are separate.
VoiceXML – Primer
Document structureXML-basedState model description
Dialog define conversational statesTriggered by user inputsTriggered by platform
<?xml version="1.0"?><vxml application=“…”>
<menu id=“…” dtmf=“…”><choice next=“…”/><choice next=“…”/><nomatch /><noinput />
</menu><form>
…<field name=“…”>…</field>
</form></vxml>
CCXML – Introduction
Adds call control to W3C standards for the “Voice Browser”ActivityOvercomes Limitations of call control in VoiceXMLCall Control
Independent of Signaling ProtocolInbound Calls and Outbound CallsCall BridgingConferencing
Management of ResourcesConnectionsDialogsConferences
Event Controlled State MachineProcessing of Events from different resourcesInteraction with external entities via events (i.e. web server)Timing events
CCXML – Introduction
SIP
ISDN
SS7
I/O Event Processor (HTTP)
Event Queue
CCXML Session
The State Machine
Events
Actions
Connections
Dialogs
Conferences
VoiceXML
Media ProcessingUnit
CCXML – Primer
Miscellaneous events for fetching CCXML scripts, sending user specific events and to cancel scheduled events
Fetch, move, send and cancel
Signal failures to the CCXML scriptError Events
Conferencing multiple users togetherConference Events
Establish a VXML sessionDialog Events
Relates to telecom signalingConnection Events
Life-cycle of a CCXML sessionCCXML Events
CCXML – Primer
Sending Events to an external entity (via HTTP), cancelling timed events
<send>
<cancel>Event
Control the life cycle of a conference resource and allow adding and removing connections to it.
<createconference>
<destroyconference>
<join>, <unjoin>
Conference
Control the use of a VXML session<dialogstart>
<dialogterminate>
<dialogprepare>
Dialog
Actions triggered on a Connection Resource<accept>, <reject>
<redirect>, <disconnect>
<createcall>, <merge>
Call Control
Control the lifecycle of a CCXML session.<createccxml>
<exit>Lifecycle
Application Scenarios
Building a Self-Help Application for Account InfoInteractive Voice Response (IVR) system
Building a Streaming Video Portal for Music VideosInteractive Voice And Video Response (IVVR) system
Building a Health Care Appointment ReminderOutbound Dialing application
Building a Self-Help Application
ObjectivesReplace proprietary based CRM application using Web based toolsAllow customers to enter commands via DTMF or voice commandsAllows for call transfers to a “live body”Allows for supervisor assistance if needed – third party added
Call Center Attendants
Building a Self-Help Application
Vision VoiceXML Server
E1/T1(ISDN, SS7)
RTP
SIP
Application Server(hosts Call Center app)
Web Resources / Database
TCP/IP
TelephonyWeb Server
PSTN Intranet
ASR/TTSSpeech Server
CCXML
Supervisor
SIP Phones
VoiceXMLMRCP
Building a Self-Help Application
Call Arrives from PSTNAlerting event in CCXML
Authenticate call and start a dialog for IVRCCXML dialogprepare, answer, and dialogstart
If caller needs assistance, transfer to agentVoiceXML transfer results in CCXML transfer
If agent needs assistant, conference in supervisorCall is moved to a mixer for 3-way conference
Building a Self-Help Application
Managing the Customer Call - CCXML
<eventprocessor statevariable="state"><transition state="init" event="connection.alerting" name="evt">
<assign name="callingparty" expr="evt.connection.remote" /><assign name="in_connectionid" expr="evt.connectionid" /><dialogprepare src="''" connectionid="in_connectionid"/>
</transition>
<transition state="init" event="dialog.prepared" name="evt"><assign name="dialogid" expr="evt.dialogid"/><accept connectionid="in_connectionid"/>
</transition>
<transition state="init" event="connection.connected" name="evt"><dialogstart prepareddialogid="dialogid”
connectionid="in_connectionid" /></transition>
<transition state="init" event="dialog.started" name="evt"><assign name="state" expr="'active'" />
</transition>….
Building a Self-Help Application
Main dialog - VoiceXML
<form id="mainmenu"><field name="asr_input">
<property name="inputmodes" value="voice"/>
<prompt>Welcome to Customer Service Self-help line.<break time="500ms"/>Please select one of the following options:<enumerate/ >
</prompt><option value="balance">Account balance</option><option value="history">Account history</option><option value="help">Help</option>
<filled><goto expr="'http://appserver/selfhelp?user=' + userid +
'&option=' + asr_input" /></filled>
</field></form>
Building a Self-Help Application
Dialog generated by App Server - VoiceXML
<form id="balance"><block>
<prompt>Your current account balance is <say-as interpret-as="vxml:currency">$123.56</say-as>
</prompt></block>
</form>
<form id="agent"><transfer name="blindTransfer" type="blind" dest="sip:agent@ip“
connecttimeout="10"><audio src="transfer_call.wav">
Please wait while your call is transferred to an agent.</audio><filled></filled>
</transfer></form>
Building a Self-Help Application
Handling VoiceXML transfer event - CCXML
<transition state="active" event="dialog.transfer" name="evt"><if cond="evt.type == 'blind'">
<assign name="state" expr=“'transferring'" />
<createcall connectionid="agent_connectionid" dest="evt.uri" joinid="in_connectionid"/>
<else/><!-- Bridge transfer -->
</if></transition>
<transition state="transferring" event="connection.connected" name="evt"><assign name="state" expr="'agentconnected'" />
<send target="'http://appserver'" targettype="'basichttp'" data="'agent.connected'" namelist="callingparty session.id" />
</transition>
Building a Self-Help Application
3-party conference with supervisor - CCXML
<transition state="agentconnected" event="agent.supervisor" name="evt"><assign name="supervisorURI" expr="evt.uri" /><createconference conferenceid="conferenceid“
confname="'conf'+in_connectiondid" reservedtalkers="3" /> </transition>
<transition state="agentconnected" event="conference.created" name="evt"><createcall connectionid=“supervisor_connectionid" dest="supervisorURI"
joinid="conferenceid"/> </transition>
<transition state="agentconnected" event="connection.connected" name="evt"><assign name="state" expr="'supervisorconnected'" /><unjoin id1="in_connectionid" id2="agent_connectionid" /><join id1="in_connectionid" id2="conferencid" /><join id1="agent_connectionid" id2="conferencid" />
</transition>
Building a Streaming Video Portal
ObjectivesMust work within IP and Mobile EnvironmentsAllows user interaction via touch padMust initiate streams via DTMF and Voice commandsUses web resources for video storage
Building a Streaming Video Portal
E1/T1(ISDN, SS7)
RTP
SIP
Application Server
TelephonyWeb Server
PLMN
RTSP Streaming Server
CCXML VoiceXMLRTSP
IP
Vision VoiceXML Server
Building a Streaming Video Portal
VoiceXML determines if this is a video callCheck session connection variable
Play video filesExtends audio tag to be “media” tagVideo available in 3GP filesSource video from RTSP server
Provide background video while using audio to provide menu options
VoiceXML prompt tag with “par” extension
Get user selectionDTMF menu options for input
Building a Streaming Video Portal
Video portal main dialogVerifies the callmode to make sure the caller supports video
<?xml version="1.0" encoding="UTF-8"?><vxml version="2.1" xmlns="http://www.w3.org/2001/vxml" xml:lang="en-US">
<property name="inputmodes" value="dtmf"/><property name="bargein" value="true"/>
<form id="startup"><block>
<if cond="'video' == session.connection.callmode"><goto next="#mainmenu"/>
<else/><goto next="#audioCall"/>
</if></block>
</form>
Building a Streaming Video Portal
Video portal music type selection
<menu id="mainmenu"><property name="timeout" value="10s"/> <prompt><audio src=“mainmenu.3gp">Welcome to the NMS Music Video Portal.Select one of the following music category.
</audio></prompt><choice dtmf="1" next="#rock"></choice><choice dtmf="2" next="#hiphop"></choice><choice dtmf="3" next="#disco"></choice><choice dtmf="4" next="#70s"></choice><choice dtmf="5" next="#interviews"></choice><choice dtmf="0" next="#formExit"></choice>
</menu>
Building a Streaming Video Portal
Group selection – Generated by App Server<form id="rock">
<field name="artist"><prompt><par><media src="rtsp://rspserver:554/background.3gp"/> <!-- Video only --><media type="application/ssml+xml"><speak version="1.0">
Please choose one of the following rock artist.</speak>
</media></par>
</prompt><option dtmf="1" value="collectivesoul"/><option dtmf="2" value="lit"/><option dtmf="3" value="everclear"/><option dtmf="4" value="pixies"/><option dtmf="0" value="back"/><filled>
…<goto expr"'http://appserver/getmusicvideo?artist=' + artist" />
</filled>
Building a Streaming Video Portal
Music video selection<form id="beatles">
<field name="musicVideo"><property name="timeout" value="10s"/><audio src=“beatles.3gp">Please select your beatles video.</audio>
<option dtmf="1" value="TwistAndShout.3gp"/><option dtmf="2" value="Help.3gp"/><option dtmf="3" value="StrawberryFieldsForever.3gp"/><option dtmf="0" value="0"/>…
</field>
<field name="inputvalue"><property name="timeout" value="0s"/> <audio expr="musicVideo" /><option dtmf="0" value="0"/>…
</field></form>
Building an Appointment Reminder
ObjectivesHealth Care appointment reminder system needs outbound dialing applicationsCalls customer at home or business Allows for insertion of customer name within automated scriptAllows for call transfer to Doctor’s office for a “live body”conversation
Building an Appointment Reminder
E1/T1(ISDN, SS7)
RTP
SIP
Application Server
TelephonyWeb Server
PSTN
Text to SpeechServer
CCXML VoiceXMLMRCP
IP
Vision VoiceXML Server
Building an Appointment Reminder
On application stimulus (e.g. database of schedule reminders) make an outbound call
Create a session, ready the application and place the call
Verify that you reached the correct partyText-to-speech messageCollect patients birthdate with DTMF
Announce the appointmentUse text-to-speech to speak date, time, etc.
Call transfer to receptionist/doctorInitiated from VoiceXML and completed in CCXML
Building an Appointment Reminder
CCXML Create Session requesthttp://www.example.com/createsession? uri=http://www.example.org/ccxml/appointement.ccxml&
eventsource=http://www.example.org/ccxmlext&phonenumber=tel:508-555-5555&vxmlscript=http://www.example.com/validateuser.vxml
Building an Appointment Reminder
CCXML Outbound Call<transition state="init" event="ccxml.loaded" name="evt">
<dialogprepare src="session.external.vxmlscript"/></transition>
<transition state="init" event="dialog.prepared" name="evt"><assign name="vxml_dialogid" expr="evt.dialogid"/><assign name="currentstate" expr="'calling'"/><createcall callerid="'Dr. House'" dest="session.external.phonenumber"
connectionid="out_connectionid" /></transition>
<transition state="calling" event="connection.connected" name="evt"><dialogstart prepareddialogid="vxml_dialogid“
connectionid="out_connectionid" /> <assign name="currentstate" expr="'joining'"/>
</transition>
<transition state="joining" event="dialog.started" name="evt"><assign name="currentstate" expr="'active'" />
</transition>
Building an Appointment Reminder
Verify identity in VoiceXML dialog<form id="identify">
<field name="birth" type="date" modal="true"><prompt>Hi, my name is Dr. House calling for David Beaulieu. If your are M. Beaulieu, please enter your date of birthin the YYYYMMDD format.</prompt>
</field>
<filled namelist="birth"><goto expr="'http://www.example.com/identify?user=beaulieu&dob='+birth" />
</filled>
</form>
Building an Appointment Reminder
Reminder and transfer - VoiceXML<menu id="reminder">
<property name="timeout" value="10s"/> <prompt>
Your eye exam is schedule on<say-as interpret-as="vxml:date" format="md">10-21</say-as>at<say-as interpret-as="vxml:time" format="hm">11.00</say-as>. <break time="500ms"/>If you would like to reschedule your appointment, press 0.
</prompt><choice dtmf="0" next="#transfer" />
</menu>
<form id="transfer"><transfer name="blindTransfer" type="blind" dest="tel:508-555-5555"
connecttimeout="10"><audio src="transfer_call.wav">
Please wait while your call is transferred to a receptionist.</audio>
</transfer></form>
Building an Appointment Reminder
Redirecting call to receptionist - CCXML<transition state="active" event="dialog.transfer" name="evt">
<if cond="evt.type == 'blind'"><assign name="state" expr="'redirecting'" /><redirect connectionid="out_connectionid" dest="evt.uri" hints="{connecttimeout:evt.connecttimeout}"/>
<else/><!–- Bridge transfer -->
</if></transition>
<transition state="redirecting" event="connection.signal" name="evt"><!–- Transfer fail --><exit/>
</transition>
<transition state="redirecting" event="connection.redirected" name="evt"><!-- Transfer Succeeded --><exit/>
</transition>
Voice Application Stack with J2EE & VXMLApplication Developer CommunityApplication Developer Community
xMP Service Creation EnvironmentxMP Service Creation Environment
J2EE Application ServerJ2EE Application Server
vXML Browser / Media ServervXML Browser / Media Server
ASRASR TTSTTS SpeakerVerification
SpeakerVerification
Telephony Platform / Media Gateway Telephony Platform / Media Gateway
Speech Enabling Technologies
Service Creation Tools for Voice and Self-
Service Applications
Presented By: Vicorp Limited
Kip Heuertz – VP Americas, [email protected] / 1-972-596-2969
October 2-3, 2007
What Do the Analysts say??IVR is still the dominant Self-Service channel but is moving from Touch Tone to Speech.
Companies are moving from Touch-Tone IVR to Speech application as it supports more complex functionality and provides higher completion rates (Forrester)Well-designed voice user interfaces (VUI) can reduce call time by as much as 30% and compared to traditional IVR systems cut opt-out rates by 50% (Forrester - 2003)Increased IVR retention rate. Companies are up to 60% more likely to retain a caller within the IVR using speech vs. touch tone (Giga)Nearly a third of contact centers use speech recognition technology and a further 17% plan to install it during 2006. If contact centers implement these plans, almost 50% will be using speech recognition within a year …..and…those organizations considering speech solutions have mostly delivered on their plans (Merchants – 2006)
Source : Merchants CC Benchmarking Survey: 2006
Voice Value Chain
Routing
Contact Center
Self-service
Enterprise and contact
center
Directory Assistance
Service Provider
Portals
Service Provider
Unified
Comm
Enterprise
Analytics
Enterprise and contact
center
Hosting – Hosted and Premise-based Managed Services
Services – Requirements/discovery, Project Management, SI, Implementation
Applications – Packaged, Configurable, Modules/templates, Custom
Enabling software – Tools, ASR / TTS / Voice authentication engines
Platforms – VoiceXML, Traditional
Voice Application Stack with J2EE & vXMLApplication Developer CommunityApplication Developer Community
xMP Service Creation EnvironmentxMP Service Creation Environment
J2EE Application ServerJ2EE Application Server
vXML Browser / Media ServervXML Browser / Media Server
ASRASR TTSTTS SpeakerVerification
SpeakerVerification
Telephony Platform / Media Gateway Telephony Platform / Media Gateway
Speech Enabling Technologies
Vicorp at a GlanceBusiness & Finance Founded 1981
Originally carrier-based IVR PlatformxMP product launched in 2004Customer solutions on 5 continentsOperations and Product Development in UKSales & Marketing in North America and UK/EMEA Leading independent VXML development tools company (Datamonitor, Opus Research)Listed on AIM (London) exchange
Key Telcos: Cable and Wireless, BT, VSNL, Rogers, AIS ThailandKey Enterprises: Barclay, BarclayCard, GE Capital, lastminute.com, German lotteryKey Partners: IBM, Genesys (GVP and VoiceGenie), Holly Connects, Avaya, Voxeo, Nortel, Nuance
Customer & Partners
Experienced technical, sales and management teamsInfluential internationally recognized experts in speech and IVRLeadership in Open Standards - VoiceXMLStrong culture of customer focus
People & Organization
Reference to Vicorp’s xMP
Vicorp is the only independent vendor focused exclusively on the speech application development tools market. Its xMP product suite provides a unique level of flexibility and configurability which enhances the entire application lifecycle, post deployment portability and investment protection. - Daniel Hong, Lead Analyst at Datamonitor.
“Working with Vicorp gives us the ability to meet our customer’s needs in an innovative, flexible & cost effective manner”
Dominic Cameron –
xMP Key Features
Easy to create services: with no need for detailed VoiceXML skillsState of the art intuitive Drag and Drop GUIFull Validation before GenerationCall Out’s to Java Business Logic and Back-end Integration
Quality Results achieved quicklyRe-use of trusted application components across multiple servicesSeparation of Creation from Configuration
Protects investment in Services & InfrastructureApplications run on any J2EE Application ServerApplications run on any VoiceXML2.0 Media ServerFully Open standards BasedNo xMP Runtime InterpreterNative, Efficient, Platform Independent Code
xMP Key Features
Resource sharing across different Business UnitsIn-Built Multi-TenancySecure Partitions, with independent access and controlResource Management
Scalable, Flexible and Efficient ArchitectureIncrementally expandable, without interrupting serviceFull High Availability supportEfficient Code Generation (round-trip, caching)
Provides control where it is neededDynamic Content ProvisioningService Specific ManagementAccess control
Analyze and Tune the ServiceReal-time and off-line ReportingCustomised reporting for different Business units
So what are the real ROI for SCE Tools
#1 - PROTECT APPLICATION INVESTMENTInitial application development cost reduction (circa30%)
‘Quick-to-market’ – shows return on brands (FMCM)
Flexibility and rapid services deliveryExpand services from all major brands, simultaneouslyDevelop services immediately, deploy across all platforms when ready (Migration strategy)
xMP Tool Suite – Roles based approachxMP is a complete Open Standards service creation environment xMP enables rapid creation, management and deployment of enhanced voice and multi-media servicesxMP comprises the following tools:
Detailed reports and service dataxMP Reporter
Service Management, Deployment, Control and Analytics.
Responsible for creating and managing partitions
xMP Console
GUI Eclipse based
Content management and configuration (call prompts)xMP Studio
GUI Eclipse based
Drag and Drop for creating business logic or application call flow
xMP Director
Benefits / Value Proposition
Incrementally expandable without interrupting services
High availability support
Efficient code generation (round-trip and caching)
Scalable and efficient architecture
Write your application once and run it in an mixed environment.Running on multiple platforms at the same time
Independent access and control for departments, divisions or different companies.
Ideal for Hosting companies.
Offering Hardware, software, and logical partitions.
Secure Partitioning
Deploy new services more quickly
Dynamically change existing services
Create multiple brands without making copies of the application
Separate call flow from content
BenefitVicorp xMP Unique Features
Fits into Service Oriented Architecture (SOA)Creating and reusing components
Easy access to databases and external systemsJ2EE Environment
Preserving the investment in the application
Running application on VXML platforms
Open Systems / Platform independence
30% faster development = faster ROIGUI-Based Eclipse
BenefitVXML Tools
xMP Director is an intuitive drag-and-drop service creation tool, that enables applications to be rapidly designed and created.
Easy to create white-label servicesSimple back end integration through JavaCreate innovative services with no coding skills
Key Features:Intuitive, Eclipse based Drag-and-Drop GUIStrong support for re-usabilitySupport for defined User Roles within the Design and Development ProcessEasy Integration to Back-End SystemsDetailed Monitoring and AnalysisComprehensive Service Generation ProcessCreate applications independent of the underlying architectureCreate native, efficient applications
xMP Director
xMP Studio is used to tailor and configure white label applications to create deployable services
Easy to brand services using Rich Content ModelConsistent Service logic, many brandsContent can be audio, text-to-speech or video
Key Features:Modify application without changing the logic Manage the Content of the applicationUpdate prompts dynamically within a live serviceQuickly add new brands or languagesAdd transcript notes for Voice Talent and export/import recording scriptsCreate and configure Call Detail Records for different business unitsAlter Time of Day logic to enable the service to act differentlyView Audit Trails detailing changes made to the application
xMP Studio
xMP Console
xMP Console is a web management interface that simplifies service deployment and activation
Presents two management viewsPlatform View (used by Platform Operator)Service View (used by Service Operator)
Key Features:Assign relevant DNIS numbers to servicesDynamic Content DeliveryUpdate Key Prompts “On-the-fly”Real Time and Historical AnalysisIn depth logging and de-buggingService Specific ManagementSecure Multi-Tenancy
xMP Reporter
xMP Reporter is a comprehensive reporting package that gives complete end-to-end data on every aspect of xMP applications, out-of-the box and with no additional development effort.
xMP Reporter IncludesCore Call Progress DataStandard Data Views Standard Reports
Key Features:Generate detailed views on activity within servicesQuickly respond to management requests for informationProvide and analyze tuning information to validate design and help improve the serviceEasily extend and customize database structure and reportsTrack success of campaigns and special offersQuickly identify and react to bottlenecks that appear in the applicationDetermine additional self-service options for future developmentExport data to other databases for centralized reportingCombine with custom service data to provide service-specific reports
Benefits / Value Proposition
Incrementally expandable without interrupting services
High availability support
Efficient code generation (round-trip and caching)
Scalable and efficient architecture
Write your application once and run it in an mixed environment.Running on multiple platforms at the same time
Independent access and control for departments, divisions or different companies.
Ideal for Hosting companies.
Offering Hardware, software, and logical partitions.
Secure Partitioning
Deploy new services more quickly
Dynamically change existing services
Create multiple brands without making copies of the application
Separate call flow from content
BenefitVicorp xMP Unique Features
Fits into Service Oriented Architecture (SOA)Creating and reusing components
Easy access to databases and external systemsJ2EE Environment
Preserving the investment in the application
Running application on VXML platforms
Open Systems / Platform independence
30% faster development = faster ROIGUI-Based Eclipse
BenefitVXML Tools
Multi-Tenancy
Single Run-Time System (xMP Engine)
Physical Resources
Gateway / Firewall Media Server App Server
AS
R TTS
Pro
mpt
Rec
ord
Ser
vIn
st
Con
tain
ers
Por
ts
DN
's
Line
s
SIP
Add
r
Partition Partition Partition
Virtual Resources
Map
Map
Map
Tenant A Tenant B Tenant C
Virtual ResourcesVirtual Resources
Con
nect
ors
CP
U N
odes
Multi Tier SLA:
Hardware Partition: Each End User/Business Unit has own hardware.
Software Partition: Each End User/Business unit has own Application Server Instance but on shared hardware.
Logical Partition: End Users/Business Units share Application Server instances, but this enables 1000s of users of the platform.
Shared infrastructure and more efficient usage of resources.
serviceserviceservice
service
SLA Levels
Physical Hardware Layer
Clusters
Hardware Independent Software Independent
ApplicationServers
ApplicationServers
serviceserviceservice serviceservice
VXE runs in a sharedcluster on shared
hardware
serviceservice
VXE runs in its own cluster on shared
hardware
service
VXE runs in its ownCluster on resilient
hardware
vxe vxe
vxe
vxe
SLA LevelsFEATUREVirtual xMP Engine (VXE) Sharing
BENEFITSClients can be given different SLA’sdepending on their service’s specific requirements.
Provides full hardware level protection.
Provides full software level protection.
More VXE’s can be supported on a given set of servers, means that more tenants can be supported on those servers.
Vision VoiceXML Server
Up to 240 audio ports and 120 audio/video portsInteractive voice and video control to IP, PSTN, and mobile subscribersCCXML 1.0 and VoiceXML 2.0/2.1Robust signaling to connect to SS7 networks
Carrier-ready, scalableComplete development and deployment platform for voice and video-enabled applications
3G video capable — expands to IP and mobile networksSupports VoiceXML video script extensions — faster application developmentFlexible configurations —development and deploymentCommon software platform
Features
Value Proposition
Benefits to You