ResourceLink
A ResourceLink is a grouping construct for various Hue Bridge resources that are linked to provide some level of
interconnected functionality. This is used primarily for the Hue Formulas, but can be leveraged by API developers as an
advanced mechanism for building advanced functionality.
Creating a ResourceLink
You can create a ResourceLink by using the v3.model.createResourceLink() function.
const Scene = require('node-hue-api').v3.model;
const myResourceLink = model.createResourceLink();ResourceLink Properties and Functions
id
Get the id for the ResourceLink.
get
name
Get/Set a name for the ResourceLink.
getset
description
Get/Set a description for the ResourceLink.
getset
type
Get the type of the ResourceLink, which is always Link at the current time.
get
classid
Get/Set a classid for the ResourceLink. This is specific to the application and can be used to identify the purpose of the ResourceLink.
The Hue API documentation gives the following example use case:
The resourcelink class can be used to identify resourcelink with the same purpose, like classid 1 for wake-up, 2 for going to sleep, etc. (best practice use range 1 – 10000)
getset
owner
Gets the owner of the ResourceLink, which is only populated on ResourceLinks obtained from the Hue Bridge.
get
recycle
Get/Set the recyle attribute of the ResourceLink. This is used to flag scenes that can be automatically deleted by
the bridge.
If the recycle state is set to false the Hue bridge will keep the ResourceLink until an application removes it.
getset
links
There is a property on the ResourceLink links that will return a copy of the existing links object defined in the
ResourceLink.
get
The object returned will have a key value of the name of the type of link (e.g. groups) and an Array of the ids for the
linked items of that type. Any types of links that have no items, will not be present in the links object.
For example if we had links for lights with ids 1, 2 and 3 and group 0 the links object would look like:
{
"lights": [1, 2, 3],
"groups": [0]
}resetLinks()
A function resetLinks() will clear out any existing links on the ResourceLink.
addLink()
The function addLink(type, id) allows for the adding of a link to the ResourceLink.
type: One of the supported types:lightssensorsgroupsscenesrulesschedulesresourcelinks
id: The id of the type of object that you are adding as a link, e.g. a group id if the thetypewas a group
removeLink()
The function removeLink(type, id) allows for the removal of a specific link from the ResourceLink.
type: One of the supported types:lightssensorsgroupsscenesrulesschedulesresourcelinks
id: The id of the type of object that you are removing as a link, e.g. a group id if the thetypewas a group
toString()
The toString() function will obtain a simple String representation of the Scene.
toStringDetailed()
The toStringDetailed() function will obtain a more detailed representation of the Scene object.