A Door Lock is a device used to secure a door. It is possible to actuate a door lock either by means of a manual or a remote method.

MatterSpecification.v13.Device § 8.1

interface DoorLockDevice {
    behaviors: {
        identify: typeof IdentifyServer;
    } & {
        doorLock: typeof DoorLockServer;
    } & {
        identify: typeof IdentifyServer;
    } & {
        doorLock: typeof DoorLockServer;
    };
    defaults: StateOf<{
        identify: typeof IdentifyServer;
    } & {
        doorLock: typeof DoorLockServer;
    }>;
    deviceClass: DeviceClassification;
    deviceRevision: number;
    deviceType: DeviceTypeId;
    name: "DoorLock";
    requirements: typeof DoorLockRequirements;
    set(defaults: InputStateOf<{
        identify: typeof IdentifyServer;
    } & {
        doorLock: typeof DoorLockServer;
    }>): With<For<{
        behaviors: {
            identify: typeof IdentifyServer;
        } & {
            doorLock: typeof DoorLockServer;
        };
        deviceRevision: 3;
        deviceType: 10;
        name: "DoorLock";
        requirements: typeof DoorLockRequirements;
    }>, {
        identify: typeof IdentifyServer;
    } & {
        doorLock: typeof DoorLockServer;
    }>;
    with<const BL>(...behaviors: BL): With<For<{
        behaviors: {
            identify: typeof IdentifyServer;
        } & {
            doorLock: typeof DoorLockServer;
        };
        deviceRevision: 3;
        deviceType: 10;
        name: "DoorLock";
        requirements: typeof DoorLockRequirements;
    }>, With<{
        identify: typeof IdentifyServer;
    } & {
        doorLock: typeof DoorLockServer;
    }, BL>>;
}

Hierarchy (view full)

Properties

behaviors: {
    identify: typeof IdentifyServer;
} & {
    doorLock: typeof DoorLockServer;
} & {
    identify: typeof IdentifyServer;
} & {
    doorLock: typeof DoorLockServer;
}
defaults: StateOf<{
    identify: typeof IdentifyServer;
} & {
    doorLock: typeof DoorLockServer;
}>

Access default state values.

deviceRevision: number
deviceType: DeviceTypeId
name
requirements: typeof DoorLockRequirements

Methods

  • Define an endpoint like this one with different defaults. Only updates values present in the input object.

    Parameters

    Returns With<For<{
        behaviors: {
            identify: typeof IdentifyServer;
        } & {
            doorLock: typeof DoorLockServer;
        };
        deviceRevision: 3;
        deviceType: 10;
        name: "DoorLock";
        requirements: typeof DoorLockRequirements;
    }>, {
        identify: typeof IdentifyServer;
    } & {
        doorLock: typeof DoorLockServer;
    }>

  • Define an endpoint like this one with additional and/or replacement server behaviors.

    Type Parameters

    • const BL extends List

    Parameters

    • Rest...behaviors: BL

    Returns With<For<{
        behaviors: {
            identify: typeof IdentifyServer;
        } & {
            doorLock: typeof DoorLockServer;
        };
        deviceRevision: 3;
        deviceType: 10;
        name: "DoorLock";
        requirements: typeof DoorLockRequirements;
    }>, With<{
        identify: typeof IdentifyServer;
    } & {
        doorLock: typeof DoorLockServer;
    }, BL>>