You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When arming a security system from HomeKit, the target AND current state are set in Homebridge, and the Characteristic.SecuritySystemCurrentState is set to the new state automatically.
Expected behavior
When arming a security system from HomeKit, only the target state should be set, and no characteristics should be updated (since HomeKit has already set the Characteristic.SecuritySystemTargetState to the desired state. The downstream security system (e.g. the "accessory") should set the current state using the HTTP API only when the security system has actually armed itself.
Context
Using this library for a security system, HomeKit immediately arms the security system when the state is changed by a user. If the downstream security system later uses the API to update the current state, it has no effect because it is already set in Homebridge and propagated back to HomeKit by this plugin. Additionally, there is no opportunity for the security system to show "Arming" for a period of time. If the security system changes the current state to something else (such as OFF) during the arming period, it triggers a notification in HomeKit (e.g. that the system was disarmed), which should not happen.
Happy to submit a PR if desired.
The text was updated successfully, but these errors were encountered:
Since I do not use a security system feel free to provide a PR. Since this would change the behavior there should be an additional setting to activate your new behavoir to not break existing configurations.
Current behavior
When arming a security system from HomeKit, the target AND current state are set in Homebridge, and the
Characteristic.SecuritySystemCurrentState
is set to the new state automatically.Expected behavior
When arming a security system from HomeKit, only the target state should be set, and no characteristics should be updated (since HomeKit has already set the
Characteristic.SecuritySystemTargetState
to the desired state. The downstream security system (e.g. the "accessory") should set the current state using the HTTP API only when the security system has actually armed itself.Context
Using this library for a security system, HomeKit immediately arms the security system when the state is changed by a user. If the downstream security system later uses the API to update the current state, it has no effect because it is already set in Homebridge and propagated back to HomeKit by this plugin. Additionally, there is no opportunity for the security system to show "Arming" for a period of time. If the security system changes the current state to something else (such as OFF) during the arming period, it triggers a notification in HomeKit (e.g. that the system was disarmed), which should not happen.
Happy to submit a PR if desired.
The text was updated successfully, but these errors were encountered: