# US 11,122,423 B2 · Proximity based authentication of a user through a voice assistant device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,122,423 B2
- Document ID: US11122423B2
- Status: Granted
- Kind: B2
- Application number: 16/453,357
- Filed: 2019-06-26
- Published: 2020-12-31
- Granted: 2021-09-14
- Earliest claimed: 2019-06-26
- Assignees: VMware, Inc.
- Applicants: VMware, Inc.
- Inventors: Erich Peter Stuntebeck; Kar Fai Tse; Ravish Chawla; Chaoting Xuan
- Web page: https://patentgrep.com/patent/US11122423B2

## CPC

- H04W 12/63: Location-dependent; Proximity-dependent
- G06Q 10/1093: Calendar-based scheduling for persons or groups
- H04W 12/069: using certificates or pre-shared keys
- H04W 12/72: Subscriber identity
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

Disclosed are various approaches for authenticating a user through a voice assistant device and creating an association between the device and a user account. The request is associated with a network or federated service. A user account can be implicitly authenticated based on proximity of a client device to the voice assistant device. An association between the user account and the voice assistant device can then be created.

## Claims

### Claim 1

A system for authenticating a user with a service account through a voice assistant, comprising:
at least one computing device;
a user authentication service that, when executed by the at least one computing device, causes the at least one computing device to at least:
receive an indication that at least one client device is in proximity to a voice assistant device, the indication generated at least in part by capturing an identifier from a Bluetooth location beacon in proximity to the voice assistant device;
extract at least one device identifier corresponding to the at least one client device from the at least one indication;
identify a client device from the at least one device identifier, the client device being associated with a user account;
associate the user account with the voice assistant device in response to identifying the client device;
receive a request for data from a service associated with the user from the voice assistant device; and
cause at least a portion of the data to be played back through the voice assistant device.

### Claim 2 (depends on 1)

The system of claim 1, wherein the service comprises a third party service for which authentication is federated to an identity provider service and the user authentication service causes the at least one computing device to at least:
obtain an authentication token for the service from the identity provider service, the authentication token being associated with the user;
obtain the requested data from the service on behalf of the user in response to the request for data, wherein the requested data is obtained using the authentication token.

### Claim 3 (depends on 1)

The system of claim 1, wherein the user authentication service, when executed by the at least one computing device, identify the client device from the at least one device identifier by:
identifying at least one user account associated with the at least one client device; and
determining that a respective calendar associated with the user account identifies a meeting location in proximity to the voice assistant device at a current time.

### Claim 4 (depends on 3)

The system of claim 3, wherein a plurality of calendars are associated with a meeting location in proximity to the voice assistant device, and the instructions identify the client device by determining that the user account is identified as a meeting organizer of a calendar item associated with the meeting location.

### Claim 5 (depends on 1)

The system of claim 1, wherein the indication that at least one client device is in proximity to the voice assistant device comprises an identifier of a location beacon obtained by the at least one client device.

### Claim 6 (depends on 1)

The system of claim 1, wherein the instructions, when executed by the at least one processor, cause the computing device to at least:
receive an indication that the client device is no longer in proximity to the voice assistant device; and
remove the association between the user account and the voice assistant device such that a subsequent request for data associated with the user account from the voice assistant device fails.

### Claim 7

A non-transitory computer-readable medium comprising machine-readable instructions, wherein the instructions, when executed by at least one processor, cause a computing device to at least:
receive an indication that at least one client device is in proximity to a voice assistant device, the indication generated at least in part by capturing an identifier from a Bluetooth location beacon in proximity to the voice assistant device;
extract at least one device identifier corresponding to the at least one client device from the at least one indication;
identify a client device from the at least one device identifier, the client device being associated with a user account;
associate the user account with the voice assistant device in response to identifying the client device;
receive a request for data from a service associated with the user from the voice assistant device; and
cause at least a portion of the data to be played back through the voice assistant device.

### Claim 8 (depends on 7)

The non-transitory computer-readable medium of claim 7, wherein the instructions, when executed by the at least one processor, cause the computing device to at least:
obtain an authentication token for the service from the identity provider service, the authentication token being associated with the user; and
obtain the requested data from the service on behalf of the user in response to the request for data, wherein the requested data is obtained using the authentication token.

### Claim 9 (depends on 7)

The non-transitory computer-readable medium of claim 7, wherein the instructions, when executed by the at least one processor, identify the client device from the at least one device identifier by:
identifying at least one user account associated with the at least one client device; and
determining that a respective calendar associated with the user account identifies a meeting location in proximity to the voice assistant device at a current time.

### Claim 10 (depends on 9)

The non-transitory computer-readable medium of claim 9, wherein a plurality of calendars are associated with a meeting location in proximity to the voice assistant device, and the instructions identify the client device by determining that the user account is identified as a meeting organizer of a calendar item associated with the meeting location.

### Claim 11 (depends on 7)

The non-transitory computer-readable medium of claim 7, wherein the indication that at least one client device is in proximity to the voice assistant device is obtained from a location beacon in proximity to the voice assistant device.

### Claim 12 (depends on 7)

The non-transitory computer-readable medium of claim 7, wherein the instructions, when executed by the at least one processor, cause the computing device to at least:
receive an indication that the client device is no longer in proximity to the voice assistant device; and
remove the association between the user account and the voice assistant device such that a subsequent request for data associated with the user account from the voice assistant device fails.

### Claim 13

A method comprising:
receiving an indication that at least one client device is in proximity to a voice assistant device, the indication generated at least in part by capturing an identifier from a Bluetooth location beacon in proximity to the voice assistant device;
extracting at least one device identifier corresponding to the at least one client device from the at least one indication;
identifying a client device from the at least one device identifier, the client device being associated with a user account;
associating the user account with the voice assistant device in response to identifying the client device;
receiving a request for data from a service associated with the user from the voice assistant device; and
cause at least a portion of the data to be played back through the voice assistant device.

### Claim 14 (depends on 13)

The method of claim 13, further comprising:
obtaining an authentication token for the service from the identity provider service, the authentication token being associated with the user; and
obtaining the requested data from the service on behalf of the user in response to the request for data, wherein the requested data is obtained using the authentication token.

### Claim 15 (depends on 13)

The method of claim 13, wherein identifying the client device from the at least one device identifier further comprises:
identifying at least one user account associated with the at least one client device; and
determining that a respective calendar associated with the user account identifies a meeting location in proximity to the voice assistant device at a current time.

### Claim 16 (depends on 15)

The method of claim 15, wherein a plurality of calendars are associated with a meeting location in proximity to the voice assistant device, and identifying the client device further comprises determining that the user account is identified as a meeting organizer of a calendar item associated with the meeting location.

### Claim 17 (depends on 13)

The method of claim 13, wherein the indication that at least one client device is in proximity to the voice assistant device comprises an identifier of a location beacon obtained by the at least one client device.
