Voice API for Linux Demo Guide — June 2005 7
1
1.Demo Descriptions
This chapter provides a brief description of the voice demonstration programs.
The following demonstration programs are provided with the voice software. These demos are
supported on Springware boards only.
cbansr
Voice application that uses the asynchronous callback programming model. This demo is state-
driven but uses event handlers that can be enabled or disabled for specific events on specific
devices. The demo illustrates the voice recording and playback feature. You can listen to a
prompt, record a message, and play back that message.
pansr
A multithreaded, multi-channel voice application that uses the asynchronous polled
programming model. This demo is state-driven and uses polling to get event information
without the use of event handlers or device handlers. The demo illustrates the voice recording
and playback feature. You can listen to a prompt, record a message, and play back that
message.
custserv
Synchronous mode, customer service application that transfers calls to the proper service
representative based on the caller’s input.
dpddemo
A multi-channel voice application that uses the asynchronous polled programming model. The
demo illustrates the voice recording and playback feature. It is similar to the pansr demo, but
can accept both dial pulses and DTMF tones.
d40demo
Synchronous mode, simple order entry application built on a menu system.
The purpose of the demo programs is to show how to use the voice library functions in a voice
application. They provide a framework on which to base your applications; they are not intended to
be used as real voice applications.
Source code and an executable version of the demo programs are provided, as well as a makefile to
compile the source. The source is written in C.
A toolkit of general purpose C routines is also included with the demo programs. This toolkit aids
in the development of voice applications. The toolkit source is contained in d4xtools.c.
Note: The synchronous programming model is not recommended for production applications; however, it
can be used for demo or proof of concept applications. For detailed information on programming
models, including advantages and disadvantages of each model, see the Standard Runtime Library
API Programming Guide.