IP Library › Granted Patent US 11,269,678
Granted Patent B2
US 11,269,678 · App. 16/532,930 · Granted Mar 8, 2022

Systems and methods for integrating third party services with a digital assistant

Inventors: Thomas R. Gruber (Santa Cruz, CA); Christopher D. Brigham (San Jose, CA); Adam J. Cheyer (Oakland, CA); Daniel Keen (San Jose, CA); Kenneth Kocienda (San Jose, CA)
Assignee: Apple Inc.
G06F9/46G06F9/4843G06F9/4856G06Q10/10H04W4/00H04W4/029
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,269,678
App. No.
16/532,930
Filed
Aug 6, 2019
Granted
Mar 8, 2022
Kind
B2
Art Unit
2494
USPC
718/102
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.

Claims (50)

1. A method of processing a user input, the method performed at an electronic device with one or more processors and memory, the method comprising:

at the electronic device:

receiving a first set of one or more predefined task types from a service provider;

integrating the first set of one or more predefined task types with a second set of predefined task types not associated with the service provider to generate a plurality of predefined task types;

receiving an input of a user specifying a task;

selecting, based on the user input, a task type from the plurality of predefined task types, the task type corresponding to one of the first set of the one or more predefined task types and to the task; and,

in response to selecting the task type, sending to the service provider a request to perform at least a portion of the task.

2. The method of claim 1 , wherein the input is a voice input of the user that has been converted to text.

3. The method of claim 1 , further comprising:

prior to receiving the input of the user, receiving from the service provider an identification of a vocabulary; and

selecting the task type in accordance with the identification of the vocabulary.

4. The method of claim 3 , further comprising, associating the vocabulary with the first set of the one or more predefined task types.

5. The method of claim 3 , wherein receiving the identification of the vocabulary includes receiving the vocabulary.

6. The method of claim 3 , wherein receiving the identification of the vocabulary includes receiving an identification of a vocabulary accessible to the electronic device prior to receiving the identification of the vocabulary.

7. The method of claim 1 , further comprising:

obtaining one or more results corresponding to the input from the service provider; and

providing at least a subset of the one or more results for presentation to the user.

8. The method of claim 1 , wherein:

the electronic device is a portable electronic device of the user; and

the portable electronic device does not store a software application corresponding to the service provider.

9. The method of claim 8 , wherein the portable electronic device is a phone.

10. An electronic device, comprising:

one or more processors;

a memory; and

one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions for:

receiving a first set of one or more predefined task types from a service provider;

integrating the first set of one or more predefined task types with a second set of predefined task types not associated with the service provider to generate a plurality of predefined task types;

receiving an input of a user specifying a task;

selecting, based on the user input, a task type from the plurality of predefined task types, the task type corresponding to one of the first set of the one or more predefined task types and to the task; and,

in response to selecting the task type, sending to the service provider a request to perform at least a portion of the task.

11. The electronic device of claim 10 , wherein the input is a voice input of the user that has been converted to text.

12. The electronic device of claim 10 , wherein the one or more programs further include instructions for:

prior to receiving the input of the user, receiving from the service provider an identification of a vocabulary; and

selecting the task type in accordance with the identification of the vocabulary.

13. The electronic device of claim 12 , wherein the one or more programs further include instructions for: associating the vocabulary with the first set of one or more predefined task types.

14. The electronic device of claim 12 , wherein receiving the identification of the vocabulary includes receiving the vocabulary.

15. The electronic device of claim 12 , wherein receiving the identification of the vocabulary includes receiving an identification of a vocabulary accessible to the electronic device prior to receiving the identification of the vocabulary.

16. A non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by one or more processors of an electronic device, cause the device to:

receive a first set of one or more predefined task types from a service provider;

integrate the first set of one or more predefined task types with a second set of predefined task types not associated with the service provider to generate a plurality of predefined tasks;

receive an input of a user specifying a task;

select, based on the user input, a task type from the plurality of predefined task types, the task type corresponding to one of the first set of the one or more predefined task types and to the task; and,

in response to selecting the task type, send to the service provider a request to perform at least a portion of the task.

17. The non-transitory computer readable storage medium of claim 16 , wherein the input is a voice input of the user that has been converted to text.

18. The non-transitory computer readable storage medium of claim 16 , wherein the one or more programs further cause the device to:

prior to receiving the input of the user, receive from the service provider an identification of a vocabulary; and

select the task type in accordance with the identification of the vocabulary.

19. The non-transitory computer readable storage medium of claim 18 , wherein the one or more programs further cause the device to: associating the vocabulary with the first set of the one or more predefined task types.

20. The non-transitory computer readable storage medium of claim 18 , wherein receiving the identification of the vocabulary includes receiving the vocabulary.

21. The non-transitory computer readable storage medium of claim 18 , wherein receiving the identification of the vocabulary includes receiving an identification of a vocabulary accessible to the electronic device prior to receiving the identification of the vocabulary.

Continuity (4)
Continuation 13894350 · May 14, 2013
Provisional Application 61799916 · Mar 15, 2013
Provisional Application 61647434 · May 15, 2012
Related Publication 20190361729A1 · Nov 28, 2019
Cited By (20)
US 12,197,817 US 12,200,297 US 12,211,502 US 12,216,894 US 12,219,314 US 12,236,952 US 12,260,234 US 12,277,954 US 12,293,763 US 12,293,764 US 12,301,635 US 12,333,404 US 12,361,943 US 12,367,879 US 12,386,434 US 12,386,491 US 12,425,474 US 12,477,470 US 12,608,171 US 12,619,452