Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Alarm Systems module; refactor IAS ACE support #5168

Merged
merged 36 commits into from
Aug 10, 2021

Conversation

manup
Copy link
Member

@manup manup commented Aug 1, 2021

This PR is based on #4758 (Add initial support for Keypad (XHK1-UE) and ZHAAncillaryControl sensor)

The PR adds a new class AlarmSystem to represent a typical stateful alarm system for all kinds of sensors, including IAS ACE keypads and keyfobs.

The new /alarmsystems REST API endpoint is described in:
https://dresden-elektronik.github.io/deconz-rest-doc/endpoints/alarmsystems

In contrast to PR #4758 keypads and their panel state are automatically managed by the plugin. For REST API clients a keypad's ZHAAncillaryControl sensor is a read-only resource, which fires events for its current state and last invoked user command.

The PIN code of a keypad (which is the PIN code of the alarm system) needs only be configured once, it is stored encrypted locally and verified by the plugin. Important: A REST API client doesn't need to support the /alarmsystems endpoint in order to use a keypad, the /sensors endpoint is sufficient.

More details for keypads are described in:
https://dresden-elektronik.github.io/deconz-rest-doc/endpoints/alarmsystems/#add-keypad-to-alarm-system

Smanar and others added 30 commits April 11, 2021 19:17
Th modelid is complete and the code should reflect that.
The modelid is complete and the code should reflect that.
Optimized version without memory allocation.
For safer low level const char* operations.
@manup manup marked this pull request as draft August 1, 2021 15:40
@manup manup marked this pull request as ready for review August 9, 2021 16:11
The distro version of OpenSSL is too old, use empty stub functions to compile anyway.

TODO create fallback KDF for old systems?
@manup manup added this to the v2.12.4-beta milestone Aug 10, 2021
@manup manup linked an issue Aug 10, 2021 that may be closed by this pull request
@manup manup merged commit 82bbc9e into dresden-elektronik:master Aug 10, 2021
@manup manup deleted the alarm_systems_1 branch December 6, 2021 10:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Xfinity Keypad XHK1-UE
2 participants