Interoperability of secondary-device hubs
First Claim
Patent Images
1. An electronic device comprising:
- one or more processors;
memory; and
a control engine, stored in the memory and executable on the one or more processors to cause the one or more processors to perform acts comprising;
detecting a presence of a secondary device in an environment of the electronic device;
storing, in the memory, a first indication indicating that the electronic device is responsible for controlling the secondary device;
sending, to at least an additional electronic device residing in the environment and executing an additional instance of the control engine, a second indication indicating that the electronic device is responsible for controlling the secondary device;
receiving a request to place the secondary device in a first state;
sending, via a wireless protocol, a request to the secondary device to place the secondary device in the first state according to the request;
receiving, from the secondary device and via the wireless protocol, a third indication indicating that the secondary device is in the first state;
storing, in the memory, a fourth indication indicating that the secondary device is in the first state;
determining that the additional electronic device has subscribed to receive state-update information for the secondary device;
sending, to at least the additional electronic device, a fifth indication indicating that the secondary device is in the first state;
receiving an additional request to place the secondary device in a second state;
receiving a rule to associate with the secondary device, the rule specifying an operation to perform when a condition is met;
determining that the condition is met; and
performing the operation.
1 Assignment
0 Petitions
Accused Products
Abstract
Traditional home-automation systems utilize a single hub for controlling secondary devices within a home. The techniques described herein, meanwhile, utilize multiple hubs within the environment and/or located remotely from the environment. For instance, an environment may include multiple electronic devices, each configured to control one or more secondary devices within the environment. In addition, a remote service may be configured to control one or more secondary devices within the environment. As such, each controlling device stores and executes an instance of a control engine, rather than relying on a single instance of a control engine located at a single controlling hub.
116 Citations
20 Claims
-
1. An electronic device comprising:
-
one or more processors; memory; and a control engine, stored in the memory and executable on the one or more processors to cause the one or more processors to perform acts comprising; detecting a presence of a secondary device in an environment of the electronic device; storing, in the memory, a first indication indicating that the electronic device is responsible for controlling the secondary device; sending, to at least an additional electronic device residing in the environment and executing an additional instance of the control engine, a second indication indicating that the electronic device is responsible for controlling the secondary device; receiving a request to place the secondary device in a first state; sending, via a wireless protocol, a request to the secondary device to place the secondary device in the first state according to the request; receiving, from the secondary device and via the wireless protocol, a third indication indicating that the secondary device is in the first state; storing, in the memory, a fourth indication indicating that the secondary device is in the first state; determining that the additional electronic device has subscribed to receive state-update information for the secondary device; sending, to at least the additional electronic device, a fifth indication indicating that the secondary device is in the first state; receiving an additional request to place the secondary device in a second state; receiving a rule to associate with the secondary device, the rule specifying an operation to perform when a condition is met; determining that the condition is met; and performing the operation. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method implemented at least in part by a first electronic device within an environment, the method comprising:
-
sending, to at least a second electronic device within the environment, a first message indicating that the first electronic device is responsible for controlling a first secondary device within the environment, the first secondary device and the first electronic device configured to communicate over a first protocol; receiving, from the second electronic device, a second message indicating that the second electronic device is responsible for controlling a second secondary device within the environment, the second secondary device and the second electronic device configured to communicate over a second protocol; sending, to the first secondary device and via the first protocol, a request to place the first secondary device in a first state; sending, to at least the second electronic device, a third message indicating that the first secondary device is in the first state; receiving an additional request to place the first secondary device in a second state; receiving a rule to associate with the first secondary device, the rule specifying an operation to perform when a condition is met; determining that the condition is met; and performing the operation. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. One or more computing devices, comprising:
-
one or more processors; memory; and a control engine, stored in the memory and executable on the one or more processors to cause the one or more processors to perform acts comprising; receiving, from a first electronic device residing within an environment that is remote from the one or more computing devices, a first message indicating that the first electronic device is responsible for controlling a first secondary device within the environment, the first secondary device and the first electronic device being configured to communicate via a first protocol; storing a first indication indicating that the first electronic device is responsible for controlling the first secondary device; receiving, from a second electronic device in the environment, a second message indicating that the second electronic device is responsible for controlling a second secondary device within the environment, the second secondary device and the second electronic device being configured to communicate via a second protocol; storing a second indication indicating that the second electronic device is responsible for controlling the second secondary device; receiving, from the first electronic device, a third message indicating that the first secondary device is in a first state; storing a third indication indicating that the first secondary device is in the first state; receiving, from the first electronic device, a fourth message indicating that the first secondary device is in a second state; and determining a rule to associate with the first secondary device, the rule specifying an operation to perform when a condition is met. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification