IP Library Granted Patent US 11,509,523
Granted Patent B2
US 11,509,523 · App. 15/238,813 · Granted Nov 22, 2022

Automated scripting for managed devices

Inventors: Jeff Wienstroer (Roswell, GA); Hai James Le (Cumming, GA); Prasad Sawant (Atlanta, GA); Michael Jones (Hudson, OH)
Assignee: AirWatch, LLC
H04L41/0806G06F8/61G06F16/168H04L41/046H04L41/0886H04L41/0893
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,509,523
App. No.
15/238,813
Granted
Nov 22, 2022
Kind
B2
Abstract

Systems and methods are included for providing feature sets to groups of managed user devices within an enterprise mobility management (EMM) system. A feature set can enable a user device to detect one or more triggering events, and in response, automatically perform a specified action. An administrator can request a feature set using an interface provided by a management server. The management server can enroll the user device, install a management agent on the user device, and automatically build and deliver the requested feature set to the user device. After receiving the feature set, the management agent of the user device can monitor for recurring triggering events without further intervention from the management server.

Claims (89)

1. A method for controlling a mobile device, comprising:

receiving a request for a feature set including an action to take in response to a first triggering event and a second triggering event occurring on the mobile device, the request identifying a functional group with which the mobile device is associated;

accessing a library of available automated scripts, the library comprising:

a first automated script for detecting the first triggering event, the first triggering event including a registry value of the user device being equal to a predefined value, wherein the registry value is set based on whether a first process is running on the mobile device;

a second automated script for performing the action, the action including launching an application at the user device and uploading device information to a server;

a third automated script for detecting a second triggering event, the second triggering event including the user device being connected to AC power; and

a fourth automated script for combining the first and second triggering events and the action, wherein combining comprises causing both the first and second triggering events to be required before performing the action,

wherein the first and second triggering events and the action are available in the library based on selections on a graphical user interface (“GUI”) that includes selectable fields for each of the first and second triggering events, the action, and for assigning an administrator to manage those selections;

retrieving the first, second, third, and fourth automated scripts based on the requested feature set;

packaging the first, second, third, and fourth automated scripts into a combined script to form the feature set;

assigning the feature set to the functional group; and

sending the feature set to the mobile device based on the mobile device being associated with the functional group, the feature set causing the user device to:

monitor for occurrence of the first and second triggering events defined in the feature set;

in response to occurrence of the first and second triggering events, execute the one or more automated scripts to carry out the action by launching the application and uploading device information to the server;

suspend monitoring for occurrence of the first and second triggering events for a period of time; and

resume monitoring for occurrence of the first and second triggering events after the period of time has elapsed.

2. The method of claim 1 ,

wherein the request:

identifies a second functional group associated a retail store of the enterprise; and

requests a unique set of features for the second functional group, including unique actions and triggering events;

the method further comprising:

generating a second feature set for the second functional group; and

sending the second feature set to a second mobile device assigned to the second functional group.

3. The method of claim 1 , further comprising:

creating a manifest file identifying a plurality of automated scripts, the manifest file defining an order for executing the plurality of automated scripts.

4. The method of claim 1 , further comprising testing functionality of the combined script before sending the feature set to the mobile device.

5. The method of claim 1 , further comprising:

enrolling the mobile device with an enterprise mobility management system; and

installing a management agent on the mobile device, wherein sending the feature set to the mobile device comprises sending the feature set to the management agent.

6. The method of claim 5 , wherein the management agent executes the automated scripts.

7. A system, comprising:

a mobile device having a processor and a memory, wherein the mobile device:

remotely requests, using a server, a feature set including an action to take in response to a first triggering event and a second triggering event occurring on the mobile device, the request identifying a functional group with which the mobile device is associated;

accesses, using the server, a library of available automated scripts, the library comprising:

a first automated script for detecting the first triggering event, the first triggering event including a registry value of the user device being equal to a predefined value, wherein the registry value is set based on whether a first process is running on the mobile device;

a second automated script for performing the action, the action including launching an application at the user device and uploading device information to a server;

a third automated script for detecting a second triggering event, the second triggering event including the user device being connected to AC power; and

a fourth automated script for combining the first and second triggering events and the action, wherein combining comprises causing both the first and second triggering events to be required before performing the action,

wherein the first and second triggering events and the action are available in the library based on selections on a graphical user interface (“GUI”) that includes selectable fields for each of the first and second triggering events, the action, and for assigning an administrator to manage those selections;

retrieves the first, second, third, and fourth automated scripts based on the remotely requested feature set;

packages, using the server, the first, second, third, and fourth automated scripts into a combined script to form the feature set;

assigns the feature set to the functional group;

receives, from the server, the feature set based on the mobile device being associated with the functional group;

monitors, at the mobile device, for occurrence of the first and second triggering events defined in the feature set;

in response to occurrence of the first and second triggering events, executes, at the mobile device, the one or more automated scripts to carry out the action by launching the application and uploading device information to the server;

suspends monitoring for occurrence of the first and second triggering events for a period of time; and

resumes monitoring for occurrence of the first and second triggering events after the period of time has elapsed.

8. The system of claim 7 ,

wherein the request:

identifies a second functional group associated a retail store of the enterprise; and

requests a unique set of features for the second functional group, including unique actions and triggering events; and

wherein the server:

generates a second feature set for the second functional group; and

sends the second feature set to a second mobile device assigned to the second functional group.

9. The system of claim 7 , wherein the server further:

creates a manifest file identifying a plurality of automated scripts, the manifest file defining an order for executing the plurality of automated scripts.

10. The system of claim 7 , wherein the server further tests functionality of the combined script before sending the feature set to the mobile device.

11. The system of claim 7 , wherein the mobile device:

enrolls with an enterprise mobility management system associated with the server; and

installs a management agent, wherein sending the feature set to the mobile device comprises sending the feature set to the management agent.

12. The system of claim 11 , wherein the management agent executes the automated scripts.

13. A non-transitory, computer-readable medium comprising instructions which, when executed by a processor, perform a method controlling a mobile device, the instructions being configured to cause the processor to:

remotely request a feature set including an action to take in response to a first triggering event and a second triggering event occurring on the mobile device, the request identifying a functional group with which the mobile device is associated;

access a library of available automated scripts, the library comprising:

a first automated script for detecting the first triggering event, the first triggering event including a registry value of the user device being equal to a predefined value, wherein the registry value is set based on whether a first process is running on the mobile device;

a second automated script for performing the action, the action including launching an application at the user device and uploading device information to a server;

a third automated script for detecting a second triggering event, the second triggering event including the user device being connected to AC power; and

a fourth automated script for combining the first and second triggering events and the action, wherein combining comprises causing both the first and second triggering events to be required before performing the action,

wherein the first and second triggering events and the action are available in the library based on selections on a graphical user interface (“GUI”) that includes selectable fields for each of the first and second triggering events, the action, and for assigning an administrator to manage those selections;

retrieve the first, second, third, and fourth automated scripts based on the remotely requested feature set;

package the first, second, third, and fourth automated scripts into a combined script to form the feature set;

assign the feature set to the functional group;

send the feature set to the mobile device based on the mobile device being associated with the functional group;

monitor for occurrence of the first and second triggering events defined in the feature set;

in response to occurrence of the first and second triggering events, execute the one or more automated scripts to carry out the action by launching the application and uploading device information to the server;

suspend monitoring for occurrence of the first and second triggering events for a period of time; and

resume monitoring for occurrence of the first and second triggering events after the period of time has elapsed.

14. The computer-readable medium of claim 13 , wherein the request:

identifies a second functional group associated a retail store of the enterprise; and

requests a unique set of features for the second functional group, including unique actions and triggering events; and

wherein the instructions are further configured to cause the processor to:

generate a second feature set for the second functional group; and

send the second feature set to a second mobile device assigned to the second functional group.

15. The computer-readable medium of claim 13 , wherein the instructions are further configured to cause the processor to:

create a manifest file identifying a plurality of automated scripts, the manifest file defining an order for executing the plurality of automated scripts.

16. The computer-readable medium of claim 13 , wherein the instructions are further configured to cause the processor to test functionality of the combined script before sending the feature set to the mobile device.

17. The computer-readable medium of claim 13 , wherein the instructions are further configured to cause the processor to:

enroll the mobile device with an enterprise mobility management system; and

install a management agent on the mobile device, wherein sending the feature set to the mobile device comprises sending the feature set to the management agent.

Assignments (3)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: AIRWATCH LLC
To: OMNISSA, LLC
Reel/Frame 068327/0670 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2016
From: WIENSTROER, JEFF; LE, HAI JAMES; SAWANT, PRASAD; JONES, MICHAEL
To: AIRWATCH LLC
Reel/Frame 039462/0923 →