IP Library Granted Patent US 11,593,670
Granted Patent B2
US 11,593,670 · App. 16/741,871 · Granted Feb 28, 2023

System and method for managing a flow state of a user of an information handling system

Inventors: Michael S. Gatson (Austin, TX); Vivek Viswanathan Iyer (Austin, TX)
Assignee: Dell Products L.P.
G06N5/025G06F3/013G06F3/16G06F9/4418G06F9/4881H04L41/12
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 11,593,670
App. No.
16/741,871
Granted
Feb 28, 2023
Kind
B2
Abstract

Systems and methods are disclosed for managing flow state of a user of an information handling system that may include receiving, by a rules engine of the information handling system, contextual input associated with the user, the contextual input captured by one or more monitoring devices of the information handling system; determining, based on the contextual input, a user intent associated with the user, the user intent indicating whether the user intends to be in the flow state or in a distracted state; identifying, based on the user intent, that the user intends to be in the flow state; and in response to identifying that the user intends to be in the flow state: causing a flow management event to occur, the flow management even causing the user to be in the flow state.

Claims (86)

1. A method for managing a flow state of a user of an information handling system having a keyboard, the method comprising:

receiving, by a rules engine of the information handling system, contextual input associated with the user, the contextual input comprising a proximity of the user relative to the information handling system and one or more of a direction of a gaze of the user, an indication of typing on the keyboard and audio information captured by one or more monitoring devices of the information handling system;

identifying a plurality of applications executing on the information handling system;

determining, based on the contextual input, a user intent associated with the user, the user intent indicating whether the user intends to be in the flow state or in a distracted state;

determining, based on the user intent, that the user intends to be in the flow state; and

in response to determining that the user intends to be in the flow state:

causing a flow management event to occur, the flow management event comprising

determining a priority status for each application of the plurality of applications, the priority status indicating a priority in which the application is to be executed by the information handling system; and

causing the information handling system to perform one or more of upgrading the priority status of a first application of the plurality of applications, wherein the first application is associated with the user being in the flow state and an upgraded priority status indicates that the first application is to be executed at a higher priority than an initial priority status, downgrading the priority status of a second application of the plurality of applications, wherein the second application is not associated with the user being in the flow state and the downgraded priority status indicating that the application is to be executed at a lower priority than the initial priority status, and upgrading an access point to a network to have a higher quality of service; and

one or more of executing the first application based on the upgraded priority status and accessing the network using the upgraded access point.

2. The method of claim 1 , wherein determining the user intent associated with the user comprises:

determining, by the rules engine, a hysteresis period based on the contextual input associated with the user, the hysteresis period indicating a length of time in which the rules engine is to monitor the contextual input associated with the user;

monitoring the contextual input associated with the user based on the hysteresis period.

3. The method of claim 1 , wherein determining the user intent associated with the user comprises:

accessing, by the rules engine, one or more images of the user captured by an image sensor of the information handling system;

determining whether a gaze of the user is directed toward a display of the information handling system; and

determining the user is in the flow state if the gaze of the user is directed toward the display of the information handling system or determining the user is in the distracted state if the gaze of the user is directed away from the display of the information handling system.

4. The method of claim 3 , wherein determining the user intent associated with the user comprises:

accessing, by the rules engine, an audio stream captured by an audio sensor of the information handling system;

determining that the audio stream includes an ambient noise;

determining that the audio stream does not include a sound of typing on the keyboard of the information handling system;

accessing, by the rules engine, a proximity signal captured by a proximity sensor of the information handling system;

determining, based on the proximity signal, whether the user is within a proximity threshold of the information handling system; and

determining the user is in the flow state if the user is within a proximity threshold of the information handling system or determining the user is in the distracted state if the user is outside of the proximity threshold of the information handling system and the gaze of the user is directed away from the display of the information handling system.

5. The method of claim 4 , further comprising:

determining, based on the gaze of the user, the user is using the first application of the plurality of applications executing on the information handling system; and

determining the user is in the flow state if the gaze of the user is directed toward the first application executing on the information handling system or determining the user is in the distracted state if the gaze of the user is away from the first application executing on the information handling system.

6. The method of claim 1 , wherein causing the flow management event to occur comprises:

accessing, by the rules engine, a context database of the information handling system, the context database comprised of the contextual input associated with the user;

determining, based on the contextual input, that a standby mode of the information handling system should be overridden, the standby mode causing the information handling system to be in a locked state, the locked state preventing the user from using the information handling system; and

in response to determining that the standby mode of the information handling system should be overridden, overriding the standby mode to prevent the information handling system from being in the locked state.

7. The method of claim 1 , wherein causing the flow management event to occur comprises:

accessing the contextual input captured by the one or more monitoring devices of the information handling system;

determining, based on the contextual input, whether the initial priority status for each application of the plurality of applications should be upgraded or downgraded, an upgraded priority status indicating that the application is to be executed at a higher priority than the initial priority status, a downgraded priority status indicating that the application is to be executed at a lower priority than the initial priority status; and

executing the plurality of applications based on at least one of the initial priority status, the upgraded priority status, or the downgraded priority status of each application.

8. The method of claim 1 , wherein causing the flow management event to occur comprises:

identifying, by the rules engine, a plurality of access points in a network;

selecting an initial access point from the plurality of access points, the initial access point allowing the information handling system to become communicatively coupled to the network;

accessing the contextual input captured by the one or more monitoring devices of the information handling system;

determining, based on the contextual input, whether the initial access point should be upgraded or downgraded, an upgraded access point having a higher quality of service than the initial access point, a downgraded access point having a lower quality of service than the initial access point; and

causing the information handling system to become communicatively coupled to the network using at least one of the initial access point or the upgraded access point.

9. An information handling system, comprising:

at least one processor;

a keyboard;

one or more monitoring devices; and

a memory medium that is coupled to the at least one processor and that includes instructions that are executable by the at least one processor, wherein the instructions, when executed by the at least one processor, cause the information handling system to:

receive, by a rules engine, contextual input associated with the user, the contextual input comprising proximity of the user relative to the information handling system and one or more of a direction of a gaze of the user, an indication of typing on the keyboard and audio information captured by the one or more monitoring devices of the information handling system;

identify a plurality of applications executing on the information handling system;

determine, based on the contextual input, a user intent associated with the user, the user intent indicating whether the user intends to be in a flow state or in a distracted state;

determine, based on the user intent, that the user intends to be in the flow state; and

in response to determining that the user intends to be in the flow state:

cause a flow management event to occur, the flow management event causing the information handling system to:

causing the information handling system to determine a priority status for each application of the plurality of applications, the priority status indicating a priority in which each application is to be executed by the information handling system; and

perform one or more of upgrade the priority status of a first application of the plurality of applications, wherein the first application is associated with the user being in the flow state and an upgraded priority status indicates that the first application is to be executed at a higher priority than an initial priority status, downgrade the priority status of a second application of the plurality of applications, wherein the second application is not associated with the user being in the flow state and the downgraded priority status indicating that the application is to be executed at a lower priority than the initial priority status, and upgrade an access point to a network to have a higher quality of service; and

one or more of execute the first application based on the upgraded priority status and access the network using the upgraded access point.

10. The information handling system of claim 9 , wherein to determine the user intent associated with the user, the instructions, when executed by the at least one processor, are further configured to:

determine a hysteresis period based on the contextual input associated with the user, the hysteresis period indicating a length of time in which the rules engine is to monitor the contextual input associated with the user;

monitor the contextual input associated with the user based on the hysteresis period.

11. The information handling system of claim 9 , wherein to determine the user intent associated with the user, the instructions, when executed by the at least one processor, are further configured to:

access one or more images of the user captured by an image sensor of the information handling system;

determine whether the gaze of the user is directed toward a display of the information handling system; and

determine the user is in the flow state if the gaze of the user is directed toward the display of the information handling system or determine the user is in the distracted state if the gaze of the user is directed away from the display of the information handling system.

12. The information handling system of claim 11 , wherein to determine the user intent associated with the user, the instructions, when executed by the at least one processor, are further configured to:

access an audio stream captured by an audio sensor of the information handling system;

determine that the audio stream includes an ambient noise; and

determine that the audio stream does not include a sound of typing on the keyboard of the information handling system;

access, by the rules engine, a proximity signal captured by a proximity sensor of the information handling system;

determine, based on the proximity signal, whether the user is within a proximity threshold of the information handling system; and

determine if the user is within a proximity threshold of the information handling system or determine the user is in the distracted state if the user is outside of the proximity threshold of the information handling system and the gaze of the user is directed away from the display of the information handling system.

13. The information handling system of claim 12 , wherein the instructions, when executed by the at least one processor, are further configured to:

determine, based on the gaze of the user, the user is using the first application executing on the information handling system; and

determine the user is in the flow state if the gaze of the user is directed toward the first application executing on the information handling system or determine the user is in the distracted state if the gaze of the user is away from the first application executing on the information handling system.

14. The information handling system of claim 9 , wherein to cause the flow management event to occur, the instructions, when executed by the at least one processor, are further configured to:

access a context database of the information handling system, the context database comprised of the contextual input associated with the user;

determine, based on the contextual input, that a standby mode of the information handling system should be overridden, the standby mode causing the information handling system to be in a locked state, the locked state preventing the user from using the information handling system; and

in response to determining that the standby mode of the information handling system should be overridden, overriding the standby mode to prevent the information handling system from being in the locked state.

15. The information handling system of claim 9 , wherein to cause the flow management event to occur, the instructions, when executed by the at least one processor, are further configured to:

access the contextual input captured by the one or more monitoring devices of the information handling system;

determine, based on the contextual input, whether the initial priority status for each application of the plurality of applications should be upgraded or downgraded, an upgraded priority status indicating that the application is to be executed at a higher priority than the initial priority status, a downgraded priority status indicating that the application is to be executed at a lower priority than the initial priority status; and

execute the plurality of applications based on at least one of the initial priority status, the upgraded priority status, or the downgraded priority status of each application.

16. The information handling system of claim 9 , wherein to cause the flow management event to occur, the instructions, when executed by the at least one processor, are further configured to:

identify a plurality of access points in a network;

select an initial access point from the plurality of access points, the initial access point allowing the information handling system to become communicatively coupled to the network;

access the contextual input captured by the one or more monitoring devices of the information handling system;

determine, based on the contextual input, whether the initial access point should be upgraded or downgraded, an upgraded access point having a higher quality of service than the initial access point, a downgraded access point having a lower quality of service than the initial access point; and

cause the information handling system to become communicatively coupled to the network using at least one of the initial access point or the upgraded access point.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2020
From: GATSON, MICHAEL S.; IYER, VIVEK VISWANATHAN
To: DELL PRODUCTS L.P.
Reel/Frame 051582/0460 →