Grizzly.ZWave.Commands.DoorLockOperationReport (grizzly v8.7.0)

View Source

OperationReport is used to advertise the status of a door lock

This is response to the Grizzly.ZWave.Commands.OperationGet command.

Params:

  • :mode - the door operating lock mode (required)
  • :outside_handles_mode - a map of the outside door handles and if they can or cannot open the door locally (optional)
  • :inside_handles_mode - a map of the inside door handles and if they can or cannot open the door locally (optional)
  • :latch_position - the position of the latch (optional)
  • :bolt_position - the position of the bolt (optional)
  • :door_state - the state of the door being open or closed (optional)
  • :timeout_minutes - how long the door has been unlocked (required)
  • :timeout_seconds - how long the door has been unlocked (required)
  • :target_mode - the target mode of an ongoing transition or of the most recent transition (optional - v4)
  • duration - the estimated remaining time before the target mode is realized (optional - v4)

Summary

Types

This param only matters if the door lock says it supports this door component in the CapabilitiesReport.

This param only matters if the door lock says it supports this door component in the CapabilitiesReport.

These modes tell if the handle can open the door locally or not.

This param only matters if the door lock says it supports this door component in the CapabilitiesReport.

Types

bolt_position()

@type bolt_position() :: :locked | :unlocked

This param only matters if the door lock says it supports this door component in the CapabilitiesReport.

If it isn't support the node receiving this report can ignore.

For defaults, if this param isn't provided during when calling new/1, we 0 this field out by setting it to :disabled

door_state()

@type door_state() :: :open | :closed

This param only matters if the door lock says it supports this door component in the CapabilitiesReport.

If it isn't support the node receiving this report can ignore.

For defaults, if this param isn't provided during when calling new/1, we 0 this field out by setting it to :disabled

handles_mode()

@type handles_mode() :: %{required(non_neg_integer()) => :enabled | :disabled}

These modes tell if the handle can open the door locally or not.

The door lock does not have to report all or any of these, so the default is to set them all to disabled if they are not specified when building the command.

latch_position()

@type latch_position() :: :open | :closed

This param only matters if the door lock says it supports this door component in the CapabilitiesReport.

If it isn't support the node receiving this report can ignore.

For defaults, if this param isn't provided during when calling new/1, we 0 this field out by setting it to :disabled

param()

@type param() ::
  {:mode, Grizzly.ZWave.CommandClasses.DoorLock.mode()}
  | {:outside_handles_mode, handles_mode()}
  | {:inside_handles_mode, handles_mode()}
  | {:latch_position, latch_position()}
  | {:bolt_position, bolt_position()}
  | {:door_state, door_state()}
  | {:timeout_minutes, timeout_minutes()}
  | {:timeout_seconds, timeout_seconds()}
  | {:target_mode, Grizzly.ZWave.CommandClasses.DoorLock.mode()}
  | {:duration, :unknown | non_neg_integer()}

timeout_minutes()

@type timeout_minutes() :: 0..253 | :undefined

timeout_seconds()

@type timeout_seconds() :: 0..59 | :undefined

Functions

door_condition_to_byte(latch_position, bolt_position, door_state)

door_handles_modes_to_byte(handles_mode)