JOE MAKES

HOME / PROJECTS

▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒


See project on github!

Homebridge HTTP Leak Sensor

verified-by-homebridge npm

Description

This homebridge plugin exposes a web-based Leak Sensor to Appleā€™s HomeKit. Using simple HTTP requests, the plugin allows you to monitor the status of leak sensors.

Leak sensors enabled with this plugin will appear in Homekit as sensors. You will be able to check whether or not they detect a leak. When a leak is detected Homekit will send you CRITICAL alert notifications.

Installation

  1. Install homebridge
  2. Install this plugin. npm install -g homebridge-http-leak-sensor.
  3. Configure the accessory in config.json.

Configuration

"accessories": [
    {
        "accessory": "HomebridgeHTTPLeakSensor",
        "name": "Leak Sensor",
        "url": "http://192.168.1.54/status",
        "pollInterval": 60,
        "failedRequestsLimit": 100,
        "manufacturer": "Homebridge",
        "model": "Leak Sensor",
        "serialNumber": "ESP-32"
    }
]

Required

Key Description Default
accessory Must be "HomebridgeHTTPLeakSensor"
name Name to appear in the Home app
url URL route to your device

Optional

Key Description Default
pollInterval Time (in seconds) to check device status. 60
failedRequestsLimit Limit of failed requests that can be made to url before the plugin stops making requests. Value of 0 allows unlimited failed requests. 120
model Appears under the Model field for the accessory "Leak Sensor"
serial Appears under the Serial field for the accessory "000000"
manufacturer Appears under the Manufacturer field for the accessory "Homebridge"

Device API

Your Leak Sensor API should be able to return JSON information when it receives /status:

{
    "currentState": "WET"
}
State Description
"WET" Device is detecting a leak.
"DRY" Device is not detecting a leak.

Sensors

This plugin is intended to communicate with very simple DIY leak sensors. To build your own Leak Sensor see sample code in the /examples folder.

Site generated 2024-09-20