Skip to content

AlarmDecoder webapp support for the SmartThings home automation platform.

Notifications You must be signed in to change notification settings

bjgeiser/alarmdecoder-smartthings

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 

Repository files navigation

This repository provides support for the AlarmDecoder webapp inside of the SmartThings home automation platform.

Requirements

  • AlarmDecoder webapp 0.7.6+
  • SmartThings Hub

Features

  • Arm, disarm, or panic your alarm system from within SmartThings.
  • Provides virtual sensors that can be married to zones on your panel to allow automation based on zones faulting and restoring.
  • Smart Home Monitor integration ** One-way - Arm or disarm your panel when the Smart Home Monitor status is changed. ** Two-way - Change Smart Home Monitor's status when your panel is armed or disarmed.

DeviceType Capabilities

  • Switch - Used to represent the panel in an ARMED STAY state. Triggering switch.on() will arm the panel using the stored user code. switch.off() will disarm the panel. This is input only at the moment.
  • Lock - Used to represent the panel in an ARMED AWAY state. Triggering lock.lock() will arm the panel and lock.unlock() will disarm the panel. This is the primary capability for watching for armed/disarmed events.
  • Alarm - Used to indicate an alarming state and also may trigger a panic on the panel with alarm.both().
  • SmokeDetector - Used to indicate if a FIRE was detected on the panel.
  • Virtual Zone Sensors - The service manager smartapp creates 8 virtual contact sensors which are used to provide triggers when configured zones are tripped on the alarm panel.

Setup

  1. Navigate to https://graph.api.smartthings.com in your browser and login to your account.
  2. Click on My Device Handlers
  3. Click on Create New Device Handler
  4. Click the From Code tab
  5. Paste the contents of virtual_contact_sensor.groovy into the box and press Create.
  6. Click Publish -> For Me
  7. Repeat the process with device_type.groovy.
  8. Click on My SmartApps
  9. Click New SmartApp
  10. Click the From Code tab
  11. Paste the contents of service_manager.groovy into the box and press Create.
  12. Click the 'App Settings' button at the top.
  13. Scroll to the bottom of the page and click 'OAuth'
  14. Click 'Enable OAuth in Smart App'
  15. Click Publish -> For Me
  16. Select your Location on the right and press Set Location. (Click the Simulator button if you don't see these options)
  17. Click the Discover button. You'll probably have to hit refresh a couple of times to get your device to show up. If it doesn't show up make sure you're running an up-to-date version of the webapp.
  18. Click Select Devices and select your AlarmDecoder.
  19. Change other options on this screen if needed.
  20. Click Install
  21. After install there will be two boxes at the bottom titled 'API Token' and 'API Endpoint'. Record these so you can input them into the webapp for full integration.
  22. Open up the SmartThings app on your phone
  23. Click My Home and select the Things tab
  24. Select the AlarmDecoder
  25. Click the gear icon and select Edit Device
  26. Input the API key you generated from https://alarmdecoder.local/api/
  27. Input the alarm code you'd like to use to arm/disarm your panel.
  28. Select your panel type.
  29. Zone sensors may be configured to open and close themselves when a zone is faulted. For example, specifying zone 7 for Zonetracker Sensor #1 would trip that sensor whenever zone 7 is faulted.

Enabling SmartThings Integration in the Webapp

  1. Log into your AlarmDecoder webapp.
  2. Click Settings
  3. Click Notifications
  4. Click the New Notification button
  5. Set the Notification Type to 'SmartThings Integration'
  6. Enter a description
  7. Click SmartThings settings
  8. Enter the 'API Endpoint' you recorded during install into the 'URL' box.
  9. Enter the 'API Token' you recorded during install into the 'Token' box.
  10. Press Next
  11. Press Save

Known Issues

  • DSC: Extra zones will show up in the zone list.
  • ADEMCO: Disarming the panel after an ALARM may be difficult due to requiring a double-disarm and the button states don't quite work that way. Current workaround is to try to arm, which will let you disarm again.

About

AlarmDecoder webapp support for the SmartThings home automation platform.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Groovy 100.0%