Fix 'Locking...' and 'Unlocking...' issue #66
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When a lock is unlocked or locked manually, the event is correctly sent to the plugin, and the current state is updated. The lock target state also needs to be updated to match the current state.
♻️ Current situation
As the Target state is not updated, it is stale, and reflects the last state of the lock. Which is often the opposite of the new Current state. So in the HomeKit UIs it will show that the lock is currently transitioning from the Current state to the Target state, and the UI will be stuck there until the user either uses HomeKit to change the lock state, or manually restores the lock to the previous state.
💡 Proposed solution
When the event arrives that the user has manually changed the lock state, also update the Target lock state to match.
⚙️ Release Notes
Fixes issue #22 where manual lock changes result in Home app showing the lock stuck in transition mode.
Testing
Manually tested on my Homebridge setup with two August Locks (AUG-SL04-M01-G04) that do not have DoorSense setup. Manual testing included:
Reviewer Nudging
Focus on when a lock state change happens externally to HomeKit.