Voice interaction application selection
First Claim
Patent Images
1. A computer-implemented method comprising:
- obtaining a first list identifying a plurality of software applications configured to process voice interactions;
receiving first audio data corresponding to a first voice interaction;
performing speech recognition processing on the first audio data to obtain first text;
sequentially querying the plurality of software applications in an order of the first list to determine whether a queried software application can process the first text, wherein the sequential querying continues until a first queried software application responds that it is able to process the first text;
selecting the first queried software application;
determining a first time corresponding to the first voice interaction;
processing, using the first queried software application, the first text to generate one or more results;
causing output of audio corresponding to the one or more results;
receiving second audio data corresponding to a second voice interaction after causing the output of the audio;
determining a second time corresponding to the second voice interaction;
determining that a certain amount of time has not elapsed between the first time and the second time;
performing speech recognition processing on the second audio data to obtain second text; and
querying the first queried software application to determine whether the first queried software application can process the second text, prior to querying any other software application of the plurality of software applications.
1 Assignment
0 Petitions
Accused Products
Abstract
An open framework for computing devices to dispatch voice-based interactions to supporting applications. Applications are selected on a trial-and-error basis to find an application able to handle the voice interaction. Dispatching to the applications may be performed without a determination of meaning conveyed in the interaction, with meaning determined by the individual applications. Once an application acts upon a voice interaction, that application may be given first-right-of-refusal for subsequent voice interactions.
210 Citations
20 Claims
-
1. A computer-implemented method comprising:
-
obtaining a first list identifying a plurality of software applications configured to process voice interactions; receiving first audio data corresponding to a first voice interaction; performing speech recognition processing on the first audio data to obtain first text; sequentially querying the plurality of software applications in an order of the first list to determine whether a queried software application can process the first text, wherein the sequential querying continues until a first queried software application responds that it is able to process the first text; selecting the first queried software application; determining a first time corresponding to the first voice interaction; processing, using the first queried software application, the first text to generate one or more results; causing output of audio corresponding to the one or more results; receiving second audio data corresponding to a second voice interaction after causing the output of the audio; determining a second time corresponding to the second voice interaction; determining that a certain amount of time has not elapsed between the first time and the second time; performing speech recognition processing on the second audio data to obtain second text; and querying the first queried software application to determine whether the first queried software application can process the second text, prior to querying any other software application of the plurality of software applications. - View Dependent Claims (2, 3, 4)
-
-
5. A computing device comprising:
-
a communication interface; at least one processor; and a memory including instructions operable to be executed by the at least one processor to perform a set of actions, configuring the computing device to; receive first audio data corresponding to a first voice interaction; sequentially query a plurality of software applications in an order of a first list of software applications until a queried application responds that it is able to process the first voice interaction; select, from the plurality of software applications, a first application that responds that it is able to process the first voice interaction; determine a first time corresponding to the first voice interaction; receive second audio data corresponding to a second voice interaction after the first application processed the first voice interaction; determine a second time corresponding to the second voice interaction; determine that a certain amount of time has not elapsed between the first time and the second time; and query the first application to determine whether the first application can process the second voice interaction, prior to querying any of the other plurality of software applications to determine if any of the other plurality of software applications can process the second voice interaction. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12)
-
-
13. A non-transitory computer-readable storage medium storing processor-executable instructions for controlling a computing device, comprising program code to configure the computing device to:
-
receive first audio data corresponding to a first voice interaction; sequentially query a plurality of software applications in an order of a first list of software applications until a queried application responds that it is able to process the first voice interaction; select, from the plurality of software applications, a first application that responds that it is able to process the first voice interaction; determine a first time corresponding to the first voice interaction; receive second audio data corresponding to a second voice interaction after the first application processed the first voice interaction; determine a second time corresponding to the second voice interaction; determine that a certain amount of time has not elapsed between the first time and the second time; and query the first application to determine whether the first application can process the second voice interaction, prior to querying any of the other plurality of software applications to determine if any of the other plurality of software applications can process the second voice interaction. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification