@matter/types 0.14.0-alpha.0-20250531-7ed2d6da8 → 0.14.0-alpha.0-20250602-37f27bb02
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/clusters/access-control.d.ts +250 -250
- package/dist/cjs/clusters/access-control.js +39 -39
- package/dist/cjs/clusters/account-login.d.ts +29 -29
- package/dist/cjs/clusters/account-login.js +11 -11
- package/dist/cjs/clusters/actions.d.ts +108 -108
- package/dist/cjs/clusters/actions.js +39 -39
- package/dist/cjs/clusters/administrator-commissioning.d.ts +77 -51
- package/dist/cjs/clusters/administrator-commissioning.d.ts.map +1 -1
- package/dist/cjs/clusters/administrator-commissioning.js +32 -12
- package/dist/cjs/clusters/administrator-commissioning.js.map +1 -1
- package/dist/cjs/clusters/air-quality.d.ts +5 -5
- package/dist/cjs/clusters/air-quality.js +1 -1
- package/dist/cjs/clusters/alarm-base.d.ts +43 -43
- package/dist/cjs/clusters/alarm-base.js +14 -14
- package/dist/cjs/clusters/application-basic.d.ts +16 -16
- package/dist/cjs/clusters/application-basic.js +10 -10
- package/dist/cjs/clusters/application-launcher.d.ts +141 -99
- package/dist/cjs/clusters/application-launcher.d.ts.map +1 -1
- package/dist/cjs/clusters/application-launcher.js +45 -13
- package/dist/cjs/clusters/application-launcher.js.map +2 -2
- package/dist/cjs/clusters/audio-output.d.ts +37 -37
- package/dist/cjs/clusters/audio-output.js +8 -8
- package/dist/cjs/clusters/ballast-configuration.d.ts +23 -23
- package/dist/cjs/clusters/ballast-configuration.js +17 -17
- package/dist/cjs/clusters/basic-information.d.ts +54 -54
- package/dist/cjs/clusters/basic-information.js +34 -34
- package/dist/cjs/clusters/binding.d.ts +12 -12
- package/dist/cjs/clusters/binding.js +5 -5
- package/dist/cjs/clusters/boolean-state-configuration.d.ts +92 -92
- package/dist/cjs/clusters/boolean-state-configuration.js +18 -18
- package/dist/cjs/clusters/boolean-state.d.ts +7 -7
- package/dist/cjs/clusters/boolean-state.js +3 -3
- package/dist/cjs/clusters/bridged-device-basic-information.d.ts +102 -102
- package/dist/cjs/clusters/bridged-device-basic-information.js +28 -28
- package/dist/cjs/clusters/channel.d.ts +577 -559
- package/dist/cjs/clusters/channel.d.ts.map +1 -1
- package/dist/cjs/clusters/channel.js +87 -73
- package/dist/cjs/clusters/channel.js.map +2 -2
- package/dist/cjs/clusters/color-control.d.ts +658 -658
- package/dist/cjs/clusters/color-control.js +116 -116
- package/dist/cjs/clusters/commissioner-control.d.ts +16 -16
- package/dist/cjs/clusters/commissioner-control.js +5 -5
- package/dist/cjs/clusters/concentration-measurement.d.ts +26 -26
- package/dist/cjs/clusters/concentration-measurement.js +11 -11
- package/dist/cjs/clusters/content-app-observer.d.ts +27 -17
- package/dist/cjs/clusters/content-app-observer.d.ts.map +1 -1
- package/dist/cjs/clusters/content-app-observer.js +14 -6
- package/dist/cjs/clusters/content-app-observer.js.map +2 -2
- package/dist/cjs/clusters/content-control.d.ts +438 -356
- package/dist/cjs/clusters/content-control.d.ts.map +1 -1
- package/dist/cjs/clusters/content-control.js +120 -58
- package/dist/cjs/clusters/content-control.js.map +1 -1
- package/dist/cjs/clusters/content-launcher.d.ts +509 -475
- package/dist/cjs/clusters/content-launcher.d.ts.map +1 -1
- package/dist/cjs/clusters/content-launcher.js +65 -39
- package/dist/cjs/clusters/content-launcher.js.map +2 -2
- package/dist/cjs/clusters/descriptor.d.ts +28 -28
- package/dist/cjs/clusters/descriptor.js +8 -8
- package/dist/cjs/clusters/device-energy-management-mode.d.ts +43 -43
- package/dist/cjs/clusters/device-energy-management-mode.js +8 -8
- package/dist/cjs/clusters/device-energy-management.d.ts +544 -544
- package/dist/cjs/clusters/device-energy-management.js +87 -87
- package/dist/cjs/clusters/diagnostic-logs.d.ts +67 -33
- package/dist/cjs/clusters/diagnostic-logs.d.ts.map +1 -1
- package/dist/cjs/clusters/diagnostic-logs.js +34 -8
- package/dist/cjs/clusters/diagnostic-logs.js.map +2 -2
- package/dist/cjs/clusters/dishwasher-alarm.d.ts +57 -57
- package/dist/cjs/clusters/dishwasher-alarm.js +14 -14
- package/dist/cjs/clusters/dishwasher-mode.d.ts +42 -42
- package/dist/cjs/clusters/dishwasher-mode.js +8 -8
- package/dist/cjs/clusters/door-lock.d.ts +1367 -1350
- package/dist/cjs/clusters/door-lock.d.ts.map +1 -1
- package/dist/cjs/clusters/door-lock.js +242 -228
- package/dist/cjs/clusters/door-lock.js.map +1 -1
- package/dist/cjs/clusters/ecosystem-information.d.ts +27 -27
- package/dist/cjs/clusters/ecosystem-information.js +12 -12
- package/dist/cjs/clusters/electrical-energy-measurement.d.ts +275 -275
- package/dist/cjs/clusters/electrical-energy-measurement.js +25 -25
- package/dist/cjs/clusters/electrical-power-measurement.d.ts +199 -199
- package/dist/cjs/clusters/electrical-power-measurement.js +39 -39
- package/dist/cjs/clusters/energy-evse-mode.d.ts +43 -43
- package/dist/cjs/clusters/energy-evse-mode.js +8 -8
- package/dist/cjs/clusters/energy-evse.d.ts +323 -323
- package/dist/cjs/clusters/energy-evse.js +73 -73
- package/dist/cjs/clusters/energy-preference.d.ts +49 -49
- package/dist/cjs/clusters/energy-preference.js +9 -9
- package/dist/cjs/clusters/ethernet-network-diagnostics.d.ts +31 -31
- package/dist/cjs/clusters/ethernet-network-diagnostics.js +10 -10
- package/dist/cjs/clusters/fan-control.d.ts +67 -67
- package/dist/cjs/clusters/fan-control.js +17 -17
- package/dist/cjs/clusters/fixed-label.d.ts +2 -2
- package/dist/cjs/clusters/fixed-label.js +1 -1
- package/dist/cjs/clusters/flow-measurement.d.ts +5 -5
- package/dist/cjs/clusters/flow-measurement.js +4 -4
- package/dist/cjs/clusters/general-commissioning.d.ts +104 -104
- package/dist/cjs/clusters/general-commissioning.js +25 -25
- package/dist/cjs/clusters/general-diagnostics.d.ts +174 -174
- package/dist/cjs/clusters/general-diagnostics.js +40 -40
- package/dist/cjs/clusters/group-key-management.d.ts +119 -119
- package/dist/cjs/clusters/group-key-management.js +23 -23
- package/dist/cjs/clusters/groups.d.ts +78 -78
- package/dist/cjs/clusters/groups.js +21 -21
- package/dist/cjs/clusters/icd-management.d.ts +131 -131
- package/dist/cjs/clusters/icd-management.js +29 -29
- package/dist/cjs/clusters/identify.d.ts +16 -16
- package/dist/cjs/clusters/identify.js +6 -6
- package/dist/cjs/clusters/illuminance-measurement.d.ts +7 -7
- package/dist/cjs/clusters/illuminance-measurement.js +5 -5
- package/dist/cjs/clusters/joint-fabric-datastore.d.ts +175 -175
- package/dist/cjs/clusters/joint-fabric-datastore.js +62 -62
- package/dist/cjs/clusters/joint-fabric-pki.d.ts +14 -14
- package/dist/cjs/clusters/joint-fabric-pki.js +5 -5
- package/dist/cjs/clusters/keypad-input.d.ts +34 -16
- package/dist/cjs/clusters/keypad-input.d.ts.map +1 -1
- package/dist/cjs/clusters/keypad-input.js +17 -3
- package/dist/cjs/clusters/keypad-input.js.map +2 -2
- package/dist/cjs/clusters/label.d.ts +10 -10
- package/dist/cjs/clusters/label.js +3 -3
- package/dist/cjs/clusters/laundry-dryer-controls.d.ts +4 -4
- package/dist/cjs/clusters/laundry-dryer-controls.js +2 -2
- package/dist/cjs/clusters/laundry-washer-controls.d.ts +23 -23
- package/dist/cjs/clusters/laundry-washer-controls.js +6 -6
- package/dist/cjs/clusters/laundry-washer-mode.d.ts +34 -34
- package/dist/cjs/clusters/laundry-washer-mode.js +5 -5
- package/dist/cjs/clusters/level-control.d.ts +303 -303
- package/dist/cjs/clusters/level-control.js +32 -32
- package/dist/cjs/clusters/localization-configuration.d.ts +3 -3
- package/dist/cjs/clusters/localization-configuration.js +2 -2
- package/dist/cjs/clusters/low-power.d.ts +2 -2
- package/dist/cjs/clusters/low-power.js +1 -1
- package/dist/cjs/clusters/media-input.d.ts +47 -47
- package/dist/cjs/clusters/media-input.js +11 -11
- package/dist/cjs/clusters/media-playback.d.ts +427 -385
- package/dist/cjs/clusters/media-playback.d.ts.map +1 -1
- package/dist/cjs/clusters/media-playback.js +89 -57
- package/dist/cjs/clusters/media-playback.js.map +2 -2
- package/dist/cjs/clusters/messages.d.ts +154 -154
- package/dist/cjs/clusters/messages.js +38 -38
- package/dist/cjs/clusters/microwave-oven-control.d.ts +63 -63
- package/dist/cjs/clusters/microwave-oven-control.js +17 -17
- package/dist/cjs/clusters/microwave-oven-mode.d.ts +39 -39
- package/dist/cjs/clusters/microwave-oven-mode.js +7 -7
- package/dist/cjs/clusters/mode-base.d.ts +59 -59
- package/dist/cjs/clusters/mode-base.js +13 -13
- package/dist/cjs/clusters/mode-select.d.ts +51 -51
- package/dist/cjs/clusters/mode-select.js +13 -13
- package/dist/cjs/clusters/network-commissioning.d.ts +325 -325
- package/dist/cjs/clusters/network-commissioning.js +46 -46
- package/dist/cjs/clusters/occupancy-sensing.d.ts +78 -78
- package/dist/cjs/clusters/occupancy-sensing.js +20 -20
- package/dist/cjs/clusters/on-off.d.ts +103 -103
- package/dist/cjs/clusters/on-off.js +19 -19
- package/dist/cjs/clusters/operational-credentials.d.ts +94 -94
- package/dist/cjs/clusters/operational-credentials.js +34 -34
- package/dist/cjs/clusters/operational-state.d.ts +67 -67
- package/dist/cjs/clusters/operational-state.js +21 -21
- package/dist/cjs/clusters/ota-software-update-provider.d.ts +95 -61
- package/dist/cjs/clusters/ota-software-update-provider.d.ts.map +1 -1
- package/dist/cjs/clusters/ota-software-update-provider.js +51 -25
- package/dist/cjs/clusters/ota-software-update-provider.js.map +2 -2
- package/dist/cjs/clusters/ota-software-update-requestor.d.ts +72 -72
- package/dist/cjs/clusters/ota-software-update-requestor.js +25 -25
- package/dist/cjs/clusters/oven-cavity-operational-state.d.ts +16 -16
- package/dist/cjs/clusters/oven-cavity-operational-state.js +11 -11
- package/dist/cjs/clusters/oven-mode.d.ts +40 -40
- package/dist/cjs/clusters/oven-mode.js +5 -5
- package/dist/cjs/clusters/power-source-configuration.d.ts +2 -2
- package/dist/cjs/clusters/power-source-configuration.js +1 -1
- package/dist/cjs/clusters/power-source.d.ts +155 -155
- package/dist/cjs/clusters/power-source.js +41 -41
- package/dist/cjs/clusters/power-topology.d.ts +8 -8
- package/dist/cjs/clusters/power-topology.js +2 -2
- package/dist/cjs/clusters/pressure-measurement.d.ts +25 -25
- package/dist/cjs/clusters/pressure-measurement.js +9 -9
- package/dist/cjs/clusters/proxy-configuration.d.ts +8 -8
- package/dist/cjs/clusters/proxy-configuration.js +3 -3
- package/dist/cjs/clusters/proxy-discovery.d.ts +10 -10
- package/dist/cjs/clusters/proxy-discovery.js +4 -4
- package/dist/cjs/clusters/pump-configuration-and-control.d.ts +189 -189
- package/dist/cjs/clusters/pump-configuration-and-control.js +57 -57
- package/dist/cjs/clusters/refrigerator-alarm.d.ts +43 -43
- package/dist/cjs/clusters/refrigerator-alarm.js +11 -11
- package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts +41 -41
- package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js +8 -8
- package/dist/cjs/clusters/relative-humidity-measurement.d.ts +5 -5
- package/dist/cjs/clusters/relative-humidity-measurement.js +4 -4
- package/dist/cjs/clusters/resource-monitoring.d.ts +20 -20
- package/dist/cjs/clusters/resource-monitoring.js +7 -7
- package/dist/cjs/clusters/rvc-clean-mode.d.ts +48 -48
- package/dist/cjs/clusters/rvc-clean-mode.js +9 -9
- package/dist/cjs/clusters/rvc-operational-state.d.ts +54 -54
- package/dist/cjs/clusters/rvc-operational-state.js +17 -17
- package/dist/cjs/clusters/rvc-run-mode.d.ts +55 -55
- package/dist/cjs/clusters/rvc-run-mode.js +9 -9
- package/dist/cjs/clusters/scenes-management.d.ts +246 -246
- package/dist/cjs/clusters/scenes-management.js +70 -70
- package/dist/cjs/clusters/service-area.d.ts +128 -128
- package/dist/cjs/clusters/service-area.js +26 -26
- package/dist/cjs/clusters/smoke-co-alarm.d.ts +137 -137
- package/dist/cjs/clusters/smoke-co-alarm.js +30 -30
- package/dist/cjs/clusters/software-diagnostics.d.ts +53 -53
- package/dist/cjs/clusters/software-diagnostics.js +14 -14
- package/dist/cjs/clusters/switch.d.ts +105 -105
- package/dist/cjs/clusters/switch.js +23 -23
- package/dist/cjs/clusters/target-navigator.d.ts +48 -30
- package/dist/cjs/clusters/target-navigator.d.ts.map +1 -1
- package/dist/cjs/clusters/target-navigator.js +24 -10
- package/dist/cjs/clusters/target-navigator.js.map +2 -2
- package/dist/cjs/clusters/temperature-control.d.ts +45 -45
- package/dist/cjs/clusters/temperature-control.js +12 -12
- package/dist/cjs/clusters/temperature-measurement.d.ts +5 -5
- package/dist/cjs/clusters/temperature-measurement.js +4 -4
- package/dist/cjs/clusters/thermostat-user-interface-configuration.d.ts +7 -7
- package/dist/cjs/clusters/thermostat-user-interface-configuration.js +3 -3
- package/dist/cjs/clusters/thermostat.d.ts +515 -515
- package/dist/cjs/clusters/thermostat.js +114 -114
- package/dist/cjs/clusters/thread-border-router-management.d.ts +58 -58
- package/dist/cjs/clusters/thread-border-router-management.js +14 -14
- package/dist/cjs/clusters/thread-network-diagnostics.d.ts +359 -359
- package/dist/cjs/clusters/thread-network-diagnostics.js +108 -108
- package/dist/cjs/clusters/thread-network-directory.d.ts +27 -27
- package/dist/cjs/clusters/thread-network-directory.js +11 -11
- package/dist/cjs/clusters/time-format-localization.d.ts +12 -12
- package/dist/cjs/clusters/time-format-localization.js +3 -3
- package/dist/cjs/clusters/time-synchronization.d.ts +255 -245
- package/dist/cjs/clusters/time-synchronization.d.ts.map +1 -1
- package/dist/cjs/clusters/time-synchronization.js +55 -47
- package/dist/cjs/clusters/time-synchronization.js.map +1 -1
- package/dist/cjs/clusters/unit-localization.d.ts +6 -6
- package/dist/cjs/clusters/unit-localization.js +1 -1
- package/dist/cjs/clusters/user-label.d.ts +2 -2
- package/dist/cjs/clusters/user-label.js +1 -1
- package/dist/cjs/clusters/valid-proxies.d.ts +7 -7
- package/dist/cjs/clusters/valid-proxies.js +2 -2
- package/dist/cjs/clusters/valve-configuration-and-control.d.ts +90 -80
- package/dist/cjs/clusters/valve-configuration-and-control.d.ts.map +1 -1
- package/dist/cjs/clusters/valve-configuration-and-control.js +30 -22
- package/dist/cjs/clusters/valve-configuration-and-control.js.map +1 -1
- package/dist/cjs/clusters/wake-on-lan.d.ts +3 -3
- package/dist/cjs/clusters/wake-on-lan.js +2 -2
- package/dist/cjs/clusters/water-heater-management.d.ts +91 -91
- package/dist/cjs/clusters/water-heater-management.js +16 -16
- package/dist/cjs/clusters/water-heater-mode.d.ts +42 -42
- package/dist/cjs/clusters/water-heater-mode.js +8 -8
- package/dist/cjs/clusters/wi-fi-network-diagnostics.d.ts +69 -69
- package/dist/cjs/clusters/wi-fi-network-diagnostics.js +20 -20
- package/dist/cjs/clusters/wi-fi-network-management.d.ts +6 -6
- package/dist/cjs/clusters/wi-fi-network-management.js +3 -3
- package/dist/cjs/clusters/window-covering.d.ts +183 -183
- package/dist/cjs/clusters/window-covering.js +49 -49
- package/dist/cjs/common/StatusCode.d.ts +2 -11
- package/dist/cjs/common/StatusCode.d.ts.map +1 -1
- package/dist/cjs/common/StatusCode.js +1 -17
- package/dist/cjs/common/StatusCode.js.map +1 -1
- package/dist/cjs/common/StatusResponseError.d.ts +21 -0
- package/dist/cjs/common/StatusResponseError.d.ts.map +1 -0
- package/dist/cjs/common/StatusResponseError.js +54 -0
- package/dist/cjs/common/StatusResponseError.js.map +6 -0
- package/dist/cjs/common/ValidationError.d.ts +1 -1
- package/dist/cjs/common/ValidationError.d.ts.map +1 -1
- package/dist/cjs/common/ValidationError.js +2 -1
- package/dist/cjs/common/ValidationError.js.map +1 -1
- package/dist/cjs/common/index.d.ts +1 -0
- package/dist/cjs/common/index.d.ts.map +1 -1
- package/dist/cjs/common/index.js +1 -0
- package/dist/cjs/common/index.js.map +1 -1
- package/dist/cjs/globals/AtomicAttributeStatus.d.ts +4 -4
- package/dist/cjs/globals/AtomicAttributeStatus.js +2 -2
- package/dist/cjs/globals/AtomicRequestType.d.ts +1 -1
- package/dist/cjs/globals/Locationdesc.d.ts +5 -5
- package/dist/cjs/globals/Locationdesc.js +3 -3
- package/dist/cjs/globals/MeasurementAccuracy.d.ts +5 -5
- package/dist/cjs/globals/MeasurementAccuracy.js +3 -3
- package/dist/cjs/globals/MeasurementAccuracyRange.d.ts +10 -10
- package/dist/cjs/globals/MeasurementAccuracyRange.js +8 -8
- package/dist/cjs/globals/MeasurementType.d.ts +1 -1
- package/dist/cjs/globals/Priority.d.ts +1 -1
- package/dist/cjs/globals/Semtag.d.ts +6 -6
- package/dist/cjs/globals/Semtag.js +4 -4
- package/dist/cjs/globals/SoftwareVersionCertificationStatus.d.ts +1 -1
- package/dist/cjs/globals/Status.d.ts +33 -33
- package/dist/cjs/globals/Tod.d.ts +2 -2
- package/dist/cjs/globals/WildcardPathFlags.d.ts +1 -1
- package/dist/esm/clusters/access-control.d.ts +250 -250
- package/dist/esm/clusters/access-control.js +39 -39
- package/dist/esm/clusters/account-login.d.ts +29 -29
- package/dist/esm/clusters/account-login.js +11 -11
- package/dist/esm/clusters/actions.d.ts +108 -108
- package/dist/esm/clusters/actions.js +39 -39
- package/dist/esm/clusters/administrator-commissioning.d.ts +77 -51
- package/dist/esm/clusters/administrator-commissioning.d.ts.map +1 -1
- package/dist/esm/clusters/administrator-commissioning.js +32 -12
- package/dist/esm/clusters/administrator-commissioning.js.map +1 -1
- package/dist/esm/clusters/air-quality.d.ts +5 -5
- package/dist/esm/clusters/air-quality.js +1 -1
- package/dist/esm/clusters/alarm-base.d.ts +43 -43
- package/dist/esm/clusters/alarm-base.js +14 -14
- package/dist/esm/clusters/application-basic.d.ts +16 -16
- package/dist/esm/clusters/application-basic.js +10 -10
- package/dist/esm/clusters/application-launcher.d.ts +141 -99
- package/dist/esm/clusters/application-launcher.d.ts.map +1 -1
- package/dist/esm/clusters/application-launcher.js +45 -13
- package/dist/esm/clusters/application-launcher.js.map +1 -1
- package/dist/esm/clusters/audio-output.d.ts +37 -37
- package/dist/esm/clusters/audio-output.js +8 -8
- package/dist/esm/clusters/ballast-configuration.d.ts +23 -23
- package/dist/esm/clusters/ballast-configuration.js +17 -17
- package/dist/esm/clusters/basic-information.d.ts +54 -54
- package/dist/esm/clusters/basic-information.js +34 -34
- package/dist/esm/clusters/binding.d.ts +12 -12
- package/dist/esm/clusters/binding.js +5 -5
- package/dist/esm/clusters/boolean-state-configuration.d.ts +92 -92
- package/dist/esm/clusters/boolean-state-configuration.js +18 -18
- package/dist/esm/clusters/boolean-state.d.ts +7 -7
- package/dist/esm/clusters/boolean-state.js +3 -3
- package/dist/esm/clusters/bridged-device-basic-information.d.ts +102 -102
- package/dist/esm/clusters/bridged-device-basic-information.js +28 -28
- package/dist/esm/clusters/channel.d.ts +577 -559
- package/dist/esm/clusters/channel.d.ts.map +1 -1
- package/dist/esm/clusters/channel.js +87 -73
- package/dist/esm/clusters/channel.js.map +1 -1
- package/dist/esm/clusters/color-control.d.ts +658 -658
- package/dist/esm/clusters/color-control.js +116 -116
- package/dist/esm/clusters/commissioner-control.d.ts +16 -16
- package/dist/esm/clusters/commissioner-control.js +5 -5
- package/dist/esm/clusters/concentration-measurement.d.ts +26 -26
- package/dist/esm/clusters/concentration-measurement.js +11 -11
- package/dist/esm/clusters/content-app-observer.d.ts +27 -17
- package/dist/esm/clusters/content-app-observer.d.ts.map +1 -1
- package/dist/esm/clusters/content-app-observer.js +14 -6
- package/dist/esm/clusters/content-app-observer.js.map +1 -1
- package/dist/esm/clusters/content-control.d.ts +438 -356
- package/dist/esm/clusters/content-control.d.ts.map +1 -1
- package/dist/esm/clusters/content-control.js +120 -58
- package/dist/esm/clusters/content-control.js.map +1 -1
- package/dist/esm/clusters/content-launcher.d.ts +509 -475
- package/dist/esm/clusters/content-launcher.d.ts.map +1 -1
- package/dist/esm/clusters/content-launcher.js +65 -39
- package/dist/esm/clusters/content-launcher.js.map +1 -1
- package/dist/esm/clusters/descriptor.d.ts +28 -28
- package/dist/esm/clusters/descriptor.js +8 -8
- package/dist/esm/clusters/device-energy-management-mode.d.ts +43 -43
- package/dist/esm/clusters/device-energy-management-mode.js +8 -8
- package/dist/esm/clusters/device-energy-management.d.ts +544 -544
- package/dist/esm/clusters/device-energy-management.js +87 -87
- package/dist/esm/clusters/diagnostic-logs.d.ts +67 -33
- package/dist/esm/clusters/diagnostic-logs.d.ts.map +1 -1
- package/dist/esm/clusters/diagnostic-logs.js +34 -8
- package/dist/esm/clusters/diagnostic-logs.js.map +1 -1
- package/dist/esm/clusters/dishwasher-alarm.d.ts +57 -57
- package/dist/esm/clusters/dishwasher-alarm.js +14 -14
- package/dist/esm/clusters/dishwasher-mode.d.ts +42 -42
- package/dist/esm/clusters/dishwasher-mode.js +8 -8
- package/dist/esm/clusters/door-lock.d.ts +1367 -1350
- package/dist/esm/clusters/door-lock.d.ts.map +1 -1
- package/dist/esm/clusters/door-lock.js +242 -228
- package/dist/esm/clusters/door-lock.js.map +1 -1
- package/dist/esm/clusters/ecosystem-information.d.ts +27 -27
- package/dist/esm/clusters/ecosystem-information.js +12 -12
- package/dist/esm/clusters/electrical-energy-measurement.d.ts +275 -275
- package/dist/esm/clusters/electrical-energy-measurement.js +25 -25
- package/dist/esm/clusters/electrical-power-measurement.d.ts +199 -199
- package/dist/esm/clusters/electrical-power-measurement.js +39 -39
- package/dist/esm/clusters/energy-evse-mode.d.ts +43 -43
- package/dist/esm/clusters/energy-evse-mode.js +8 -8
- package/dist/esm/clusters/energy-evse.d.ts +323 -323
- package/dist/esm/clusters/energy-evse.js +73 -73
- package/dist/esm/clusters/energy-preference.d.ts +49 -49
- package/dist/esm/clusters/energy-preference.js +9 -9
- package/dist/esm/clusters/ethernet-network-diagnostics.d.ts +31 -31
- package/dist/esm/clusters/ethernet-network-diagnostics.js +10 -10
- package/dist/esm/clusters/fan-control.d.ts +67 -67
- package/dist/esm/clusters/fan-control.js +17 -17
- package/dist/esm/clusters/fixed-label.d.ts +2 -2
- package/dist/esm/clusters/fixed-label.js +1 -1
- package/dist/esm/clusters/flow-measurement.d.ts +5 -5
- package/dist/esm/clusters/flow-measurement.js +4 -4
- package/dist/esm/clusters/general-commissioning.d.ts +104 -104
- package/dist/esm/clusters/general-commissioning.js +25 -25
- package/dist/esm/clusters/general-diagnostics.d.ts +174 -174
- package/dist/esm/clusters/general-diagnostics.js +40 -40
- package/dist/esm/clusters/group-key-management.d.ts +119 -119
- package/dist/esm/clusters/group-key-management.js +23 -23
- package/dist/esm/clusters/groups.d.ts +78 -78
- package/dist/esm/clusters/groups.js +21 -21
- package/dist/esm/clusters/icd-management.d.ts +131 -131
- package/dist/esm/clusters/icd-management.js +29 -29
- package/dist/esm/clusters/identify.d.ts +16 -16
- package/dist/esm/clusters/identify.js +6 -6
- package/dist/esm/clusters/illuminance-measurement.d.ts +7 -7
- package/dist/esm/clusters/illuminance-measurement.js +5 -5
- package/dist/esm/clusters/joint-fabric-datastore.d.ts +175 -175
- package/dist/esm/clusters/joint-fabric-datastore.js +62 -62
- package/dist/esm/clusters/joint-fabric-pki.d.ts +14 -14
- package/dist/esm/clusters/joint-fabric-pki.js +5 -5
- package/dist/esm/clusters/keypad-input.d.ts +34 -16
- package/dist/esm/clusters/keypad-input.d.ts.map +1 -1
- package/dist/esm/clusters/keypad-input.js +17 -3
- package/dist/esm/clusters/keypad-input.js.map +1 -1
- package/dist/esm/clusters/label.d.ts +10 -10
- package/dist/esm/clusters/label.js +3 -3
- package/dist/esm/clusters/laundry-dryer-controls.d.ts +4 -4
- package/dist/esm/clusters/laundry-dryer-controls.js +2 -2
- package/dist/esm/clusters/laundry-washer-controls.d.ts +23 -23
- package/dist/esm/clusters/laundry-washer-controls.js +6 -6
- package/dist/esm/clusters/laundry-washer-mode.d.ts +34 -34
- package/dist/esm/clusters/laundry-washer-mode.js +5 -5
- package/dist/esm/clusters/level-control.d.ts +303 -303
- package/dist/esm/clusters/level-control.js +32 -32
- package/dist/esm/clusters/localization-configuration.d.ts +3 -3
- package/dist/esm/clusters/localization-configuration.js +2 -2
- package/dist/esm/clusters/low-power.d.ts +2 -2
- package/dist/esm/clusters/low-power.js +1 -1
- package/dist/esm/clusters/media-input.d.ts +47 -47
- package/dist/esm/clusters/media-input.js +11 -11
- package/dist/esm/clusters/media-playback.d.ts +427 -385
- package/dist/esm/clusters/media-playback.d.ts.map +1 -1
- package/dist/esm/clusters/media-playback.js +89 -57
- package/dist/esm/clusters/media-playback.js.map +1 -1
- package/dist/esm/clusters/messages.d.ts +154 -154
- package/dist/esm/clusters/messages.js +38 -38
- package/dist/esm/clusters/microwave-oven-control.d.ts +63 -63
- package/dist/esm/clusters/microwave-oven-control.js +17 -17
- package/dist/esm/clusters/microwave-oven-mode.d.ts +39 -39
- package/dist/esm/clusters/microwave-oven-mode.js +7 -7
- package/dist/esm/clusters/mode-base.d.ts +59 -59
- package/dist/esm/clusters/mode-base.js +13 -13
- package/dist/esm/clusters/mode-select.d.ts +51 -51
- package/dist/esm/clusters/mode-select.js +13 -13
- package/dist/esm/clusters/network-commissioning.d.ts +325 -325
- package/dist/esm/clusters/network-commissioning.js +46 -46
- package/dist/esm/clusters/occupancy-sensing.d.ts +78 -78
- package/dist/esm/clusters/occupancy-sensing.js +20 -20
- package/dist/esm/clusters/on-off.d.ts +103 -103
- package/dist/esm/clusters/on-off.js +19 -19
- package/dist/esm/clusters/operational-credentials.d.ts +94 -94
- package/dist/esm/clusters/operational-credentials.js +34 -34
- package/dist/esm/clusters/operational-state.d.ts +67 -67
- package/dist/esm/clusters/operational-state.js +21 -21
- package/dist/esm/clusters/ota-software-update-provider.d.ts +95 -61
- package/dist/esm/clusters/ota-software-update-provider.d.ts.map +1 -1
- package/dist/esm/clusters/ota-software-update-provider.js +51 -25
- package/dist/esm/clusters/ota-software-update-provider.js.map +1 -1
- package/dist/esm/clusters/ota-software-update-requestor.d.ts +72 -72
- package/dist/esm/clusters/ota-software-update-requestor.js +25 -25
- package/dist/esm/clusters/oven-cavity-operational-state.d.ts +16 -16
- package/dist/esm/clusters/oven-cavity-operational-state.js +11 -11
- package/dist/esm/clusters/oven-mode.d.ts +40 -40
- package/dist/esm/clusters/oven-mode.js +5 -5
- package/dist/esm/clusters/power-source-configuration.d.ts +2 -2
- package/dist/esm/clusters/power-source-configuration.js +1 -1
- package/dist/esm/clusters/power-source.d.ts +155 -155
- package/dist/esm/clusters/power-source.js +41 -41
- package/dist/esm/clusters/power-topology.d.ts +8 -8
- package/dist/esm/clusters/power-topology.js +2 -2
- package/dist/esm/clusters/pressure-measurement.d.ts +25 -25
- package/dist/esm/clusters/pressure-measurement.js +9 -9
- package/dist/esm/clusters/proxy-configuration.d.ts +8 -8
- package/dist/esm/clusters/proxy-configuration.js +3 -3
- package/dist/esm/clusters/proxy-discovery.d.ts +10 -10
- package/dist/esm/clusters/proxy-discovery.js +4 -4
- package/dist/esm/clusters/pump-configuration-and-control.d.ts +189 -189
- package/dist/esm/clusters/pump-configuration-and-control.js +57 -57
- package/dist/esm/clusters/refrigerator-alarm.d.ts +43 -43
- package/dist/esm/clusters/refrigerator-alarm.js +11 -11
- package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts +41 -41
- package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js +8 -8
- package/dist/esm/clusters/relative-humidity-measurement.d.ts +5 -5
- package/dist/esm/clusters/relative-humidity-measurement.js +4 -4
- package/dist/esm/clusters/resource-monitoring.d.ts +20 -20
- package/dist/esm/clusters/resource-monitoring.js +7 -7
- package/dist/esm/clusters/rvc-clean-mode.d.ts +48 -48
- package/dist/esm/clusters/rvc-clean-mode.js +9 -9
- package/dist/esm/clusters/rvc-operational-state.d.ts +54 -54
- package/dist/esm/clusters/rvc-operational-state.js +17 -17
- package/dist/esm/clusters/rvc-run-mode.d.ts +55 -55
- package/dist/esm/clusters/rvc-run-mode.js +9 -9
- package/dist/esm/clusters/scenes-management.d.ts +246 -246
- package/dist/esm/clusters/scenes-management.js +70 -70
- package/dist/esm/clusters/service-area.d.ts +128 -128
- package/dist/esm/clusters/service-area.js +26 -26
- package/dist/esm/clusters/smoke-co-alarm.d.ts +137 -137
- package/dist/esm/clusters/smoke-co-alarm.js +30 -30
- package/dist/esm/clusters/software-diagnostics.d.ts +53 -53
- package/dist/esm/clusters/software-diagnostics.js +14 -14
- package/dist/esm/clusters/switch.d.ts +105 -105
- package/dist/esm/clusters/switch.js +23 -23
- package/dist/esm/clusters/target-navigator.d.ts +48 -30
- package/dist/esm/clusters/target-navigator.d.ts.map +1 -1
- package/dist/esm/clusters/target-navigator.js +24 -10
- package/dist/esm/clusters/target-navigator.js.map +1 -1
- package/dist/esm/clusters/temperature-control.d.ts +45 -45
- package/dist/esm/clusters/temperature-control.js +12 -12
- package/dist/esm/clusters/temperature-measurement.d.ts +5 -5
- package/dist/esm/clusters/temperature-measurement.js +4 -4
- package/dist/esm/clusters/thermostat-user-interface-configuration.d.ts +7 -7
- package/dist/esm/clusters/thermostat-user-interface-configuration.js +3 -3
- package/dist/esm/clusters/thermostat.d.ts +515 -515
- package/dist/esm/clusters/thermostat.js +114 -114
- package/dist/esm/clusters/thread-border-router-management.d.ts +58 -58
- package/dist/esm/clusters/thread-border-router-management.js +14 -14
- package/dist/esm/clusters/thread-network-diagnostics.d.ts +359 -359
- package/dist/esm/clusters/thread-network-diagnostics.js +108 -108
- package/dist/esm/clusters/thread-network-directory.d.ts +27 -27
- package/dist/esm/clusters/thread-network-directory.js +11 -11
- package/dist/esm/clusters/time-format-localization.d.ts +12 -12
- package/dist/esm/clusters/time-format-localization.js +3 -3
- package/dist/esm/clusters/time-synchronization.d.ts +255 -245
- package/dist/esm/clusters/time-synchronization.d.ts.map +1 -1
- package/dist/esm/clusters/time-synchronization.js +55 -47
- package/dist/esm/clusters/time-synchronization.js.map +1 -1
- package/dist/esm/clusters/unit-localization.d.ts +6 -6
- package/dist/esm/clusters/unit-localization.js +1 -1
- package/dist/esm/clusters/user-label.d.ts +2 -2
- package/dist/esm/clusters/user-label.js +1 -1
- package/dist/esm/clusters/valid-proxies.d.ts +7 -7
- package/dist/esm/clusters/valid-proxies.js +2 -2
- package/dist/esm/clusters/valve-configuration-and-control.d.ts +90 -80
- package/dist/esm/clusters/valve-configuration-and-control.d.ts.map +1 -1
- package/dist/esm/clusters/valve-configuration-and-control.js +30 -22
- package/dist/esm/clusters/valve-configuration-and-control.js.map +1 -1
- package/dist/esm/clusters/wake-on-lan.d.ts +3 -3
- package/dist/esm/clusters/wake-on-lan.js +2 -2
- package/dist/esm/clusters/water-heater-management.d.ts +91 -91
- package/dist/esm/clusters/water-heater-management.js +16 -16
- package/dist/esm/clusters/water-heater-mode.d.ts +42 -42
- package/dist/esm/clusters/water-heater-mode.js +8 -8
- package/dist/esm/clusters/wi-fi-network-diagnostics.d.ts +69 -69
- package/dist/esm/clusters/wi-fi-network-diagnostics.js +20 -20
- package/dist/esm/clusters/wi-fi-network-management.d.ts +6 -6
- package/dist/esm/clusters/wi-fi-network-management.js +3 -3
- package/dist/esm/clusters/window-covering.d.ts +183 -183
- package/dist/esm/clusters/window-covering.js +49 -49
- package/dist/esm/common/StatusCode.d.ts +2 -11
- package/dist/esm/common/StatusCode.d.ts.map +1 -1
- package/dist/esm/common/StatusCode.js +1 -17
- package/dist/esm/common/StatusCode.js.map +1 -1
- package/dist/esm/common/StatusResponseError.d.ts +21 -0
- package/dist/esm/common/StatusResponseError.d.ts.map +1 -0
- package/dist/esm/common/StatusResponseError.js +34 -0
- package/dist/esm/common/StatusResponseError.js.map +6 -0
- package/dist/esm/common/ValidationError.d.ts +1 -1
- package/dist/esm/common/ValidationError.d.ts.map +1 -1
- package/dist/esm/common/ValidationError.js +2 -1
- package/dist/esm/common/ValidationError.js.map +1 -1
- package/dist/esm/common/index.d.ts +1 -0
- package/dist/esm/common/index.d.ts.map +1 -1
- package/dist/esm/common/index.js +1 -0
- package/dist/esm/common/index.js.map +1 -1
- package/dist/esm/globals/AtomicAttributeStatus.d.ts +4 -4
- package/dist/esm/globals/AtomicAttributeStatus.js +2 -2
- package/dist/esm/globals/AtomicRequestType.d.ts +1 -1
- package/dist/esm/globals/Locationdesc.d.ts +5 -5
- package/dist/esm/globals/Locationdesc.js +3 -3
- package/dist/esm/globals/MeasurementAccuracy.d.ts +5 -5
- package/dist/esm/globals/MeasurementAccuracy.js +3 -3
- package/dist/esm/globals/MeasurementAccuracyRange.d.ts +10 -10
- package/dist/esm/globals/MeasurementAccuracyRange.js +8 -8
- package/dist/esm/globals/MeasurementType.d.ts +1 -1
- package/dist/esm/globals/Priority.d.ts +1 -1
- package/dist/esm/globals/Semtag.d.ts +6 -6
- package/dist/esm/globals/Semtag.js +4 -4
- package/dist/esm/globals/SoftwareVersionCertificationStatus.d.ts +1 -1
- package/dist/esm/globals/Status.d.ts +33 -33
- package/dist/esm/globals/Tod.d.ts +2 -2
- package/dist/esm/globals/WildcardPathFlags.d.ts +1 -1
- package/package.json +5 -5
- package/src/clusters/access-control.ts +72 -72
- package/src/clusters/account-login.ts +22 -22
- package/src/clusters/actions.ts +86 -86
- package/src/clusters/administrator-commissioning.ts +67 -20
- package/src/clusters/air-quality.ts +4 -4
- package/src/clusters/alarm-base.ts +22 -22
- package/src/clusters/application-basic.ts +14 -14
- package/src/clusters/application-launcher.ts +105 -28
- package/src/clusters/audio-output.ts +17 -17
- package/src/clusters/ballast-configuration.ts +20 -20
- package/src/clusters/basic-information.ts +47 -47
- package/src/clusters/binding.ts +8 -8
- package/src/clusters/boolean-state-configuration.ts +31 -31
- package/src/clusters/boolean-state.ts +6 -6
- package/src/clusters/bridged-device-basic-information.ts +38 -38
- package/src/clusters/channel.ts +143 -111
- package/src/clusters/color-control.ts +168 -168
- package/src/clusters/commissioner-control.ts +15 -15
- package/src/clusters/concentration-measurement.ts +15 -15
- package/src/clusters/content-app-observer.ts +29 -12
- package/src/clusters/content-control.ts +248 -96
- package/src/clusters/content-launcher.ts +131 -69
- package/src/clusters/descriptor.ts +13 -13
- package/src/clusters/device-energy-management-mode.ts +28 -28
- package/src/clusters/device-energy-management.ts +136 -136
- package/src/clusters/diagnostic-logs.ts +88 -26
- package/src/clusters/dishwasher-alarm.ts +24 -24
- package/src/clusters/dishwasher-mode.ts +27 -27
- package/src/clusters/door-lock.ts +408 -377
- package/src/clusters/ecosystem-information.ts +17 -17
- package/src/clusters/electrical-energy-measurement.ts +39 -39
- package/src/clusters/electrical-power-measurement.ts +53 -53
- package/src/clusters/energy-evse-mode.ts +28 -28
- package/src/clusters/energy-evse.ts +109 -109
- package/src/clusters/energy-preference.ts +19 -19
- package/src/clusters/ethernet-network-diagnostics.ts +13 -13
- package/src/clusters/fan-control.ts +30 -30
- package/src/clusters/fixed-label.ts +2 -2
- package/src/clusters/flow-measurement.ts +5 -5
- package/src/clusters/general-commissioning.ts +45 -45
- package/src/clusters/general-diagnostics.ts +66 -66
- package/src/clusters/group-key-management.ts +45 -45
- package/src/clusters/groups.ts +44 -44
- package/src/clusters/icd-management.ts +50 -50
- package/src/clusters/identify.ts +14 -14
- package/src/clusters/illuminance-measurement.ts +7 -7
- package/src/clusters/joint-fabric-datastore.ts +82 -82
- package/src/clusters/joint-fabric-pki.ts +12 -12
- package/src/clusters/keypad-input.ts +43 -11
- package/src/clusters/label.ts +5 -5
- package/src/clusters/laundry-dryer-controls.ts +4 -4
- package/src/clusters/laundry-washer-controls.ts +11 -11
- package/src/clusters/laundry-washer-mode.ts +25 -25
- package/src/clusters/level-control.ts +49 -49
- package/src/clusters/localization-configuration.ts +3 -3
- package/src/clusters/low-power.ts +2 -2
- package/src/clusters/media-input.ts +20 -20
- package/src/clusters/media-playback.ts +168 -91
- package/src/clusters/messages.ts +61 -61
- package/src/clusters/microwave-oven-control.ts +23 -23
- package/src/clusters/microwave-oven-mode.ts +25 -25
- package/src/clusters/mode-base.ts +37 -37
- package/src/clusters/mode-select.ts +22 -22
- package/src/clusters/network-commissioning.ts +76 -76
- package/src/clusters/occupancy-sensing.ts +29 -29
- package/src/clusters/on-off.ts +33 -33
- package/src/clusters/operational-credentials.ts +65 -65
- package/src/clusters/operational-state.ts +34 -34
- package/src/clusters/ota-software-update-provider.ts +101 -39
- package/src/clusters/ota-software-update-requestor.ts +55 -55
- package/src/clusters/oven-cavity-operational-state.ts +14 -14
- package/src/clusters/oven-mode.ts +31 -31
- package/src/clusters/power-source-configuration.ts +2 -2
- package/src/clusters/power-source.ts +59 -59
- package/src/clusters/power-topology.ts +4 -4
- package/src/clusters/pressure-measurement.ts +11 -11
- package/src/clusters/proxy-configuration.ts +6 -6
- package/src/clusters/proxy-discovery.ts +7 -7
- package/src/clusters/pump-configuration-and-control.ts +69 -69
- package/src/clusters/refrigerator-alarm.ts +18 -18
- package/src/clusters/refrigerator-and-temperature-controlled-cabinet-mode.ts +26 -26
- package/src/clusters/relative-humidity-measurement.ts +5 -5
- package/src/clusters/resource-monitoring.ts +13 -13
- package/src/clusters/rvc-clean-mode.ts +31 -31
- package/src/clusters/rvc-operational-state.ts +28 -28
- package/src/clusters/rvc-run-mode.ts +38 -38
- package/src/clusters/scenes-management.ts +112 -112
- package/src/clusters/service-area.ts +50 -50
- package/src/clusters/smoke-co-alarm.ts +68 -68
- package/src/clusters/software-diagnostics.ts +20 -20
- package/src/clusters/switch.ts +45 -45
- package/src/clusters/target-navigator.ts +52 -20
- package/src/clusters/temperature-control.ts +19 -19
- package/src/clusters/temperature-measurement.ts +5 -5
- package/src/clusters/thermostat-user-interface-configuration.ts +7 -7
- package/src/clusters/thermostat.ts +172 -172
- package/src/clusters/thread-border-router-management.ts +23 -23
- package/src/clusters/thread-network-diagnostics.ts +125 -125
- package/src/clusters/thread-network-directory.ts +22 -22
- package/src/clusters/time-format-localization.ts +7 -7
- package/src/clusters/time-synchronization.ts +98 -81
- package/src/clusters/unit-localization.ts +4 -4
- package/src/clusters/user-label.ts +2 -2
- package/src/clusters/valid-proxies.ts +7 -7
- package/src/clusters/valve-configuration-and-control.ts +52 -35
- package/src/clusters/wake-on-lan.ts +3 -3
- package/src/clusters/water-heater-management.ts +26 -26
- package/src/clusters/water-heater-mode.ts +27 -27
- package/src/clusters/wi-fi-network-diagnostics.ts +32 -32
- package/src/clusters/wi-fi-network-management.ts +6 -6
- package/src/clusters/window-covering.ts +68 -68
- package/src/common/StatusCode.ts +3 -21
- package/src/common/StatusResponseError.ts +41 -0
- package/src/common/ValidationError.ts +2 -1
- package/src/common/index.ts +1 -0
- package/src/globals/AtomicAttributeStatus.ts +4 -4
- package/src/globals/AtomicRequestType.ts +1 -1
- package/src/globals/Locationdesc.ts +5 -5
- package/src/globals/MeasurementAccuracy.ts +5 -5
- package/src/globals/MeasurementAccuracyRange.ts +10 -10
- package/src/globals/MeasurementType.ts +1 -1
- package/src/globals/Priority.ts +1 -1
- package/src/globals/Semtag.ts +6 -6
- package/src/globals/SoftwareVersionCertificationStatus.ts +1 -1
- package/src/globals/Status.ts +33 -33
- package/src/globals/Tod.ts +2 -2
- package/src/globals/WildcardPathFlags.ts +1 -1
|
@@ -32,6 +32,7 @@ import { Status } from "../globals/Status.js";
|
|
|
32
32
|
import { TlvBoolean } from "../tlv/TlvBoolean.js";
|
|
33
33
|
import { TlvNodeId } from "../datatype/NodeId.js";
|
|
34
34
|
import { TlvNoArguments } from "../tlv/TlvNoArguments.js";
|
|
35
|
+
import { StatusResponseError } from "../common/StatusResponseError.js";
|
|
35
36
|
import { ClusterType } from "../cluster/ClusterType.js";
|
|
36
37
|
import { Identity } from "#general";
|
|
37
38
|
import { ClusterRegistry } from "../cluster/ClusterRegistry.js";
|
|
@@ -40,7 +41,7 @@ export namespace DoorLock {
|
|
|
40
41
|
/**
|
|
41
42
|
* These are optional features supported by DoorLockCluster.
|
|
42
43
|
*
|
|
43
|
-
* @see {@link MatterSpecification.
|
|
44
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4
|
|
44
45
|
*/
|
|
45
46
|
export enum Feature {
|
|
46
47
|
/**
|
|
@@ -52,7 +53,7 @@ export namespace DoorLock {
|
|
|
52
53
|
* Schedules are all associated with a User index and not directly with a PIN index. A User index may have
|
|
53
54
|
* several credentials associated with it.
|
|
54
55
|
*
|
|
55
|
-
* @see {@link MatterSpecification.
|
|
56
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.1
|
|
56
57
|
*/
|
|
57
58
|
PinCredential = "PinCredential",
|
|
58
59
|
|
|
@@ -66,7 +67,7 @@ export namespace DoorLock {
|
|
|
66
67
|
* Schedules are all associated with a User index and not directly with a RFID index. A User Index may have
|
|
67
68
|
* several credentials associated with it.
|
|
68
69
|
*
|
|
69
|
-
* @see {@link MatterSpecification.
|
|
70
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.2
|
|
70
71
|
*/
|
|
71
72
|
RfidCredential = "RfidCredential",
|
|
72
73
|
|
|
@@ -82,7 +83,7 @@ export namespace DoorLock {
|
|
|
82
83
|
* Schedules are all associated with a User index and not directly with a Finger index. A User Index may have
|
|
83
84
|
* several credentials associated with it.
|
|
84
85
|
*
|
|
85
|
-
* @see {@link MatterSpecification.
|
|
86
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.3
|
|
86
87
|
*/
|
|
87
88
|
FingerCredentials = "FingerCredentials",
|
|
88
89
|
|
|
@@ -98,7 +99,7 @@ export namespace DoorLock {
|
|
|
98
99
|
*
|
|
99
100
|
* Support for WeekDayAccessSchedules requires that the lock has the capability of keeping track of local time.
|
|
100
101
|
*
|
|
101
|
-
* @see {@link MatterSpecification.
|
|
102
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.4
|
|
102
103
|
*/
|
|
103
104
|
WeekDayAccessSchedules = "WeekDayAccessSchedules",
|
|
104
105
|
|
|
@@ -108,7 +109,7 @@ export namespace DoorLock {
|
|
|
108
109
|
* If this feature is supported this indicates that the lock has the ability to determine the position of the
|
|
109
110
|
* door which is separate from the state of the lock.
|
|
110
111
|
*
|
|
111
|
-
* @see {@link MatterSpecification.
|
|
112
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.5
|
|
112
113
|
*/
|
|
113
114
|
DoorPositionSensor = "DoorPositionSensor",
|
|
114
115
|
|
|
@@ -123,7 +124,7 @@ export namespace DoorLock {
|
|
|
123
124
|
* A lock may support multiple credential types so if the User feature is supported the UserType, UserStatus and
|
|
124
125
|
* Schedules are all associated with a User and not directly with a credential.
|
|
125
126
|
*
|
|
126
|
-
* @see {@link MatterSpecification.
|
|
127
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.6
|
|
127
128
|
*/
|
|
128
129
|
FaceCredentials = "FaceCredentials",
|
|
129
130
|
|
|
@@ -134,7 +135,7 @@ export namespace DoorLock {
|
|
|
134
135
|
* lock/unlock command. Currently the cluster only supports providing the PIN credential to the lock/unlock
|
|
135
136
|
* commands. If this feature is supported then the PIN Credential feature shall also be supported.
|
|
136
137
|
*
|
|
137
|
-
* @see {@link MatterSpecification.
|
|
138
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.7
|
|
138
139
|
*/
|
|
139
140
|
CredentialOverTheAirAccess = "CredentialOverTheAirAccess",
|
|
140
141
|
|
|
@@ -145,7 +146,7 @@ export namespace DoorLock {
|
|
|
145
146
|
* to associate credentials and schedules to single user record within the lock. This also means the UserType
|
|
146
147
|
* and UserStatus fields are associated with a User and not a credential.
|
|
147
148
|
*
|
|
148
|
-
* @see {@link MatterSpecification.
|
|
149
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.8
|
|
149
150
|
*/
|
|
150
151
|
User = "User",
|
|
151
152
|
|
|
@@ -159,7 +160,7 @@ export namespace DoorLock {
|
|
|
159
160
|
*
|
|
160
161
|
* Support for YearDayAccessSchedules requires that the lock has the capability of keeping track of local time.
|
|
161
162
|
*
|
|
162
|
-
* @see {@link MatterSpecification.
|
|
163
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.9
|
|
163
164
|
*/
|
|
164
165
|
YearDayAccessSchedules = "YearDayAccessSchedules",
|
|
165
166
|
|
|
@@ -171,7 +172,7 @@ export namespace DoorLock {
|
|
|
171
172
|
*
|
|
172
173
|
* Support for HolidaySchedules requires that the lock has the capability of keeping track of local time.
|
|
173
174
|
*
|
|
174
|
-
* @see {@link MatterSpecification.
|
|
175
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.10
|
|
175
176
|
*/
|
|
176
177
|
HolidaySchedules = "HolidaySchedules",
|
|
177
178
|
|
|
@@ -184,7 +185,7 @@ export namespace DoorLock {
|
|
|
184
185
|
* without unbolting support don’t differentiate between unbolting and unlocking and perform the same operation
|
|
185
186
|
* for both commands.
|
|
186
187
|
*
|
|
187
|
-
* @see {@link MatterSpecification.
|
|
188
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.11
|
|
188
189
|
*/
|
|
189
190
|
Unbolting = "Unbolting",
|
|
190
191
|
|
|
@@ -194,7 +195,7 @@ export namespace DoorLock {
|
|
|
194
195
|
* Locks that support this feature implement the Aliro specification as defined in [Aliro] and support Matter as
|
|
195
196
|
* a method for provisioning Aliro credentials.
|
|
196
197
|
*
|
|
197
|
-
* @see {@link MatterSpecification.
|
|
198
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.12
|
|
198
199
|
*/
|
|
199
200
|
AliroProvisioning = "AliroProvisioning",
|
|
200
201
|
|
|
@@ -203,7 +204,7 @@ export namespace DoorLock {
|
|
|
203
204
|
*
|
|
204
205
|
* Locks that support this feature implement the Bluetooth LE + UWB Access Control Flow as defined in [Aliro].
|
|
205
206
|
*
|
|
206
|
-
* @see {@link MatterSpecification.
|
|
207
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.13
|
|
207
208
|
*/
|
|
208
209
|
AliroBleuwb = "AliroBleuwb"
|
|
209
210
|
}
|
|
@@ -211,7 +212,7 @@ export namespace DoorLock {
|
|
|
211
212
|
/**
|
|
212
213
|
* This enumeration shall indicate the current door state.
|
|
213
214
|
*
|
|
214
|
-
* @see {@link MatterSpecification.
|
|
215
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.11
|
|
215
216
|
*/
|
|
216
217
|
export enum DoorState {
|
|
217
218
|
/**
|
|
@@ -248,13 +249,13 @@ export namespace DoorLock {
|
|
|
248
249
|
/**
|
|
249
250
|
* Body of the DoorLock doorStateChange event
|
|
250
251
|
*
|
|
251
|
-
* @see {@link MatterSpecification.
|
|
252
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.2
|
|
252
253
|
*/
|
|
253
254
|
export const TlvDoorStateChangeEvent = TlvObject({
|
|
254
255
|
/**
|
|
255
256
|
* This field shall indicate the new door state for this door event.
|
|
256
257
|
*
|
|
257
|
-
* @see {@link MatterSpecification.
|
|
258
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.2.1
|
|
258
259
|
*/
|
|
259
260
|
doorState: TlvField(0, TlvEnum<DoorState>())
|
|
260
261
|
});
|
|
@@ -262,12 +263,12 @@ export namespace DoorLock {
|
|
|
262
263
|
/**
|
|
263
264
|
* Body of the DoorLock doorStateChange event
|
|
264
265
|
*
|
|
265
|
-
* @see {@link MatterSpecification.
|
|
266
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.2
|
|
266
267
|
*/
|
|
267
268
|
export interface DoorStateChangeEvent extends TypeFromSchema<typeof TlvDoorStateChangeEvent> {}
|
|
268
269
|
|
|
269
270
|
/**
|
|
270
|
-
* @see {@link MatterSpecification.
|
|
271
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.2
|
|
271
272
|
*/
|
|
272
273
|
export const CredentialRules = {
|
|
273
274
|
/**
|
|
@@ -289,7 +290,7 @@ export namespace DoorLock {
|
|
|
289
290
|
/**
|
|
290
291
|
* This enumeration shall indicate the data operation performed.
|
|
291
292
|
*
|
|
292
|
-
* @see {@link MatterSpecification.
|
|
293
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.10
|
|
293
294
|
*/
|
|
294
295
|
export enum DataOperationType {
|
|
295
296
|
/**
|
|
@@ -311,7 +312,7 @@ export namespace DoorLock {
|
|
|
311
312
|
/**
|
|
312
313
|
* This enumeration shall indicate what the status is for a specific user ID.
|
|
313
314
|
*
|
|
314
|
-
* @see {@link MatterSpecification.
|
|
315
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.17
|
|
315
316
|
*/
|
|
316
317
|
export enum UserStatus {
|
|
317
318
|
/**
|
|
@@ -333,7 +334,7 @@ export namespace DoorLock {
|
|
|
333
334
|
/**
|
|
334
335
|
* This enumeration shall indicate what the type is for a specific user ID.
|
|
335
336
|
*
|
|
336
|
-
* @see {@link MatterSpecification.
|
|
337
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18
|
|
337
338
|
*/
|
|
338
339
|
export enum UserType {
|
|
339
340
|
/**
|
|
@@ -341,7 +342,7 @@ export namespace DoorLock {
|
|
|
341
342
|
*
|
|
342
343
|
* This value shall indicate the user has access 24/7 provided proper PIN or RFID is supplied (e.g., owner).
|
|
343
344
|
*
|
|
344
|
-
* @see {@link MatterSpecification.
|
|
345
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18.1
|
|
345
346
|
*/
|
|
346
347
|
UnrestrictedUser = 0,
|
|
347
348
|
|
|
@@ -358,7 +359,7 @@ export namespace DoorLock {
|
|
|
358
359
|
* falls within at least one of the YearDaySchedules. If current time is not known, user access shall NOT be
|
|
359
360
|
* granted.
|
|
360
361
|
*
|
|
361
|
-
* @see {@link MatterSpecification.
|
|
362
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18.2
|
|
362
363
|
*/
|
|
363
364
|
YearDayScheduleUser = 1,
|
|
364
365
|
|
|
@@ -376,7 +377,7 @@ export namespace DoorLock {
|
|
|
376
377
|
* falls within at least one of the WeekDaySchedules. If current time is not known, user access shall NOT be
|
|
377
378
|
* granted.
|
|
378
379
|
*
|
|
379
|
-
* @see {@link MatterSpecification.
|
|
380
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18.3
|
|
380
381
|
*/
|
|
381
382
|
WeekDayScheduleUser = 2,
|
|
382
383
|
|
|
@@ -387,7 +388,7 @@ export namespace DoorLock {
|
|
|
387
388
|
* manage the users and user schedules. In all other respects this user matches the unrestricted (default) user.
|
|
388
389
|
* ProgrammingUser is the only user that can disable the user interface (keypad, remote, etc…).
|
|
389
390
|
*
|
|
390
|
-
* @see {@link MatterSpecification.
|
|
391
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18.4
|
|
391
392
|
*/
|
|
392
393
|
ProgrammingUser = 3,
|
|
393
394
|
|
|
@@ -397,7 +398,7 @@ export namespace DoorLock {
|
|
|
397
398
|
* This value shall indicate the user is recognized by the lock but does not have the ability to open the lock.
|
|
398
399
|
* This user will only cause the lock to generate the appropriate event notification to any bound devices.
|
|
399
400
|
*
|
|
400
|
-
* @see {@link MatterSpecification.
|
|
401
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18.5
|
|
401
402
|
*/
|
|
402
403
|
NonAccessUser = 4,
|
|
403
404
|
|
|
@@ -408,7 +409,7 @@ export namespace DoorLock {
|
|
|
408
409
|
* ForcedUser silent alarm will be emitted to allow a notified Node to alert emergency services or contacts on
|
|
409
410
|
* the user account when used.
|
|
410
411
|
*
|
|
411
|
-
* @see {@link MatterSpecification.
|
|
412
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18.6
|
|
412
413
|
*/
|
|
413
414
|
ForcedUser = 5,
|
|
414
415
|
|
|
@@ -418,7 +419,7 @@ export namespace DoorLock {
|
|
|
418
419
|
* This value shall indicate the user has the ability to open lock once after which the lock shall change the
|
|
419
420
|
* corresponding user record UserStatus value to OccupiedDisabled automatically.
|
|
420
421
|
*
|
|
421
|
-
* @see {@link MatterSpecification.
|
|
422
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18.7
|
|
422
423
|
*/
|
|
423
424
|
DisposableUser = 6,
|
|
424
425
|
|
|
@@ -430,7 +431,7 @@ export namespace DoorLock {
|
|
|
430
431
|
* minutes the corresponding user record UserStatus value shall be set to OccupiedDisabled automatically by the
|
|
431
432
|
* lock. The lock shall persist the timeout across reboots such that the ExpiringUserTimeout is honored.
|
|
432
433
|
*
|
|
433
|
-
* @see {@link MatterSpecification.
|
|
434
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18.8
|
|
434
435
|
*/
|
|
435
436
|
ExpiringUser = 7,
|
|
436
437
|
|
|
@@ -452,7 +453,7 @@ export namespace DoorLock {
|
|
|
452
453
|
* granted if and only if the current time falls within at least one of the WeekDaySchedules AND the current
|
|
453
454
|
* time falls within at least one of the YearDaySchedules.
|
|
454
455
|
*
|
|
455
|
-
* @see {@link MatterSpecification.
|
|
456
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18.9
|
|
456
457
|
*/
|
|
457
458
|
ScheduleRestrictedUser = 8,
|
|
458
459
|
|
|
@@ -464,7 +465,7 @@ export namespace DoorLock {
|
|
|
464
465
|
* prevent a PIN code credential created for them from being used at the keypad. The PIN code credential would
|
|
465
466
|
* only be provided over-the-air for the lock/unlock commands.
|
|
466
467
|
*
|
|
467
|
-
* @see {@link MatterSpecification.
|
|
468
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.18.10
|
|
468
469
|
*/
|
|
469
470
|
RemoteOnlyUser = 9
|
|
470
471
|
}
|
|
@@ -472,7 +473,7 @@ export namespace DoorLock {
|
|
|
472
473
|
/**
|
|
473
474
|
* This enumeration shall indicate the credential rule that can be applied to a particular user.
|
|
474
475
|
*
|
|
475
|
-
* @see {@link MatterSpecification.
|
|
476
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.8
|
|
476
477
|
*/
|
|
477
478
|
export enum CredentialRule {
|
|
478
479
|
/**
|
|
@@ -494,20 +495,20 @@ export namespace DoorLock {
|
|
|
494
495
|
/**
|
|
495
496
|
* Input to the DoorLock setUser command
|
|
496
497
|
*
|
|
497
|
-
* @see {@link MatterSpecification.
|
|
498
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.32
|
|
498
499
|
*/
|
|
499
500
|
export const TlvSetUserRequest = TlvObject({
|
|
500
501
|
/**
|
|
501
502
|
* This field shall indicate the type of operation.
|
|
502
503
|
*
|
|
503
|
-
* @see {@link MatterSpecification.
|
|
504
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.32.1
|
|
504
505
|
*/
|
|
505
506
|
operationType: TlvField(0, TlvEnum<DataOperationType>()),
|
|
506
507
|
|
|
507
508
|
/**
|
|
508
509
|
* This field shall indicate the user ID.
|
|
509
510
|
*
|
|
510
|
-
* @see {@link MatterSpecification.
|
|
511
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.32.2
|
|
511
512
|
*/
|
|
512
513
|
userIndex: TlvField(1, TlvUInt16.bound({ min: 1 })),
|
|
513
514
|
|
|
@@ -522,7 +523,7 @@ export namespace DoorLock {
|
|
|
522
523
|
*
|
|
523
524
|
* If UserName is not null, the UserName in the user record shall be set to the provided value.
|
|
524
525
|
*
|
|
525
|
-
* @see {@link MatterSpecification.
|
|
526
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.32.3
|
|
526
527
|
*/
|
|
527
528
|
userName: TlvField(2, TlvNullable(TlvString.bound({ maxLength: 10 }))),
|
|
528
529
|
|
|
@@ -540,7 +541,7 @@ export namespace DoorLock {
|
|
|
540
541
|
*
|
|
541
542
|
* If UserUniqueID is not null, the UserUniqueID in the user record shall be set to the provided value.
|
|
542
543
|
*
|
|
543
|
-
* @see {@link MatterSpecification.
|
|
544
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.32.4
|
|
544
545
|
*/
|
|
545
546
|
userUniqueId: TlvField(3, TlvNullable(TlvUInt32)),
|
|
546
547
|
|
|
@@ -556,7 +557,7 @@ export namespace DoorLock {
|
|
|
556
557
|
*
|
|
557
558
|
* If UserStatus is not null, the UserStatus in the user record shall be set to the provided value.
|
|
558
559
|
*
|
|
559
|
-
* @see {@link MatterSpecification.
|
|
560
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.32.5
|
|
560
561
|
*/
|
|
561
562
|
userStatus: TlvField(4, TlvNullable(TlvEnum<UserStatus>())),
|
|
562
563
|
|
|
@@ -572,7 +573,7 @@ export namespace DoorLock {
|
|
|
572
573
|
*
|
|
573
574
|
* If UserType is not null, the UserType in the user record shall be set to the provided value.
|
|
574
575
|
*
|
|
575
|
-
* @see {@link MatterSpecification.
|
|
576
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.32.6
|
|
576
577
|
*/
|
|
577
578
|
userType: TlvField(5, TlvNullable(TlvEnum<UserType>())),
|
|
578
579
|
|
|
@@ -592,7 +593,7 @@ export namespace DoorLock {
|
|
|
592
593
|
*
|
|
593
594
|
* If CredentialRule is not null, the CredentialRule in the user record shall be set to the provided value.
|
|
594
595
|
*
|
|
595
|
-
* @see {@link MatterSpecification.
|
|
596
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.32.7
|
|
596
597
|
*/
|
|
597
598
|
credentialRule: TlvField(6, TlvNullable(TlvEnum<CredentialRule>()))
|
|
598
599
|
});
|
|
@@ -600,28 +601,28 @@ export namespace DoorLock {
|
|
|
600
601
|
/**
|
|
601
602
|
* Input to the DoorLock setUser command
|
|
602
603
|
*
|
|
603
|
-
* @see {@link MatterSpecification.
|
|
604
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.32
|
|
604
605
|
*/
|
|
605
606
|
export interface SetUserRequest extends TypeFromSchema<typeof TlvSetUserRequest> {}
|
|
606
607
|
|
|
607
608
|
/**
|
|
608
609
|
* Input to the DoorLock getUser command
|
|
609
610
|
*
|
|
610
|
-
* @see {@link MatterSpecification.
|
|
611
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.33
|
|
611
612
|
*/
|
|
612
613
|
export const TlvGetUserRequest = TlvObject({ userIndex: TlvField(0, TlvUInt16.bound({ min: 1 })) });
|
|
613
614
|
|
|
614
615
|
/**
|
|
615
616
|
* Input to the DoorLock getUser command
|
|
616
617
|
*
|
|
617
|
-
* @see {@link MatterSpecification.
|
|
618
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.33
|
|
618
619
|
*/
|
|
619
620
|
export interface GetUserRequest extends TypeFromSchema<typeof TlvGetUserRequest> {}
|
|
620
621
|
|
|
621
622
|
/**
|
|
622
623
|
* This enumeration shall indicate the credential type.
|
|
623
624
|
*
|
|
624
|
-
* @see {@link MatterSpecification.
|
|
625
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.9
|
|
625
626
|
*/
|
|
626
627
|
export enum CredentialType {
|
|
627
628
|
/**
|
|
@@ -690,7 +691,7 @@ export namespace DoorLock {
|
|
|
690
691
|
* created, the credential associated with the changes in the LockOperation events shall be the
|
|
691
692
|
* AliroCredentialIssuerKey credential used for the step-up.
|
|
692
693
|
*
|
|
693
|
-
* @see {@link MatterSpecification.
|
|
694
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.9.1
|
|
694
695
|
*/
|
|
695
696
|
AliroCredentialIssuerKey = 6,
|
|
696
697
|
|
|
@@ -700,7 +701,7 @@ export namespace DoorLock {
|
|
|
700
701
|
* Credentials of this type shall be 65-byte uncompressed elliptic curve public keys as defined in section 2.3.3
|
|
701
702
|
* of SEC 1.
|
|
702
703
|
*
|
|
703
|
-
* @see {@link MatterSpecification.
|
|
704
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.9.2
|
|
704
705
|
*/
|
|
705
706
|
AliroEvictableEndpointKey = 7,
|
|
706
707
|
|
|
@@ -711,7 +712,7 @@ export namespace DoorLock {
|
|
|
711
712
|
* Credentials of this type shall be 65-byte uncompressed elliptic curve public keys as defined in section 2.3.3
|
|
712
713
|
* of SEC 1.
|
|
713
714
|
*
|
|
714
|
-
* @see {@link MatterSpecification.
|
|
715
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.9.3
|
|
715
716
|
*/
|
|
716
717
|
AliroNonEvictableEndpointKey = 8
|
|
717
718
|
}
|
|
@@ -720,13 +721,13 @@ export namespace DoorLock {
|
|
|
720
721
|
* This struct shall indicate the credential types and their corresponding indices (if any) for the event or user
|
|
721
722
|
* record.
|
|
722
723
|
*
|
|
723
|
-
* @see {@link MatterSpecification.
|
|
724
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.24
|
|
724
725
|
*/
|
|
725
726
|
export const TlvCredential = TlvObject({
|
|
726
727
|
/**
|
|
727
728
|
* This field shall indicate the credential field used to authorize the lock operation.
|
|
728
729
|
*
|
|
729
|
-
* @see {@link MatterSpecification.
|
|
730
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.24.1
|
|
730
731
|
*/
|
|
731
732
|
credentialType: TlvField(0, TlvEnum<CredentialType>()),
|
|
732
733
|
|
|
@@ -735,7 +736,7 @@ export namespace DoorLock {
|
|
|
735
736
|
* list of credentials identified by CredentialType (e.g. PIN, RFID, etc.). This field shall be set to 0 if
|
|
736
737
|
* CredentialType is ProgrammingPIN or does not correspond to a list that can be indexed into.
|
|
737
738
|
*
|
|
738
|
-
* @see {@link MatterSpecification.
|
|
739
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.24.2
|
|
739
740
|
*/
|
|
740
741
|
credentialIndex: TlvField(1, TlvUInt16)
|
|
741
742
|
});
|
|
@@ -744,7 +745,7 @@ export namespace DoorLock {
|
|
|
744
745
|
* This struct shall indicate the credential types and their corresponding indices (if any) for the event or user
|
|
745
746
|
* record.
|
|
746
747
|
*
|
|
747
|
-
* @see {@link MatterSpecification.
|
|
748
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.24
|
|
748
749
|
*/
|
|
749
750
|
export interface Credential extends TypeFromSchema<typeof TlvCredential> {}
|
|
750
751
|
|
|
@@ -755,55 +756,55 @@ export namespace DoorLock {
|
|
|
755
756
|
* UserUniqueID, UserStatus, UserType, CredentialRule, Credentials, CreatorFabricIndex, and LastModifiedFabricIndex
|
|
756
757
|
* shall all be null in the response.
|
|
757
758
|
*
|
|
758
|
-
* @see {@link MatterSpecification.
|
|
759
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34
|
|
759
760
|
*/
|
|
760
761
|
export const TlvGetUserResponse = TlvObject({
|
|
761
762
|
/**
|
|
762
763
|
* This field shall indicate the user ID.
|
|
763
764
|
*
|
|
764
|
-
* @see {@link MatterSpecification.
|
|
765
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34.1
|
|
765
766
|
*/
|
|
766
767
|
userIndex: TlvField(0, TlvUInt16.bound({ min: 1 })),
|
|
767
768
|
|
|
768
769
|
/**
|
|
769
770
|
* This field shall contain a string to use as a human readable identifier for the user.
|
|
770
771
|
*
|
|
771
|
-
* @see {@link MatterSpecification.
|
|
772
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34.2
|
|
772
773
|
*/
|
|
773
774
|
userName: TlvField(1, TlvNullable(TlvString.bound({ maxLength: 10 }))),
|
|
774
775
|
|
|
775
776
|
/**
|
|
776
777
|
* See UserUniqueID field.
|
|
777
778
|
*
|
|
778
|
-
* @see {@link MatterSpecification.
|
|
779
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34.3
|
|
779
780
|
*/
|
|
780
781
|
userUniqueId: TlvField(2, TlvNullable(TlvUInt32)),
|
|
781
782
|
|
|
782
783
|
/**
|
|
783
784
|
* This field shall indicate the UserStatus assigned to the user when created or modified.
|
|
784
785
|
*
|
|
785
|
-
* @see {@link MatterSpecification.
|
|
786
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34.4
|
|
786
787
|
*/
|
|
787
788
|
userStatus: TlvField(3, TlvNullable(TlvEnum<UserStatus>())),
|
|
788
789
|
|
|
789
790
|
/**
|
|
790
791
|
* This field shall indicate the UserType assigned to this user when created or modified.
|
|
791
792
|
*
|
|
792
|
-
* @see {@link MatterSpecification.
|
|
793
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34.5
|
|
793
794
|
*/
|
|
794
795
|
userType: TlvField(4, TlvNullable(TlvEnum<UserType>())),
|
|
795
796
|
|
|
796
797
|
/**
|
|
797
798
|
* This field shall indicate the CredentialRule set for this user.
|
|
798
799
|
*
|
|
799
|
-
* @see {@link MatterSpecification.
|
|
800
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34.6
|
|
800
801
|
*/
|
|
801
802
|
credentialRule: TlvField(5, TlvNullable(TlvEnum<CredentialRule>())),
|
|
802
803
|
|
|
803
804
|
/**
|
|
804
805
|
* This field shall contain a list of credentials for this user.
|
|
805
806
|
*
|
|
806
|
-
* @see {@link MatterSpecification.
|
|
807
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34.7
|
|
807
808
|
*/
|
|
808
809
|
credentials: TlvField(6, TlvNullable(TlvArray(TlvCredential, { minLength: 0 }))),
|
|
809
810
|
|
|
@@ -813,7 +814,7 @@ export namespace DoorLock {
|
|
|
813
814
|
* the Interaction Model) and shall NOT be null otherwise. This value shall be set to 0 if the original creator
|
|
814
815
|
* fabric was deleted.
|
|
815
816
|
*
|
|
816
|
-
* @see {@link MatterSpecification.
|
|
817
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34.8
|
|
817
818
|
*/
|
|
818
819
|
creatorFabricIndex: TlvField(7, TlvNullable(TlvFabricIndex)),
|
|
819
820
|
|
|
@@ -823,7 +824,7 @@ export namespace DoorLock {
|
|
|
823
824
|
* modified outside the Interaction Model) and shall NOT be null otherwise. This value shall be set to 0 if the
|
|
824
825
|
* last modifier fabric was deleted.
|
|
825
826
|
*
|
|
826
|
-
* @see {@link MatterSpecification.
|
|
827
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34.9
|
|
827
828
|
*/
|
|
828
829
|
lastModifiedFabricIndex: TlvField(8, TlvNullable(TlvFabricIndex)),
|
|
829
830
|
|
|
@@ -832,7 +833,7 @@ export namespace DoorLock {
|
|
|
832
833
|
* occupied user slots in the database. This shall NOT be null if there is at least one occupied entry after the
|
|
833
834
|
* requested UserIndex in the User database and shall be null if there are no more occupied entries.
|
|
834
835
|
*
|
|
835
|
-
* @see {@link MatterSpecification.
|
|
836
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34.10
|
|
836
837
|
*/
|
|
837
838
|
nextUserIndex: TlvField(9, TlvNullable(TlvUInt16.bound({ min: 1 })))
|
|
838
839
|
});
|
|
@@ -844,20 +845,20 @@ export namespace DoorLock {
|
|
|
844
845
|
* UserUniqueID, UserStatus, UserType, CredentialRule, Credentials, CreatorFabricIndex, and LastModifiedFabricIndex
|
|
845
846
|
* shall all be null in the response.
|
|
846
847
|
*
|
|
847
|
-
* @see {@link MatterSpecification.
|
|
848
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.34
|
|
848
849
|
*/
|
|
849
850
|
export interface GetUserResponse extends TypeFromSchema<typeof TlvGetUserResponse> {}
|
|
850
851
|
|
|
851
852
|
/**
|
|
852
853
|
* Input to the DoorLock clearUser command
|
|
853
854
|
*
|
|
854
|
-
* @see {@link MatterSpecification.
|
|
855
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.35
|
|
855
856
|
*/
|
|
856
857
|
export const TlvClearUserRequest = TlvObject({
|
|
857
858
|
/**
|
|
858
859
|
* This field shall specify a valid User index or 0xFFFE to indicate all user slots shall be cleared.
|
|
859
860
|
*
|
|
860
|
-
* @see {@link MatterSpecification.
|
|
861
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.35.1
|
|
861
862
|
*/
|
|
862
863
|
userIndex: TlvField(0, TlvUInt16)
|
|
863
864
|
});
|
|
@@ -865,20 +866,20 @@ export namespace DoorLock {
|
|
|
865
866
|
/**
|
|
866
867
|
* Input to the DoorLock clearUser command
|
|
867
868
|
*
|
|
868
|
-
* @see {@link MatterSpecification.
|
|
869
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.35
|
|
869
870
|
*/
|
|
870
871
|
export interface ClearUserRequest extends TypeFromSchema<typeof TlvClearUserRequest> {}
|
|
871
872
|
|
|
872
873
|
/**
|
|
873
874
|
* Input to the DoorLock setCredential command
|
|
874
875
|
*
|
|
875
|
-
* @see {@link MatterSpecification.
|
|
876
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.36
|
|
876
877
|
*/
|
|
877
878
|
export const TlvSetCredentialRequest = TlvObject({
|
|
878
879
|
/**
|
|
879
880
|
* This field shall indicate the set credential operation type requested.
|
|
880
881
|
*
|
|
881
|
-
* @see {@link MatterSpecification.
|
|
882
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.36.1
|
|
882
883
|
*/
|
|
883
884
|
operationType: TlvField(0, TlvEnum<DataOperationType>()),
|
|
884
885
|
|
|
@@ -886,7 +887,7 @@ export namespace DoorLock {
|
|
|
886
887
|
* This field shall contain a credential structure that contains the CredentialTypeEnum and the credential index
|
|
887
888
|
* (if applicable or 0 if not) to set.
|
|
888
889
|
*
|
|
889
|
-
* @see {@link MatterSpecification.
|
|
890
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.36.2
|
|
890
891
|
*/
|
|
891
892
|
credential: TlvField(1, TlvCredential),
|
|
892
893
|
|
|
@@ -895,7 +896,7 @@ export namespace DoorLock {
|
|
|
895
896
|
* of the credential data shall conform to the limits of the CredentialType specified in the Credential
|
|
896
897
|
* structure otherwise an INVALID_COMMAND status shall be returned in the SetCredentialResponse command.
|
|
897
898
|
*
|
|
898
|
-
* @see {@link MatterSpecification.
|
|
899
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.36.3
|
|
899
900
|
*/
|
|
900
901
|
credentialData: TlvField(2, TlvByteString),
|
|
901
902
|
|
|
@@ -904,7 +905,7 @@ export namespace DoorLock {
|
|
|
904
905
|
* modified. This shall be null if OperationType is add and a new credential and user is being added at the same
|
|
905
906
|
* time.
|
|
906
907
|
*
|
|
907
|
-
* @see {@link MatterSpecification.
|
|
908
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.36.4
|
|
908
909
|
*/
|
|
909
910
|
userIndex: TlvField(3, TlvNullable(TlvUInt16.bound({ min: 1 }))),
|
|
910
911
|
|
|
@@ -912,7 +913,7 @@ export namespace DoorLock {
|
|
|
912
913
|
* This field shall indicate the user status to use in the new user record if a new user is being created. This
|
|
913
914
|
* shall be null if OperationType is Modify. This may be null when adding a new credential and user.
|
|
914
915
|
*
|
|
915
|
-
* @see {@link MatterSpecification.
|
|
916
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.36.5
|
|
916
917
|
*/
|
|
917
918
|
userStatus: TlvField(4, TlvNullable(TlvEnum<UserStatus>())),
|
|
918
919
|
|
|
@@ -920,7 +921,7 @@ export namespace DoorLock {
|
|
|
920
921
|
* This field shall indicate the user type to use in the new user record if a new user is being created. This
|
|
921
922
|
* shall be null if OperationType is Modify. This may be null when adding a new credential and user.
|
|
922
923
|
*
|
|
923
|
-
* @see {@link MatterSpecification.
|
|
924
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.36.6
|
|
924
925
|
*/
|
|
925
926
|
userType: TlvField(5, TlvNullable(TlvEnum<UserType>()))
|
|
926
927
|
});
|
|
@@ -928,14 +929,14 @@ export namespace DoorLock {
|
|
|
928
929
|
/**
|
|
929
930
|
* Input to the DoorLock setCredential command
|
|
930
931
|
*
|
|
931
|
-
* @see {@link MatterSpecification.
|
|
932
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.36
|
|
932
933
|
*/
|
|
933
934
|
export interface SetCredentialRequest extends TypeFromSchema<typeof TlvSetCredentialRequest> {}
|
|
934
935
|
|
|
935
936
|
/**
|
|
936
937
|
* Returns the status for setting the specified credential.
|
|
937
938
|
*
|
|
938
|
-
* @see {@link MatterSpecification.
|
|
939
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.37
|
|
939
940
|
*/
|
|
940
941
|
export const TlvSetCredentialResponse = TlvObject({
|
|
941
942
|
/**
|
|
@@ -970,7 +971,7 @@ export namespace DoorLock {
|
|
|
970
971
|
*
|
|
971
972
|
* • INVALID_COMMAND, if OperationType is Modify and UserIndex points to an available slot.
|
|
972
973
|
*
|
|
973
|
-
* @see {@link MatterSpecification.
|
|
974
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.37.1
|
|
974
975
|
*/
|
|
975
976
|
status: TlvField(0, TlvEnum<Status>()),
|
|
976
977
|
|
|
@@ -981,7 +982,7 @@ export namespace DoorLock {
|
|
|
981
982
|
* created. If the OperationType was Add and an existing User was associated with the new credential then this
|
|
982
983
|
* shall be null.
|
|
983
984
|
*
|
|
984
|
-
* @see {@link MatterSpecification.
|
|
985
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.37.2
|
|
985
986
|
*/
|
|
986
987
|
userIndex: TlvField(1, TlvNullable(TlvUInt16.bound({ min: 1 }))),
|
|
987
988
|
|
|
@@ -992,7 +993,7 @@ export namespace DoorLock {
|
|
|
992
993
|
* null if there are no more available entries. The NextCredentialIndex reported shall NOT exceed the maximum
|
|
993
994
|
* number of credentials for a particular credential type.
|
|
994
995
|
*
|
|
995
|
-
* @see {@link MatterSpecification.
|
|
996
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.37.3
|
|
996
997
|
*/
|
|
997
998
|
nextCredentialIndex: TlvOptionalField(2, TlvNullable(TlvUInt16))
|
|
998
999
|
});
|
|
@@ -1000,21 +1001,21 @@ export namespace DoorLock {
|
|
|
1000
1001
|
/**
|
|
1001
1002
|
* Returns the status for setting the specified credential.
|
|
1002
1003
|
*
|
|
1003
|
-
* @see {@link MatterSpecification.
|
|
1004
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.37
|
|
1004
1005
|
*/
|
|
1005
1006
|
export interface SetCredentialResponse extends TypeFromSchema<typeof TlvSetCredentialResponse> {}
|
|
1006
1007
|
|
|
1007
1008
|
/**
|
|
1008
1009
|
* Input to the DoorLock getCredentialStatus command
|
|
1009
1010
|
*
|
|
1010
|
-
* @see {@link MatterSpecification.
|
|
1011
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.38
|
|
1011
1012
|
*/
|
|
1012
1013
|
export const TlvGetCredentialStatusRequest = TlvObject({
|
|
1013
1014
|
/**
|
|
1014
1015
|
* This field shall contain a credential structure that contains the CredentialTypeEnum and the credential index
|
|
1015
1016
|
* (if applicable or 0 if not) to retrieve the status for.
|
|
1016
1017
|
*
|
|
1017
|
-
* @see {@link MatterSpecification.
|
|
1018
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.38.1
|
|
1018
1019
|
*/
|
|
1019
1020
|
credential: TlvField(0, TlvCredential)
|
|
1020
1021
|
});
|
|
@@ -1022,21 +1023,21 @@ export namespace DoorLock {
|
|
|
1022
1023
|
/**
|
|
1023
1024
|
* Input to the DoorLock getCredentialStatus command
|
|
1024
1025
|
*
|
|
1025
|
-
* @see {@link MatterSpecification.
|
|
1026
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.38
|
|
1026
1027
|
*/
|
|
1027
1028
|
export interface GetCredentialStatusRequest extends TypeFromSchema<typeof TlvGetCredentialStatusRequest> {}
|
|
1028
1029
|
|
|
1029
1030
|
/**
|
|
1030
1031
|
* Returns the status for the specified credential.
|
|
1031
1032
|
*
|
|
1032
|
-
* @see {@link MatterSpecification.
|
|
1033
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.39
|
|
1033
1034
|
*/
|
|
1034
1035
|
export const TlvGetCredentialStatusResponse = TlvObject({
|
|
1035
1036
|
/**
|
|
1036
1037
|
* This field shall indicate if the requested credential type and index exists and is populated for the
|
|
1037
1038
|
* requested user index.
|
|
1038
1039
|
*
|
|
1039
|
-
* @see {@link MatterSpecification.
|
|
1040
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.39.1
|
|
1040
1041
|
*/
|
|
1041
1042
|
credentialExists: TlvField(0, TlvBoolean),
|
|
1042
1043
|
|
|
@@ -1045,7 +1046,7 @@ export namespace DoorLock {
|
|
|
1045
1046
|
* CredentialType requested was ProgrammingPIN then UserIndex shall be null; otherwise, UserIndex shall be null
|
|
1046
1047
|
* if CredentialExists is set to False and shall NOT be null if CredentialExists is set to True.
|
|
1047
1048
|
*
|
|
1048
|
-
* @see {@link MatterSpecification.
|
|
1049
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.39.2
|
|
1049
1050
|
*/
|
|
1050
1051
|
userIndex: TlvField(1, TlvNullable(TlvUInt16.bound({ min: 1 }))),
|
|
1051
1052
|
|
|
@@ -1055,7 +1056,7 @@ export namespace DoorLock {
|
|
|
1055
1056
|
* credential was created outside the Interaction Model) and shall NOT be null otherwise. This value shall be
|
|
1056
1057
|
* set to 0 if the original creator fabric was deleted.
|
|
1057
1058
|
*
|
|
1058
|
-
* @see {@link MatterSpecification.
|
|
1059
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.39.3
|
|
1059
1060
|
*/
|
|
1060
1061
|
creatorFabricIndex: TlvField(2, TlvNullable(TlvFabricIndex)),
|
|
1061
1062
|
|
|
@@ -1065,7 +1066,7 @@ export namespace DoorLock {
|
|
|
1065
1066
|
* credential was modified outside the Interaction Model) and shall NOT be null otherwise. This value shall be
|
|
1066
1067
|
* set to 0 if the last modifier fabric was deleted.
|
|
1067
1068
|
*
|
|
1068
|
-
* @see {@link MatterSpecification.
|
|
1069
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.39.4
|
|
1069
1070
|
*/
|
|
1070
1071
|
lastModifiedFabricIndex: TlvField(3, TlvNullable(TlvFabricIndex)),
|
|
1071
1072
|
|
|
@@ -1076,7 +1077,7 @@ export namespace DoorLock {
|
|
|
1076
1077
|
* null if there are no more occupied entries. The NextCredentialIndex reported shall NOT exceed the maximum
|
|
1077
1078
|
* number of credentials for a particular credential type.
|
|
1078
1079
|
*
|
|
1079
|
-
* @see {@link MatterSpecification.
|
|
1080
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.39.5
|
|
1080
1081
|
*/
|
|
1081
1082
|
nextCredentialIndex: TlvOptionalField(4, TlvNullable(TlvUInt16)),
|
|
1082
1083
|
|
|
@@ -1096,7 +1097,7 @@ export namespace DoorLock {
|
|
|
1096
1097
|
* > Since the Aliro credentials are public keys, there is no security risk in allowing them to be read.
|
|
1097
1098
|
* Possession of the credential octet string does not allow operating the lock.
|
|
1098
1099
|
*
|
|
1099
|
-
* @see {@link MatterSpecification.
|
|
1100
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.39.6
|
|
1100
1101
|
*/
|
|
1101
1102
|
credentialData: TlvOptionalField(5, TlvNullable(TlvByteString))
|
|
1102
1103
|
});
|
|
@@ -1104,14 +1105,14 @@ export namespace DoorLock {
|
|
|
1104
1105
|
/**
|
|
1105
1106
|
* Returns the status for the specified credential.
|
|
1106
1107
|
*
|
|
1107
|
-
* @see {@link MatterSpecification.
|
|
1108
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.39
|
|
1108
1109
|
*/
|
|
1109
1110
|
export interface GetCredentialStatusResponse extends TypeFromSchema<typeof TlvGetCredentialStatusResponse> {}
|
|
1110
1111
|
|
|
1111
1112
|
/**
|
|
1112
1113
|
* Input to the DoorLock clearCredential command
|
|
1113
1114
|
*
|
|
1114
|
-
* @see {@link MatterSpecification.
|
|
1115
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.40
|
|
1115
1116
|
*/
|
|
1116
1117
|
export const TlvClearCredentialRequest = TlvObject({
|
|
1117
1118
|
/**
|
|
@@ -1119,7 +1120,7 @@ export namespace DoorLock {
|
|
|
1119
1120
|
* (0xFFFE for all credentials or 0 if not applicable) to clear. This shall be null if clearing all credential
|
|
1120
1121
|
* types otherwise it shall NOT be null.
|
|
1121
1122
|
*
|
|
1122
|
-
* @see {@link MatterSpecification.
|
|
1123
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.40.1
|
|
1123
1124
|
*/
|
|
1124
1125
|
credential: TlvField(0, TlvNullable(TlvCredential))
|
|
1125
1126
|
});
|
|
@@ -1127,14 +1128,14 @@ export namespace DoorLock {
|
|
|
1127
1128
|
/**
|
|
1128
1129
|
* Input to the DoorLock clearCredential command
|
|
1129
1130
|
*
|
|
1130
|
-
* @see {@link MatterSpecification.
|
|
1131
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.40
|
|
1131
1132
|
*/
|
|
1132
1133
|
export interface ClearCredentialRequest extends TypeFromSchema<typeof TlvClearCredentialRequest> {}
|
|
1133
1134
|
|
|
1134
1135
|
/**
|
|
1135
1136
|
* This enumeration shall indicate the data type that is being or has changed.
|
|
1136
1137
|
*
|
|
1137
|
-
* @see {@link MatterSpecification.
|
|
1138
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.12
|
|
1138
1139
|
*/
|
|
1139
1140
|
export enum LockDataType {
|
|
1140
1141
|
/**
|
|
@@ -1211,7 +1212,7 @@ export namespace DoorLock {
|
|
|
1211
1212
|
/**
|
|
1212
1213
|
* This enumeration shall indicate the source of the Lock/Unlock or user change operation performed.
|
|
1213
1214
|
*
|
|
1214
|
-
* @see {@link MatterSpecification.
|
|
1215
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.16
|
|
1215
1216
|
*/
|
|
1216
1217
|
export enum OperationSource {
|
|
1217
1218
|
/**
|
|
@@ -1274,27 +1275,27 @@ export namespace DoorLock {
|
|
|
1274
1275
|
/**
|
|
1275
1276
|
* Body of the DoorLock lockUserChange event
|
|
1276
1277
|
*
|
|
1277
|
-
* @see {@link MatterSpecification.
|
|
1278
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.5
|
|
1278
1279
|
*/
|
|
1279
1280
|
export const TlvLockUserChangeEvent = TlvObject({
|
|
1280
1281
|
/**
|
|
1281
1282
|
* This field shall indicate the lock data type that was changed.
|
|
1282
1283
|
*
|
|
1283
|
-
* @see {@link MatterSpecification.
|
|
1284
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.5.1
|
|
1284
1285
|
*/
|
|
1285
1286
|
lockDataType: TlvField(0, TlvEnum<LockDataType>()),
|
|
1286
1287
|
|
|
1287
1288
|
/**
|
|
1288
1289
|
* This field shall indicate the data operation performed on the lock data type changed.
|
|
1289
1290
|
*
|
|
1290
|
-
* @see {@link MatterSpecification.
|
|
1291
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.5.2
|
|
1291
1292
|
*/
|
|
1292
1293
|
dataOperationType: TlvField(1, TlvEnum<DataOperationType>()),
|
|
1293
1294
|
|
|
1294
1295
|
/**
|
|
1295
1296
|
* This field shall indicate the source of the user data change.
|
|
1296
1297
|
*
|
|
1297
|
-
* @see {@link MatterSpecification.
|
|
1298
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.5.3
|
|
1298
1299
|
*/
|
|
1299
1300
|
operationSource: TlvField(2, TlvEnum<OperationSource>()),
|
|
1300
1301
|
|
|
@@ -1303,7 +1304,7 @@ export namespace DoorLock {
|
|
|
1303
1304
|
* is no specific user associated with the data operation. This shall be 0xFFFE if all users are affected (e.g.
|
|
1304
1305
|
* Clear Users).
|
|
1305
1306
|
*
|
|
1306
|
-
* @see {@link MatterSpecification.
|
|
1307
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.5.4
|
|
1307
1308
|
*/
|
|
1308
1309
|
userIndex: TlvField(3, TlvNullable(TlvUInt16)),
|
|
1309
1310
|
|
|
@@ -1312,7 +1313,7 @@ export namespace DoorLock {
|
|
|
1312
1313
|
* null if there is no fabric that can be determined to have caused the change. This shall NOT be null if the
|
|
1313
1314
|
* operation source is "Remote".
|
|
1314
1315
|
*
|
|
1315
|
-
* @see {@link MatterSpecification.
|
|
1316
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.5.5
|
|
1316
1317
|
*/
|
|
1317
1318
|
fabricIndex: TlvField(4, TlvNullable(TlvFabricIndex)),
|
|
1318
1319
|
|
|
@@ -1321,7 +1322,7 @@ export namespace DoorLock {
|
|
|
1321
1322
|
* performed the change. This shall be null if there was no Node involved in the change. This shall NOT be null
|
|
1322
1323
|
* if the operation source is "Remote".
|
|
1323
1324
|
*
|
|
1324
|
-
* @see {@link MatterSpecification.
|
|
1325
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.5.6
|
|
1325
1326
|
*/
|
|
1326
1327
|
sourceNode: TlvField(5, TlvNullable(TlvNodeId)),
|
|
1327
1328
|
|
|
@@ -1331,7 +1332,7 @@ export namespace DoorLock {
|
|
|
1331
1332
|
* list that can be indexed into (e.g. ProgrammingUser). This shall be 0xFFFE if all indices are affected (e.g.
|
|
1332
1333
|
* ClearPINCode, ClearRFIDCode, ClearWeekDaySchedule, ClearYearDaySchedule, etc.).
|
|
1333
1334
|
*
|
|
1334
|
-
* @see {@link MatterSpecification.
|
|
1335
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.5.7
|
|
1335
1336
|
*/
|
|
1336
1337
|
dataIndex: TlvField(6, TlvNullable(TlvUInt16))
|
|
1337
1338
|
});
|
|
@@ -1339,14 +1340,14 @@ export namespace DoorLock {
|
|
|
1339
1340
|
/**
|
|
1340
1341
|
* Body of the DoorLock lockUserChange event
|
|
1341
1342
|
*
|
|
1342
|
-
* @see {@link MatterSpecification.
|
|
1343
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.5
|
|
1343
1344
|
*/
|
|
1344
1345
|
export interface LockUserChangeEvent extends TypeFromSchema<typeof TlvLockUserChangeEvent> {}
|
|
1345
1346
|
|
|
1346
1347
|
/**
|
|
1347
1348
|
* This bitmap shall indicate the days of the week the Week Day schedule applies for.
|
|
1348
1349
|
*
|
|
1349
|
-
* @see {@link MatterSpecification.
|
|
1350
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.1
|
|
1350
1351
|
*/
|
|
1351
1352
|
export const DaysMask = {
|
|
1352
1353
|
/**
|
|
@@ -1388,41 +1389,41 @@ export namespace DoorLock {
|
|
|
1388
1389
|
/**
|
|
1389
1390
|
* Input to the DoorLock setWeekDaySchedule command
|
|
1390
1391
|
*
|
|
1391
|
-
* @see {@link MatterSpecification.
|
|
1392
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.12
|
|
1392
1393
|
*/
|
|
1393
1394
|
export const TlvSetWeekDayScheduleRequest = TlvObject({
|
|
1394
1395
|
/**
|
|
1395
1396
|
* This field shall indicate the index of the Week Day schedule.
|
|
1396
1397
|
*
|
|
1397
|
-
* @see {@link MatterSpecification.
|
|
1398
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.12.1
|
|
1398
1399
|
*/
|
|
1399
1400
|
weekDayIndex: TlvField(0, TlvUInt8.bound({ min: 1 })),
|
|
1400
1401
|
|
|
1401
1402
|
/**
|
|
1402
1403
|
* This field shall indicate the user ID.
|
|
1403
1404
|
*
|
|
1404
|
-
* @see {@link MatterSpecification.
|
|
1405
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.12.2
|
|
1405
1406
|
*/
|
|
1406
1407
|
userIndex: TlvField(1, TlvUInt16.bound({ min: 1 })),
|
|
1407
1408
|
|
|
1408
1409
|
/**
|
|
1409
1410
|
* This field shall indicate which week days the schedule is active.
|
|
1410
1411
|
*
|
|
1411
|
-
* @see {@link MatterSpecification.
|
|
1412
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.12.3
|
|
1412
1413
|
*/
|
|
1413
1414
|
daysMask: TlvField(2, TlvBitmap(TlvUInt8, DaysMask)),
|
|
1414
1415
|
|
|
1415
1416
|
/**
|
|
1416
1417
|
* This field shall indicate the starting hour for the Week Day schedule.
|
|
1417
1418
|
*
|
|
1418
|
-
* @see {@link MatterSpecification.
|
|
1419
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.12.4
|
|
1419
1420
|
*/
|
|
1420
1421
|
startHour: TlvField(3, TlvUInt8.bound({ max: 23 })),
|
|
1421
1422
|
|
|
1422
1423
|
/**
|
|
1423
1424
|
* This field shall indicate the starting minute for the Week Day schedule.
|
|
1424
1425
|
*
|
|
1425
|
-
* @see {@link MatterSpecification.
|
|
1426
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.12.5
|
|
1426
1427
|
*/
|
|
1427
1428
|
startMinute: TlvField(4, TlvUInt8.bound({ max: 59 })),
|
|
1428
1429
|
|
|
@@ -1430,7 +1431,7 @@ export namespace DoorLock {
|
|
|
1430
1431
|
* This field shall indicate the ending hour for the Week Day schedule. EndHour shall be equal to or greater
|
|
1431
1432
|
* than StartHour.
|
|
1432
1433
|
*
|
|
1433
|
-
* @see {@link MatterSpecification.
|
|
1434
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.12.6
|
|
1434
1435
|
*/
|
|
1435
1436
|
endHour: TlvField(5, TlvUInt8.bound({ max: 23 })),
|
|
1436
1437
|
|
|
@@ -1441,7 +1442,7 @@ export namespace DoorLock {
|
|
|
1441
1442
|
* If the EndHour is equal to 23 and the EndMinute is equal to 59 the Lock shall grant access to the user up
|
|
1442
1443
|
* until 23:59:59.
|
|
1443
1444
|
*
|
|
1444
|
-
* @see {@link MatterSpecification.
|
|
1445
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.12.7
|
|
1445
1446
|
*/
|
|
1446
1447
|
endMinute: TlvField(6, TlvUInt8.bound({ max: 59 }))
|
|
1447
1448
|
});
|
|
@@ -1449,14 +1450,14 @@ export namespace DoorLock {
|
|
|
1449
1450
|
/**
|
|
1450
1451
|
* Input to the DoorLock setWeekDaySchedule command
|
|
1451
1452
|
*
|
|
1452
|
-
* @see {@link MatterSpecification.
|
|
1453
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.12
|
|
1453
1454
|
*/
|
|
1454
1455
|
export interface SetWeekDayScheduleRequest extends TypeFromSchema<typeof TlvSetWeekDayScheduleRequest> {}
|
|
1455
1456
|
|
|
1456
1457
|
/**
|
|
1457
1458
|
* Input to the DoorLock getWeekDaySchedule command
|
|
1458
1459
|
*
|
|
1459
|
-
* @see {@link MatterSpecification.
|
|
1460
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.13
|
|
1460
1461
|
*/
|
|
1461
1462
|
export const TlvGetWeekDayScheduleRequest = TlvObject({
|
|
1462
1463
|
weekDayIndex: TlvField(0, TlvUInt8.bound({ min: 1 })),
|
|
@@ -1466,27 +1467,27 @@ export namespace DoorLock {
|
|
|
1466
1467
|
/**
|
|
1467
1468
|
* Input to the DoorLock getWeekDaySchedule command
|
|
1468
1469
|
*
|
|
1469
|
-
* @see {@link MatterSpecification.
|
|
1470
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.13
|
|
1470
1471
|
*/
|
|
1471
1472
|
export interface GetWeekDayScheduleRequest extends TypeFromSchema<typeof TlvGetWeekDayScheduleRequest> {}
|
|
1472
1473
|
|
|
1473
1474
|
/**
|
|
1474
1475
|
* Returns the weekly repeating schedule data for the specified schedule index.
|
|
1475
1476
|
*
|
|
1476
|
-
* @see {@link MatterSpecification.
|
|
1477
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.14
|
|
1477
1478
|
*/
|
|
1478
1479
|
export const TlvGetWeekDayScheduleResponse = TlvObject({
|
|
1479
1480
|
/**
|
|
1480
1481
|
* This field shall indicate the index of the Week Day schedule.
|
|
1481
1482
|
*
|
|
1482
|
-
* @see {@link MatterSpecification.
|
|
1483
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.14.1
|
|
1483
1484
|
*/
|
|
1484
1485
|
weekDayIndex: TlvField(0, TlvUInt8.bound({ min: 1 })),
|
|
1485
1486
|
|
|
1486
1487
|
/**
|
|
1487
1488
|
* This field shall indicate the user ID.
|
|
1488
1489
|
*
|
|
1489
|
-
* @see {@link MatterSpecification.
|
|
1490
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.14.2
|
|
1490
1491
|
*/
|
|
1491
1492
|
userIndex: TlvField(1, TlvUInt16.bound({ min: 1 })),
|
|
1492
1493
|
|
|
@@ -1504,7 +1505,7 @@ export namespace DoorLock {
|
|
|
1504
1505
|
* If this field is SUCCESS, the optional fields for this command shall be present. For other (error) status
|
|
1505
1506
|
* values, only the fields up to the status field shall be present.
|
|
1506
1507
|
*
|
|
1507
|
-
* @see {@link MatterSpecification.
|
|
1508
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.14.3
|
|
1508
1509
|
*/
|
|
1509
1510
|
status: TlvField(2, TlvEnum<Status>()),
|
|
1510
1511
|
|
|
@@ -1513,14 +1514,14 @@ export namespace DoorLock {
|
|
|
1513
1514
|
/**
|
|
1514
1515
|
* This field shall indicate the starting hour for the Week Day schedule.
|
|
1515
1516
|
*
|
|
1516
|
-
* @see {@link MatterSpecification.
|
|
1517
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.14.4
|
|
1517
1518
|
*/
|
|
1518
1519
|
startHour: TlvOptionalField(4, TlvUInt8.bound({ max: 23 })),
|
|
1519
1520
|
|
|
1520
1521
|
/**
|
|
1521
1522
|
* This field shall indicate the starting minute for the Week Day schedule.
|
|
1522
1523
|
*
|
|
1523
|
-
* @see {@link MatterSpecification.
|
|
1524
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.14.5
|
|
1524
1525
|
*/
|
|
1525
1526
|
startMinute: TlvOptionalField(5, TlvUInt8.bound({ max: 59 })),
|
|
1526
1527
|
|
|
@@ -1528,7 +1529,7 @@ export namespace DoorLock {
|
|
|
1528
1529
|
* This field shall indicate the ending hour for the Week Day schedule. EndHour shall be equal to or greater
|
|
1529
1530
|
* than StartHour.
|
|
1530
1531
|
*
|
|
1531
|
-
* @see {@link MatterSpecification.
|
|
1532
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.14.6
|
|
1532
1533
|
*/
|
|
1533
1534
|
endHour: TlvOptionalField(6, TlvUInt8.bound({ max: 23 })),
|
|
1534
1535
|
|
|
@@ -1536,7 +1537,7 @@ export namespace DoorLock {
|
|
|
1536
1537
|
* This field shall indicate the ending minute for the Week Day schedule. If EndHour is equal to StartHour then
|
|
1537
1538
|
* EndMinute shall be greater than StartMinute.
|
|
1538
1539
|
*
|
|
1539
|
-
* @see {@link MatterSpecification.
|
|
1540
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.14.7
|
|
1540
1541
|
*/
|
|
1541
1542
|
endMinute: TlvOptionalField(7, TlvUInt8.bound({ max: 59 }))
|
|
1542
1543
|
});
|
|
@@ -1544,28 +1545,28 @@ export namespace DoorLock {
|
|
|
1544
1545
|
/**
|
|
1545
1546
|
* Returns the weekly repeating schedule data for the specified schedule index.
|
|
1546
1547
|
*
|
|
1547
|
-
* @see {@link MatterSpecification.
|
|
1548
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.14
|
|
1548
1549
|
*/
|
|
1549
1550
|
export interface GetWeekDayScheduleResponse extends TypeFromSchema<typeof TlvGetWeekDayScheduleResponse> {}
|
|
1550
1551
|
|
|
1551
1552
|
/**
|
|
1552
1553
|
* Input to the DoorLock clearWeekDaySchedule command
|
|
1553
1554
|
*
|
|
1554
|
-
* @see {@link MatterSpecification.
|
|
1555
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.15
|
|
1555
1556
|
*/
|
|
1556
1557
|
export const TlvClearWeekDayScheduleRequest = TlvObject({
|
|
1557
1558
|
/**
|
|
1558
1559
|
* This field shall indicate the Week Day schedule index to clear or 0xFE to clear all Week Day schedules for
|
|
1559
1560
|
* the specified user.
|
|
1560
1561
|
*
|
|
1561
|
-
* @see {@link MatterSpecification.
|
|
1562
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.15.1
|
|
1562
1563
|
*/
|
|
1563
1564
|
weekDayIndex: TlvField(0, TlvUInt8),
|
|
1564
1565
|
|
|
1565
1566
|
/**
|
|
1566
1567
|
* This field shall indicate the user ID.
|
|
1567
1568
|
*
|
|
1568
|
-
* @see {@link MatterSpecification.
|
|
1569
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.15.2
|
|
1569
1570
|
*/
|
|
1570
1571
|
userIndex: TlvField(1, TlvUInt16.bound({ min: 1 }))
|
|
1571
1572
|
});
|
|
@@ -1573,27 +1574,27 @@ export namespace DoorLock {
|
|
|
1573
1574
|
/**
|
|
1574
1575
|
* Input to the DoorLock clearWeekDaySchedule command
|
|
1575
1576
|
*
|
|
1576
|
-
* @see {@link MatterSpecification.
|
|
1577
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.15
|
|
1577
1578
|
*/
|
|
1578
1579
|
export interface ClearWeekDayScheduleRequest extends TypeFromSchema<typeof TlvClearWeekDayScheduleRequest> {}
|
|
1579
1580
|
|
|
1580
1581
|
/**
|
|
1581
1582
|
* Input to the DoorLock setYearDaySchedule command
|
|
1582
1583
|
*
|
|
1583
|
-
* @see {@link MatterSpecification.
|
|
1584
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.16
|
|
1584
1585
|
*/
|
|
1585
1586
|
export const TlvSetYearDayScheduleRequest = TlvObject({
|
|
1586
1587
|
/**
|
|
1587
1588
|
* This field shall indicate the index of the Year Day schedule.
|
|
1588
1589
|
*
|
|
1589
|
-
* @see {@link MatterSpecification.
|
|
1590
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.16.1
|
|
1590
1591
|
*/
|
|
1591
1592
|
yearDayIndex: TlvField(0, TlvUInt8.bound({ min: 1 })),
|
|
1592
1593
|
|
|
1593
1594
|
/**
|
|
1594
1595
|
* This field shall indicate the user ID.
|
|
1595
1596
|
*
|
|
1596
|
-
* @see {@link MatterSpecification.
|
|
1597
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.16.2
|
|
1597
1598
|
*/
|
|
1598
1599
|
userIndex: TlvField(1, TlvUInt16.bound({ min: 1 })),
|
|
1599
1600
|
|
|
@@ -1601,7 +1602,7 @@ export namespace DoorLock {
|
|
|
1601
1602
|
* This field shall indicate the starting time for the Year Day schedule in Epoch Time in Seconds with local
|
|
1602
1603
|
* time offset based on the local timezone and DST offset on the day represented by the value.
|
|
1603
1604
|
*
|
|
1604
|
-
* @see {@link MatterSpecification.
|
|
1605
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.16.3
|
|
1605
1606
|
*/
|
|
1606
1607
|
localStartTime: TlvField(2, TlvEpochS),
|
|
1607
1608
|
|
|
@@ -1610,7 +1611,7 @@ export namespace DoorLock {
|
|
|
1610
1611
|
* offset based on the local timezone and DST offset on the day represented by the value. LocalEndTime shall be
|
|
1611
1612
|
* greater than LocalStartTime.
|
|
1612
1613
|
*
|
|
1613
|
-
* @see {@link MatterSpecification.
|
|
1614
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.16.4
|
|
1614
1615
|
*/
|
|
1615
1616
|
localEndTime: TlvField(3, TlvEpochS)
|
|
1616
1617
|
});
|
|
@@ -1618,14 +1619,14 @@ export namespace DoorLock {
|
|
|
1618
1619
|
/**
|
|
1619
1620
|
* Input to the DoorLock setYearDaySchedule command
|
|
1620
1621
|
*
|
|
1621
|
-
* @see {@link MatterSpecification.
|
|
1622
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.16
|
|
1622
1623
|
*/
|
|
1623
1624
|
export interface SetYearDayScheduleRequest extends TypeFromSchema<typeof TlvSetYearDayScheduleRequest> {}
|
|
1624
1625
|
|
|
1625
1626
|
/**
|
|
1626
1627
|
* Input to the DoorLock getYearDaySchedule command
|
|
1627
1628
|
*
|
|
1628
|
-
* @see {@link MatterSpecification.
|
|
1629
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.17
|
|
1629
1630
|
*/
|
|
1630
1631
|
export const TlvGetYearDayScheduleRequest = TlvObject({
|
|
1631
1632
|
yearDayIndex: TlvField(0, TlvUInt8.bound({ min: 1 })),
|
|
@@ -1635,27 +1636,27 @@ export namespace DoorLock {
|
|
|
1635
1636
|
/**
|
|
1636
1637
|
* Input to the DoorLock getYearDaySchedule command
|
|
1637
1638
|
*
|
|
1638
|
-
* @see {@link MatterSpecification.
|
|
1639
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.17
|
|
1639
1640
|
*/
|
|
1640
1641
|
export interface GetYearDayScheduleRequest extends TypeFromSchema<typeof TlvGetYearDayScheduleRequest> {}
|
|
1641
1642
|
|
|
1642
1643
|
/**
|
|
1643
1644
|
* Returns the year day schedule data for the specified schedule and user indexes.
|
|
1644
1645
|
*
|
|
1645
|
-
* @see {@link MatterSpecification.
|
|
1646
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.18
|
|
1646
1647
|
*/
|
|
1647
1648
|
export const TlvGetYearDayScheduleResponse = TlvObject({
|
|
1648
1649
|
/**
|
|
1649
1650
|
* This field shall indicate the index of the Year Day schedule.
|
|
1650
1651
|
*
|
|
1651
|
-
* @see {@link MatterSpecification.
|
|
1652
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.18.1
|
|
1652
1653
|
*/
|
|
1653
1654
|
yearDayIndex: TlvField(0, TlvUInt8.bound({ min: 1 })),
|
|
1654
1655
|
|
|
1655
1656
|
/**
|
|
1656
1657
|
* This field shall indicate the user ID.
|
|
1657
1658
|
*
|
|
1658
|
-
* @see {@link MatterSpecification.
|
|
1659
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.18.2
|
|
1659
1660
|
*/
|
|
1660
1661
|
userIndex: TlvField(1, TlvUInt16.bound({ min: 1 })),
|
|
1661
1662
|
|
|
@@ -1673,7 +1674,7 @@ export namespace DoorLock {
|
|
|
1673
1674
|
* If this field is SUCCESS, the optional fields for this command shall be present. For other (error) status
|
|
1674
1675
|
* values, only the fields up to the status field shall be present.
|
|
1675
1676
|
*
|
|
1676
|
-
* @see {@link MatterSpecification.
|
|
1677
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.18.3
|
|
1677
1678
|
*/
|
|
1678
1679
|
status: TlvField(2, TlvEnum<Status>()),
|
|
1679
1680
|
|
|
@@ -1682,7 +1683,7 @@ export namespace DoorLock {
|
|
|
1682
1683
|
* time offset based on the local timezone and DST offset on the day represented by the value. This shall be
|
|
1683
1684
|
* null if the schedule is not set for the YearDayIndex and UserIndex provided.
|
|
1684
1685
|
*
|
|
1685
|
-
* @see {@link MatterSpecification.
|
|
1686
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.18.4
|
|
1686
1687
|
*/
|
|
1687
1688
|
localStartTime: TlvOptionalField(3, TlvEpochS),
|
|
1688
1689
|
|
|
@@ -1692,7 +1693,7 @@ export namespace DoorLock {
|
|
|
1692
1693
|
* greater than LocalStartTime. This shall be null if the schedule is not set for the YearDayIndex and UserIndex
|
|
1693
1694
|
* provided.
|
|
1694
1695
|
*
|
|
1695
|
-
* @see {@link MatterSpecification.
|
|
1696
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.18.5
|
|
1696
1697
|
*/
|
|
1697
1698
|
localEndTime: TlvOptionalField(4, TlvEpochS)
|
|
1698
1699
|
});
|
|
@@ -1700,28 +1701,28 @@ export namespace DoorLock {
|
|
|
1700
1701
|
/**
|
|
1701
1702
|
* Returns the year day schedule data for the specified schedule and user indexes.
|
|
1702
1703
|
*
|
|
1703
|
-
* @see {@link MatterSpecification.
|
|
1704
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.18
|
|
1704
1705
|
*/
|
|
1705
1706
|
export interface GetYearDayScheduleResponse extends TypeFromSchema<typeof TlvGetYearDayScheduleResponse> {}
|
|
1706
1707
|
|
|
1707
1708
|
/**
|
|
1708
1709
|
* Input to the DoorLock clearYearDaySchedule command
|
|
1709
1710
|
*
|
|
1710
|
-
* @see {@link MatterSpecification.
|
|
1711
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.19
|
|
1711
1712
|
*/
|
|
1712
1713
|
export const TlvClearYearDayScheduleRequest = TlvObject({
|
|
1713
1714
|
/**
|
|
1714
1715
|
* This field shall indicate the Year Day schedule index to clear or 0xFE to clear all Year Day schedules for
|
|
1715
1716
|
* the specified user.
|
|
1716
1717
|
*
|
|
1717
|
-
* @see {@link MatterSpecification.
|
|
1718
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.19.1
|
|
1718
1719
|
*/
|
|
1719
1720
|
yearDayIndex: TlvField(0, TlvUInt8),
|
|
1720
1721
|
|
|
1721
1722
|
/**
|
|
1722
1723
|
* This field shall indicate the user ID.
|
|
1723
1724
|
*
|
|
1724
|
-
* @see {@link MatterSpecification.
|
|
1725
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.19.2
|
|
1725
1726
|
*/
|
|
1726
1727
|
userIndex: TlvField(1, TlvUInt16.bound({ min: 1 }))
|
|
1727
1728
|
});
|
|
@@ -1729,7 +1730,7 @@ export namespace DoorLock {
|
|
|
1729
1730
|
/**
|
|
1730
1731
|
* Input to the DoorLock clearYearDaySchedule command
|
|
1731
1732
|
*
|
|
1732
|
-
* @see {@link MatterSpecification.
|
|
1733
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.19
|
|
1733
1734
|
*/
|
|
1734
1735
|
export interface ClearYearDayScheduleRequest extends TypeFromSchema<typeof TlvClearYearDayScheduleRequest> {}
|
|
1735
1736
|
|
|
@@ -1747,20 +1748,20 @@ export namespace DoorLock {
|
|
|
1747
1748
|
* door lock shall NOT disable the radio or otherwise unbind or leave the network. It shall still respond to all
|
|
1748
1749
|
* other commands and requests.
|
|
1749
1750
|
*
|
|
1750
|
-
* @see {@link MatterSpecification.
|
|
1751
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.15
|
|
1751
1752
|
*/
|
|
1752
1753
|
export enum OperatingMode {
|
|
1753
1754
|
/**
|
|
1754
1755
|
* The lock operates normally. All interfaces are enabled.
|
|
1755
1756
|
*
|
|
1756
|
-
* @see {@link MatterSpecification.
|
|
1757
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.15.1
|
|
1757
1758
|
*/
|
|
1758
1759
|
Normal = 0,
|
|
1759
1760
|
|
|
1760
1761
|
/**
|
|
1761
1762
|
* Only remote interaction is enabled. The keypad shall only be operable by the master user.
|
|
1762
1763
|
*
|
|
1763
|
-
* @see {@link MatterSpecification.
|
|
1764
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.15.2
|
|
1764
1765
|
*/
|
|
1765
1766
|
Vacation = 1,
|
|
1766
1767
|
|
|
@@ -1769,7 +1770,7 @@ export namespace DoorLock {
|
|
|
1769
1770
|
* All external interaction with the door lock is disabled. This mode is intended to be used so that users,
|
|
1770
1771
|
* presumably inside the property, will have control over the entrance.
|
|
1771
1772
|
*
|
|
1772
|
-
* @see {@link MatterSpecification.
|
|
1773
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.15.3
|
|
1773
1774
|
*/
|
|
1774
1775
|
Privacy = 2,
|
|
1775
1776
|
|
|
@@ -1777,7 +1778,7 @@ export namespace DoorLock {
|
|
|
1777
1778
|
* This mode only disables remote interaction with the lock. This does not apply to any remote proprietary means
|
|
1778
1779
|
* of communication. It specifically applies to the Lock, Unlock, Toggle, and Unlock with Timeout Commands.
|
|
1779
1780
|
*
|
|
1780
|
-
* @see {@link MatterSpecification.
|
|
1781
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.15.4
|
|
1781
1782
|
*/
|
|
1782
1783
|
NoRemoteLockUnlock = 3,
|
|
1783
1784
|
|
|
@@ -1785,7 +1786,7 @@ export namespace DoorLock {
|
|
|
1785
1786
|
* The lock is open or can be opened or closed at will without the use of a Keypad or other means of user
|
|
1786
1787
|
* validation (e.g. a lock for a business during work hours).
|
|
1787
1788
|
*
|
|
1788
|
-
* @see {@link MatterSpecification.
|
|
1789
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.15.5
|
|
1789
1790
|
*/
|
|
1790
1791
|
Passage = 4
|
|
1791
1792
|
}
|
|
@@ -1793,13 +1794,13 @@ export namespace DoorLock {
|
|
|
1793
1794
|
/**
|
|
1794
1795
|
* Input to the DoorLock setHolidaySchedule command
|
|
1795
1796
|
*
|
|
1796
|
-
* @see {@link MatterSpecification.
|
|
1797
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.20
|
|
1797
1798
|
*/
|
|
1798
1799
|
export const TlvSetHolidayScheduleRequest = TlvObject({
|
|
1799
1800
|
/**
|
|
1800
1801
|
* This field shall indicate the index of the Holiday schedule.
|
|
1801
1802
|
*
|
|
1802
|
-
* @see {@link MatterSpecification.
|
|
1803
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.20.1
|
|
1803
1804
|
*/
|
|
1804
1805
|
holidayIndex: TlvField(0, TlvUInt8.bound({ min: 1 })),
|
|
1805
1806
|
|
|
@@ -1807,7 +1808,7 @@ export namespace DoorLock {
|
|
|
1807
1808
|
* This field shall indicate the starting time for the Holiday Day schedule in Epoch Time in Seconds with local
|
|
1808
1809
|
* time offset based on the local timezone and DST offset on the day represented by the value.
|
|
1809
1810
|
*
|
|
1810
|
-
* @see {@link MatterSpecification.
|
|
1811
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.20.2
|
|
1811
1812
|
*/
|
|
1812
1813
|
localStartTime: TlvField(1, TlvEpochS),
|
|
1813
1814
|
|
|
@@ -1816,14 +1817,14 @@ export namespace DoorLock {
|
|
|
1816
1817
|
* time offset based on the local timezone and DST offset on the day represented by the value. LocalEndTime
|
|
1817
1818
|
* shall be greater than LocalStartTime.
|
|
1818
1819
|
*
|
|
1819
|
-
* @see {@link MatterSpecification.
|
|
1820
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.20.3
|
|
1820
1821
|
*/
|
|
1821
1822
|
localEndTime: TlvField(2, TlvEpochS),
|
|
1822
1823
|
|
|
1823
1824
|
/**
|
|
1824
1825
|
* This field shall indicate the operating mode to use during this Holiday schedule start/end time.
|
|
1825
1826
|
*
|
|
1826
|
-
* @see {@link MatterSpecification.
|
|
1827
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.20.4
|
|
1827
1828
|
*/
|
|
1828
1829
|
operatingMode: TlvField(3, TlvEnum<OperatingMode>())
|
|
1829
1830
|
});
|
|
@@ -1831,34 +1832,34 @@ export namespace DoorLock {
|
|
|
1831
1832
|
/**
|
|
1832
1833
|
* Input to the DoorLock setHolidaySchedule command
|
|
1833
1834
|
*
|
|
1834
|
-
* @see {@link MatterSpecification.
|
|
1835
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.20
|
|
1835
1836
|
*/
|
|
1836
1837
|
export interface SetHolidayScheduleRequest extends TypeFromSchema<typeof TlvSetHolidayScheduleRequest> {}
|
|
1837
1838
|
|
|
1838
1839
|
/**
|
|
1839
1840
|
* Input to the DoorLock getHolidaySchedule command
|
|
1840
1841
|
*
|
|
1841
|
-
* @see {@link MatterSpecification.
|
|
1842
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.21
|
|
1842
1843
|
*/
|
|
1843
1844
|
export const TlvGetHolidayScheduleRequest = TlvObject({ holidayIndex: TlvField(0, TlvUInt8.bound({ min: 1 })) });
|
|
1844
1845
|
|
|
1845
1846
|
/**
|
|
1846
1847
|
* Input to the DoorLock getHolidaySchedule command
|
|
1847
1848
|
*
|
|
1848
|
-
* @see {@link MatterSpecification.
|
|
1849
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.21
|
|
1849
1850
|
*/
|
|
1850
1851
|
export interface GetHolidayScheduleRequest extends TypeFromSchema<typeof TlvGetHolidayScheduleRequest> {}
|
|
1851
1852
|
|
|
1852
1853
|
/**
|
|
1853
1854
|
* Returns the Holiday Schedule Entry for the specified Holiday ID.
|
|
1854
1855
|
*
|
|
1855
|
-
* @see {@link MatterSpecification.
|
|
1856
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.22
|
|
1856
1857
|
*/
|
|
1857
1858
|
export const TlvGetHolidayScheduleResponse = TlvObject({
|
|
1858
1859
|
/**
|
|
1859
1860
|
* This field shall indicate the index of the Holiday schedule.
|
|
1860
1861
|
*
|
|
1861
|
-
* @see {@link MatterSpecification.
|
|
1862
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.22.1
|
|
1862
1863
|
*/
|
|
1863
1864
|
holidayIndex: TlvField(0, TlvUInt8.bound({ min: 1 })),
|
|
1864
1865
|
|
|
@@ -1877,7 +1878,7 @@ export namespace DoorLock {
|
|
|
1877
1878
|
* If this field is SUCCESS, the optional fields for this command shall be present. For other (error) status
|
|
1878
1879
|
* values, only the fields up to the status field shall be present.
|
|
1879
1880
|
*
|
|
1880
|
-
* @see {@link MatterSpecification.
|
|
1881
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.22.2
|
|
1881
1882
|
*/
|
|
1882
1883
|
status: TlvField(1, TlvEnum<Status>()),
|
|
1883
1884
|
|
|
@@ -1886,7 +1887,7 @@ export namespace DoorLock {
|
|
|
1886
1887
|
* offset based on the local timezone and DST offset on the day represented by the value. This shall be null if
|
|
1887
1888
|
* the schedule is not set for the HolidayIndex provided.
|
|
1888
1889
|
*
|
|
1889
|
-
* @see {@link MatterSpecification.
|
|
1890
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.22.3
|
|
1890
1891
|
*/
|
|
1891
1892
|
localStartTime: TlvOptionalField(2, TlvNullable(TlvEpochS)),
|
|
1892
1893
|
|
|
@@ -1895,7 +1896,7 @@ export namespace DoorLock {
|
|
|
1895
1896
|
* offset based on the local timezone and DST offset on the day represented by the value. LocalEndTime shall be
|
|
1896
1897
|
* greater than LocalStartTime. This shall be null if the schedule is not set for the HolidayIndex provided.
|
|
1897
1898
|
*
|
|
1898
|
-
* @see {@link MatterSpecification.
|
|
1899
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.22.4
|
|
1899
1900
|
*/
|
|
1900
1901
|
localEndTime: TlvOptionalField(3, TlvNullable(TlvEpochS)),
|
|
1901
1902
|
|
|
@@ -1903,7 +1904,7 @@ export namespace DoorLock {
|
|
|
1903
1904
|
* This field shall indicate the operating mode to use during this Holiday schedule start/end time. This shall
|
|
1904
1905
|
* be null if the schedule is not set for the HolidayIndex provided.
|
|
1905
1906
|
*
|
|
1906
|
-
* @see {@link MatterSpecification.
|
|
1907
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.22.5
|
|
1907
1908
|
*/
|
|
1908
1909
|
operatingMode: TlvOptionalField(4, TlvNullable(TlvEnum<OperatingMode>()))
|
|
1909
1910
|
});
|
|
@@ -1911,20 +1912,20 @@ export namespace DoorLock {
|
|
|
1911
1912
|
/**
|
|
1912
1913
|
* Returns the Holiday Schedule Entry for the specified Holiday ID.
|
|
1913
1914
|
*
|
|
1914
|
-
* @see {@link MatterSpecification.
|
|
1915
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.22
|
|
1915
1916
|
*/
|
|
1916
1917
|
export interface GetHolidayScheduleResponse extends TypeFromSchema<typeof TlvGetHolidayScheduleResponse> {}
|
|
1917
1918
|
|
|
1918
1919
|
/**
|
|
1919
1920
|
* Input to the DoorLock clearHolidaySchedule command
|
|
1920
1921
|
*
|
|
1921
|
-
* @see {@link MatterSpecification.
|
|
1922
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.23
|
|
1922
1923
|
*/
|
|
1923
1924
|
export const TlvClearHolidayScheduleRequest = TlvObject({
|
|
1924
1925
|
/**
|
|
1925
1926
|
* This field shall indicate the Holiday schedule index to clear or 0xFE to clear all Holiday schedules.
|
|
1926
1927
|
*
|
|
1927
|
-
* @see {@link MatterSpecification.
|
|
1928
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.23.1
|
|
1928
1929
|
*/
|
|
1929
1930
|
holidayIndex: TlvField(0, TlvUInt8)
|
|
1930
1931
|
});
|
|
@@ -1932,21 +1933,21 @@ export namespace DoorLock {
|
|
|
1932
1933
|
/**
|
|
1933
1934
|
* Input to the DoorLock clearHolidaySchedule command
|
|
1934
1935
|
*
|
|
1935
|
-
* @see {@link MatterSpecification.
|
|
1936
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.23
|
|
1936
1937
|
*/
|
|
1937
1938
|
export interface ClearHolidayScheduleRequest extends TypeFromSchema<typeof TlvClearHolidayScheduleRequest> {}
|
|
1938
1939
|
|
|
1939
1940
|
/**
|
|
1940
1941
|
* Input to the DoorLock setPinCode command
|
|
1941
1942
|
*
|
|
1942
|
-
* @see {@link MatterSpecification.
|
|
1943
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.4
|
|
1943
1944
|
*/
|
|
1944
1945
|
export const TlvSetPinCodeRequest = TlvObject({
|
|
1945
1946
|
/**
|
|
1946
1947
|
* This field shall indicate the user ID. The value of the UserID field shall be between 0 and the value of the
|
|
1947
1948
|
* NumberOfPINUsersSupported attribute.
|
|
1948
1949
|
*
|
|
1949
|
-
* @see {@link MatterSpecification.
|
|
1950
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.4.1
|
|
1950
1951
|
*/
|
|
1951
1952
|
userId: TlvField(0, TlvUInt16),
|
|
1952
1953
|
|
|
@@ -1954,7 +1955,7 @@ export namespace DoorLock {
|
|
|
1954
1955
|
* This field shall indicate the user status. Only the values 1 (Occupied/Enabled) and 3 (Occupied/Disabled) are
|
|
1955
1956
|
* allowed for UserStatus.
|
|
1956
1957
|
*
|
|
1957
|
-
* @see {@link MatterSpecification.
|
|
1958
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.4.2
|
|
1958
1959
|
*/
|
|
1959
1960
|
userStatus: TlvField(1, TlvNullable(TlvEnum<UserStatus>())),
|
|
1960
1961
|
|
|
@@ -1965,21 +1966,21 @@ export namespace DoorLock {
|
|
|
1965
1966
|
/**
|
|
1966
1967
|
* Input to the DoorLock setPinCode command
|
|
1967
1968
|
*
|
|
1968
|
-
* @see {@link MatterSpecification.
|
|
1969
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.4
|
|
1969
1970
|
*/
|
|
1970
1971
|
export interface SetPinCodeRequest extends TypeFromSchema<typeof TlvSetPinCodeRequest> {}
|
|
1971
1972
|
|
|
1972
1973
|
/**
|
|
1973
1974
|
* Input to the DoorLock getPinCode command
|
|
1974
1975
|
*
|
|
1975
|
-
* @see {@link MatterSpecification.
|
|
1976
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.5
|
|
1976
1977
|
*/
|
|
1977
1978
|
export const TlvGetPinCodeRequest = TlvObject({
|
|
1978
1979
|
/**
|
|
1979
1980
|
* This field shall indicate the user ID. The value of the UserID field shall be between 0 and the value of the
|
|
1980
1981
|
* NumberOfPINUsersSupported attribute.
|
|
1981
1982
|
*
|
|
1982
|
-
* @see {@link MatterSpecification.
|
|
1983
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.5.1
|
|
1983
1984
|
*/
|
|
1984
1985
|
userId: TlvField(0, TlvUInt16)
|
|
1985
1986
|
});
|
|
@@ -1987,7 +1988,7 @@ export namespace DoorLock {
|
|
|
1987
1988
|
/**
|
|
1988
1989
|
* Input to the DoorLock getPinCode command
|
|
1989
1990
|
*
|
|
1990
|
-
* @see {@link MatterSpecification.
|
|
1991
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.5
|
|
1991
1992
|
*/
|
|
1992
1993
|
export interface GetPinCodeRequest extends TypeFromSchema<typeof TlvGetPinCodeRequest> {}
|
|
1993
1994
|
|
|
@@ -2003,7 +2004,7 @@ export namespace DoorLock {
|
|
|
2003
2004
|
* to CONSTRAINT_ERROR when User_ID is less than the max number of users supported, and NOT_FOUND if greater than or
|
|
2004
2005
|
* equal to the max number of users supported.
|
|
2005
2006
|
*
|
|
2006
|
-
* @see {@link MatterSpecification.
|
|
2007
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.6
|
|
2007
2008
|
*/
|
|
2008
2009
|
export const TlvGetPinCodeResponse = TlvObject({
|
|
2009
2010
|
userId: TlvField(0, TlvUInt16),
|
|
@@ -2024,21 +2025,21 @@ export namespace DoorLock {
|
|
|
2024
2025
|
* to CONSTRAINT_ERROR when User_ID is less than the max number of users supported, and NOT_FOUND if greater than or
|
|
2025
2026
|
* equal to the max number of users supported.
|
|
2026
2027
|
*
|
|
2027
|
-
* @see {@link MatterSpecification.
|
|
2028
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.6
|
|
2028
2029
|
*/
|
|
2029
2030
|
export interface GetPinCodeResponse extends TypeFromSchema<typeof TlvGetPinCodeResponse> {}
|
|
2030
2031
|
|
|
2031
2032
|
/**
|
|
2032
2033
|
* Input to the DoorLock clearPinCode command
|
|
2033
2034
|
*
|
|
2034
|
-
* @see {@link MatterSpecification.
|
|
2035
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.7
|
|
2035
2036
|
*/
|
|
2036
2037
|
export const TlvClearPinCodeRequest = TlvObject({
|
|
2037
2038
|
/**
|
|
2038
2039
|
* This field shall specify a valid PIN code slot index or 0xFFFE to indicate all PIN code slots shall be
|
|
2039
2040
|
* cleared.
|
|
2040
2041
|
*
|
|
2041
|
-
* @see {@link MatterSpecification.
|
|
2042
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.7.1
|
|
2042
2043
|
*/
|
|
2043
2044
|
pinSlotIndex: TlvField(0, TlvUInt16)
|
|
2044
2045
|
});
|
|
@@ -2046,20 +2047,20 @@ export namespace DoorLock {
|
|
|
2046
2047
|
/**
|
|
2047
2048
|
* Input to the DoorLock clearPinCode command
|
|
2048
2049
|
*
|
|
2049
|
-
* @see {@link MatterSpecification.
|
|
2050
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.7
|
|
2050
2051
|
*/
|
|
2051
2052
|
export interface ClearPinCodeRequest extends TypeFromSchema<typeof TlvClearPinCodeRequest> {}
|
|
2052
2053
|
|
|
2053
2054
|
/**
|
|
2054
2055
|
* Input to the DoorLock setAliroReaderConfig command
|
|
2055
2056
|
*
|
|
2056
|
-
* @see {@link MatterSpecification.
|
|
2057
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.42
|
|
2057
2058
|
*/
|
|
2058
2059
|
export const TlvSetAliroReaderConfigRequest = TlvObject({
|
|
2059
2060
|
/**
|
|
2060
2061
|
* This field shall indicate the signing key component of the Reader’s key pair.
|
|
2061
2062
|
*
|
|
2062
|
-
* @see {@link MatterSpecification.
|
|
2063
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.42.1
|
|
2063
2064
|
*/
|
|
2064
2065
|
signingKey: TlvField(0, TlvByteString.bound({ length: 32 })),
|
|
2065
2066
|
|
|
@@ -2067,21 +2068,21 @@ export namespace DoorLock {
|
|
|
2067
2068
|
* This field shall indicate the verification key component of the Reader’s key pair. This shall be an
|
|
2068
2069
|
* uncompressed elliptic curve public key as defined in section 2.3.3 of SEC 1.
|
|
2069
2070
|
*
|
|
2070
|
-
* @see {@link MatterSpecification.
|
|
2071
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.42.2
|
|
2071
2072
|
*/
|
|
2072
2073
|
verificationKey: TlvField(1, TlvByteString.bound({ length: 65 })),
|
|
2073
2074
|
|
|
2074
2075
|
/**
|
|
2075
2076
|
* This field shall indicate the reader group identifier for the lock.
|
|
2076
2077
|
*
|
|
2077
|
-
* @see {@link MatterSpecification.
|
|
2078
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.42.3
|
|
2078
2079
|
*/
|
|
2079
2080
|
groupIdentifier: TlvField(2, TlvByteString.bound({ length: 16 })),
|
|
2080
2081
|
|
|
2081
2082
|
/**
|
|
2082
2083
|
* This field shall indicate the group resolving key for the lock.
|
|
2083
2084
|
*
|
|
2084
|
-
* @see {@link MatterSpecification.
|
|
2085
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.42.4
|
|
2085
2086
|
*/
|
|
2086
2087
|
groupResolvingKey: TlvOptionalField(3, TlvByteString.bound({ length: 16 }))
|
|
2087
2088
|
});
|
|
@@ -2089,21 +2090,21 @@ export namespace DoorLock {
|
|
|
2089
2090
|
/**
|
|
2090
2091
|
* Input to the DoorLock setAliroReaderConfig command
|
|
2091
2092
|
*
|
|
2092
|
-
* @see {@link MatterSpecification.
|
|
2093
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.42
|
|
2093
2094
|
*/
|
|
2094
2095
|
export interface SetAliroReaderConfigRequest extends TypeFromSchema<typeof TlvSetAliroReaderConfigRequest> {}
|
|
2095
2096
|
|
|
2096
2097
|
/**
|
|
2097
2098
|
* Input to the DoorLock setUserStatus command
|
|
2098
2099
|
*
|
|
2099
|
-
* @see {@link MatterSpecification.
|
|
2100
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.9
|
|
2100
2101
|
*/
|
|
2101
2102
|
export const TlvSetUserStatusRequest = TlvObject({
|
|
2102
2103
|
/**
|
|
2103
2104
|
* This field shall indicate the user ID. The value of the UserID field shall be between 0 and the value of the
|
|
2104
2105
|
* NumberOfPINUsersSupported attribute.
|
|
2105
2106
|
*
|
|
2106
|
-
* @see {@link MatterSpecification.
|
|
2107
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.9.1
|
|
2107
2108
|
*/
|
|
2108
2109
|
userId: TlvField(0, TlvUInt16),
|
|
2109
2110
|
|
|
@@ -2111,7 +2112,7 @@ export namespace DoorLock {
|
|
|
2111
2112
|
* UserStatus value of Available is not allowed. In order to clear a user id, the ClearUser Command shall be
|
|
2112
2113
|
* used. For user status value please refer to UserStatusEnum.
|
|
2113
2114
|
*
|
|
2114
|
-
* @see {@link MatterSpecification.
|
|
2115
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.9.2
|
|
2115
2116
|
*/
|
|
2116
2117
|
userStatus: TlvField(1, TlvEnum<UserStatus>())
|
|
2117
2118
|
});
|
|
@@ -2119,21 +2120,21 @@ export namespace DoorLock {
|
|
|
2119
2120
|
/**
|
|
2120
2121
|
* Input to the DoorLock setUserStatus command
|
|
2121
2122
|
*
|
|
2122
|
-
* @see {@link MatterSpecification.
|
|
2123
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.9
|
|
2123
2124
|
*/
|
|
2124
2125
|
export interface SetUserStatusRequest extends TypeFromSchema<typeof TlvSetUserStatusRequest> {}
|
|
2125
2126
|
|
|
2126
2127
|
/**
|
|
2127
2128
|
* Input to the DoorLock getUserStatus command
|
|
2128
2129
|
*
|
|
2129
|
-
* @see {@link MatterSpecification.
|
|
2130
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.10
|
|
2130
2131
|
*/
|
|
2131
2132
|
export const TlvGetUserStatusRequest = TlvObject({
|
|
2132
2133
|
/**
|
|
2133
2134
|
* This field shall indicate the user ID. The value of the UserID field shall be between 0 and the value of the
|
|
2134
2135
|
* NumberOfPINUsersSupported attribute.
|
|
2135
2136
|
*
|
|
2136
|
-
* @see {@link MatterSpecification.
|
|
2137
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.10.1
|
|
2137
2138
|
*/
|
|
2138
2139
|
userId: TlvField(0, TlvUInt16)
|
|
2139
2140
|
});
|
|
@@ -2141,27 +2142,27 @@ export namespace DoorLock {
|
|
|
2141
2142
|
/**
|
|
2142
2143
|
* Input to the DoorLock getUserStatus command
|
|
2143
2144
|
*
|
|
2144
|
-
* @see {@link MatterSpecification.
|
|
2145
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.10
|
|
2145
2146
|
*/
|
|
2146
2147
|
export interface GetUserStatusRequest extends TypeFromSchema<typeof TlvGetUserStatusRequest> {}
|
|
2147
2148
|
|
|
2148
2149
|
/**
|
|
2149
2150
|
* Returns the user status for the specified user ID.
|
|
2150
2151
|
*
|
|
2151
|
-
* @see {@link MatterSpecification.
|
|
2152
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.11
|
|
2152
2153
|
*/
|
|
2153
2154
|
export const TlvGetUserStatusResponse = TlvObject({
|
|
2154
2155
|
/**
|
|
2155
2156
|
* This field shall indicate the user ID provided in the request.
|
|
2156
2157
|
*
|
|
2157
|
-
* @see {@link MatterSpecification.
|
|
2158
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.11.1
|
|
2158
2159
|
*/
|
|
2159
2160
|
userId: TlvField(0, TlvUInt16),
|
|
2160
2161
|
|
|
2161
2162
|
/**
|
|
2162
2163
|
* This field shall indicate the current status of the requested user ID.
|
|
2163
2164
|
*
|
|
2164
|
-
* @see {@link MatterSpecification.
|
|
2165
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.11.2
|
|
2165
2166
|
*/
|
|
2166
2167
|
userStatus: TlvField(1, TlvEnum<UserStatus>())
|
|
2167
2168
|
});
|
|
@@ -2169,27 +2170,27 @@ export namespace DoorLock {
|
|
|
2169
2170
|
/**
|
|
2170
2171
|
* Returns the user status for the specified user ID.
|
|
2171
2172
|
*
|
|
2172
|
-
* @see {@link MatterSpecification.
|
|
2173
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.11
|
|
2173
2174
|
*/
|
|
2174
2175
|
export interface GetUserStatusResponse extends TypeFromSchema<typeof TlvGetUserStatusResponse> {}
|
|
2175
2176
|
|
|
2176
2177
|
/**
|
|
2177
2178
|
* Input to the DoorLock setUserType command
|
|
2178
2179
|
*
|
|
2179
|
-
* @see {@link MatterSpecification.
|
|
2180
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.24
|
|
2180
2181
|
*/
|
|
2181
2182
|
export const TlvSetUserTypeRequest = TlvObject({
|
|
2182
2183
|
/**
|
|
2183
2184
|
* This field shall indicate the user ID.
|
|
2184
2185
|
*
|
|
2185
|
-
* @see {@link MatterSpecification.
|
|
2186
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.24.1
|
|
2186
2187
|
*/
|
|
2187
2188
|
userId: TlvField(0, TlvUInt16),
|
|
2188
2189
|
|
|
2189
2190
|
/**
|
|
2190
2191
|
* This field shall indicate the user type.
|
|
2191
2192
|
*
|
|
2192
|
-
* @see {@link MatterSpecification.
|
|
2193
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.24.2
|
|
2193
2194
|
*/
|
|
2194
2195
|
userType: TlvField(1, TlvEnum<UserType>())
|
|
2195
2196
|
});
|
|
@@ -2197,21 +2198,21 @@ export namespace DoorLock {
|
|
|
2197
2198
|
/**
|
|
2198
2199
|
* Input to the DoorLock setUserType command
|
|
2199
2200
|
*
|
|
2200
|
-
* @see {@link MatterSpecification.
|
|
2201
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.24
|
|
2201
2202
|
*/
|
|
2202
2203
|
export interface SetUserTypeRequest extends TypeFromSchema<typeof TlvSetUserTypeRequest> {}
|
|
2203
2204
|
|
|
2204
2205
|
/**
|
|
2205
2206
|
* Input to the DoorLock getUserType command
|
|
2206
2207
|
*
|
|
2207
|
-
* @see {@link MatterSpecification.
|
|
2208
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.25
|
|
2208
2209
|
*/
|
|
2209
2210
|
export const TlvGetUserTypeRequest = TlvObject({ userId: TlvField(0, TlvUInt16) });
|
|
2210
2211
|
|
|
2211
2212
|
/**
|
|
2212
2213
|
* Input to the DoorLock getUserType command
|
|
2213
2214
|
*
|
|
2214
|
-
* @see {@link MatterSpecification.
|
|
2215
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.25
|
|
2215
2216
|
*/
|
|
2216
2217
|
export interface GetUserTypeRequest extends TypeFromSchema<typeof TlvGetUserTypeRequest> {}
|
|
2217
2218
|
|
|
@@ -2219,7 +2220,7 @@ export namespace DoorLock {
|
|
|
2219
2220
|
* Returns the user type for the specified user ID. If the requested User ID is invalid, send Default Response with
|
|
2220
2221
|
* an error status equal to FAILURE.
|
|
2221
2222
|
*
|
|
2222
|
-
* @see {@link MatterSpecification.
|
|
2223
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.26
|
|
2223
2224
|
*/
|
|
2224
2225
|
export const TlvGetUserTypeResponse = TlvObject({
|
|
2225
2226
|
userId: TlvField(0, TlvUInt16),
|
|
@@ -2230,14 +2231,14 @@ export namespace DoorLock {
|
|
|
2230
2231
|
* Returns the user type for the specified user ID. If the requested User ID is invalid, send Default Response with
|
|
2231
2232
|
* an error status equal to FAILURE.
|
|
2232
2233
|
*
|
|
2233
|
-
* @see {@link MatterSpecification.
|
|
2234
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.26
|
|
2234
2235
|
*/
|
|
2235
2236
|
export interface GetUserTypeResponse extends TypeFromSchema<typeof TlvGetUserTypeResponse> {}
|
|
2236
2237
|
|
|
2237
2238
|
/**
|
|
2238
2239
|
* Input to the DoorLock setRfidCode command
|
|
2239
2240
|
*
|
|
2240
|
-
* @see {@link MatterSpecification.
|
|
2241
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.27
|
|
2241
2242
|
*/
|
|
2242
2243
|
export const TlvSetRfidCodeRequest = TlvObject({
|
|
2243
2244
|
/**
|
|
@@ -2245,7 +2246,7 @@ export namespace DoorLock {
|
|
|
2245
2246
|
*
|
|
2246
2247
|
* The value of the UserID field shall be between 0 and the value of the NumberOfRFIDUsersSupported attribute.
|
|
2247
2248
|
*
|
|
2248
|
-
* @see {@link MatterSpecification.
|
|
2249
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.27.1
|
|
2249
2250
|
*/
|
|
2250
2251
|
userId: TlvField(0, TlvUInt16),
|
|
2251
2252
|
|
|
@@ -2255,14 +2256,14 @@ export namespace DoorLock {
|
|
|
2255
2256
|
*
|
|
2256
2257
|
* Only the values 1 (Occupied/Enabled) and 3 (Occupied/Disabled) are allowed for UserStatus.
|
|
2257
2258
|
*
|
|
2258
|
-
* @see {@link MatterSpecification.
|
|
2259
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.27.2
|
|
2259
2260
|
*/
|
|
2260
2261
|
userStatus: TlvField(1, TlvNullable(TlvEnum<UserStatus>())),
|
|
2261
2262
|
|
|
2262
2263
|
/**
|
|
2263
2264
|
* The values are the same as used for SetPINCode command.
|
|
2264
2265
|
*
|
|
2265
|
-
* @see {@link MatterSpecification.
|
|
2266
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.27.3
|
|
2266
2267
|
*/
|
|
2267
2268
|
userType: TlvField(2, TlvNullable(TlvEnum<UserType>())),
|
|
2268
2269
|
|
|
@@ -2272,14 +2273,14 @@ export namespace DoorLock {
|
|
|
2272
2273
|
/**
|
|
2273
2274
|
* Input to the DoorLock setRfidCode command
|
|
2274
2275
|
*
|
|
2275
|
-
* @see {@link MatterSpecification.
|
|
2276
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.27
|
|
2276
2277
|
*/
|
|
2277
2278
|
export interface SetRfidCodeRequest extends TypeFromSchema<typeof TlvSetRfidCodeRequest> {}
|
|
2278
2279
|
|
|
2279
2280
|
/**
|
|
2280
2281
|
* Input to the DoorLock getRfidCode command
|
|
2281
2282
|
*
|
|
2282
|
-
* @see {@link MatterSpecification.
|
|
2283
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.28
|
|
2283
2284
|
*/
|
|
2284
2285
|
export const TlvGetRfidCodeRequest = TlvObject({
|
|
2285
2286
|
/**
|
|
@@ -2287,7 +2288,7 @@ export namespace DoorLock {
|
|
|
2287
2288
|
*
|
|
2288
2289
|
* The value of the UserID field shall be between 0 and the value of the NumberOfRFIDUsersSupported attribute.
|
|
2289
2290
|
*
|
|
2290
|
-
* @see {@link MatterSpecification.
|
|
2291
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.28.1
|
|
2291
2292
|
*/
|
|
2292
2293
|
userId: TlvField(0, TlvUInt16)
|
|
2293
2294
|
});
|
|
@@ -2295,7 +2296,7 @@ export namespace DoorLock {
|
|
|
2295
2296
|
/**
|
|
2296
2297
|
* Input to the DoorLock getRfidCode command
|
|
2297
2298
|
*
|
|
2298
|
-
* @see {@link MatterSpecification.
|
|
2299
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.28
|
|
2299
2300
|
*/
|
|
2300
2301
|
export interface GetRfidCodeRequest extends TypeFromSchema<typeof TlvGetRfidCodeRequest> {}
|
|
2301
2302
|
|
|
@@ -2312,7 +2313,7 @@ export namespace DoorLock {
|
|
|
2312
2313
|
* CONSTRAINT_ERROR when User_ID is less than the max number of users supported, and NOT_FOUND if greater than or
|
|
2313
2314
|
* equal to the max number of users supported.
|
|
2314
2315
|
*
|
|
2315
|
-
* @see {@link MatterSpecification.
|
|
2316
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.29
|
|
2316
2317
|
*/
|
|
2317
2318
|
export const TlvGetRfidCodeResponse = TlvObject({
|
|
2318
2319
|
userId: TlvField(0, TlvUInt16),
|
|
@@ -2334,21 +2335,21 @@ export namespace DoorLock {
|
|
|
2334
2335
|
* CONSTRAINT_ERROR when User_ID is less than the max number of users supported, and NOT_FOUND if greater than or
|
|
2335
2336
|
* equal to the max number of users supported.
|
|
2336
2337
|
*
|
|
2337
|
-
* @see {@link MatterSpecification.
|
|
2338
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.29
|
|
2338
2339
|
*/
|
|
2339
2340
|
export interface GetRfidCodeResponse extends TypeFromSchema<typeof TlvGetRfidCodeResponse> {}
|
|
2340
2341
|
|
|
2341
2342
|
/**
|
|
2342
2343
|
* Input to the DoorLock clearRfidCode command
|
|
2343
2344
|
*
|
|
2344
|
-
* @see {@link MatterSpecification.
|
|
2345
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.30
|
|
2345
2346
|
*/
|
|
2346
2347
|
export const TlvClearRfidCodeRequest = TlvObject({
|
|
2347
2348
|
/**
|
|
2348
2349
|
* This field shall indicate a valid RFID code slot index or 0xFFFE to indicate all RFID code slots shall be
|
|
2349
2350
|
* cleared.
|
|
2350
2351
|
*
|
|
2351
|
-
* @see {@link MatterSpecification.
|
|
2352
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.30.1
|
|
2352
2353
|
*/
|
|
2353
2354
|
rfidSlotIndex: TlvField(0, TlvUInt16)
|
|
2354
2355
|
});
|
|
@@ -2356,20 +2357,20 @@ export namespace DoorLock {
|
|
|
2356
2357
|
/**
|
|
2357
2358
|
* Input to the DoorLock clearRfidCode command
|
|
2358
2359
|
*
|
|
2359
|
-
* @see {@link MatterSpecification.
|
|
2360
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.30
|
|
2360
2361
|
*/
|
|
2361
2362
|
export interface ClearRfidCodeRequest extends TypeFromSchema<typeof TlvClearRfidCodeRequest> {}
|
|
2362
2363
|
|
|
2363
2364
|
/**
|
|
2364
2365
|
* Input to the DoorLock unboltDoor command
|
|
2365
2366
|
*
|
|
2366
|
-
* @see {@link MatterSpecification.
|
|
2367
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.41
|
|
2367
2368
|
*/
|
|
2368
2369
|
export const TlvUnboltDoorRequest = TlvObject({
|
|
2369
2370
|
/**
|
|
2370
2371
|
* See PINCode field.
|
|
2371
2372
|
*
|
|
2372
|
-
* @see {@link MatterSpecification.
|
|
2373
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.41.1
|
|
2373
2374
|
*/
|
|
2374
2375
|
pinCode: TlvOptionalField(0, TlvByteString)
|
|
2375
2376
|
});
|
|
@@ -2377,12 +2378,12 @@ export namespace DoorLock {
|
|
|
2377
2378
|
/**
|
|
2378
2379
|
* Input to the DoorLock unboltDoor command
|
|
2379
2380
|
*
|
|
2380
|
-
* @see {@link MatterSpecification.
|
|
2381
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.41
|
|
2381
2382
|
*/
|
|
2382
2383
|
export interface UnboltDoorRequest extends TypeFromSchema<typeof TlvUnboltDoorRequest> {}
|
|
2383
2384
|
|
|
2384
2385
|
/**
|
|
2385
|
-
* @see {@link MatterSpecification.
|
|
2386
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.19
|
|
2386
2387
|
*/
|
|
2387
2388
|
export enum LockState {
|
|
2388
2389
|
/**
|
|
@@ -2407,7 +2408,7 @@ export namespace DoorLock {
|
|
|
2407
2408
|
}
|
|
2408
2409
|
|
|
2409
2410
|
/**
|
|
2410
|
-
* @see {@link MatterSpecification.
|
|
2411
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.20
|
|
2411
2412
|
*/
|
|
2412
2413
|
export enum LockType {
|
|
2413
2414
|
/**
|
|
@@ -2472,7 +2473,7 @@ export namespace DoorLock {
|
|
|
2472
2473
|
}
|
|
2473
2474
|
|
|
2474
2475
|
/**
|
|
2475
|
-
* @see {@link MatterSpecification.
|
|
2476
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.21
|
|
2476
2477
|
*/
|
|
2477
2478
|
export enum LedSetting {
|
|
2478
2479
|
/**
|
|
@@ -2492,7 +2493,7 @@ export namespace DoorLock {
|
|
|
2492
2493
|
}
|
|
2493
2494
|
|
|
2494
2495
|
/**
|
|
2495
|
-
* @see {@link MatterSpecification.
|
|
2496
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.22
|
|
2496
2497
|
*/
|
|
2497
2498
|
export enum SoundVolume {
|
|
2498
2499
|
/**
|
|
@@ -2521,7 +2522,7 @@ export namespace DoorLock {
|
|
|
2521
2522
|
* that the operating mode IS supported. This is the inverse of most bitmaps in this specification, and it is
|
|
2522
2523
|
* RECOMMENDED that clients carefully take this into consideration.
|
|
2523
2524
|
*
|
|
2524
|
-
* @see {@link MatterSpecification.
|
|
2525
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.3
|
|
2525
2526
|
*/
|
|
2526
2527
|
export const OperatingModes = {
|
|
2527
2528
|
/**
|
|
@@ -2556,7 +2557,7 @@ export namespace DoorLock {
|
|
|
2556
2557
|
};
|
|
2557
2558
|
|
|
2558
2559
|
/**
|
|
2559
|
-
* @see {@link MatterSpecification.
|
|
2560
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.4
|
|
2560
2561
|
*/
|
|
2561
2562
|
export const ConfigurationRegister = {
|
|
2562
2563
|
/**
|
|
@@ -2568,7 +2569,7 @@ export namespace DoorLock {
|
|
|
2568
2569
|
*
|
|
2569
2570
|
* • 1 = Local programming is enabled
|
|
2570
2571
|
*
|
|
2571
|
-
* @see {@link MatterSpecification.
|
|
2572
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.4.1
|
|
2572
2573
|
*/
|
|
2573
2574
|
localProgramming: BitFlag(0),
|
|
2574
2575
|
|
|
@@ -2581,7 +2582,7 @@ export namespace DoorLock {
|
|
|
2581
2582
|
*
|
|
2582
2583
|
* • 1 = Keypad interface is enabled
|
|
2583
2584
|
*
|
|
2584
|
-
* @see {@link MatterSpecification.
|
|
2585
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.4.2
|
|
2585
2586
|
*/
|
|
2586
2587
|
keypadInterface: BitFlag(1),
|
|
2587
2588
|
|
|
@@ -2594,7 +2595,7 @@ export namespace DoorLock {
|
|
|
2594
2595
|
*
|
|
2595
2596
|
* • 1 = Remote interface is enabled
|
|
2596
2597
|
*
|
|
2597
|
-
* @see {@link MatterSpecification.
|
|
2598
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.4.3
|
|
2598
2599
|
*/
|
|
2599
2600
|
remoteInterface: BitFlag(2),
|
|
2600
2601
|
|
|
@@ -2607,7 +2608,7 @@ export namespace DoorLock {
|
|
|
2607
2608
|
*
|
|
2608
2609
|
* • 1 = Sound volume value is equal to something other than 0
|
|
2609
2610
|
*
|
|
2610
|
-
* @see {@link MatterSpecification.
|
|
2611
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.4.4
|
|
2611
2612
|
*/
|
|
2612
2613
|
soundVolume: BitFlag(5),
|
|
2613
2614
|
|
|
@@ -2620,7 +2621,7 @@ export namespace DoorLock {
|
|
|
2620
2621
|
*
|
|
2621
2622
|
* • 1 = Auto relock time value is equal to something other than 0
|
|
2622
2623
|
*
|
|
2623
|
-
* @see {@link MatterSpecification.
|
|
2624
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.4.5
|
|
2624
2625
|
*/
|
|
2625
2626
|
autoRelockTime: BitFlag(6),
|
|
2626
2627
|
|
|
@@ -2633,13 +2634,13 @@ export namespace DoorLock {
|
|
|
2633
2634
|
*
|
|
2634
2635
|
* • 1 = LED settings value is equal to something other than 0
|
|
2635
2636
|
*
|
|
2636
|
-
* @see {@link MatterSpecification.
|
|
2637
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.4.6
|
|
2637
2638
|
*/
|
|
2638
2639
|
ledSettings: BitFlag(7)
|
|
2639
2640
|
};
|
|
2640
2641
|
|
|
2641
2642
|
/**
|
|
2642
|
-
* @see {@link MatterSpecification.
|
|
2643
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.5
|
|
2643
2644
|
*/
|
|
2644
2645
|
export const LocalProgrammingFeatures = {
|
|
2645
2646
|
/**
|
|
@@ -2651,7 +2652,7 @@ export namespace DoorLock {
|
|
|
2651
2652
|
*
|
|
2652
2653
|
* • 1 = This ability is enabled
|
|
2653
2654
|
*
|
|
2654
|
-
* @see {@link MatterSpecification.
|
|
2655
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.5.1
|
|
2655
2656
|
*/
|
|
2656
2657
|
addUsersCredentialsSchedules: BitFlag(0),
|
|
2657
2658
|
|
|
@@ -2664,7 +2665,7 @@ export namespace DoorLock {
|
|
|
2664
2665
|
*
|
|
2665
2666
|
* • 1 = This ability is enabled
|
|
2666
2667
|
*
|
|
2667
|
-
* @see {@link MatterSpecification.
|
|
2668
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.5.2
|
|
2668
2669
|
*/
|
|
2669
2670
|
modifyUsersCredentialsSchedules: BitFlag(1),
|
|
2670
2671
|
|
|
@@ -2677,7 +2678,7 @@ export namespace DoorLock {
|
|
|
2677
2678
|
*
|
|
2678
2679
|
* • 1 = This ability is enabled
|
|
2679
2680
|
*
|
|
2680
|
-
* @see {@link MatterSpecification.
|
|
2681
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.5.3
|
|
2681
2682
|
*/
|
|
2682
2683
|
clearUsersCredentialsSchedules: BitFlag(2),
|
|
2683
2684
|
|
|
@@ -2690,13 +2691,13 @@ export namespace DoorLock {
|
|
|
2690
2691
|
*
|
|
2691
2692
|
* • 1 = This ability is enabled
|
|
2692
2693
|
*
|
|
2693
|
-
* @see {@link MatterSpecification.
|
|
2694
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.5.4
|
|
2694
2695
|
*/
|
|
2695
2696
|
adjustSettings: BitFlag(3)
|
|
2696
2697
|
};
|
|
2697
2698
|
|
|
2698
2699
|
/**
|
|
2699
|
-
* @see {@link MatterSpecification.
|
|
2700
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.6
|
|
2700
2701
|
*/
|
|
2701
2702
|
export const AlarmMask = {
|
|
2702
2703
|
/**
|
|
@@ -2733,7 +2734,7 @@ export namespace DoorLock {
|
|
|
2733
2734
|
/**
|
|
2734
2735
|
* Input to the DoorLock lockDoor command
|
|
2735
2736
|
*
|
|
2736
|
-
* @see {@link MatterSpecification.
|
|
2737
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.1
|
|
2737
2738
|
*/
|
|
2738
2739
|
export const TlvLockDoorRequest = TlvObject({
|
|
2739
2740
|
/**
|
|
@@ -2747,7 +2748,7 @@ export namespace DoorLock {
|
|
|
2747
2748
|
* UserCodeTemporaryDisableTime will be triggered if the WrongCodeEntryLimit is exceeded. The lock shall ignore
|
|
2748
2749
|
* any attempts to lock/unlock the door until the UserCodeTemporaryDisableTime expires.
|
|
2749
2750
|
*
|
|
2750
|
-
* @see {@link MatterSpecification.
|
|
2751
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.1.1
|
|
2751
2752
|
*/
|
|
2752
2753
|
pinCode: TlvOptionalField(0, TlvByteString)
|
|
2753
2754
|
});
|
|
@@ -2755,20 +2756,20 @@ export namespace DoorLock {
|
|
|
2755
2756
|
/**
|
|
2756
2757
|
* Input to the DoorLock lockDoor command
|
|
2757
2758
|
*
|
|
2758
|
-
* @see {@link MatterSpecification.
|
|
2759
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.1
|
|
2759
2760
|
*/
|
|
2760
2761
|
export interface LockDoorRequest extends TypeFromSchema<typeof TlvLockDoorRequest> {}
|
|
2761
2762
|
|
|
2762
2763
|
/**
|
|
2763
2764
|
* Input to the DoorLock unlockDoor command
|
|
2764
2765
|
*
|
|
2765
|
-
* @see {@link MatterSpecification.
|
|
2766
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.2
|
|
2766
2767
|
*/
|
|
2767
2768
|
export const TlvUnlockDoorRequest = TlvObject({
|
|
2768
2769
|
/**
|
|
2769
2770
|
* See PINCode field.
|
|
2770
2771
|
*
|
|
2771
|
-
* @see {@link MatterSpecification.
|
|
2772
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.2.1
|
|
2772
2773
|
*/
|
|
2773
2774
|
pinCode: TlvOptionalField(0, TlvByteString)
|
|
2774
2775
|
});
|
|
@@ -2776,28 +2777,28 @@ export namespace DoorLock {
|
|
|
2776
2777
|
/**
|
|
2777
2778
|
* Input to the DoorLock unlockDoor command
|
|
2778
2779
|
*
|
|
2779
|
-
* @see {@link MatterSpecification.
|
|
2780
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.2
|
|
2780
2781
|
*/
|
|
2781
2782
|
export interface UnlockDoorRequest extends TypeFromSchema<typeof TlvUnlockDoorRequest> {}
|
|
2782
2783
|
|
|
2783
2784
|
/**
|
|
2784
2785
|
* Input to the DoorLock unlockWithTimeout command
|
|
2785
2786
|
*
|
|
2786
|
-
* @see {@link MatterSpecification.
|
|
2787
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.3
|
|
2787
2788
|
*/
|
|
2788
2789
|
export const TlvUnlockWithTimeoutRequest = TlvObject({
|
|
2789
2790
|
/**
|
|
2790
2791
|
* This field shall indicate the timeout in seconds to wait before relocking the door lock. This value is
|
|
2791
2792
|
* independent of the AutoRelockTime attribute value.
|
|
2792
2793
|
*
|
|
2793
|
-
* @see {@link MatterSpecification.
|
|
2794
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.3.1
|
|
2794
2795
|
*/
|
|
2795
2796
|
timeout: TlvField(0, TlvUInt16),
|
|
2796
2797
|
|
|
2797
2798
|
/**
|
|
2798
2799
|
* See PINCode field.
|
|
2799
2800
|
*
|
|
2800
|
-
* @see {@link MatterSpecification.
|
|
2801
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.3.2
|
|
2801
2802
|
*/
|
|
2802
2803
|
pinCode: TlvOptionalField(1, TlvByteString)
|
|
2803
2804
|
});
|
|
@@ -2805,14 +2806,14 @@ export namespace DoorLock {
|
|
|
2805
2806
|
/**
|
|
2806
2807
|
* Input to the DoorLock unlockWithTimeout command
|
|
2807
2808
|
*
|
|
2808
|
-
* @see {@link MatterSpecification.
|
|
2809
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.3
|
|
2809
2810
|
*/
|
|
2810
2811
|
export interface UnlockWithTimeoutRequest extends TypeFromSchema<typeof TlvUnlockWithTimeoutRequest> {}
|
|
2811
2812
|
|
|
2812
2813
|
/**
|
|
2813
2814
|
* This enumeration shall indicate the alarm type.
|
|
2814
2815
|
*
|
|
2815
|
-
* @see {@link MatterSpecification.
|
|
2816
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.7
|
|
2816
2817
|
*/
|
|
2817
2818
|
export enum AlarmCode {
|
|
2818
2819
|
/**
|
|
@@ -2859,13 +2860,13 @@ export namespace DoorLock {
|
|
|
2859
2860
|
/**
|
|
2860
2861
|
* Body of the DoorLock doorLockAlarm event
|
|
2861
2862
|
*
|
|
2862
|
-
* @see {@link MatterSpecification.
|
|
2863
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.1
|
|
2863
2864
|
*/
|
|
2864
2865
|
export const TlvDoorLockAlarmEvent = TlvObject({
|
|
2865
2866
|
/**
|
|
2866
2867
|
* This field shall indicate the alarm code of the event that has happened.
|
|
2867
2868
|
*
|
|
2868
|
-
* @see {@link MatterSpecification.
|
|
2869
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.1.1
|
|
2869
2870
|
*/
|
|
2870
2871
|
alarmCode: TlvField(0, TlvEnum<AlarmCode>())
|
|
2871
2872
|
});
|
|
@@ -2873,14 +2874,14 @@ export namespace DoorLock {
|
|
|
2873
2874
|
/**
|
|
2874
2875
|
* Body of the DoorLock doorLockAlarm event
|
|
2875
2876
|
*
|
|
2876
|
-
* @see {@link MatterSpecification.
|
|
2877
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.1
|
|
2877
2878
|
*/
|
|
2878
2879
|
export interface DoorLockAlarmEvent extends TypeFromSchema<typeof TlvDoorLockAlarmEvent> {}
|
|
2879
2880
|
|
|
2880
2881
|
/**
|
|
2881
2882
|
* This enumeration shall indicate the type of Lock operation performed.
|
|
2882
2883
|
*
|
|
2883
|
-
* @see {@link MatterSpecification.
|
|
2884
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.13
|
|
2884
2885
|
*/
|
|
2885
2886
|
export enum LockOperationType {
|
|
2886
2887
|
/**
|
|
@@ -2912,20 +2913,20 @@ export namespace DoorLock {
|
|
|
2912
2913
|
/**
|
|
2913
2914
|
* Body of the DoorLock lockOperation event
|
|
2914
2915
|
*
|
|
2915
|
-
* @see {@link MatterSpecification.
|
|
2916
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.3
|
|
2916
2917
|
*/
|
|
2917
2918
|
export const TlvLockOperationEvent = TlvObject({
|
|
2918
2919
|
/**
|
|
2919
2920
|
* This field shall indicate the type of the lock operation that was performed.
|
|
2920
2921
|
*
|
|
2921
|
-
* @see {@link MatterSpecification.
|
|
2922
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.3.1
|
|
2922
2923
|
*/
|
|
2923
2924
|
lockOperationType: TlvField(0, TlvEnum<LockOperationType>()),
|
|
2924
2925
|
|
|
2925
2926
|
/**
|
|
2926
2927
|
* This field shall indicate the source of the lock operation that was performed.
|
|
2927
2928
|
*
|
|
2928
|
-
* @see {@link MatterSpecification.
|
|
2929
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.3.2
|
|
2929
2930
|
*/
|
|
2930
2931
|
operationSource: TlvField(1, TlvEnum<OperationSource>()),
|
|
2931
2932
|
|
|
@@ -2934,7 +2935,7 @@ export namespace DoorLock {
|
|
|
2934
2935
|
* user index that can be determined for the given operation source. This shall NOT be null if a user index can
|
|
2935
2936
|
* be determined. In particular, this shall NOT be null if the operation was associated with a valid credential.
|
|
2936
2937
|
*
|
|
2937
|
-
* @see {@link MatterSpecification.
|
|
2938
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.3.3
|
|
2938
2939
|
*/
|
|
2939
2940
|
userIndex: TlvField(2, TlvNullable(TlvUInt16)),
|
|
2940
2941
|
|
|
@@ -2943,7 +2944,7 @@ export namespace DoorLock {
|
|
|
2943
2944
|
* null if there is no fabric that can be determined for the given operation source. This shall NOT be null if
|
|
2944
2945
|
* the operation source is "Remote".
|
|
2945
2946
|
*
|
|
2946
|
-
* @see {@link MatterSpecification.
|
|
2947
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.3.4
|
|
2947
2948
|
*/
|
|
2948
2949
|
fabricIndex: TlvField(3, TlvNullable(TlvFabricIndex)),
|
|
2949
2950
|
|
|
@@ -2952,7 +2953,7 @@ export namespace DoorLock {
|
|
|
2952
2953
|
* there is no Node associated with the given operation source. This shall NOT be null if the operation source
|
|
2953
2954
|
* is "Remote".
|
|
2954
2955
|
*
|
|
2955
|
-
* @see {@link MatterSpecification.
|
|
2956
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.3.5
|
|
2956
2957
|
*/
|
|
2957
2958
|
sourceNode: TlvField(4, TlvNullable(TlvNodeId)),
|
|
2958
2959
|
|
|
@@ -2960,7 +2961,7 @@ export namespace DoorLock {
|
|
|
2960
2961
|
* This field shall indicate the list of credentials used in performing the lock operation. This shall be null
|
|
2961
2962
|
* if no credentials were involved.
|
|
2962
2963
|
*
|
|
2963
|
-
* @see {@link MatterSpecification.
|
|
2964
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.3.6
|
|
2964
2965
|
*/
|
|
2965
2966
|
credentials: TlvOptionalField(5, TlvNullable(TlvArray(TlvCredential, { minLength: 1 })))
|
|
2966
2967
|
});
|
|
@@ -2968,14 +2969,14 @@ export namespace DoorLock {
|
|
|
2968
2969
|
/**
|
|
2969
2970
|
* Body of the DoorLock lockOperation event
|
|
2970
2971
|
*
|
|
2971
|
-
* @see {@link MatterSpecification.
|
|
2972
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.3
|
|
2972
2973
|
*/
|
|
2973
2974
|
export interface LockOperationEvent extends TypeFromSchema<typeof TlvLockOperationEvent> {}
|
|
2974
2975
|
|
|
2975
2976
|
/**
|
|
2976
2977
|
* This enumeration shall indicate the error cause of the Lock/Unlock operation performed.
|
|
2977
2978
|
*
|
|
2978
|
-
* @see {@link MatterSpecification.
|
|
2979
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.14
|
|
2979
2980
|
*/
|
|
2980
2981
|
export enum OperationError {
|
|
2981
2982
|
/**
|
|
@@ -3007,27 +3008,27 @@ export namespace DoorLock {
|
|
|
3007
3008
|
/**
|
|
3008
3009
|
* Body of the DoorLock lockOperationError event
|
|
3009
3010
|
*
|
|
3010
|
-
* @see {@link MatterSpecification.
|
|
3011
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.4
|
|
3011
3012
|
*/
|
|
3012
3013
|
export const TlvLockOperationErrorEvent = TlvObject({
|
|
3013
3014
|
/**
|
|
3014
3015
|
* This field shall indicate the type of the lock operation that was performed.
|
|
3015
3016
|
*
|
|
3016
|
-
* @see {@link MatterSpecification.
|
|
3017
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.4.1
|
|
3017
3018
|
*/
|
|
3018
3019
|
lockOperationType: TlvField(0, TlvEnum<LockOperationType>()),
|
|
3019
3020
|
|
|
3020
3021
|
/**
|
|
3021
3022
|
* This field shall indicate the source of the lock operation that was performed.
|
|
3022
3023
|
*
|
|
3023
|
-
* @see {@link MatterSpecification.
|
|
3024
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.4.2
|
|
3024
3025
|
*/
|
|
3025
3026
|
operationSource: TlvField(1, TlvEnum<OperationSource>()),
|
|
3026
3027
|
|
|
3027
3028
|
/**
|
|
3028
3029
|
* This field shall indicate the lock operation error triggered when the operation was performed.
|
|
3029
3030
|
*
|
|
3030
|
-
* @see {@link MatterSpecification.
|
|
3031
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.4.3
|
|
3031
3032
|
*/
|
|
3032
3033
|
operationError: TlvField(2, TlvEnum<OperationError>()),
|
|
3033
3034
|
|
|
@@ -3035,7 +3036,7 @@ export namespace DoorLock {
|
|
|
3035
3036
|
* This field shall indicate the lock UserIndex who performed the lock operation. This shall be null if there is
|
|
3036
3037
|
* no user id that can be determined for the given operation source.
|
|
3037
3038
|
*
|
|
3038
|
-
* @see {@link MatterSpecification.
|
|
3039
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.4.4
|
|
3039
3040
|
*/
|
|
3040
3041
|
userIndex: TlvField(3, TlvNullable(TlvUInt16)),
|
|
3041
3042
|
|
|
@@ -3044,7 +3045,7 @@ export namespace DoorLock {
|
|
|
3044
3045
|
* null if there is no fabric that can be determined for the given operation source. This shall NOT be null if
|
|
3045
3046
|
* the operation source is "Remote".
|
|
3046
3047
|
*
|
|
3047
|
-
* @see {@link MatterSpecification.
|
|
3048
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.4.5
|
|
3048
3049
|
*/
|
|
3049
3050
|
fabricIndex: TlvField(4, TlvNullable(TlvFabricIndex)),
|
|
3050
3051
|
|
|
@@ -3053,7 +3054,7 @@ export namespace DoorLock {
|
|
|
3053
3054
|
* there is no Node associated with the given operation source. This shall NOT be null if the operation source
|
|
3054
3055
|
* is "Remote".
|
|
3055
3056
|
*
|
|
3056
|
-
* @see {@link MatterSpecification.
|
|
3057
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.4.6
|
|
3057
3058
|
*/
|
|
3058
3059
|
sourceNode: TlvField(5, TlvNullable(TlvNodeId)),
|
|
3059
3060
|
|
|
@@ -3061,7 +3062,7 @@ export namespace DoorLock {
|
|
|
3061
3062
|
* This field shall indicate the list of credentials used in performing the lock operation. This shall be null
|
|
3062
3063
|
* if no credentials were involved.
|
|
3063
3064
|
*
|
|
3064
|
-
* @see {@link MatterSpecification.
|
|
3065
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.4.7
|
|
3065
3066
|
*/
|
|
3066
3067
|
credentials: TlvOptionalField(6, TlvNullable(TlvArray(TlvCredential, { minLength: 1 })))
|
|
3067
3068
|
});
|
|
@@ -3069,12 +3070,12 @@ export namespace DoorLock {
|
|
|
3069
3070
|
/**
|
|
3070
3071
|
* Body of the DoorLock lockOperationError event
|
|
3071
3072
|
*
|
|
3072
|
-
* @see {@link MatterSpecification.
|
|
3073
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.4
|
|
3073
3074
|
*/
|
|
3074
3075
|
export interface LockOperationErrorEvent extends TypeFromSchema<typeof TlvLockOperationErrorEvent> {}
|
|
3075
3076
|
|
|
3076
3077
|
/**
|
|
3077
|
-
* @see {@link MatterSpecification.
|
|
3078
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.6.23
|
|
3078
3079
|
*/
|
|
3079
3080
|
export enum EventType {
|
|
3080
3081
|
/**
|
|
@@ -3094,7 +3095,7 @@ export namespace DoorLock {
|
|
|
3094
3095
|
}
|
|
3095
3096
|
|
|
3096
3097
|
/**
|
|
3097
|
-
* @see {@link MatterSpecification.
|
|
3098
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.7.1
|
|
3098
3099
|
*/
|
|
3099
3100
|
export enum StatusCode {
|
|
3100
3101
|
/**
|
|
@@ -3108,6 +3109,36 @@ export namespace DoorLock {
|
|
|
3108
3109
|
Occupied = 3
|
|
3109
3110
|
}
|
|
3110
3111
|
|
|
3112
|
+
/**
|
|
3113
|
+
* Thrown for cluster status code {@link StatusCode.Duplicate}.
|
|
3114
|
+
*
|
|
3115
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.7.1
|
|
3116
|
+
*/
|
|
3117
|
+
export class DuplicateError extends StatusResponseError {
|
|
3118
|
+
constructor(
|
|
3119
|
+
message = "Entry would cause a duplicate credential/ID",
|
|
3120
|
+
code = Status.Failure,
|
|
3121
|
+
clusterCode = StatusCode.Duplicate
|
|
3122
|
+
) {
|
|
3123
|
+
super(message, code, clusterCode);
|
|
3124
|
+
}
|
|
3125
|
+
}
|
|
3126
|
+
|
|
3127
|
+
/**
|
|
3128
|
+
* Thrown for cluster status code {@link StatusCode.Occupied}.
|
|
3129
|
+
*
|
|
3130
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.7.1
|
|
3131
|
+
*/
|
|
3132
|
+
export class OccupiedError extends StatusResponseError {
|
|
3133
|
+
constructor(
|
|
3134
|
+
message = "Entry would replace an occupied slot",
|
|
3135
|
+
code = Status.Failure,
|
|
3136
|
+
clusterCode = StatusCode.Occupied
|
|
3137
|
+
) {
|
|
3138
|
+
super(message, code, clusterCode);
|
|
3139
|
+
}
|
|
3140
|
+
}
|
|
3141
|
+
|
|
3111
3142
|
/**
|
|
3112
3143
|
* A DoorLockCluster supports these elements if it supports feature DoorPositionSensor.
|
|
3113
3144
|
*/
|
|
@@ -3118,21 +3149,21 @@ export namespace DoorLock {
|
|
|
3118
3149
|
*
|
|
3119
3150
|
* Null only if an internal error prevents the retrieval of the current door state.
|
|
3120
3151
|
*
|
|
3121
|
-
* @see {@link MatterSpecification.
|
|
3152
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.4
|
|
3122
3153
|
*/
|
|
3123
3154
|
doorState: Attribute(0x3, TlvNullable(TlvEnum<DoorState>())),
|
|
3124
3155
|
|
|
3125
3156
|
/**
|
|
3126
3157
|
* This attribute shall hold the number of door open events that have occurred since it was last zeroed.
|
|
3127
3158
|
*
|
|
3128
|
-
* @see {@link MatterSpecification.
|
|
3159
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.5
|
|
3129
3160
|
*/
|
|
3130
3161
|
doorOpenEvents: OptionalWritableAttribute(0x4, TlvUInt32, { writeAcl: AccessLevel.Manage }),
|
|
3131
3162
|
|
|
3132
3163
|
/**
|
|
3133
3164
|
* This attribute shall hold the number of door closed events that have occurred since it was last zeroed.
|
|
3134
3165
|
*
|
|
3135
|
-
* @see {@link MatterSpecification.
|
|
3166
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.6
|
|
3136
3167
|
*/
|
|
3137
3168
|
doorClosedEvents: OptionalWritableAttribute(0x5, TlvUInt32, { writeAcl: AccessLevel.Manage }),
|
|
3138
3169
|
|
|
@@ -3140,7 +3171,7 @@ export namespace DoorLock {
|
|
|
3140
3171
|
* This attribute shall hold the number of minutes the door has been open since the last time it
|
|
3141
3172
|
* transitioned from closed to open.
|
|
3142
3173
|
*
|
|
3143
|
-
* @see {@link MatterSpecification.
|
|
3174
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.7
|
|
3144
3175
|
*/
|
|
3145
3176
|
openPeriod: OptionalWritableAttribute(0x6, TlvUInt16, { writeAcl: AccessLevel.Manage })
|
|
3146
3177
|
},
|
|
@@ -3149,7 +3180,7 @@ export namespace DoorLock {
|
|
|
3149
3180
|
/**
|
|
3150
3181
|
* The door lock server sends out a DoorStateChange event when the door lock door state changes.
|
|
3151
3182
|
*
|
|
3152
|
-
* @see {@link MatterSpecification.
|
|
3183
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.2
|
|
3153
3184
|
*/
|
|
3154
3185
|
doorStateChange: Event(0x1, EventPriority.Critical, TlvDoorStateChangeEvent)
|
|
3155
3186
|
}
|
|
@@ -3163,7 +3194,7 @@ export namespace DoorLock {
|
|
|
3163
3194
|
/**
|
|
3164
3195
|
* Indicates the number of total users supported by the lock.
|
|
3165
3196
|
*
|
|
3166
|
-
* @see {@link MatterSpecification.
|
|
3197
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.8
|
|
3167
3198
|
*/
|
|
3168
3199
|
numberOfTotalUsersSupported: FixedAttribute(0x11, TlvUInt16, { default: 0 }),
|
|
3169
3200
|
|
|
@@ -3171,7 +3202,7 @@ export namespace DoorLock {
|
|
|
3171
3202
|
* This attribute shall contain a bitmap with the bits set for the values of CredentialRuleEnum supported on
|
|
3172
3203
|
* this device.
|
|
3173
3204
|
*
|
|
3174
|
-
* @see {@link MatterSpecification.
|
|
3205
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.18
|
|
3175
3206
|
*/
|
|
3176
3207
|
credentialRulesSupport: FixedAttribute(
|
|
3177
3208
|
0x1b,
|
|
@@ -3190,7 +3221,7 @@ export namespace DoorLock {
|
|
|
3190
3221
|
* NumberOfRFIDUsersSupported is set to 3, it will not be possible to actually assign 10 credentials for a
|
|
3191
3222
|
* user because maximum number of credentials in the database is 8.
|
|
3192
3223
|
*
|
|
3193
|
-
* @see {@link MatterSpecification.
|
|
3224
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.19
|
|
3194
3225
|
*/
|
|
3195
3226
|
numberOfCredentialsSupportedPerUser: FixedAttribute(0x1c, TlvUInt8, { default: 0 }),
|
|
3196
3227
|
|
|
@@ -3199,7 +3230,7 @@ export namespace DoorLock {
|
|
|
3199
3230
|
* type ExpiringUser shall remain valid after its first use before expiring. When the credential expires the
|
|
3200
3231
|
* UserStatus for the corresponding user record shall be set to OccupiedDisabled.
|
|
3201
3232
|
*
|
|
3202
|
-
* @see {@link MatterSpecification.
|
|
3233
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.36
|
|
3203
3234
|
*/
|
|
3204
3235
|
expiringUserTimeout: OptionalWritableAttribute(
|
|
3205
3236
|
0x35,
|
|
@@ -3226,7 +3257,7 @@ export namespace DoorLock {
|
|
|
3226
3257
|
* • INVALID_COMMAND, if one or more fields violate constraints or are invalid or if OperationType is
|
|
3227
3258
|
* Modify and UserIndex points to an available slot.
|
|
3228
3259
|
*
|
|
3229
|
-
* @see {@link MatterSpecification.
|
|
3260
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.32
|
|
3230
3261
|
*/
|
|
3231
3262
|
setUser: Command(
|
|
3232
3263
|
0x1a,
|
|
@@ -3242,7 +3273,7 @@ export namespace DoorLock {
|
|
|
3242
3273
|
* An InvokeResponse command shall be sent with an appropriate error (e.g. FAILURE, INVALID_COMMAND, etc.)
|
|
3243
3274
|
* as needed otherwise the GetUserResponse Command shall be sent implying a status of SUCCESS.
|
|
3244
3275
|
*
|
|
3245
|
-
* @see {@link MatterSpecification.
|
|
3276
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.33
|
|
3246
3277
|
*/
|
|
3247
3278
|
getUser: Command(0x1b, TlvGetUserRequest, 0x1c, TlvGetUserResponse, { invokeAcl: AccessLevel.Administer }),
|
|
3248
3279
|
|
|
@@ -3255,7 +3286,7 @@ export namespace DoorLock {
|
|
|
3255
3286
|
*
|
|
3256
3287
|
* A LockUserChange event with the provided UserIndex shall be generated after successfully clearing users.
|
|
3257
3288
|
*
|
|
3258
|
-
* @see {@link MatterSpecification.
|
|
3289
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.35
|
|
3259
3290
|
*/
|
|
3260
3291
|
clearUser: Command(
|
|
3261
3292
|
0x1d,
|
|
@@ -3271,7 +3302,7 @@ export namespace DoorLock {
|
|
|
3271
3302
|
*
|
|
3272
3303
|
* Fields used for different use cases:
|
|
3273
3304
|
*
|
|
3274
|
-
* @see {@link MatterSpecification.
|
|
3305
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.36
|
|
3275
3306
|
*/
|
|
3276
3307
|
setCredential: Command(
|
|
3277
3308
|
0x22,
|
|
@@ -3287,7 +3318,7 @@ export namespace DoorLock {
|
|
|
3287
3318
|
* An InvokeResponse command shall be sent with an appropriate error (e.g. FAILURE, INVALID_COMMAND, etc.)
|
|
3288
3319
|
* as needed otherwise the GetCredentialStatusResponse command shall be sent implying a status of SUCCESS.
|
|
3289
3320
|
*
|
|
3290
|
-
* @see {@link MatterSpecification.
|
|
3321
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.38
|
|
3291
3322
|
*/
|
|
3292
3323
|
getCredentialStatus: Command(
|
|
3293
3324
|
0x24,
|
|
@@ -3309,7 +3340,7 @@ export namespace DoorLock {
|
|
|
3309
3340
|
*
|
|
3310
3341
|
* Return status shall be one of the following values:
|
|
3311
3342
|
*
|
|
3312
|
-
* @see {@link MatterSpecification.
|
|
3343
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.40
|
|
3313
3344
|
*/
|
|
3314
3345
|
clearCredential: Command(
|
|
3315
3346
|
0x26,
|
|
@@ -3325,7 +3356,7 @@ export namespace DoorLock {
|
|
|
3325
3356
|
* The door lock server sends out a LockUserChange event when a lock user, schedule, or credential change
|
|
3326
3357
|
* has occurred.
|
|
3327
3358
|
*
|
|
3328
|
-
* @see {@link MatterSpecification.
|
|
3359
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.5
|
|
3329
3360
|
*/
|
|
3330
3361
|
lockUserChange: Event(0x4, EventPriority.Info, TlvLockUserChangeEvent)
|
|
3331
3362
|
}
|
|
@@ -3339,21 +3370,21 @@ export namespace DoorLock {
|
|
|
3339
3370
|
/**
|
|
3340
3371
|
* Indicates the number of PIN users supported.
|
|
3341
3372
|
*
|
|
3342
|
-
* @see {@link MatterSpecification.
|
|
3373
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.9
|
|
3343
3374
|
*/
|
|
3344
3375
|
numberOfPinUsersSupported: FixedAttribute(0x12, TlvUInt16, { default: 0 }),
|
|
3345
3376
|
|
|
3346
3377
|
/**
|
|
3347
3378
|
* Indicates the maximum length in bytes of a PIN Code on this device.
|
|
3348
3379
|
*
|
|
3349
|
-
* @see {@link MatterSpecification.
|
|
3380
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.14
|
|
3350
3381
|
*/
|
|
3351
3382
|
maxPinCodeLength: FixedAttribute(0x17, TlvUInt8),
|
|
3352
3383
|
|
|
3353
3384
|
/**
|
|
3354
3385
|
* Indicates the minimum length in bytes of a PIN Code on this device.
|
|
3355
3386
|
*
|
|
3356
|
-
* @see {@link MatterSpecification.
|
|
3387
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.15
|
|
3357
3388
|
*/
|
|
3358
3389
|
minPinCodeLength: FixedAttribute(0x18, TlvUInt8)
|
|
3359
3390
|
}
|
|
@@ -3367,7 +3398,7 @@ export namespace DoorLock {
|
|
|
3367
3398
|
/**
|
|
3368
3399
|
* Indicates the number of RFID users supported.
|
|
3369
3400
|
*
|
|
3370
|
-
* @see {@link MatterSpecification.
|
|
3401
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.10
|
|
3371
3402
|
*/
|
|
3372
3403
|
numberOfRfidUsersSupported: FixedAttribute(0x13, TlvUInt16, { default: 0 }),
|
|
3373
3404
|
|
|
@@ -3376,7 +3407,7 @@ export namespace DoorLock {
|
|
|
3376
3407
|
* range specified by the manufacturer, if media anti-collision identifiers (UID) are used as RFID code, a
|
|
3377
3408
|
* value of 20 (equals 10 Byte ISO 14443A UID) is recommended.
|
|
3378
3409
|
*
|
|
3379
|
-
* @see {@link MatterSpecification.
|
|
3410
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.16
|
|
3380
3411
|
*/
|
|
3381
3412
|
maxRfidCodeLength: FixedAttribute(0x19, TlvUInt8),
|
|
3382
3413
|
|
|
@@ -3385,7 +3416,7 @@ export namespace DoorLock {
|
|
|
3385
3416
|
* range specified by the manufacturer, if media anti-collision identifiers (UID) are used as RFID code, a
|
|
3386
3417
|
* value of 8 (equals 4 Byte ISO 14443A UID) is recommended.
|
|
3387
3418
|
*
|
|
3388
|
-
* @see {@link MatterSpecification.
|
|
3419
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.17
|
|
3389
3420
|
*/
|
|
3390
3421
|
minRfidCodeLength: FixedAttribute(0x1a, TlvUInt8)
|
|
3391
3422
|
}
|
|
@@ -3399,7 +3430,7 @@ export namespace DoorLock {
|
|
|
3399
3430
|
/**
|
|
3400
3431
|
* Indicates the number of configurable week day schedule supported per user.
|
|
3401
3432
|
*
|
|
3402
|
-
* @see {@link MatterSpecification.
|
|
3433
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.11
|
|
3403
3434
|
*/
|
|
3404
3435
|
numberOfWeekDaySchedulesSupportedPerUser: FixedAttribute(
|
|
3405
3436
|
0x14,
|
|
@@ -3417,7 +3448,7 @@ export namespace DoorLock {
|
|
|
3417
3448
|
*
|
|
3418
3449
|
* Return status shall be one of the following values:
|
|
3419
3450
|
*
|
|
3420
|
-
* @see {@link MatterSpecification.
|
|
3451
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.12
|
|
3421
3452
|
*/
|
|
3422
3453
|
setWeekDaySchedule: Command(
|
|
3423
3454
|
0xb,
|
|
@@ -3430,7 +3461,7 @@ export namespace DoorLock {
|
|
|
3430
3461
|
/**
|
|
3431
3462
|
* Retrieve the specific weekly schedule for the specific user.
|
|
3432
3463
|
*
|
|
3433
|
-
* @see {@link MatterSpecification.
|
|
3464
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.13
|
|
3434
3465
|
*/
|
|
3435
3466
|
getWeekDaySchedule: Command(
|
|
3436
3467
|
0xc,
|
|
@@ -3445,7 +3476,7 @@ export namespace DoorLock {
|
|
|
3445
3476
|
*
|
|
3446
3477
|
* Return status shall be one of the following values:
|
|
3447
3478
|
*
|
|
3448
|
-
* @see {@link MatterSpecification.
|
|
3479
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.15
|
|
3449
3480
|
*/
|
|
3450
3481
|
clearWeekDaySchedule: Command(
|
|
3451
3482
|
0xd,
|
|
@@ -3465,7 +3496,7 @@ export namespace DoorLock {
|
|
|
3465
3496
|
/**
|
|
3466
3497
|
* Indicates the number of configurable year day schedule supported per user.
|
|
3467
3498
|
*
|
|
3468
|
-
* @see {@link MatterSpecification.
|
|
3499
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.12
|
|
3469
3500
|
*/
|
|
3470
3501
|
numberOfYearDaySchedulesSupportedPerUser: FixedAttribute(
|
|
3471
3502
|
0x15,
|
|
@@ -3483,7 +3514,7 @@ export namespace DoorLock {
|
|
|
3483
3514
|
*
|
|
3484
3515
|
* Return status shall be one of the following values:
|
|
3485
3516
|
*
|
|
3486
|
-
* @see {@link MatterSpecification.
|
|
3517
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.16
|
|
3487
3518
|
*/
|
|
3488
3519
|
setYearDaySchedule: Command(
|
|
3489
3520
|
0xe,
|
|
@@ -3496,7 +3527,7 @@ export namespace DoorLock {
|
|
|
3496
3527
|
/**
|
|
3497
3528
|
* Retrieve the specific year day schedule for the specific schedule and user indexes.
|
|
3498
3529
|
*
|
|
3499
|
-
* @see {@link MatterSpecification.
|
|
3530
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.17
|
|
3500
3531
|
*/
|
|
3501
3532
|
getYearDaySchedule: Command(
|
|
3502
3533
|
0xf,
|
|
@@ -3511,7 +3542,7 @@ export namespace DoorLock {
|
|
|
3511
3542
|
*
|
|
3512
3543
|
* Return status shall be one of the following values:
|
|
3513
3544
|
*
|
|
3514
|
-
* @see {@link MatterSpecification.
|
|
3545
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.19
|
|
3515
3546
|
*/
|
|
3516
3547
|
clearYearDaySchedule: Command(
|
|
3517
3548
|
0x10,
|
|
@@ -3531,7 +3562,7 @@ export namespace DoorLock {
|
|
|
3531
3562
|
/**
|
|
3532
3563
|
* Indicates the number of holiday schedules supported for the entire door lock device.
|
|
3533
3564
|
*
|
|
3534
|
-
* @see {@link MatterSpecification.
|
|
3565
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.13
|
|
3535
3566
|
*/
|
|
3536
3567
|
numberOfHolidaySchedulesSupported: FixedAttribute(0x16, TlvUInt8.bound({ max: 253 }), { default: 0 })
|
|
3537
3568
|
},
|
|
@@ -3543,7 +3574,7 @@ export namespace DoorLock {
|
|
|
3543
3574
|
*
|
|
3544
3575
|
* Return status shall be one of the following values:
|
|
3545
3576
|
*
|
|
3546
|
-
* @see {@link MatterSpecification.
|
|
3577
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.20
|
|
3547
3578
|
*/
|
|
3548
3579
|
setHolidaySchedule: Command(
|
|
3549
3580
|
0x11,
|
|
@@ -3556,7 +3587,7 @@ export namespace DoorLock {
|
|
|
3556
3587
|
/**
|
|
3557
3588
|
* Get the holiday schedule for the specified index.
|
|
3558
3589
|
*
|
|
3559
|
-
* @see {@link MatterSpecification.
|
|
3590
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.21
|
|
3560
3591
|
*/
|
|
3561
3592
|
getHolidaySchedule: Command(
|
|
3562
3593
|
0x12,
|
|
@@ -3569,7 +3600,7 @@ export namespace DoorLock {
|
|
|
3569
3600
|
/**
|
|
3570
3601
|
* Clears the holiday schedule or all holiday schedules.
|
|
3571
3602
|
*
|
|
3572
|
-
* @see {@link MatterSpecification.
|
|
3603
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.23
|
|
3573
3604
|
*/
|
|
3574
3605
|
clearHolidaySchedule: Command(
|
|
3575
3606
|
0x13,
|
|
@@ -3598,7 +3629,7 @@ export namespace DoorLock {
|
|
|
3598
3629
|
* logic, environmental events, or other reasons. The lock shall reset the counter if a valid credential is
|
|
3599
3630
|
* presented.
|
|
3600
3631
|
*
|
|
3601
|
-
* @see {@link MatterSpecification.
|
|
3632
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.32
|
|
3602
3633
|
*/
|
|
3603
3634
|
wrongCodeEntryLimit: WritableAttribute(
|
|
3604
3635
|
0x30,
|
|
@@ -3612,7 +3643,7 @@ export namespace DoorLock {
|
|
|
3612
3643
|
* and guess a PIN for the device.) If the attribute accepts writes and an attempt to write the attribute to
|
|
3613
3644
|
* 0 is made, the device shall respond with CONSTRAINT_ERROR.
|
|
3614
3645
|
*
|
|
3615
|
-
* @see {@link MatterSpecification.
|
|
3646
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.33
|
|
3616
3647
|
*/
|
|
3617
3648
|
userCodeTemporaryDisableTime: WritableAttribute(
|
|
3618
3649
|
0x31,
|
|
@@ -3638,7 +3669,7 @@ export namespace DoorLock {
|
|
|
3638
3669
|
* 0x32 0x33 0x34 shall be used in the PIN field in any door lock cluster message payload. If the attribute
|
|
3639
3670
|
* value is False, 0x04 0xFF 0xFF 0xFF 0xFF shall be used.
|
|
3640
3671
|
*
|
|
3641
|
-
* @see {@link MatterSpecification.
|
|
3672
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.34
|
|
3642
3673
|
*/
|
|
3643
3674
|
sendPinOverTheAir: OptionalWritableAttribute(
|
|
3644
3675
|
0x32,
|
|
@@ -3654,7 +3685,7 @@ export namespace DoorLock {
|
|
|
3654
3685
|
* Return status is a global status code or a cluster-specific status code from the Status Codes table and
|
|
3655
3686
|
* shall be one of the following values:
|
|
3656
3687
|
*
|
|
3657
|
-
* @see {@link MatterSpecification.
|
|
3688
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.4
|
|
3658
3689
|
*/
|
|
3659
3690
|
setPinCode: Command(
|
|
3660
3691
|
0x5,
|
|
@@ -3667,7 +3698,7 @@ export namespace DoorLock {
|
|
|
3667
3698
|
/**
|
|
3668
3699
|
* Retrieve a PIN Code.
|
|
3669
3700
|
*
|
|
3670
|
-
* @see {@link MatterSpecification.
|
|
3701
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.5
|
|
3671
3702
|
*/
|
|
3672
3703
|
getPinCode: Command(
|
|
3673
3704
|
0x6,
|
|
@@ -3684,7 +3715,7 @@ export namespace DoorLock {
|
|
|
3684
3715
|
* corresponding user record’s UserStatus value shall be set to Available, and UserType value shall be set
|
|
3685
3716
|
* to UnrestrictedUser and all schedules shall be cleared.
|
|
3686
3717
|
*
|
|
3687
|
-
* @see {@link MatterSpecification.
|
|
3718
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.7
|
|
3688
3719
|
*/
|
|
3689
3720
|
clearPinCode: Command(
|
|
3690
3721
|
0x7,
|
|
@@ -3702,7 +3733,7 @@ export namespace DoorLock {
|
|
|
3702
3733
|
* > On the server, the clear all PIN codes command SHOULD have the same effect as the ClearPINCode command
|
|
3703
3734
|
* with respect to the setting of user status, user type and schedules.
|
|
3704
3735
|
*
|
|
3705
|
-
* @see {@link MatterSpecification.
|
|
3736
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.8
|
|
3706
3737
|
*/
|
|
3707
3738
|
clearAllPinCodes: Command(
|
|
3708
3739
|
0x8,
|
|
@@ -3724,7 +3755,7 @@ export namespace DoorLock {
|
|
|
3724
3755
|
* server requires that an optional PINs be included in the payload of remote lock operation events like
|
|
3725
3756
|
* Lock, Unlock, Unlock with Timeout and Toggle in order to function.
|
|
3726
3757
|
*
|
|
3727
|
-
* @see {@link MatterSpecification.
|
|
3758
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.35
|
|
3728
3759
|
*/
|
|
3729
3760
|
requirePinForRemoteOperation: WritableAttribute(
|
|
3730
3761
|
0x33,
|
|
@@ -3745,7 +3776,7 @@ export namespace DoorLock {
|
|
|
3745
3776
|
*
|
|
3746
3777
|
* Null if no Reader key pair has been configured on the lock. See SetAliroReaderConfig.
|
|
3747
3778
|
*
|
|
3748
|
-
* @see {@link MatterSpecification.
|
|
3779
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.38
|
|
3749
3780
|
*/
|
|
3750
3781
|
aliroReaderVerificationKey: Attribute(
|
|
3751
3782
|
0x80,
|
|
@@ -3758,7 +3789,7 @@ export namespace DoorLock {
|
|
|
3758
3789
|
*
|
|
3759
3790
|
* Null if no reader_group_identifier has been configured on the lock. See SetAliroReaderConfig.
|
|
3760
3791
|
*
|
|
3761
|
-
* @see {@link MatterSpecification.
|
|
3792
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.39
|
|
3762
3793
|
*/
|
|
3763
3794
|
aliroReaderGroupIdentifier: Attribute(
|
|
3764
3795
|
0x81,
|
|
@@ -3769,7 +3800,7 @@ export namespace DoorLock {
|
|
|
3769
3800
|
/**
|
|
3770
3801
|
* Indicates the reader_group_sub_identifier as defined in [Aliro].
|
|
3771
3802
|
*
|
|
3772
|
-
* @see {@link MatterSpecification.
|
|
3803
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.40
|
|
3773
3804
|
*/
|
|
3774
3805
|
aliroReaderGroupSubIdentifier: FixedAttribute(
|
|
3775
3806
|
0x82,
|
|
@@ -3780,7 +3811,7 @@ export namespace DoorLock {
|
|
|
3780
3811
|
/**
|
|
3781
3812
|
* Indicates the list of protocol versions supported for expedited transactions as defined in [Aliro].
|
|
3782
3813
|
*
|
|
3783
|
-
* @see {@link MatterSpecification.
|
|
3814
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.41
|
|
3784
3815
|
*/
|
|
3785
3816
|
aliroExpeditedTransactionSupportedProtocolVersions: FixedAttribute(
|
|
3786
3817
|
0x83,
|
|
@@ -3791,7 +3822,7 @@ export namespace DoorLock {
|
|
|
3791
3822
|
/**
|
|
3792
3823
|
* Indicates the maximum number of AliroCredentialIssuerKey credentials that can be stored on the lock.
|
|
3793
3824
|
*
|
|
3794
|
-
* @see {@link MatterSpecification.
|
|
3825
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.45
|
|
3795
3826
|
*/
|
|
3796
3827
|
numberOfAliroCredentialIssuerKeysSupported: FixedAttribute(0x87, TlvUInt16, { default: 0 }),
|
|
3797
3828
|
|
|
@@ -3808,7 +3839,7 @@ export namespace DoorLock {
|
|
|
3808
3839
|
* NumberOfAliroEndpointKeysSupported and also add a credential of type AliroNonEvictableEndpointKey at
|
|
3809
3840
|
* the same index, and both credentials would exist on the server.
|
|
3810
3841
|
*
|
|
3811
|
-
* @see {@link MatterSpecification.
|
|
3842
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.46
|
|
3812
3843
|
*/
|
|
3813
3844
|
numberOfAliroEndpointKeysSupported: FixedAttribute(0x88, TlvUInt16, { default: 0 })
|
|
3814
3845
|
},
|
|
@@ -3817,7 +3848,7 @@ export namespace DoorLock {
|
|
|
3817
3848
|
/**
|
|
3818
3849
|
* This command allows communicating an Aliro Reader configuration, as defined in [Aliro], to the lock.
|
|
3819
3850
|
*
|
|
3820
|
-
* @see {@link MatterSpecification.
|
|
3851
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.42
|
|
3821
3852
|
*/
|
|
3822
3853
|
setAliroReaderConfig: Command(
|
|
3823
3854
|
0x28,
|
|
@@ -3837,7 +3868,7 @@ export namespace DoorLock {
|
|
|
3837
3868
|
* verification key to interact with the lock. This effect is not restricted to a single fabric or
|
|
3838
3869
|
* otherwise scoped in any way.
|
|
3839
3870
|
*
|
|
3840
|
-
* @see {@link MatterSpecification.
|
|
3871
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.43
|
|
3841
3872
|
*/
|
|
3842
3873
|
clearAliroReaderConfig: Command(
|
|
3843
3874
|
0x29,
|
|
@@ -3859,7 +3890,7 @@ export namespace DoorLock {
|
|
|
3859
3890
|
*
|
|
3860
3891
|
* Null if no group resolving key has been configured on the lock. See SetAliroReaderConfig.
|
|
3861
3892
|
*
|
|
3862
|
-
* @see {@link MatterSpecification.
|
|
3893
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.42
|
|
3863
3894
|
*/
|
|
3864
3895
|
aliroGroupResolvingKey: Attribute(
|
|
3865
3896
|
0x84,
|
|
@@ -3871,7 +3902,7 @@ export namespace DoorLock {
|
|
|
3871
3902
|
* Indicates the list of protocol versions supported for the Bluetooth LE + UWB Access Control Flow as
|
|
3872
3903
|
* defined in [Aliro].
|
|
3873
3904
|
*
|
|
3874
|
-
* @see {@link MatterSpecification.
|
|
3905
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.43
|
|
3875
3906
|
*/
|
|
3876
3907
|
aliroSupportedBleuwbProtocolVersions: FixedAttribute(
|
|
3877
3908
|
0x85,
|
|
@@ -3882,7 +3913,7 @@ export namespace DoorLock {
|
|
|
3882
3913
|
/**
|
|
3883
3914
|
* Indicates the version of the Bluetooth LE advertisement as defined in [Aliro].
|
|
3884
3915
|
*
|
|
3885
|
-
* @see {@link MatterSpecification.
|
|
3916
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.44
|
|
3886
3917
|
*/
|
|
3887
3918
|
aliroBleAdvertisingVersion: FixedAttribute(
|
|
3888
3919
|
0x86,
|
|
@@ -3901,7 +3932,7 @@ export namespace DoorLock {
|
|
|
3901
3932
|
/**
|
|
3902
3933
|
* Set the status of a user ID.
|
|
3903
3934
|
*
|
|
3904
|
-
* @see {@link MatterSpecification.
|
|
3935
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.9
|
|
3905
3936
|
*/
|
|
3906
3937
|
setUserStatus: OptionalCommand(
|
|
3907
3938
|
0x9,
|
|
@@ -3914,7 +3945,7 @@ export namespace DoorLock {
|
|
|
3914
3945
|
/**
|
|
3915
3946
|
* Get the status of a user.
|
|
3916
3947
|
*
|
|
3917
|
-
* @see {@link MatterSpecification.
|
|
3948
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.10
|
|
3918
3949
|
*/
|
|
3919
3950
|
getUserStatus: OptionalCommand(
|
|
3920
3951
|
0xa,
|
|
@@ -3931,7 +3962,7 @@ export namespace DoorLock {
|
|
|
3931
3962
|
*
|
|
3932
3963
|
* Return status shall be one of the following values:
|
|
3933
3964
|
*
|
|
3934
|
-
* @see {@link MatterSpecification.
|
|
3965
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.24
|
|
3935
3966
|
*/
|
|
3936
3967
|
setUserType: OptionalCommand(
|
|
3937
3968
|
0x14,
|
|
@@ -3944,7 +3975,7 @@ export namespace DoorLock {
|
|
|
3944
3975
|
/**
|
|
3945
3976
|
* Retrieve the user type for a specific user.
|
|
3946
3977
|
*
|
|
3947
|
-
* @see {@link MatterSpecification.
|
|
3978
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.25
|
|
3948
3979
|
*/
|
|
3949
3980
|
getUserType: OptionalCommand(
|
|
3950
3981
|
0x15,
|
|
@@ -3973,7 +4004,7 @@ export namespace DoorLock {
|
|
|
3973
4004
|
* Return status is a global status code or a cluster-specific status code from the Status Codes table and
|
|
3974
4005
|
* shall be one of the following values:
|
|
3975
4006
|
*
|
|
3976
|
-
* @see {@link MatterSpecification.
|
|
4007
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.27
|
|
3977
4008
|
*/
|
|
3978
4009
|
setRfidCode: Command(
|
|
3979
4010
|
0x16,
|
|
@@ -3986,7 +4017,7 @@ export namespace DoorLock {
|
|
|
3986
4017
|
/**
|
|
3987
4018
|
* Retrieve an RFID code.
|
|
3988
4019
|
*
|
|
3989
|
-
* @see {@link MatterSpecification.
|
|
4020
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.28
|
|
3990
4021
|
*/
|
|
3991
4022
|
getRfidCode: Command(
|
|
3992
4023
|
0x17,
|
|
@@ -4003,7 +4034,7 @@ export namespace DoorLock {
|
|
|
4003
4034
|
* corresponding user record’s UserStatus value shall be set to Available, and UserType value shall be set
|
|
4004
4035
|
* to UnrestrictedUser and all schedules shall be cleared.
|
|
4005
4036
|
*
|
|
4006
|
-
* @see {@link MatterSpecification.
|
|
4037
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.30
|
|
4007
4038
|
*/
|
|
4008
4039
|
clearRfidCode: Command(
|
|
4009
4040
|
0x18,
|
|
@@ -4018,7 +4049,7 @@ export namespace DoorLock {
|
|
|
4018
4049
|
* user status has to be set to "0 Available", the user type has to be set to the default value, and all
|
|
4019
4050
|
* schedules which are supported have to be set to the default values.
|
|
4020
4051
|
*
|
|
4021
|
-
* @see {@link MatterSpecification.
|
|
4052
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.31
|
|
4022
4053
|
*/
|
|
4023
4054
|
clearAllRfidCodes: Command(
|
|
4024
4055
|
0x19,
|
|
@@ -4045,7 +4076,7 @@ export namespace DoorLock {
|
|
|
4045
4076
|
* > If the attribute AutoRelockTime is supported, the lock will transition to the locked state when the
|
|
4046
4077
|
* auto relock time has expired.
|
|
4047
4078
|
*
|
|
4048
|
-
* @see {@link MatterSpecification.
|
|
4079
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.41
|
|
4049
4080
|
*/
|
|
4050
4081
|
unboltDoor: Command(0x27, TlvUnboltDoorRequest, 0x27, TlvNoResponse, { timed: true })
|
|
4051
4082
|
}
|
|
@@ -4068,7 +4099,7 @@ export namespace DoorLock {
|
|
|
4068
4099
|
* and Schedules are all associated with a User index and not directly with a PIN index. A User index may
|
|
4069
4100
|
* have several credentials associated with it.
|
|
4070
4101
|
*
|
|
4071
|
-
* @see {@link MatterSpecification.
|
|
4102
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.1
|
|
4072
4103
|
*/
|
|
4073
4104
|
pinCredential: BitFlag(0),
|
|
4074
4105
|
|
|
@@ -4080,7 +4111,7 @@ export namespace DoorLock {
|
|
|
4080
4111
|
* and Schedules are all associated with a User index and not directly with a RFID index. A User Index may
|
|
4081
4112
|
* have several credentials associated with it.
|
|
4082
4113
|
*
|
|
4083
|
-
* @see {@link MatterSpecification.
|
|
4114
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.2
|
|
4084
4115
|
*/
|
|
4085
4116
|
rfidCredential: BitFlag(1),
|
|
4086
4117
|
|
|
@@ -4094,7 +4125,7 @@ export namespace DoorLock {
|
|
|
4094
4125
|
* and Schedules are all associated with a User index and not directly with a Finger index. A User Index may
|
|
4095
4126
|
* have several credentials associated with it.
|
|
4096
4127
|
*
|
|
4097
|
-
* @see {@link MatterSpecification.
|
|
4128
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.3
|
|
4098
4129
|
*/
|
|
4099
4130
|
fingerCredentials: BitFlag(2),
|
|
4100
4131
|
|
|
@@ -4109,7 +4140,7 @@ export namespace DoorLock {
|
|
|
4109
4140
|
* Support for WeekDayAccessSchedules requires that the lock has the capability of keeping track of local
|
|
4110
4141
|
* time.
|
|
4111
4142
|
*
|
|
4112
|
-
* @see {@link MatterSpecification.
|
|
4143
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.4
|
|
4113
4144
|
*/
|
|
4114
4145
|
weekDayAccessSchedules: BitFlag(4),
|
|
4115
4146
|
|
|
@@ -4117,7 +4148,7 @@ export namespace DoorLock {
|
|
|
4117
4148
|
* If this feature is supported this indicates that the lock has the ability to determine the position of
|
|
4118
4149
|
* the door which is separate from the state of the lock.
|
|
4119
4150
|
*
|
|
4120
|
-
* @see {@link MatterSpecification.
|
|
4151
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.5
|
|
4121
4152
|
*/
|
|
4122
4153
|
doorPositionSensor: BitFlag(5),
|
|
4123
4154
|
|
|
@@ -4131,7 +4162,7 @@ export namespace DoorLock {
|
|
|
4131
4162
|
* A lock may support multiple credential types so if the User feature is supported the UserType, UserStatus
|
|
4132
4163
|
* and Schedules are all associated with a User and not directly with a credential.
|
|
4133
4164
|
*
|
|
4134
|
-
* @see {@link MatterSpecification.
|
|
4165
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.6
|
|
4135
4166
|
*/
|
|
4136
4167
|
faceCredentials: BitFlag(6),
|
|
4137
4168
|
|
|
@@ -4140,7 +4171,7 @@ export namespace DoorLock {
|
|
|
4140
4171
|
* lock/unlock command. Currently the cluster only supports providing the PIN credential to the lock/unlock
|
|
4141
4172
|
* commands. If this feature is supported then the PIN Credential feature shall also be supported.
|
|
4142
4173
|
*
|
|
4143
|
-
* @see {@link MatterSpecification.
|
|
4174
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.7
|
|
4144
4175
|
*/
|
|
4145
4176
|
credentialOverTheAirAccess: BitFlag(7),
|
|
4146
4177
|
|
|
@@ -4149,7 +4180,7 @@ export namespace DoorLock {
|
|
|
4149
4180
|
* used to associate credentials and schedules to single user record within the lock. This also means the
|
|
4150
4181
|
* UserType and UserStatus fields are associated with a User and not a credential.
|
|
4151
4182
|
*
|
|
4152
|
-
* @see {@link MatterSpecification.
|
|
4183
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.8
|
|
4153
4184
|
*/
|
|
4154
4185
|
user: BitFlag(8),
|
|
4155
4186
|
|
|
@@ -4162,7 +4193,7 @@ export namespace DoorLock {
|
|
|
4162
4193
|
* Support for YearDayAccessSchedules requires that the lock has the capability of keeping track of local
|
|
4163
4194
|
* time.
|
|
4164
4195
|
*
|
|
4165
|
-
* @see {@link MatterSpecification.
|
|
4196
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.9
|
|
4166
4197
|
*/
|
|
4167
4198
|
yearDayAccessSchedules: BitFlag(10),
|
|
4168
4199
|
|
|
@@ -4172,7 +4203,7 @@ export namespace DoorLock {
|
|
|
4172
4203
|
*
|
|
4173
4204
|
* Support for HolidaySchedules requires that the lock has the capability of keeping track of local time.
|
|
4174
4205
|
*
|
|
4175
|
-
* @see {@link MatterSpecification.
|
|
4206
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.10
|
|
4176
4207
|
*/
|
|
4177
4208
|
holidaySchedules: BitFlag(11),
|
|
4178
4209
|
|
|
@@ -4183,7 +4214,7 @@ export namespace DoorLock {
|
|
|
4183
4214
|
* Locks without unbolting support don’t differentiate between unbolting and unlocking and perform the same
|
|
4184
4215
|
* operation for both commands.
|
|
4185
4216
|
*
|
|
4186
|
-
* @see {@link MatterSpecification.
|
|
4217
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.11
|
|
4187
4218
|
*/
|
|
4188
4219
|
unbolting: BitFlag(12),
|
|
4189
4220
|
|
|
@@ -4191,7 +4222,7 @@ export namespace DoorLock {
|
|
|
4191
4222
|
* Locks that support this feature implement the Aliro specification as defined in [Aliro] and support
|
|
4192
4223
|
* Matter as a method for provisioning Aliro credentials.
|
|
4193
4224
|
*
|
|
4194
|
-
* @see {@link MatterSpecification.
|
|
4225
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.12
|
|
4195
4226
|
*/
|
|
4196
4227
|
aliroProvisioning: BitFlag(13),
|
|
4197
4228
|
|
|
@@ -4199,7 +4230,7 @@ export namespace DoorLock {
|
|
|
4199
4230
|
* Locks that support this feature implement the Bluetooth LE + UWB Access Control Flow as defined in
|
|
4200
4231
|
* [Aliro].
|
|
4201
4232
|
*
|
|
4202
|
-
* @see {@link MatterSpecification.
|
|
4233
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.4.13
|
|
4203
4234
|
*/
|
|
4204
4235
|
aliroBleuwb: BitFlag(14)
|
|
4205
4236
|
},
|
|
@@ -4214,14 +4245,14 @@ export namespace DoorLock {
|
|
|
4214
4245
|
* Locked and Unlocked so it is only partially secured. For example, a deadbolt could be partially extended
|
|
4215
4246
|
* and not in a dead latched state.
|
|
4216
4247
|
*
|
|
4217
|
-
* @see {@link MatterSpecification.
|
|
4248
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.1
|
|
4218
4249
|
*/
|
|
4219
4250
|
lockState: Attribute(0x0, TlvNullable(TlvEnum<LockState>())),
|
|
4220
4251
|
|
|
4221
4252
|
/**
|
|
4222
4253
|
* Indicates the type of door lock as defined in LockTypeEnum.
|
|
4223
4254
|
*
|
|
4224
|
-
* @see {@link MatterSpecification.
|
|
4255
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.2
|
|
4225
4256
|
*/
|
|
4226
4257
|
lockType: Attribute(0x1, TlvEnum<LockType>()),
|
|
4227
4258
|
|
|
@@ -4229,7 +4260,7 @@ export namespace DoorLock {
|
|
|
4229
4260
|
* Indicates if the lock is currently able to (Enabled) or not able to (Disabled) process remote Lock,
|
|
4230
4261
|
* Unlock, or Unlock with Timeout commands.
|
|
4231
4262
|
*
|
|
4232
|
-
* @see {@link MatterSpecification.
|
|
4263
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.3
|
|
4233
4264
|
*/
|
|
4234
4265
|
actuatorEnabled: Attribute(0x2, TlvBoolean),
|
|
4235
4266
|
|
|
@@ -4237,7 +4268,7 @@ export namespace DoorLock {
|
|
|
4237
4268
|
* Indicates the language for the on-screen or audible user interface using a 2- byte language code from
|
|
4238
4269
|
* ISO-639-1.
|
|
4239
4270
|
*
|
|
4240
|
-
* @see {@link MatterSpecification.
|
|
4271
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.20
|
|
4241
4272
|
*/
|
|
4242
4273
|
language: OptionalWritableAttribute(
|
|
4243
4274
|
0x21,
|
|
@@ -4248,7 +4279,7 @@ export namespace DoorLock {
|
|
|
4248
4279
|
/**
|
|
4249
4280
|
* Indicates the settings for the LED support, as defined by LEDSettingEnum.
|
|
4250
4281
|
*
|
|
4251
|
-
* @see {@link MatterSpecification.
|
|
4282
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.21
|
|
4252
4283
|
*/
|
|
4253
4284
|
ledSettings: OptionalWritableAttribute(
|
|
4254
4285
|
0x22,
|
|
@@ -4261,14 +4292,14 @@ export namespace DoorLock {
|
|
|
4261
4292
|
* 0=disabled. If set, unlock operations from any source will be timed. For one time unlock with timeout use
|
|
4262
4293
|
* the specific command.
|
|
4263
4294
|
*
|
|
4264
|
-
* @see {@link MatterSpecification.
|
|
4295
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.22
|
|
4265
4296
|
*/
|
|
4266
4297
|
autoRelockTime: OptionalWritableAttribute(0x23, TlvUInt32, { writeAcl: AccessLevel.Manage }),
|
|
4267
4298
|
|
|
4268
4299
|
/**
|
|
4269
4300
|
* Indicates the sound volume on a door lock as defined by SoundVolumeEnum.
|
|
4270
4301
|
*
|
|
4271
|
-
* @see {@link MatterSpecification.
|
|
4302
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.23
|
|
4272
4303
|
*/
|
|
4273
4304
|
soundVolume: OptionalWritableAttribute(
|
|
4274
4305
|
0x24,
|
|
@@ -4279,7 +4310,7 @@ export namespace DoorLock {
|
|
|
4279
4310
|
/**
|
|
4280
4311
|
* This attribute shall indicate the current operating mode of the lock as defined in OperatingModeEnum.
|
|
4281
4312
|
*
|
|
4282
|
-
* @see {@link MatterSpecification.
|
|
4313
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.24
|
|
4283
4314
|
*/
|
|
4284
4315
|
operatingMode: WritableAttribute(
|
|
4285
4316
|
0x25,
|
|
@@ -4292,7 +4323,7 @@ export namespace DoorLock {
|
|
|
4292
4323
|
* the lock. All operating modes NOT supported by a lock shall be set to one. The value of the OperatingMode
|
|
4293
4324
|
* enumeration defines the related bit to be set.
|
|
4294
4325
|
*
|
|
4295
|
-
* @see {@link MatterSpecification.
|
|
4326
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.25
|
|
4296
4327
|
*/
|
|
4297
4328
|
supportedOperatingModes: FixedAttribute(
|
|
4298
4329
|
0x26,
|
|
@@ -4319,7 +4350,7 @@ export namespace DoorLock {
|
|
|
4319
4350
|
* current Sound Volume is High Volume. Therefore, if the client wants to query/modify the current Sound
|
|
4320
4351
|
* Volume setting on the server, the client SHOULD read/write to the Sound Volume attribute.
|
|
4321
4352
|
*
|
|
4322
|
-
* @see {@link MatterSpecification.
|
|
4353
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.26
|
|
4323
4354
|
*/
|
|
4324
4355
|
defaultConfigurationRegister: OptionalAttribute(0x27, TlvBitmap(TlvUInt16, ConfigurationRegister)),
|
|
4325
4356
|
|
|
@@ -4330,7 +4361,7 @@ export namespace DoorLock {
|
|
|
4330
4361
|
* for those features whose bit is set to 0 in the LocalProgrammingFeatures attribute. Local programming
|
|
4331
4362
|
* shall be enabled by default.
|
|
4332
4363
|
*
|
|
4333
|
-
* @see {@link MatterSpecification.
|
|
4364
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.27
|
|
4334
4365
|
*/
|
|
4335
4366
|
enableLocalProgramming: OptionalWritableAttribute(
|
|
4336
4367
|
0x28,
|
|
@@ -4342,7 +4373,7 @@ export namespace DoorLock {
|
|
|
4342
4373
|
* This attribute shall enable/disable the ability to lock the door lock with a single touch on the door
|
|
4343
4374
|
* lock.
|
|
4344
4375
|
*
|
|
4345
|
-
* @see {@link MatterSpecification.
|
|
4376
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.28
|
|
4346
4377
|
*/
|
|
4347
4378
|
enableOneTouchLocking: OptionalWritableAttribute(
|
|
4348
4379
|
0x29,
|
|
@@ -4354,7 +4385,7 @@ export namespace DoorLock {
|
|
|
4354
4385
|
* This attribute shall enable/disable an inside LED that allows the user to see at a glance if the door is
|
|
4355
4386
|
* locked.
|
|
4356
4387
|
*
|
|
4357
|
-
* @see {@link MatterSpecification.
|
|
4388
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.29
|
|
4358
4389
|
*/
|
|
4359
4390
|
enableInsideStatusLed: OptionalWritableAttribute(
|
|
4360
4391
|
0x2a,
|
|
@@ -4366,7 +4397,7 @@ export namespace DoorLock {
|
|
|
4366
4397
|
* This attribute shall enable/disable a button inside the door that is used to put the lock into privacy
|
|
4367
4398
|
* mode. When the lock is in privacy mode it cannot be manipulated from the outside.
|
|
4368
4399
|
*
|
|
4369
|
-
* @see {@link MatterSpecification.
|
|
4400
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.30
|
|
4370
4401
|
*/
|
|
4371
4402
|
enablePrivacyModeButton: OptionalWritableAttribute(
|
|
4372
4403
|
0x2b,
|
|
@@ -4383,7 +4414,7 @@ export namespace DoorLock {
|
|
|
4383
4414
|
*
|
|
4384
4415
|
* The features that can be disabled from local programming are defined in LocalProgrammingFeaturesBitmap.
|
|
4385
4416
|
*
|
|
4386
|
-
* @see {@link MatterSpecification.
|
|
4417
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.31
|
|
4387
4418
|
*/
|
|
4388
4419
|
localProgrammingFeatures: OptionalWritableAttribute(
|
|
4389
4420
|
0x2c,
|
|
@@ -4399,7 +4430,7 @@ export namespace DoorLock {
|
|
|
4399
4430
|
*
|
|
4400
4431
|
* This mask DOES NOT apply to the Events mechanism of this cluster.
|
|
4401
4432
|
*
|
|
4402
|
-
* @see {@link MatterSpecification.
|
|
4433
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.9.37
|
|
4403
4434
|
*/
|
|
4404
4435
|
alarmMask: OptionalWritableAttribute(
|
|
4405
4436
|
0x40,
|
|
@@ -4417,7 +4448,7 @@ export namespace DoorLock {
|
|
|
4417
4448
|
* lock. The door lock may require a PIN depending on the value of the RequirePINForRemoteOperation
|
|
4418
4449
|
* attribute.
|
|
4419
4450
|
*
|
|
4420
|
-
* @see {@link MatterSpecification.
|
|
4451
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.1
|
|
4421
4452
|
*/
|
|
4422
4453
|
lockDoor: Command(0x0, TlvLockDoorRequest, 0x0, TlvNoResponse, { timed: true }),
|
|
4423
4454
|
|
|
@@ -4431,7 +4462,7 @@ export namespace DoorLock {
|
|
|
4431
4462
|
* > If the attribute AutoRelockTime is supported the lock will transition to the locked state when the auto
|
|
4432
4463
|
* relock time has expired.
|
|
4433
4464
|
*
|
|
4434
|
-
* @see {@link MatterSpecification.
|
|
4465
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.2
|
|
4435
4466
|
*/
|
|
4436
4467
|
unlockDoor: Command(0x1, TlvUnlockDoorRequest, 0x1, TlvNoResponse, { timed: true }),
|
|
4437
4468
|
|
|
@@ -4442,7 +4473,7 @@ export namespace DoorLock {
|
|
|
4442
4473
|
* specified in the AutoRelockTime attribute. If the door lock device is not capable of or does not want to
|
|
4443
4474
|
* support temporary Relock Timeout, it SHOULD NOT support this optional command.
|
|
4444
4475
|
*
|
|
4445
|
-
* @see {@link MatterSpecification.
|
|
4476
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.10.3
|
|
4446
4477
|
*/
|
|
4447
4478
|
unlockWithTimeout: OptionalCommand(0x3, TlvUnlockWithTimeoutRequest, 0x3, TlvNoResponse, { timed: true })
|
|
4448
4479
|
},
|
|
@@ -4452,7 +4483,7 @@ export namespace DoorLock {
|
|
|
4452
4483
|
* The door lock server provides several alarms which can be sent when there is a critical state on the door
|
|
4453
4484
|
* lock. The alarms available for the door lock server are listed in AlarmCodeEnum.
|
|
4454
4485
|
*
|
|
4455
|
-
* @see {@link MatterSpecification.
|
|
4486
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.1
|
|
4456
4487
|
*/
|
|
4457
4488
|
doorLockAlarm: Event(0x0, EventPriority.Critical, TlvDoorLockAlarmEvent),
|
|
4458
4489
|
|
|
@@ -4483,7 +4514,7 @@ export namespace DoorLock {
|
|
|
4483
4514
|
* ◦ may generate a LockOperation event of LockOperationType Unlatch when it is actuated from the
|
|
4484
4515
|
* inside.
|
|
4485
4516
|
*
|
|
4486
|
-
* @see {@link MatterSpecification.
|
|
4517
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.3
|
|
4487
4518
|
*/
|
|
4488
4519
|
lockOperation: Event(0x2, EventPriority.Critical, TlvLockOperationEvent),
|
|
4489
4520
|
|
|
@@ -4491,7 +4522,7 @@ export namespace DoorLock {
|
|
|
4491
4522
|
* The door lock server sends out a LockOperationError event when a lock operation fails for various
|
|
4492
4523
|
* reasons.
|
|
4493
4524
|
*
|
|
4494
|
-
* @see {@link MatterSpecification.
|
|
4525
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2.11.4
|
|
4495
4526
|
*/
|
|
4496
4527
|
lockOperationError: Event(0x3, EventPriority.Critical, TlvLockOperationErrorEvent)
|
|
4497
4528
|
},
|
|
@@ -4554,7 +4585,7 @@ export namespace DoorLock {
|
|
|
4554
4585
|
*
|
|
4555
4586
|
* DoorLockCluster supports optional features that you can enable with the DoorLockCluster.with() factory method.
|
|
4556
4587
|
*
|
|
4557
|
-
* @see {@link MatterSpecification.
|
|
4588
|
+
* @see {@link MatterSpecification.v141.Cluster} § 5.2
|
|
4558
4589
|
*/
|
|
4559
4590
|
export interface Cluster extends Identity<typeof ClusterInstance> {}
|
|
4560
4591
|
|