Relay service for communication between controllers and accessories
First Claim
1. A method performed by a new controller for enabling the new controller to control one or more accessories controlled by a first controller, comprising:
- receiving, from the first controller, a request for consent to add the new controller to control the one or more accessories;
determining whether consent is to be granted;
obtaining an operator relay alias;
transmitting, to an identity service, a request for a consent token using the operator relay alias;
receiving, from the identity service, the consent token;
transmitting, to the first controller, a first message that includes the consent token; and
receiving, from the first controller, a second message that includes one or more access tokens and one or more accessory relay aliases.
0 Assignments
0 Petitions
Accused Products
Abstract
A relay service can relay messages between controllers and electronically controllable accessory devices that may be located remotely from the controllers. Relaying of messages by the relay service can be decoupled from any knowledge of the functionality of the accessory or the content of the messages. Device identification and relaying of messages can be managed using “relay aliases” that are meaningful only to the relay service and the endpoint devices (the controller and accessory). The endpoint devices can implement end-to-end security for messages transported by the relay service.
-
Citations
20 Claims
-
1. A method performed by a new controller for enabling the new controller to control one or more accessories controlled by a first controller, comprising:
-
receiving, from the first controller, a request for consent to add the new controller to control the one or more accessories; determining whether consent is to be granted; obtaining an operator relay alias; transmitting, to an identity service, a request for a consent token using the operator relay alias; receiving, from the identity service, the consent token; transmitting, to the first controller, a first message that includes the consent token; and receiving, from the first controller, a second message that includes one or more access tokens and one or more accessory relay aliases. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method performed by an identity service for enabling a new controller to control one or more accessories controlled by a first controller, comprising:
-
receiving, from the new controller, a request for a consent token; generating a consent token based at least in part on the request; transmitting, to the new controller, the consent token; receiving, from the first controller, a request to retrieve an access token for the new controller; generating a new access token for the new controller; and transmitting, to the first controller, the new access token for the new controller. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A method performed by a first controller for enabling a new controller to control one or more accessories controlled by the first controller, comprising:
-
transmitting, to the new controller, a request for consent to authorize the new controller to control the one or more accessories controlled by the first controller; receiving, from the new controller, a first message that includes a consent token generated by an identity service; transmitting, to the identity service, a request to receive an access token for the new controller; receiving, from the identity service, one or more new access tokens; transmitting, to each accessory of the one or more accessories, a respective new access token of the one or more new access tokens; and transmitting, to the new controller, a second message that includes the one or more new access tokens. - View Dependent Claims (17, 18, 19, 20)
-
Specification