Page 1 of 7

open source ZM client: ZmNinja (uses ZoneMinder APIs)

Posted: Mon Apr 06, 2015 12:19 am
by asker
Please follow the zmNinja blog or the twitter channel for updates.



Presenting ZMNinja - an open source cross platform client for ZoneMinder.
Runs on the following platforms:

Mobile:
iOS version on App Store
Android version on Play Store


Desktop:
Mac, Linux, Windows.
Download for free, here

As of Dec 14, 2015, the beta tests are closed. I've submitted the apps to the app/play store.
The Desktop versions are free.

Thanks for your support.

For those who want to see how it looks - here is a video of iOS client.

Source Code & Screen shots here

Upgrading your ZM version to APIs:
Instructions here

As of Oct 12, 2015 zmNinja supports real time event notifications via the new ZoneMinder event server. Instructions on setup here

Re: Working on an open source ZM client: ZmNinja

Posted: Mon Apr 06, 2015 7:04 am
by PacoLM
Looks really good! Good job.
If you want a beta tester for Android, let me know ;)

PacoLM

Re: Working on an open source ZM client: ZmNinja

Posted: Tue Apr 07, 2015 3:21 pm
by asker
Cool, thanks PacoLM. It will be a while before I get to Android - but will be happy to get it by your way.
I'm learning iOS/AngularJS programming now 8)
PacoLM wrote:Looks really good! Good job.
If you want a beta tester for Android, let me know ;)

PacoLM

Re: Working on an open source ZM client: ZmNinja

Posted: Wed Apr 08, 2015 6:42 pm
by knight-of-ni
Nice work. We had someone a while back stop in and volunteer to write a new (open source) app, but it looks like that person never got the ball rolling.

According to Kyle the API is installed by default if you build with cmake:
https://github.com/ZoneMinder/ZoneMinde ... t-68536313

We plan to depreciate autotools eventually.

Re: Working on an open source ZM client: ZmNinja

Posted: Thu Apr 09, 2015 12:13 am
by asker
Thank you. I did notice that thread of discussion. Given that it only gets installed via cmake, I'd suspect a majority of people won't be using it, which makes using it in my mobile app a non starter for now. I do look forward to it being a mainstream part of a new update to ZM - it would be pretty simple to switch from my view=xml/view=mobile mode to a proper API when its ready! I went ahead and asked kyle about the status in that thread anyway, incase he responds.
knnniggett wrote:Nice work. We had someone a while back stop in and volunteer to write a new (open source) app, but it looks like that person never got the ball rolling.

According to Kyle the API is installed by default if you build with cmake:
https://github.com/ZoneMinder/ZoneMinde ... t-68536313

We plan to depreciate autotools eventually.

Re: Working on an open source ZM client: ZmNinja

Posted: Thu Apr 09, 2015 11:51 am
by knight-of-ni
I'm not sure how many people are still using autotools. Many have already switched over to cmake.
In time, we will get rid of autotools altogether.

We also plan to eventually depreciate the xml skin, in favor of Kyle's API.

Re: Working on an open source ZM client: ZmNinja

Posted: Thu Apr 09, 2015 5:13 pm
by asker
knnniggett wrote:I'm not sure how many people are still using autotools. Many have already switched over to cmake.
In time, we will get rid of autotools altogether.

We also plan to eventually depreciate the xml skin, in favor of Kyle's API.
Do you recommend I switch to using APIs? I can reinstall ZM with make.
I had to manually install the APIs over my current version (which was installed using dpkg-* as instructed in https://github.com/ZoneMinder/ZoneMinder) because the github instructions don't result in APIs being installed.

The problem I found was after manual install, it was responding to my queries even if I did not authenticate, which was worrying. Would you know if the APIs would tie into auth if I installed it via cmake?

Finally, would you have any advice what is the best way to go about interfacing with kylejohnson if he is the only one responsible for the APIs should I discover/need API stuff for the client?

Re: Working on an open source ZM client: ZmNinja

Posted: Thu Apr 09, 2015 5:50 pm
by knight-of-ni
Yes, I recommend you develop your app to use the API rather than the xml skin.
Recommend you use a zoneminder built from cmake, rather than autotools.
That doesn't necessarily mean you have to build from source yourself.
I don't recall if you have previously mentioned the distro you are using. Fedora, CentOS, and (new) Debian rpms are available that have been built using cmake.

Please ask Kyle your questions about the API. Since it isn't finished, let him know if there is anything you think should be added.

Re: Working on an open source ZM client: ZmNinja

Posted: Thu Apr 09, 2015 6:41 pm
by asker
knnniggett wrote:Yes, I recommend you develop your app to use the API rather than the xml skin.
Recommend you use a zoneminder built from cmake, rather than autotools.
That doesn't necessarily mean you have to build from source yourself.
I don't recall if you have previously mentioned the distro you are using. Fedora, CentOS, and (new) Debian rpms are available that have been built using cmake.

Please ask Kyle your questions about the API. Since it isn't finished, let him know if there is anything you think should be added.
Okay, thanks. I'm on Ubuntu server 14.04 - so I guess from source is the way to go for cmake. I'll go ahead and ask kyle my API qs - what's the best way to do that though? post as github issues even if they are not issues? (example: thoughts & challenges)

Re: Working on an open source ZM client: ZmNinja

Posted: Thu Apr 16, 2015 8:34 pm
by asker
A quick update. The client is coming along nicely.
I've migrated almost all of it to the ZoneMinder APIs. It makes my life easier, but unfortunately, there is only one person working on the ZM APIs and it looks like API updates is not in his top priority list. If you want the client to have more features, do let the ZM folks working on the API know I need their help :-)

So while my app is working rather well so far, unless you have the APIs installed, you are not going to be able to use it. Also, I'm hanging around for some key API filters which I'll integrate when I get a response from the API maintainer/developer.

In any case, I'm open sourcing this by this month end and I'll continue to upgrade it and push changes.

Some eye candy: All screens are using the API for the most part (except live view, there is no way to do it via the API so far)

I've simplified the menu - taken out filters. I think filters in a mobile app is completely useless unless you can perform operations on it (which I haven't added yet, and nor is it supported as far as I can tell with the APIs)

Re: Working on an open source ZM client: ZmNinja

Posted: Sun Apr 19, 2015 7:58 pm
by Henri
Your application looks really good. :D
If you need someone for debugging please let me know.

Re: Working on an open source ZM client: ZmNinja

Posted: Fri Apr 24, 2015 9:05 pm
by asker
Thanks folks.

The code is not yet at a stage where I consider it beta for testing. Its pre-alpha right now.
I'm waiting for kyle@ZoneMinder to resolve some API issues - I can't proceed unless they are resolved.

Plus there are various things I need to do (including making the client handle 20-30 monitors gracefully without looking horrid, gobs of events etc)

Anyway, I've pushed the code to github for developers to start looking at
https://github.com/pliablepixels/zmNinja

Please don't report issues yet - there are many I know of. I'll fix them over the next few weeks.

Plus, most importantly - I'm not a coder and this is my first AngularJS/phonegap app, so its likely its full of head reeling code.

Re: Working on an open source ZM client: ZmNinja

Posted: Sun Apr 26, 2015 9:31 pm
by asker
So the app's been making great progress, see the first post in this thread.
At this stage, I can easily generate an Android version for testing - but you need to have the latest APIs of the angular-ui branch installed and working (not trivial).

If there are any takers who want to do this, let me know. The app also has a simulation mode built into the settings screen - you can try the app - it will fake events and monitors so its not of real use to use, but you will get to explore the full app :-)

So bottom line, the app is in good state, but I'm going to have to hang around till the ZM folks merge the APIs and make it easy for folks to access and also provide more some critical missing features (like viewing events footage - yeah, the APIs don't support it yet)

Re: Working on an open source ZM client: ZmNinja

Posted: Sun May 03, 2015 1:45 am
by asker
Lots of new updates:
Both Android and iOS ports are rock solid. Events view integrated, with skip/prev/next/pause/play
If any of you want to install the APIs for ZoneMinder, I'll be happy to send you the app to test

https://github.com/pliablepixels/zmNinja

Re: Working on an open source ZM client: ZmNinja

Posted: Sun May 10, 2015 12:06 am
by asker
Awesome news :ZM folks are trying their best to incorporate the APIs into release 1.29.
No guarantees that they will, but if it does, this app can go mainstream and everyone can use it.