A Transaction page is a real-time gateway, enabling secure communication between CX Builder and your backend, Web-accessible system. A Transaction page submits any variable(s) from your Voice Site to a URL of a backend script via an HTTP(S) POST or GET. Transmission is secured via SSL (HTTPS), and CX Builder provides a list of IP addresses that you can use to restrict access through your firewall.
On the Transaction tab you can specify, as parameters, any variable collected in your Voice Site, any System Variable (such as CallerID or DialedNumber), and any Constant.
- Parameter Names are the "key" in the key/value pair being submitted. The parameter name should be recognizable by the script in your server.
- Parameter Values are the "value" in the key/value pair being submitted. This value is either a constant or a variable.
- Test Values allow you to test the Transaction page. The values entered in this column will be used to perform a test request to your web server. Click the Run Test link to execute the test.
Interpret HTTP Response As
Once a transaction has completed, CX Builder needs to know how to interpret the response. The remote script should return one of a number of different response types:
|Text-to-Speech||The response will be interpreted as text, and will be read to callers in a digitized voice. If you select this response type you will also have to specify which voice page to send callers after the message has been played.|
|Audio File (Internal)||The response will be interpreted as the name of an audio file already uploaded in your account. Use the folder/file.wav syntax to format the audio file response string, for example, misc/thanks.wav. All file names have a .wav extension. If you select this response type you will also have to specify which voice page to send callers after the audio file has been played.|
|URL to Audio File (External)||The response will be interpreted as the URL of an audio file residing on a remote server, for example, http://www.yourserver.com/sounds/sound.wav. Ensure that you provide the full URL for the audio file, including "http://". All file names have a .wav extension. If you select this response type you will also have to specify which voice page to send callers after the audio file has been played.|
|Link to Voice Page||The response will be interpreted as a link and will be automatically followed. Links should take the form "123/456” where the digits before the slash represent the site number and the digits after the slash represent the page number (for example, to go to site 32 page 3 specify "32/3"). For a relative link, you can use "/45" to link to Page 45.|
|Phone Number||The response will be interpreted as a phone number to transfer to. The phone number should be a 10 digit string with no formatting (for example, 7032866415). It should represent a valid phone number, including toll-free numbers. Only U.S. and Canadian numbers are supported. Toll numbers are not supported.|
|AngelXML||The response will be interpreted as an XML document written in CX BuilderXML. AngelXML is a simplified version of VoiceXML that intuitively defines voice interactions, and provides instructions and controls the flow of the IVR. For more information about AngelXML, see Using AngelXML.|
Use the Prompts Tab to configure Initial and Wait prompts. For more information on uploading prompts, see Audio Files.
- Initial Prompts—Configure the initial prompt(s) that will be heard while the transaction page executes. For more information on configuring prompts, see Message Page.
- Wait Prompt—Configure an additional wait prompt that will be played in a loop until the transaction has completed. When submitting parameters to a remote server, the system makes an internet connection through the Web. The time to collect a response will vary depending on the location and speed of your server. The system can play a "processing" sound to callers while waiting. If you want to play your own sound you can configure it here. For best results make sure that the sound file beginning and end "connect" smoothly.
If enabled for your account, the ASR Settings tab allows you to set the parameters for Automatic Speech Recognition by dragging the slider. If you make changes and want to return to the default values, click Reset.
The following table describes those parameters:
|confidencelevel||Specifies the speech recognition confidence level. Results are rejected (a nomatch event is thrown) when the caller's response is below this threshold. A value of 0.0 means minimum confidence is needed for recognition. A value of 1.0 requires maximum confidence.|
|sensitivity||Specifies the sensitivity level. A value of 1.0 means that speech recognition is highly sensitive to quiet input. A value of 0.0 means that speech recognition is least sensitive to noise.|
|speedvsaccuracy||Specifies the desired balance between speed and accuracy. A value of 0.0 means quick recognition. A value of 1.0 means best accuracy.|
|timeout||Specifies the timeout in seconds after which a noinput event is thrown.|
|completetimeout|| Specifies the required length of silence (in seconds) following user speech before the recognizer finalizes a result (either accepting it or throwing a nomatch event). |
Note: Values set for the completetimeout property are only supported if they are less than the values set for the incompletetimeout property.
|incompletetimeout||Specifies the required length of silence following user speech after the recognizer finalizes a result. The incompletetimeout property is used when the speech prior to the silence does not match all active grammars. In this case, once the timeout is triggered, the partial result is rejected with a nomatch event. The incompletetimeout property also applies when the speech prior to the silence matches an active grammar, but where it is possible to speak further and still match the grammar. By contrast, the completetimeout property is used when the speech prior to the silence matches an active grammar and no further words can be spoken.|
|maxspeechtimeout||Specifies the maximum amount of speech input allowed (in seconds) after which an event is thrown leading to a nomatch.|
|interdigittimeout||Controls the timeout period (in seconds) between the entry of individual DTMF tones when recognizing DTMF input.|
- Caller Response Storage
- If you intend to keep application data state information in your server, set Caller Response Storage to Store.
- If you prefer the scripts of your application to be stateless, set Caller Response Storage to Delete and resubmit the values you need in subsequent script calls.
- Error Destination—Configure which page in the IVR the call should be routed to in the event an error occurs.
- Email Debugging
- Mail Logs—Choose when to send email logs. You can chose either Never, On Error Only, or Always.
- Email Address—By default, this field displays the global debugging email address you specified in Site Properties. Here, you can change the debugging email address for this page only. If you do that, an icon will display next to the page name in Site Overview with a message stating that the debugging email address on this page differs from the global debugging email address.
- Debugging email addresses have the following character length limitations:
- Total length: ≤256 characters
- Local-part (text that precedes the @ symbol): ≤64 characters
- Domain (text that follows the @ symbol): ≤255 characters
- Debugging email addresses have the following character length limitations:
Note: This is an option on the Data Page, Transaction Page, Logic Page, and SMS Page.