Since I do not use Homebridge and Domoticz anymore, this module is not maintained. Feel free to fork it and make the changes you need.
This homebridge plugin exposes a web-based security system to Apple's HomeKit and allows you to control it via HTTP requests.
This plugin only works with Domoticz and a selector switch.
This plugin does not use the security panel in Domoticz, but a selector swtich with 3 states (0, 10 and 20), where 0 is Off, 10 is Armed night and 20 is Armed away. Homekit uses 4 states (also Armed home), but I'm not using this. When chosing At home in the Home-app, this is translated to Armed night. With scripting in Domoticz I check if the alarm is armed when certain sensors are triggered and when it is armed a sirene goes off.
- Install homebridge
- Install this plugin:
npm install -g homebridge-security-domoticz
- Update your
config.json
file
Key | Description | Default |
---|---|---|
accessory |
Must be HttpSecuritySystem |
N/A |
name |
Name to appear in the Home app | N/A |
disarmUrl |
URL to disarm security system | N/A |
nightUrl |
URL to set security system to Armed night | N/A |
awayUrl |
URL to set security system to Armed away | N/A |
statusUrl |
URL to get the status of the security system | N/A |
Key | Description | Default |
---|---|---|
disarmValue (optional) |
Value for disarm when status is checked | 0 |
nightValue (optional) |
Value for armed night when status is checked | 10 |
awayValue (optional) |
Value for armed away when status is checked | 20 |
pollingInterval (optional) |
If checkStatus is set to polling , this is the time (in ms) betwwen status checks |
3000 |
timeout (optional) |
Time (in milliseconds) until the accessory will be marked as Not Responding if it is unreachable | 5000 |
model (optional) |
Appears under the Model field for the accessory | homebridge-security |
serial (optional) |
Appears under the Serial field for the accessory | homebridge-security |
manufacturer (optional) |
Appears under the Manufacturer field for the accessory | goedh452 |
"accessories": [
{
"accessory": "HttpSecuritySystem",
"name": "Alarm",
"disarmUrl": "http://192.168.1.114:8080/json.htm?type=command¶m=switchlight&idx=1000&switchcmd=Set%20Level&level=0",
"awayUrl": "http://192.168.1.114:8080/json.htm?type=command¶m=switchlight&idx=1000&switchcmd=Set%20Level&level=20",
"nightUrl": "http://192.168.1.114:8080/json.htm?type=command¶m=switchlight&idx=1000&switchcmd=Set%20Level&level=10",
"statusUrl": "http://192.168.1.114:8080/json.htm?type=devices&rid=1000",
"timeout": 5000,
"pollingInterval": 5000,
"disarmValue": "0",
"nightValue": "10",
"awayValue": "20"
}
]