System and method for providing dialog management and arbitration in a multi-modal environment
First Claim
Patent Images
1. A method for managing dialog of one or more applications, comprising the steps of:
- instantiating a DMA (dialog manager and arbitrator) interface comprising a hierarchical tree structure comprising a root DMA and one or more application DMAs;
sending, by the root DMA, notification of a user input event to an application DMA;
obtaining, by the application DMA, a symbolic representation of the user input event;
calling, by the application DMA, an application method to perform context resolution of the symbolic representation;
receiving, by the application DMA, a query from the application, wherein the query comprises the results of the context resolution;
determining, by the DMA interface, if the application DMA is currently active based on the query received by the application DMA; and
launching, by the application DMA, a callback function associated with the query, if the application DMA is determined to be currently active.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for providing conversational computing via a protocol for automatic dialog management and arbitration between a plurality of conversational applications, and a framework for supporting such protocol, in a multi-modal and/or multi-channel environment. A DMAF (dialog manager and arbitrator facade) interfaces with one or more applications, and a hierarchical DMA architecture enables arbitration across the applications and within the same application between various sub-dialogs.
-
Citations
54 Claims
-
1. A method for managing dialog of one or more applications, comprising the steps of:
-
instantiating a DMA (dialog manager and arbitrator) interface comprising a hierarchical tree structure comprising a root DMA and one or more application DMAs;
sending, by the root DMA, notification of a user input event to an application DMA;
obtaining, by the application DMA, a symbolic representation of the user input event;
calling, by the application DMA, an application method to perform context resolution of the symbolic representation;
receiving, by the application DMA, a query from the application, wherein the query comprises the results of the context resolution;
determining, by the DMA interface, if the application DMA is currently active based on the query received by the application DMA; and
launching, by the application DMA, a callback function associated with the query, if the application DMA is determined to be currently active. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for managing dialog of one or more applications, the method steps comprising:
-
instantiating a DMA (dialog manager and arbitrator) interface comprising a hierarchical tree structure comprising a root DMA and one or more application DMAs;
sending, by the root DMA, notification of a user input event to an application DMA;
obtaining, by the application DMA, a symbolic representation of the user input event;
calling, by the application DMA, an application method to perform context resolution of the symbolic representation;
receiving, by the application DMA, a query from the application, wherein the query comprises the results of the context resolution;
determining, by the DMA interface, if the application DMA is currently active based on the query received by the application DMA; and
launching, by the application DMA, a callback function associated with the query, if the application DMA is determined to be currently active. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. A DMA (dialog manager and arbitrator) interface, comprising:
-
a plurality of DMA instances that communicate with each other in a hierarchical tree framework to arbitrate between a plurality of applications and to arbitrate between sub-dialogs associated with a same application, wherein the plurality of DMA instances comprise;
a root DMA (rDMA) which is a root of the hierarchical tree that arbitrates between the plurality of applications to determine a target application for a given user input event; and
a plurality of application DMAs (aDMAs) which manage application dialogs and sub-dialogs and which arbitrate between application sub-dialogs, wherein the plurality of aDMAs comprise a main aDMA for each application which manages a main dialog of the application, wherein each main aDMA is a child of the rDMA, wherein the plurality of aDMAs further comprise one or more sub-dialog aDMAs for managing sub-dialogs within an application, wherein the one or more sub-dialog aDMAs within an application are descendants of the main aDMA of the application, wherein arbitration is performed by each parent DMA instance in the hierarchical tree using a bottom-up approach to determine a target aDMA which manages the main dialog or sub-dialog associated with the user input event. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54)
-
Specification