1.1.9 • Published 2 years ago

homebridge-web-lock v1.1.9

Weekly downloads
4
License
MIT
Repository
github
Last release
2 years ago

homebridge-web-lock

npm npm

Description

This homebridge plugin exposes a web-based lock to Apple's HomeKit. Using HTTP requests, you can open/close the lock and update the plugin with the lock's current state. The plugin achieves this by setting up a listen server which listens for changes in state from your device and then feeds them real-time into HomeKit.

Installation

  1. Install homebridge
  2. Install this plugin: npm install -g homebridge-web-lock
  3. Update your config.json

Configuration

"accessories": [
     {
       "accessory": "HTTPLock",
       "name": "Lock",
       "apiroute": "http://myurl.com"
     }
]

Core

KeyDescriptionDefault
accessoryMust be HTTPLockN/A
nameName to appear in the Home appN/A
apirouteRoot URL of your deviceN/A

Optional fields

KeyDescriptionDefault
autoLockWhether your lock should re-lock after being unlockedfalse
autoLockDelayWhether your lock should re-lock after being unlocked (if enabled)10

Additional options

KeyDescriptionDefault
pollIntervalTime (in seconds) between device polls300
portPort for your HTTP listener (only one listener per port)2000
timeoutTime (in milliseconds) until the accessory will be marked as Not Responding if it is unreachable3000
http_methodHTTP method used to communicate with the deviceGET
usernameUsername if HTTP authentication is enabledN/A
passwordPassword if HTTP authentication is enabledN/A
modelAppears under the Model field for the accessoryplugin
serialAppears under the Serial field for the accessoryapiroute
manufacturerAppears under the Manufacturer field for the accessoryauthor
firmwareAppears under the Firmware field for the accessoryversion

API Interfacing

Your API should be able to:

  1. Return JSON information when it receives /status:
{
    "lockCurrentState": INT_VALUE,
    "lockTargetState": INT_VALUE
}
  1. Lock or unlock the lock when it receives:
/setLockTargetState?value=INT_VALUE
  1. Update lockCurrentState when it locks or unlocks by messaging the listen server:
/lockCurrentState?value=INT_VALUE
  1. Update lockTargetState following a manual override by messaging the listen server:
/lockTargetState?value=INT_VALUE

LockState Key

NumberName
0Unlocked
1Locked
1.1.9

2 years ago

1.1.8

2 years ago

1.1.7

2 years ago

1.1.6

2 years ago

1.1.5

2 years ago

1.1.4

2 years ago

1.1.3

2 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.1.0

5 years ago

1.0.9

5 years ago

1.0.8

5 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago