getDeviceSettings

open suspend override fun getDeviceSettings(isLockAdded: Boolean): DeviceSettings?

Retrieves the device settings from the lock.

Sends the GET_SETTINGS (0x20) command to the lock and processes the response to extract the device settings details.

The response ByteArray example: 20, 00, 00, 01, 0E, 00, 3C, 00, 05, 00, 05, 00, 05

  • 20: Command code for GET_SETTINGS.

  • 00: Command result status (success).

  • Remaining bytes: Device settings details.

Parses it to a DeviceSettings object. Example:

  • DeviceSettings(autoLockEnabled=false, autoLockDelay=270, autoLockImplicitEnabled=false, autoLockImplicitDelay=5, pullSpringEnabled=false, pullSpringDuration=60, autoPullSpringEnabled=false, postponedLockEnabled=false, postponedLockDelay=5, buttonLockEnabled=false, buttonUnlockEnabled=false, hasUnpairedKeypad=null, isCustomPullSpringDuration=false, isCustomPostponedLockDelay=false, isAsync=null, deviceId=-1)

  • @param isLockAdded If true, indicates that the lock is added to the account and will execute

  •                an encrypted (secure) command; otherwise, it will execute an unencrypted
  •                (unsecure) command.

Return

DeviceSettings object containing the device settings details.

Throws

if the device needs to be reset.