Device state management
First Claim
1. A computing system for operating a service that manages device states comprising:
- one or more processors;
computing memory having stored therein computer instructions that, upon execution by the one or more processors, cause at least the computing system to at least;
receive an indication associated with a first device assuming a first device state, wherein the first device is included in a plurality of devices that connect to the service intermittently over one or more networks;
update a first representation of an actual state of the first device to indicate the first device state, wherein the first representation is included in a plurality of representations of device states associated with the plurality of devices, and wherein the service maintains the plurality of representations of device states and performs operations based, at least in part, on the plurality of representations of device states;
receive, from a second device, a request for the first device to assume a second state that is different from the first device state;
update, based on the request, a second representation of a desired state of the first device to indicate the second state, wherein the second representation is also included in the plurality of representations of device states, and wherein the second state is not the actual state of the first device when the second representation is updated, wherein the first representation and the second representation are separate parameters stored by the service;
send, based on the request, instructions to the first device to assume the second state;
receive an indication associated with the first device assuming the second state based on the instructions; and
update the first representation of the actual state of the first device to indicate the second state.
1 Assignment
0 Petitions
Accused Products
Abstract
A computing environment is disclosed that receives from devices requests directed toward services accessible in the environment, and that forwards communications from services in the environment to devices registered with the environment. During a registration process at the environment, devices are assigned a device identifier that is used to identify and authenticate each particular device and requests communicated from and to the device via the environment. The computing environment maintains state information for each device that has been registered with the system. As the device interacts with the system, the state information is updated to reflect the changes in the device. When requests to perform functions are received from devices, the computing environment determines for the particular device and the particular function requested what processing needs to be performed by the environment in response to the request.
60 Citations
20 Claims
-
1. A computing system for operating a service that manages device states comprising:
-
one or more processors; computing memory having stored therein computer instructions that, upon execution by the one or more processors, cause at least the computing system to at least; receive an indication associated with a first device assuming a first device state, wherein the first device is included in a plurality of devices that connect to the service intermittently over one or more networks; update a first representation of an actual state of the first device to indicate the first device state, wherein the first representation is included in a plurality of representations of device states associated with the plurality of devices, and wherein the service maintains the plurality of representations of device states and performs operations based, at least in part, on the plurality of representations of device states; receive, from a second device, a request for the first device to assume a second state that is different from the first device state; update, based on the request, a second representation of a desired state of the first device to indicate the second state, wherein the second representation is also included in the plurality of representations of device states, and wherein the second state is not the actual state of the first device when the second representation is updated, wherein the first representation and the second representation are separate parameters stored by the service; send, based on the request, instructions to the first device to assume the second state; receive an indication associated with the first device assuming the second state based on the instructions; and update the first representation of the actual state of the first device to indicate the second state. - View Dependent Claims (2, 3, 4, 5)
-
-
6. One or more non-transitory computer-readable storage media having stored thereon computer instructions that, upon execution by one or more processors, at least cause a computing system to perform operations comprising:
-
receiving, by a service, an indication of a relationship between a virtual command and one or more other commands that are executable by at least a first device of a plurality of devices that connect to the service intermittently over one or more networks, wherein the virtual command is associated with an updated firmware version, and wherein the one or more other commands are associated with a firmware version prior to the updated firmware version; defining, by the service, one or more processing functions for issuing the one or more other commands based, at least in part, on the relationship; storing, by the service, instructions to implement the virtual command by invoking the one or more processing functions; receiving, by the service, a request to issue the virtual command to the first device; determining, by the service, based on the instructions stored by the service, that the virtual command is implemented by invoking the one or more processing functions; and invoking, by the service, the one or more processing functions, wherein the one or more processing functions implement the virtual command by issuing the one or more other commands to the first device based, at least in part, on the relationship. - View Dependent Claims (7, 8, 9, 10, 11, 12)
-
-
13. A computer-implemented method for operating a service that manages device states comprising:
-
receiving an indication associated with a first device assuming a first device state, wherein the first device is included in a plurality of devices that connect to the service intermittently over one or more networks; updating a first representation of an actual state of the first device to indicate the first device state, wherein the first representation is included in a plurality of representations of device states associated with the plurality of devices, and wherein the service maintains the plurality of representations of device states and performs operations based, at least in part, on the plurality of representations of device states; receiving, from a second device, a request for the first device to assume a second state that is different from the first device state; updating, based on the request, a second representation of a desired state of the first device to indicate the second state, wherein the second representation is also included in the plurality of representations of device states, and wherein the second state is not the actual state of the first device when the second representation is updated, wherein the first representation and the second representation are separate parameters stored by the service; sending, based on the request, instructions to the first device to assume the second state; receiving an indication associated with the first device assuming the second state based on the instructions; and updating the first representation of the actual state of the first device to indicate the second state. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification