Routes motion alerts for Dahua, Alhua, Amcrest and Lorex camera streams to homebridge-camera-ffmpeg
Like this plugin? -> Buy me a ☕coffee☕
Confirmed working with: | Dahua DVR | Dahua/Amcrest Standalone Camera | Lorex DVR |
---|---|---|---|
- | IP3M-943B | - | |
- | IP5M-B1186EB | - | |
- | DH-IPC-HDW3641TMP | - | |
NVR4208-8P | - | - | |
- | - | LHV1004 DHV | |
DHI-HCVR4116HS-S3 | - | - | |
DH-XVR5116HS-X | - | - | |
- | DH-IPC-HDBW4631R-S | - | |
DHI-NVR4104HS-P-4Ks2 | - | - | |
- | - | NR818 | |
- | N43AJ52-B | - |
but lots of Dahua/Lorex NVRs and standalone cameras share this VideoMotion api.
homebridge-camera-ffmpeg
homebridge-camera-ffmpeg
"porthttp": 8088
for Http-based Automation
](https://sunoo.github.io/homebridge-camera-ffmpeg/automation/http.html)"motion": true
for the camera streams you want motion detection"motionTimeout": 0
to disable automatically resetting the motion after 1 second default"localhttp": true
to ensure HTTP automations only work from same device (for enhanced security)homebridge-dahua-alerts
.https
or port 443 on your device if you're getting ECONNREFUSED
in the debug logs. Not required by all.{
"name": "Camera FFmpeg",
"porthttp": 8088,
"localhttp": true,
"cameras": [
{
"name": "Driveway",
"motion": true,
"motionTimeout": 0,
"videoConfig": {
"source": "-i rtsp://admin:<snip>@192.168.1.XX:554/cam/realmonitor?channel=1&subtype=1"
}
},
{
"name": "Porch",
"motion": true,
"motionTimeout": 0,
"videoConfig": {
"source": "-i rtsp://admin:<snip>@192.168.1.XX:554/cam/realmonitor?channel=2&subtype=1"
}
},
{
"name": "Backdoor",
"motion": true,
"motionTimeout": 0,
"videoConfig": {
"source": "-i rtsp://admin:<snip>@192.168.1.XX:554/cam/realmonitor?channel=4&subtype=1"
}
}
],
"platform": "Camera-ffmpeg"
}
{
"cameras": [
{
"index": 0,
"cameraName": "Driveway"
},
{
"index": 1,
"cameraName": "Porch"
},
{
"index": 3,
"cameraName": "Backdoor"
}
],
"homebridgeCameraFfmpegHttpPort": 8088,
"host": "XX.XX.XX.XX",
"user": "admin",
"pass": "XX",
"eventTypes":
{
"VideoMotion": true
},
"platform": "dahua-alerts"
}
homebridgeCameraFfmpegHttpPort
must match the porthttp
config in the homebridge-camera-ffmpeg
confighost
is the IP of the NVR or camerauser
is username of the NVR or camerapass
is the password of the NVR or cameraeventTypes
are a list of events you want to subscribe to. Currently the list includes VideoMotion
, AlarmLocal
, SmartMotionHuman
, SmartMotionVehicle
, CrossLineDetection
, and CrossRegionDetection
useHttp
(optional) use HTTP instead of HTTPS to connect to hostFor each camera you want to monitor, add a new entry to the cameras
array.
index
if the camera's channel number substracted by 1 (the index starts from 0, the camera channel starts from 1)cameraName
must match the name
of the camera specified in the homebridge-camera-ffmpeg
configThis is useful if you have standalone IP Camera(s) (not going through an NVR), a mix of IP Cameras and NVR(s), or multiple NVRs.
To define a host/user/pass on a camera simply add the cameraCredentials
object. If you have a top level host/user/pass defined, this object will override it.
"cameras": [
{
"index": 0,
"cameraName": "Driveway"
"cameraCredentials": {
"host": "XX.XX.XX.XX",
"user": "admin",
"pass": "XX"
}
},
0
npm run build
to get JS output in dist
Referenced nayrnet/node-dahua-api for the Dahua/Lorex motion alerts API.