Device

Device as returned by HomeyAPIV3Cloud.ManagerDevices.

Extends

Instance Properties

available

available: boolean

Type

  • boolean

capabilities

capabilities: array

Type

  • array

capabilitiesObj

capabilitiesObj: object

Type

  • object

class

class: string

Type

  • string

color

color: string|null

Type

  • string | null

data

data: object

Type

  • object

driverId

driverId: string

Type

  • string

energy

energy: object|null

Type

  • object | null

energyObj

energyObj: object|null

Type

  • object | null

flags

flags: array

Type

  • array

homey

homey: HomeyAPIV3

The Homey of the Item.

Type

icon

icon: string|null

Type

  • string | null

iconObj

iconObj: object|null

Type

  • object | null

iconOverride

iconOverride: string|null

Type

  • string | null

id

id: string

Type

  • string

images

images: array

Type

  • array

lastSeenAt

lastSeenAt: string|null

Type

  • string | null

manager

manager: HomeyAPIV3.Manager

The Manager of the Item.

Type

name

name: string

Type

  • string

note

note: string|null

Type

  • string | null

ownerUri

ownerUri: string

Type

  • string

ready

ready: boolean

Type

  • boolean

repair

repair: boolean|null

Type

  • boolean | null

settings

settings: object

Type

  • object

settingsObj

settingsObj: boolean

Type

  • boolean

ui

ui: object

Type

  • object

uiIndicator

uiIndicator: string|null

Type

  • string | null

unavailableMessage

unavailableMessage: string|null

Type

  • string | null

unpair

unpair: boolean|null

Type

  • boolean | null

uri

uri: string

The URI of the Item, e.g. homey:foo:bar.

Type

  • string

virtualClass

virtualClass: string|null

Type

  • string | null

warningMessage

warningMessage: string|null

Type

  • string | null

zone

zone: string

Type

  • string

Instance Methods

connect

(async) connect()

Connect to this item's Socket.io namespace.

disconnect

(async) disconnect()

Discconnect from this item's Socket.io namespace.

getAdvancedFlows

(async) getAdvancedFlows(): Promise.<Object.<string, HomeyAPIV3.ManagerFlow.AdvancedFlow>>

Returns

Promise.<Object.<string, HomeyAPIV3.ManagerFlow.AdvancedFlow>>

getDriver

(async) getDriver(): Promise.<HomeyAPIV3.ManagerDrivers.Driver>

Get the device's driver.

Returns

getFlows

(async) getFlows(): Promise.<Object.<string, HomeyAPIV3.ManagerFlow.Flow>>

Get the device's flows.

Returns

Promise.<Object.<string, HomeyAPIV3.ManagerFlow.Flow>>

getLogs

(async) getLogs(): Promise.<Object.<string, HomeyAPIV3.ManagerInsights.Log>>

Get the device's logs.

Returns

Promise.<Object.<string, HomeyAPIV3.ManagerInsights.Log>>

getZone

(async) getZone(): Promise.<HomeyAPIV3.ManagerZones.Zone>

Get the device's zone.

Returns

makeCapabilityInstance

makeCapabilityInstance(capabilityId, listener): HomeyAPIV3.ManagerDevices.Device.DeviceCapability

Creates an HomeyAPIV3.DeviceCapability for realtime capability updates.

Parameters

Name Type Description
capabilityId
string
listener
function
value
number | boolean | string
}

Returns

Example

const onOffInstance = device.makeCapabilityInstance('onoff', value => {
   console.log('Device onoff changed to:', value);
 });

// Turn on
onOffInstance.setValue(true).catch(console.error);

setCapabilityValue

(async) setCapabilityValue(opts): Promise.<void>

Sets a capability's value.

Parameters

Name Type Description
opts
object
capabilityId
string
value
number | boolean | string
opts
object <optional>
duration
number <optional>
}
}

Returns

Promise.<void>

Events

delete

.on('delete')

update

.on('update')

Parameters

Name Type Description
device
object
info
object
newValues
object

An object with only the new values of the device

oldValues
object

An object with only the old values of the device

changedKeys
Array.<string>

An array of keys of the properties that have changed

}