Controller networks for an accessory management system

US10177933B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10177933-B2
Application numberUS-201514725891-A
CountryUS
Kind codeB2
Filing dateMay 29, 2015
Priority dateFeb 5, 2014
Publication dateJan 8, 2019
Grant dateJan 8, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Controllers can be used to control the operation of various accessories. Controllers with access to a particular accessory (or group of accessories) can be organized into a controller network to facilitate control. The controller network can include various proxy devices including bridge and tunnel proxies that can relay messages to and from accessories, perform protocol translations, and/or provide communication security. Some proxy devices can include decision logic to enable coordinated control over one or more accessories by the controllers in the controller network.

First claim

Opening claim text (preview).

What is claimed is: 1. A method executable by a controller device, the method comprising: receiving, at the controller device, a user input requesting an interaction with an accessory device, wherein the interaction identifies an operation corresponding to the accessory device to be performed; identifying a proxy device that is configured to communicate with the accessory device, wherein the controller device has previously established a pairing with the proxy device; establishing communication with the proxy device, wherein establishing communication with the proxy device includes establishing a pair-verified session with the proxy device based on the previously established pairing, the pair-verified session having a first session key; generating a request message to the accessory to perform the operation, wherein the request message includes a data item encrypted with a second session key that is not shared by the proxy device, and wherein an instruction message for the accessory device includes the data item; and communicating, via the pair-verified session, the request message to the proxy device to instruct the accessory device to perform the operation, wherein the request message is configured to be relayed to the accessory device by the proxy device. 2. The method of claim 1 wherein identifying the proxy device includes: obtaining a list of potential proxy devices; and selecting the proxy device from the list according to a selection rule. 3. The method of claim 2 wherein obtaining the list of potential proxy devices includes: during a pair-verified session with the accessory device that occurs prior to receiving the user input, obtaining from the accessory device a list of paired controller devices; and subsequently using the list of paired controller devices as the list of potential proxy devices. 4. The method of claim 2 wherein obtaining the list of potential proxy devices includes accessing a list of paired controller devices for the accessory that is maintained at a cloud-based data service. 5. The method of claim 2 wherein each potential proxy device is assigned a device type of a plurality of device types, and wherein the selection rule is based at least in part on a hierarchy of the plurality of device types. 6. The method of claim 2 wherein selecting the proxy device includes: selecting a first proxy device from the list; and in the event that the first proxy device is not available, selecting a different proxy device from the list. 7. The method of claim 1 wherein identifying the proxy device includes communicating with a cloud-based data service to identify a preferred proxy device from a list of devices having access to the accessory. 8. The method of claim 1 , further comprising presenting, at the controller device, a user interface that identifies a plurality of accessory operations corresponding to an accessory device, wherein the operation of the requested interaction is one of the plurality of accessory operations. 9. A method executable by a proxy device configured to communicate with an accessory device, the method comprising: establishing a pairing with a controller device; thereafter establishing a pair-verified session with the controller device based on the previously established pairing with the controller device, the pair-verified session having a first session key; receiving, via the pair-verified session with the controller device, a request message indicating an operation of the accessory device to be performed by the accessory device, wherein the request message received from the controller device includes a data item encrypted with a second session key that is not shared by the proxy device, and wherein an instruction message for the accessory device includes the data item; sending the instruction message to the accessory device to perform the operation based on the received request message; and sending to the controller device, via the pair-verified session with the controller device, a response message responsive to the received request message. 10. The method of claim 9 further comprising: receiving an instruction-response message from the accessory device responsive to the instruction message, wherein the response message sent to the controller device is based on the instruction-response message received from the accessory device. 11. The method of claim 9 further comprising: interpreting the received request message to determine the operation to be performed; and generating the instruction message to the accessory device based on the interpreting. 12. The method of claim 11 wherein interpreting the received request message includes determining that the controller device has permission to perform the accessory action. 13. The method of claim 11 wherein interpreting the received request message includes resolving a conflict among a plurality of received request messages from a plurality of controller devices. 14. The method of claim 9 wherein the request message received from the controller device conforms to a first protocol for communicating with accessories and the proxy device translates the received request message to an instruction message conforming to a second protocol for communicating with accessories. 15. The method of claim 14 further comprising, prior to receiving the request message from the controller device: obtaining accessory information from the accessory device, the accessory information including a first set of identifiers of accessory characteristics conforming to the second communication protocol; and constructing a mapping of the set of identifiers of the accessory characteristics to a second set of identifiers conforming to the first communication protocol, wherein translating the received request message includes using the mapping to translate the request message from the second communication protocol to the first communication protocol. 16. The method of claim 9 wherein the data item represents a value to be written to an accessory characteristic of the accessory device, wherein writing the value to the accessory characteristic results in changing an aspect of a state of the accessory device. 17. The method of claim 9 wherein establishing the pairing with the controller device occurs while the controller device is present in a local environment with the proxy device and receiving the request message from the controller device occurs while the controller device is absent from the local environment. 18. A method executable by a controller device, the method comprising: establishing a first pairing with an accessory device; establishing a second pairing with a proxy device; receiving, at the controller device, a user input requesting an operation corresponding to the accessory device to be performed; and in response to the user input: establishing, based on the second pairing, a first pair-verified session with the proxy device, the first pair-verified session having a first session key that is shared by the controller device and the proxy device but not by the accessory device; communicating, via the first pair-verified session, with the accessory device to establish a second pair-verified session with the accessory device, the second pair-verified session having a second session key that is shared by the controller device and the accessory device but not by the proxy device; generating a request message to the proxy device to be relayed to the accessory based on the requested operation, wherein generating the request message includes encrypt

Assignees

Inventors

Classifications

  • Remote control using other portable devices, e.g. mobile phone, PDA, laptop · CPC title

  • Remote control systems using repeaters, converters, gateways · CPC title

  • Proxies · CPC title

  • H04L12/282Primary

    based on user interaction within the home (receiver circuitry for displaying additional information being controlled by a remote control apparatus H04N21/42204) · CPC title

  • using a radio link · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10177933B2 cover?
Controllers can be used to control the operation of various accessories. Controllers with access to a particular accessory (or group of accessories) can be organized into a controller network to facilitate control. The controller network can include various proxy devices including bridge and tunnel proxies that can relay messages to and from accessories, perform protocol translations, and/or pr…
Who is the assignee on this patent?
Apple Inc
What technology area does this patent fall under?
Primary CPC classification H04L12/282. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 08 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).