Windows Live Viewer..27-11-05 Now Complete Frontend for ZM!!
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
no probs mate hope you know im not a bogus user lol
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 2
- Joined: Tue Nov 01, 2005 8:35 pm
This program looks tight, but I cannot get it to install. It dies on the .NET framework 2.0 install.
I alway get an "setup has detacted that the file {blah blah long name of file} has changed since it was initially published. Click Ok, to retry the download, or Cancel to exit setup." error on the second file it tries to download.
Of course clicking Ok does nothing. I have even tried downloading and installing the .NET framework 2.0 from Microsoft, but the setup for this program still runs the .NET 2.0 setup thingy (that fails).
Any ideas?
WinXP Home SP2
I alway get an "setup has detacted that the file {blah blah long name of file} has changed since it was initially published. Click Ok, to retry the download, or Cancel to exit setup." error on the second file it tries to download.
Of course clicking Ok does nothing. I have even tried downloading and installing the .NET framework 2.0 from Microsoft, but the setup for this program still runs the .NET 2.0 setup thingy (that fails).
Any ideas?
WinXP Home SP2
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
leave it with me i will take a look. As all i do is update it maybe i have got an old and a new file mixed up somewhere
What happens if you install the old version first then the new one. Unfortunatly i dont have any windows machines anymore that dont have it installed and they all had the old one then this one so im just curious.
What happens if you install the old version first then the new one. Unfortunatly i dont have any windows machines anymore that dont have it installed and they all had the old one then this one so im just curious.
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
scrap previos theory as i have tried on another machine and it has the same error you describe.It appears that this happens only on xp machines maybe sp2 only. I will sort this tonight with yours and maybe others help. As i dont have access to any machines that do not already have this software in i cant do a new install. I will try removing all .net from a machine i have and see if the error returns fo a test bed. When you come online pm me so i know and i should have a revised build on my server.
Cheers
Cheers
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 2
- Joined: Tue Nov 01, 2005 8:35 pm
Could it be possible to just get a zip of an installed folder? I've install the .NET framework 2.0 from microsoft so I don't really need the zm4ms installer to install it again. So maybe quick and dirty fix could be to release a zip of a preinstalled directory with instructions to download the .NET framework 2.0 from MS?
Course if you make a new version let me know, I'll uninstall the framework I got from MS and give zm4ms installer another try.
Course if you make a new version let me know, I'll uninstall the framework I got from MS and give zm4ms installer another try.
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
as its written in visual studio 2005 beta its currently using a 2.0 beta framework that has to be downloaded on top of or instead of .net 2. I have just re built the app and am gonna test it if this is succesful i will post it
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
ok i havnt got to the bottom of this.
I have created a new test app to see if that would work and it failed on my xp pro test machine.
I downloaded
http://www.microsoft.com/downloads/info ... tnetfx.exe
which is the whole .net framework 2 beta and then my app installed.
I assumed as it used to that ms has changed something in the beta. I have kept a copy of the above link just in case, i havnt put it on my server as im only on broadband and it would kill my link.
Hope this sorts you all.
Please let me know!!
James
(looks like im gonna have to buy the actual 2005 when its out if im gonna have probs like this
I have created a new test app to see if that would work and it failed on my xp pro test machine.
I downloaded
http://www.microsoft.com/downloads/info ... tnetfx.exe
which is the whole .net framework 2 beta and then my app installed.
I assumed as it used to that ms has changed something in the beta. I have kept a copy of the above link just in case, i havnt put it on my server as im only on broadband and it would kill my link.
Hope this sorts you all.
Please let me know!!
James
(looks like im gonna have to buy the actual 2005 when its out if im gonna have probs like this
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
Cordel
I have started another app but i cant do the sql link (as yet) im making a 16 way single zm server viewer. the adnatages to this means i gan assume certain path info for the streams and just ask the ip of the server. Unfortunatly monitor numbers arnt in sequence (is if it been deleted the mon number is not reused.). Basically im making it look a bit more serious. It will be asingle app with resizable camera views so that users can move them around, stick views ontop of views ontop of views etc and save the results to a custom view setting. Obviously there will still be quad 9 way etc etc but im making this one more intelligent (and much more complicated lol) so its more modular based. SO my questions
Do you think i need to store monitor number id, or assume 1 -16
Does anyone have a use for this or is the old one sufficient
btw i am also planning on allowing all login info and passing this info via the url. This way all password config only has to be entered on the server and when the viewer is loaded it just needs to know the ip you want it call. (assuming 1-16 monitor numbers)
James
I have started another app but i cant do the sql link (as yet) im making a 16 way single zm server viewer. the adnatages to this means i gan assume certain path info for the streams and just ask the ip of the server. Unfortunatly monitor numbers arnt in sequence (is if it been deleted the mon number is not reused.). Basically im making it look a bit more serious. It will be asingle app with resizable camera views so that users can move them around, stick views ontop of views ontop of views etc and save the results to a custom view setting. Obviously there will still be quad 9 way etc etc but im making this one more intelligent (and much more complicated lol) so its more modular based. SO my questions
Do you think i need to store monitor number id, or assume 1 -16
Does anyone have a use for this or is the old one sufficient
btw i am also planning on allowing all login info and passing this info via the url. This way all password config only has to be entered on the server and when the viewer is loaded it just needs to know the ip you want it call. (assuming 1-16 monitor numbers)
James
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
Thanks for my first bit of feedback
Hope its going ok
Im currently working on a version 2 that does this but its gonna work in a completly different way
big things i have added, all camera views are resizable and will stay that size until view changed.
Defualt view buttons as before ie pip, quad 16 way etc
easier setup just needs ip and first monitor number
custom view (move windows around as required and size as required then save)
progress bars on each camera showing load status of image (for remote zm's)
Auto sizing of image windows to suit desktop size, i had problems on older machines with low desktop sizes.
Pause view
things as i think of them, I should have a working app by the end of the week, and will announce it here when its completed
The main reason for the change was i didnt think my 1st attempt looked professional enough but hopefully this one will

James
Hope its going ok
Im currently working on a version 2 that does this but its gonna work in a completly different way
big things i have added, all camera views are resizable and will stay that size until view changed.
Defualt view buttons as before ie pip, quad 16 way etc
easier setup just needs ip and first monitor number
custom view (move windows around as required and size as required then save)
progress bars on each camera showing load status of image (for remote zm's)
Auto sizing of image windows to suit desktop size, i had problems on older machines with low desktop sizes.
Pause view
things as i think of them, I should have a working app by the end of the week, and will announce it here when its completed
The main reason for the change was i didnt think my 1st attempt looked professional enough but hopefully this one will

James
Last edited by jameswilson on Sun Aug 27, 2006 7:11 pm, edited 1 time in total.
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
ok then new version ready for trial but not quite finished yet, needs a little polish.
Basically i have fully rewritten it. It was a first atttepmt not bad but we are getting there now. I felt the previous version looked unprofessional from a users point of view. Also it was very dumb.
New version does all as before exept i have removed cycle in anticipation of new feature hitting the zm server (cycling streams)
Features
Views Pip, 4 way, 9 way, 13 way, 24 way, 36 way and custom view
All cameras now are in resizeable windows, with a progress bar at the top showing image load status.
Pressing the default view buttons accross the tool bar will open 4, 9 or 36 way etc as expexted. These views will automatically be scaled to fit the size of the window whether the window is maximised or not. I have tested it down to 640 x 480 but why you would want a 36 way split on 640x480 monitor i donk know.
As all windows are now sizeable and moveable they can be positioned, closed and sized as required then pressing save view will remeber the current view and pressing recall view will load this custom view. I think end users will like this one.
As before refresh rates are lowered on the bigger views to prevent overloading of server and bandwidth.
Before clicking on an image opened the spot monitor, i have removed this as it seemed to be abused by end users (ie left open perminantly) and replaced it with full screen view. Double clicking the camera title bar will maximise the current cam to fill the main apps window size. WHen this happens it will change its update rate from whatever it was befopre to 2 fps (bandwidth permitting)
Now clicking on the image loads a pause still image of what was there when you clicked. clicking again gets a new image etc. I plan to be able to save this print when i finish that part.
I have also added a low, med and high quality button. Does the obvious in favour of update speed on low bandwith connections.
Also added a weblogin button that currently just loads mozilla (well any program really, just enter the path and exe in settings), this is temp until i get started on either a playback app or better control of mozilla for playback purposes.
Settings has now changed and all that is required is as ip and a start monitor number
When you open settings you will see a group of boxes on the left that relate to IP and MON. IP being zm server IP and MON being monitor number on that server. If you have your monitors seqentially ordered starting at 1, if you enter the ip of the server and a 1 in cam 1 ip and mon and press the buttons at the top marked 'copy ip' and Auto numbewr monitors it will fill out all 36 for you.
Then check the path is correct (default should work with most but ctu zm needs an additional /zm after cgi-bin
Also in here you will find default refresh rate in milliseconds
and the password settings.
Available here
http://www.jpwilson.eu
This one should be far more use than the last
Basically i have fully rewritten it. It was a first atttepmt not bad but we are getting there now. I felt the previous version looked unprofessional from a users point of view. Also it was very dumb.
New version does all as before exept i have removed cycle in anticipation of new feature hitting the zm server (cycling streams)
Features
Views Pip, 4 way, 9 way, 13 way, 24 way, 36 way and custom view
All cameras now are in resizeable windows, with a progress bar at the top showing image load status.
Pressing the default view buttons accross the tool bar will open 4, 9 or 36 way etc as expexted. These views will automatically be scaled to fit the size of the window whether the window is maximised or not. I have tested it down to 640 x 480 but why you would want a 36 way split on 640x480 monitor i donk know.
As all windows are now sizeable and moveable they can be positioned, closed and sized as required then pressing save view will remeber the current view and pressing recall view will load this custom view. I think end users will like this one.
As before refresh rates are lowered on the bigger views to prevent overloading of server and bandwidth.
Before clicking on an image opened the spot monitor, i have removed this as it seemed to be abused by end users (ie left open perminantly) and replaced it with full screen view. Double clicking the camera title bar will maximise the current cam to fill the main apps window size. WHen this happens it will change its update rate from whatever it was befopre to 2 fps (bandwidth permitting)
Now clicking on the image loads a pause still image of what was there when you clicked. clicking again gets a new image etc. I plan to be able to save this print when i finish that part.
I have also added a low, med and high quality button. Does the obvious in favour of update speed on low bandwith connections.
Also added a weblogin button that currently just loads mozilla (well any program really, just enter the path and exe in settings), this is temp until i get started on either a playback app or better control of mozilla for playback purposes.
Settings has now changed and all that is required is as ip and a start monitor number
When you open settings you will see a group of boxes on the left that relate to IP and MON. IP being zm server IP and MON being monitor number on that server. If you have your monitors seqentially ordered starting at 1, if you enter the ip of the server and a 1 in cam 1 ip and mon and press the buttons at the top marked 'copy ip' and Auto numbewr monitors it will fill out all 36 for you.
Then check the path is correct (default should work with most but ctu zm needs an additional /zm after cgi-bin
Also in here you will find default refresh rate in milliseconds
and the password settings.
Available here
http://www.jpwilson.eu
This one should be far more use than the last
Last edited by jameswilson on Sun Aug 27, 2006 7:11 pm, edited 1 time in total.
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
This is ready now, have finished the print module and export/import of image (no its not a player yet)
Wish list so far has.
Better print out of paused images with evidence data on etc
Better link to web interface for playing back
PLAYBACK!!
Map viewer (upload plan of site and drag small image views in location to allow fast tracking of perps.
pocket pc and smartphione version
Wish list so far has.
Better print out of paused images with evidence data on etc
Better link to web interface for playing back
PLAYBACK!!
Map viewer (upload plan of site and drag small image views in location to allow fast tracking of perps.
pocket pc and smartphione version
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Hi James,jameswilson wrote: Do you think i need to store monitor number id, or assume 1 -16
Does anyone have a use for this or is the old one sufficient
btw i am also planning on allowing all login info and passing this info via the url. This way all password config only has to be entered on the server and when the viewer is loaded it just needs to know the ip you want it call. (assuming 1-16 monitor numbers)
Sorry it took so long for me to answer you but here it is

The database creates the monitor ID each time you create a monitor and always increments so if you make and delete a monitor that ID will not be used again (at least reaching the point that it would be used excedes how many times a monitor could be created on one server, it works the same as the events ID). So to assume that they are going to be 1-16 will not work very well.
Also I would leave open in your plans to have several logins for differant servers (someone will want it so I'd have a base for it in the plans and structure if you can). I myself create just a very limited account across all the servers that match but I for see some folks not liking that plan.
What you might try is creating a user in mysql that is limited to only reading the monitors table (no other permisions just select, so that if that user was compromised the most they would be able to do is see the monitors table). Then see if you can create something in your app to get that data for use in configuring your app.
Or create a php page that can serve the app the info (assuming there is no way to parse the info from the console page).
The most you really need is:
ID
Name
and maybe
Height
Width
Pallete
This could then be used to populate available monitors. Where I see you might run into issues is what to use to retrive the info from the remote server. I know of two options and hopefully some one might know a better way. The first option would be to use the mysql client apps this would be probably the easiest to configure for end users but requires installing the mysql client with your app (you could make this switchable as well so that you can have a flat file so if someone wants to configure manualy they can or have the lient populate the file).
The other way to to configure ODBC on both machines.
Or if there is some way to integrate just some basic SQL functionality with the softwhere you are using to develop on (sorry I don't know much about it) this would be the best IMHO.
These would be something I would try to achive though since if your have two or more servers and more than just a few client apps installed and you change you monitors... this could end up being a job in itself just to configure that change (more so in the case that you have several or more client apps of course).
If there is something I can do to help please let me know as I have the time at the moment. The only thing going here is I have to consolidate a bunch of things down to one server (as a Lightening hit took out one of my servers powers supplies so while it's still working minus the redundant supply I'm moveing it over to another machine till I can afford a replacement

Regards,
Cordel
- zoneminder
- Site Admin
- Posts: 5215
- Joined: Wed Jul 09, 2003 2:07 pm
- Location: Bristol, UK
- Contact:
I agree that you can't really assume a range for the ids. However in 1.21.4 there is a monitor sequence number which should always run consecutively from 1 to n and in the order in which you want to view the monitors. Although currently you can't use the sequence number to view a monitor, as it's not a parameter that zms understands, it's something that wouldn't be too hard to add.
Phil
Phil
-
- Posts: 5111
- Joined: Wed Jun 08, 2005 8:07 pm
- Location: Midlands UK
cordel thanks.
I had already assumed that i needed to store the monitor numbers as i often have funny start numbers or out of sequence numbers, plus it allows you to have mon 7 at the start for example. So at the moment im storing 36 int values for monitor numbers.
My personal use for this app is 2 fold, 1 for normal users (have had upto 15 running of 1 server with no ill effects) to view their own cams 2, other people and myself to view multiple sites simultainously from remote sites
What i want to do in the mean time is get an interface im happy with, looks fancy enough to impress end users (as zm itself amazes me, but end users like fake gloss) and be easy to use, flexible and stable.
Once i got the view only app sorted im gonna start another that can do playback, to start with i think ill limit it to one server at a time, maybe make seperate apps for multiple servers etc etc.
The way i plan to get the setup and images is as you say and shouldnt be to hard to do, i just got to get my vs.net to play ball with mysql.
On the settings front it can query each time loaded the monitor config, Image sizes dont matter as i pull that from info from the jpg (at the mo)
On the playback front i have 2 ideas
1 to query the database and request individual frame via zms (easist i think but not very fast)
2 to query the database export or something the required events and caxhe them locally.
option 2 makes a big app, I wouldnt want to delete this info on exit but the app couldnt keep it indefinetly as i wouldnt have a 'purge when full' on the machine. Id then be getting into auto deleting of events when directory size above etc etc.
Would also entail a lot of work, which i do mind doing but i dont want to spend tonnes of time on something that im not sure im skilled enough to finish lol.
I really want to make it playback but i feel the way it works at the mo is a bit of a bodge as it just grabs seq jpgs, Once i get my mpeg streaming version working (i need to leave messing with my viewer and install 1.21.4 on my test box) id like to be able to do stills, mjpeg and mpeg cos it would work better of low bandwidth and i could make it work better with zm than media player does.
Do you know or anyone know as i havnt looked yet can i pass sql requests via .net without the odbc driver?
Phil
A couple of things,
1 this new sequential stream i was planning as adding as a seperate view, and i assume that zm could workout allowed views etc and number according from the login in the url.
2 I plan at somepoint to use this streaming cycle to display all cams on a multiplexed basis, ie detect when the stream changes and update the relevant boxes, but im not sure if this wuld serve any use as the update delays maybe too long.
3 when i get roulnd to making a working windows playback client i want to be able to enter a time and go to the nearest point and play from there, pause rewind etc. The only way i can currently think to do this is to query the db and then request the req image via zms, my problems starts when i run out of event. Would it be much work for you to change zms to accept dates and times in the url, then this query could be carried on the server and i assume would be much faster. I also want to be able to playback multiple syncronised monitors.
As i always use mocord this would work fine but it would cause issues for modect or when there is no image for a requested time. Now caould zms respond or zmq (zmquestion) be made and then asked if a particular reord exists eetc etc.
Just thinking aloud really and it appears most people use the web interface for everything, but i prefer a seperate app (my pref only def not a critism) as its easier to control, plus i know nothing about php, html etc etc, in fact dont know much vb it would appear after taking this on lol, thank god for google.
Thanks for your input.
I had already assumed that i needed to store the monitor numbers as i often have funny start numbers or out of sequence numbers, plus it allows you to have mon 7 at the start for example. So at the moment im storing 36 int values for monitor numbers.
My personal use for this app is 2 fold, 1 for normal users (have had upto 15 running of 1 server with no ill effects) to view their own cams 2, other people and myself to view multiple sites simultainously from remote sites
What i want to do in the mean time is get an interface im happy with, looks fancy enough to impress end users (as zm itself amazes me, but end users like fake gloss) and be easy to use, flexible and stable.
Once i got the view only app sorted im gonna start another that can do playback, to start with i think ill limit it to one server at a time, maybe make seperate apps for multiple servers etc etc.
The way i plan to get the setup and images is as you say and shouldnt be to hard to do, i just got to get my vs.net to play ball with mysql.
On the settings front it can query each time loaded the monitor config, Image sizes dont matter as i pull that from info from the jpg (at the mo)
On the playback front i have 2 ideas
1 to query the database and request individual frame via zms (easist i think but not very fast)
2 to query the database export or something the required events and caxhe them locally.
option 2 makes a big app, I wouldnt want to delete this info on exit but the app couldnt keep it indefinetly as i wouldnt have a 'purge when full' on the machine. Id then be getting into auto deleting of events when directory size above etc etc.
Would also entail a lot of work, which i do mind doing but i dont want to spend tonnes of time on something that im not sure im skilled enough to finish lol.
I really want to make it playback but i feel the way it works at the mo is a bit of a bodge as it just grabs seq jpgs, Once i get my mpeg streaming version working (i need to leave messing with my viewer and install 1.21.4 on my test box) id like to be able to do stills, mjpeg and mpeg cos it would work better of low bandwidth and i could make it work better with zm than media player does.
Do you know or anyone know as i havnt looked yet can i pass sql requests via .net without the odbc driver?
Phil
A couple of things,
1 this new sequential stream i was planning as adding as a seperate view, and i assume that zm could workout allowed views etc and number according from the login in the url.
2 I plan at somepoint to use this streaming cycle to display all cams on a multiplexed basis, ie detect when the stream changes and update the relevant boxes, but im not sure if this wuld serve any use as the update delays maybe too long.
3 when i get roulnd to making a working windows playback client i want to be able to enter a time and go to the nearest point and play from there, pause rewind etc. The only way i can currently think to do this is to query the db and then request the req image via zms, my problems starts when i run out of event. Would it be much work for you to change zms to accept dates and times in the url, then this query could be carried on the server and i assume would be much faster. I also want to be able to playback multiple syncronised monitors.
As i always use mocord this would work fine but it would cause issues for modect or when there is no image for a requested time. Now caould zms respond or zmq (zmquestion) be made and then asked if a particular reord exists eetc etc.
Just thinking aloud really and it appears most people use the web interface for everything, but i prefer a seperate app (my pref only def not a critism) as its easier to control, plus i know nothing about php, html etc etc, in fact dont know much vb it would appear after taking this on lol, thank god for google.
Thanks for your input.
James Wilson
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk
Disclaimer: The above is pure theory and may work on a good day with the wind behind it. etc etc.
http://www.securitywarehouse.co.uk