Telephone
1.360.227.6036
E-Mail
info@ivrforbeginners.com
Here you will find answers to the IVR development questions which are asked of us most often. Feel free to email us for answers to questions which you don't find here.
Q: Which operating systems are
supported?
A: Our server and our simulator run on Windows 2000, Windows XP,
Windows Server 2003, Windows Vista, and Windows Server 2008.
Applications that you develop in any language which is supported by the server and simulator (see the next section) can run on any of the same platforms.
Java applications that you create can run on any platform with a Java virtual machine which has connectivity to our server.
The same is true of Mono applications - install the runtime on a machine and insure that our server can connect to it.
Q: What do I have to do to deploy my
Java application on a Linux host?
A: Assuming that you have already installed our server and /or
simulator on a nearby Windows machine with IP connectivity to the
Linux host, this is the deal:
Q: Do I need an expensive PBX?
A: No. In a small office environment where you have only a few lines
you may want to install a telephony card like those from
CallUrl or
Dialogic into a PCI slot or connect a USB device like the one
from
Way2Call to a hub.
Of course, you may need a PBX if you want to transfer or conference
calls.
Q: I already have a PBX. How do I
determine if my environment is compatible with your IVR?
A: In general, you need to ask your vendor if its PBX includes
support for the Telephony Applications Programming Interface - also
known as TAPI in
jargon.
Digium's Asterisk PBX is a special case. It does not support
TAPI, but it does support
SIP and our TAPI-based IVR can be made to answer calls in a SIP
environment. More detail on that option is
here.
Note that there have
been three major releases of TAPI over the years so you'll need to
ask your vendor if its TAPI support is at least compatible with
version 2.1 of TAPI and if it provides a "wave driver" so that our
IVR can access the audio stream in a call to play and
record media files, and perform text-to-speech and
speech-recognition operations.
Links to the documentation for several
popular PBX vendors are here:
Alcatel,
Avaya,
Cisco,
Panasonic,
Samsung,
Siemens,
ShoreTel
Q: Do you support applications written with
any of the .Net languages?
A: Yes, pick one, or pick them all. Just be sure that your application's assembly targets version 1.1 or later
of the framework. And unlike MSS we actually support version 2.0 of
the framework as well.
Q: Do you support applications written in Java?
A: Yes, just insure you install a Java virtual machine compatible with version 1.2 of
the JDK or later.
Q: Do you support applications written in Delphi?
A: Yes, we have tested with Delphi 7 and Delphi 2005 and Borland
Developer Studio 2006.
Q: Do you support applications written in Visual Basic or Visual FoxPro?
A: Yes, in either language an IVR application is an in-process
Automation component (ActiveX DLL) loaded by our server or simulator.
Q: Do you support applications written in script languages?
A: Yes, if the language is compatible with the Windows Script Host. We have tested
the server and simulator with applications written in the
VB Script
and
J/Script
languages which are bundled with the operating system and with
Ruby,
Perl,
Python and
Object Rexx which are freely available online from their
developers.
Q: Do you support applications written in C++?
A: Yes, of course. It is the most canonical language in our
environment. Just use a Microsoft compiler to implement
the voice user interface.
If you don't have one, download the
freebie. Use any compiler you like to implement the business
logic of your application.
Q: What about the C language?
A: We have a C binding but we'd prefer that you use C++. We used it to support the
bindings in the 'other' languages. But like most things written in C
it is unforgiving and if you make a mistake you risk crashing the server.
Q: Do all languages use the same API?
A: Yes, for the most part. There are small differences due to the
capabilities of the language. So for example, some languages support
exceptions, multiple overloads and intrinsic strings and some
don't. But in any language, applications can perform telephony,
media streaming and recording, text-to-speech and speech recognition
operations. Yes, you read that correctly - you can do speech
recognition even in Visual Basic or a scripting language like Perl,
Python or Ruby.
Q: What if my favorite language is not supported?
A: If your language is compatible with COM you can use our support for COM that makes Visual
Basic an option.
Alternatively you may be able to use the C binding if your language can make "API calls" to functions in dynamic link libraries (DLLs).
Q: Do I need to buy hardware to prototype an application?
A: No, you can use our simulator to develop an application.
Q: Can I deploy an application on a line where I only have a voice modem?
A: Yes, you will be able to answer calls, play announcements, pass text strings through a text-to-speech engine,
record messages, and detect keypad input.
You will not be able to use speech recognition except in a clumsy way because the drivers for voice-modems tend not to allow programs fully duplexed access to the audio streams in a call.
Q: What are the hardware requirements?
A: You need to use a device which has a software component known as a Telephony Service
Provider (TSP) which is compatible with version 2.1 of the telephony support
- TAPI - in
Windows.
Q: Do you sell telephony hardware?
A: Not currently.
Q: Can you recommend some telephony hardware?
A: No, but you'll find some options to consider on the
hardware
page.
Q: What are the requirements for
text-to-speech (TTS) and automatic speech recognition (ASR) engines.
A: Our server is compatible with TTS and ASR engines that are
compliant with version 5 of the Speech API - SAPI.
We bundle the server that we sell with compatible TTS and ASR engines. While you are experimenting with our free simulator, you can download the TTS and ASR engines from their source.
Q: I want to use synthetic speech but I
don't like the sound of the free voices bundled with the operating
system. What can I do?
A: You'll find some vendors of text-to-speech engines listed
here and
here and
here. Be sure to check with the vendor to make sure that
you buy a license with sufficient headroom for the number of lines
on which you expect to be synthesizing text concurrently.
Q: What about languages other than
English?
A: There are a number of vendors who sell TTS engines using European
and Asian languages. See the previous question. We know of only one
non-English, SAPI compliant ASR engine which is described
here.