Building an Outbound-Calling Speech Application
The dialog interaction in an outbound-calling application is exactly the same as an inbound-calling application, except for the way that the call is initiated. In either case, once a call is connected, the speech dialog flow begins.
For this reason, when creating a new outbound application, an application developer should use the Speech Application SDK (SASDK) wizard to automatically generate a default start page named default.aspx and a manifest file, which describes the resources required by the application. The start page should be altered to:
- remove the AnswerCall control and replace it with a MakeCall control
- hook up any logic necessary to decide where the call is to be placed
- decide which dialog path to take once the call is connected.
Banking Alerts Reference Application
SASDK provides a reference application, Banking Alerts, that demonstrates an outbound call notification scenario. This application demonstrates how the Web server and application server coordinate sending notification requests, managing the dialog interaction with the called party and managing the call notification state.
Support in Telephony Application Simulator
Telephony Application Simulator (TASim) does not support fetching outbound call notifications from a defined message queue. Banking Alerts, however, has two scripts that simulate this behavior:
- QueueListener.js: This takes the name of the queue as an argument, and fetches messages from the queue.
- LaunchTASim.js: This script is invoked by QueueListener.js, to launch TASim with the URL contained in the message.
TASim does simulate making outbound calls. An application developer may set the start page to the URL that would be contained in a message from the queue. This allows an application developer to test placing an outbound call, to test the dialog interaction and to test handling errors that lead to queuing a request again.