Code Monkey home page Code Monkey logo

smartthings-test's Introduction

SmartThings - Ring Alarm Device & Smart-App

๐Ÿ“ฃ This is the version 3 of this application. If you are looking for older version, visit https://github.com/asishrs/smartthings-ringalarm

This repository contains device handler and smart-app for Ring Alarm integration with SmartThings. In order to use this, you need to deploy the API part as described here.

Prerequisites

Ring Alarm API

โš ๏ธYou need to have a working API before proceed to the next steps.

Supported Ring Devices

  • Alarm Base
  • Keypad
  • Motion Sensor
  • Contact Sensor
  • Z-Wave Range Extender
  • Flood Freeze

Installation

GitHub Integration (Recommended Method)

It is highly recommended that you use the GitHub Integration that SmartThings offers with their IDE. This will make it much easier for you to keep up to date with changes over time. For the general steps needed for setting up GitHub IDE integration, please visit this and follow the steps for performing the setup.

If this is your first time installing this, first follow these steps to link your IDE with the code repository.

  1. Login to the IDE at ide.smartthings.com
  2. Click on My Locations at the top of the page
  3. Click on the name of the location that you want to install to
  4. Click on the My Device Handlers tab
  5. Click Settings
  6. Click Add new repository and use the following parameters:
    1. Owner: asishrs
    2. Name: smartthings
    3. Branch: master
  7. Click Save

Installing Device Handlers

Once the repository is connected to your IDE, use the GitHub integration to install the current version into your workspace. In the IDE:

  1. Click Update from Repo and select the smartthings repository you just added
  2. Find and Select below device handlers Select Publish(bottom right of screen near the Cancel button)
    1. ring-alarm-contact-sensor.groovy
    2. ring-alarm-floodfreeze-sensor.groovy
    3. ring-alarm-motion-sensor.groovy
    4. ring-alarm.groovy
  3. Click Execute Update

Note the response at the top of the My Devices Handlers page. It should be something like "Updated 0 devices and created 4 new devices, 4 published" Verify that the four devices show up in the list and are marked with Status Published (NOTE: You may have to reload the My Device Handlers screen for the devices to show up properly.)

Installing SmartApps

Once you have the Device Handlers added and published in your IDE, it is time to add the SmartApps.

  1. Click on the My SmartApps tab
  2. Click Update from Repo and select the smartthings repository you added earlier
  3. Select the check boxes next to ring-alarm-manager.groovy
  4. Select Publish(bottom right of screen near the Cancel button)
  5. Click Execute Update

Again, note the response at the top of the My SmartApps page. It should be something like "Updated 0 and created 1 SmartApps, 1 published"

Manual Install

SmartThings Device Handler

  1. Login at http://graph.api.smartthings.com
  2. Select My Locations, select the location you want to use.
  3. Select My Device Handlers
  4. Click on the + New Device Handler button on the right.
  5. On the New Device Handler page, Select the Tab From Code
  6. Copy the ring-alarm-contact-sensor.groovy source code and paste it into the IDE editor window.
  7. Click the Create button at the bottom.
  8. Click the blue Save button above the editor window.
  9. Click the Publish button next to it and select For Me. You have now self-published your Device Handler
  10. Repeat step 1 to 9 for below devices as well.
    1. ring-alarm-floodfreeze-sensor.groovy
    2. ring-alarm-motion-sensor.groovy
    3. ring-alarm.groovy

SmartThings App

  1. (optional) Login at http://graph.api.smartthings.com
  2. (optional) Select My Locations, select the location you want to use.
  3. Select My SmartApps
  4. Click on the + New SmartApp button on the right.
  5. On the New SmartApp page, Select the Tab From Code
  6. Copy the ring-alarm-manager.groovy source code and paste it into the IDE editor window
  7. Click the Create button at the bottom.
  8. Click the blue Save button above the editor window.
  9. Click the Publish button next to it and select For Me. You have now self-published your SmartApp

Setup Alarm Device

  1. (optional) Login at http://graph.api.smartthings.com
  2. (optional) Select My Locations, select the location you want to use.
  3. Select My Devices
  4. Click on the + New Device button on the right.
  5. Fill the Name and Network ID Field (can be anything you like)
  6. Under Type, select Ring Alarm
  7. Select appropriate options under Location and Hub
  8. Click Create

Setup SmartThings App

This is based on SmartThing Classic App.

  1. Open your SmartThings app and go to Marketplace
  2. Tap on the SmartApps and then scroll to the bottom of the page and tap on My Apps
  3. Tap on Ring Alarm Manager
  4. Configuration
    1. AWS API for SmartThings Integration

      1. Pause AWS Ring Integration - Choose that only of you want to temporarily disable the integration.
      2. API Url - AWS API URL for Ring Alarm Lambda
      3. API Key - AWS API Key for Ring Alarm Lambda
      4. Polling Interval - Choose the desired interval, default 5 minutes
    2. Ring Account

      1. Ring Two Factor Enabled - Select this if you have enabled Two factor Authentication in Ring Account.
      2. Do you have an existing Refresh Key - If you already have a refresh key for Ring Two Enabled Account, you can select this. You will be asked to provide that in the next step.
      3. Ring user name - Ring user email address
      4. Ring password - Ring account password.

      If you said YES to step 2.1, proceed as below.

      1. Tap on Finalize the Ring Account Setup.
      2. If you have selected yes to step 2.1, you will be receiving a Text message from Ring on your registered mobile. Enter the text message on 2FA Code
      3. Tap on Account Status to see the Ring Account Connection Status. If the connection is successful, you can see the ZID and Location.

      If you said NO to step 2.1, proceed as below.

      1. Tap on Account Status to see the Ring Account Connection Status. If the connection is successful, you can see the ZID and Location.
    3. SmartThings Alarm Device

      1. Select the Alarm Device you installed. This is mandatory information otherwise the SmartApp cannot refresh the Alarm and Sensor status.
      2. You choose the next three options based on how do you want the alarm to behave for SmartThings mode changes. This is not same as SHM mode.
    4. SmartThings Notifications

      1. You can choose the notification options as well as a custom name on this.

Support

Do you have more devices?

Either open an issue with the device type, or you can make a PR with the required changes.

Other issues? Please open an issue.

License

SmartThings - Ring Alarm Device & Smart-App is released under the MIT License.

smartthings-test's People

Contributors

asishrs avatar sfroth avatar littleaton avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.