Systems and methods for managing multiple grammars in a speech recongnition system
First Claim
1. A speech system, comprising:
- a speech engine configured to recognize commands from a user and make announcements to the user;
a speech server having a speech server interface through which multiple speech-enabled applications communicate with the speech system, and a speech application programming interface through which the speech server communicates with the speech engine; and
wherein the speech server manages concurrent processing of interactions submitted by the speech-enabled applications while allowing each speech-enabled application to utilize a different speech recognition grammar.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are described for a speech system that manages multiple grammars from one or more speech-enabled applications. The speech system includes a speech server that supports different grammars and different types of grammars by exposing several methods to the speech-enabled applications. The speech server supports static grammars that do not change and dynamic grammars that may change after a commit. The speech server provides persistence by supporting persistent grammars that enable a user to issue a command to an application even when the application is not loaded. In such a circumstance, the application is automatically launched and the command is processed. The speech server may enable or disable a grammar in order to limit confusion between grammars. Global and yielding grammars are also supported by the speech server. Global grammars are always active (e.g., “call 9-1-1”) while yielding grammars may be deactivated when an interaction whose grammar requires priority is active.
81 Citations
37 Claims
-
1. A speech system, comprising:
-
a speech engine configured to recognize commands from a user and make announcements to the user;
a speech server having a speech server interface through which multiple speech-enabled applications communicate with the speech system, and a speech application programming interface through which the speech server communicates with the speech engine; and
wherein the speech server manages concurrent processing of interactions submitted by the speech-enabled applications while allowing each speech-enabled application to utilize a different speech recognition grammar. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method, comprising:
-
receiving a speech interaction from a speech-enabled application;
identifying a speech grammar associated with the speech interaction; and
processing the speech interaction according to grammar attributes contained in a grammar table associated with the identified speech grammar. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. One or more computer-readable media containing computer-executable instructions that, when executed on a computer, perform the following steps:
-
receiving a first interaction from a first speech-enabled application that utilizes a first grammar;
processing the first interaction according to properties attributable to the first grammar;
receiving a second interaction from a second speech-enabled application that utilizes a second grammar, the second interaction being received while the first interaction is processing;
processing the second interaction according to properties attributable to the second grammar;
wherein the processing of the first interruption is interrupted and processing of the second interruption is immediately commenced if an indication is detected directing that the second interaction be processed immediately. - View Dependent Claims (24, 25, 26, 27, 28)
-
- 29. A speech server interface exposed by a speech system for use by one or more speech-enabled applications, comprising a persist method that a speech-enabled application uses to persist a grammar used by the speech-enabled application.
- 31. A speech server interface exposed by a speech system for use by one or more speech-enabled applications, comprising a create grammar method that is used to load an existing grammar used by a speech-enabled application or to load a new grammar for the speech-enabled application.
- 33. A speech server interface exposed by a speech system for use by one or more speech-enabled applications, comprising a yield-to-grammar method used by a speech-enabled application to de-activate all yielding grammars in the speech system other than the grammar used by the speech-enabled application.
- 35. A speech server interface exposed by a speech system for use by one or more speech-enabled applications, comprising an advise speech events method used by a speech-enabled application to let the speech system know that the speech-enabled application is listening for speech recognition events.
Specification