IP Library Granted Patent US 11,388,239
Granted Patent B2
US 11,388,239 · App. 16/435,624 · Granted Jul 12, 2022

Previewing impacted entities in automated device definitions

Inventors: Adam Michael Hardy (Alpharetta, GA); Qi Gao (Palo Alto, CA); Jason Bedient (Palo Alto, CA); Binjie Sun (Atlanta, GA); Carlos Carbonell (Atlanta, GA)
Assignee: VMware, Inc.
H04L67/125H04L63/1416H04L63/20H04L67/303
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,388,239
App. No.
16/435,624
Granted
Jul 12, 2022
Kind
B2
Abstract

Various examples are described for defining automations for client devices enrolled with a management service. A computing environment can cause one or more user interfaces to be shown in a display of an administrator device that include at least one field for generating an automation that includes a trigger, a condition, and an action to automatically be performed when the condition is satisfied. The trigger defines a time at which the management service compares the condition to device profiles generated for client devices enrolled with the management service. The user interface can forecast a number of client devices that will be affected or subject to an automation, and can display results of the automation as it is executed in real time.

Claims (70)

1. A system, comprising:

at least one computing device comprising at least one hardware processor; and

program instructions stored in memory and executable in the at least one computing device that, when executed, direct the at least one computing device to:

enroll a plurality of client devices with a management service;

cause at least one user interface to be shown in a display of an administrator device of the management service, wherein the at least one user interface comprises at least one field for defining an automation to be deployed through specification of:

a condition associated with the client devices enrolled with the management service;

a trigger that directs the at least one computing device to match the condition against and at least one of a plurality of periodically-updated device profiles and a plurality of newly-received device profiles of the client devices; and

an action to be performed automatically when the condition is satisfied;

prior to generating the automation to be deployed, determine a subset of the client devices to be affected by the condition;

in the at least one user interface, display a number of the client devices in the subset to be affected by the condition prior to generating the automation to be deployed;

in response to a manipulation of the at least one user interface, display information associated with individual ones of the client devices in the subset to be affected by the condition in the at least one user interface prior to generating the automation to be deployed, wherein the information comprises at least one of: a platform, a user group, an operating system version, an enrollment status, and a device identifier of a respective one of the client devices; and

generate the automation such that, in response to one of the newly-received device profiles being received from the respective one of the client devices that satisfies the condition, the action is performed automatically by the at least one computing device.

2. The system of claim 1 , wherein the at least one computing device is further directed to:

receive a submission of the condition, the trigger, and the action;

in response to the submission, perform a matching of the condition against at least one of: the periodically-updated devices profiles and the newly-received device profiles; and

display, in the at least one user interface, information associated with the matching of the condition.

3. The system of claim 2 , wherein the information associated with the matching of the condition displayed in the at least one user interface comprises information associated with individual ones of the client devices in the matching.

4. The system of claim 1 , wherein:

the at least one field is a plurality of fields; and

the condition, the trigger, and the action are generated based at least in part on (i) values specified in a first subset of the fields corresponding to a WHEN statement, the WHEN statement defining the trigger; (ii) values specified in a second subset of the fields corresponding to an IF statement, the IF statement defining the condition; and (ii) values specified in a third subset of the fields corresponding to a THEN statement, the THEN statement defining the action.

5. The system of claim 4 , wherein the values specified in the second subset of the fields corresponding to the THEN statement direct a third-party service to perform a predetermined action.

6. The system of claim 1 , wherein the trigger as defined directs the at least one computing device to match the condition against the newly-received device profiles of the client devices in response to receipt of individual ones of the newly-received device profiles from individual ones of the client devices in the subset.

7. The system of claim 1 , wherein the client devices affected by the condition in the subset are determined by generating a query executed on a database of the periodically-updated device profiles, individual ones of the periodically-updated device profiles corresponding to a respective one of the client devices enrolled with the management service.

8. The system of claim 1 , where the at least one computing device is further directed to:

determine a number of the client devices in the subset to be affected by the condition;

in the user interface, display the number of the client devices in the subset; and

in response to a manipulation of a user interface component in the user interface, display the information associated with individual ones of the client device in the subset affected by the condition.

9. A non-transitory computer-readable medium embodying program instructions executable in at least one computing device that, when executed by the at least one computing device, direct the at least one computing device to:

enroll a plurality of client devices with a management service;

cause at least one user interface to be shown in a display of an administrator device of the management service, wherein the at least one user interface comprises at least one field for defining an automation to be deployed through specification of:

a condition associated with the client devices enrolled with the management service;

a trigger that directs the at least one computing device to match the condition against at least one of a plurality of periodically-updated device profiles and a plurality of newly-received device profiles of the client devices; and

an action to be performed automatically when the condition is satisfied;

prior to generating the automation to be deployed, determine a subset of the client devices to be affected by the condition;

in the at least one user interface, display a number of the client devices in the subset to be affected by the condition prior to generating the automation to be deployed;

in response to a manipulation of the at least one user interface, display information associated with individual ones of the client devices in the subset to be affected by the condition in the at least one user interface prior to generating the automation to be deployed, wherein the information comprises at least one of: a platform, a user group, an operating system version, an enrollment status, and a device identifier of a respective one of the client devices; and

generate the automation such that, in response to one of the newly-received device profiles being received from the respective one of the client devices that satisfies the condition, the action is performed automatically by the at least one computing device.

10. The non-transitory computer-readable medium of claim 9 , wherein the at least one computing device is further directed to:

receive a submission of the condition, the trigger, and the action;

in response to the submission, perform a matching of the condition against at least one of: the periodically-updated devices profiles and the newly-received device profiles; and

display, in the at least one user interface, information associated with the matching of the condition.

11. The non-transitory computer-readable medium of claim 10 , wherein the information associated with the matching of the condition displayed in the at least one user interface comprises information associated with individual ones of the client devices in the matching.

12. The non-transitory computer-readable medium of claim 9 , wherein the trigger as defined directs the at least one computing device to match the condition against the newly-received device profiles of the client devices in response to receipt of individual ones of the newly-received device profiles from individual ones of the client devices in the subset.

13. The non-transitory computer-readable medium of claim 9 , wherein the client devices affected by the condition in the subset are determined by generating a query executed on a database of periodically-updated device profiles, individual ones of the periodically-updated device profiles corresponding to a respective one of the client devices enrolled with the management service.

14. The non-transitory computer-readable medium of claim 9 , where the at least one computing device is further directed to:

determine a number of the client devices in the subset to be affected by the condition;

in the user interface, display the number of the client devices in the subset; and

in response to a manipulation of a user interface component in the user interface, display the information associated with individual ones of the client device in the subset affected by the condition.

15. The non-transitory computer-readable medium of claim 9 , wherein:

the at least one field is a plurality of fields; and

the condition, the trigger, and the action are generated based at least in part on (i) values specified in a first subset of the fields corresponding to a WHEN statement, the WHEN statement defining the trigger; (ii) values specified in a second subset of the fields corresponding to an IF statement, the IF statement defining the condition; and (ii) values specified in a third subset of the fields corresponding to a THEN statement, the THEN statement defining the action.

16. The non-transitory computer-readable medium of claim 9 , wherein the values specified in the second subset of the fields corresponding to the THEN statement direct a third-party service to perform a predetermined action.

17. A computer-implemented method, comprising:

enrolling a plurality of client devices with a management service;

causing at least one user interface to be shown in a display of an administrator device of the management service, wherein the at least one user interface comprises at least one field for defining an automation to be deployed through specification of:

a condition associated with the client devices enrolled with the management service;

a trigger that directs the at least one computing device to match the condition against at least one of a plurality of periodically-updated device profiles and a plurality of newly-received device profiles of the client devices; and

an action to be performed automatically when the condition is satisfied;

prior to generating the automation to be deployed, determining a subset of the client devices to be affected by the condition; and

in the at least one user interface, displaying a number of the client devices in the subset to be affected by the condition prior to generating the automation to be deployed;

in response to a manipulation of the at least one user interface, display information associated with individual ones of the client devices in the subset to be affected by the condition in the at least one user interface prior to generating the automation to be deployed, wherein the information comprises at least one of: a platform, a user group, an operating system version, an enrollment status, and a device identifier of a respective one of the client devices; and

generate the automation such that, in response to one of the newly-received device profiles being received from the respective one of the client devices that satisfies the condition, the action is performed automatically by the at least one computing device.

18. The computer-implemented method of claim 17 , wherein the trigger as defined directs the at least one computing device to match the condition against the newly-received device profiles of the client devices in response to receipt of individual ones of the newly-received device profiles from individual ones of the client devices in the subset.

19. The computer-implemented method of claim 17 , wherein the at least one computing device is further directed to:

receive a submission of the condition, the trigger, and the action;

in response to the submission, perform a matching of the condition against at least one of: the periodically-updated devices profiles and the newly-received device profiles; and

display, in the at least one user interface, information associated with the matching of the condition, wherein the information associated with the matching of the condition displayed in the at least one user interface comprises information associated with individual ones of the client devices in the matching.

20. The computer-implemented method of claim 17 , wherein:

the at least one field is a plurality of fields; and

the condition, the trigger, and the action are generated based at least in part on (i) values specified in a first subset of the fields corresponding to a WHEN statement, the WHEN statement defining the trigger; (ii) values specified in a second subset of the fields corresponding to an IF statement, the IF statement defining the condition; and (ii) values specified in a third subset of the fields corresponding to a THEN statement, the THEN statement defining the action.

Assignments (4)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 27, 2019
From: HARDY, ADAM MICHAEL; CARBONELL, CARLOS; BEDIENT, JASON; SUN, BINJIE; GAO, QI
To: VMWARE, INC.
Reel/Frame 049882/0098 →