Management and prioritization of processing multiple requests
First Claim
1. A system, comprising:
- memory;
one or more processors; and
an interaction manager maintained in the memory and executable by the one or more processors to;
assign processing priorities to a plurality of requests wherein each request corresponds to a priority in which the request is to be processed, such that a first request having a higher priority is processed before a second request having a lower priority; and
provide a grace period after processing the first request, wherein in response to determining that the system receives a third request chained to the first request during the grace period, the system is configured to process the third request prior to processing the second request.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are described for systems that utilize an interaction manager to manage interactions—also known as requests or dialogues—from one or more applications. The interactions are managed properly even if multiple applications use different grammars. The interaction manager maintains a priority for each of the interactions, such as via an interaction list, where the priority of the interactions corresponds to an order in which the interactions are to be processed. Interactions are normally processed in the order in which they are received. However, the systems and method described herein may provide a grace period after processing a first interaction and before processing a second interaction. If a third interaction that is chained to the first interaction is received during this grace period, then the third interaction may be processed before the second interaction.
-
Citations
20 Claims
-
1. A system, comprising:
-
memory; one or more processors; and an interaction manager maintained in the memory and executable by the one or more processors to; assign processing priorities to a plurality of requests wherein each request corresponds to a priority in which the request is to be processed, such that a first request having a higher priority is processed before a second request having a lower priority; and provide a grace period after processing the first request, wherein in response to determining that the system receives a third request chained to the first request during the grace period, the system is configured to process the third request prior to processing the second request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 18, 19, 20)
-
-
10. A method comprising:
-
receiving, by one or more computing devices, a first request; determining, by at least one of the one or more computing devices, if the first request is an interrupting request; assigning, by at least one of the one or more computing devices, a first priority to the first request, when it is determined that the first request is an interrupting request, assigning, by at least one of the one or more computing devices, a second priority to the first request, where the second priority is higher than the first priority; processing, by at least one of the one or more computing devices, the first request when it has been assigned the second priority; waiting, by at least one of the one or more computing devices, a grace period after the first request is processed before beginning processing of a second request; receiving, by at least one of the one or more computing devices, a third request chained to the first request; and processing, by at least one of the one or more computing devices, the third request prior to processing the second request provided that the third request is received during the grace period. - View Dependent Claims (11, 12, 13, 14)
-
-
15. One or more computer storage media containing computer executable instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
-
maintaining an interaction list that includes multiple interactions; determining an order of the interaction list that corresponds to a priority in which the multiple interactions are to be processed; processing a first interaction when the first interaction is located at a first position in the order of the interaction list; receiving a second interaction; determining if the second interaction is an interrupting interaction; in response to determining that the second interaction is not an interrupting interaction, placing the second interaction at a second position in the order of the interaction list that has a lower priority than the first position; in response to determining that the second interaction is an interrupting interaction, placing the second interaction at a third position in the order of the interaction list that has a higher priority than the first position and processing the second interaction; receiving a third interaction from the first speech-enabled application; and in response to determining that the third interaction is received during a pre-determined grace period after processing of the first interaction, processing the third interaction prior to processing the second interaction. - View Dependent Claims (16, 17)
-
Specification