Defining application characteristics

When you tested your application using the Blueworx Voice Toolkit you probably defined the application name, the class, and any other application details within the application itself. Now you are running the application as a managed application, you need to specify these application details in an AppName configuration entry in the configuration file.

VoiceXML applications

The AppClass for a VoiceXML 2.1 application is always com.ibm.wvr.vxml2.DTVoicelet2

For a VoiceXML 2.1 application that is started from a CCXML document:
AppName=vxmlccxml
   Enabled=yes
   Parameter=DynamicURI, yes
   AppClass=com.ibm.wvr.vxml2.DTVoicelet2
;
This example does not have an application URI defined (hence DynamicURI). Instead, the CCXML document specifies the document that the VoiceXML browser is to run.

For a VoiceXML 2.1 application that is located on the voice response node and is started by a NumToApp mapping:

AppName=weather
   Enabled=yes
   Parameter=URI, file:///var/dirTalk/DTBE/samples/en_US/Weather.vxml
   AppClass=com.ibm.wvr.vxml2.DTVoicelet2
;

For a VoiceXML 2.1 application that is located on a Web server and is started by a NumToApp mapping:

AppName=horoscope
   Enabled=yes
   Parameter=URI, http://www.company.com/apps/horoscope.vxml
   AppClass=com.ibm.wvr.vxml2.DTVoicelet2
;

The protocol (file in the first example, http in the second) is mandatory for VoiceXML 2.1 applications. Relative URIs are not supported.

Running DTMF-only VoiceXML applications

If your VoiceXML 2.1 application does not use speech recognition or text-to-speech, and instead relies solely on recorded audio and dual-tone multi-frequency (DTMF) signals, you must include the DTMFONLY parameter in the AppName entry, and set it to true. For example:
AppName=defapp
  Enabled=yes
  Parameter=URI,http://www.company.com/apps/horoscope.vxml
  Parameter=DTMFONLY,true
  AppClass=com.ibm.wvr.vxml2.DTVoicelet2
;

Java applications

This is what an AppName entry for a Java application looks like:

AppName=pizzas
  AppClass=my.package.pizzaApplication
  Locale=en_GB
  Parameter=branch_id,0123
  Parameter=branch_name,Southampton
  RecoDefinition=*,ViaVoice
;

You may want to leave out some of the properties now the application is going into production. For example, the locale and the RecoDefinitions and TTSDefinitions can be derived from the NodeName entry for the node where the application is going to run. The only keyword you must have is AppClass:

AppName=pizzas
  AppClass=my.package.pizzaApplication
;

You can create more than one AppName entry for the same class, for example, if you want to run different language versions of the application.

Making Java applications available to the node

Two keywords in the NodeName configuration entry are important here. If the application answers incoming calls, set the NumToApp keyword, as described in Mapping a VoiceXML or Java application to a phone number. You may also need to set the NodeClassPath keyword to include the class name or JAR file name containing your application class.

NodeName=Node1
  NodeClassPath=/home/dtuser/myapps/pizzas.jar
  NodeDefLocale=en_GB
  NumToApp=123456,pizzas
;