inventoresed
Version:
Z-Wave driver written entirely in JavaScript/TypeScript
133 lines (103 loc) • 2.29 kB
Markdown
# Protection CC
?> CommandClass ID: `0x75`
## Protection CC methods
### `get`
```ts
async get(): Promise<Pick<ProtectionCCReport, "local" | "rf"> | undefined>;
```
### `set`
```ts
async set(
local: LocalProtectionState,
rf?: RFProtectionState,
): Promise<SupervisionResult | undefined>;
```
### `getSupported`
```ts
async getSupported(): Promise<Pick<ProtectionCCSupportedReport, "supportsExclusiveControl" | "supportsTimeout" | "supportedLocalStates" | "supportedRFStates"> | undefined>;
```
### `getExclusiveControl`
```ts
async getExclusiveControl(): Promise<number | undefined>;
```
### `setExclusiveControl`
```ts
async setExclusiveControl(
nodeId: number,
): Promise<SupervisionResult | undefined>;
```
### `getTimeout`
```ts
async getTimeout(): Promise<Timeout | undefined>;
```
### `setTimeout`
```ts
async setTimeout(
timeout: Timeout,
): Promise<SupervisionResult | undefined>;
```
## Protection CC values
### `exclusiveControlNodeId`
```ts
{
commandClass: CommandClasses.Protection,
endpoint: number,
property: "exclusiveControlNodeId",
}
```
- **label:** Node ID with exclusive control
- **min. CC version:** 2
- **readable:** true
- **writeable:** true
- **stateful:** true
- **secret:** false
- **value type:** `"number"`
- **min. value:** 1
- **max. value:** 232
### `localProtectionState`
```ts
{
commandClass: CommandClasses.Protection,
endpoint: number,
property: "local",
}
```
- **label:** Local protection state
- **min. CC version:** 1
- **readable:** true
- **writeable:** true
- **stateful:** true
- **secret:** false
- **value type:** `"number"`
### `rfProtectionState`
```ts
{
commandClass: CommandClasses.Protection,
endpoint: number,
property: "rf",
}
```
- **label:** RF protection state
- **min. CC version:** 2
- **readable:** true
- **writeable:** true
- **stateful:** true
- **secret:** false
- **value type:** `"number"`
### `timeout`
```ts
{
commandClass: CommandClasses.Protection,
endpoint: number,
property: "timeout",
}
```
- **label:** RF protection timeout
- **min. CC version:** 2
- **readable:** true
- **writeable:** true
- **stateful:** true
- **secret:** false
- **value type:** `"number"`
- **min. value:** 0
- **max. value:** 255