IP Library › Granted Patent US 10,945,129
Granted Patent B2
US 10,945,129 · App. 15/143,457 · Granted Mar 9, 2021

Facilitating interaction among digital personal assistants

Inventors: Christian Liensberger (Bellevue, WA); Varsha Mahadevan (Sammamish, WA); Jonathan E. Hamaker (Issaquah, WA); Michael D. Plumpe (Seattle, WA)
Assignee: Microsoft Technology Licensing, LLC
H04W12/06H04L63/0884H04L67/025H04L67/104H04L67/22
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,945,129
App. No.
15/143,457
Granted
Mar 9, 2021
Kind
B2
Abstract

Techniques are described herein that are capable of implementing a context-aware digital personal assistant (DPA) that supports multiple accounts and/or facilitating interaction among digital personal assistants. For example, a user may be signed-in with accounts of a DPA. Content from content streams associated with the respective accounts may be selectively combined based on at least the user's context. In another example, users who are signed-in with accounts of a DPA may share a user experience provided by the DPA. Content from content streams associated with the respective accounts may be selectively combined based on at least one or more of the users' context. In yet another example, a first DPA associated with a first user may be caused to perform an operation on behalf of a second DPA associated with a second user or to delegate the operation to the second DPA.

Claims (33)

1. A system to facilitate interaction among digital personal assistants, the system comprising:

memory; and

one or more processors coupled to the memory, the one or more processors configured to:

determine whether a first digital personal assistant that is on a first device, which is coupled to the system via a network, is authorized to perform an operation on behalf of a second digital personal assistant that is on a second device, which is coupled to the system via the network, the first digital personal assistant being associated with a first user, the second digital personal assistant being different from the first digital personal assistant and being associated with a second user who is different from the first user, the second device being different from the first device; and

cause the first digital personal assistant that is on the first device, which is coupled to the system via the network, to perform the operation on behalf of the second digital personal assistant that is on the second device, which is coupled to the system via the network, by providing an operation instruction from the system via the network to the first device based at least in part on a determination that the first digital personal assistant that is on the first device, which is coupled to the system via the network, is authorized to perform the operation on behalf of the second digital personal assistant that is on the second device, which is coupled to the system via the network, and further based at least in part on the second user not being engaged with the second device.

2. The system of claim 1 , wherein the one or more processors are configured to cause the first digital personal assistant to perform the operation on behalf of the second digital personal assistant further based at least in part on the second user being proximate a designated location.

3. The system of claim 1 , wherein the one or more processors are configured to cause the first digital personal assistant to perform the operation on behalf of the second digital personal assistant further based at least in part on information conveyed in a statement by the second user in a conversation.

4. The system of claim 1 , wherein the one or more processors are configured to cause the first digital personal assistant to perform the operation on behalf of the second digital personal assistant further based at least in part on a scheduled event of the second user being scheduled to occur within a threshold duration of time from a current time.

5. The system of claim 1 , wherein the one or more processors are configured to cause the first digital personal assistant to perform the operation on behalf of the second digital personal assistant further based at least in part on an interaction pattern of the second user with at least one of (a) one or more applications or (b) one or more services.

6. The system of claim 1 , wherein the one or more processors are configured to cause the first digital personal assistant to perform the operation on behalf of the second digital personal assistant further based at least in part on the second user being in a presence of one or more specified users.

7. The system of claim 1 , wherein the one or more processors are configured to cause the first digital personal assistant to perform the operation on behalf of the second digital personal assistant further based at least in part on one of a search history of the second user, a browse history of the second user, or a habit of the second user.

8. The system of claim 1 , wherein the second user is signed-in with a plurality of accounts of the second digital personal assistant, the plurality of accounts including at least a first account and a second account; and

wherein the one or more processors are configured to cause the first digital personal assistant to perform the operation on behalf of the second digital personal assistant further based at least in part on the second user changing from a first context associated with the first account to a second context associated with the second account.

9. A system to facilitate interaction among digital personal assistants, the system comprising:

memory; and

one or more processors coupled to the memory, the one or more processors configured to:

determine whether a first digital personal assistant that is on a first device, which is coupled to the system via a network, is authorized to delegate an operation to a second digital personal assistant that is on a second device, which is coupled to the system via the network, the first digital personal assistant being associated with a first user, the second digital personal assistant being different from the first digital personal assistant and being associated with a second user who is different from the first user, the second device being different from the first device; and

cause the first digital personal assistant that is on the first device, which is coupled to the system via the network, to delegate the operation to the second digital personal assistant that is on the second device, which is coupled to the system via the network, by providing an operation instruction from the system via the network to the first device based at least in part on a determination that the first digital personal assistant that is on the first device, which is coupled to the system via the network, is authorized to delegate the operation to the second digital personal assistant that is on the second device, which is coupled to the system via the network, and further based at least in part on the second user being engaged with the second device.

10. The system of claim 9 , wherein the one or more processors are configured to cause the first digital personal assistant to delegate the operation to the second digital personal assistant further based at least in part on the second user coming within a threshold distance to a designated location.

11. The system of claim 10 , wherein the one or more processors are configured to cause the first digital personal assistant to delegate the operation to the second digital personal assistant further based at least in part on the operation pertaining to the designated location.

12. The system of claim 9 , wherein the one or more processors are configured to cause the first digital personal assistant to delegate the operation to the second digital personal assistant further based at least in part on information conveyed in a statement by the second user in a conversation.

13. The system of claim 9 , wherein the one or more processors are configured to cause the first digital personal assistant to delegate the operation to the second digital personal assistant further based at least in part on a scheduled event of the second user.

14. The system of claim 9 , wherein the one or more processors are configured to cause the first digital personal assistant to delegate the operation to the second digital personal assistant further based at least in part on one of an interaction pattern of the second user or a habit of the second user.

15. The system of claim 9 , wherein the one or more processors are configured to cause the first digital personal assistant to delegate the operation to the second digital personal assistant further based at least in part on the second user being within a specified proximity to one or more specified users.

16. The system of claim 9 , wherein the one or more processors are configured to cause the first digital personal assistant to delegate the operation to the second digital personal assistant further based at least in part on one or more applications that are opened by the second user.

17. The system of claim 9 , wherein the one or more processors are configured to cause the first digital personal assistant to delegate the operation to the second digital personal assistant further based at least in part on one of a search history of the second user or a browse history of the second user.

18. The system of claim 9 , wherein the second user is signed-in with a plurality of accounts of the second digital personal assistant, the plurality of accounts including at least a first account and a second account; and

wherein the causation logic is configured to cause the first digital personal assistant to delegate the operation to the second digital personal assistant further based at least in part on the second user changing from a first context associated with the first account to a second context associated with the second account.

19. A method of facilitating interaction among digital personal assistants, the method performed by a system using at least one element that includes at least one of (a) one or more processors, (b) hardware logic, or (c) electrical circuitry, the method comprising:

determining that a first digital personal assistant that is on a first device, which is coupled to the system via a network, is authorized to delegate an operation to a second digital personal assistant that is on a second device, which is coupled to the system via the network, the first digital personal assistant being associated with a first user, the second digital personal assistant being different from the first digital personal assistant and being associated with a second user who is different from the first user, the second device being different from the first device, wherein the second user is signed-in with a plurality of accounts of the second digital personal assistant, the plurality of accounts including at least a first account and a second account; and

causing the first digital personal assistant that is on the first device, which is coupled to the system via the network, to delegate the operation to the second digital personal assistant that is on the second device, which is coupled to the system via the network, using the at least one element, by providing an operation instruction from the system via the network to the first device based at least in part on determining that the first digital personal assistant that is on the first device, which is coupled to the system via the network, is authorized to delegate the operation to the second digital personal assistant that is on the second device, which is coupled to the system via the network, and further based at least in part on the second user changing from a first context associated with the first account to a second context associated with the second account.

20. The method of claim 19 , wherein causing the first digital personal assistant to delegate the operation to the second digital personal assistant comprises:

causing the first digital personal assistant to delegate the operation to the second digital personal assistant further based at least in part on information conveyed in a statement by the second user in a conversation.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2019
From: HAMAKER, JONATHAN E.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 048748/0209 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2016
From: LIENSBERGER, CHRISTIAN; MAHADEVAN, VARSHA; HAMAKER, JON; PLUMPE, MICHAEL D.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 038426/0797 →
Continuity (1)
Related Publication 20170318075A1 · Nov 2, 2017