homebridge-http-garage
v1.4.2
Published
Homebridge plugin for a simple web-based garage
Downloads
42
Readme
homebridge-http-garage
Description
This homebridge plugin exposes a web-based garage opener to Apple's HomeKit. Using simple HTTP requests, the plugin allows you to open/close the garage. Please look at homebridge-web-garage if you want a plugin that allows for real-time status updates.
Find script samples for the opener in the examples folder.
Installation
- Install homebridge
- Install this plugin:
npm install -g homebridge-http-garage - Update your
config.json
Configuration
"accessories": [
{
"accessory": "GarageDoorOpener",
"name": "Garage",
"apiroute": "http://myurl.com"
}
]Core
| Key | Description | Default |
| --- | --- | --- |
| accessory | Must be GarageDoorOpener | N/A |
| name | Name to appear in the Home app | N/A |
| apiroute | Root URL of your device | N/A |
Optional fields
| Key | Description | Default |
| --- | --- | --- |
| openTime | Time (in seconds) to simulate your garage opening | 10 |
| closeTime | Time (in seconds) to simulate your garage closing | 10 |
| autoLock | Whether your garage should auto-close after being opened | false |
| autoLockDelay | Time (in seconds) until your garage will automatically close (if enabled) | 20 |
| pollInterval | Time (in seconds) between device polls (if polling is enabled) | 120 |
Additional options
| Key | Description | Default |
| --- | --- | --- |
| timeout | Time (in milliseconds) until the accessory will be marked as Not Responding if it is unreachable | 3000 |
| http_method | HTTP method used to communicate with the device | GET |
| username | Username if HTTP authentication is enabled | N/A |
| password | Password if HTTP authentication is enabled | N/A |
| model | Appears under the Model field for the accessory | plugin |
| serial | Appears under the Serial field for the accessory | apiroute |
| manufacturer | Appears under the Manufacturer field for the accessory | author |
| firmware | Appears under the Firmware field for the accessory | version |
API Interfacing
Your API should be able to:
- Return JSON information when it receives
/status:
{
"currentState": INT_VALUE
}- Set the state when it receives:
/setState?value=INT_VALUEState key
| State | Description |
| --- | --- |
| 0 | Open |
| 1 | Closed |
