IP Library Granted Patent US 10,089,983
Granted Patent B1
US 10,089,983 · App. 15/617,604 · Granted Oct 2, 2018

Third party account linking for voice user interface

Inventors: Ganesh Kumar Gella (Redmond, WA); Venkata Abhinav Sidharth Bhagavatula (Seattle, WA); Robert William Serr (Kirkland, WA); Yonnas Getahun Beyene (Lynnwood, WA)
Assignee: Amazon Technologies, Inc.
G10L15/22G10L15/32
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 10,089,983
App. No.
15/617,604
Granted
Oct 2, 2018
Kind
B1
Abstract

Methods and systems for adding functionality to an account of a language processing system where the functionality is associated with a second account of a first application system is described herein. In a non-limiting embodiment, an individual may log into a first account of a language processing system and log into a second account of a first application system. While logged into both the first account and the second account, a button included within a webpage provided by the first application may be invoked. A request capable of being serviced using the first functionality may be received by the language processing system from a device associated with the first account. The language processing system may send first account data and the second account data to the first application system to facilitate an action associated with the request, thereby enabling the first functionality for the first account.

Claims (121)

1. A method, comprising:

receiving, at a language processing system, a first application identifier indicating a first application functionality associated with the language processing system, the first application identifier being received from a first electronic device in response to a button displayed by a display screen associated with the first electronic device being pressed, the first application identifier being received from the first electronic device;

receiving, at the language processing system, a first account identifier associated with a first account of a first application system, the first application system corresponding to the first functionality of the language processing system, the first account identifier being received from the first electronic device;

receiving, at the language processing system, a second account identifier associated with a second account of the language processing system, the second account identifier being received from the first electronic device;

determining, based at least in part on the second account identifier, that the first electronic device is associated with the second account;

storing the first account identifier as being associated with the second account;

determining, using the first application identifier, the first application functionality associated with the language processing system; and

causing the first application functionality to be enabled for the second account such that a language model associated with the second account is updated to comprise:

first application invocation phrase text data representing invocation phrases capable of being used to invoke the first application functionality;

first application sample utterance template text data representing sample utterances having an intent associated with the first application functionality;

first application sample response template text data representing sample responses capable of being used to respond to subsequent utterance associated with the first application functionality, the first application sample response template text data comprising first application response slot data; and

first application placeholder value text data capable of being used for the first application response slot data.

2. The method of claim 1 , further comprising:

receiving, at the language processing system, first audio data representing a first utterance, the first utterance comprising a request associated with the first application system, the first audio data being received from the first electronic device;

generating first text data representing the first audio data;

determining a first confidence score indicating a likelihood that the first utterance corresponds to one of the sample utterances;

determining that the first confidence score is greater than a predefined confidence score threshold indicating that a first intent of the first utterance is associated with the first application functionality;

sending the second account identifier to the first application system to identify the second account identifier as being associated with the first account;

sending the first text data to the first application system such that the request is capable of being facilitated;

receiving, at the language processing system and from the first application system, notification data indicating that the request has been processed;

determining second text data representing a message indicating that the request has been processed by the first application system;

generating second audio data representing the second text data; and

sending the second audio data to the first electronic device.

3. The method of claim 1 , further comprising:

generating third account data representing an account token associated with the second account;

storing the third account data as being associated with the second account such that the third account data is stored as being associated with the first application identifier and the first account identifier;

receiving, at the language processing system, first audio data representing a first utterance, the first utterance comprising a request associated with the first application system, the first audio data being received from the first electronic device;

generating first text data representing the first audio data;

determining, using the first text data, that a first intent of the first utterance is associated with the first application functionality;

sending the first account identifier and the third account data to the first application system to such that the first application system authorizes the first account as being associated with an obfuscated account of the language processing system, the obfuscated account corresponding to the second account;

sending the first text data to the first application system such that the request is capable of being facilitated.

4. The method of claim 1 , further comprising:

sending the first account identifier to the first application system; and

sending the second account identifier to the first application system such that the first application system stores the second account identifier as being associated with the first account to authorize the second account with the first application system.

5. A method, comprising:

receiving, from a first device, first account data representing a first account identifier associated with a first account of a first application;

receiving a first application identifier associated with a first functionality of a language processing system that is associated with the first application;

receiving second account data representing a second account identifier;

determining that the second account identifier is associated with a second account of the language processing system;

determining first language model data representing a language model associated with the second account;

storing the first account data as being associated with the second account;

storing the first application identifier as being associated with the second account; and

generating second language model data representing an updated language model such that the first functionality is enabled for the second account.

6. The method of claim 5 , further comprising:

receiving first notification data indicating that a first button associated with the first application has been invoked by the first device, wherein the first button is displayed within a webpage rendered by the first device such that the first account data and the second account data are received in response to the first button being invoked.

7. The method of claim 5 , further comprising:

adding the first functionality to the first language model data to generate the second language model data, wherein adding the first functionality comprises:

adding, to the first language model data, first text data representing at least one phrase capable of being used to invoke the first functionality;

adding, to the first language model data, second text data representing at least one response capable of being used to respond to the at least one phrase, the second text data comprising slot data representing at least one fillable slot; and

adding, to the first language model data, third text data representing at least one term associated with the first functionality that is capable of being attributed to the slot data.

8. The method of claim 5 , further comprising:

sending the second account data to the first application; and

sending the first account data to the first application such that the second account data is stored by the first application as being associated with the first account.

9. The method of claim 5 , further comprising:

receiving, from the first device, first audio data representing a first utterance;

generating first text data representing the first audio data;

determining, using the first text data, that a first intent of the first utterance is associated with the first functionality;

sending the first text data to the first application;

sending the second account data to the first application; and

sending the first account data to the first application such that the second account data is stored by the first application as being associated with the first account.

10. The method of claim 9 , further comprising:

receiving notification data indicating that an action associated with the first intent has been performed by the first application;

determining, using the second language model data, second text data representing a response indicating that the action has been performed;

generating second audio data representing the second text data; and

sending the second audio data to the first device.

11. The method of claim 5 , further comprising:

generating third account data representing the second account data, the third account data comprising a token associated with the second account identifier; and

storing the third account data as being associated with the second account and the first account data such that an utterance having an intent associated with the first functionality causes the third account data to be sent to the first application to identify the second account as being associated with the first account.

12. The method of claim 11 , further comprising:

receiving, from the first device, first audio data representing a first utterance;

generating first text data representing the first audio data;

determining, using the first text data, that a first intent of the first utterance is associated with the first functionality;

determining that the second account comprises the third account data as being associated with the first functionality;

sending the first text data to the first application;

sending the third account data to the first application; and

sending the first account data to the first application such that the third account data is stored by the first application to associate the second account with the first account.

13. A language processing system, comprising:

memory;

communications circuitry; and

at least one processor operable to:

receive, from a first device, first account data representing a first account identifier associated with a first account of a first application;

receive a first application identifier associated with a first functionality of a language processing system that is associated with the first application;

receive second account data representing a second account identifier;

determine that the second account identifier is associated with a second account of the language processing system;

determine first language model data representing a language model associated with the second account;

store the first account data as being associated with the second account;

store the first application identifier as being associated with the second account; and

generate second language model data representing an updated language model such that the first functionality is enabled for the second account.

14. The language processing system of claim 13 , wherein the at least one processor is further operable to:

receive first notification data indicating that a first button associated with the first application has been invoked by the first device, wherein the first button is displayed within a webpage rendered by the first device such that the first account data and the second account data are received in response to the first button being invoked.

15. The language processing system of claim 13 , wherein the at least one processor is further operable to:

add the first functionality to the first language model data to generate the second language model data, wherein the first functionality being added comprises:

first text data representing at least one phrase capable of being used to invoke the first functionality being added to the first language model data;

second text data representing at least one response capable of being used to respond to the at least one phrase, the second text data comprising slot data representing at least one fillable slot being added to the first language model data; and

third text data representing at least one term associated with the first functionality that is capable of being attributed to the slot data being added to the first language model data.

16. The language processing system of claim 13 , wherein the at least one processor is further operable to:

send the second account data to the first application; and

send the first account data to the first application such that the second account data is stored by the first application as being associated with the first account.

17. The language processing system of claim 13 , wherein the at least one processor is further operable to:

receive, from the first device, first audio data representing a first utterance;

generate first text data representing the first audio data;

determine, using the first text data, that a first intent of the first utterance is associated with the first functionality;

send the first text data to the first application;

send the second account data to the first application; and

send the first account data to the first application such that the second account data is stored by the first application as being associated with the first account.

18. The language processing system of claim 17 , wherein the at least one processor is further operable to:

receive notification data indicating that an action associated with the first intent has been performed by the first application;

determine, using the second language model data, second text data representing a response indicating that the action has been performed;

generate second audio data representing the second text data; and

send the second audio data to the first device.

19. The language processing system of claim 13 , wherein the at least one processor is further operable to:

generate third account data representing the second account data, the third account data comprising a token associated with the second account identifier; and

store the third account data as being associated with the second account and the first account data such that an utterance having an intent associated with the first functionality causes the third account data to be sent to the first application to identify the second account as being associated with the first account.

20. The language processing system of claim 13 , wherein the at least one processor is further operable to:

receive, from the first device, first audio data representing a first utterance;

generate first text data representing the first audio data;

determine, using the first text data, that a first intent of the first utterance is associated with the first functionality;

determine that the second account comprises the third account data as being associated with the first functionality;

send the first text data to the first application;

send the third account data to the first application; and

send the first account data to the first application such that the third account data is stored by the first application to associate the second account with the first account.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2017
From: GELLA, GANESH KUMAR; BHAGAVATULA, VENKATA ABHINAV SIDHARTH; SERR, ROBERT WILLIAM; BEYENE, YONNAS GETAHUN
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 042709/0321 →
Cited By (29)
US 12,192,130 US 12,197,817 US 12,200,297 US 12,211,502 US 12,223,228 US 12,236,952 US 12,261,848 US 12,293,763 US 12,301,635 US 12,307,505 US 12,327,230 US 12,333,404 US 12,361,943 US 12,367,879 US 12,381,673 US 12,381,880 US 12,386,434 US 12,386,491 US 12,400,279 US 12,405,717 US 12,406,661 US 12,424,214 US 12,477,470 US 12,579,528 US 12,602,594 US 12,608,171 US 12,619,452 US 12,700,961 US 12,726,362