Share via


Using the Speech Add-in for Microsoft Internet Explorer

  Microsoft Speech Technologies Homepage

Use the Speech Add-in for Microsoft Internet Explorer for developing and unit testing a multimodal speech application. Before deploying a multimodal application, test it on a staging server using the desktop client. For a general description of best practices in deploying .NET applications, see Deploying .NET Applications: Lifecycle Guide in the MSDN Library. For information on deploying Speech Application SDK applications, see Deploying Speech Applications.

There are differences between Pocket Internet Explorer and Internet Explorer 6.0. To avoid unneeded rewriting of code, if applications will be ported between these environments the developer should take these differences into account when creating the application. For more information, see the topics in the section beginning with the topic Using the Speech Add-in for Microsoft Pocket Internet Explorer.

Scripting Support

Internet Explorer 6.0 and the Speech Add-in for Microsoft Internet Explorer support the following:

  • HTML version 4.0
  • JScript version 5.5
  • DHTML

The param element for the audio meter is not supported.

Inherited Properties

In some cases properties are available that are inherited from Internet Explorer 6.0. The list of properties exposed on Internet Explorer 6.0 is similar to but not identical to the list of properties exposed within Pocket Internet Explorer. One difference is that both the innerHTML and innerText properties are available on Internet Explorer 6.0, but the innerText property is not available on Pocket Internet Explorer. See the following example.

//Start a prompt
function StartPrompt1()
{
    alert("promptTag1.innerText: " + promptTag1.innerText);
    alert("promptTag1.innerHTML: " + promptTag1.innerHTML);
    promptTag1.Start();
}

SALT Module Support

The PromptQueue object, logging, and simultaneous recognition and recording are not supported on Internet Explorer 6.0.

The following components, which are not required for multimodal applications, are not supported on Microsoft Internet Explorer 6.0:

  • In the SALT Messaging module, the <smex> element and all its properties, methods and events, plus the <param> sub-element.
  • In the SALT Call Control module, the <smex> element with ECMA-323 support.
  • In the SALT dual tone multi-frequency (DTMF) module, the <dtmf> element and all its properties, methods and events.

Verifying SALT Support in the Browser

The procedure to use in verifying that the Speech Add-in for Microsoft Internet Explorer is installed is explained in the topic Deploying Pocket PC Applications, under the heading Checking for Client Installation.

Setting the MIME Type for .asp and .aspx Pages

To set the MIME type for .aspx pages, in the code-behind page use the ContentType property of the Response object as in the following example.

private void Page_Load(object sender, System.EventArgs e)
            { 
                  //code to initialize the page...
                  Response.ContentType = "text/salt+html";
            }

To set the MIME type for .asp pages, in server-side ASP script use the ContentType property of the Response object as in the following example.

<% Response.ContentType = "text/salt+html" %>

Speech Control Support

The following types of controls are supported:

  • Dialog Speech Controls
  • Basic Speech Controls
  • Application Speech Controls run on Internet Explorer, though the DTMF functionality is ignored
  • The RecordSound control does not run on Internet Explorer

Remote Speech Processing

When testing a speech-enabled Web application using Internet Explorer, the Speech Add-in for Microsoft Internet Explorer accesses the local speech recognition engine using the Speech API (SAPI). However, under certain circumstances, developers may prefer that the application uses a speech recognition or text-to-speech (TTS) engine on a remote computer to perform speech processing. For example, a developer may want an application to use a third-party TTS engine that is installed on a remote computer. Enabling remote speech processing requires setting a registry key on the client computer, and specifying the location of the remote server using a param element.

To enable remote recognition, insert a param element within the SALT listen element that performs the recognition. To enable remote TTS, insert a param element within the SALT prompt element that specifies the content of the audio output. In each case, specify server as the value of the param element's name attribute, and specify the URL path to the server as the content of the element. Following is an illustration.

<salt:param name = "server">http://remote_server_location</salt:param>

Engines located on different servers can be used for recognition and TTS within the same application.

File References

It is likely that file references, for example references to grammar files, will change when an application is moved from the development environment to a staging server. It is important to test these references on the staging server before putting the application into a production environment.

See Also

Adjusting for Differences Between Clients | Security Considerations | Raising Events from Application Script | Developing an Application Using Only SALT Markup