IP Library Granted Patent US 10,171,472
Granted Patent B2
US 10,171,472 · App. 15/058,464 · Granted Jan 1, 2019

Role-specific service customization

Inventors: Andre Wilson Brotto Furtado (Kirkland, WA); Robert L. Rounthwaite (Fall City, WA); Xiaohan Shi (Sammamish, WA); Matthew Richardson (Seattle, WA); Ryen White (Woodinville, WA); Syed Fahad Allam Shah (Bellevue, WA); Shantanu Sharma (New Castle, WA)
Assignee: Microsoft Technology Licensing, LLC
H04L63/102G06Q10/107G06Q50/01
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,171,472
App. No.
15/058,464
Granted
Jan 1, 2019
Kind
B2
Abstract

In many computing scenarios, an individual may choose to interact with a service in a variety of roles, and may therefore create a set of accounts respectively representing the service. However, the use of multiple accounts by the same individual may introduce considerable administrative complications (e.g., failing to update all accounts with new information results in stale and/or conflicting account information), and may reduce the efficiency and/or scalability of the service. Presented herein are techniques for enabling individuals to interact with services through various roles. Such techniques involve evaluating the individual's role determinants to identify and automatically select the individual's current role; selecting a current role profile, as a subset of the details of the individual profile that are associated with the current role, and excluding details that are not associated with the current role; and performing the service according to the current role profile of the individual.

Claims (69)

1. One or more computing devices comprising:

one or more processors; and

one or more memory storing computer-executable instructions, which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to:

provide a computer-network-accessible service that is interacted with by an individual user, the individual user having multiple roles and interacting with the service differently depending on which of the multiple roles the individual user has assumed during the individual user's interaction with the service;

receive a detected action of the individual user;

select, from among the multiple roles, a current role of the individual user based on the detected action of the individual user, the detected action having been previously associated with the current role as a role determinant of the current role; and

select a current role profile, which controls the individual user's interactions with the service, based on the selected current role, the current role profile comprising an explicit enumeration of both: (1) at least one included profile detail and (2) at least one excluded profile detail.

2. The one or more computing devices of claim 1 , wherein the one or more memory stores further computer-executable instructions, which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to:

present, to a second individual user, a description of the individual user, the description comprising the at least one included profile detail and excluding the at least one excluded profile detail.

3. The one or more computing devices of claim 1 , wherein the one or more memory stores further computer-executable instructions, which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to:

notify a first contact of the individual user that the individual user is online, the first contact being specified by the at least one included profile detail; and

notify a second contact of the individual user that the individual user is offline, the second contact being specified by the at least one excluded profile detail.

4. The one or more computing devices of claim 1 , wherein the one or more memory stores further computer-executable instructions, which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to:

present information about the individual user to other individual users of the service based on a privacy filter specified by the at least one included profile detail.

5. The one or more computing devices of claim 1 , wherein the one or more memory stores further computer-executable instructions, which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to:

match one or more other individual users with the individual user based on the at least one included profile detail.

6. The one or more computing devices of claim 1 , wherein the one or more memory stores further computer-executable instructions, which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to:

receive, from a second individual user of the service, a request to initiate, through the service, communication with the individual user in a specified role;

initiate communication between the second individual user and the individual user through the service if the specified role is the current role of the individual user; and

deny communication between the second individual user and the individual user through the service if the specified role is not the current role of the individual user.

7. The one or more computing devices of claim 6 , wherein the one or more memory stores further computer-executable instructions, which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to:

determine a subsequent time when the individual user is predicted to be associated with the specified role if the specified role is not the current role of the individual user; and

specify the subsequent time to the second individual user if the specified role is not the current role of the individual user.

8. The one or more computing devices of claim 1 , wherein the detected action is a physical movement by the individual user detected by either a wearable sensor worn by the individual user or a camera communicationally coupled to a computing device utilized by the individual user to interact with the service.

9. The one or more computing devices of claim 1 , wherein the detected action comprises keywords utilized by the individual user as detected by a computing device that is also utilized by the individual user to interact with the service.

10. The one or more computing devices of claim 1 , wherein the detected action comprises attire of the individual user detected by a sensor communicationally coupled to a computing device utilized by the individual user to interact with the service.

11. The one or more computing devices of claim 1 , wherein the detected action comprises resources accessed by the individual user with a computing device that is also utilized by the individual user to interact with the service.

12. The one or more computing devices of claim 1 , wherein the computer-executable instructions for selecting the current role of the individual user comprise computer-executable instructions which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to select the current role of the individual user based on both the detected action of the individual user and a detected descriptor of the individual user's environment, the detected descriptor of the individual user's environment having been previously associated with the current role as another role determinant of the current role; and

wherein further the one or more memory stores further computer-executable instructions, which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to: receive the detected descriptor of the individual user's environment.

13. The one or more computing devices of claim 12 , wherein the detected descriptor of the individual user's environment comprises indications of one or more other individuals that are physically proximate to the individual user as detected by either an audio sensor communicationally coupled to a computing device that is utilized by the individual user to interact with the service or a video sensor communicationally coupled to the computing device that is utilized by the individual user to interact with the service.

14. The one or more computing devices of claim 12 , wherein the detected descriptor of the individual user's environment comprises identifications of one or more other computing devices that are physically proximate to a computing device that is utilized by the individual user to interact with the service.

15. The one or more computing devices of claim 1 , wherein the one or more memory stores further computer-executable instructions, which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to:

receive a second detected action of the individual user;

select a second current role of the individual user based on the second detected action of the individual user, the second detected action having been previously associated with the second current role as a role determinant of the second current role;

select a second current role profile based on the selected second current role, the second current role profile comprising an explicit enumeration at least one included second profile detail; and

determine that the second current role is complementary to the current role;

wherein, responsive to the determining that the second current role is complementary to the current role, the individual user's interactions with the service are controlled by a combination of: (1) the at least one included profile detail and (2) the at least one included second profile detail.

16. The one or more computing devices of claim 15 , wherein the one or more memory stores further computer-executable instructions, which, when executed by the one or more processors, cause the one or more computing devices, in aggregate, to:

notify contacts of the individual user that the individual user is online, the contacts being specified by a combination of the at least one included profile detail and the at least one included second profile detail.

17. A computing device comprising:

one or more processors;

a network interface; and

one or more memory storing computer-executable instructions, which, when executed by the one or more processors, cause the computing device to:

communicate, via the network interface, with one or more server computing devices executing a computer-network-accessible service to enable an individual user of the computing device to interact with the service, the individual user having multiple roles and interacting with the service differently depending on which of the multiple roles the individual user has assumed during the individual user's interaction with the service;

detect either an action of the individual user or a descriptor of the individual user's environment;

select, from among the multiple roles, a current role of the individual user based on either the detected action of the individual user or the detected descriptor of the individual user's environment, the detected action or the detected descriptor of the individual user's environment having been previously associated with the current role as role determinants of the current role; and

notify, via the network interface, the service of the selected current role;

wherein the detected action of the individual user comprises at least one of:

a physical movement by the individual user detected by either a wearable sensor worn by the individual user or a camera communicationally coupled to the computing device; or

attire of the individual user detected by a sensor communicationally coupled to the computing device; and

wherein the detected descriptor of the individual user's environment comprises at least one of:

one or more other individuals that are physically proximate to the individual user as detected by either an audio sensor communicationally coupled to the computing device or a video sensor communicationally coupled to the computing device; or

identifications of one or more other computing devices that are physically proximate to the computing device.

18. A method of modifying provision of a computer-network-accessible service to an individual user based on a determined role within which the individual user is interacting with the service, the method comprising:

receiving, at a computing device, either a detected action of the individual user or a detected descriptor of the individual user's environment;

selecting, by the computing device, from among the multiple roles, a current role of the individual user based on either the detected action of the individual user or the detected descriptor of the individual user's environment, the detected action or the detected descriptor of the individual user's environment having been previously associated with the current role as role determinants of the current role; and

selecting, by the computing device, a current role profile, according to which the provision of the service to the individual user will be modified, the selecting being based on the selected current role, the current role profile comprising an explicit enumeration of both: (1) at least one included profile detail and (2) at least one excluded profile detail.

19. The method of claim 18 , wherein the detected action of the individual user comprises at least one of:

a physical movement by the individual user detected by either a wearable sensor worn by the individual user or a camera communicationally coupled to the computing device; or

attire of the individual user detected by a sensor communicationally coupled to the computing device; and

wherein the detected descriptor of the individual user's environment comprises at least one of:

one or more other individuals that are physically proximate to the individual user as detected by either an audio sensor communicationally coupled to the computing device or a video sensor communicationally coupled to the computing device; or

identifications of one or more other computing devices that are physically proximate to the computing device.

20. The method of claim 18 , further comprising:

receiving a second detected action of the individual user;

selecting a second current role of the individual user based on the second detected action of the individual user, the second detected action having been previously associated with the second current role as a role determinant of the second current role;

selecting a second current role profile based on the selected second current role, the second current role profile comprising an explicit enumeration at least one included second profile detail; and

determining that the second current role is complementary to the current role;

wherein, responsive to the determining that the second current role is complementary to the current role, the individual user's interactions with the service are controlled by a combination of: (1) the at least one included profile detail and (2) the at least one included second profile detail.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2016
From: FURTADO, ANDRE WILSON BROTTO; ROUNTHWAITE, ROBERT L.; SHI, XIAOHAN; RICHARDSON, MATTHEW; WHITE, RYEN; SHAH, SYED FAHAD ALLAM; SHARMA, SHANTANU
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 038008/0766 →
Continuity (1)
Related Publication 20170257373A1 · Sep 7, 2017