mirror of
https://github.com/ZoneMinder/zoneminder.git
synced 2026-07-25 20:36:42 -04:00
* Add a control module to support the current Amcrest HTTP API This patch adds ZoneMinder::Control::Amcrest_HTTP This module is adapted and improved from one available on the ZoneMinder forums.[1] It appears that a number of individuals have contributed to it. This is an attempt to correct some of its interactions with ZM::Control and friends as well as enhance and extend supported control features for Amcrest cameras. This work is based on Amcrest HTTP Protocol API Specifications Rev. 2.12 2017-03-15 [1]https://forums.zoneminder.com/download/file.php?id=1878 * Fixing zoom methods * Misc. cleanup of comments, etc. * Fixing up POD, etc. * Converting line endings to Unix * Fixing up preset methods The current Amcrest HTTP API does not support a Home command per se. So this method is set up to send the camera to the first preset position. Of course, this presupposes that the user will setup a preset #1 otherwise the command will fail on a bad preset error. If a future version of the API supports a true Home command, we'll adjust at that point. For now this seems to be a useful workaround. * Removing duplicate home method * Adding moveAbs method I'm putting this in, but absolute camera movement does not seem to be well supported in the classic skin ATM. Reading www/skins/classic/include/control_functions.php seems to indicate a faulty implementation, unless I'm reading it wrong. I see nowhere where the user is able to specify the absolute location to move to. Rather, the call is passed back movement in increments of 1 unit. At least with the Amcrest/Duhua API this would result in the camera moving to the 1* or 0* etc. position. moveAbsUp, Down, Left, Right, etc. Doesn't make sense given the definition of Absolute movement. * Adding a note about the moveMap method This method does not appear to be implemented in the classic skin, but we'll leave it here for future implementation. Caveat: It may or may not work as-is. * Fixing up zoomConTele/Wide methods * Adding a vanilla control type for the Amcrest HTTP API Please note that this control type matches (mostly) the currently available control options in Amcrest_HTTP.pm. It does not match all (or possibly any) of the control options available on a specific Amcrest camera. The user may need to create their own control type specific to the camera model they are using. * Removing misplaced comment Thanks to connortechnology for pointing this out!
ZoneMinder version 0.01 ======================= The README is used to introduce the module and provide instructions on how to install the module, any machine dependencies it may have (for example C compilers and installed libraries) and any other information that should be provided before the module is installed. A README file is required for CPAN modules since CPAN extracts the README file from a module distribution so that people browsing the archive can use it get an idea of the modules uses. It is usually a good idea to provide version information here so that people can decide whether fixes for the module are worth downloading. INSTALLATION To install this module type the following: perl Makefile.PL make make test make install DEPENDENCIES This module requires these other modules and libraries: blah blah blah COPYRIGHT AND LICENCE Put the correct copyright and licence information here. Copyright (C) 2005 by Philip Coombes This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.3 or, at your option, any later version of Perl 5 you may have available.