MakeCall Remarks

  Microsoft Speech Technologies Homepage

Initiates a telephone call using the Computer Supported Telecommunications Applications (CSTA) MakeCall service.

The MakeCall control initiates an outbound call to the specific number on the telephony device when activated by RunSpeech. Further speech dialogue on the page is blocked until the call is connected or fails to connect.

The MakeCall control should not be used when a call is active. If an application attempts to make a new call during an active call, the behavior of the telephony interface manager is undefined.

When an outbound line is not available, the MakeCall control can wait for a time interval specified by its ConnectionRetryInterval property and try again to place the call. The ConnectionRetryTimeout specifies the amount of time during which the control performs retries. If no outbound line is available after the ConnectionRetryTimeout elapses, the control will call its OnClientFailed routine, if defined, or will navigate to the error page.

When a call initiated by the MakeCall control returns a busy signal, or times out without being answered, the control passes the resulting CSTA message to the routine specified by the OnClientFailed property.

Inherits from SmexMessageBase.

Preserving Call Information

The MakeCall control will not function properly if the CurrentCall object has not been initialized with the correct call information, or if the call information has been lost in a page transfer. Whenever possible, application authors should transfer to a new page by using SpeechCommon.Navigate or the Redirect method of the MakeCall control, both of which automatically persist call information across a page transfer. If it is necessary to use the Response.Redirect or window.navigate methods, authors must explicitly pass the call information to the new page using a query string, as shown in the following example.

"DeviceID=" + encodeURIComponent(RunSpeech.CurrentCall().Get("DeviceID")) + 
"&CallID=" + encodeURIComponent(RunSpeech.CurrentCall().Get("CallID")) + 
"&CallingDevice=" + encodeURIComponent(RunSpeech.CurrentCall().Get("CallingDevice")) + 
"&CalledDevice=" +  encodeURIComponent(RunSpeech.CurrentCall().Get("CalledDevice")) + 
"&MonitorCrossRefID=" + encodeURIComponent(RunSpeech.CurrentCall().Get("MonitorCrossRefID")) +
"&CallState=" + "Established"

CSTA

For more information on CSTA standards, see Standard ECMA-269 (Services for Computer Supported Telecommunications Applications Phase III) and Standard ECMA-323 (XML Protocol for Computer Supported Telecommunications Applications Phase III).

See Also

MakeCall Class | MakeCall Constructor | MakeCall Members | MakeCall Properties | MakeCall Methods | MakeCall Events