interface State {
    actuatorEnabled: boolean;
    alarmMask?: TypeFromPartialBitSchema<{
        doorForcedOpen: BitFlag;
        frontEscutcheonRemoved: BitFlag;
        lockFactoryReset: BitFlag;
        lockJammed: BitFlag;
        lockRadioPowerCycled: BitFlag;
        na: BitFlag;
        wrongCodeEntryLimit: BitFlag;
    }>;
    autoRelockTime?: number;
    defaultConfigurationRegister?: TypeFromPartialBitSchema<{
        autoRelockTime: BitFlag;
        keypadInterface: BitFlag;
        ledSettings: BitFlag;
        localProgramming: BitFlag;
        remoteInterface: BitFlag;
        soundVolume: BitFlag;
    }>;
    enableInsideStatusLed?: boolean;
    enableLocalProgramming?: boolean;
    enableOneTouchLocking?: boolean;
    enablePrivacyModeButton?: boolean;
    language?: string;
    ledSettings?: DoorLock.LedSetting;
    localProgrammingFeatures?: TypeFromPartialBitSchema<{
        addUsersCredentialsSchedules: BitFlag;
        adjustSettings: BitFlag;
        clearUsersCredentialsSchedules: BitFlag;
        modifyUsersCredentialsSchedules: BitFlag;
    }>;
    lockState: null | DoorLock.LockState;
    lockType: DoorLock.LockType;
    operatingMode: DoorLock.OperatingMode;
    soundVolume?: DoorLock.SoundVolume;
    supportedOperatingModes: TypeFromPartialBitSchema<{
        noRemoteLockUnlock: BitFlag;
        normal: BitFlag;
        passage: BitFlag;
        privacy: BitFlag;
        vacation: BitFlag;
    }>;
}

Hierarchy

  • StateType
    • State

Properties

actuatorEnabled: boolean

Indicates if the lock is currently able to (Enabled) or not able to (Disabled) process remote Lock, Unlock, or Unlock with Timeout commands.

MatterSpecification.v13.Cluster § 5.2.9.4

alarmMask?: TypeFromPartialBitSchema<{
    doorForcedOpen: BitFlag;
    frontEscutcheonRemoved: BitFlag;
    lockFactoryReset: BitFlag;
    lockJammed: BitFlag;
    lockRadioPowerCycled: BitFlag;
    na: BitFlag;
    wrongCodeEntryLimit: BitFlag;
}>

This attribute is only supported if the Alarms cluster is on the same endpoint. The alarm mask is used to turn on/off alarms for particular functions. Alarms for an alarm group are enabled if the associated alarm mask bit is set. Each bit represents a group of alarms. Entire alarm groups can be turned on or off by setting or clearing the associated bit in the alarm mask.

This mask DOES NOT apply to the Events mechanism of this cluster.

Type declaration

  • doorForcedOpen: BitFlag

    Forced Door Open under Door Locked Condition

  • frontEscutcheonRemoved: BitFlag

    Tamper Alarm - front escutcheon removed from main

  • lockFactoryReset: BitFlag

    Lock Reset to Factory Defaults

  • lockJammed: BitFlag

    Locking Mechanism Jammed

  • lockRadioPowerCycled: BitFlag

    RF Module Power Cycled

  • na: BitFlag

    Reserved

  • wrongCodeEntryLimit: BitFlag

    Tamper Alarm - wrong code entry limit

MatterSpecification.v13.Cluster § 5.2.9.40

autoRelockTime?: number

Indicates the number of seconds to wait after unlocking a lock before it automatically locks again. 0=disabled. If set, unlock operations from any source will be timed. For one time unlock with timeout use the specific command.

MatterSpecification.v13.Cluster § 5.2.9.25

defaultConfigurationRegister?: TypeFromPartialBitSchema<{
    autoRelockTime: BitFlag;
    keypadInterface: BitFlag;
    ledSettings: BitFlag;
    localProgramming: BitFlag;
    remoteInterface: BitFlag;
    soundVolume: BitFlag;
}>

Indicates the default configurations as they are physically set on the device (example: hardware dip switch setting, etc…) and represents the default setting for some of the attributes within this cluster (for example: LED, Auto Lock, Sound Volume, and Operating Mode attributes).

This is a read-only attribute and is intended to allow clients to determine what changes may need to be made without having to query all the included attributes. It may be beneficial for the clients to know what the device’s original settings were in the event that the device needs to be restored to factory default settings.

If the Client device would like to query and modify the door lock server’s operating settings, it SHOULD send read and write attribute requests to the specific attributes.

For example, the Sound Volume attribute default value is Silent Mode. However, it is possible that the current Sound Volume is High Volume. Therefore, if the client wants to query/modify the current Sound Volume setting on the server, the client SHOULD read/write to the Sound Volume attribute.

Type declaration

  • autoRelockTime: BitFlag

    Auto relock time it set to 0

    This bit shall indicate the state related to auto relock time:

    • 0 = Auto relock time value is 0

    • 1 = Auto relock time value is equal to something other than 0

    MatterSpecification.v13.Cluster § 5.2.6.4.5

  • keypadInterface: BitFlag

    The state of the keypad interface

    This bit shall indicate the state related to keypad interface:

    • 0 = Keypad interface is disabled

    • 1 = Keypad interface is enabled

    MatterSpecification.v13.Cluster § 5.2.6.4.2

  • ledSettings: BitFlag

    LEDs is disabled

    This bit shall indicate the state related to LED settings:

    • 0 = LED settings value is 0 (NoLEDSignal)

    • 1 = LED settings value is equal to something other than 0

    MatterSpecification.v13.Cluster § 5.2.6.4.6

  • localProgramming: BitFlag

    The state of local programming functionality

    This bit shall indicate the state related to local programming:

    • 0 = Local programming is disabled

    • 1 = Local programming is enabled

    MatterSpecification.v13.Cluster § 5.2.6.4.1

  • remoteInterface: BitFlag

    The state of the remote interface

    This bit shall indicate the state related to remote interface:

    • 0 = Remote interface is disabled

    • 1 = Remote interface is enabled

    MatterSpecification.v13.Cluster § 5.2.6.4.3

  • soundVolume: BitFlag

    Sound volume is set to Silent value

    This bit shall indicate the state related to sound volume:

    • 0 = Sound volume value is 0 (Silent)

    • 1 = Sound volume value is equal to something other than 0

    MatterSpecification.v13.Cluster § 5.2.6.4.4

MatterSpecification.v13.Cluster § 5.2.9.29

enableInsideStatusLed?: boolean

This attribute shall enable/disable an inside LED that allows the user to see at a glance if the door is locked.

MatterSpecification.v13.Cluster § 5.2.9.32

enableLocalProgramming?: boolean

This attribute shall enable/disable local programming on the door lock of certain features (see LocalProgrammingFeatures attribute). If this value is set to TRUE then local programming is enabled on the door lock for all features. If it is set to FALSE then local programming is disabled on the door lock for those features whose bit is set to 0 in the LocalProgrammingFeatures attribute. Local programming shall be enabled by default.

MatterSpecification.v13.Cluster § 5.2.9.30

enableOneTouchLocking?: boolean

This attribute shall enable/disable the ability to lock the door lock with a single touch on the door lock.

MatterSpecification.v13.Cluster § 5.2.9.31

enablePrivacyModeButton?: boolean

This attribute shall enable/disable a button inside the door that is used to put the lock into privacy mode. When the lock is in privacy mode it cannot be manipulated from the outside.

MatterSpecification.v13.Cluster § 5.2.9.33

language?: string

Indicates the language for the on-screen or audible user interface using a 2- byte language code from ISO-639-1.

MatterSpecification.v13.Cluster § 5.2.9.23

ledSettings?: DoorLock.LedSetting

Indicates the settings for the LED support, as defined by LEDSettingEnum.

MatterSpecification.v13.Cluster § 5.2.9.24

localProgrammingFeatures?: TypeFromPartialBitSchema<{
    addUsersCredentialsSchedules: BitFlag;
    adjustSettings: BitFlag;
    clearUsersCredentialsSchedules: BitFlag;
    modifyUsersCredentialsSchedules: BitFlag;
}>

Indicates the local programming features that will be disabled when EnableLocalProgramming attribute is set to False. If a door lock doesn’t support disabling one aspect of local programming it shall return CONSTRAINT_ERROR during a write operation of this attribute. If the EnableLocalProgramming attribute is set to True then all local programming features shall be enabled regardless of the bits set to 0 in this attribute.

The features that can be disabled from local programming are defined in LocalProgrammingFeaturesBitmap.

Type declaration

  • addUsersCredentialsSchedules: BitFlag

    The state of the ability to add users, credentials or schedules on the device

    This bit shall indicate whether the door lock is able to add Users/Credentials/Schedules locally:

    • 0 = This ability is disabled

    • 1 = This ability is enabled

    MatterSpecification.v13.Cluster § 5.2.6.5.1

  • adjustSettings: BitFlag

    The state of the ability to adjust settings on the device

    This bit shall indicate whether the door lock is able to adjust lock settings locally:

    • 0 = This ability is disabled

    • 1 = This ability is enabled

    MatterSpecification.v13.Cluster § 5.2.6.5.4

  • clearUsersCredentialsSchedules: BitFlag

    The state of the ability to clear users, credentials or schedules on the device

    This bit shall indicate whether the door lock is able to clear Users/Credentials/Schedules locally:

    • 0 = This ability is disabled

    • 1 = This ability is enabled

    MatterSpecification.v13.Cluster § 5.2.6.5.3

  • modifyUsersCredentialsSchedules: BitFlag

    The state of the ability to modify users, credentials or schedules on the device

    This bit shall indicate whether the door lock is able to modify Users/Credentials/Schedules locally:

    • 0 = This ability is disabled

    • 1 = This ability is enabled

    MatterSpecification.v13.Cluster § 5.2.6.5.2

MatterSpecification.v13.Cluster § 5.2.9.34

lockState: null | DoorLock.LockState

This attribute may be NULL if the lock hardware does not currently know the status of the locking mechanism. For example, a lock may not know the LockState status after a power cycle until the first lock actuation is completed.

The Not Fully Locked value is used by a lock to indicate that the state of the lock is somewhere between Locked and Unlocked so it is only partially secured. For example, a deadbolt could be partially extended and not in a dead latched state.

MatterSpecification.v13.Cluster § 5.2.9.2

lockType: DoorLock.LockType

Indicates the type of door lock as defined in LockTypeEnum.

MatterSpecification.v13.Cluster § 5.2.9.3

operatingMode: DoorLock.OperatingMode

Indicates the current operating mode of the lock as defined in OperatingModeEnum.

MatterSpecification.v13.Cluster § 5.2.9.27

soundVolume?: DoorLock.SoundVolume

Indicates the sound volume on a door lock as defined by SoundVolumeEnum.

MatterSpecification.v13.Cluster § 5.2.9.26

supportedOperatingModes: TypeFromPartialBitSchema<{
    noRemoteLockUnlock: BitFlag;
    normal: BitFlag;
    passage: BitFlag;
    privacy: BitFlag;
    vacation: BitFlag;
}>

This attribute shall contain a bitmap with all operating bits of the OperatingMode attribute supported by the lock. All operating modes NOT supported by a lock shall be set to one. The value of the OperatingMode enumeration defines the related bit to be set.

Type declaration

  • noRemoteLockUnlock: BitFlag

    No remote lock and unlock operation mode

  • normal: BitFlag

    Normal operation mode

  • passage: BitFlag

    Passage operation mode

  • privacy: BitFlag

    Privacy operation mode

  • vacation: BitFlag

    Vacation operation mode

MatterSpecification.v13.Cluster § 5.2.9.28