Systems and methods for integrating third party services with a digital assistant
First Claim
1. An electronic device for processing a user input, the device comprising:
- at least one processor; and
memory storing one or more programs for execution by the at least one processor, the one or more programs including instructions for;
receiving an input of a user;
determining a context of the electronic device;
identifying, based on the received user input and the determined context of the electronic device, a respective template from a plurality of templates, wherein each template of the plurality of templates is associated with a respective context of the electronic device, wherein the identified respective template is from a third party service provider to be associated with a task type based on a first request sent by the third party service provider, wherein the first request corresponds to the task type, and wherein the task type is part of a task flow model having a default model of tasks of task types;
in response to identifying the respective template, determining, using the task flow model, a task associated with the respective template; and
sending a second request to perform at least a portion of the task to the third party service provider.
1 Assignment
0 Petitions
Accused Products
Abstract
The electronic device with one or more processors and memory receives an input of a user. The electronic device, in accordance with the input, identifies a respective task type from a plurality of predefined task types associated with a plurality of third party service providers. The respective task type is associated with at least one third party service provider for which the user is authorized and at least one third party service provider for which the user is not authorized. In response to identifying the respective task type, the electronic device sends a request to perform at least a portion of a task to a third party service provider of the plurality of third party service providers that is associated with the respective task type.
778 Citations
52 Claims
-
1. An electronic device for processing a user input, the device comprising:
-
at least one processor; and memory storing one or more programs for execution by the at least one processor, the one or more programs including instructions for; receiving an input of a user; determining a context of the electronic device; identifying, based on the received user input and the determined context of the electronic device, a respective template from a plurality of templates, wherein each template of the plurality of templates is associated with a respective context of the electronic device, wherein the identified respective template is from a third party service provider to be associated with a task type based on a first request sent by the third party service provider, wherein the first request corresponds to the task type, and wherein the task type is part of a task flow model having a default model of tasks of task types; in response to identifying the respective template, determining, using the task flow model, a task associated with the respective template; and sending a second request to perform at least a portion of the task to the third party service provider. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for processing a user input, performed at an electronic device with one or more processors and memory, the method comprising:
-
at the electronic device; receiving an input of a user; determining a context of the electronic device; identifying, based on the received user input and the determined context of the electronic device, a respective template from a plurality of templates, wherein each template of the plurality of templates is associated with a respective context of the electronic device, wherein the identified respective template is from a third party service provider to be associated with a task type based on a first request sent by the third party service provider, wherein the first request corresponds to the task type, and wherein the task type is part of a task flow model having a default model of tasks of task types; in response to identifying the respective template, determining, using the task flow model, a task associated with the respective template; and sending a second request to perform at least a portion of the task to the third party service provider. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
-
36. A non-transitory computer-readable storage medium storing one or more programs, which, when executed by one or more processors of an electronic device, cause the electronic device to:
-
receive an input of a user; determine a context of the electronic device; identify, based on the received user input and the determined context of the electronic device, a respective template from a plurality of templates, wherein each template of the plurality of templates is associated with a respective context of the electronic device, wherein the identified respective template is from a third party service provider to be associated with a task type based on a first request sent by the third party service provider, wherein the first request corresponds to the task type, and wherein the task type is part of a task flow model having a default model of tasks of task types; in response to identifying the respective template, determine, using the task flow model, a task associated with the respective template; and send a second request to perform at least a portion of the task to the third party service provider. - View Dependent Claims (37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52)
-
Specification