Interaction framework for executing user instructions with online services
First Claim
1. A computer implemented framework for processing one or more user instructions on behalf of a computer user, the framework comprising:
- a first computing device comprising a processor and memory, hosting an instruction processing agent, wherein the instruction processing agent, in execution on the first computing device, is configured to receive a user instruction from a user agent executing on a user computing device, and maintain a list of domain agents; and
one or more domain agent computing devices, the one or more domain agent computing devices hosting a plurality of domain agents wherein each domain agent, in execution on a domain agent computing device of the one or more domain agent computing devices, corresponds to a domain and is configured to receive a domain instruction from the instruction processing agent that can be carried out within the domain, and carry out the domain instruction on behalf of the computer user;
wherein, in execution, the instruction processing agent;
receives the user instruction from the user agent;
identifies a domain suitable for carrying out the user instruction based on an identified intent of the user instruction;
maps the user instruction into at least one domain instruction according to a domain ontology of the identified domain;
selects a domain agent of the plurality of domain agents, the selected domain agent corresponding to the identified domain; and
submits the user instruction to the selected domain agent for execution; and
wherein, in execution, the selected domain agent;
maintains a plurality of proxies for interfacing with a plurality of online services, wherein each of the plurality of proxies interfaces with one each of the plurality of online services and maps the domain instruction to a respective one of the one each of the plurality of online services;
receives the domain instruction from the instruction processing agent;
identifies an online service from the plurality of online services for completing the domain instruction; and
executes the domain instruction with the online service via the respective one of the plurality of proxies for the identified online service.
1 Assignment
0 Petitions
Accused Products
Abstract
In order to complete user instructions beyond the scope of services that are provided on the user'"'"'s own computing device, a framework an interaction framework for executing user instructions with online services is provided. The framework includes an instruction processing agent that interacts with a user agent on a computer user'"'"'s computing device to execute instructions provided to the user agent. The instruction processing agent maintains a list of domain agents, each domain agent corresponding to a domain. Upon receiving a user instruction (from a user agent), the instruction processing agent identifies a suitable domain and corresponding domain agent for completing the user instruction and provides the instruction to the domain agent. The domain agent identifies an online service suitable for completing the user instruction and interfaces with the online service via a proxy for the online service to carry out the user instruction.
21 Citations
20 Claims
-
1. A computer implemented framework for processing one or more user instructions on behalf of a computer user, the framework comprising:
-
a first computing device comprising a processor and memory, hosting an instruction processing agent, wherein the instruction processing agent, in execution on the first computing device, is configured to receive a user instruction from a user agent executing on a user computing device, and maintain a list of domain agents; and one or more domain agent computing devices, the one or more domain agent computing devices hosting a plurality of domain agents wherein each domain agent, in execution on a domain agent computing device of the one or more domain agent computing devices, corresponds to a domain and is configured to receive a domain instruction from the instruction processing agent that can be carried out within the domain, and carry out the domain instruction on behalf of the computer user; wherein, in execution, the instruction processing agent; receives the user instruction from the user agent; identifies a domain suitable for carrying out the user instruction based on an identified intent of the user instruction; maps the user instruction into at least one domain instruction according to a domain ontology of the identified domain; selects a domain agent of the plurality of domain agents, the selected domain agent corresponding to the identified domain; and submits the user instruction to the selected domain agent for execution; and wherein, in execution, the selected domain agent; maintains a plurality of proxies for interfacing with a plurality of online services, wherein each of the plurality of proxies interfaces with one each of the plurality of online services and maps the domain instruction to a respective one of the one each of the plurality of online services; receives the domain instruction from the instruction processing agent; identifies an online service from the plurality of online services for completing the domain instruction; and executes the domain instruction with the online service via the respective one of the plurality of proxies for the identified online service. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer system providing an instruction processing agent service for processing user instructions on behalf of a computer user, the computing system comprising a processor and a memory, wherein the processor executes computer executable instructions obtained from memory to provide the instruction processing agent service, the computer system further comprising:
-
an executable instruction processing agent, wherein in execution the instruction processing agent; maintains a list of domain agents; receives a user instruction from a user agent on behalf of the computer user; identifies a domain suitable for carrying out the user instruction based on an identified intent of the user instruction; maps the user instruction into at least one domain instruction according to a domain ontology of the identified domain; selects a domain agent of the plurality of domain agents according to a domain selector, the selected domain agent corresponding to the identified domain, wherein the selected domain agent maintains a plurality of proxies for interfacing with a plurality of online services, wherein each of the plurality of proxies interfaces with one each of the plurality of online services and maps the domain instruction to a respective one of the one each of the plurality of online services; and submits the domain instruction to the selected domain agent for execution. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer system providing a domain agent service for processing user instructions on behalf of a computer user, the computer system comprising a processor and a memory, wherein the processor executes computer executable instructions obtained from memory to provide the domain agent service, the computer system further comprising:
-
a plurality of online service proxies, each online service proxy configured to interface with a corresponding online service for executing user instructions with the online service on behalf of the domain agent; wherein, in execution, the domain agent; receives a user instruction from the instruction processing agent for execution; identifies an online service from a plurality of online services for completing the user instruction based on an identified intent of the user instruction; maps the user instruction into at least one domain instruction according to a domain ontology of the identified domain; executes the domain instruction with the online service via a corresponding online service proxy of the plurality of online service proxies; and returns result information regarding execution of the domain instruction to the instruction processing agent. - View Dependent Claims (20)
-
Specification