homebridge-http-lock-mechanism
v1.4.0
Published
Homebridge plugin for a simple web-based lock
Downloads
10
Readme
homebridge-http-lock-mechanism
Description
This homebridge plugin exposes a web-based locking device to Apple's HomeKit. Using simple HTTP requests, the plugin allows you to lock/unlock the device. Please look at homebridge-web-lock if you want a plugin that allows for real-time status updates.
Find script samples for the lock in the examples folder.
Installation
- Install homebridge
- Install this plugin:
npm install -g homebridge-http-lock-mechanism
- Update your
config.json
file
Configuration
"accessories": [
{
"accessory": "HTTPLock",
"name": "Lock",
"apiroute": "http://myurl.com"
}
]
Core
| Key | Description | Default |
| --- | --- | --- |
| accessory
| Must be HTTPLock
| 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 |
| --- | --- | --- |
| autoLock
| Whether your lock should re-lock after being opened | false
|
| autoLockDelay
| Time (in seconds) until your lock will auto lock if enabled | 10
|
| 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_VALUE
State key
| State | Description |
| --- | --- |
| 0
| Open |
| 1
| Closed |