From eff568876c710ba40eb91c701e5d12f5693f5ecf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=A1vid=20Nagy?= Date: Sat, 15 Jul 2023 19:02:46 +0200 Subject: [PATCH] feat: Support pin and add `fingerprint` action for Heimgard Technologies HC-SLM-1 (#5971) * updated constants.ts and Heimguard tech. * Revert "updated constants.ts and Heimguard tech." This reverts commit 884fab7c58bfe677b75abd5cf5ac3ca353ae6035. * fix formatting --------- Co-authored-by: root --- src/devices/heimgard_technologies.ts | 10 +++++++--- src/lib/constants.ts | 1 + 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/devices/heimgard_technologies.ts b/src/devices/heimgard_technologies.ts index ed12a02c46a67..6a8b8de0c4f46 100644 --- a/src/devices/heimgard_technologies.ts +++ b/src/devices/heimgard_technologies.ts @@ -12,8 +12,10 @@ const definitions: Definition[] = [ model: 'HC-SLM-1', vendor: 'Heimgard Technologies', description: 'Wattle door lock pro', - fromZigbee: [fz.lock, fz.battery], - toZigbee: [tz.lock, tz.lock_auto_relock_time, tz.lock_sound_volume], + fromZigbee: [fz.battery, fz.lock_operation_event, fz.lock_programming_event, fz.lock, fz.lock_pin_code_response, + fz.lock_user_status_response], + toZigbee: [tz.identify, tz.lock, tz.lock_sound_volume, tz.lock_auto_relock_time, tz.pincode_lock, tz.lock_userstatus], + meta: {pinCodeCount: 39}, ota: ota.zigbeeOTA, configure: async (device, coordinatorEndpoint, logger) => { const endpoint = device.getEndpoint(1); @@ -23,7 +25,9 @@ const definitions: Definition[] = [ await endpoint.read('closuresDoorLock', ['lockState', 'soundVolume']); }, exposes: [ - e.lock(), e.battery(), e.auto_relock_time().withValueMin(0).withValueMax(3600), e.sound_volume()], + e.lock(), e.battery(), e.sound_volume(), e.auto_relock_time().withValueMin(0).withValueMax(3600), + e.lock_action_user(), e.lock_action_source_name(), e.pincode(), + ], }, { zigbeeModel: ['HT-SLM-2'], diff --git a/src/lib/constants.ts b/src/lib/constants.ts index 6352661fc38ab..800e624f7fce3 100644 --- a/src/lib/constants.ts +++ b/src/lib/constants.ts @@ -188,6 +188,7 @@ export const lockSourceName = { 1: 'rf', 2: 'manual', 3: 'rfid', + 4: 'fingerprint', }; export const armMode = {