Remote commands framework to control clients
Abstract
A method and system for remotely executing commands at a client computing device. The method comprises receiving a selection of commands to transmit to a group of client computing devices via a webserver. The group of client computing devices, as well as the selected commands, are associated with a group identifier. The method validates access privileges of the administrator to transmit the selected commands to the group of client computing devices. Upon receipt of the selected commands, the webserver transmits the selected commands to at least one registered proxy server. The registered proxy server then determines one or more client identifiers associated with the group identifier. Each client identifier is assigned to a client computing device. Upon receipt of the selected commands, the registered proxy server transmits the selected commands to client computing devices in the group of client computing devices matching the determined client identifiers.
Claims
exact text as granted — not AI-modified1 . (canceled)
2 . A system for updating an application on a client computing device, the system comprising:
one or more non-transitory, computer-readable media having computer-executable instructions stored thereon; and one or more processors that, having executed the computer-executable instructions, configure the system to perform a plurality of operations comprising:
attempting to connect to a proxy server to obtain an update command to be executed by a client computing device;
in response to a determination that the connection with the proxy server was not successful:
determining a status code received from the proxy server based on the unsuccessful connection with the proxy server;
establishing a reconnection interval based on the determined status code; and
re-trying the unsuccessful connection with the proxy server at the expiration of the reconnection interval;
in response to a determination the connection with the proxy server was successful:
downloading, from the proxy server the update command to execute by the client computing device;
executing, by the client computing device, the update command to obtain an update to an application executable by the client computing device; and
executing the update command at the client computing device, which causes the application associated with the client computing device to restart.
3 . The system of claim 2 , wherein the application is an email application.
4 . The system of claim 2 , wherein the plurality of operations further comprises:
maintaining a timer at the client computing device, wherein the timer tracks a timestamp of downloading the update command.
5 . The system of claim 4 , wherein the plurality of operations further comprises:
determining that the timer has reached a timer threshold; and generating a prompt to a user at the client computing device, wherein the prompt indicates that the application associated with the client computing device will be restarted based on the timer.
6 . The system of claim 2 , wherein the plurality of operations further comprises:
in response to executing the update command at the client computing device, transmitting an execution confirmation message to the proxy server, wherein:
the proxy server updates a log file to include the execution confirmation message, and
the proxy server transmits at least a portion of the log file to a webserver communicatively coupled to the proxy server.
7 . The system of claim 2 , wherein the client computing device polls the proxy server at a configurable time interval to receive a command file with one or more commands to be executed.
8 . The system of claim 2 , wherein the update command is executed at the client computing device when the client computing device is connected to the proxy server.
9 . A method for updating an application on a client computing device, the method comprising:
attempting to connect to a proxy server to obtain an update command to be executed by a client computing device; in response to a determination that the connection with the proxy server was not successful:
determining a status code received from the proxy server based on the unsuccessful connection with the proxy server;
establishing a reconnection interval based on the determined status code; and
re-trying the unsuccessful connection with the proxy server at the expiration of the reconnection interval;
in response to a determination the connection with the proxy server was successful:
downloading, from the proxy server the update command to execute by the client computing device;
executing, by the client computing device, the update command to obtain an update to an application executable by the client computing device; and
executing the update command at the client computing device, which causes the application associated with the client computing device to restart.
10 . The method of claim 9 , wherein the application is an email application.
11 . The method of claim 9 , further comprising:
maintaining a timer at the client computing device, wherein the timer tracks a timestamp of downloading the update command.
12 . The method of claim 11 , further comprising:
determining that the timer has reached a timer threshold; and generating a prompt to a user at the client computing device, wherein the prompt indicates that the application associated with the client computing device will be restarted based on the timer.
13 . The method of claim 9 , further comprising:
in response to executing the update command at the client computing device, transmitting an execution confirmation message to the proxy server, wherein:
the proxy server updates a log file to include the execution confirmation message, and
the proxy server transmits at least a portion of the log file to a webserver communicatively coupled to the proxy server.
14 . The method of claim 9 , wherein the client computing device polls the proxy server at a configurable time interval to receive a command file with one or more commands to be executed.
15 . The method of claim 9 , wherein the update command is executed at the client computing device when the client computing device is connected to the proxy server.
16 . A non-transitory, computer-readable medium having computer-executable instructions stored thereon that, when executed by one or more processors, cause a system to perform a plurality of operations comprising:
attempting to connect to a proxy server to obtain an update command to be executed by a client computing device; in response to a determination that the connection with the proxy server was not successful:
determining a status code received from the proxy server based on the unsuccessful connection with the proxy server;
establishing a reconnection interval based on the determined status code; and
re-trying the unsuccessful connection with the proxy server at the expiration of the reconnection interval;
in response to a determination the connection with the proxy server was successful:
downloading, from the proxy server the update command to execute by the client computing device;
executing, by the client computing device, the update command to obtain an update to an application executable by the client computing device; and
executing the update command at the client computing device, which causes the application associated with the client computing device to restart.
17 . The non-transitory, computer-readable medium of claim 16 , wherein the plurality of operations further comprises:
maintaining a timer at the client computing device, wherein the timer tracks a timestamp of downloading the update command.
18 . The non-transitory, computer-readable medium of claim 17 , wherein the plurality of operations further comprises:
determining that the timer has reached a timer threshold; and generating a prompt to a user at the client computing device, wherein the prompt indicates that the application associated with the client computing device will be restarted based on the timer.
19 . The non-transitory, computer-readable medium of claim 16 , wherein the plurality of operations further comprises:
in response to executing the update command at the client computing device, transmitting an execution confirmation message to the proxy server, wherein:
the proxy server updates a log file to include the execution confirmation message, and
the proxy server transmits at least a portion of the log file to a webserver communicatively coupled to the proxy server.
20 . The non-transitory, computer-readable medium of claim 16 , wherein the client computing device polls the proxy server at a configurable time interval to receive a command file with one or more commands to be executed.
21 . The non-transitory, computer-readable medium of claim 16 , wherein the update command is executed at the client computing device when the client computing device is connected to the proxy server.Join the waitlist — get patent alerts
Track US2021258366A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.