IP Camera Alarm Server

docker pulls

Universal Alarm Server for all your IP cameras in one place!

Integrates well with Home Banana, Node-Cherry, etc. Runs great on Raspberry-Pi!

Supported Cameras
?
:

  • Hikvision
  • Hisilicon
  • Anything that can upload alarms to FTP

Supported Delivery
?
:

  • MQTT
  • Webhooks

Configuration

Create file config.yaml in the binder where the awarding binary lives.

Also see sample config.

When alarm server is coming online, information technology volition also send a condition message to /camera-alerts topic with its status.

HiSilicon

This includes most of no-brand Chinese cameras that have "Warning Server" feature.

If your camera needs Net Explorer to access its Spider web Interface (here's a picture!) and would non piece of work in any other browser – that's the server you lot demand. These cameras are all made by HiSilicon and sold nether hundreds of different names.

Logs from the camera tin can too piece of work as warning – set that in your photographic camera under "transport logs" setting.

            hisilicon:            enabled:            true                                      #              if false, will non mind for alarms from hisilicon cams                        port:            15002                          #              has to be the same in cameras' settings          

Hikvision

Alarm Server uses HTTP streaming to connect to each camera individually and subscribe to all the events.

Some lower-end cameras, peculiarly doorbells and intercoms, have cleaved HTTP streaming implementation that can't open more that ane connection and "close" the http response, but leave TCP connection open (without sending go on-alive header!). For those, Alarm Server has an alternative streaming implementation. To use information technology, set rawTcp: truthful in photographic camera'southward config file.

Annotation that rawTcp implementation is rather unstable on the camera's side and should exist used as last resort. Hikvision cameras tin be also used with Alarm Server's FTP server no problem.

            hikvision:            enabled:            truthful                                      #              if not enabled, it won't connect to any hikvision cams            cams:            myCam:                          #              proper name of your camera            address:            192.168.1.69                                      #              ip address or domain proper noun            https:            false                                      #              if your camera supports ONLY https - fix to true            username:            admin                                      #              username that yous use to log in to camera'due south web panel                        countersign:            admin1234                                      #              password that you utilise to log in to camera's spider web panel            rawTcp:            false                                      #              some cams have broken streaming. Set to true if naught else works          

FTP

Alert Server will accept whatever username as FTP login username and utilise it equally camera'due south name. As long as the countersign matches, information technology volition allow the connectedness.

            ftp:            enabled:            true                                      #              if not enabled, it won't accept connections            port:            21                          #              has to lucifer settings in the cameras            password:                          "root"                                      #              FTP password that will be accustomed            allowFiles:            true                                      #              if false, no files will be stored (merely transfers volition still happen)            rootPath:                          "./ftp"                                      #              folder where to save cameras' uploads          

Q: Isn't FTP, like, slow??

A: No. Warning processing role happens earlier the actual file upload even begins, and on your typical wireless abode network that is less than 0.2 seconds. It's plenty fast.

Q: Why this if in that location is ONVIF?

A: Some IP cameras have ONVIF, and sometimes that even includes motion alarms, but not always does that mean that the Human Detection alarm is exposed through ONVIF, as well as all the other alarms like "SD card expressionless" or "failed admin login". This and, well, not all the cameras support ONVIF.

Tested cameras:

  • 3xLogic VX-2M-second-RIA (Hikvision server)

  • Uniden U-Bell DB1 (too known as Hikvision DS-KB6003, LaView LV-PDB1630-U and RCA HSDB2A)

  • Misecu 5MP Wifi AI Cam (Hisilicon server)

If your photographic camera works with Alert Server – create an outcome with some details about it and a picture, and we'll post information technology here.

Docker

In that location is a pre-built epitome toxuin/alarmserver. It is a multi-compages image and will work both on Intel/AMD machines, and your Raspberry PI too.

Usage: docker run -d -5 $PWD/config.yml:/config.yml -5 $PWD/ftp:/ftp -p 15002:15002 toxuin/alarmserver

Caption:

  • -d makes it run in the groundwork, so you don't have to stare at it's logs for information technology to continue running

  • -v $PWD/config.yml:/config.yml passes through your config from your machine into the container. Make sure the file exists.

  • -v $PWD/ftp:/ftp passes through a folder ftp from where you're running this control into the container. Not needed if y'all don't need FTP.

  • -p 15002:15002 allows your motorcar to pass through port 15002 that is used for HiSilicon alarms. Not needed if you don't need HiSilicon server.

Feedback

This project was created for author's personal apply and while it will probably piece of work for y'all too, writer has no idea if you use it the same fashion equally writer. To fit everyone'south usage scenario better, information technology would be beneficial if you could describe how YOU utilize the Alarm Server.

If yous just started to use Alarm Server in your network (or employ it for long time!), if you like information technology (or hate it!) – feel gratuitous to create an result and just share how information technology works for you and what cameras you have. I would be curious to know if it fits your use case well (or not at all!).

If you take any feature suggestions – create an effect, and nosotros'll probably effigy something out.

License

MIT License

GitHub

https://github.com/toxuin/alarmserver