UNPKG

inventoresed

Version:

Z-Wave driver written entirely in JavaScript/TypeScript

362 lines (297 loc) 7.36 kB
# Door Lock CC ?> CommandClass ID: `0x62` ## Door Lock CC methods ### `getCapabilities` ```ts async getCapabilities(): Promise<Pick<DoorLockCCCapabilitiesReport, "autoRelockSupported" | "blockToBlockSupported" | "boltSupported" | "doorSupported" | "holdAndReleaseSupported" | "latchSupported" | "twistAssistSupported" | "supportedDoorLockModes" | "supportedInsideHandles" | "supportedOperationTypes" | "supportedOutsideHandles"> | undefined>; ``` ### `get` ```ts async get(): Promise<Pick<DoorLockCCOperationReport, "currentMode" | "targetMode" | "duration" | "outsideHandlesCanOpenDoor" | "insideHandlesCanOpenDoor" | "latchStatus" | "boltStatus" | "doorStatus" | "lockTimeout"> | undefined>; ``` ### `set` ```ts async set( mode: DoorLockMode, ): Promise<SupervisionResult | undefined>; ``` ### `setConfiguration` ```ts async setConfiguration( configuration: DoorLockCCConfigurationSetOptions, ): Promise<SupervisionResult | undefined>; ``` ### `getConfiguration` ```ts async getConfiguration(): Promise<Pick<DoorLockCCConfigurationReport, "operationType" | "outsideHandlesCanOpenDoorConfiguration" | "insideHandlesCanOpenDoorConfiguration" | "lockTimeoutConfiguration" | "autoRelockTime" | "holdAndReleaseTime" | "twistAssist" | "blockToBlock"> | undefined>; ``` ## Door Lock CC values ### `autoRelockTime` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "autoRelockTime", } ``` - **label:** Duration in seconds until lock returns to secure state - **min. CC version:** 4 - **readable:** true - **writeable:** true - **stateful:** true - **secret:** false - **value type:** `"number"` - **min. value:** 0 - **max. value:** 65535 ### `blockToBlock` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "blockToBlock", } ``` - **label:** Block-to-block functionality enabled - **min. CC version:** 4 - **readable:** true - **writeable:** true - **stateful:** true - **secret:** false - **value type:** `"boolean"` ### `boltStatus` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "boltStatus", } ``` - **label:** Current status of the bolt - **min. CC version:** 1 - **readable:** true - **writeable:** false - **stateful:** true - **secret:** false - **value type:** `"any"` ### `currentMode` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "currentMode", } ``` - **label:** Current lock mode - **min. CC version:** 1 - **readable:** true - **writeable:** true - **stateful:** true - **secret:** false - **value type:** `"number"` - **min. value:** 0 - **max. value:** 255 ### `doorStatus` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "doorStatus", } ``` - **label:** Current status of the door - **min. CC version:** 1 - **readable:** true - **writeable:** false - **stateful:** true - **secret:** false - **value type:** `"any"` ### `duration` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "duration", } ``` - **label:** Remaining duration until target lock mode - **min. CC version:** 3 - **readable:** true - **writeable:** false - **stateful:** true - **secret:** false - **value type:** `"duration"` ### `holdAndReleaseTime` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "holdAndReleaseTime", } ``` - **label:** Duration in seconds the latch stays retracted - **min. CC version:** 4 - **readable:** true - **writeable:** true - **stateful:** true - **secret:** false - **value type:** `"number"` - **min. value:** 0 - **max. value:** 65535 ### `insideHandlesCanOpenDoor` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "insideHandlesCanOpenDoor", } ``` - **label:** Which inside handles can open the door (actual status) - **min. CC version:** 1 - **readable:** true - **writeable:** false - **stateful:** true - **secret:** false - **value type:** `"any"` ### `insideHandlesCanOpenDoorConfiguration` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "insideHandlesCanOpenDoorConfiguration", } ``` - **label:** Which inside handles can open the door (configuration) - **min. CC version:** 1 - **readable:** true - **writeable:** true - **stateful:** true - **secret:** false - **value type:** `"any"` ### `latchStatus` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "latchStatus", } ``` - **label:** Current status of the latch - **min. CC version:** 1 - **readable:** true - **writeable:** false - **stateful:** true - **secret:** false - **value type:** `"any"` ### `lockTimeout` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "lockTimeout", } ``` - **label:** Seconds until lock mode times out - **min. CC version:** 1 - **readable:** true - **writeable:** false - **stateful:** true - **secret:** false - **value type:** `"number"` - **min. value:** 0 - **max. value:** 65535 ### `lockTimeoutConfiguration` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "lockTimeoutConfiguration", } ``` - **label:** Duration of timed mode in seconds - **min. CC version:** 1 - **readable:** true - **writeable:** true - **stateful:** true - **secret:** false - **value type:** `"number"` - **min. value:** 0 - **max. value:** 65535 ### `operationType` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "operationType", } ``` - **label:** Lock operation type - **min. CC version:** 1 - **readable:** true - **writeable:** true - **stateful:** true - **secret:** false - **value type:** `"number"` - **min. value:** 0 - **max. value:** 255 ### `outsideHandlesCanOpenDoor` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "outsideHandlesCanOpenDoor", } ``` - **label:** Which outside handles can open the door (actual status) - **min. CC version:** 1 - **readable:** true - **writeable:** false - **stateful:** true - **secret:** false - **value type:** `"any"` ### `outsideHandlesCanOpenDoorConfiguration` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "outsideHandlesCanOpenDoorConfiguration", } ``` - **label:** Which outside handles can open the door (configuration) - **min. CC version:** 1 - **readable:** true - **writeable:** true - **stateful:** true - **secret:** false - **value type:** `"any"` ### `targetMode` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "targetMode", } ``` - **label:** Target lock mode - **min. CC version:** 1 - **readable:** true - **writeable:** true - **stateful:** true - **secret:** false - **value type:** `"number"` - **min. value:** 0 - **max. value:** 255 ### `twistAssist` ```ts { commandClass: CommandClasses["Door Lock"], endpoint: number, property: "twistAssist", } ``` - **label:** Twist Assist enabled - **min. CC version:** 4 - **readable:** true - **writeable:** true - **stateful:** true - **secret:** false - **value type:** `"boolean"`