Giter VIP home page Giter VIP logo

flumesmartthings's Introduction

FlumeSmartThings

SmarThings Smart App and Device Handler for Flume Smart Home Water Monitor.

Features

  • Leak sensor
    • Changes to wet on low flow leaks
    • Changes to wet on any usage alert (configurable)
    • Changes to dry when notification is deleted in the flume app or when it's read (configurable)
    • Wet/dry status can be permanently or temporarily paused (with configurable time lime)
  • Water usage for the last full minute, today, this month, this year is shown in the device page as well as the dashboard
    • water usage stats, connection status, battery level, away mode are exposed as attributes for webCoRE automations
  • When SmartThings changes to away, Flume can be put in away mode that notifies emergency contacts
  • Supports multiple Flume devices
  • Configurable polling frequencies
  • To avoid rate limitting there is support for proxy running somewhere in your LAN

Installation

If you have GitHub IDE integration you need to:

  1. Go to "My SmartApps"
  2. Add GitHub repository with: owner: tronikos, name: FlumeSmartThings, branch: main
  3. Update from Repo -> FlumeSmartThings
  4. Check tronikos:Flume Smart Home Water Monitor
  5. Check Publish
  6. Click Execute Update
  7. Click Edit Properies of the new installed SmartApp
  8. Expand Settings
  9. Enter FlumeAPI_Key and FlumeAPI_Secret. You can get these from https://portal.flumewater.com/settings by expanding API Access
  10. Go to "My Device Handlers"
  11. Update from Repo -> FlumeSmartThings
  12. Check tronikos:Flume Smart Home Water Monitor DH
  13. Check Publish
  14. Click Execute Update

Proxy

Flume API has a rate limit of 120 requests per hour per IP address. SmartThings SmartApps run on the cloud so this limit is shared among other users of this SmartApp. To avoid rate limiting it's recommended to setup a proxy running in your local network that the SmartThings hub will locally connect to.

The proxy is implemeted in Node.js, see code, that can run pretty much anywhere, e.g. Windows/Linux/macOS/Android etc. In my case, my hub is a SmartThings Link for NVIDIA SHIELD, so the proxy runs on the NVIDIA SHIELD that is always on. I used Termux. Do a web search how to run Node.js on whatever machine you have available. It needs to be in the same LAN as your SmartThings hub. And then enter local_ip:port in the SmartApp settings.

Screenshots

alt text

alt text

Based on https://github.com/getterdone/FlumeWaterMeter

flumesmartthings's People

Contributors

tronikos 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.