Abstract:
Controllers can be used to control the operation of various accessories. A group of accessories can be organized into an accessory network that can facilitate coordinated control of multiple accessories. The accessory network can be organized according to an environment model that can include a hierarchical representation of a physical environment where accessories are present. The environment model can be synchronized across different controllers that have access to the accessories.
Abstract:
An automated environment can include multiple controller devices capable of communicating with multiple accessory devices. The controller devices can automatically elect one of their number as a coordinator device for the environment and can automatically perform a new election if an incumbent coordinator becomes unavailable or resigns. The election processes can be transparent to any users. An elected coordinator can perform various operations to facilitate management of the automated environment, including routing of communications between controllers and accessories.
Abstract:
An integrated accessory control system can efficiently set up a new media streaming session with one or more accessories. A session identifier for the new session, as well as a destination address and security parameters can be generated. A data object comprising the generated elements can be written to a resource location. Additionally, a second data object comprising the session identifier, a streaming source address, a source identifier, and additional security parameters can be read from the resource location. A third data object comprising the session identifier, a session start command, and codec parameters can then be generated. The third data object can also be written to the resource location. Further, streamed media data conforming to the codec parameters and the security parameters may be received.
Abstract:
An integrated accessory control system can efficiently set up a new media streaming session with one or more accessories. A session identifier for the new session, as well as a destination address and security parameters can be generated. A data object comprising the generated elements can be written to a resource location. Additionally, a second data object comprising the session identifier, a streaming source address, a source identifier, and additional security parameters can be read from the resource location. A third data object comprising the session identifier, a session start command, and codec parameters can then be generated. The third data object can also be written to the resource location. Further, streamed media data conforming to the codec parameters and the security parameters may be received.
Abstract:
A uniform protocol can facilitate secure, authenticated communication between a controller device and an accessory device that is controlled by the controller. An accessory and a controller can establish a pairing, the existence of which can be verified at a later time and used to create a secure communication session. The accessory can provide an accessory definition record that defines the accessory as a collection of services, each service having one or more characteristics. Within a secure communication session, the controller can interrogate the characteristics to determine accessory state and/or modify the characteristics to instruct the accessory to change its state.