IP Library Granted Patent US 12,131,523
Granted Patent B2
US 12,131,523 · App. 17/182,951 · Granted Oct 29, 2024

Multiple wake words for systems with multiple smart assistants

Inventors: Xiaohu Liu (Bellevue, WA); Baiyang Liu (Bellevue, WA); Rajen Subba (San Carlos, CA)
Assignee: Meta Platforms, Inc.
G06V10/82G06F3/011G06F3/013G06F3/017G06F3/167G06F7/14G06F9/453G06F16/176G06F16/2255G06F16/2365G06F16/243G06F16/24552G06F16/24575G06F16/24578G06F16/248G06F16/3323G06F16/3329G06F16/3344G06F16/338G06F16/90332G06F16/90335G06F16/9038G06F16/904G06F16/951G06F16/9535G06F18/2411G06F40/205G06F40/295G06F40/30G06F40/40G06N3/006G06N3/08G06N7/01G06N20/00G06Q50/01G06V10/764G06V20/10G06V40/28G10L15/02G10L15/063G10L15/07G10L15/16G10L15/1815G10L15/1822G10L15/183G10L15/187G10L15/22G10L15/26G10L17/06G10L17/22H04L5/02H04L12/2816H04L41/20H04L41/22H04L43/0882H04L43/0894H04L51/02H04L51/18H04L51/216H04L51/52H04L67/306H04L67/535H04L67/5651H04L67/75H04W12/08G06F2216/13G10L13/00G10L13/04G10L2015/223G10L2015/225H04L51/046H04L67/10H04L67/53
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 12,131,523
App. No.
17/182,951
Granted
Oct 29, 2024
Kind
B2
Abstract

In one embodiment, a method includes by a client system associated with a user, receiving, at the client system, a user input from the user, parsing, by the client system, the first user input to identify a request to execute a function to be performed by an assistant system of several assistant systems associated with the client system, determining whether the user is authorized to access the assistant system by comparing a voiceprint of the user to several voiceprints stored on the client system, sending, from the client system to the assistant system in response to determining the user is authorized to access the assistant system, a request to set an assistant xbot of the assistant system into a listening mode, and receiving, at the client system from the assistant system, an indication that the assistant xbot is in listening mode.

Claims (50)

1. A method comprising, by a client system associated with a first user:

receiving, at the client system, a first user input from the first user;

parsing, by the client system, the first user input to identify a request to execute a first function to be performed by a first assistant system of a plurality of assistant systems associated with the client system;

determining whether the first user is authorized to access the first assistant system by comparing a voiceprint of the first user to a plurality of voiceprints corresponding to the plurality of assistant systems stored on the client system, wherein each of the plurality of assistant systems includes a respective set of authorized users authorized to use the respective assistant system, and wherein each of the plurality of assistant systems includes a set of functions corresponding to each of the authorized users for the respective assistant system;

sending, from the client system to the first assistant system in response to determining the first user is within the respective set of authorized users authorized to access the first assistant system, a request to set a first assistant xbot of the first assistant system into a listening mode; and receiving, at the client system from the first assistant system, an indication that the first assistant xbot is in listening mode;

receiving, at the client system associated with the first user, a second user input from the first user;

parsing, by the client system, the second user input to identify a second request to execute a second function to be performed by a second assistant system of the plurality of assistant systems associated with the client system;

determining whether the first user is authorized to access the second assistant system by comparing the voiceprint of the first user to the plurality of voiceprints stored on the client system;

sending, from the client system to the second assistant system in response to determining the first user is authorized to access the second assistant system, a request to set a second assistant xbot of the second assistant system into a listening mode; and

receiving, at the client system from the second assistant system, an indication that the second assistant xbot is in listening mode.

2. The method of claim 1 , wherein the determination that the first user is authorized to access the first assistant system comprises:

accessing, by the client system, the plurality of voiceprints corresponding to a plurality of users, respectively;

comparing, by the client system, the first user input against the plurality of voiceprints to identify the first user, wherein the first user corresponds to a first user identifier (ID); and

determining, by the client system, that the first user is authorized to access the first assistant system based on a comparison of the first user ID with a list of authorized user IDs associated with the first assistant system.

3. The method of claim 1 , wherein the first user is provided access to a subset of a set of functions available on the first assistant system.

4. The method of claim 1 , wherein the plurality of assistant systems associated with the client system correspond to a plurality of assistant applications installed on the client system, respectively.

5. The method of claim 1 , wherein the plurality of assistant systems associated with the client system are accessible via the client system.

6. The method of claim 1 , further comprising:

receiving, at the client system from the first assistant system, one or more results responsive to the request based on the execution of the first function; and presenting, at the client system, the one or more results to the first user.

7. The method of claim 1 , wherein the first user input is received at a user input analysis module of the client system.

8. The method of claim 1 , wherein the first user input comprises an n-gram associated with a first wake word from a plurality of wake words corresponding to the plurality of assistant systems.

9. The method of claim 8 , wherein one or more wake words of the plurality of wake words are customized wake words specified by the first user, wherein each of the customized wake words corresponds to one of the plurality of assistant systems.

10. The method of claim 9 , wherein one of the customized wake words corresponds to the first assistant system, and wherein the one of the customized wake words provides access to a subset of functions available on the first assistant system.

11. The method of claim 9 , wherein the voiceprint of the first user is generated for the first user based on the customized wake words specified by the first user.

12. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

receive, at the client system, a first user input from a first user;

parse, by the client system, the first user input to identify a request to execute a first function to be performed by a first assistant system of a plurality of assistant systems associated with the client system;

determine whether the first user is authorized to access the first assistant system by comparing a voiceprint of the first user to a plurality of voiceprints corresponding to the plurality of assistant systems stored on the client system, wherein each of the plurality of assistant systems includes a respective set of authorized users authorized to use the respective assistant system, and wherein each of the plurality of assistant systems includes a set of functions corresponding to each of the authorized users for the respective assistant system;

send, from the client system to the first assistant system in response to determining the first user is within the respective set of authorized users authorized to access the first assistant system, a request to set a first assistant xbot of the first assistant system into a listening mode; and receive, at the client system from the first assistant system, an indication that the first assistant xbot is in listening mode;

receive, at the client system associated with the first user, a second user input from the first user;

parse, by the client system, the second user input to identify a second request to execute a second function to be performed by a second assistant system of the plurality of assistant systems associated with the client system;

determine whether the first user is authorized to access the second assistant system by comparing the voiceprint of the first user to the plurality of voiceprints stored on the client system;

send, from the client system to the second assistant system in response to determining the first user is authorized to access the second assistant system, a request to set a second assistant xbot of the second assistant system into a listening mode; and

receive, at the client system from the second assistant system, an indication that the second assistant xbot is in listening mode.

13. The media of claim 12 , wherein the first user input comprises an n-gram associated with a first wake word from a plurality of wake words corresponding to the plurality of assistant systems.

14. The media of claim 13 , wherein one or more wake words of the plurality of wake words are customized wake words specified by the first user, wherein each of the customized wake words corresponds to one of the plurality of assistant systems.

15. The media of claim 14 , wherein one of the customized wake words corresponds to the first assistant system, and wherein the one of the customized wake words provides access to a subset of functions available on the first assistant system.

16. A system comprising: one or more processors; and a non transitory memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to:

receive, at the client system, a first user input from a first user;

parse, by the client system, the first user input to identify a request to execute a first function to be performed by a first assistant system of a plurality of assistant systems associated with the client system;

determine whether the first user is authorized to access the first assistant system by comparing a voiceprint of the first user to a plurality of voiceprints corresponding to the plurality of assistant systems stored on the client system, wherein each of the plurality of assistant systems includes a respective set of authorized users authorized to use the respective assistant system, and wherein each of the plurality of assistant systems includes a set of functions corresponding to each of the authorized users for the respective assistant system;

send, from the client system to the first assistant system in response to determining the first user is within the respective set of authorized users authorized to access the first assistant system, a request to set a first assistant xbot of the first assistant system into a listening mode; and receive, at the client system from the first assistant system, an indication that the first assistant xbot is in listening mode;

receive, at the client system associated with the first user, a second user input from the first user;

parse, by the client system, the second user input to identify a second request to execute a second function to be performed by a second assistant system of the plurality of assistant systems associated with the client system;

determine whether the first user is authorized to access the second assistant system by comparing the voiceprint of the first user to the plurality of voiceprints stored on the client system;

send, from the client system to the second assistant system in response to determining the first user is authorized to access the second assistant system, a request to set a second assistant xbot of the second assistant system into a listening mode; and

receive, at the client system from the second assistant system, an indication that the second assistant xbot is in listening mode.

17. The system of claim 16 , wherein the first user input comprises an n-gram associated with a first wake word from a plurality of wake words corresponding to the plurality of assistant systems.

18. The system of claim 17 , wherein one or more wake words of the plurality of wake words are customized wake words specified by the first user, wherein each of the customized wake words corresponds to one of the plurality of assistant systems.

19. The system of claim 17 , wherein one of the customized wake words corresponds to the first assistant system, and wherein the one of the customized wake words provides access to a subset of functions available on the first assistant system.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2024
From: LIU, XIAOHU; LIU, BAIYANG; SUBBA, RAJEN
To: FACEBOOK, INC.
Reel/Frame 067364/0928 →
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
Continuity (3)
Continuation 16183650 · Nov 7, 2018
Provisional Application 62660876 · Apr 20, 2018
Related Publication 20210183397A1 · Jun 17, 2021