Voice Applications also called as Telephone applications work based on audio playback of information and a voice user interface. They are also called as Interactive Voice Response (IVR) applications. End users can interact with SAP backend systems using speech recognition or touch tones. Today there is a wide usage of commercial VoiceXML applications performing a huge variety of services such as
1) GPS based Driving Directions
2) Flight Tracking
3) Voice Access email
4) Audio News Magazine
5) Product Availability
6) Order Status Self Service
This article provides an insight to developing voice applications using SAP Netweaver Voice which comes as part of SAP Netweaver Composition Environment 7.1.
1) SAP Netweaver CE 7.1 – Voice toolkit is fully integrated with SAP Netweaver. A voice application leverages SAP Netweaver Application Server and the SAP Netweaver Portal.
2) Visual Composer extended with a Voice Kit – Provides design-time support. SAP Netweaver Voice is fully integrated into Visual Composer providing a user friendly graphical development environment for configuring, modeling, debugging and deploying custom voice applications quite fast.
3) VoiceObjects Server – provides middleware for managing voice applications and is a J2EE based runtime environment for voice applications. It integrates SAP Netweaver with various Voice Gateways.
4) Voice Gateway – Software/hardware that handles telephony requirements and integrates with telephone. Recognizes caller input – voice or touch tone and provides output by playing recorded audio prompts or generated computerized speech. Typically a Voice Gateway has technologies like Speech Recognition (ASR), Text-To-Speech (TTS) and keypad touch tones. VoiceObjects server communicates with a Voice Gateway using VoiceXML.
VoiceXML is a markup language used for defining and controlling audio, TTS (Text-To-Speech) and voice recognition. VoiceXML is standardized by the W3C and is used widely for developing interactive voice applications.
When a telephone request or a call is received from a PSTN (Public switched Telephone Network) or through VOIP (Voice over IP), the call is picked by VoiceXML Gateway.
The VoiceXML Gateway then sends an HTTP request based on the mapping it has to the run-time Voice Renderer which is the VoiceObjects server built into the SAP Netweaver J2EE engine in this case. Basically the Voice Gateway and the SAP Netweaver Application Server communicate with each other using XML (in specific VoiceXML) over HTTP.
The VoiceObjects server (Voice Runtime) then generates a VoiceXML page and sends it back to the Voice Gateway. The VoiceObjects server is a third party tool which has been integrated with the SAP Netweaver Application Server.
The Gateway interprets the page using TTS (Text-To-Speech) and plays an audio to convey the information orally to the user or listening for user input on the phone.
After the above step, the gateway again sends an HTTP request to VoiceObjects server, with an user input collected. Thus the VoiceXML Gateway manages every interactive step of the dialog.
If a step in the voice dialog requires a SAP data source access, say for example SAP SRM (Supplier Relationship Management), VoiceObjects server interfaces with SAP’s Data Broker – a voice service running inside the SAP Enterprise Portal, which connects to the SAP backend using standard mechanisms to call RFCs, BAPIs or Web Services.
1) Model the call flow for the voice application in Visual Composer, connecting data access elements with RFCs/BAPIs. Visual Composer Voice Kit contains a small number of building blocks from which entire voice applications are composed.
2) Deploy the voice application to the VoiceObjects server (part of SAP’s run-time framework) which is bundled with SAP Netweaver CE 7.1. Voice applications are deployed directly from the Visual Composer interface. You can use the SAP Netweaver Administrator to start or stop a voice application.
3) Configure the Voice Gateway, assigning a telephone number to the new application.
Please refer to the references provided at the end of this article for building a sample voice application with the Visual Composer.
Complete Integration of Voice – SAP Netweaver Voice is fully integrated with SAP Netweaver Composition Environment (CE 7.1). Voice provides a development and run-time environment.
Easy to use Design-Time environment – Voice applications are modeled in Visual Composer just like any other portal application. It is a code free modeling in the sense one doesn’t need to be a programmer to model a voice application. For example, a voice application can be modeled by a business process expert who doesn’t know anything about programming.
Access to SAP/non-SAP backend – Voice has direct access to both SAP and non-SAP backend business transactions via enterprise services, RFC or BAPI.
Internationalization of Voice Applications – You can modify the existing voice application to support multiple languages using a single default VoiceXML gateway and recorded audio files in the language you need and also by developing new applications for this purpose. A single default VoiceXML gateway can be used for supporting several language options.