# US 2021/0341986 A1 · Attention Detection Service

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

- Number: US 2021/0341986 A1
- Document ID: US20210341986A1
- Status: Published application
- Kind: A1
- Application number: 17/377,843
- Filed: 2021-07-16
- Published: 2021-11-04
- Earliest claimed: 2017-06-03
- Assignees: Apple Inc.
- Applicants: Apple Inc.
- Inventors: Benjamin Biron; Ronnie G. Misra; Christopher K. Thomas; Weijie Zhang; Roberto G. Yepez; Anthony J. Guetta; Kelsey Y. Ho; Paul W. Chinn; Myra Haggerty; Curtis Rothert; Peter D. Anton; Jonathan E. Drummond; Andrew B. Cato
- Web page: https://patentgrep.com/patent/US20210341986A1

## CPC

- G06F 1/3231: Monitoring the presence, absence or movement of users
- G06F 1/324: by lowering clock frequency
- G06F 1/3265: {Power saving in display device}
- G06F 1/3287: by switching off individual functional units in the computer system
- G06F 1/3296: by lowering the supply or operating voltage
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

In an embodiment, a device may include an attention detection service. The attention detection service may monitor various peripheral devices in the device for indications that a user is paying attention to the device. Various clients may register for notification of attention detection and attention lost (attention no longer detected) events, or may poll the service for the events. If a user is not paying attention to the device, it may be possible to take various actions to permit reduced energy consumption.

## Claims

### Claim 1

A method comprising:
monitoring a plurality of peripheral devices in a system for a plurality of events that indicate that a user is potentially engaged with the system, wherein the plurality of peripheral devices include a first one or more peripheral devices and a second one or more peripheral devices, and wherein each of the first one or more peripheral devices consumes more power during use than each of the second one or more peripheral devices, and wherein, during a sample timeout interval, the first one or more peripheral devices are not sampled;
responsive to a first event of the plurality of events from one of the second one or more peripheral devices, communicating an indication of the potential user engagement to one or more clients of a plurality of clients executable on the system;
responsive to an expiration of the sample timeout interval without detecting events from the second one or more peripheral devices, sampling the first one or more peripheral devices;
detecting a third event from one of the first one or more peripheral devices indicating potential user engagement during the sampling; and
responsive to detecting the third event indicating potential user engagement, communicating an indication of potential user engagement to the one or more clients.

### Claim 2 (depends on 1)

The method as recited in claim 1 wherein the first one or more peripheral devices comprise a camera configured to detect a face of the user.

### Claim 3 (depends on 1)

The method as recited in claim 1 wherein the first one or more peripheral devices comprise one or more passive sensors.

### Claim 4 (depends on 1)

The method as recited in claim 1 further comprising, responsive to a second event of the plurality of events from one of the second one or more peripheral devices, updating a current timeout to a sample length timeout.

### Claim 5 (depends on 1)

The method as recited in claim 1 further comprising:
responsive to not detecting the third event, updating an attention lost timeout;
detecting expiration of the attention lost timeout associated with a first client of the one or more clients; and
communicating an indication of lost engagement to the first client.

### Claim 6 (depends on 1)

The method as recited in claim 1 further comprising:
receiving a poll request from a second client of the one or more clients, wherein the poll request specifies an indication of current engagement and a poll duration during which the potential user engagement is to be reported to the second client;
detecting that the user is currently engaged with the system responsive to a fourth event in the plurality of events; and
communicating the indication of the current engagement to the second client responsive to detecting that the user is currently paying attention.

### Claim 7 (depends on 6)

The method as recited in claim 6 further comprising:
detecting a second event of the plurality of events during the poll duration, wherein the second event is specified in the poll request as one of the plurality of events that the second client interprets as indicative of engagement; and
communicating the indication of engagement to the second client responsive to detecting the second event and not having detected that the user was currently engaged with the system at the time the poll request was received.

### Claim 8 (depends on 6)

The method as recited in claim 6 further comprising:
detecting a timeout during a time period subsequent to receiving the poll request without detecting the plurality of events during the poll duration; and
communicating an indication of engagement lost to the second client responsive to detecting the timeout.

### Claim 9 (depends on 6)

The method as recited in claim 6 further comprising:
detecting that the poll duration has expired; and
discontinuing communication of the indication of current engagement and an indication of engagement lost to the second client responsive to detecting that the poll duration has expired.

### Claim 10 (depends on 6)

The method as recited in claim 6 wherein the poll request further includes an active polling interval, and the method further comprises polling for the plurality of events during the active polling interval.

### Claim 11

A non-transitory computer accessible storage medium storing instructions which, when executed on a system:
monitor a plurality of peripheral devices in the system for a plurality of events that indicate that a user is potentially engaged with the system, wherein the plurality of peripheral devices include a first one or more peripheral devices and a second one or more peripheral devices, and wherein each of the first one or more peripheral devices consumes more power during use than each of the second one or more peripheral devices, and wherein, during a sample timeout interval, the first one or more peripheral devices are not sampled;
responsive to a first event of the plurality of events from one of the second one or more peripheral devices, communicate an indication of the potential user engagement to one or more clients of a plurality of clients executable on the system;
responsive to an expiration of the sample timeout interval without detecting events from the second one or more peripheral devices, sample the first one or more peripheral devices;
detect a third event in the sample from one of the first one or more peripheral devices indicating potential user engagement; and
responsive to detecting the third event indicating potential user engagement, communicate an indication of potential user engagement to the one or more clients.

### Claim 12 (depends on 11)

The non-transitory computer accessible storage medium as recited in claim 11 wherein the instructions, when executed responsive to a second event of the plurality of events from one of the second one or more peripheral devices, update a current timeout to a sample length timeout.

### Claim 13 (depends on 11)

The non-transitory computer accessible storage medium as recited in claim 11 wherein the instructions, when executed responsive to not detecting the third event:
update an attention lost timeout.
detect expiration of the attention lost timeout associated with a first client of the one or more clients; and
communicate an indication of lost engagement to the first client.

### Claim 14 (depends on 11)

The non-transitory computer accessible storage medium as recited in claim 11 wherein the instructions, when executed:
receive a poll request from a second client of the one or more clients, wherein the poll request specifies an indication of current engagement and a poll duration during which the potential user engagement is to be reported to the second client;
detect that the user is currently engaged with the system responsive to a fourth event in the plurality of events; and
communicate the indication of the current engagement to the second client responsive to detecting that the user is currently paying attention.

### Claim 15 (depends on 14)

The non-transitory computer accessible storage medium as recited in claim 14 wherein the instructions, when executed:
detect a second event of the plurality of events during the poll duration, wherein the second event is specified in the poll request as one of the plurality of events that the second client interprets as indicative of engagement; and
communicate the indication of engagement to the second client responsive to detecting the second event and not having detected that the user was currently engaged with the system at the time the poll request was received.

### Claim 16 (depends on 14)

The non-transitory computer accessible storage medium as recited in claim 14 wherein the instructions, when executed:
detect a timeout during a time period subsequent to receiving the poll request without detecting the plurality of events during the poll duration; and
communicate an indication of engagement lost to the second client responsive to detecting the timeout.

### Claim 17 (depends on 14)

The non-transitory computer accessible storage medium as recited in claim 14 wherein the instructions, when executed:
detect that the poll duration has expired; and
discontinue communication of the indication of current engagement and an indication of engagement lost to the second client responsive to detecting that the poll duration has expired.

### Claim 18

A system comprising:
a plurality of peripheral devices; and
a processing system coupled to the plurality of peripheral devices, wherein the processing system comprises one or more processors coupled to a memory system store a plurality of instructions, wherein the plurality of instructions, when executed by the one or more processors:
monitor the plurality of peripheral devices for a plurality of events that indicate that a user is potentially engaged with the system, wherein the plurality of peripheral devices include a first one or more peripheral devices and a second one or more peripheral devices, and wherein each of the first one or more peripheral devices consumes more power during use than each of the second one or more peripheral devices, and wherein, during a sample timeout interval, the first one or more peripheral devices are not sampled;
responsive to a first event of the plurality of events from one of the second one or more peripheral devices, communicate an indication of the potential user engagement to one or more clients of a plurality of clients executable on the system;
responsive to an expiration of the sample timeout interval without detecting events from the second one or more peripheral devices, sample the first one or more peripheral devices;
detect a third event in the sample from one of the first one or more peripheral devices indicating potential user engagement; and
responsive to detecting the third event indicating potential user engagement, communicate an indication of potential user engagement to the one or more clients.

### Claim 19 (depends on 18)

The system as recited in claim 18 wherein the first one or more peripheral devices comprise a camera configured to detect a face of the user.

### Claim 20 (depends on 18)

The system as recited in claim 18 wherein the first one or more peripheral devices comprise one or more passive sensors.
