[support] dlandon - Zoneminder 1.36


Recommended Posts

Hi, I received some emails about the new docker image that was released with a (mostly) functioning machine learning system along with the ES.

 

I though I'd post a message so that everyone trying it out can follow along (I am the author of the ES+hook system):

 

1. When the ES (Event Server =/usr/bin/zmeventnotification.pl) sends a notification, you can choose to embed a picture in the notification (can't be http or self signed HTTPS). That URL setting is picture_url in /etc/zm/zmeventnotification.ini. Note that the default certificates generated by this docker image will not work if you want picture notifications. You need to replace them with proper certificates like those from Lets Encrypt.

 

2. If you want to enable "hook_pass_image_path" path in zmeventnotification.ini, you need to be running ZM 1.33 or above. This docker image (as of Sep 20, 2019) is for 1.32 - the last stable ZM release. In short, it won't work. What this option actually does is when the ES invokes the hook script (/usr/bin/detect.py), it lets the script know the file system path of the current event that is being passed for object detection. This path is retrieved by the ES using a feature only available in ZM 1.33+. When /usr/bin/detect.py runs & if it finds an object of interest in the image(s), then it will write an image file to that path called 'objdetect.jpg' which is basically the image where it found an object and a bounding box around the object of interest. This is then shown both in zmNinja and ZoneMinder as an image with boxes around the object. None of this will work for you in ZM 1.32. It will magically start working when this docker image  is upgraded to the next version of ZM.

 

3. Next up, after detection is run, and it found something, the result is sent back to the ES. Lets say its "detected: car". This is prefixed to the existing motion notes of ZM in the DB. This feature works in 1.32 as well as is _not_ related to hook_pass_image_path at all.

 

4. If you are having issues, please read the documentation on ES and the hooks - including how to run it in manual mode and enabling debug logs 

 

Yes, it's a little convoluted the way it is today. I could have made it simpler, but its what it is at the moment :)

 

I don't follow this forum at all  - stopped by to clarify a few things. If you have questions specific to the machine learning stuff, you may want to ask in the ZoneMinder slack forum incase you are not able to resolve it here.

 

Links of interest:

Event Notification docs

Machine Learning Hooks

ZM Slack Channel Joining Link

 

 

 

 

 

 

 

 

 

 

 

Edited by Pliable Pixels
Link to comment
  • 3 weeks later...

Hello, I am running Unraid /Zoneminder 1.32 When I set the system up I had failed to set the correct timezone in Unraid, it defaulted to Pacific time.

I installed the Zoneminder docker and it is wonderful except for my error. the events are marked as Pacific time.

I have changed the Unraid/Settings/Date and Time to the correct setting, restarted the Zoneminder docker, restarted the server but alas my screw up remains.

I am not an expert at this by any measure. I searched the forum and everything I found said that there are 3 php.ini files that need to have the same entry's, unfortunately I can't find the php.ini files.

 

Any help is appreciated.

 

Chas

Link to comment
56 minutes ago, kysdaddy said:

Hello, I am running Unraid /Zoneminder 1.32 When I set the system up I had failed to set the correct timezone in Unraid, it defaulted to Pacific time.

I installed the Zoneminder docker and it is wonderful except for my error. the events are marked as Pacific time.

I have changed the Unraid/Settings/Date and Time to the correct setting, restarted the Zoneminder docker, restarted the server but alas my screw up remains.

I am not an expert at this by any measure. I searched the forum and everything I found said that there are 3 php.ini files that need to have the same entry's, unfortunately I can't find the php.ini files.

 

Any help is appreciated.

 

Chas

Click on the "Basic View" switch on the docker page to switch to advanced view in the upper right corner and then click "Force Update" on the docker.  Check the timezone on the docker start command and see if it is the correct timezone.

Link to comment
On 10/12/2019 at 10:39 AM, ideaman924 said:

Hi @dlandon, There's a problem with the generated certificate - Chrome does not allow access to Zoneminder at all.

image.thumb.png.101cd3838946b6ba91a732a6092f6088.png

I'm guessing it's because of this? https://stackoverflow.com/questions/43665243/invalid-self-signed-ssl-cert-subject-alternative-name-missing/56530824#56530824

 

Any chance the generation could be fixed so that it includes that parameter?

Verify the 'ServerName' file in the appdata/zoneminder/keys/ folder contains 'localhost'.

Link to comment
1 hour ago, dlandon said:

Click on the "Basic View" switch on the docker page to switch to advanced view in the upper right corner and then click "Force Update" on the docker.  Check the timezone on the docker start command and see if it is the correct timezone.

Thank you that worked perfectly!

Link to comment

struggling to setup zoneminder in docker. Please help

I keep getting below error as soon as I try to add a camera (wyze). shm shows 0% on the UI

 

FAT-zm_monitor.cpp/522 [Can't open memory map file /dev/shm/zm.mmap.2, probably not enough space free: Permission denied]

zmwatch[4566]: ERR [Memory map file '/dev/shm/zm.mmap.2' does not exist.  zmc might not be running.]
 

Link to comment
14 minutes ago, djkumar72 said:

struggling to setup zoneminder in docker. Please help

I keep getting below error as soon as I try to add a camera (wyze). shm shows 0% on the UI

 

FAT-zm_monitor.cpp/522 [Can't open memory map file /dev/shm/zm.mmap.2, probably not enough space free: Permission denied]

zmwatch[4566]: ERR [Memory map file '/dev/shm/zm.mmap.2' does not exist.  zmc might not be running.]
 

Sounds like a shm memory issue.  What value do you have set for shm in the docker template?  Click on "Show More Settings" to see.  How much memory do you have in your server?

Link to comment

doesnt seem to be ..i was trying with below docker compose file . Switched to your steps and it is working fine.

Not sure what is wrong. I am going to try again with docker compose and try again 

 zoneminder:
    privileged: true
    image: dlandon/zoneminder
    ports:
      - 8443:443
      - 9000:9000
    networks:
      - web
    environment:
      - TZ=${TZ}
      - INSTALL_HOOK="0"
      - INSTALL_FACE="0"
      - INSTALL_TINY_YOLO="0"
      - INSTALL_YOLO="0"
      - PUID=${PUID}
      - PGID=${PGID}
      - SHMEM="50%"
    volumes:
      - ${USERDIR}/docker/zoneminder/config:/config:rw
      - ${USERDIR}/docker/zoneminder/data:/var/cache/zoneminder
    labels:
      - traefik.enable=true
      - traefik.frontend.rule=Host:jayzm.${DOMAINNAME}
     # - traefik.frontend.redirect.entryPoint=https
      - traefik.docker.network=web
      - traefik.port=80
 

Link to comment
On 10/20/2019 at 5:53 AM, dlandon said:

Verify the 'ServerName' file in the appdata/zoneminder/keys/ folder contains 'localhost'.

Yup, it's there. I switched back to Firefox anyway so it's a non-issue, though.

Firefox gives a warning but it lets me continue at least by adding an exception.

Edited by Guest
Link to comment
  • 3 weeks later...

With the recent update, I'm seeing this:


*** Running /etc/my_init.d/20_apt_update.sh...
Err:1 http://ppa.launchpad.net/iconnor/zoneminder-1.32/ubuntu xenial InRelease
Could not connect to ppa.launchpad.net:80 (91.189.95.83), connection timed out
Err:2 http://ppa.launchpad.net/ondrej/php/ubuntu xenial InRelease
Unable to connect to ppa.launchpad.net:http:

Edited by joelones
Link to comment
9 minutes ago, joelones said:

With the recent update, I'm seeing this:

 


*** Running /etc/my_init.d/20_apt_update.sh...
Err:1 http://ppa.launchpad.net/iconnor/zoneminder-1.32/ubuntu xenial InRelease
Could not connect to ppa.launchpad.net:80 (91.189.95.83), connection timed out
Err:2 http://ppa.launchpad.net/ondrej/php/ubuntu xenial InRelease
Unable to connect to ppa.launchpad.net:http:

 

Working for me.  Try again.  Might be a temporary issue.

Link to comment

I am having a little bit of an issue with Zoneminder taking up a lot of space in my docker container and I am not sure why.  Here is my docker container sizes below.

 

image.png.4738970c36e75972feff240718bea19a.png

 

Also here is my config file...

 

image.thumb.png.5c5ab5044d4dc7120c11690274aa84eb.png

 

bere is one of the errors i am getting inside of zoneminder which i believe is contributing to it

 

DiskSpace: Event does not exist at /var/cache/zoneminder/events/4/2019-11-17/231099:ZoneMinder::Event: Cause => Continuous DefaultVideo => 231099-video.mp4 EndTime => 2019-11-17 06:20:00 Frames => 501 Height => 1072 Id => 231099 Length => 247.29 MonitorId => 4 Name => Event- 231099 Scheme => Medium StartTime => 2019-11-17 06:15:53 StateId => 1 Videoed => 1 Width => 1920

 

Edited by mgranger
Link to comment
7 hours ago, mgranger said:

I am having a little bit of an issue with Zoneminder taking up a lot of space in my docker container and I am not sure why.  Here is my docker container sizes below.

 

image.png.4738970c36e75972feff240718bea19a.png

 

Also here is my config file...

 

image.thumb.png.5c5ab5044d4dc7120c11690274aa84eb.png

 

bere is one of the errors i am getting inside of zoneminder which i believe is contributing to it

 


DiskSpace: Event does not exist at /var/cache/zoneminder/events/4/2019-11-17/231099:ZoneMinder::Event: Cause => Continuous DefaultVideo => 231099-video.mp4 EndTime => 2019-11-17 06:20:00 Frames => 501 Height => 1072 Id => 231099 Length => 247.29 MonitorId => 4 Name => Event- 231099 Scheme => Medium StartTime => 2019-11-17 06:15:53 StateId => 1 Videoed => 1 Width => 1920

 

You are storing your data on a UD mounted disk.  I suspect there is a problem with that and the events are being stored in the docker image.  You should map your data to an array share.  Why are you using a UD disk for events?

Link to comment
2 hours ago, dlandon said:

You are storing your data on a UD mounted disk.  I suspect there is a problem with that and the events are being stored in the docker image.  You should map your data to an array share.  Why are you using a UD disk for events?

My thinking although it is probably wrong was that by using a UD the parity disks would not be spinning all the time.  I understand that it is outside the array so I would lose all the data if the disk went bad but I was willing to live with that.  But I see this is causing my docker image to become full.

Link to comment
My thinking although it is probably wrong was that by using a UD the parity disks would not be spinning all the time.  I understand that it is outside the array so I would lose all the data if the disk went bad but I was willing to live with that.  But I see this is causing my docker image to become full.


I use a UD disk and it works great for event storage.
Link to comment
  • 2 weeks later...
  • dlandon changed the title to [support] dlandon - Zoneminder 1.36

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.