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

Virtual Panic Button as a homekit button accessory #124

Open
sapireli opened this issue Dec 4, 2023 · 7 comments
Open

Virtual Panic Button as a homekit button accessory #124

sapireli opened this issue Dec 4, 2023 · 7 comments
Labels
enhancement New feature or request

Comments

@sapireli
Copy link

sapireli commented Dec 4, 2023

Alarm.com provides a virtual panic buttons in the mobile app to trigger a panic i.e. burglary silent alarm etc. It would be great to expose such buttons as homebridge accessories... Ideally once any specific panic button or switch is triggered it stays on until the alarm is cleared etc.

image

More info on the virtual panic buttons here:
https://answers.alarm.com/Customer/Website_and_App/System_Management/System_Usage/Trigger_a_panic_using_the_app

@sapireli sapireli added the enhancement New feature or request label Dec 4, 2023
@chase9
Copy link
Member

chase9 commented Dec 4, 2023

I'm not sure how badly I want to implement this due to a couple of reasons:

  1. HomeKit doesn't have the concept of panic buttons, so I think this would have to be implemented as a regular switch. This means that if Siri hears you wrong, it might call the cops on you!
  2. I'm of the mindset that this plugin shouldn't be used for critical/life-saving tasks because I don't consider the code quality to be at that level. This feature would put us more into that realm.

I'm open to other arguments or even a PR if you feel strongly about it. I think if we implemented this feature I would want it behind an opt-in config setting.

@ngori
Copy link
Collaborator

ngori commented Dec 4, 2023

@chase9 I agree with you 100% on point 2. I view this plug-in solely as a convenience feature set and anything critical needs to be ADC native either in their native app or on the panel.

@sapireli
Copy link
Author

sapireli commented Dec 6, 2023

I agree with all your points. I did have one thought about the implementation. We could implement it as a "door lock" accessory which requires face-id or device unlocking to open so you couldn't really trigger with Siri.

However, triggering PANIC with Siri could also be a feature not a bug. i.e. i fell down call an ambulance...

@sapireli
Copy link
Author

sapireli commented Dec 6, 2023

Also, I learned today that home homebridge-ring actually implements panic buttons in homekit as follows (from their readme):

Panic Buttons

  • These can be added by setting showPanicButtons: true in your config
  • Creates Burglar Alarm and Fire Alarm switches in a new Panic Buttons device in HomeKit
  • Use these at your own risk. I do not guarantee functionality in case of emergency, nor do I take responsibility for any false alarms
  • If either switch is turned on, you will receive a call from Ring monitoring to verify the emergency, and then authorities will be dispatched

@chase9
Copy link
Member

chase9 commented Dec 13, 2023

I'm still pretty uneasy about it, but locking the functionality behind an "advanced" setting does make me feel a bit better.

@sapireli
Copy link
Author

how would i go about this? is there an official api or is the whole thing reverse engineered using a mitm proxy?

@ngori
Copy link
Collaborator

ngori commented Dec 13, 2023

@sapireli There is no official API support. As far as I know, all functionality to date has been reversed engineered. I just captured the API calls for garage doors when I added support there. I don't have a panic button on my setup so I'm not sure how those work with respect to the apps and web interfaces

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants