So we are at 1.2.38 already?

oZoneDev
oZoneDev
Feb 25, 2017 · 4 min read

I just realized the last post I made was for 1.2.35 — zmNinja is now in 1.2.38 (yes, minor revisions, but “take care of the pennies and the dollar will take care of itself”, as the saying goes…)

So here are some changes you might have (or might not have noticed) since 1.2.35:

  • Strict SSL support (DO NOT enable this if you are using self-signed certs). When I first released zmNinja, there was a requirement to install SSL certificates in the phone before the app would work. Mobile phones are stricter than desktops for SSL handling. In desktops, if the browser encounters an unverifiable SSL cert, it prompts you. In mobile phone web views, it will be rejected without a prompt. People complained about this inconvenience, plus, in newer versions of Android, installing self signed certificates resulted in a terrifying warning from Android like this:
What the What?!?!

So, I enabled a setting inside the code to allow for untrusted certificates to be allowed by default (this is because most people use ZM without a paid for certificate, as ZM generates a self signed certificate during install). Well, this effectively removes the utility of SSL in the first place and folks who were using ZM with a real, paid for certificate were not getting the security they paid for. So you can now enable Strict SSL support in Developer settings. You need to exit the app from the task bar — kill it, and restart — for this to work. Note that if you are using self signed certs and enable this option, zmNinja will fail unless you install certs on the phone.

  • zmNinja now has a ‘reflow’ button in the montage section. The problem was every time you tried to fit in more monitors on the screen by reducing montage size, the layout would take the shape of a 2 column display without squeezing more monitors. Now you can just tap the reflow button (multiple square dots) and have the layout ‘pack’ itself properly. A picture is worth a 1000 words here.
  • You can now view ZoneMinder logs in the logs screen — the interface is a little basic for now, but it works
toggle the arrow keys on the header to switch
  • zmNinja now supports Dutch (8 languages in total, with German coming up in the next release)
  • For those running the desktop app, you can now add fs as a command line parameter and zmNinja will open in full screen mode
  • Some people get confused by the ‘flag’ (swipe to flag) operation in zmNinja. In ZM this means ‘archive’ but in zmNinja this means ‘mark as important’. If you prefer the ‘archive means hide’ mode, you can change the behaviour in developer settings
  • You can now view zones as an overlay on live feed. I actually implemented an initial version of zone editing too, but have masked it out because its terrible on mobile devices.
Tap on this button to enable/disable zone overlays
  • A lot of people missed this feature. You can now cycle between montage profiles!

Tap on the vertical “…” button and you will see the cycle button. Enable it and every 10 seconds the montage will cycle between your saved profiles (you create new profiles by tapping on the heart icon, remember?)

  • When viewing images (live or events), there were many buttons that added useful functionality. While functionality is good, visual distraction is bad. So you can now collapse them as you need.
  • Remember the “export to MP4 and GIF” options I added some time ago? To some (that includes me) it’s a bit of a novelty. The thing is, if you don’t use it, these are two additional buttons that show up in the events view and as you scroll, you can inadvertently tap them. So I added an option to disable them if you so choose (and funnily, I’ve also disabled them as I realized I hardly use them). It’s in Developer Settings
  • Our friends who used ‘basic’ authentication had a problem. Given that basic auth requires the user name and password to be embedded inside the URL, each time they’d open settings, they’d see their passwords in clear text. Well no more — as soon as you’re done entering your URL as http://user:password@url/ it gets masked as http://****:****@url . I know this is trivial but this required a new directive mask handler to be written because the requirement here was to obscure only part of a text, not the full text (like a password field). I did not want to split the password into another text box — I think thats crappy.

Those are the main things — obviously there have been other tweaks and bug fixes. Always read the CHANGELOG for all the details of what changes in each release.

Enjoy the Ninja!

zmNinja

zmNinja — the best open source surveillance mobile app for ZoneMinder NVR

oZoneDev

Written by

oZoneDev

A breath of fresh air for security and surveillance software

zmNinja

zmNinja

zmNinja — the best open source surveillance mobile app for ZoneMinder NVR

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade