Skip to content

Commit 81630ff

Browse files
fixes from PR discussions
1 parent 80f7b7d commit 81630ff

File tree

1 file changed

+14
-14
lines changed
  • drivers/SmartThings/zigbee-lock/src

1 file changed

+14
-14
lines changed

drivers/SmartThings/zigbee-lock/src/init.lua

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -295,31 +295,31 @@ end
295295

296296
local migrate = function(driver, device, command)
297297
local lock_users = {}
298-
local lock_credentails = {}
299-
local index = 0
298+
local lock_credentials = {}
299+
local index = 1
300300
for code_slot, code_name in pairs(lock_utils.get_lock_codes(device)) do
301301
table.insert(lock_users, {userIndex = index, userType = "guest", userName = code_name})
302-
table.insert(lock_credentails, {userIndex = index, credentialIndex = code_slot, crednetialType = "pin"})
302+
table.insert(lock_credentials, {userIndex = index, credentialIndex = tonumber(code_slot), credentialType = "pin"})
303303
index = index + 1
304304
end
305305

306-
local code_length = device:get_field(capabilities.lockCodes.codeLength)
307-
local max_code_len = device:get_field(capabilities.lockCodes.maxCodeLength)
308-
local min_code_len = device:get_field(capabilities.lockCodes.minCodeLength)
309-
local max_codes = device:get_field(capabilities.lockCodes.maxCodes)
306+
local code_length = device:get_latest_state("main", capabilities.lockCodes.ID, capabilities.lockCodes.codeLength.NAME)
307+
local max_code_len = device:get_latest_state("main", capabilities.lockCodes.ID, capabilities.lockCodes.maxCodeLength.NAME)
308+
local min_code_len = device:get_latest_state("main", capabilities.lockCodes.ID, capabilities.lockCodes.minCodeLength.NAME)
309+
local max_codes = device:get_latest_state("main", capabilities.lockCodes.ID, capabilities.lockCodes.maxCodes.NAME)
310310

311311
if (code_length ~= nil) then
312312
max_code_len = code_length
313313
min_code_len = code_length
314314
end
315315

316-
device:set_field(capabilities.lockCredentials.minPinCodeLen, min_code_len, { persist = true })
317-
device:set_field(capabilities.lockCredentials.maxPinCodeLen, max_code_len, { persist = true })
318-
device:set_field(capabilities.lockCredentials.pinUsersSupported, max_codes, { persist = true })
319-
device:set_field(capabilities.lockCredentials.credentials, lock_credentails, { persist = true })
320-
device:set_field(capabilities.lockUsers.users, lock_users, { persist = true })
321-
device:set_field(capabilities.lockCredentials.supportedCredentials, {"pin"}, { persist = true })
322-
device:set_field(capabilities.lockCodes.migrated, true, { persist = true })
316+
device:emit_event(LockCredentials.minPinCodeLen(min_code_len, { visibility = { displayed = false } }))
317+
device:emit_event(LockCredentials.maxPinCodeLen(max_code_len, { visibility = { displayed = false } }))
318+
device:emit_event(LockCredentials.pinUsersSupported(max_codes, { visibility = { displayed = false } }))
319+
device:emit_event(LockCredentials.credentials(lock_credentials, { visibility = { displayed = false } }))
320+
device:emit_event(LockCredentials.supportedCredentials({"pin"}, { visibility = { displayed = false } }))
321+
device:emit_event(LockUsers.users(lock_users, { visibility = { displayed = false } }))
322+
device:emit_event(LockCodes.migrated(true, { visibility = { displayed = false } }))
323323
end
324324

325325
local function device_added(driver, device)

0 commit comments

Comments
 (0)