Merge remote-tracking branch 'origin/master' into video_remote
This commit is contained in:
commit
e5a36c02bd
|
@ -352,7 +352,7 @@
|
|||
- Fix window sizes and input field sizes for flat skin [\#381](https://github.com/ZoneMinder/ZoneMinder/pull/381) ([m-bene](https://github.com/m-bene))
|
||||
- Fix reload loop on switching skins [\#380](https://github.com/ZoneMinder/ZoneMinder/pull/380) ([m-bene](https://github.com/m-bene))
|
||||
- Ability to skip frames in motion detection. [\#377](https://github.com/ZoneMinder/ZoneMinder/pull/377) ([Sune1337](https://github.com/Sune1337))
|
||||
- same dvr controlls in event as in monitor [\#375](https://github.com/ZoneMinder/ZoneMinder/pull/375) ([m-bene](https://github.com/m-bene))
|
||||
- same dvr controls in event as in monitor [\#375](https://github.com/ZoneMinder/ZoneMinder/pull/375) ([m-bene](https://github.com/m-bene))
|
||||
- do not quote column names in parse filter [\#374](https://github.com/ZoneMinder/ZoneMinder/pull/374) ([m-bene](https://github.com/m-bene))
|
||||
- Fix 'Undefined index: filter' php warnings for filter view when [\#373](https://github.com/ZoneMinder/ZoneMinder/pull/373) ([m-bene](https://github.com/m-bene))
|
||||
- Reduce window size to exclude task bar area [\#371](https://github.com/ZoneMinder/ZoneMinder/pull/371) ([m-bene](https://github.com/m-bene))
|
||||
|
|
|
@ -133,9 +133,9 @@ set(ZM_NO_CURL "OFF" CACHE BOOL
|
|||
"Set to ON to skip cURL checks and force building ZM without cURL. default: OFF")
|
||||
set(ZM_NO_X10 "OFF" CACHE BOOL
|
||||
"Set to ON to build ZoneMinder without X10 support. default: OFF")
|
||||
set(ZM_ONVIF "OFF" CACHE BOOL
|
||||
set(ZM_ONVIF "ON" CACHE BOOL
|
||||
"Set to ON to enable basic ONVIF support. This is EXPERIMENTAL and may not
|
||||
work with all cameras claiming to be ONVIF compliant. default: OFF")
|
||||
work with all cameras claiming to be ONVIF compliant. default: ON")
|
||||
set(ZM_PERL_MM_PARMS INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 CACHE STRING
|
||||
"By default, ZoneMinder's Perl modules are installed into the Vendor folders,
|
||||
as defined by your installation of Perl. You can change that here. Consult Perl's
|
||||
|
@ -182,6 +182,17 @@ elseif(ZM_TARGET_DISTRO STREQUAL "OS13")
|
|||
set(ZM_WEB_GROUP "www")
|
||||
set(ZM_WEBDIR "/srv/www/htdocs/zoneminder")
|
||||
set(ZM_CGIDIR "/srv/www/cgi-bin")
|
||||
elseif(ZM_TARGET_DISTRO STREQUAL "freeBSD")
|
||||
set(ZM_RUNDIR "/var/run/zm")
|
||||
set(ZM_SOCKDIR "/var/run/zm")
|
||||
set(ZM_TMPDIR "/var/tmp/zm")
|
||||
set(ZM_CONTENTDIR "/usr/local/var/lib/zoneminder")
|
||||
set(ZM_WEB_USER "www")
|
||||
set(ZM_WEB_GROUP "www")
|
||||
set(ZM_CONFIG_DIR "/usr/local/etc/zm")
|
||||
set(ZM_WEBDIR "/usr/local/share/zoneminder/www")
|
||||
set(ZM_CGIDIR "/usr/local/libexec/zoneminder/cgi-bin")
|
||||
set(ZM_PERL_MM_PARMS "INSTALLDIRS=site")
|
||||
endif((ZM_TARGET_DISTRO STREQUAL "f22") OR (ZM_TARGET_DISTRO STREQUAL "f23"))
|
||||
|
||||
# Required for certain checks to work
|
||||
|
@ -205,7 +216,7 @@ if (HAVE_EXECINFO_H)
|
|||
if (NOT HAVE_DECL_BACKTRACE)
|
||||
find_library (EXECINFO_LIBRARY NAMES execinfo)
|
||||
if (EXECINFO_LIBRARY)
|
||||
list(APPEND ZM_BIN_LIBS "-l${EXECINFO_LIBRARY}")
|
||||
list(APPEND ZM_BIN_LIBS "-lexecinfo")
|
||||
endif (EXECINFO_LIBRARY)
|
||||
endif (NOT HAVE_DECL_BACKTRACE)
|
||||
check_function_exists("backtrace_symbols" HAVE_DECL_BACKTRACE_SYMBOLS)
|
||||
|
|
26
Dockerfile
26
Dockerfile
|
@ -1,6 +1,6 @@
|
|||
# ZoneMinder
|
||||
|
||||
FROM ubuntu:precise
|
||||
FROM ubuntu:trusty
|
||||
MAINTAINER Kyle Johnson <kjohnson@gnulnx.net>
|
||||
|
||||
# Let the container know that there is no tty
|
||||
|
@ -10,10 +10,10 @@ ENV DEBIAN_FRONTEND noninteractive
|
|||
RUN apt-get update && apt-get install -y \
|
||||
libpolkit-gobject-1-dev build-essential libmysqlclient-dev libssl-dev libbz2-dev libpcre3-dev \
|
||||
libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libpcre3 \
|
||||
libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm automake autoconf libjpeg-turbo8-dev \
|
||||
libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm cmake libjpeg-turbo8-dev \
|
||||
libjpeg-turbo8 libtheora-dev libvorbis-dev libvpx-dev libx264-dev libmp4v2-dev libav-tools mysql-client \
|
||||
apache2 php5 php5-mysql apache2-mpm-prefork libapache2-mod-php5 php5-cli openssh-server \
|
||||
mysql-server libvlc-dev libvlc5 libvlccore-dev libvlccore5 vlc-data libcurl4-openssl-dev \
|
||||
mysql-server libvlc-dev libvlc5 libvlccore-dev libvlccore7 vlc-data libcurl4-openssl-dev \
|
||||
libavformat-dev libswscale-dev libavutil-dev libavcodec-dev libavfilter-dev \
|
||||
libavresample-dev libavdevice-dev libpostproc-dev libv4l-dev libtool libnetpbm10-dev \
|
||||
libmime-lite-perl dh-autoreconf dpatch
|
||||
|
@ -25,10 +25,11 @@ ADD . /ZoneMinder
|
|||
WORKDIR /ZoneMinder
|
||||
|
||||
# Setup the ZoneMinder build environment
|
||||
RUN aclocal && autoheader && automake --force-missing --add-missing && autoconf
|
||||
#RUN aclocal && autoheader && automake --force-missing --add-missing && autoconf
|
||||
|
||||
# Configure ZoneMinder
|
||||
RUN ./configure --with-libarch=lib/$DEB_HOST_GNU_TYPE --disable-debug --host=$DEB_HOST_GNU_TYPE --build=$DEB_BUILD_GNU_TYPE --with-mysql=/usr --with-webdir=/var/www/zm --with-ffmpeg=/usr --with-cgidir=/usr/lib/cgi-bin --with-webuser=www-data --with-webgroup=www-data --enable-mmap=yes ZM_SSL_LIB=openssl ZM_DB_USER=zm ZM_DB_PASS=zm
|
||||
#RUN ./configure --with-libarch=lib/$DEB_HOST_GNU_TYPE --disable-debug --host=$DEB_HOST_GNU_TYPE --build=$DEB_BUILD_GNU_TYPE --with-mysql=/usr --with-webdir=/var/www/zm --with-ffmpeg=/usr --with-cgidir=/usr/lib/cgi-bin --with-webuser=www-data --with-webgroup=www-data --enable-mmap=yes --enable-onvif ZM_SSL_LIB=openssl ZM_DB_USER=zm ZM_DB_PASS=zm
|
||||
RUN cmake .
|
||||
|
||||
# Build ZoneMinder
|
||||
RUN make
|
||||
|
@ -36,6 +37,9 @@ RUN make
|
|||
# Install ZoneMinder
|
||||
RUN make install
|
||||
|
||||
# ensure writable folders
|
||||
RUN ./zmlinkcontent.sh
|
||||
|
||||
# Adding the start script
|
||||
ADD utils/docker/start.sh /tmp/start.sh
|
||||
|
||||
|
@ -43,15 +47,23 @@ ADD utils/docker/start.sh /tmp/start.sh
|
|||
# TODO - Files ADD'ed have 755 already...why do we need this?
|
||||
RUN chmod 755 /tmp/start.sh
|
||||
|
||||
# Creating SSH privledge escalation dir
|
||||
# give files in /usr/local/share/zoneminder/
|
||||
RUN chown -R www-data:www-data /usr/local/share/zoneminder/
|
||||
|
||||
# Creating SSH privilege escalation dir
|
||||
RUN mkdir /var/run/sshd
|
||||
|
||||
# Adding apache virtual hosts file
|
||||
ADD utils/docker/apache-vhost /etc/apache2/sites-enabled/000-default
|
||||
ADD utils/docker/apache-vhost /etc/apache2/sites-available/000-default.conf
|
||||
ADD utils/docker/phpdate.ini /etc/php5/apache2/conf.d/25-phpdate.ini
|
||||
|
||||
# Set the root passwd
|
||||
RUN echo 'root:root' | chpasswd
|
||||
|
||||
# Add a user we can actually login with
|
||||
RUN useradd -m -s /bin/bash -G sudo zoneminder
|
||||
RUN echo 'zoneminder:zoneminder' | chpasswd
|
||||
|
||||
# Expose ssh and http ports
|
||||
EXPOSE 80
|
||||
EXPOSE 22
|
||||
|
|
2
INSTALL
2
INSTALL
|
@ -18,7 +18,7 @@ Important differences
|
|||
---------------------
|
||||
* Unlike the autotools way, the cmake way does not require any options. It attempts to detect some things by its own (system directories, libarch, web user and group) and uses defaults for others (installation paths and such).
|
||||
* Unlike the autotools way, which links the binaries to a fixed list of libraries, the cmake way only links to libraries that it found on the system. If a library is not found, but required, a fatal error will be shown during the configuration step.
|
||||
* Unlike the autotools way, the cmake way does not modify the system in any way it shouldnt. It only does what its supposed to do: Install files to your system. Nothing else and nothing leaks out of the DESTDIR environment variable (if used). This means that depending on your configuration, there might be an extra required step after installation: to link WEB_PATH/events and WEB_PATH/images folders to the correct places.
|
||||
* Unlike the autotools way, the cmake way does not modify the system in any way it shouldn't. It only does what its supposed to do: Install files to your system. Nothing else and nothing leaks out of the DESTDIR environment variable (if used). This means that depending on your configuration, there might be an extra required step after installation: to link WEB_PATH/events and WEB_PATH/images folders to the correct places.
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
|
197
README.md
197
README.md
|
@ -54,7 +54,7 @@ When building a package, it is best to do this work in a separate environment, d
|
|||
|
||||
Lastly, if you desire to build a development snapshot from the master branch, it is recommended you first build your package using an official release of ZoneMinder. This will help identify whether any problems you may encounter are caused by the build process or is a new issue in the master branch.
|
||||
|
||||
What follows are instructions for various distros to build ZoneMinder into a package.
|
||||
Please visit our [ReadtheDocs site](https://zoneminder.readthedocs.org/en/stable/installationguide/index.html) for distro specific instructions.
|
||||
|
||||
### Package Maintainers
|
||||
Many of the ZoneMinder configration variable default values are not configurable at build time through autotools or cmake. A new tool called *zmeditconfigdata.sh* has been added to allow package maintainers to manipulate any variable stored in ConfigData.pm without patching the source.
|
||||
|
@ -66,201 +66,6 @@ For example, let's say I have created a new ZoneMinder package that contains the
|
|||
|
||||
Note that zmeditconfigdata.sh is intended to be called, from the root build folder, prior to running cmake or configure.
|
||||
|
||||
#### Ubuntu
|
||||
|
||||
A fresh build based on master branch running Ubuntu 1204 LTS. Will likely work for other versions as well.
|
||||
|
||||
```bash
|
||||
root@host:~# aptitude install -y apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libpcre3 libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm automake autoconf libjpeg8-dev libjpeg8 apache2-mpm-prefork libapache2-mod-php5 php5-cli libphp-serialization-perl libgnutls-dev libjpeg8-dev libavcodec-dev libavformat-dev libswscale-dev libavutil-dev libv4l-dev libtool ffmpeg libnetpbm10-dev libavdevice-dev libmime-lite-perl dh-autoreconf dpatch;
|
||||
|
||||
root@host:~# git clone https://github.com/ZoneMinder/ZoneMinder.git zoneminder;
|
||||
root@host:~# cd zoneminder;
|
||||
root@host:~# ln -s distros/ubuntu1204 debian;
|
||||
root@host:~# dpkg-checkbuilddeps;
|
||||
root@host:~# dpkg-buildpackage;
|
||||
```
|
||||
|
||||
One level above you'll now find a deb package matching the architecture of the build host:
|
||||
|
||||
```bash
|
||||
root@host:~# ls -1 ~/zoneminder*;
|
||||
/root/zoneminder_1.26.4-1_amd64.changes
|
||||
/root/zoneminder_1.26.4-1_amd64.deb
|
||||
/root/zoneminder_1.26.4-1.dsc
|
||||
/root/zoneminder_1.26.4-1.tar.gz
|
||||
```
|
||||
|
||||
The dpkg command itself does not resolve dependencies. That's what high-level interfaces like aptitude and apt-get are normally for. Unfortunately, unlike RPM, there's no easy way to install a separate deb package not contained with any repository.
|
||||
|
||||
To overcome this "limitation" we'll use dpkg only to install the zoneminder package and apt-get to fetch all needed dependencies afterwards. Running dpkg-reconfigure in the end will ensure that the setup scripts e.g. for database provisioning were executed.
|
||||
|
||||
```bash
|
||||
root@host:~# dpkg -i /root/zoneminder_1.26.4-1_amd64.deb; apt-get install -f;
|
||||
root@host:~# dpkg-reconfigure zoneminder;
|
||||
```
|
||||
Alternatively you may also use gdebi to automatically resolve dependencies during installation:
|
||||
|
||||
```bash
|
||||
root@host:~# aptitude install -y gdebi;
|
||||
root@host:~# gdebi /root/zoneminder_1.26.4-1_amd64.deb;
|
||||
```
|
||||
```bash
|
||||
sudo apt-get install apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev \
|
||||
libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libpcre3 \
|
||||
libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm automake autoconf libjpeg-turbo8-dev libjpeg-turbo8 \
|
||||
apache2-mpm-prefork libapache2-mod-php5 php5-cli
|
||||
```
|
||||
|
||||
#### Debian
|
||||
|
||||
A fresh build based on master branch running Debian 7 (wheezy):
|
||||
|
||||
```bash
|
||||
root@host:~# aptitude install -y apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libpcre3 libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm automake autoconf libjpeg8-dev libjpeg8 apache2-mpm-prefork libapache2-mod-php5 php5-cli libphp-serialization-perl libgnutls-dev libjpeg8-dev libavcodec-dev libavformat-dev libswscale-dev libavutil-dev libv4l-dev libtool ffmpeg libnetpbm10-dev libavdevice-dev libmime-lite-perl dh-autoreconf dpatch;
|
||||
|
||||
root@host:~# git clone https://github.com/ZoneMinder/ZoneMinder.git zoneminder;
|
||||
root@host:~# cd zoneminder;
|
||||
root@host:~# ln -s distros/debian;
|
||||
root@host:~# dpkg-checkbuilddeps;
|
||||
root@host:~# dpkg-buildpackage;
|
||||
```
|
||||
|
||||
One level above you'll now find a deb package matching the architecture of the build host:
|
||||
|
||||
```bash
|
||||
root@host:~# ls -1 ~/zoneminder*;
|
||||
/root/zoneminder_1.26.4-1_amd64.changes
|
||||
/root/zoneminder_1.26.4-1_amd64.deb
|
||||
/root/zoneminder_1.26.4-1.dsc
|
||||
/root/zoneminder_1.26.4-1.tar.gz
|
||||
```
|
||||
|
||||
The dpkg command itself does not resolve dependencies. That's what high-level interfaces like aptitude and apt-get are normally for. Unfortunately, unlike RPM, there's no easy way to install a separate deb package not contained with any repository.
|
||||
|
||||
To overcome this "limitation" we'll use dpkg only to install the zoneminder package and apt-get to fetch all needed dependencies afterwards. Running dpkg-reconfigure in the end will ensure that the setup scripts e.g. for database provisioning were executed.
|
||||
|
||||
```bash
|
||||
root@host:~# dpkg -i /root/zoneminder_1.26.4-1_amd64.deb; apt-get install -f;
|
||||
root@host:~# dpkg-reconfigure zoneminder;
|
||||
```
|
||||
Alternatively you may also use gdebi to automatically resolve dependencies during installation:
|
||||
|
||||
```bash
|
||||
root@host:~# aptitude install -y gdebi;
|
||||
root@host:~# gdebi /root/zoneminder_1.26.4-1_amd64.deb;
|
||||
```
|
||||
|
||||
#### Fedora / CentOS / RHEL
|
||||
|
||||
##### Background
|
||||
The following method documents how to build ZoneMinder into an RPM package, compatible with Fedora, Redhat, CentOS, and other compatible clones. This is exactly how the RPMS in zmrepo are built.
|
||||
|
||||
The method documented below was chosen because:
|
||||
- All of ZoneMinder's dependencies are downloaded and installed automatically
|
||||
- Cross platform capable. The build host does not have to be the same distro or release version as the target.
|
||||
- Once your build environment is set up, few steps are required to run the build again in the future.
|
||||
- Troubleshooting becomes easier if we are all building ZoneMinder the same way.
|
||||
|
||||
The build instructions below make use of a custom script called "buildzm.sh". Advanced users are encouraged to view the contents of this script. Notice that the script doesn't really do a whole lot. The goal of the script is to simply make the process a little easier for the first time user. Once you become familar with the build process, you can issue the mock commands found in the buildzm.sh script yourself if you so desire.
|
||||
|
||||
***IMPORTANT***
|
||||
Certain commands in these instructions require root privileges while other commands do not. Pay close attention to this. If the instructions below state to issue a command without a “sudo” prefix, then you should *not* be root while issuing the command. Getting this incorrect will result in a failed build.
|
||||
|
||||
##### Set Up Your Environment
|
||||
Before you begin, set up an rpmbuild environment by following [this guide](http://wiki.centos.org/HowTos/SetupRpmBuildEnvironment) by the CentOS developers.
|
||||
|
||||
Next, navigate to [Zmrepo](http://zmrepo.zoneminder.com/), and follow the instructions to enable zmrepo on your system.
|
||||
|
||||
With zmrepo enabled, issue the following command:
|
||||
````bash
|
||||
sudo yum install zmrepo-mock-configs mock
|
||||
```
|
||||
|
||||
Add your user account to the group mock:
|
||||
```bash
|
||||
sudo gpasswd -a {your account name} mock
|
||||
```
|
||||
|
||||
Your build environment is now set up.
|
||||
|
||||
##### Build from SRPM
|
||||
To continue, you need a ZoneMinder SRPM. For starters, let's use one of the SRPMS from zmrepo. Go browse the [Zmrepo](http://zmrepo.zoneminder.com/) site and choose an appropriate SRPM and place it into the ~/rpmbuild/SRPMS folder.
|
||||
|
||||
For CentOS 7, I have chosen the following SRPM:
|
||||
```bash
|
||||
wget -P ~/rpmbuild/SRPMS http://zmrepo.zoneminder.com/el/7/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm
|
||||
```
|
||||
|
||||
Now comes the fun part. To build ZoneMinder, issue the following command:
|
||||
```bash
|
||||
buildzm.sh zmrepo-el7-x86_64 ~/rpmbuild/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm
|
||||
```
|
||||
|
||||
Want to build ZoneMinder for Fedora, instead of CentOS, from the same host? Once you download the Fedora SRPM, issue the following:
|
||||
```bash
|
||||
buildzm.sh zmrepo-f21-x86_64 ~/rpmbuild/SRPMS/zoneminder-1.28.1-1.fc21.src.rpm
|
||||
```
|
||||
Notice that the buildzm.sh tool requires the following parameters:
|
||||
```bash
|
||||
buildzm.sh MOCKCONFIG ZONEMINDER_SRPM
|
||||
```
|
||||
The list of available Mock config files are available here:
|
||||
```bash
|
||||
ls /etc/mock/zmrepo*.cfg
|
||||
```
|
||||
|
||||
You choose the config file based on the desired distro (e.g. el6, el7, f20, f21) and basearch (e.g. x86, x86_64, arhmhfp). Notice that, when specifying the Mock config as a commandline parameter, you should leave off the ".cfg" filename extension.
|
||||
|
||||
##### Installation
|
||||
Once the build completes, you will be presented with a folder containing the RPM's that were built. Copy the newly built ZoneMinder RPM to the desired system, enable zmrepo per the instruction on the [Zmrepo](http://zmrepo.zoneminder.com/) website, and then install the rpm by issuing the appropriate yum install command. Finish the installation by following the zoneminder setup instructions in the distro specific readme file, named README.{distroname}, which will be installed into the /usr/share/doc/zoneminder* folder.
|
||||
|
||||
Finally, you may want to consider editing the zmrepo repo file under /etc/yum.repos.d and placing an “exclude=zoneminder*” line into the config file. This will prevent your system from overwriting your manually built RPM with the ZoneMinder RPM found in the repo.
|
||||
|
||||
##### How to Modify the Source Prior to Build
|
||||
** UNFINISHED **
|
||||
|
||||
Before attempting this part of the instructions, make sure and follow the previous instructions for building one of the unmodified SRPMS from zmrepo. Knowing this part works will assist in troubleshooting should something go wrong.
|
||||
|
||||
These instructions may vary depending on what exactly you want to do. The following example assumes you want to build a development snapshot from the master branch.
|
||||
|
||||
From the previous instructions, we downloaded a CentOS 7 ZoneMinder SRPM and placed it into ~/rpmbuild/SRPMS. For this example, install it onto your system:
|
||||
```bash
|
||||
rpm -Uvh ~/rpmbuild/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm
|
||||
```
|
||||
|
||||
IMPORTANT: This operation must be done with your normal user account. Do *not* perform this command as root.
|
||||
|
||||
Make sure you have git installed:
|
||||
```bash
|
||||
sudo yum install git
|
||||
```
|
||||
|
||||
Now clone the ZoneMinder git repository:
|
||||
```bash
|
||||
git clone https://github.com/ZoneMinder/ZoneMinder
|
||||
```
|
||||
This will create a sub-folder called ZoneMinder, which will contain the latest developement.
|
||||
|
||||
We want to turn this into a tarball, but first we need to figure out what to name it. Look here:
|
||||
```bash
|
||||
ls ~/rpmbuild/SOURCES
|
||||
```
|
||||
The tarball from the previsouly installed SRPM should be there. This is the name we will use. For this example, the name is ZoneMinder-1.28.1.tar.gz. From one folder above the local ZoneMinder git repository, execute the following:
|
||||
```bash
|
||||
mv ZoneMinder ZoneMinder-1.28.1
|
||||
tar -cvzf ~/rpmbuild/SOURCES/ZoneMinder-1.28.1.tar.gz ZoneMinder-1.28.1/*
|
||||
```
|
||||
The trailing "/*" leaves off the hidden dot "." file and folders from the git repo, which is what we want.
|
||||
Note that we are overwriting the original tarball. If you wish to keep the original tarball then create a copy prior to creating the new tarball.
|
||||
|
||||
Now build a new src.rpm:
|
||||
```bash
|
||||
rpmbuild -bs --nodeps ~/rpmbuild/SPECS/zoneminder.el7.spec
|
||||
```
|
||||
This step will overwrite the SRPM you originally downloaded, so you may want to back it up prior to completing this step. Note that the name of the specfile will vary slightly depending on what distro you are building for.
|
||||
|
||||
You should now have a a new SRPM under ~/rpmbuild/SRPMS. In our example, the SRPM is called zoneminder-1.28.1-2.el7.centos.src.rpm. Now follow the previous instructions that describe how to use the buildzm script, using ~/rpmbuild/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm as the path to your SRPM.
|
||||
|
||||
#### Docker
|
||||
|
||||
Docker is a system to run applications inside isolated containers. ZoneMinder, and the ZM webserver, will run using the
|
||||
|
|
|
@ -500,7 +500,7 @@ fi
|
|||
AC_SUBST(PERL_MM_PARMS)
|
||||
AC_SUBST(EXTRA_PERL_LIB)
|
||||
|
||||
AC_CONFIG_FILES([Makefile zm.conf zmconfgen.pl db/Makefile db/zm_create.sql misc/Makefile misc/apache.conf misc/logrotate.conf misc/syslog.conf misc/com.zoneminder.systemctl.policy misc/com.zoneminder.systemctl.rules onvif/Makefile onvif/scripts/Makefile scripts/Makefile scripts/zm scripts/zmaudit.pl scripts/zmcontrol.pl scripts/zmdc.pl scripts/zmfilter.pl scripts/zmpkg.pl scripts/zmtrack.pl scripts/zmcamtool.pl scripts/zmsystemctl.pl scripts/zmtrigger.pl scripts/zmupdate.pl scripts/zmvideo.pl scripts/zmwatch.pl scripts/zmx10.pl scripts/zmdbbackup scripts/zmdbrestore scripts/zmeventdump scripts/zmlogrotate.conf scripts/ZoneMinder/lib/ZoneMinder/Base.pm scripts/ZoneMinder/lib/ZoneMinder/Config.pm scripts/ZoneMinder/lib/ZoneMinder/Memory.pm scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm src/Makefile src/zm_config.h web/Makefile web/ajax/Makefile web/css/Makefile web/graphics/Makefile web/includes/Makefile web/includes/config.php web/js/Makefile web/lang/Makefile web/skins/Makefile web/skins/classic/Makefile web/skins/classic/ajax/Makefile web/skins/classic/css/Makefile web/skins/classic/css/classic/Makefile web/skins/classic/css/classic/views/Makefile web/skins/classic/css/dark/Makefile web/skins/classic/css/dark/views/Makefile web/skins/classic/css/flat/Makefile web/skins/classic/css/flat/views/Makefile web/skins/classic/graphics/Makefile web/skins/classic/includes/Makefile web/skins/classic/js/Makefile web/skins/classic/lang/Makefile web/skins/classic/views/Makefile web/skins/classic/views/js/Makefile web/skins/mobile/Makefile web/skins/mobile/ajax/Makefile web/skins/mobile/css/Makefile web/skins/mobile/graphics/Makefile web/skins/mobile/includes/Makefile web/skins/mobile/lang/Makefile web/skins/mobile/views/Makefile web/skins/mobile/views/css/Makefile web/tools/Makefile web/tools/mootools/Makefile web/views/Makefile web/skins/xml/Makefile web/skins/xml/views/Makefile web/skins/xml/includes/Makefile])
|
||||
AC_CONFIG_FILES([Makefile zm.conf zmconfgen.pl db/Makefile db/zm_create.sql misc/Makefile misc/apache.conf misc/logrotate.conf misc/syslog.conf misc/com.zoneminder.systemctl.policy misc/com.zoneminder.systemctl.rules onvif/Makefile onvif/scripts/Makefile scripts/Makefile scripts/zm scripts/zmaudit.pl scripts/zmcontrol.pl scripts/zmdc.pl scripts/zmfilter.pl scripts/zmpkg.pl scripts/zmtelemetry.pl scripts/zmtrack.pl scripts/zmcamtool.pl scripts/zmsystemctl.pl scripts/zmtrigger.pl scripts/zmupdate.pl scripts/zmvideo.pl scripts/zmwatch.pl scripts/zmx10.pl scripts/zmdbbackup scripts/zmdbrestore scripts/zmeventdump scripts/zmlogrotate.conf scripts/ZoneMinder/lib/ZoneMinder/Base.pm scripts/ZoneMinder/lib/ZoneMinder/Config.pm scripts/ZoneMinder/lib/ZoneMinder/Memory.pm scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm src/Makefile src/zm_config.h web/Makefile web/ajax/Makefile web/css/Makefile web/graphics/Makefile web/includes/Makefile web/includes/config.php web/js/Makefile web/lang/Makefile web/skins/Makefile web/skins/classic/Makefile web/skins/classic/ajax/Makefile web/skins/classic/css/Makefile web/skins/classic/css/classic/Makefile web/skins/classic/css/classic/views/Makefile web/skins/classic/css/dark/Makefile web/skins/classic/css/dark/views/Makefile web/skins/classic/css/flat/Makefile web/skins/classic/css/flat/views/Makefile web/skins/classic/graphics/Makefile web/skins/classic/includes/Makefile web/skins/classic/js/Makefile web/skins/classic/lang/Makefile web/skins/classic/views/Makefile web/skins/classic/views/js/Makefile web/skins/mobile/Makefile web/skins/mobile/ajax/Makefile web/skins/mobile/css/Makefile web/skins/mobile/graphics/Makefile web/skins/mobile/includes/Makefile web/skins/mobile/lang/Makefile web/skins/mobile/views/Makefile web/skins/mobile/views/css/Makefile web/tools/Makefile web/tools/mootools/Makefile web/views/Makefile web/skins/xml/Makefile web/skins/xml/views/Makefile web/skins/xml/includes/Makefile])
|
||||
|
||||
# Create the definitions for compilation and defaults for the database
|
||||
AC_CONFIG_COMMANDS([src/zm_config_defines.h],[perl ./zmconfgen.pl])
|
||||
|
|
|
@ -590,8 +590,10 @@ INSERT INTO Controls VALUES (NULL,'ONVIF Camera','Ffmpeg','onvif',0,0,1,1,0,0,0,
|
|||
INSERT INTO `Controls` VALUES (NULL,'Foscam 9831W','Ffmpeg','FI9831W',0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,16,1,1,1,1,0,0,0,1,1,0,360,0,360,1,0,4,0,0,1,0,90,0,90,0,0,0,0,0,0,0);
|
||||
INSERT INTO `Controls` VALUES (NULL,'Foscam FI8918W','Ffmpeg','FI8918W',0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,1,1,1,0,0,0,1,1,0,360,0,360,1,0,4,0,0,1,0,90,0,90,1,0,4,0,0,0,0);
|
||||
INSERT INTO `Controls` VALUES (NULL,'SunEyes SP-P1802SWPTZ','Libvlc','SPP1802SWPTZ',0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,8,0,1,1,0,0,0,0,1,1,0,0,0,0,1,0,64,0,0,1,0,0,0,0,1,0,64,0,0,0,0);
|
||||
|
||||
|
||||
INSERT INTO `Controls` VALUES (NULL,'Wanscam HW0025','Libvlc','WanscamHW0025', 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 350, 0, 0, 1, 0, 10, 0, 0, 1, 0, 0, 0, 0, 1, 0, 10, 0, 0, 0, 0);
|
||||
INSERT INTO `Controls` VALUES (NULL,'IPCC 7210W','Libvlc','IPCC7210W', 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 350, 0, 0, 1, 0, 10, 0, 0, 1, 0, 0, 0, 0, 1, 0, 10, 0, 0, 0, 0);
|
||||
INSERT INTO `Controls` VALUES (NULL,'Vivotek ePTZ','Remote','Vivotek_ePTZ',0,0,1,1,0,0,0,1,0,0,0,0,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,1,0,5,0,0,1,0,0,0,0,1,0,5,0,0,0,0);
|
||||
INSERT INTO `Controls` VALUES (NULL,'Netcat ONVIF','Ffmpeg','Netcat',0,0,1,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,100,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,100,5,5,0,0,0,1,255,1,1,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0);
|
||||
|
||||
--
|
||||
-- Add some monitor preset values
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
--
|
||||
-- This updates a 1.28.106 database to 1.28.107
|
||||
-- This updates a 1.28.108 database to 1.28.109
|
||||
--
|
||||
|
||||
--
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
--
|
||||
-- This updates a 1.28.106 database to 1.28.107
|
||||
-- This updates a 1.28.109 database to 1.28.110
|
||||
--
|
||||
|
||||
--
|
||||
|
|
|
@ -2,12 +2,42 @@ Source: zoneminder
|
|||
Section: net
|
||||
Priority: optional
|
||||
Maintainer: Isaac Connor <iconnor@connortechnology.com>
|
||||
Build-Depends: debhelper (>= 9), autoconf, automake, quilt, libphp-serialization-perl, libgnutls-dev|libgnutls28-dev, libmysqlclient-dev | libmariadbclient-dev, libdbd-mysql-perl, libdate-manip-perl, libwww-perl, libjpeg8-dev|libjpeg9-dev|libjpeg62-turbo-dev, libpcre3-dev, libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev, libv4l-dev (>= 0.8.3), libbz2-dev, libtool, libsys-mmap-perl, ffmpeg | libav-tools, libnetpbm10-dev, libavdevice-dev, libdevice-serialport-perl, libarchive-zip-perl, libmime-lite-perl, dh-autoreconf, libvlccore-dev, libvlc-dev, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libgcrypt11-dev|libgcrypt20-dev, libpolkit-gobject-1-dev
|
||||
Build-Depends: debhelper (>= 9), autoconf, automake, quilt , libtool, dh-autoreconf
|
||||
,libgnutls-dev|libgnutls28-dev
|
||||
,libmysqlclient-dev | libmariadbclient-dev, libdbd-mysql-perl
|
||||
,libjpeg8-dev|libjpeg9-dev|libjpeg62-turbo-dev
|
||||
,libpcre3-dev
|
||||
,libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev, libavdevice-dev
|
||||
,libv4l-dev (>= 0.8.3), libvlccore-dev, libvlc-dev
|
||||
,libbz2-dev
|
||||
,libsys-mmap-perl
|
||||
,libnetpbm10-dev
|
||||
,libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev
|
||||
,libgcrypt11-dev|libgcrypt20-dev, libpolkit-gobject-1-dev
|
||||
Standards-Version: 3.9.4
|
||||
|
||||
Package: zoneminder
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, apache2, libapache2-mod-php5 | libapache2-mod-fcgid, php5, php5-mysql|php5-mysqlnd, libphp-serialization-perl, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl, mariadb-client|mysql-client, libwww-perl, libarchive-tar-perl, libarchive-zip-perl, libdevice-serialport-perl, libpcre3, ffmpeg | libav-tools, rsyslog | system-log-daemon, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl, netpbm, libavdevice53 | libavdevice55, libjpeg8|libjpeg9|libjpeg62-turbo, zip, libnet-sftp-foreign-perl, libio-pty-perl, libexpect-perl, libvlccore5 | libvlccore7 | libvlccore8, libvlc5, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libpolkit-gobject-1-0, liburi-encode-perl, php5-gd
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
|
||||
, apache2, libapache2-mod-php5 | libapache2-mod-fcgid
|
||||
, php5, php5-mysql|php5-mysqlnd, libphp-serialization-perl
|
||||
, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl
|
||||
, mariadb-client|mysql-client
|
||||
, libwww-perl, libarchive-tar-perl, libarchive-zip-perl
|
||||
, libdevice-serialport-perl, libpcre3
|
||||
, ffmpeg | libav-tools
|
||||
, rsyslog | system-log-daemon
|
||||
, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl
|
||||
, netpbm
|
||||
, libavdevice53 | libavdevice55
|
||||
, libjpeg8|libjpeg9|libjpeg62-turbo
|
||||
, zip
|
||||
, libnet-sftp-foreign-perl, libio-pty-perl, libexpect-perl
|
||||
, libvlccore5 | libvlccore7 | libvlccore8, libvlc5
|
||||
, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev
|
||||
, libpolkit-gobject-1-0, liburi-encode-perl, php5-gd
|
||||
, libdata-dump-perl, libclass-std-fast-perl, libsoap-wsdl-perl, libio-socket-multicast-perl, libdigest-sha-perl
|
||||
, libsys-cpu-perl, libsys-meminfo-perl
|
||||
Recommends: mysql-server|mariadb-server
|
||||
Description: Video camera security and surveillance solution
|
||||
ZoneMinder is intended for use in single or multi-camera video security
|
||||
|
|
|
@ -60,9 +60,11 @@ Depends: libzoneminder-perl (= ${source:Version}),
|
|||
zoneminder-database (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends},
|
||||
${perl:Depends}, libarchive-tar-perl, libarchive-zip-perl, libdate-manip-perl,
|
||||
libdbi-perl, libmodule-load-conditional-perl, libmime-lite-perl,
|
||||
libmime-tools-perl, libnet-sftp-foreign-perl, libphp-serialization-perl,
|
||||
libmime-tools-perl, libnet-sftp-foreign-perl, libphp-serialization-perl
|
||||
debconf, ffmpeg | libav-tools, rsyslog | system-log-daemon, netpbm, zip,
|
||||
policykit-1, apache2
|
||||
, libsys-cpu-perl, libsys-meminfo-perl
|
||||
, libdata-dump-perl, libclass-std-fast-perl, libsoap-wsdl-perl, libio-socket-multicast-perl, libdigest-sha-perl
|
||||
Description: Core binaries and perl scripts for ZoneMinder
|
||||
ZoneMinder is a video camera security and surveillance solution.
|
||||
.
|
||||
|
|
|
@ -2,12 +2,43 @@ Source: zoneminder
|
|||
Section: net
|
||||
Priority: optional
|
||||
Maintainer: Isaac Connor <iconnor@connortechnology.com>
|
||||
Build-Depends: debhelper (>= 9), cmake, libphp-serialization-perl, libgnutls-dev, libmysqlclient-dev | libmariadbclient-dev, libdbd-mysql-perl, libdate-manip-perl, libwww-perl, libjpeg8-dev, libpcre3-dev, libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev, libv4l-dev (>= 0.8.3), libbz2-dev, libsys-mmap-perl, libav-tools, libnetpbm10-dev, libavdevice-dev, libdevice-serialport-perl, libarchive-zip-perl, libmime-lite-perl, libvlccore-dev, libvlc-dev, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libgcrypt11-dev, libpolkit-gobject-1-dev
|
||||
Build-Depends: debhelper (>= 9), cmake
|
||||
, libphp-serialization-perl
|
||||
, libgnutls28-dev | libgnutls-dev
|
||||
, libmysqlclient-dev | libmariadbclient-dev
|
||||
, libjpeg8-dev
|
||||
, libpcre3-dev
|
||||
, libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev
|
||||
, libv4l-dev (>= 0.8.3)
|
||||
, libbz2-dev
|
||||
, libav-tools
|
||||
, libnetpbm10-dev
|
||||
, libavdevice-dev
|
||||
, libvlccore-dev, libvlc-dev
|
||||
, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev
|
||||
, libgcrypt11-dev, libpolkit-gobject-1-dev
|
||||
Standards-Version: 3.9.4
|
||||
|
||||
Package: zoneminder
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, apache2 | httpd, libapache2-mod-php5 | libapache2-mod-fcgid | php5-fpm, php5-mysqlnd | php5-mysql, libphp-serialization-perl, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl, mariadb-client | mysql-client, libwww-perl, libarchive-tar-perl, libarchive-zip-perl, libdevice-serialport-perl, libpcre3, libav-tools, rsyslog | system-log-daemon, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl, netpbm, libavdevice53, libjpeg8, zip, libnet-sftp-foreign-perl, libio-pty-perl, libexpect-perl, libvlccore5 | libvlccore7, libvlc5, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libpolkit-gobject-1-0, php5-gd
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
|
||||
, apache2 | httpd, libapache2-mod-php5 | libapache2-mod-fcgid | php5-fpm
|
||||
, php5-mysqlnd | php5-mysql
|
||||
, mariadb-client | mysql-client
|
||||
, libphp-serialization-perl
|
||||
, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl, libdbd-mysql-perl
|
||||
, libwww-perl, libarchive-tar-perl, libarchive-zip-perl, libdevice-serialport-perl
|
||||
, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl
|
||||
, libnet-sftp-foreign-perl, libio-pty-perl, libexpect-perl
|
||||
, libdata-dump-perl, libclass-std-fast-perl, libsoap-wsdl-perl, libio-socket-multicast-perl, libdigest-sha-perl
|
||||
, libsys-cpu-perl, libsys-meminfo-perl
|
||||
, libpcre3
|
||||
, libav-tools, libavdevice53
|
||||
, rsyslog | system-log-daemon
|
||||
, netpbm , libjpeg8
|
||||
, zip
|
||||
, libvlccore5 | libvlccore7, libvlc5
|
||||
, libpolkit-gobject-1-0, php5-gd
|
||||
Recommends: mysql-server | mariadb-server
|
||||
Description: Video camera security and surveillance solution
|
||||
ZoneMinder is intended for use in single or multi-camera video security
|
||||
|
|
|
@ -10,7 +10,7 @@ configure_file(zoneminder.tmpfiles.in ${CMAKE_CURRENT_SOURCE_DIR}/zoneminder.tmp
|
|||
configure_file(zoneminder.logrotate.in ${CMAKE_CURRENT_SOURCE_DIR}/zoneminder.logrotate @ONLY)
|
||||
|
||||
# Download jscalendar & move files into position
|
||||
file(DOWNLOAD http://downloads.sourceforge.net/jscalendar/jscalendar-1.0.zip ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar-1.0.zip STATUS download_jsc)
|
||||
file(DOWNLOAD http://iweb.dl.sourceforge.net/project/jscalendar/jscalendar/1.0/jscalendar-1.0.zip ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar-1.0.zip STATUS download_jsc)
|
||||
if(download_jsc EQUAL 0)
|
||||
message(STATUS "Jscalander successfully downloaded. Installing...")
|
||||
execute_process(COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar.sh WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ERROR_VARIABLE unzip_jsc)
|
||||
|
@ -39,7 +39,7 @@ install(CODE "execute_process(COMMAND ln -sf ../../../../../../var/lib/zoneminde
|
|||
# Fedora requires cambozola as a separate package so just link to it
|
||||
install(CODE "execute_process(COMMAND ln -sf ../../java/cambozola.jar \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATAROOTDIR}/zoneminder/www/cambozola.jar\")")
|
||||
|
||||
# Install auxillary files required to run zoneminder on Fedora
|
||||
# Install auxiliary files required to run zoneminder on Fedora
|
||||
install(FILES zoneminder.conf DESTINATION /etc/httpd/conf.d PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ)
|
||||
install(FILES zoneminder.logrotate DESTINATION /etc/logrotate.d RENAME zoneminder PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ)
|
||||
install(FILES ../../misc/zoneminder-tmpfiles.conf DESTINATION /etc/tmpfiles.d RENAME zoneminder.conf PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ)
|
||||
|
|
|
@ -5,27 +5,19 @@ What's New
|
|||
"/cgi-bin-zm/zms". This has been to done to avoid this bug:
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=973067
|
||||
|
||||
IMPORTANT: ZoneMinder will not update this value during an upgrade. You must
|
||||
manually update ZM_PATH_ZMS yourself under Options. This does not affect
|
||||
new installs.
|
||||
IMPORTANT: You must manually inspect the value for PATH_ZMS under Options
|
||||
and verify it is set to "/cgi-bin-zm/nph-zms". Failure to do so will result
|
||||
in a broken system. You have been warned.
|
||||
|
||||
2. The ZoneMinder config file, zm.conf, has been moved under /etc/zm.
|
||||
|
||||
3. Due to the active state of the ZoneMinder project, we now recommend granting
|
||||
2. Due to the active state of the ZoneMinder project, we now recommend granting
|
||||
ALL permission to the ZoneMinder mysql account. This change must be done
|
||||
manually before ZoneMinder will run. See the installation steps below.
|
||||
|
||||
4. A new permission group called "Groups" has been added. This allows the
|
||||
system administrator to assign "view", "edit", or "none" permission to
|
||||
normal users, without giving them access to the rest of the ZoneMinder
|
||||
system. During an upgrade, existing accounts will default to a Groups
|
||||
permission of "none".
|
||||
|
||||
5. This package now requires the HTTPS protocol to access the web portal.
|
||||
3. This package uses the HTTPS protocol by default to access the web portal.
|
||||
Requests using HTTP will auto-redirect to HTTPS. See README.https for
|
||||
more information.
|
||||
|
||||
6. This package ships with the new ZoneMinder API enabled.
|
||||
4. This package ships with the new ZoneMinder API enabled.
|
||||
|
||||
New installs
|
||||
============
|
||||
|
@ -86,13 +78,22 @@ New installs
|
|||
SELINUX line from "enforcing" to "disabled". This change will take
|
||||
effect after a reboot.
|
||||
|
||||
6. Install mod_ssl or configure /etc/httpd/conf.d/zoneminder.conf to meet your
|
||||
needs. This package comes preconfigured for HTTPS using the default self
|
||||
signed certificate on your system. The recommended way to complete this step
|
||||
is to simply install mod_ssl:
|
||||
|
||||
6. Now start the web server:
|
||||
sudo yum install mod_ssl
|
||||
|
||||
If this does not meet your needs, then read README.https to
|
||||
learn about alternatives. When in doubt, install mod_ssl.
|
||||
|
||||
7. Now start the web server:
|
||||
|
||||
sudo systemctl enable httpd
|
||||
sudo systemctl start httpd
|
||||
|
||||
7. Now start zoneminder:
|
||||
8. Now start zoneminder:
|
||||
|
||||
sudo systemctl enable zoneminder
|
||||
sudo systemctl start zoneminder
|
||||
|
@ -131,6 +132,7 @@ Upgrades
|
|||
/etc/httpd/conf.d. You will have a file called "zoneminder.conf" and there
|
||||
may also be a file called "zoneminder.conf.rpmnew". If the rpmnew file
|
||||
exists, inspect it and merge anything new in that file with zoneminder.conf.
|
||||
Verify the SSL REquirements meet your needs. Read README.https if necessary.
|
||||
|
||||
4. Upgrade the database before starting ZoneMinder.
|
||||
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
zoneminder.f23.spec
|
|
@ -1,409 +0,0 @@
|
|||
%define zmuid $(id -un)
|
||||
%define zmgid $(id -gn)
|
||||
%define zmuid_final apache
|
||||
%define zmgid_final apache
|
||||
|
||||
%global _hardened_build 1
|
||||
|
||||
### Delete the lines below to build with ffmpeg and/or x10
|
||||
%define _without_ffmpeg 1
|
||||
%define _without_x10 1
|
||||
|
||||
Name: zoneminder
|
||||
Version: 1.29.0
|
||||
Release: 1%{?dist}
|
||||
Summary: A camera monitoring and analysis tool
|
||||
Group: System Environment/Daemons
|
||||
# jscalendar is LGPL (any version): http://www.dynarch.com/projects/calendar/
|
||||
# Mootools is inder the MIT license: http://mootools.net/
|
||||
License: GPLv2+ and LGPLv2+ and MIT
|
||||
URL: http://www.zoneminder.com/
|
||||
|
||||
#Source: https://github.com/ZoneMinder/ZoneMinder/archive/v%{version}.tar.gz
|
||||
Source: ZoneMinder-%{version}.tar.gz
|
||||
|
||||
BuildRequires: cmake gnutls-devel systemd-units bzip2-devel
|
||||
BuildRequires: mariadb-devel pcre-devel libjpeg-turbo-devel
|
||||
BuildRequires: perl(Archive::Tar) perl(Archive::Zip) perl-podlators
|
||||
BuildRequires: perl(Date::Manip) perl(DBD::mysql)
|
||||
BuildRequires: perl(ExtUtils::MakeMaker) perl(LWP::UserAgent)
|
||||
BuildRequires: perl(MIME::Entity) perl(MIME::Lite)
|
||||
BuildRequires: perl(PHP::Serialization) perl(Sys::Mmap)
|
||||
BuildRequires: perl(Time::HiRes) perl(Net::SFTP::Foreign)
|
||||
BuildRequires: perl(Expect) perl(Sys::Syslog)
|
||||
BuildRequires: gcc gcc-c++ vlc-devel libcurl-devel libv4l-devel
|
||||
%{!?_without_ffmpeg:BuildRequires: ffmpeg-devel}
|
||||
%{!?_without_x10:BuildRequires: perl(X10::ActiveHome) perl(Astro::SunTime)}
|
||||
# cmake needs the following installed at build time due to the way it auto-detects certain parameters
|
||||
BuildRequires: httpd polkit-devel
|
||||
%{!?_without_ffmpeg:BuildRequires: ffmpeg}
|
||||
|
||||
Requires: httpd php php-gd php-mysql cambozola polkit net-tools psmisc
|
||||
Requires: libjpeg-turbo vlc-core libcurl
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
||||
Requires: perl(MIME::Entity) perl(MIME::Lite) perl(Net::SMTP) perl(Net::FTP)
|
||||
Requires: perl(LWP::Protocol::https)
|
||||
%{!?_without_ffmpeg:Requires: ffmpeg}
|
||||
|
||||
Requires(post): systemd-units systemd-sysv
|
||||
Requires(post): /usr/bin/gpasswd
|
||||
Requires(post): /usr/bin/less
|
||||
Requires(preun): systemd-units
|
||||
Requires(postun): systemd-units
|
||||
|
||||
%description
|
||||
ZoneMinder is a set of applications which is intended to provide a complete
|
||||
solution allowing you to capture, analyse, record and monitor any cameras you
|
||||
have attached to a Linux based machine. It is designed to run on kernels which
|
||||
support the Video For Linux (V4L) interface and has been tested with cameras
|
||||
attached to BTTV cards, various USB cameras and IP network cameras. It is
|
||||
designed to support as many cameras as you can attach to your computer without
|
||||
too much degradation of performance.
|
||||
|
||||
%prep
|
||||
%setup -q -n ZoneMinder-%{version}
|
||||
|
||||
# Change the following default values
|
||||
./utils/zmeditconfigdata.sh ZM_PATH_ZMS /cgi-bin-zm/nph-zms
|
||||
./utils/zmeditconfigdata.sh ZM_OPT_CAMBOZOLA yes
|
||||
./utils/zmeditconfigdata.sh ZM_PATH_SWAP /dev/shm
|
||||
./utils/zmeditconfigdata.sh ZM_UPLOAD_FTP_LOC_DIR /var/spool/zoneminder-upload
|
||||
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
||||
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
||||
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
||||
|
||||
%build
|
||||
%cmake \
|
||||
-DZM_TARGET_DISTRO="f22" \
|
||||
%{?_without_ffmpeg:-DZM_NO_FFMPEG=ON} \
|
||||
%{?_without_x10:-DZM_NO_X10=ON} \
|
||||
.
|
||||
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
export DESTDIR=%{buildroot}
|
||||
make install
|
||||
|
||||
%post
|
||||
if [ $1 -eq 1 ] ; then
|
||||
# Initial installation
|
||||
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
|
||||
fi
|
||||
|
||||
# Allow zoneminder access to local video sources, serial ports, and x10
|
||||
/usr/bin/gpasswd -a %{zmuid_final} video
|
||||
/usr/bin/gpasswd -a %{zmuid_final} dialout
|
||||
|
||||
# Upgrade from a previous version of zoneminder
|
||||
if [ $1 -eq 2 ] ; then
|
||||
# Freshen the database
|
||||
/usr/bin/zmupdate.pl -f
|
||||
|
||||
# We can't run this automatically when new sql account permissions need to
|
||||
# be manually added first
|
||||
# Run zmupdate non-interactively
|
||||
#/usr/bin/zmupdate.pl --nointeractive
|
||||
fi
|
||||
|
||||
# Warn the end user to read the README file
|
||||
echo -e "\nVERY IMPORTANT: Before starting ZoneMinder, read README.Fedora to finish the\ninstallation or upgrade!\n"
|
||||
echo -e "\nThe README file is located here: %{_docdir}/%{name}\n"
|
||||
|
||||
%preun
|
||||
if [ $1 -eq 0 ] ; then
|
||||
# Package removal, not upgrade
|
||||
/bin/systemctl --no-reload disable zoneminder.service > /dev/null 2>&1 || :
|
||||
/bin/systemctl stop zoneminder.service > /dev/null 2>&1 || :
|
||||
fi
|
||||
|
||||
%postun
|
||||
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
|
||||
if [ $1 -ge 1 ] ; then
|
||||
# Package upgrade, not uninstall
|
||||
/bin/systemctl try-restart zoneminder.service >/dev/null 2>&1 || :
|
||||
fi
|
||||
|
||||
%triggerun -- zoneminder < 1.25.0-4
|
||||
# Save the current service runlevel info
|
||||
# User must manually run systemd-sysv-convert --apply zoneminder
|
||||
# to migrate them to systemd targets
|
||||
/usr/bin/systemd-sysv-convert --save zoneminder >/dev/null 2>&1 ||:
|
||||
|
||||
# Run these because the SysV package being removed won't do them
|
||||
/sbin/chkconfig --del zoneminder >/dev/null 2>&1 || :
|
||||
/bin/systemctl try-restart zoneminder.service >/dev/null 2>&1 || :
|
||||
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc AUTHORS COPYING README.md distros/fedora/README.Fedora distros/fedora/README.https distros/fedora/jscalendar-doc
|
||||
%config %attr(640,root,%{zmgid_final}) /etc/zm/zm.conf
|
||||
%config(noreplace) %attr(644,root,root) /etc/httpd/conf.d/zoneminder.conf
|
||||
%config(noreplace) /etc/tmpfiles.d/zoneminder.conf
|
||||
%config(noreplace) /etc/logrotate.d/zoneminder
|
||||
|
||||
%{_unitdir}/zoneminder.service
|
||||
|
||||
%{_bindir}/zma
|
||||
%{_bindir}/zmaudit.pl
|
||||
%{_bindir}/zmc
|
||||
%{_bindir}/zmcontrol.pl
|
||||
%{_bindir}/zmdc.pl
|
||||
%{_bindir}/zmf
|
||||
%{_bindir}/zmfilter.pl
|
||||
%{_bindir}/zmpkg.pl
|
||||
%{_bindir}/zmstreamer
|
||||
%{_bindir}/zmtrack.pl
|
||||
%{_bindir}/zmtrigger.pl
|
||||
%{_bindir}/zmu
|
||||
%{_bindir}/zmupdate.pl
|
||||
%{_bindir}/zmvideo.pl
|
||||
%{_bindir}/zmwatch.pl
|
||||
%{_bindir}/zmcamtool.pl
|
||||
%{_bindir}/zmsystemctl.pl
|
||||
%{!?_without_x10:%{_bindir}/zmx10.pl}
|
||||
|
||||
%{perl_vendorlib}/ZoneMinder*
|
||||
%{_mandir}/man*/*
|
||||
%dir %{_libexecdir}/zoneminder
|
||||
%{_libexecdir}/zoneminder/cgi-bin
|
||||
%dir %{_datadir}/zoneminder
|
||||
%{_datadir}/zoneminder/db
|
||||
%{_datadir}/zoneminder/www
|
||||
|
||||
%{_datadir}/polkit-1/actions/com.zoneminder.systemctl.policy
|
||||
%{_datadir}/polkit-1/rules.d/com.zoneminder.systemctl.rules
|
||||
|
||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder
|
||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder/events
|
||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder/images
|
||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder/sock
|
||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder/swap
|
||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder/temp
|
||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/log/zoneminder
|
||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/spool/zoneminder-upload
|
||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /run/zoneminder
|
||||
|
||||
|
||||
%changelog
|
||||
* Sat Feb 14 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.28.1
|
||||
- Bump version for 1.28.1 release on Fedora 21.
|
||||
|
||||
* Sun Oct 5 2014 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.28.0
|
||||
- Bump version for 1.28.0 release.
|
||||
|
||||
* Fri Mar 14 2014 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.27
|
||||
- Tweak build requirements for cmake
|
||||
|
||||
* Sat Feb 01 2014 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.27
|
||||
- Add zmcamtool.pl. Bump version for 1.27 release.
|
||||
|
||||
* Mon Dec 16 2013 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.26.5
|
||||
- This is a bug fixe release
|
||||
- RTSP fixes, cmake enhancements, couple other misc fixes
|
||||
|
||||
* Mon Oct 07 2013 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.26.4
|
||||
- Initial cmake build.
|
||||
|
||||
* Sat Oct 05 2013 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.26.4
|
||||
- Fedora specific path changes have been moved to zoneminder-1.26.0-defaults.patch
|
||||
- All files are now part of the zoneminder source tree. Update specfile accordingly.
|
||||
|
||||
* Sat Sep 21 2013 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.26.3
|
||||
- Initial rebuild for ZoneMinder 1.26.3 release.
|
||||
|
||||
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.25.0-13
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
||||
|
||||
* Mon Jan 21 2013 Adam Tkac <atkac redhat com> - 1.25.0-12
|
||||
- rebuild due to "jpeg8-ABI" feature drop
|
||||
|
||||
* Mon Jan 7 2013 Remi Collet <rcollet@redhat.com> - 1.25.0-11
|
||||
- fix configuration file for httpd 2.4, #871502
|
||||
|
||||
* Fri Dec 21 2012 Adam Tkac <atkac redhat com> - 1.25.0-10
|
||||
- rebuild against new libjpeg
|
||||
|
||||
* Thu Aug 09 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-9
|
||||
- Add patch to work around v4l2 api breakage in 3.5 kernel.
|
||||
|
||||
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.25.0-8
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
||||
|
||||
* Sat Jun 23 2012 Petr Pisar <ppisar@redhat.com> - 1.25.0-7
|
||||
- Perl 5.16 rebuild
|
||||
|
||||
* Wed Mar 21 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-6
|
||||
- Fix stupid thinko in sql modifications.
|
||||
|
||||
* Sat Feb 25 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-5
|
||||
- Clean up macro usage.
|
||||
|
||||
* Sat Feb 25 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-4
|
||||
- Convert to systemd.
|
||||
- Add tmpfiles.d configuration since the initscript isn't around to create
|
||||
/run/zoneminder.
|
||||
- Remove some pointless executable permissions.
|
||||
- Add logrotate file.
|
||||
|
||||
* Wed Feb 22 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-3
|
||||
- Update README.Fedora to reference systemctl and mention timezone info in
|
||||
php.ini.
|
||||
- Add proper default for EYEZM_LOG_TO_FILE.
|
||||
|
||||
|
||||
* Thu Feb 09 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-2
|
||||
- Rebuild for new pcre.
|
||||
|
||||
* Thu Jan 19 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-1
|
||||
- Update to 1.25.0
|
||||
- Fix gcc4.7 build problems.
|
||||
- Drop gcc4.4 build fixes; for whatever reason they now break the build.
|
||||
- Clean up old patches.
|
||||
- Force setting of ZM_TMPDIR and ZM_RUNDIR.
|
||||
|
||||
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.24.4-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
||||
|
||||
* Thu Sep 15 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.4-3
|
||||
- Re-add the dist-tag that somehow got lost.
|
||||
|
||||
* Thu Sep 15 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.4-2
|
||||
- Add patch for bug 711780 - fix syntax issue in Mapped.pm.
|
||||
- Undo that patch, and undo another which was the cause of the whole mess.
|
||||
- Fix up other patches so ZM_PATH_BUILD is both defined and useful.
|
||||
- Make sure database creation mods actually take.
|
||||
- Update Fedora-specific docs with some additional info.
|
||||
- Use bundled mootools (javascript, so no guideline violation).
|
||||
- Update download location.
|
||||
- Update the gcrypt patch to actually work.
|
||||
- Upstream changed the tarball without changing the version to patch a
|
||||
vulnerability, so redownload.
|
||||
|
||||
* Sun Aug 14 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.4-1
|
||||
- Initial attempt to upgrade to 1.24.4.
|
||||
- Add patch from BZ 460310 to build against libgcrypt instead of requiring the
|
||||
gnutls openssl libs.
|
||||
|
||||
* Thu Jul 21 2011 Petr Sabata <contyk@redhat.com> - 1.24.3-7.20110324svn3310
|
||||
- Perl mass rebuild
|
||||
|
||||
* Wed Jul 20 2011 Petr Sabata <contyk@redhat.com> - 1.24.3-6.20110324svn3310
|
||||
- Perl mass rebuild
|
||||
|
||||
* Mon May 09 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.3-5.20110324svn3310
|
||||
- Bump for gnutls update.
|
||||
|
||||
* Thu Mar 24 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.3-4.20110324svn3310
|
||||
- Update to latest 1.24.3 subversion. Turns out that what upstream was calling
|
||||
1.24.3 is really just an occasionally updated devel snapshot.
|
||||
- Rebase various patches.
|
||||
|
||||
* Wed Mar 23 2011 Dan Horák <dan@danny.cz> - 1.24.3-3
|
||||
- rebuilt for mysql 5.5.10 (soname bump in libmysqlclient)
|
||||
|
||||
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.24.3-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
||||
|
||||
* Tue Jan 25 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.3-1
|
||||
- Update to latest upstream version.
|
||||
- Rebase patches.
|
||||
- Initial incomplete attempt to disable v4l1 support.
|
||||
|
||||
* Fri Jan 21 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.2-6
|
||||
- Unbundle cambozola; instead link to the separately pacakged copy.
|
||||
- Remove BuildRoot:, %%clean and buildroot cleaning in %%install.
|
||||
- Git rid of mixed space/tab usage by removing all tabs.
|
||||
- Remove unnecessary Conflicts: line.
|
||||
- Attempt to force short_open_tag on for the code directories.
|
||||
- Move default location of sockets, swaps, logfiles and some temporary files to
|
||||
make more sense and allow things to work better with a future selinux policy.
|
||||
- Fix errors in README.Fedora.
|
||||
|
||||
* Wed Jun 02 2010 Marcela Maslanova <mmaslano@redhat.com> - 1.24.2-5
|
||||
- Mass rebuild with perl-5.12.0
|
||||
|
||||
* Fri Dec 4 2009 Stepan Kasal <skasal@redhat.com> - 1.24.2-4
|
||||
- rebuild against perl 5.10.1
|
||||
- use Perl vendorarch and archlib variables correctly
|
||||
|
||||
* Mon Jul 27 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.24.2-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
|
||||
|
||||
* Wed Jul 22 2009 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.2-2
|
||||
- Bump release since 1.24.2-1 was mistakenly tagged a few months ago.
|
||||
|
||||
* Wed Jul 22 2009 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.2-1
|
||||
- Initial update to 1.24.2.
|
||||
- Rebase patches.
|
||||
- Update mootools download location.
|
||||
- Update to mootools 1.2.3.
|
||||
- Add additional dependencies for some optional features.
|
||||
|
||||
* Sat Apr 11 2009 Martin Ebourne <martin@zepler.org> - 1.24.1-3
|
||||
- Remove unused Sys::Mmap perl dependency RPM is finding
|
||||
|
||||
* Sat Apr 11 2009 Martin Ebourne <martin@zepler.org> - 1.24.1-2
|
||||
- Update gcc44 patch to disable -frepo, seems to be broken with gcc44
|
||||
- Added noffmpeg patch to make building outside mock easier
|
||||
|
||||
* Sat Mar 21 2009 Martin Ebourne <martin@zepler.org> - 1.24.1-1
|
||||
- Patch for gcc 4.4 compilation errors
|
||||
- Upgrade to 1.24.1
|
||||
|
||||
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.23.3-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
||||
|
||||
* Sat Jan 24 2009 Caolán McNamara <caolanm@redhat.com> - 1.23.3-3
|
||||
- rebuild for dependencies
|
||||
|
||||
* Mon Dec 15 2008 Martin Ebourne <martin@zepler.org> - 1.23.3-2
|
||||
- Fix permissions on zm.conf
|
||||
|
||||
* Fri Jul 11 2008 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.23.3-1
|
||||
- Initial attempt at packaging 1.23.
|
||||
|
||||
* Tue Jul 1 2008 Martin Ebourne <martin@zepler.org> - 1.22.3-15
|
||||
- Add perl module compat dependency, bz #453590
|
||||
|
||||
* Tue May 6 2008 Martin Ebourne <martin@zepler.org> - 1.22.3-14
|
||||
- Remove default runlevel, bz #441315
|
||||
|
||||
* Mon Apr 28 2008 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.22.3-13
|
||||
- Backport patch for CVE-2008-1381 from 1.23.3 to 1.22.3.
|
||||
|
||||
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.22.3-12
|
||||
- Autorebuild for GCC 4.3
|
||||
|
||||
* Thu Jan 3 2008 Martin Ebourne <martin@zepler.org> - 1.22.3-11
|
||||
- Fix compilation on gcc 4.3
|
||||
|
||||
* Thu Dec 6 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-10
|
||||
- Rebuild for new openssl
|
||||
|
||||
* Thu Aug 2 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-8
|
||||
- Fix licence tag
|
||||
|
||||
* Thu Jul 12 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-7
|
||||
- Fixes from testing by Jitz including missing dependencies and database creation
|
||||
|
||||
* Sat Jun 30 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-6
|
||||
- Disable crashtrace on ppc
|
||||
|
||||
* Sat Jun 30 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-5
|
||||
- Fix uid for directories in /var/lib/zoneminder
|
||||
|
||||
* Tue Jun 26 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-4
|
||||
- Added perl Archive::Tar dependency
|
||||
- Disabled web interface due to lack of access control on the event images
|
||||
|
||||
* Sun Jun 10 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-3
|
||||
- Changes recommended in review by Jason Tibbitts
|
||||
|
||||
* Mon Apr 2 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-2
|
||||
- Standardised on package name of zoneminder
|
||||
|
||||
* Thu Dec 28 2006 Martin Ebourne <martin@zepler.org> - 1.22.3-1
|
||||
- First version. Uses some parts from zm-1.20.1 by Corey DeLasaux and Serg Oskin
|
|
@ -10,7 +10,7 @@
|
|||
%define _without_x10 1
|
||||
|
||||
Name: zoneminder
|
||||
Version: 1.29.0
|
||||
Version: 1.30.0
|
||||
Release: 1%{?dist}
|
||||
Summary: A camera monitoring and analysis tool
|
||||
Group: System Environment/Daemons
|
||||
|
@ -38,7 +38,7 @@ BuildRequires: gcc gcc-c++ vlc-devel libcurl-devel libv4l-devel
|
|||
BuildRequires: httpd polkit-devel
|
||||
%{!?_without_ffmpeg:BuildRequires: ffmpeg}
|
||||
|
||||
Requires: httpd php php-gd php-mysql cambozola polkit net-tools psmisc mod_ssl
|
||||
Requires: httpd php php-gd php-mysql cambozola polkit net-tools psmisc
|
||||
Requires: libjpeg-turbo vlc-core libcurl
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
||||
|
@ -72,6 +72,7 @@ too much degradation of performance.
|
|||
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
||||
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
||||
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
||||
./utils/zmeditconfigdata.sh ZM_OPT_FAST_DELETE no
|
||||
|
||||
%build
|
||||
%cmake \
|
||||
|
@ -87,6 +88,10 @@ export DESTDIR=%{buildroot}
|
|||
make install
|
||||
|
||||
%post
|
||||
|
||||
# Add any new PTZ control configurations to the database (will not overwrite)
|
||||
%{_bindir}/zmcamtool.pl --import >/dev/null 2>&1 || :
|
||||
|
||||
if [ $1 -eq 1 ] ; then
|
||||
# Initial installation
|
||||
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
|
||||
|
@ -98,8 +103,12 @@ fi
|
|||
|
||||
# Upgrade from a previous version of zoneminder
|
||||
if [ $1 -eq 2 ] ; then
|
||||
|
||||
# Add any new PTZ control configurations to the database (will not overwrite)
|
||||
%{_bindir}/zmcamtool.pl --import >/dev/null 2>&1 || :
|
||||
|
||||
# Freshen the database
|
||||
/usr/bin/zmupdate.pl -f
|
||||
%{_bindir}/zmupdate.pl -f >/dev/null 2>&1 || :
|
||||
|
||||
# We can't run this automatically when new sql account permissions need to
|
||||
# be manually added first
|
||||
|
@ -163,9 +172,14 @@ fi
|
|||
%{_bindir}/zmwatch.pl
|
||||
%{_bindir}/zmcamtool.pl
|
||||
%{_bindir}/zmsystemctl.pl
|
||||
%{_bindir}/zmtelemetry.pl
|
||||
%{!?_without_x10:%{_bindir}/zmx10.pl}
|
||||
%{_bindir}/zmonvif-probe.pl
|
||||
|
||||
%{perl_vendorlib}/ZoneMinder*
|
||||
%{perl_vendorlib}/ONVIF*
|
||||
%{perl_vendorlib}/WSDiscovery*
|
||||
%{perl_vendorlib}/WSSecurity*
|
||||
%{_mandir}/man*/*
|
||||
%dir %{_libexecdir}/zoneminder
|
||||
%{_libexecdir}/zoneminder/cgi-bin
|
||||
|
@ -188,6 +202,9 @@ fi
|
|||
|
||||
|
||||
%changelog
|
||||
* Thu Mar 3 2016 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.30.0
|
||||
- Bump version fo 1.30.0 release.
|
||||
|
||||
* Sat Nov 21 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.29.0
|
||||
- Bump version for 1.29.0 release on Fedora 23.
|
||||
|
||||
|
|
|
@ -38,7 +38,7 @@ install(CODE "execute_process(COMMAND ln -sf ../../../../${zm_webdir}/temp \"\$E
|
|||
# Opensuse cambazola? requires cambozola as a separate package so just link to it
|
||||
#install(CODE "execute_process(COMMAND ln -sf ../../java/cambozola.jar \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATAROOTDIR}/zoneminder/www/cambozola.jar\")")
|
||||
|
||||
# Install auxillary files required to run zoneminder on OpenSuse
|
||||
# Install auxiliary files required to run zoneminder on OpenSuse
|
||||
install(FILES zoneminder.conf DESTINATION /etc/apache2/conf.d PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ)
|
||||
install(FILES zoneminder.logrotate DESTINATION /etc/logrotate.d RENAME zoneminder PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ)
|
||||
install(FILES zoneminder.tmpfiles DESTINATION /etc/tmpfiles.d RENAME zoneminder.conf PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
|
||||
|
|
|
@ -138,7 +138,7 @@ Upgrades
|
|||
has select, insert, update, and delete permission.
|
||||
|
||||
3. You will need to upgrade the ZoneMinder database as described in the
|
||||
manual. Only if the previous step was succesful, may you run zmupdate like
|
||||
manual. Only if the previous step was successful, may you run zmupdate like
|
||||
so (as root):
|
||||
|
||||
/opt/zoneminder/bin/zmupdate.pl
|
||||
|
|
|
@ -16,7 +16,7 @@ else(ZM_TARGET_DISTRO STREQUAL "el7")
|
|||
endif(ZM_TARGET_DISTRO STREQUAL "el7")
|
||||
|
||||
# Download jscalendar & move files into position
|
||||
file(DOWNLOAD http://skylineservers.dl.sourceforge.net/project/jscalendar/jscalendar/1.0/jscalendar-1.0.zip ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar-1.0.zip LOG jsc_log STATUS download_jsc)
|
||||
file(DOWNLOAD http://iweb.dl.sourceforge.net/project/jscalendar/jscalendar/1.0/jscalendar-1.0.zip ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar-1.0.zip LOG jsc_log STATUS download_jsc)
|
||||
#message(STATUS "Log of jscalender script was: ${jsc_log}")
|
||||
if(download_jsc EQUAL 0)
|
||||
message(STATUS "Jscalander successfully downloaded. Installing...")
|
||||
|
@ -57,7 +57,7 @@ install(CODE "execute_process(COMMAND ln -sf ../../../../../../var/lib/zoneminde
|
|||
# Link to Cambozola, which is now packaged in zmrepo
|
||||
install(CODE "execute_process(COMMAND ln -sf ../../java/cambozola.jar \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATAROOTDIR}/zoneminder/www/cambozola.jar\")")
|
||||
|
||||
# Install auxillary files required to run zoneminder on CentOS
|
||||
# Install auxiliary files required to run zoneminder on CentOS
|
||||
install(FILES redalert.wav DESTINATION ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATAROOTDIR}/zoneminder/www/sounds PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
|
||||
if(ZM_TARGET_DISTRO STREQUAL "el7")
|
||||
install(FILES zoneminder.el7.conf DESTINATION /etc/httpd/conf.d RENAME zoneminder.conf PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ)
|
||||
|
|
|
@ -5,16 +5,14 @@ What's New
|
|||
ALL permission to the ZoneMinder mysql account. This change must be done
|
||||
manually before ZoneMinder will run. See the installation steps below.
|
||||
|
||||
2. A new permission group called "Groups" has been added. This allows the
|
||||
system administrator to assign "view", "edit", or "none" permission to
|
||||
normal users, without giving them access to the rest of the ZoneMinder
|
||||
system. During an upgrade, existing accounts will default to a Groups
|
||||
permission of "none".
|
||||
|
||||
3. This package now requires the HTTPS protocol to access the web portal.
|
||||
2. This package uses the HTTPS protocol by default to access the web portal.
|
||||
Requests using HTTP will auto-redirect to HTTPS. See README.https for
|
||||
more information.
|
||||
|
||||
3. The php package that ships with CentOS 6 does not support the new ZoneMinder
|
||||
API. If you require API functionality (such as using a mobile app) then you
|
||||
should consider an upgrade to CentOS 7 or use Fedora.
|
||||
|
||||
New installs
|
||||
============
|
||||
|
||||
|
@ -40,7 +38,7 @@ New installs
|
|||
|
||||
3. If you have chosen to change the zoneminder mysql credentials to something
|
||||
other than zmuser/zmpass then you must now edit /etc/zm.conf. Change
|
||||
ZM_DB_USER and ZM_DB_PASS to the values you created in step 2.
|
||||
ZM_DB_USER and ZM_DB_PASS to the values you created in the previous step.
|
||||
|
||||
Additionally, you must also edit
|
||||
/usr/share/zoneminder/www/api/app/Config/database.php in a similar manner.
|
||||
|
@ -55,11 +53,15 @@ New installs
|
|||
If you are not sure of the proper timezone specification to use, look at
|
||||
http://php.net/date.timezone
|
||||
|
||||
5. Verify the default ZoneMinder Apache configuration meets your needs:
|
||||
5. Install mod_ssl or configure /etc/httpd/conf.d/zoneminder.conf to meet your
|
||||
needs. This package comes preconfigured for HTTPS using the default self
|
||||
signed certificate on your system. The recommended way to complete this step
|
||||
is to simply install mod_ssl:
|
||||
|
||||
/etc/httpd/conf.d/zoneminder.conf
|
||||
sudo yum install mod_ssl
|
||||
|
||||
When in doubt, leave this configuration as it is.
|
||||
If this does not meet your needs, then read README.https to
|
||||
learn about alternatives. When in doubt, install mod_ssl.
|
||||
|
||||
6. Configure the web server to start automatically:
|
||||
|
||||
|
@ -122,6 +124,7 @@ New installs
|
|||
/etc/httpd/conf.d. You will have a file called "zoneminder.conf" and there
|
||||
may also be a file called "zoneminder.conf.rpmnew". If the rpmnew file
|
||||
exists, inspect it and merge anything new in that file with zoneminder.conf.
|
||||
Verify the SSL REquirements meet your needs. Read README.https if necessary.
|
||||
|
||||
4. Upgrade the database before starting ZoneMinder.
|
||||
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
What's New
|
||||
==========
|
||||
|
||||
1. Due to the active state of the ZoneMinder project, we now recommend granting
|
||||
1. The Apache ScriptAlias has been changed from "/cgi-bin/zm/zms" to
|
||||
"/cgi-bin-zm/zms". This has been to done to avoid this bug:
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=973067
|
||||
|
||||
IMPORTANT: You must manually verify the value of PATH_ZMS under Options.
|
||||
Make sure it is set to "/cgi-bin-zm/nph-zms". Failure to do so will result
|
||||
in a broken system. You have been warned.
|
||||
|
||||
2. Due to the active state of the ZoneMinder project, we now recommend granting
|
||||
ALL permission to the ZoneMinder mysql account. This change must be done
|
||||
manually before ZoneMinder will run. See the installation steps below.
|
||||
|
||||
2. A new permission group called "Groups" has been added. This allows the
|
||||
system administrator to assign "view", "edit", or "none" permission to
|
||||
normal users, without giving them access to the rest of the ZoneMinder
|
||||
system. During an upgrade, existing accounts will default to a Groups
|
||||
permission of "none".
|
||||
|
||||
3. This package now requires the HTTPS protocol to access the web portal.
|
||||
3. This package uses the HTTPS protocol by default to access the web portal.
|
||||
Requests using HTTP will auto-redirect to HTTPS. See README.https for
|
||||
more information.
|
||||
|
||||
|
@ -74,12 +76,22 @@ New installs
|
|||
SELINUX line from "enforcing" to "disabled". This change will take
|
||||
effect after a reboot.
|
||||
|
||||
6. Now start the web server:
|
||||
6. Install mod_ssl or configure /etc/httpd/conf.d/zoneminder.conf to meet your
|
||||
needs. This package comes preconfigured for HTTPS using the default self
|
||||
signed certificate on your system. The recommended way to complete this step
|
||||
is to simply install mod_ssl:
|
||||
|
||||
sudo yum install mod_ssl
|
||||
|
||||
If this does not meet your needs, then read README.https to
|
||||
learn about alternatives. When in doubt, install mod_ssl.
|
||||
|
||||
7. Now start the web server:
|
||||
|
||||
sudo systemctl enable httpd
|
||||
sudo systemctl start httpd
|
||||
|
||||
7. Now start zoneminder:
|
||||
8. Now start zoneminder:
|
||||
|
||||
sudo systemctl enable zoneminder
|
||||
sudo systemctl start zoneminder
|
||||
|
@ -118,6 +130,7 @@ Upgrades
|
|||
/etc/httpd/conf.d. You will have a file called "zoneminder.conf" and there
|
||||
may also be a file called "zoneminder.conf.rpmnew". If the rpmnew file
|
||||
exists, inspect it and merge anything new in that file with zoneminder.conf.
|
||||
Verify the SSL REquirements meet your needs. Read README.https if necessary.
|
||||
|
||||
4. Upgrade the database before starting ZoneMinder.
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
%define zmgid_final apache
|
||||
|
||||
Name: zoneminder
|
||||
Version: 1.29.0
|
||||
Version: 1.30.0
|
||||
Release: 1%{?dist}
|
||||
Summary: A camera monitoring and analysis tool
|
||||
Group: System Environment/Daemons
|
||||
|
@ -30,7 +30,7 @@ BuildRequires: libcurl-devel vlc-devel ffmpeg-devel polkit-devel
|
|||
# cmake needs the following installed at build time due to the way it auto-detects certain parameters
|
||||
BuildRequires: httpd ffmpeg
|
||||
|
||||
Requires: httpd php php-gd php-mysql mysql-server libjpeg-turbo cambozola polkit net-tools mod_ssl
|
||||
Requires: httpd php php-gd php-mysql mysql-server libjpeg-turbo cambozola polkit net-tools
|
||||
Requires: psmisc perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
||||
Requires: perl(MIME::Entity) perl(MIME::Lite) perl(Net::SMTP) perl(Net::FTP)
|
||||
|
@ -69,6 +69,7 @@ too much degradation of performance.
|
|||
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
||||
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
||||
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
||||
./utils/zmeditconfigdata.sh ZM_OPT_FAST_DELETE no
|
||||
|
||||
%build
|
||||
# Have to override CMAKE_INSTALL_LIBDIR for cmake < 2.8.7 due to this bug:
|
||||
|
@ -98,8 +99,12 @@ echo -e "\nCreating and installing a ZoneMinder SELinux policy module. Please wa
|
|||
|
||||
# Upgrade from a previous version of zoneminder
|
||||
if [ $1 -eq 2 ] ; then
|
||||
|
||||
# Add any new PTZ control configurations to the database (will not overwrite)
|
||||
%{_bindir}/zmcamtool.pl --import >/dev/null 2>&1 || :
|
||||
|
||||
# Freshen the database
|
||||
/usr/bin/zmupdate.pl -f
|
||||
%{_bindir}/zmupdate.pl -f >/dev/null 2>&1 || :
|
||||
|
||||
# We can't run this automatically when new sql account permissions need to
|
||||
# be manually added first
|
||||
|
@ -154,14 +159,16 @@ rm -rf %{_docdir}/%{name}-%{version}
|
|||
%{_bindir}/zmwatch.pl
|
||||
%{_bindir}/zmcamtool.pl
|
||||
%{_bindir}/zmsystemctl.pl
|
||||
%{_bindir}/zmtelemetry.pl
|
||||
%{_bindir}/zmx10.pl
|
||||
#%{_bindir}/zmonvif-probe.pl
|
||||
%{_bindir}/zmonvif-probe.pl
|
||||
|
||||
%{perl_vendorlib}/ZoneMinder*
|
||||
%{perl_vendorarch}/auto/ZoneMinder/.packlist
|
||||
#%{perl_vendorlib}/ONVIF*
|
||||
#%{perl_vendorlib}/WSDiscovery*
|
||||
#%{perl_vendorlib}/WSSecurity*
|
||||
%{perl_vendorarch}/auto/ONVIF/.packlist
|
||||
%{perl_vendorlib}/ONVIF*
|
||||
%{perl_vendorlib}/WSDiscovery*
|
||||
%{perl_vendorlib}/WSSecurity*
|
||||
%{_mandir}/man*/*
|
||||
%dir %{_libexecdir}/%{name}
|
||||
%{_libexecdir}/%{name}/cgi-bin
|
||||
|
@ -182,6 +189,9 @@ rm -rf %{_docdir}/%{name}-%{version}
|
|||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) %{_localstatedir}/spool/zoneminder-upload
|
||||
|
||||
%changelog
|
||||
* Thu Mar 3 2016 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.30.0
|
||||
- Bump version fo 1.30.0 release.
|
||||
|
||||
* Tue Sep 8 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.28.1
|
||||
- Require https, freshen dB on updates.
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
%global _hardened_build 1
|
||||
|
||||
Name: zoneminder
|
||||
Version: 1.29.0
|
||||
Version: 1.30.0
|
||||
Release: 1%{?dist}
|
||||
Summary: A camera monitoring and analysis tool
|
||||
Group: System Environment/Daemons
|
||||
|
@ -32,7 +32,7 @@ BuildRequires: ffmpeg ffmpeg-devel perl(X10::ActiveHome) perl(Astro::SunTime)
|
|||
# cmake needs the following installed at build time due to the way it auto-detects certain parameters
|
||||
BuildRequires: httpd polkit-devel
|
||||
|
||||
Requires: httpd php php-gd php-mysql mariadb-server cambozola polkit net-tools mod_ssl
|
||||
Requires: httpd php php-gd php-mysql mariadb-server cambozola polkit net-tools
|
||||
Requires: psmisc libjpeg-turbo vlc-core libcurl
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
||||
|
@ -65,6 +65,7 @@ too much degradation of performance.
|
|||
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
||||
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
||||
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
||||
./utils/zmeditconfigdata.sh ZM_OPT_FAST_DELETE no
|
||||
|
||||
%build
|
||||
%cmake \
|
||||
|
@ -96,8 +97,12 @@ fi
|
|||
|
||||
# Upgrade from a previous version of zoneminder
|
||||
if [ $1 -eq 2 ] ; then
|
||||
|
||||
# Add any new PTZ control configurations to the database (will not overwrite)
|
||||
%{_bindir}/zmcamtool.pl --import >/dev/null 2>&1 || :
|
||||
|
||||
# Freshen the database
|
||||
/usr/bin/zmupdate.pl -f
|
||||
%{_bindir}/zmupdate.pl -f >/dev/null 2>&1 || :
|
||||
|
||||
# We can't run this automatically when new sql account permissions need to
|
||||
# be manually added first
|
||||
|
@ -163,12 +168,16 @@ fi
|
|||
%{_bindir}/zmwatch.pl
|
||||
%{_bindir}/zmcamtool.pl
|
||||
%{_bindir}/zmsystemctl.pl
|
||||
%{_bindir}/zmtelemetry.pl
|
||||
%{_bindir}/zmx10.pl
|
||||
%{_bindir}/zmonvif-probe.pl
|
||||
|
||||
%{perl_vendorlib}/ZoneMinder*
|
||||
%{perl_vendorarch}/auto/ZoneMinder/.packlist
|
||||
#%{perl_vendorlib}/%{_arch}-linux-thread-multi/auto/ZoneMinder*
|
||||
#%{perl_archlib}/ZoneMinder*
|
||||
%{perl_vendorarch}/auto/ONVIF/.packlist
|
||||
%{perl_vendorlib}/ONVIF*
|
||||
%{perl_vendorlib}/WSDiscovery*
|
||||
%{perl_vendorlib}/WSSecurity*
|
||||
%{_mandir}/man*/*
|
||||
%dir %{_libexecdir}/zoneminder
|
||||
%{_libexecdir}/zoneminder/cgi-bin
|
||||
|
@ -191,6 +200,9 @@ fi
|
|||
|
||||
|
||||
%changelog
|
||||
* Thu Mar 3 2016 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.30.0
|
||||
- Bump version fo 1.30.0 release.
|
||||
|
||||
* Mon Sep 7 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.28.1
|
||||
- Require https, disable selinux module, freshen dB on updates.
|
||||
|
||||
|
|
|
@ -2,12 +2,42 @@ Source: zoneminder
|
|||
Section: net
|
||||
Priority: optional
|
||||
Maintainer: Isaac Connor <iconnor@connortechnology.com>
|
||||
Build-Depends: debhelper (>= 9), autoconf, automake, quilt, libphp-serialization-perl, libgnutls-dev, libmysqlclient-dev | libmariadbclient-dev, libdbd-mysql-perl, libdate-manip-perl, libwww-perl, libjpeg8-dev|libjpeg9-dev|libjpeg62-turbo-dev, libpcre3-dev, libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev, libv4l-dev (>= 0.8.3), libbz2-dev, libtool, libsys-mmap-perl, ffmpeg | libav-tools, libavdevice-dev, libdevice-serialport-perl, libpcre3, libarchive-zip-perl, libmime-lite-perl, dh-autoreconf, libvlccore-dev, libvlc-dev, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libgcrypt11-dev, libpolkit-gobject-1-dev
|
||||
Build-Depends: debhelper (>= 9), autoconf, automake, quilt, dh-autoreconf, libtool
|
||||
, libgnutls-dev
|
||||
, libmysqlclient-dev | libmariadbclient-dev
|
||||
, libjpeg8-dev|libjpeg9-dev|libjpeg62-turbo-dev
|
||||
, libpcre3-dev
|
||||
, libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev
|
||||
, libv4l-dev (>= 0.8.3)
|
||||
, libbz2-dev
|
||||
, libavdevice-dev
|
||||
, libvlccore-dev, libvlc-dev
|
||||
, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev
|
||||
, libgcrypt11-dev, libpolkit-gobject-1-dev
|
||||
Standards-Version: 3.9.4
|
||||
|
||||
Package: zoneminder
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, apache2, libapache2-mod-php5 | libapache2-mod-fcgid, php5, php5-mysql|php5-mysqlnd, libphp-serialization-perl, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl, mariadb-client|mysql-client|mysql-client-5.6, libwww-perl, libarchive-tar-perl, libarchive-zip-perl, libdevice-serialport-perl, libpcre3, ffmpeg | libav-tools, rsyslog | system-log-daemon, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl, libavdevice53 | libavdevice55, libjpeg8|libjpeg9|libjpeg62-turbo, zip, libnet-sftp-foreign-perl, libio-pty-perl, libexpect-perl, libvlccore5 | libvlccore7 | libvlccore8, libvlc5, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libpolkit-gobject-1-0, liburi-encode-perl, php5-gd
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
|
||||
, apache2, libapache2-mod-php5 | libapache2-mod-fcgid, php5, php5-mysql|php5-mysqlnd
|
||||
, mariadb-client|mysql-client|mysql-client-5.6
|
||||
, libpcre3
|
||||
, ffmpeg | libav-tools
|
||||
, rsyslog | system-log-daemon
|
||||
, libphp-serialization-perl, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl
|
||||
, libwww-perl, libarchive-tar-perl, libarchive-zip-perl, libdevice-serialport-perl
|
||||
, libdbd-mysql-perl
|
||||
, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl
|
||||
, libnet-sftp-foreign-perl, libio-pty-perl, libexpect-perl, liburi-encode-perl
|
||||
, libdata-dump-perl, libclass-std-fast-perl, libsoap-wsdl-perl, libio-socket-multicast-perl, libdigest-sha-perl
|
||||
, libsys-cpu-perl, libsys-meminfo-perl
|
||||
, libavdevice53 | libavdevice55
|
||||
, libjpeg8|libjpeg9|libjpeg62-turbo
|
||||
, zip
|
||||
, libvlccore5 | libvlccore7 | libvlccore8, libvlc5
|
||||
, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev
|
||||
, libpolkit-gobject-1-0
|
||||
, php5-gd
|
||||
Recommends: mysql-server|mariadb-server
|
||||
Description: Video camera security and surveillance solution
|
||||
ZoneMinder is intended for use in single or multi-camera video security
|
||||
|
|
|
@ -525,7 +525,7 @@ zoneminder (1.22.3-7) unstable; urgency=low
|
|||
|
||||
zoneminder (1.22.3-6) unstable; urgency=low
|
||||
|
||||
* Removed a similar bash only statment from zmpkg.pl
|
||||
* Removed a similar bash only statement from zmpkg.pl
|
||||
(closes:414882)
|
||||
|
||||
-- Peter Howard <pjh@northern-ridge.com.au> Sat, 14 Apr 2007 11:46:56 +1000
|
||||
|
|
|
@ -7,20 +7,15 @@ Build-Depends: debhelper (>= 9), python-sphinx | python3-sphinx, apache2-dev, dh
|
|||
,cmake
|
||||
,libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev, libavdevice-dev
|
||||
,libbz2-dev
|
||||
,libdate-manip-perl
|
||||
,libdbd-mysql-perl
|
||||
,libgcrypt-dev
|
||||
,libcurl4-gnutls-dev
|
||||
,libgnutls-openssl-dev
|
||||
,libjpeg8-dev|libjpeg9-dev|libjpeg62-turbo-dev,
|
||||
,libmysqlclient-dev
|
||||
,libpcre3-dev
|
||||
,libphp-serialization-perl
|
||||
,libpolkit-gobject-1-dev
|
||||
,libsys-mmap-perl [!hurd-any]
|
||||
,libv4l-dev (>= 0.8.3) [!hurd-any]
|
||||
,libvlc-dev
|
||||
,libwww-perl
|
||||
# Unbundled (dh_linktree):
|
||||
,libjs-jquery
|
||||
,libjs-mootools
|
||||
|
@ -35,6 +30,7 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
|
|||
,javascript-common
|
||||
,libav-tools|ffmpeg
|
||||
,libdate-manip-perl
|
||||
,libdbd-mysql-perl
|
||||
,libmime-lite-perl
|
||||
,libmime-tools-perl
|
||||
,libphp-serialization-perl
|
||||
|
@ -51,10 +47,12 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
|
|||
,libwww-perl
|
||||
,mysql-client | virtual-mysql-client
|
||||
,perl-modules
|
||||
,php5-mysql
|
||||
,php5-mysql, php5-gd
|
||||
,policykit-1
|
||||
,rsyslog | system-log-daemon
|
||||
,zip
|
||||
,libdata-dump-perl, libclass-std-fast-perl, libsoap-wsdl-perl, libio-socket-multicast-perl, libdigest-sha-perl
|
||||
, libsys-cpu-perl, libsys-meminfo-perl
|
||||
Recommends: ${misc:Recommends}
|
||||
,libapache2-mod-php5 | php5-fpm
|
||||
,mysql-server | virtual-mysql-server
|
||||
|
|
|
@ -3,14 +3,11 @@ Section: net
|
|||
Priority: optional
|
||||
Maintainer: Isaac Connor <iconnor@connortechnology.com>
|
||||
Build-Depends: debhelper (>= 9), dh-systemd (>= 1.5), autoconf, automake, quilt, libtool, dh-autoreconf
|
||||
, libphp-serialization-perl, libgnutls-dev
|
||||
, libmysqlclient-dev | libmariadbclient-dev, libdbd-mysql-perl
|
||||
, libdate-manip-perl, libwww-perl
|
||||
, libgnutls-dev
|
||||
, libmysqlclient-dev | libmariadbclient-dev
|
||||
, libjpeg8-dev|libjpeg9-dev|libjpeg62-turbo-dev, libpcre3-dev
|
||||
, libavcodec-ffmpeg-dev, libavformat-ffmpeg-dev, libswscale-ffmpeg-dev, libavutil-ffmpeg-dev, libavdevice-ffmpeg-dev
|
||||
, libv4l-dev (>= 0.8.3), libbz2-dev
|
||||
, libsys-mmap-perl
|
||||
, libdevice-serialport-perl, libpcre3, libarchive-zip-perl, libmime-lite-perl
|
||||
, libvlccore-dev, libvlc-dev
|
||||
, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev
|
||||
, libgcrypt11-dev, libpolkit-gobject-1-dev
|
||||
|
@ -19,7 +16,24 @@ Homepage: http://www.zoneminder.com/
|
|||
|
||||
Package: zoneminder
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, apache2, libapache2-mod-php5 | libapache2-mod-fcgid, php5, php5-mysql|php5-mysqlnd, libphp-serialization-perl, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl, mariadb-client|mysql-client|mysql-client-5.6, libwww-perl, libarchive-tar-perl, libarchive-zip-perl, libdevice-serialport-perl, libpcre3, ffmpeg, rsyslog | system-log-daemon, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl, libavdevice-ffmpeg56, libjpeg8|libjpeg9|libjpeg62-turbo, zip, libnet-sftp-foreign-perl, libio-pty-perl, libexpect-perl, libvlccore5 | libvlccore7 | libvlccore8, libvlc5, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libpolkit-gobject-1-0, liburi-encode-perl, php5-gd
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
|
||||
, apache2, libapache2-mod-php5 | libapache2-mod-fcgid, php5, php5-mysql|php5-mysqlnd
|
||||
, mariadb-client|mysql-client|mysql-client-5.6
|
||||
, libphp-serialization-perl, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl
|
||||
, libwww-perl, libarchive-tar-perl, libarchive-zip-perl, libdevice-serialport-perl
|
||||
, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl
|
||||
, libnet-sftp-foreign-perl , libio-pty-perl, libexpect-perl , liburi-encode-perl , libdbd-mysql-perl
|
||||
, libdata-dump-perl, libclass-std-fast-perl, libsoap-wsdl-perl, libio-socket-multicast-perl, libdigest-sha-perl
|
||||
, libsys-cpu-perl, libsys-meminfo-perl
|
||||
, libpcre3
|
||||
, ffmpeg, libavdevice-ffmpeg56
|
||||
, rsyslog | system-log-daemon
|
||||
, libjpeg8|libjpeg9|libjpeg62-turbo
|
||||
, zip
|
||||
, libvlccore5 | libvlccore7 | libvlccore8, libvlc5
|
||||
, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev
|
||||
, libpolkit-gobject-1-0
|
||||
, php5-gd
|
||||
Recommends: mysql-server|mariadb-server
|
||||
Description: Video camera security and surveillance solution
|
||||
ZoneMinder is intended for use in single or multi-camera video security
|
||||
|
|
|
@ -525,7 +525,7 @@ zoneminder (1.22.3-7) unstable; urgency=low
|
|||
|
||||
zoneminder (1.22.3-6) unstable; urgency=low
|
||||
|
||||
* Removed a similar bash only statment from zmpkg.pl
|
||||
* Removed a similar bash only statement from zmpkg.pl
|
||||
(closes:414882)
|
||||
|
||||
-- Peter Howard <pjh@northern-ridge.com.au> Sat, 14 Apr 2007 11:46:56 +1000
|
||||
|
|
|
@ -7,19 +7,19 @@ Build-Depends: debhelper (>= 9), dh-systemd, python-sphinx | python3-sphinx, apa
|
|||
,cmake
|
||||
,libavcodec-ffmpeg-dev, libavformat-ffmpeg-dev, libswscale-ffmpeg-dev, libavutil-ffmpeg-dev, libavdevice-ffmpeg-dev
|
||||
,libbz2-dev
|
||||
,libdate-manip-perl
|
||||
,libdbd-mysql-perl
|
||||
,libgcrypt-dev
|
||||
,libcurl4-gnutls-dev
|
||||
,libgnutls-openssl-dev
|
||||
,libjpeg-dev
|
||||
,libmysqlclient-dev
|
||||
,libpcre3-dev
|
||||
,libphp-serialization-perl
|
||||
,libpolkit-gobject-1-dev
|
||||
,libsys-mmap-perl [!hurd-any]
|
||||
,libv4l-dev (>= 0.8.3) [!hurd-any]
|
||||
,libvlc-dev
|
||||
,libdate-manip-perl
|
||||
,libdbd-mysql-perl
|
||||
,libphp-serialization-perl
|
||||
,libsys-mmap-perl [!hurd-any]
|
||||
,libwww-perl
|
||||
# Unbundled (dh_linktree):
|
||||
,libjs-jquery
|
||||
|
@ -35,12 +35,12 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
|
|||
,javascript-common
|
||||
,libav-tools
|
||||
,libdate-manip-perl
|
||||
,libdbd-mysql-perl
|
||||
,libmime-lite-perl
|
||||
,libmime-tools-perl
|
||||
,libphp-serialization-perl
|
||||
,libmodule-load-conditional-perl
|
||||
,libnet-sftp-foreign-perl
|
||||
# ,libzoneminder-perl (= ${source:Version})
|
||||
,libarchive-zip-perl
|
||||
,libdbd-mysql-perl
|
||||
,libdevice-serialport-perl
|
||||
|
@ -49,6 +49,12 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
|
|||
,libsys-mmap-perl [!hurd-any]
|
||||
,liburi-encode-perl
|
||||
,libwww-perl
|
||||
,libdata-dump-perl
|
||||
,libclass-std-fast-perl
|
||||
,libsoap-wsdl-perl
|
||||
,libio-socket-multicast-perl
|
||||
,libdigest-sha-perl
|
||||
,libsys-cpu-perl, libsys-meminfo-perl
|
||||
,mysql-client | virtual-mysql-client
|
||||
,perl-modules
|
||||
,php5-mysql
|
||||
|
|
|
@ -78,6 +78,8 @@ Depends: libzoneminder-perl (= ${source:Version}),
|
|||
libmime-tools-perl, libnet-sftp-foreign-perl, libphp-serialization-perl,
|
||||
debconf, ffmpeg | libav-tools, rsyslog | system-log-daemon, zip,
|
||||
policykit-1, apache2, libmp4v2-2, libpcre++0
|
||||
, libsys-cpu-perl, libsys-meminfo-perl
|
||||
, libdata-dump-perl, libclass-std-fast-perl, libsoap-wsdl-perl, libio-socket-multicast-perl, libdigest-sha-perl
|
||||
Description: Core binaries and perl scripts for ZoneMinder
|
||||
ZoneMinder is a video camera security and surveillance solution.
|
||||
.
|
||||
|
|
|
@ -238,7 +238,7 @@ The second approach is to use diagnostic images which are saved copies of the in
|
|||
|
||||
There are two kinds of diagnostic images which are and are written (and continuously overwritten) to the top level monitor event directory. If an event occurs then the files are additionally copied to the event directory and renamed with the appropriate frame number as a prefix.
|
||||
|
||||
The first set are produced by the monitor on the image as a whole. The diag-r.jpg image is the current reference image against which all individual frames are compared and the diag-d.jpg image is the delta image highlighting the difference between the reference image and the last analysed image. In this images identicial pixels will be black and the more different a pixel is the whiter it will be. Viewing this image and determining the colour of the pixels is a good way of getting a feel for the pixel differences you might expect (often more than you think).
|
||||
The first set are produced by the monitor on the image as a whole. The diag-r.jpg image is the current reference image against which all individual frames are compared and the diag-d.jpg image is the delta image highlighting the difference between the reference image and the last analysed image. In this images identical pixels will be black and the more different a pixel is the whiter it will be. Viewing this image and determining the colour of the pixels is a good way of getting a feel for the pixel differences you might expect (often more than you think).
|
||||
|
||||
The second set of diag images are labelled as diag-<zoneid>-<stage>.jpg where zoneid is the id of the zone in question (Smile) and the stage is where in the alarm check process the image is generated from. So if you have several zones you can expect to see multiple files. Also these files are only interested in what is happening in their zone only and will ignore anything else outside of the zone. The stages that each number represents are as follows,
|
||||
|
||||
|
@ -617,14 +617,14 @@ How can I trouble shoot the hardware and/or software?
|
|||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Here are some commands to get information about your hardware. Some commands are distribution dependent.
|
||||
* ``[[lspci]] -vv`` -- Returns lots of detailed info. Check for conflicting interrupts or port assignments. You can sometimes alter interrupts/ ports in bios. Try a different pci slot to get a clue if it is HW conflict (comand provided by the pciutils package).
|
||||
* ``[[lspci]] -vv`` -- Returns lots of detailed info. Check for conflicting interrupts or port assignments. You can sometimes alter interrupts/ ports in bios. Try a different pci slot to get a clue if it is HW conflict (command provided by the pciutils package).
|
||||
* ``[[scanpci]] -v`` -- Gives you information from your hardware EPROM
|
||||
* ``[[lsusb]] -vv`` -- Returns lots of detail about USB devices (camand provided by usbutils package).
|
||||
* ``[[dmesg]]`` -- Shows you how your hardware initialized (or didn't) on boot-up. You will get the most use of this.
|
||||
* ``[[v4l-info]]`` -- to see how driver is talking to card. look for unusual values.
|
||||
* ``[[modinfo bttv]]`` -- some bttv driver stats.
|
||||
* ``[[zmu]] -m 0 -q -v`` -- Returns various information regarding a monitor configuration.
|
||||
* ``[[ipcs]] `` -- Provides information on the ipc facilities for which the calling process has read acccess.
|
||||
* ``[[ipcs]] `` -- Provides information on the ipc facilities for which the calling process has read access.
|
||||
* ``[[ipcrm]] `` -- The ipcrm command can be used to remove an IPC object from the kernel.
|
||||
* ``cat /proc/interrupts`` -- This will dispaly what interrupts your hardware is using.
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ ZoneMinder Documentation
|
|||
Welcome to ZoneMinder's documentation, the following resources are available
|
||||
|
||||
:doc:`installationguide/index`
|
||||
Many distrubution repos only hold older versions of ZoneMinder, current versions contain many bug fixes and updated functionality. Instructions here for installing updated packages or compiling from source.
|
||||
Many distribution repos only hold older versions of ZoneMinder, current versions contain many bug fixes and updated functionality. Instructions here for installing updated packages or compiling from source.
|
||||
|
||||
:doc:`userguide/index`
|
||||
Guide to setting up ZoneMinder for the first time and detailed guides for using the ZoneMinder front end.
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
Centos
|
||||
======
|
||||
|
||||
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
Fedora
|
||||
======
|
||||
|
||||
|
|
@ -8,6 +8,5 @@ Contents:
|
|||
|
||||
ubuntu
|
||||
debian
|
||||
fedora
|
||||
centos
|
||||
redhat
|
||||
multiserver
|
||||
|
|
|
@ -0,0 +1,203 @@
|
|||
Redhat
|
||||
======
|
||||
|
||||
.. contents::
|
||||
|
||||
These instructions apply to all Redhat distros and their clones, including but not limited to: Fedora, RHEL, CentOS, Scientific Linux, and others. While the installation instructions are the same for each distro, the reason why one might use one distro over the other is different. A short description follows, which is intended to help you chose what distro best fits your needs.
|
||||
|
||||
Background: RHEL, CentOS, and Clones
|
||||
------------------------------------
|
||||
|
||||
These distributions are classified as enterprise operating systems and have a long operating lifetime of many years. By design, they will not have the latest and greatest versions of any package. Instead, stable packages are the emphasis.
|
||||
|
||||
Replacing any core package in these distributions with a newer package from a third party is expressly verboten. The ZoneMinder development team will not do this, and neither should you. If you have the perception that you've got to have a newer version of mysql, gnome, apache, etc. then, rather than upgrade these packages, you should instead consider using a different distribution such as Fedora.
|
||||
|
||||
The ZoneMinder team will not provide support for systems which have had any core package replaced with a package from a third party.
|
||||
|
||||
Background: Fedora
|
||||
------------------------------------
|
||||
|
||||
One can think of Fedora as RHEL or CentOS Beta. This is in fact, what it is. Fedora is primarily geared towards development and testing of newer, sometimes bleeding edge, packages. The ZoneMinder team uses this distro to determine the interoperability of ZoneMinder with the latest and greatest versions of packages like mysql, apache, systemd, and others. If a problem is detected, it will be addressed long before it makes it way into RHEL.
|
||||
|
||||
Fedora has a short life-cycle of just 6 months. However, Fedora, and consequently ZoneMinder, is available on armv7 architecture. Rejoice, Raspberry Pi users!
|
||||
|
||||
If you desire newer packages than what is available in RHEL or CentOS, you should consider using Fedora.
|
||||
|
||||
Zmrepo – A ZoneMinder RPM Repository
|
||||
------------------------------------
|
||||
|
||||
Zmrepo is a turn key solution. It will install all of ZoneMinder's dependencies for you. This is the easiest and the recommended way to install ZoneMinder on any system running a Redhat based distribution.
|
||||
|
||||
Zmrepo supports the two most recent, major, releases of each Redhat based distro.
|
||||
|
||||
The following notes are based on real problems which have occurred:
|
||||
|
||||
- Zmrepo assumes you have installed the underlying distrubution **using the official installation media for that distro**. Third party "Spins" are not supported and may not work correctly.
|
||||
|
||||
- ZoneMinder is intended to be installed in an environment dedicated to ZoneMinder. While ZoneMinder will play well with many applications, some invariably will not. Astericks is one such example.
|
||||
|
||||
- Be advised that you need to start with a clean system before using zmrepo.
|
||||
|
||||
- If you have previously installed ZoneMinder from-source, then your system is **NOT** clean. You must manually search for and delete all ZoneMinder related files before using zmrepo (look under /usr/local). Make uninstall helps, but it will not do this for you correctly. You WILL have problems if you ignore this step.
|
||||
|
||||
- It is not necessary, and not recommended, to install a LAMP stack ahead of time.
|
||||
|
||||
- Disable other third party repos and uninstall any of ZoneMinder's third party dependencies, which might already be on the system, especially ffmpeg and vlc. Attempting to install dependencies yourself often causes problems.
|
||||
|
||||
- Each ZoneMinder rpm includes a README file under /usr/share/doc. You must follow the all steps in this README file, precisely, each and every time ZoneMinder is installed or upgraded. **Failure to do so is guaranteed to result in a non-functional system.**
|
||||
|
||||
To begin the installation of ZoneMinder on your Redhat based distro, please navigate to: http://zmrepo.zoneminder.com
|
||||
|
||||
How to Build a (Custom) ZoneMinder Package
|
||||
------------------------------------------
|
||||
|
||||
If you are looking to do development or the packages in zmrepo just don't suit you, then you should follow these steps to learn how to build your own ZoneMinder RPM.
|
||||
|
||||
Background
|
||||
**********
|
||||
The following method documents how to build ZoneMinder into an RPM package, compatible with Fedora, Redhat, CentOS, and other compatible clones. This is exactly how the RPMS in zmrepo are built.
|
||||
|
||||
The method documented below was chosen because:
|
||||
|
||||
- All of ZoneMinder's dependencies are downloaded and installed automatically
|
||||
|
||||
- Cross platform capable. The build host does not have to be the same distro or release version as the target.
|
||||
|
||||
- Once your build environment is set up, few steps are required to run the build again in the future.
|
||||
|
||||
- Troubleshooting becomes easier if we are all building ZoneMinder the same way.
|
||||
|
||||
The build instructions below make use of a custom script called "buildzm.sh". Advanced users are encouraged to view the contents of this script. Notice that the script doesn't really do a whole lot. The goal of the script is to simply make the process a little easier for the first time user. Once you become familar with the build process, you can issue the mock commands found in the buildzm.sh script yourself if you so desire.
|
||||
|
||||
***IMPORTANT***
|
||||
Certain commands in these instructions require root privileges while other commands do not. Pay close attention to this. If the instructions below state to issue a command without a “sudo” prefix, then you should *not* be root while issuing the command. Getting this incorrect will result in a failed build.
|
||||
|
||||
Set Up Your Environment
|
||||
***********************
|
||||
Before you begin, set up an rpmbuild environment by following `this guide <http://wiki.centos.org/HowTos/SetupRpmBuildEnvironment>`_ by the CentOS developers.
|
||||
|
||||
Next, navigate to `Zmrepo <http://zmrepo.zoneminder.com/>`_, and follow the instructions to enable zmrepo on your system.
|
||||
|
||||
With zmrepo enabled, issue the following command:
|
||||
|
||||
::
|
||||
|
||||
sudo yum install zmrepo-mock-configs mock
|
||||
|
||||
|
||||
Add your user account to the group mock:
|
||||
|
||||
::
|
||||
|
||||
sudo gpasswd -a {your account name} mock
|
||||
|
||||
|
||||
Your build environment is now set up.
|
||||
|
||||
Build from SRPM
|
||||
***************
|
||||
To continue, you need a ZoneMinder SRPM. For starters, let's use one of the SRPMS from zmrepo. Go browse the `Zmrepo <http://zmrepo.zoneminder.com/>`_ site and choose an appropriate SRPM and place it into the ~/rpmbuild/SRPMS folder.
|
||||
|
||||
For CentOS 7, I have chosen the following SRPM:
|
||||
|
||||
::
|
||||
|
||||
wget -P ~/rpmbuild/SRPMS http://zmrepo.zoneminder.com/el/7/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm
|
||||
|
||||
|
||||
Now comes the fun part. To build ZoneMinder, issue the following command:
|
||||
|
||||
::
|
||||
|
||||
buildzm.sh zmrepo-el7-x86_64 ~/rpmbuild/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm
|
||||
|
||||
|
||||
Want to build ZoneMinder for Fedora, instead of CentOS, from the same host? Once you download the Fedora SRPM, issue the following:
|
||||
|
||||
::
|
||||
|
||||
buildzm.sh zmrepo-f21-x86_64 ~/rpmbuild/SRPMS/zoneminder-1.28.1-1.fc21.src.rpm
|
||||
|
||||
Notice that the buildzm.sh tool requires the following parameters:
|
||||
|
||||
::
|
||||
|
||||
buildzm.sh MOCKCONFIG ZONEMINDER_SRPM
|
||||
|
||||
The list of available Mock config files are available here:
|
||||
|
||||
::
|
||||
|
||||
ls /etc/mock/zmrepo*.cfg
|
||||
|
||||
|
||||
You choose the config file based on the desired distro (e.g. el6, el7, f20, f21) and basearch (e.g. x86, x86_64, arhmhfp). Notice that, when specifying the Mock config as a commandline parameter, you should leave off the ".cfg" filename extension.
|
||||
|
||||
Installation
|
||||
************
|
||||
Once the build completes, you will be presented with a folder containing the RPM's that were built. Copy the newly built ZoneMinder RPM to the desired system, enable zmrepo per the instruction on the `Zmrepo <http://zmrepo.zoneminder.com/>`_
|
||||
website, and then install the rpm by issuing the appropriate yum install command. Finish the installation by following the zoneminder setup instructions in the distro specific readme file, named README.{distroname}, which will be installed into the /usr/share/doc/zoneminder* folder.
|
||||
|
||||
Finally, you may want to consider editing the zmrepo repo file under /etc/yum.repos.d and placing an “exclude=zoneminder*” line into the config file. This will prevent your system from overwriting your manually built RPM with the ZoneMinder RPM found in the repo.
|
||||
|
||||
How to Modify the Source Prior to Build
|
||||
***************************************
|
||||
Before attempting this part of the instructions, make sure and follow the previous instructions for building one of the unmodified SRPMS from zmrepo. Knowing this part works will assist in troubleshooting should something go wrong.
|
||||
|
||||
These instructions may vary depending on what exactly you want to do. The following example assumes you want to build a development snapshot from the master branch.
|
||||
|
||||
From the previous instructions, we downloaded a CentOS 7 ZoneMinder SRPM and placed it into ~/rpmbuild/SRPMS. For this example, install it onto your system:
|
||||
|
||||
::
|
||||
|
||||
rpm -ivh ~/rpmbuild/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm
|
||||
|
||||
|
||||
IMPORTANT: This operation must be done with your normal user account. Do *not* perform this command as root.
|
||||
|
||||
Make sure you have git installed:
|
||||
|
||||
::
|
||||
|
||||
sudo yum install git
|
||||
|
||||
|
||||
Now clone the ZoneMinder git repository:
|
||||
|
||||
::
|
||||
|
||||
cd
|
||||
git clone https://github.com/ZoneMinder/ZoneMinder
|
||||
cd ZoneMinder
|
||||
git submodule init
|
||||
git submodule update
|
||||
|
||||
This will create a sub-folder called ZoneMinder, which will contain the latest development.
|
||||
|
||||
We want to turn this into a tarball, but first we need to figure out what to name it. Look here:
|
||||
|
||||
::
|
||||
|
||||
ls ~/rpmbuild/SOURCES
|
||||
|
||||
The tarball from the previsouly installed SRPM should be there. This is the name we will use. For this example, the name is ZoneMinder-1.28.1.tar.gz. From one folder above the local ZoneMinder git repository, execute the following:
|
||||
|
||||
::
|
||||
|
||||
mv ZoneMinder ZoneMinder-1.28.1
|
||||
tar -cvzf ~/rpmbuild/SOURCES/ZoneMinder-1.28.1.tar.gz ZoneMinder-1.28.1/*
|
||||
|
||||
The trailing "/\*" leaves off the hidden dot "." file and folders from the git repo, which is what we want.
|
||||
Note that we are overwriting the original tarball. If you wish to keep the original tarball then create a copy prior to creating the new tarball.
|
||||
|
||||
Now build a new src.rpm:
|
||||
|
||||
::
|
||||
|
||||
rpmbuild -bs --nodeps ~/rpmbuild/SPECS/zoneminder.el7.spec
|
||||
|
||||
This step will overwrite the SRPM you originally downloaded, so you may want to back it up prior to completing this step. Note that the name of the specfile will vary slightly depending on what distro you are building for.
|
||||
|
||||
You should now have a a new SRPM under ~/rpmbuild/SRPMS. In our example, the SRPM is called zoneminder-1.28.1-2.el7.centos.src.rpm. Now follow the previous instructions that describe how to use the buildzm script, using ~/rpmbuild/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm as the path to your SRPM.
|
||||
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
Ubuntu
|
||||
======
|
||||
Ubuntu Instruction
|
||||
===================
|
||||
|
||||
.. contents::
|
||||
|
||||
|
@ -286,192 +286,106 @@ Harder Way: Build Package From Source
|
|||
-------------------------------------------
|
||||
(These instructions assume installation from source on a ubuntu 15.x+ system)
|
||||
|
||||
**Step 1:** First make sure you have the needed tools
|
||||
**Step 1:** Grab the package installer script
|
||||
|
||||
::
|
||||
|
||||
wget https://raw.githubusercontent.com/ZoneMinder/ZoneMinder/master/utils/do_debian_package.sh
|
||||
chmod a+x do_debian_package.sh
|
||||
|
||||
|
||||
**Step 2:** Update the system
|
||||
|
||||
::
|
||||
|
||||
sudo apt-get update
|
||||
sudo apt-get install cmake git
|
||||
|
||||
**Step 2:** Next up make sure you have all the dependencies
|
||||
|
||||
**Step 3** Create the package
|
||||
|
||||
To build the latest master snapshot:
|
||||
|
||||
::
|
||||
|
||||
sudo apt-get install apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libpcre3 libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm automake autoconf libjpeg8-dev libjpeg8 apache2 libapache2-mod-php5 php5-cli libphp-serialization-perl libgnutls-dev libjpeg8-dev libavcodec-dev libavformat-dev libswscale-dev libavutil-dev libv4l-dev libtool ffmpeg libnetpbm10-dev libavdevice-dev libmime-lite-perl dh-autoreconf dpatch policykit-1 libpolkit-gobject-1-dev libextutils-pkgconfig-perl libcurl3 libvlc-dev libcurl4-openssl-dev curl php5-gd
|
||||
./do_debian_package.sh `lsb_release -a 2>/dev/null | grep Codename | awk '{print $2}'` `date +%Y%m%d`01 local master
|
||||
|
||||
(you are asked for the mysql root password when installing mysql server - put in a password that you'd like).
|
||||
|
||||
**Step 3:** Download ZoneMinder source code and compile+install:
|
||||
To build the latest stable release:
|
||||
|
||||
::
|
||||
|
||||
git clone https://github.com/ZoneMinder/ZoneMinder.git
|
||||
cd ZoneMinder/
|
||||
git submodule init
|
||||
git submodule update
|
||||
cmake .
|
||||
make
|
||||
sudo make install
|
||||
./do_debian_package.sh `lsb_release -a 2>/dev/null | grep Codename | awk '{print $2}'` `date +%Y%m%d`01 local stable
|
||||
|
||||
**Step 4:** Now make sure your symlinks to events and images are set correctly:
|
||||
|
||||
Note that the ``lsb_release -a 2>/dev/null | grep Codename | awk '{print $2}'`` part simply extracts your distribution name - like "vivid", "trusty" etc. You can always replace it by your distro name if you know it. As far as the script goes, it checks if your distro is "trusty" in which case it pulls in pre-systemd release configurations and if its not "trusty" it assumes its based on systemd and pulls in systemd related config files.
|
||||
|
||||
(At the end the script will ask if you want to retain the checked out version of zoneminder. If you are a developer and are making local changes, make sure you select "y" so that the next time you do the build process mentioned here, it keeps your changes. Selecting any other value than "y" or "Y" will delete the checked out code and only retain the package)
|
||||
|
||||
This should now create a bunch of .deb files
|
||||
|
||||
**Step 4:** Install the package
|
||||
|
||||
::
|
||||
|
||||
sudo ./zmlinkcontent.sh
|
||||
sudo gdebi zoneminder_<version>_<arch>.deb
|
||||
(example sudo gdebi zoneminder_1.29.0-vivid-2016012001_amd64.deb)
|
||||
|
||||
**Step 5:** Now lets make sure ZM has DB permissions to write to the DB:
|
||||
|
||||
**This will report DB errors - ignore - you need to configure the DB and some other stuff**
|
||||
|
||||
**Step 5:** Post install configuration
|
||||
|
||||
::
|
||||
|
||||
sudo mysql -uroot -p < /usr/share/zoneminder/db/zm_create.sql
|
||||
mysql -uroot -p -e "grant select,insert,update,delete,create,alter,index,lock tables on zm.* to 'zmuser'@localhost identified by 'zmpass';"
|
||||
|
||||
**Step 6:** Now lets create the DB & its tables that ZM needs
|
||||
|
||||
::
|
||||
|
||||
mysql -uroot -p <db/zm_create.sql
|
||||
|
||||
|
||||
**Step 7:** Now we need to make sure Ubuntu 15 is able to start/stop zoneminder via systemd:
|
||||
|
||||
::
|
||||
|
||||
sudo cp distros/ubuntu1504_cmake/zoneminder.service /lib/systemd/system
|
||||
|
||||
edit **/lib/systemd/system/zoneminder.service** file
|
||||
* rename **/usr/bin/zmpkg** to **/usr/local/bin/zmpkg** everywhere
|
||||
|
||||
(The step above is needed because when you compile from source, it installs to /usr/local/instead of /usr/)
|
||||
|
||||
**Step 8:** Now lets make sure systemd recognizes this file
|
||||
|
||||
::
|
||||
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable zoneminder.service
|
||||
|
||||
**Step 9:** Now lets work on Zoneminder's apache configuration:
|
||||
|
||||
::
|
||||
|
||||
sudo cp distros/ubuntu1504_cmake/conf/apache2/zoneminder.conf /etc/apache2/conf-available/
|
||||
sudo a2enmod cgi rewrite
|
||||
sudo a2enconf zoneminder
|
||||
sudo a2enmod cgi
|
||||
sudo a2enmod rewrite
|
||||
sudo service apache2 reload
|
||||
|
||||
|
||||
**Step 10:** Edit /etc/apache2/conf-available/zoneminder.conf and change **all** occurrences of:
|
||||
|
||||
* **/usr/lib/zoneminder/cgi-bin** to **/usr/local/libexec/zoneminder/cgi-bin**
|
||||
* **/usr/share/zoneminder** to **/usr/local/share/zoneminder**
|
||||
**Step 6:** Fix PHP TimeZone
|
||||
|
||||
After editing your /etc/apache2/conf-available/zoneminder.conf should look like:
|
||||
``sudo vi /etc/php5/apache2/php.ini``
|
||||
|
||||
Look for [Date] and inside it you will see a date.timezone that is commented. remove the comment and specific your timezone. Please make sure the timezone is valid (see http://php.net/manual/en/timezones.php)
|
||||
|
||||
Example:
|
||||
|
||||
``date.timezone = America/New_York``
|
||||
|
||||
**Step 7:** Fix some key permission issues and make sure API works
|
||||
|
||||
::
|
||||
|
||||
ScriptAlias /zm/cgi-bin "/usr/local/libexec/zoneminder/cgi-bin"
|
||||
<Directory "/usr/local/libexec/zoneminder/cgi-bin">
|
||||
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
|
||||
AllowOverride All
|
||||
Require all granted
|
||||
</Directory>
|
||||
sudo chown www-data /etc/zm/zm.conf
|
||||
sudo chown -R www-data /usr/share/zoneminder/www/api/
|
||||
|
||||
Alias /zm /usr/local/share/zoneminder/www
|
||||
<Directory /usr/local/share/zoneminder/www>
|
||||
php_flag register_globals off
|
||||
Options Indexes FollowSymLinks
|
||||
<IfModule mod_dir.c>
|
||||
DirectoryIndex index.php
|
||||
</IfModule>
|
||||
</Directory>
|
||||
|
||||
<Directory /usr/local/share/zoneminder/www/api>
|
||||
AllowOverride All
|
||||
</Directory>
|
||||
|
||||
**Step 11:** Now lets make sure ZM can read/write to the zoneminder directory:
|
||||
**Step 8:** Restart all services
|
||||
|
||||
::
|
||||
|
||||
sudo chown -R www-data:www-data /usr/local/share/zoneminder/
|
||||
sudo service apache2 restart
|
||||
sudo service zoneminder restart
|
||||
|
||||
|
||||
**Step 12:** Make sure you can view Monitor View
|
||||
|
||||
1. Open up ZM, configure your monitors and verify you can view Monitor feeds
|
||||
2. If not, open up ZM console in your browser, go to ``Options->Path`` and make sure ``PATH_ZMS`` is set to ``/zm/cgi-bin/nph-zms`` and restart ZM
|
||||
|
||||
**Step 13**: Edit Timezone in PHP
|
||||
|
||||
vi /etc/php5/apache2/php.ini
|
||||
Look for [Date] and inside it you will see a date.timezone
|
||||
that is commented. remove the comment and specific your timezone.
|
||||
Please make sure the timezone is valid (see http://php.net/manual/en/timezones.php)
|
||||
|
||||
In my case:
|
||||
Check if ZM is running properly
|
||||
|
||||
::
|
||||
|
||||
date.timezone = America/New_York
|
||||
|
||||
**Step 14:** Finally, lets make a config change to apache (needed for htaccess overrides to work for APIs)
|
||||
Edit /etc/apache2/apache2.conf and add this:
|
||||
|
||||
::
|
||||
|
||||
<Directory /usr/local/share>
|
||||
AllowOverride All
|
||||
Require all granted
|
||||
</Directory>
|
||||
|
||||
Restart apache
|
||||
|
||||
::
|
||||
|
||||
sudo service apache2 reload
|
||||
|
||||
You are done. Lets proceed to make sure everything works:
|
||||
|
||||
Making sure ZM and APIs work:
|
||||
|
||||
1. open up a browser and go to ``http://localhost/zm`` - should bring up ZM
|
||||
2. (OPTIONAL - just for peace of mind) open up a tab and go to ``http://localhost/zm/api`` - should bring up a screen showing CakePHP version with some green color boxes. Green is good. If you see red, or you don't see green, there may be a problem (should not happen). Ignore any warnings in yellow saying "DebugKit" not installed. You don't need it
|
||||
3. open up a tab in the same browser and go to ``http://localhost/zm/api/host/getVersion.json``
|
||||
|
||||
If it responds with something like:
|
||||
|
||||
::
|
||||
|
||||
{
|
||||
"version": "1.28.107",
|
||||
"apiversion": "1.28.107.1"
|
||||
}
|
||||
|
||||
Then your APIs are working
|
||||
|
||||
Make sure ZM and APIs work with security:
|
||||
1. Enable OPT_AUTH in ZM
|
||||
2. Log out of ZM in browser
|
||||
3. Open a NEW tab in the SAME BROWSER (important) and go to ``http://localhost/zm/api/host/getVersion.json`` - should give you "Unauthorized" along with a lot more of text
|
||||
4. Go to another tab in the SAME BROWSER (important) and log into ZM
|
||||
5. Repeat step 3 and it should give you the ZM and API version
|
||||
|
||||
**Congrats** your installation is complete
|
||||
|
||||
Suggested changes to MySQL (Optional but recommended)
|
||||
------------------------------------------------------
|
||||
For most of you Zoneminder will run just fine with the default MySQL settings. There are a couple of settings that may, in time, provide beneficial especially if you have a number of cameras and many events with a lot of files. One setting we recommend is the "innodb_file_per_table" This will be a default setting in MySQL 5.6 but should be added in MySQL 5.5 which comes with Ubuntu 14.04. A description can be found here: http://dev.mysql.com/doc/refman/5.5/en/innodb-multiple-tablespaces.html
|
||||
|
||||
To add "innodb_file_per_table" edit the my.cnf file:
|
||||
|
||||
``vi /etc/mysql/my.cnf``
|
||||
Under [mysqld] add
|
||||
``innodb_file_per_table``
|
||||
|
||||
Save and exit.
|
||||
|
||||
Restart MySQL
|
||||
``service mysql restart``
|
||||
sudo service zoneminder status
|
||||
|
||||
|
||||
**Step 9:** Make sure streaming works - set PATH_ZMS
|
||||
|
||||
open up ZM console in your browser, go to Options->Path and make sure ``PATH_ZMS`` is set to ``/zm/cgi-bin/nph-zms`` and restart ZM
|
||||
|
||||
|
||||
**Step 10:** Make sure everything works
|
||||
|
||||
* point your browser to http://yourzmip/zm - you should see ZM console running
|
||||
* point your browser to http://yourzmip/zm/api/host/getVersion.json - you should see an API version
|
||||
* Configure your monitors and make sure its all a-ok
|
||||
|
||||
|
||||
|
|
|
@ -90,7 +90,7 @@ Saving filters
|
|||
.. image:: images/filter-save.png
|
||||
:width: 400px
|
||||
|
||||
When saving filters, if you want the filter to run in the background make sure you select the "Run filter in background" option. When checked, ZoneMinder will make sure the filter is checked regularly. For example, if you want to be notified of new events by email, you sould make sure this is checked. Filters that are configured to run in the background have a "*" next to it.
|
||||
When saving filters, if you want the filter to run in the background make sure you select the "Run filter in background" option. When checked, ZoneMinder will make sure the filter is checked regularly. For example, if you want to be notified of new events by email, you should make sure this is checked. Filters that are configured to run in the background have a "*" next to it.
|
||||
|
||||
For example:
|
||||
|
||||
|
|
|
@ -65,9 +65,9 @@ own empty screen.
|
|||
* **B**: Click here to explore the various options of ZoneMinder and how to configure them. You already used this to enable authentication and change style above. Over time, you will find this to have many other things you will want to customize.
|
||||
* **C**: This link, when clicked, opens up a color coded log window of what is going on in Zoneminder and often gives you good insight into what is going wrong or right. Note that the color here is red - that is an indication that some error occurred in ZoneMinder. You should click it and investigate.
|
||||
* **D**: This is the core of ZoneMinder - recording events. It gives you a count of how many events were recorded over the hour, day, week, month.
|
||||
* **E**: These are the "Zones". Zones are areas within the camera that you mark as 'hotspots' for motion detection. Simply put, when you first configure your monitors (cameras), by default Zoneminder uses the entire field of view of the camera to detect motion. You may not want this. You may want to create "zones" specifically for detecting motion and ignore others. For example, lets consider a room with a fan that spins. You surely don't want to consider the fan moving continously a reason for triggering a record? Probably not - in that case, you'd leave the fan out while making your zones.
|
||||
* **E**: These are the "Zones". Zones are areas within the camera that you mark as 'hotspots' for motion detection. Simply put, when you first configure your monitors (cameras), by default Zoneminder uses the entire field of view of the camera to detect motion. You may not want this. You may want to create "zones" specifically for detecting motion and ignore others. For example, lets consider a room with a fan that spins. You surely don't want to consider the fan moving continuously a reason for triggering a record? Probably not - in that case, you'd leave the fan out while making your zones.
|
||||
* **F**: This is the "source" column that tells you the type of the camera - if its an IP camera, a USB camera or more. In this example, they are all IP cameras. Note the color red on item F ? Well that means there is something wrong with that camera. No wonder the log also shows red. Good indication for you to tap on logs and investigate
|
||||
* **G**: This defines how Zoneminder will record events. There are various modes. In brief Modect == record if a motion is detected,Record = always record 24x7, Mocord = always record PLUS detect motion, Monitor = just provide a live view but don't record anytime, Modect = Don't record till an externa entity via zmtrigger tells Zoneminder to (this is advanced usage).
|
||||
* **G**: This defines how Zoneminder will record events. There are various modes. In brief Modect == record if a motion is detected,Record = always record 24x7, Mocord = always record PLUS detect motion, Monitor = just provide a live view but don't record anytime, Nodect = Don't record till an externa entity via zmtrigger tells Zoneminder to (this is advanced usage).
|
||||
* **H**: If you click on these links you can view a "Montage" of all your configured monitors or cycle through each one
|
||||
|
||||
|
||||
|
|
|
@ -25,9 +25,9 @@ FORCED_ALARM_SCORE - The 'zmu' utility can be used to force an alarm on a monito
|
|||
|
||||
BULK_FRAME_INTERVAL - Traditionally ZoneMinder writes an entry into the Frames database table for each frame that is captured and saved. This works well in motion detection scenarios but when in a DVR situation ('Record' or 'Mocord' mode) this results in a huge number of frame writes and a lot of database and disk bandwidth for very little additional information. Setting this to a non-zero value will enabled ZoneMinder to group these non-alarm frames into one 'bulk' frame entry which saves a lot of bandwidth and space. The only disadvantage of this is that timing information for individual frames is lost but in constant frame rate situations this is usually not significant. This setting is ignored in Modect mode and individual frames are still written if an alarm occurs in Mocord mode also.
|
||||
|
||||
EVENT_CLOSE_MODE - When a monitor is running in a continuous recording mode (Record or Mocord) events are usually closed after a fixed period of time (the section length). However in Mocord mode it is possible that motion detection may occur near the end of a section. This option controls what happens when an alarm occurs in Mocord mode. The 'time' setting means that the event will be closed at the end of the section regardless of alarm activity. The 'idle' setting means that the event will be closed at the end of the section if there is no alarm activity occuring at the time otherwise it will be closed once the alarm is over meaning the event may end up being longer than the normal section length. The 'alarm' setting means that if an alarm occurs during the event, the event will be closed once the alarm is over regardless of when this occurs. This has the effect of limiting the number of alarms to one per event and the events will be shorter than the section length if an alarm has occurred.
|
||||
EVENT_CLOSE_MODE - When a monitor is running in a continuous recording mode (Record or Mocord) events are usually closed after a fixed period of time (the section length). However in Mocord mode it is possible that motion detection may occur near the end of a section. This option controls what happens when an alarm occurs in Mocord mode. The 'time' setting means that the event will be closed at the end of the section regardless of alarm activity. The 'idle' setting means that the event will be closed at the end of the section if there is no alarm activity occurring at the time otherwise it will be closed once the alarm is over meaning the event may end up being longer than the normal section length. The 'alarm' setting means that if an alarm occurs during the event, the event will be closed once the alarm is over regardless of when this occurs. This has the effect of limiting the number of alarms to one per event and the events will be shorter than the section length if an alarm has occurred.
|
||||
|
||||
CREATE_ANALYSIS_IMAGES - By default during an alarm ZoneMinder records both the raw captured image and one that has been analysed and had areas where motion was detected outlined. This can be very useful during zone configuration or in analysing why events occured. However it also incurs some overhead and in a stable system may no longer be necessary. This parameter allows you to switch the generation of these images off.
|
||||
CREATE_ANALYSIS_IMAGES - By default during an alarm ZoneMinder records both the raw captured image and one that has been analysed and had areas where motion was detected outlined. This can be very useful during zone configuration or in analysing why events occurred. However it also incurs some overhead and in a stable system may no longer be necessary. This parameter allows you to switch the generation of these images off.
|
||||
|
||||
WEIGHTED_ALARM_CENTRES - ZoneMinder will always calculate the centre point of an alarm in a zone to give some indication of where on the screen it is. This can be used by the experimental motion tracking feature or your own custom extensions. In the alarmed or filtered pixels mode this is a simple midpoint between the extents of the detected pxiesl. However in the blob method this can instead be calculated using weighted pixel locations to give more accurate positioning for irregularly shaped blobs. This method, while more precise is also slower and so is turned off by default.
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Options - Servers
|
||||
---------------
|
||||
-----------------
|
||||
|
||||
.. image:: images/Options_Servers.png
|
||||
|
||||
|
|
|
@ -25,9 +25,9 @@ FILTER_EXECUTE_INTERVAL - ZoneMinder allows you to save filters to the database
|
|||
|
||||
MAX_RESTART_DELAY - The zmdc (zm daemon control) process controls when processeses are started or stopped and will attempt to restart any that fail. If a daemon fails frequently then a delay is introduced between each restart attempt. If the daemon stills fails then this delay is increased to prevent extra load being placed on the system by continual restarts. This option controls what this maximum delay is.
|
||||
|
||||
WATCH_CHECK_INTERVAL - The zmwatch daemon checks the image capture performance of the capture daemons to ensure that they have not locked up (rarely a sync error may occur which blocks indefinately). This option determines how often the daemons are checked.
|
||||
WATCH_CHECK_INTERVAL - The zmwatch daemon checks the image capture performance of the capture daemons to ensure that they have not locked up (rarely a sync error may occur which blocks indefinitely). This option determines how often the daemons are checked.
|
||||
|
||||
WATCH_MAX_DELAY - The zmwatch daemon checks the image capture performance of the capture daemons to ensure that they have not locked up (rarely a sync error may occur which blocks indefinately). This option determines the maximum delay to allow since the last captured frame. The daemon will be restarted if it has not captured any images after this period though the actual restart may take slightly longer in conjunction with the check interval value above.
|
||||
WATCH_MAX_DELAY - The zmwatch daemon checks the image capture performance of the capture daemons to ensure that they have not locked up (rarely a sync error may occur which blocks indefinitely). This option determines the maximum delay to allow since the last captured frame. The daemon will be restarted if it has not captured any images after this period though the actual restart may take slightly longer in conjunction with the check interval value above.
|
||||
|
||||
RUN_AUDIT - The zmaudit daemon exists to check that the saved information in the database and on the filesystem match and are consistent with each other. If an error occurs or if you are using 'fast deletes' it may be that database records are deleted but files remain. In this case, and similar, zmaudit will remove redundant information to synchronise the two data stores. This option controls whether zmaudit is run in the background and performs these checks and fixes continuously. This is recommended for most systems however if you have a very large number of events the process of scanning the database and filesystem may take a long time and impact performance. In this case you may prefer to not have zmaudit running unconditionally and schedule occasional checks at other, more convenient, times.
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ UPLOAD_PORT - You can use filters to instruct ZoneMinder to upload events to a r
|
|||
|
||||
UPLOAD_USER - You can use filters to instruct ZoneMinder to upload events to a remote server. This option indicates the username that ZoneMinder should use to log in for transfer.
|
||||
|
||||
UPLOAD_PASS - You can use filters to instruct ZoneMinder to upload events to a remote server. This option indicates the password that ZoneMinder should use to log in for transfer. If you are using certicate based logins for SFTP servers you can leave this option blank.
|
||||
UPLOAD_PASS - You can use filters to instruct ZoneMinder to upload events to a remote server. This option indicates the password that ZoneMinder should use to log in for transfer. If you are using certificate based logins for SFTP servers you can leave this option blank.
|
||||
|
||||
UPLOAD_LOC_DIR - You can use filters to instruct ZoneMinder to upload events to a remote server. This option indicates the local directory that ZoneMinder should use for temporary upload files. These are files that are created from events, uploaded and then deleted.
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ Options - X10
|
|||
|
||||
OPT_X10 - If you have an X10 Home Automation setup in your home you can use ZoneMinder to initiate or react to X10 signals if your computer has the appropriate interface controller. This option indicates whether X10 options will be available in the browser client.
|
||||
|
||||
X10_DEVICE - If you have an X10 controller device (e.g. XM10U) connected to your computer this option details which port it is conected on, the default of /dev/ttyS0 maps to serial or com port 1.
|
||||
X10_DEVICE - If you have an X10 controller device (e.g. XM10U) connected to your computer this option details which port it is connected on, the default of /dev/ttyS0 maps to serial or com port 1.
|
||||
|
||||
X10_HOUSE_CODE - X10 devices are grouped together by identifying them as all belonging to one House Code. This option details what that is. It should be a single letter between A and P.
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ Here is an example of viewing an event stream:
|
|||
* **A**: Administrative Event options on the event including viewing individual frames
|
||||
* **B**: The actual image stream
|
||||
* **C**: Navigation control
|
||||
* **D**: You can switch between watching a single event or Continous mode (where it advances to the next event after playback is complete)
|
||||
* **D**: You can switch between watching a single event or Continuous mode (where it advances to the next event after playback is complete)
|
||||
* **E**: Event progress bar - how much of the current event has been played back
|
||||
|
||||
You will notice for the first time that alarm images now contain an overlay outlining the blobs that represent the alarmed area. This outline is in the colour defined for that zone and lets you see what it was that caused the alarm. Clicking on one of the thumbnails will take you to a full size window where you can see the image in all its detail and scroll through the various images that make up the event. If you have the ZM_RECORD_EVENT_STATS option on, you will be able to click the 'Stats' link here and get some analysis of the cause of the event.
|
||||
|
|
|
@ -0,0 +1,102 @@
|
|||
ZoneMinder ONVIF support
|
||||
|
||||
Copyright (C) 2016 Jan M. Hochstein
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
--------------------------------------------------------------------------
|
||||
|
||||
1. PURPOSE
|
||||
----------
|
||||
|
||||
The files in this folder and its subfolders add ONVIF support to zoneminder.
|
||||
The ONVIF consortium (www.onvif.org) publishes the ONVIF specifications. These
|
||||
specifications describe ways of connecting to and communicating with network
|
||||
video devices. Hardware and software that adhere to these specifications are
|
||||
meant to be interoperable.
|
||||
|
||||
|
||||
2. SUBFOLDERS
|
||||
-------------
|
||||
|
||||
doc/ - Documentation
|
||||
modules/ - perl modules necessary for SOAP communication
|
||||
proxy/ - perl SOAP proxy modules generated according to the ONVIF
|
||||
specifications
|
||||
scripts/ - application logic
|
||||
wsdl/ - (empty) this is only used during the proxy generation process
|
||||
|
||||
|
||||
3. LICENSE
|
||||
----------
|
||||
Any files in this folder and its subfolders are published under the same
|
||||
license as this file if they do not carry additional license information.
|
||||
|
||||
|
||||
4. PROXY GENERATION
|
||||
-------------------
|
||||
|
||||
SOAP messages use XML format and need to comply to the schema expected by the
|
||||
receiver. While it is possible to build messages through string concatenation
|
||||
it is impractical for all but testing purposes.
|
||||
Here we use SOAP proxy modules generated by the script wsdl2perl.pl from the
|
||||
SOAP::WSDL module (http://search.cpan.org/~mkutter/SOAP-WSDL-2.00.10/)
|
||||
version 2.00.10.
|
||||
|
||||
A - Get the input files.
|
||||
|
||||
Download these files and any web service (.wsdl) or schema (.xsd)
|
||||
files referenced therein into the wsdl/ subfolder.
|
||||
|
||||
http://www.onvif.org/onvif/ver10/device/wsdl/devicemgmt.wsdl
|
||||
http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl
|
||||
http://www.onvif.org/onvif/ver20/ptz/wsdl/ptz.wsdl
|
||||
http://www.onvif.org/onvif/ver20/analytics/wsdl/analytics.wsdl
|
||||
|
||||
The complete list of files we have during build is:
|
||||
|
||||
analytics.wsdl
|
||||
b-2.xsd
|
||||
bf-2.xsd
|
||||
br-2.xsd
|
||||
brw-2.wsdl
|
||||
bw-2.wsdl
|
||||
devicemgmt.wsdl
|
||||
media.wsdl
|
||||
onvif.xsd
|
||||
ptz.wsdl
|
||||
r-2.xsd
|
||||
rw-2.wsdl
|
||||
soap-envelop.xsd
|
||||
t-1.xsd
|
||||
wsdd-discovery-1.1-schema-os.xsd
|
||||
wsdd-discovery-1.1-wsdl-os.wsdl
|
||||
wsdiscovery-udp.wsdl
|
||||
wsdl11soap12.xsd
|
||||
wsdl.xsd
|
||||
wsnotification.wsdl
|
||||
xmlmime.xsd
|
||||
xop-include.xsd
|
||||
|
||||
B - Generate the proxy modules using these commands.
|
||||
|
||||
wsdl2perl.pl -p ONVIF::Device:: -b proxy/lib file:wsdl/devicemgmt.wsdl
|
||||
wsdl2perl.pl -p ONVIF::Media:: -b proxy/lib file:wsdl/media.wsdl
|
||||
wsdl2perl.pl -p ONVIF::PTZ:: -b proxy/lib file:wsdl/ptz.wsdl
|
||||
wsdl2perl.pl -p ONVIF::Event:: -b proxy/lib file:wsdl/event.wsdl
|
||||
wsdl2perl.pl -p ONVIF::Analytics:: -b proxy/lib file:wsdl/analytics.wsdl
|
||||
wsdl2perl.pl -p WSDiscovery:: -b proxy/lib file:wsdl/wsdiscovery-udp.wsdl
|
||||
wsdl2perl.pl -p WSNotification:: -b proxy/lib file:wsdl/wsnotification.wsdl
|
||||
|
||||
I had to tweak SOAP::WSDL a little bit to get correct proxies.
|
|
@ -9,7 +9,7 @@ endif(NOT (CMAKE_BINARY_DIR STREQUAL CMAKE_SOURCE_DIR))
|
|||
# MAKEMAKER_NOECHO_COMMAND previously defined in /scripts/zoneminder/CMakeLists.txt
|
||||
|
||||
# Add build target for the perl modules
|
||||
add_custom_target(zmonvifmodules ALL perl Makefile.PL ${ZM_PERL_MM_PARMS} FIRST_MAKEFILE=MakefilePerl DESTDIR="${CMAKE_CURRENT_BINARY_DIR}/output" ${MAKEMAKER_NOECHO_COMMAND} COMMAND make --makefile=MakefilePerl pure_install COMMENT "Building ZoneMinder perl ONVIF proxy module")
|
||||
add_custom_target(zmonvifmodules ALL perl Makefile.PL ${ZM_PERL_MM_PARMS} FIRST_MAKEFILE=MakefilePerl DESTDIR="${CMAKE_CURRENT_BINARY_DIR}/output" ${MAKEMAKER_NOECHO_COMMAND} COMMAND make -f MakefilePerl pure_install COMMENT "Building ZoneMinder perl ONVIF proxy module")
|
||||
|
||||
# Add install target for the perl modules
|
||||
install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/output/" DESTINATION "/")
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# ==========================================================================
|
||||
#
|
||||
# ZoneMinder ONVIF Client module
|
||||
# Copyright (C) Jan M. Hochstein
|
||||
# Copyright (C) 2014 Jan M. Hochstein
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
|
|
|
@ -1,4 +1,27 @@
|
|||
#!/usr/bin/perl
|
||||
# ==========================================================================
|
||||
#
|
||||
# ZoneMinder ONVIF Client module
|
||||
# Copyright (C) 2014 Jan M. Hochstein
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# ==========================================================================
|
||||
#
|
||||
# This module contains the implementation of a SOAP message parser
|
||||
#
|
||||
|
||||
package ONVIF::Deserializer::MessageParser;
|
||||
use strict; use warnings;
|
||||
|
||||
|
|
|
@ -1,3 +1,27 @@
|
|||
# ==========================================================================
|
||||
#
|
||||
# ZoneMinder ONVIF Client module
|
||||
# Copyright (C) 2014 Jan M. Hochstein
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# ==========================================================================
|
||||
#
|
||||
# This module contains the implementation of a SOAP deserializer
|
||||
#
|
||||
|
||||
package ONVIF::Deserializer::XSD;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
|
|
@ -1,4 +1,27 @@
|
|||
#!/usr/bin/perl -w
|
||||
# ==========================================================================
|
||||
#
|
||||
# ZoneMinder ONVIF Client module
|
||||
# Copyright (C) 2014 Jan M. Hochstein
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# ==========================================================================
|
||||
#
|
||||
# This module contains the base class for the SOAP serializers
|
||||
#
|
||||
|
||||
package ONVIF::Serializer::Base;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
|
|
@ -1,4 +1,27 @@
|
|||
#!/usr/bin/perl -w
|
||||
# ==========================================================================
|
||||
#
|
||||
# ZoneMinder ONVIF Client module
|
||||
# Copyright (C) 2014 Jan M. Hochstein
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# ==========================================================================
|
||||
#
|
||||
# This module contains the SOAP 1.1 serializer
|
||||
#
|
||||
|
||||
package ONVIF::Serializer::SOAP11;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
|
|
@ -1,4 +1,27 @@
|
|||
#!/usr/bin/perl -w
|
||||
# ==========================================================================
|
||||
#
|
||||
# ZoneMinder ONVIF Client module
|
||||
# Copyright (C) 2014 Jan M. Hochstein
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# ==========================================================================
|
||||
#
|
||||
# This module contains the SOAP 1.2 serializer
|
||||
#
|
||||
|
||||
package ONVIF::Serializer::SOAP12;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# ==========================================================================
|
||||
#
|
||||
# Perl WS-Discovery implementation
|
||||
# Copyright (C) Jan M. Hochstein
|
||||
# Copyright (C) 2014 Jan M. Hochstein
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# ==========================================================================
|
||||
#
|
||||
# Perl WS-Security header for SOAP::WSDL
|
||||
# Copyright (C) Jan M. Hochstein
|
||||
# Copyright (C) 2014 Jan M. Hochstein
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
|
@ -26,7 +26,7 @@ use strict;
|
|||
use warnings;
|
||||
use SOAP::WSDL::Factory::Serializer;
|
||||
use Time::Local;
|
||||
use Digest::SHA1;
|
||||
use Digest::SHA;
|
||||
use MIME::Base64;
|
||||
|
||||
|
||||
|
@ -94,7 +94,7 @@ sub ws_authen {
|
|||
my $nonce = $nonce_generator->();
|
||||
my $timestamp = timestamp();
|
||||
|
||||
my $pwDigest = Digest::SHA1::sha1( $nonce . $timestamp . $password );
|
||||
my $pwDigest = Digest::SHA::sha1( $nonce . $timestamp . $password );
|
||||
my $passwordHash = MIME::Base64::encode_base64($pwDigest,"");
|
||||
my $nonceHash = MIME::Base64::encode_base64($nonce,"");
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ endif(NOT (CMAKE_BINARY_DIR STREQUAL CMAKE_SOURCE_DIR))
|
|||
# MAKEMAKER_NOECHO_COMMAND previously defined in /scripts/zoneminder/CMakeLists.txt
|
||||
|
||||
# Add build target for the perl modules
|
||||
add_custom_target(zmonvifproxy ALL perl Makefile.PL ${ZM_PERL_MM_PARMS} FIRST_MAKEFILE=MakefilePerl DESTDIR="${CMAKE_CURRENT_BINARY_DIR}/output" ${MAKEMAKER_NOECHO_COMMAND} COMMAND make --makefile=MakefilePerl pure_install COMMENT "Building ZoneMinder perl ONVIF proxy module")
|
||||
add_custom_target(zmonvifproxy ALL perl Makefile.PL ${ZM_PERL_MM_PARMS} FIRST_MAKEFILE=MakefilePerl DESTDIR="${CMAKE_CURRENT_BINARY_DIR}/output" ${MAKEMAKER_NOECHO_COMMAND} COMMAND make -f MakefilePerl pure_install COMMENT "Building ZoneMinder perl ONVIF proxy module")
|
||||
|
||||
# Add install target for the perl modules
|
||||
install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/output/" DESTINATION "/")
|
||||
|
|
|
@ -0,0 +1,54 @@
|
|||
|
||||
package ONVIF::Analytics::Attributes::actor;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://schemas.xmlsoap.org/soap/envelope/' }
|
||||
|
||||
__PACKAGE__->__set_name('actor');
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Attribute
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::anyURI
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Attributes::actor
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined attribute
|
||||
actor from the namespace http://schemas.xmlsoap.org/soap/envelope/.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Attributes::actor->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ value => $value }
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
|
||||
package ONVIF::Analytics::Attributes::contentType;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.w3.org/2005/05/xmlmime' }
|
||||
|
||||
__PACKAGE__->__set_name('contentType');
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
# atomic simpleType: <attribute><simpleType
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Attribute
|
||||
);
|
||||
# derivation by restriction
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Attributes::contentType
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined attribute
|
||||
contentType from the namespace http://www.w3.org/2005/05/xmlmime.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
This XML element type class has a atomic simpleType as it's base:
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Attributes::contentType->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ value => $value }
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,54 @@
|
|||
|
||||
package ONVIF::Analytics::Attributes::encodingStyle;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://schemas.xmlsoap.org/soap/envelope/' }
|
||||
|
||||
__PACKAGE__->__set_name('encodingStyle');
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Attribute
|
||||
ONVIF::Analytics::Types::encodingStyle
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Attributes::encodingStyle
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined attribute
|
||||
encodingStyle from the namespace http://schemas.xmlsoap.org/soap/envelope/.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Attributes::encodingStyle->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ value => $value }
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,54 @@
|
|||
|
||||
package ONVIF::Analytics::Attributes::expectedContentTypes;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.w3.org/2005/05/xmlmime' }
|
||||
|
||||
__PACKAGE__->__set_name('expectedContentTypes');
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Attribute
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::string
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Attributes::expectedContentTypes
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined attribute
|
||||
expectedContentTypes from the namespace http://www.w3.org/2005/05/xmlmime.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Attributes::expectedContentTypes->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ value => $value }
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
|
||||
package ONVIF::Analytics::Attributes::mustUnderstand;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://schemas.xmlsoap.org/soap/envelope/' }
|
||||
|
||||
__PACKAGE__->__set_name('mustUnderstand');
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
# atomic simpleType: <attribute><simpleType
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Attribute
|
||||
);
|
||||
# derivation by restriction
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Builtin::boolean);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Attributes::mustUnderstand
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined attribute
|
||||
mustUnderstand from the namespace http://schemas.xmlsoap.org/soap/envelope/.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
This XML element type class has a atomic simpleType as it's base:
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Attributes::mustUnderstand->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ value => $value }
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::AudioDecoderConfiguration;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver10/schema' }
|
||||
|
||||
__PACKAGE__->__set_name('AudioDecoderConfiguration');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::AudioDecoderConfiguration
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::AudioDecoderConfiguration
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
AudioDecoderConfiguration from the namespace http://www.onvif.org/ver10/schema.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::AudioDecoderConfiguration->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::AudioDecoderConfiguration
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,72 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::AudioEncoderConfiguration;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver10/schema' }
|
||||
|
||||
__PACKAGE__->__set_name('AudioEncoderConfiguration');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::AudioEncoderConfiguration
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::AudioEncoderConfiguration
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
AudioEncoderConfiguration from the namespace http://www.onvif.org/ver10/schema.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::AudioEncoderConfiguration->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::AudioEncoderConfiguration
|
||||
Encoding => $some_value, # AudioEncoding
|
||||
Bitrate => $some_value, # int
|
||||
SampleRate => $some_value, # int
|
||||
Multicast => { # ONVIF::Analytics::Types::MulticastConfiguration
|
||||
Address => { # ONVIF::Analytics::Types::IPAddress
|
||||
Type => $some_value, # IPType
|
||||
IPv4Address => $some_value, # IPv4Address
|
||||
IPv6Address => $some_value, # IPv6Address
|
||||
},
|
||||
Port => $some_value, # int
|
||||
TTL => $some_value, # int
|
||||
AutoStart => $some_value, # boolean
|
||||
},
|
||||
SessionTimeout => $some_value, # duration
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::AudioOutputConfiguration;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver10/schema' }
|
||||
|
||||
__PACKAGE__->__set_name('AudioOutputConfiguration');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::AudioOutputConfiguration
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::AudioOutputConfiguration
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
AudioOutputConfiguration from the namespace http://www.onvif.org/ver10/schema.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::AudioOutputConfiguration->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::AudioOutputConfiguration
|
||||
OutputToken => $some_value, # ReferenceToken
|
||||
SendPrimacy => $some_value, # anyURI
|
||||
OutputLevel => $some_value, # int
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::AudioSourceConfiguration;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver10/schema' }
|
||||
|
||||
__PACKAGE__->__set_name('AudioSourceConfiguration');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::AudioSourceConfiguration
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::AudioSourceConfiguration
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
AudioSourceConfiguration from the namespace http://www.onvif.org/ver10/schema.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::AudioSourceConfiguration->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::AudioSourceConfiguration
|
||||
SourceToken => $some_value, # ReferenceToken
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::Body;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://schemas.xmlsoap.org/soap/envelope/' }
|
||||
|
||||
__PACKAGE__->__set_name('Body');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::Body
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::Body
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
Body from the namespace http://schemas.xmlsoap.org/soap/envelope/.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::Body->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::Body
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::Capabilities;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('Capabilities');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::Capabilities
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::Capabilities
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
Capabilities from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::Capabilities->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::Capabilities
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::CreateAnalyticsModules;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('CreateAnalyticsModules');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %ConfigurationToken_of :ATTR(:get<ConfigurationToken>);
|
||||
my %AnalyticsModule_of :ATTR(:get<AnalyticsModule>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( ConfigurationToken
|
||||
AnalyticsModule
|
||||
|
||||
) ],
|
||||
{
|
||||
'ConfigurationToken' => \%ConfigurationToken_of,
|
||||
'AnalyticsModule' => \%AnalyticsModule_of,
|
||||
},
|
||||
{
|
||||
'ConfigurationToken' => 'ONVIF::Analytics::Types::ReferenceToken',
|
||||
'AnalyticsModule' => 'ONVIF::Analytics::Types::Config',
|
||||
},
|
||||
{
|
||||
|
||||
'ConfigurationToken' => 'ConfigurationToken',
|
||||
'AnalyticsModule' => 'AnalyticsModule',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::CreateAnalyticsModules
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
CreateAnalyticsModules from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * ConfigurationToken
|
||||
|
||||
$element->set_ConfigurationToken($data);
|
||||
$element->get_ConfigurationToken();
|
||||
|
||||
|
||||
|
||||
|
||||
=item * AnalyticsModule
|
||||
|
||||
$element->set_AnalyticsModule($data);
|
||||
$element->get_AnalyticsModule();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::CreateAnalyticsModules->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
ConfigurationToken => $some_value, # ReferenceToken
|
||||
AnalyticsModule => { # ONVIF::Analytics::Types::Config
|
||||
Parameters => { # ONVIF::Analytics::Types::ItemList
|
||||
SimpleItem => ,
|
||||
ElementItem => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListExtension
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::CreateAnalyticsModulesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('CreateAnalyticsModulesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
# There's no variety - empty complexType
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
__PACKAGE__->_factory();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::CreateAnalyticsModulesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
CreateAnalyticsModulesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::CreateAnalyticsModulesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
,
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::CreateRules;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('CreateRules');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %ConfigurationToken_of :ATTR(:get<ConfigurationToken>);
|
||||
my %Rule_of :ATTR(:get<Rule>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( ConfigurationToken
|
||||
Rule
|
||||
|
||||
) ],
|
||||
{
|
||||
'ConfigurationToken' => \%ConfigurationToken_of,
|
||||
'Rule' => \%Rule_of,
|
||||
},
|
||||
{
|
||||
'ConfigurationToken' => 'ONVIF::Analytics::Types::ReferenceToken',
|
||||
'Rule' => 'ONVIF::Analytics::Types::Config',
|
||||
},
|
||||
{
|
||||
|
||||
'ConfigurationToken' => 'ConfigurationToken',
|
||||
'Rule' => 'Rule',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::CreateRules
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
CreateRules from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * ConfigurationToken
|
||||
|
||||
$element->set_ConfigurationToken($data);
|
||||
$element->get_ConfigurationToken();
|
||||
|
||||
|
||||
|
||||
|
||||
=item * Rule
|
||||
|
||||
$element->set_Rule($data);
|
||||
$element->get_Rule();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::CreateRules->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
ConfigurationToken => $some_value, # ReferenceToken
|
||||
Rule => { # ONVIF::Analytics::Types::Config
|
||||
Parameters => { # ONVIF::Analytics::Types::ItemList
|
||||
SimpleItem => ,
|
||||
ElementItem => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListExtension
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::CreateRulesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('CreateRulesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
# There's no variety - empty complexType
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
__PACKAGE__->_factory();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::CreateRulesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
CreateRulesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::CreateRulesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
,
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,135 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::DeleteAnalyticsModules;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('DeleteAnalyticsModules');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %ConfigurationToken_of :ATTR(:get<ConfigurationToken>);
|
||||
my %AnalyticsModuleName_of :ATTR(:get<AnalyticsModuleName>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( ConfigurationToken
|
||||
AnalyticsModuleName
|
||||
|
||||
) ],
|
||||
{
|
||||
'ConfigurationToken' => \%ConfigurationToken_of,
|
||||
'AnalyticsModuleName' => \%AnalyticsModuleName_of,
|
||||
},
|
||||
{
|
||||
'ConfigurationToken' => 'ONVIF::Analytics::Types::ReferenceToken',
|
||||
'AnalyticsModuleName' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
|
||||
},
|
||||
{
|
||||
|
||||
'ConfigurationToken' => 'ConfigurationToken',
|
||||
'AnalyticsModuleName' => 'AnalyticsModuleName',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::DeleteAnalyticsModules
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
DeleteAnalyticsModules from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * ConfigurationToken
|
||||
|
||||
$element->set_ConfigurationToken($data);
|
||||
$element->get_ConfigurationToken();
|
||||
|
||||
|
||||
|
||||
|
||||
=item * AnalyticsModuleName
|
||||
|
||||
$element->set_AnalyticsModuleName($data);
|
||||
$element->get_AnalyticsModuleName();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::DeleteAnalyticsModules->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
ConfigurationToken => $some_value, # ReferenceToken
|
||||
AnalyticsModuleName => $some_value, # string
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::DeleteAnalyticsModulesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('DeleteAnalyticsModulesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
# There's no variety - empty complexType
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
__PACKAGE__->_factory();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::DeleteAnalyticsModulesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
DeleteAnalyticsModulesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::DeleteAnalyticsModulesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
,
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,135 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::DeleteRules;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('DeleteRules');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %ConfigurationToken_of :ATTR(:get<ConfigurationToken>);
|
||||
my %RuleName_of :ATTR(:get<RuleName>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( ConfigurationToken
|
||||
RuleName
|
||||
|
||||
) ],
|
||||
{
|
||||
'ConfigurationToken' => \%ConfigurationToken_of,
|
||||
'RuleName' => \%RuleName_of,
|
||||
},
|
||||
{
|
||||
'ConfigurationToken' => 'ONVIF::Analytics::Types::ReferenceToken',
|
||||
'RuleName' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
|
||||
},
|
||||
{
|
||||
|
||||
'ConfigurationToken' => 'ConfigurationToken',
|
||||
'RuleName' => 'RuleName',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::DeleteRules
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
DeleteRules from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * ConfigurationToken
|
||||
|
||||
$element->set_ConfigurationToken($data);
|
||||
$element->get_ConfigurationToken();
|
||||
|
||||
|
||||
|
||||
|
||||
=item * RuleName
|
||||
|
||||
$element->set_RuleName($data);
|
||||
$element->get_RuleName();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::DeleteRules->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
ConfigurationToken => $some_value, # ReferenceToken
|
||||
RuleName => $some_value, # string
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::DeleteRulesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('DeleteRulesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
# There's no variety - empty complexType
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
__PACKAGE__->_factory();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::DeleteRulesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
DeleteRulesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::DeleteRulesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
,
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::Envelope;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://schemas.xmlsoap.org/soap/envelope/' }
|
||||
|
||||
__PACKAGE__->__set_name('Envelope');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::Envelope
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::Envelope
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
Envelope from the namespace http://schemas.xmlsoap.org/soap/envelope/.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::Envelope->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::Envelope
|
||||
Header => { # ONVIF::Analytics::Types::Header
|
||||
},
|
||||
Body => { # ONVIF::Analytics::Types::Body
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::Fault;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://schemas.xmlsoap.org/soap/envelope/' }
|
||||
|
||||
__PACKAGE__->__set_name('Fault');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::Fault
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::Fault
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
Fault from the namespace http://schemas.xmlsoap.org/soap/envelope/.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::Fault->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::Fault
|
||||
faultcode => $some_value, # QName
|
||||
faultstring => $some_value, # string
|
||||
faultactor => $some_value, # anyURI
|
||||
detail => { # ONVIF::Analytics::Types::detail
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::GetAnalyticsModules;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('GetAnalyticsModules');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %ConfigurationToken_of :ATTR(:get<ConfigurationToken>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( ConfigurationToken
|
||||
|
||||
) ],
|
||||
{
|
||||
'ConfigurationToken' => \%ConfigurationToken_of,
|
||||
},
|
||||
{
|
||||
'ConfigurationToken' => 'ONVIF::Analytics::Types::ReferenceToken',
|
||||
},
|
||||
{
|
||||
|
||||
'ConfigurationToken' => 'ConfigurationToken',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::GetAnalyticsModules
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
GetAnalyticsModules from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * ConfigurationToken
|
||||
|
||||
$element->set_ConfigurationToken($data);
|
||||
$element->get_ConfigurationToken();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::GetAnalyticsModules->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
ConfigurationToken => $some_value, # ReferenceToken
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,129 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::GetAnalyticsModulesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('GetAnalyticsModulesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %AnalyticsModule_of :ATTR(:get<AnalyticsModule>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( AnalyticsModule
|
||||
|
||||
) ],
|
||||
{
|
||||
'AnalyticsModule' => \%AnalyticsModule_of,
|
||||
},
|
||||
{
|
||||
'AnalyticsModule' => 'ONVIF::Analytics::Types::Config',
|
||||
},
|
||||
{
|
||||
|
||||
'AnalyticsModule' => 'AnalyticsModule',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::GetAnalyticsModulesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
GetAnalyticsModulesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * AnalyticsModule
|
||||
|
||||
$element->set_AnalyticsModule($data);
|
||||
$element->get_AnalyticsModule();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::GetAnalyticsModulesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
AnalyticsModule => { # ONVIF::Analytics::Types::Config
|
||||
Parameters => { # ONVIF::Analytics::Types::ItemList
|
||||
SimpleItem => ,
|
||||
ElementItem => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListExtension
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::GetRules;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('GetRules');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %ConfigurationToken_of :ATTR(:get<ConfigurationToken>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( ConfigurationToken
|
||||
|
||||
) ],
|
||||
{
|
||||
'ConfigurationToken' => \%ConfigurationToken_of,
|
||||
},
|
||||
{
|
||||
'ConfigurationToken' => 'ONVIF::Analytics::Types::ReferenceToken',
|
||||
},
|
||||
{
|
||||
|
||||
'ConfigurationToken' => 'ConfigurationToken',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::GetRules
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
GetRules from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * ConfigurationToken
|
||||
|
||||
$element->set_ConfigurationToken($data);
|
||||
$element->get_ConfigurationToken();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::GetRules->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
ConfigurationToken => $some_value, # ReferenceToken
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,129 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::GetRulesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('GetRulesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %Rule_of :ATTR(:get<Rule>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( Rule
|
||||
|
||||
) ],
|
||||
{
|
||||
'Rule' => \%Rule_of,
|
||||
},
|
||||
{
|
||||
'Rule' => 'ONVIF::Analytics::Types::Config',
|
||||
},
|
||||
{
|
||||
|
||||
'Rule' => 'Rule',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::GetRulesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
GetRulesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * Rule
|
||||
|
||||
$element->set_Rule($data);
|
||||
$element->get_Rule();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::GetRulesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
Rule => { # ONVIF::Analytics::Types::Config
|
||||
Parameters => { # ONVIF::Analytics::Types::ItemList
|
||||
SimpleItem => ,
|
||||
ElementItem => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListExtension
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,107 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::GetServiceCapabilities;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('GetServiceCapabilities');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw(
|
||||
) ],
|
||||
{
|
||||
},
|
||||
{
|
||||
},
|
||||
{
|
||||
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::GetServiceCapabilities
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
GetServiceCapabilities from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::GetServiceCapabilities->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,122 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::GetServiceCapabilitiesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('GetServiceCapabilitiesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %Capabilities_of :ATTR(:get<Capabilities>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( Capabilities
|
||||
|
||||
) ],
|
||||
{
|
||||
'Capabilities' => \%Capabilities_of,
|
||||
},
|
||||
{
|
||||
'Capabilities' => 'ONVIF::Analytics::Types::Capabilities',
|
||||
},
|
||||
{
|
||||
|
||||
'Capabilities' => 'Capabilities',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::GetServiceCapabilitiesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
GetServiceCapabilitiesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * Capabilities
|
||||
|
||||
$element->set_Capabilities($data);
|
||||
$element->get_Capabilities();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::GetServiceCapabilitiesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
Capabilities => { # ONVIF::Analytics::Types::Capabilities
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::GetSupportedAnalyticsModules;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('GetSupportedAnalyticsModules');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %ConfigurationToken_of :ATTR(:get<ConfigurationToken>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( ConfigurationToken
|
||||
|
||||
) ],
|
||||
{
|
||||
'ConfigurationToken' => \%ConfigurationToken_of,
|
||||
},
|
||||
{
|
||||
'ConfigurationToken' => 'ONVIF::Analytics::Types::ReferenceToken',
|
||||
},
|
||||
{
|
||||
|
||||
'ConfigurationToken' => 'ConfigurationToken',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::GetSupportedAnalyticsModules
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
GetSupportedAnalyticsModules from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * ConfigurationToken
|
||||
|
||||
$element->set_ConfigurationToken($data);
|
||||
$element->get_ConfigurationToken();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::GetSupportedAnalyticsModules->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
ConfigurationToken => $some_value, # ReferenceToken
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,138 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::GetSupportedAnalyticsModulesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('GetSupportedAnalyticsModulesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %SupportedAnalyticsModules_of :ATTR(:get<SupportedAnalyticsModules>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( SupportedAnalyticsModules
|
||||
|
||||
) ],
|
||||
{
|
||||
'SupportedAnalyticsModules' => \%SupportedAnalyticsModules_of,
|
||||
},
|
||||
{
|
||||
'SupportedAnalyticsModules' => 'ONVIF::Analytics::Types::SupportedAnalyticsModules',
|
||||
},
|
||||
{
|
||||
|
||||
'SupportedAnalyticsModules' => 'SupportedAnalyticsModules',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::GetSupportedAnalyticsModulesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
GetSupportedAnalyticsModulesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * SupportedAnalyticsModules
|
||||
|
||||
$element->set_SupportedAnalyticsModules($data);
|
||||
$element->get_SupportedAnalyticsModules();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::GetSupportedAnalyticsModulesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
SupportedAnalyticsModules => { # ONVIF::Analytics::Types::SupportedAnalyticsModules
|
||||
AnalyticsModuleContentSchemaLocation => $some_value, # anyURI
|
||||
AnalyticsModuleDescription => { # ONVIF::Analytics::Types::ConfigDescription
|
||||
Parameters => { # ONVIF::Analytics::Types::ItemListDescription
|
||||
SimpleItemDescription => ,
|
||||
ElementItemDescription => ,
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListDescriptionExtension
|
||||
},
|
||||
},
|
||||
Messages => {
|
||||
ParentTopic => $some_value, # string
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ConfigDescriptionExtension
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::SupportedAnalyticsModulesExtension
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::GetSupportedRules;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('GetSupportedRules');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %ConfigurationToken_of :ATTR(:get<ConfigurationToken>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( ConfigurationToken
|
||||
|
||||
) ],
|
||||
{
|
||||
'ConfigurationToken' => \%ConfigurationToken_of,
|
||||
},
|
||||
{
|
||||
'ConfigurationToken' => 'ONVIF::Analytics::Types::ReferenceToken',
|
||||
},
|
||||
{
|
||||
|
||||
'ConfigurationToken' => 'ConfigurationToken',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::GetSupportedRules
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
GetSupportedRules from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * ConfigurationToken
|
||||
|
||||
$element->set_ConfigurationToken($data);
|
||||
$element->get_ConfigurationToken();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::GetSupportedRules->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
ConfigurationToken => $some_value, # ReferenceToken
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,138 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::GetSupportedRulesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('GetSupportedRulesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %SupportedRules_of :ATTR(:get<SupportedRules>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( SupportedRules
|
||||
|
||||
) ],
|
||||
{
|
||||
'SupportedRules' => \%SupportedRules_of,
|
||||
},
|
||||
{
|
||||
'SupportedRules' => 'ONVIF::Analytics::Types::SupportedRules',
|
||||
},
|
||||
{
|
||||
|
||||
'SupportedRules' => 'SupportedRules',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::GetSupportedRulesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
GetSupportedRulesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * SupportedRules
|
||||
|
||||
$element->set_SupportedRules($data);
|
||||
$element->get_SupportedRules();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::GetSupportedRulesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
SupportedRules => { # ONVIF::Analytics::Types::SupportedRules
|
||||
RuleContentSchemaLocation => $some_value, # anyURI
|
||||
RuleDescription => { # ONVIF::Analytics::Types::ConfigDescription
|
||||
Parameters => { # ONVIF::Analytics::Types::ItemListDescription
|
||||
SimpleItemDescription => ,
|
||||
ElementItemDescription => ,
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListDescriptionExtension
|
||||
},
|
||||
},
|
||||
Messages => {
|
||||
ParentTopic => $some_value, # string
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ConfigDescriptionExtension
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::SupportedRulesExtension
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::Header;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://schemas.xmlsoap.org/soap/envelope/' }
|
||||
|
||||
__PACKAGE__->__set_name('Header');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::Header
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::Header
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
Header from the namespace http://schemas.xmlsoap.org/soap/envelope/.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::Header->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::Header
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::Include;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.w3.org/2004/08/xop/include' }
|
||||
|
||||
__PACKAGE__->__set_name('Include');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::Include
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::Include
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
Include from the namespace http://www.w3.org/2004/08/xop/include.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::Include->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::Include
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,207 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::Message;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver10/schema' }
|
||||
|
||||
__PACKAGE__->__set_name('Message');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS = 'ONVIF::Analytics::Elements::Message::XmlAttr';
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %Source_of :ATTR(:get<Source>);
|
||||
my %Key_of :ATTR(:get<Key>);
|
||||
my %Data_of :ATTR(:get<Data>);
|
||||
my %Extension_of :ATTR(:get<Extension>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( Source
|
||||
Key
|
||||
Data
|
||||
Extension
|
||||
|
||||
) ],
|
||||
{
|
||||
'Source' => \%Source_of,
|
||||
'Key' => \%Key_of,
|
||||
'Data' => \%Data_of,
|
||||
'Extension' => \%Extension_of,
|
||||
},
|
||||
{
|
||||
'Source' => 'ONVIF::Analytics::Types::ItemList',
|
||||
'Key' => 'ONVIF::Analytics::Types::ItemList',
|
||||
'Data' => 'ONVIF::Analytics::Types::ItemList',
|
||||
'Extension' => 'ONVIF::Analytics::Types::MessageExtension',
|
||||
},
|
||||
{
|
||||
|
||||
'Source' => 'Source',
|
||||
'Key' => 'Key',
|
||||
'Data' => 'Data',
|
||||
'Extension' => 'Extension',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
package ONVIF::Analytics::Elements::Message::XmlAttr;
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::AttributeSet);
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %UtcTime_of :ATTR(:get<UtcTime>);
|
||||
my %PropertyOperation_of :ATTR(:get<PropertyOperation>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw(
|
||||
UtcTime
|
||||
PropertyOperation
|
||||
) ],
|
||||
{
|
||||
|
||||
UtcTime => \%UtcTime_of,
|
||||
|
||||
PropertyOperation => \%PropertyOperation_of,
|
||||
},
|
||||
{
|
||||
UtcTime => 'SOAP::WSDL::XSD::Typelib::Builtin::dateTime',
|
||||
PropertyOperation => 'ONVIF::Analytics::Types::PropertyOperation',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::Message
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
Message from the namespace http://www.onvif.org/ver10/schema.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * Source
|
||||
|
||||
$element->set_Source($data);
|
||||
$element->get_Source();
|
||||
|
||||
|
||||
|
||||
|
||||
=item * Key
|
||||
|
||||
$element->set_Key($data);
|
||||
$element->get_Key();
|
||||
|
||||
|
||||
|
||||
|
||||
=item * Data
|
||||
|
||||
$element->set_Data($data);
|
||||
$element->get_Data();
|
||||
|
||||
|
||||
|
||||
|
||||
=item * Extension
|
||||
|
||||
$element->set_Extension($data);
|
||||
$element->get_Extension();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::Message->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
Source => { # ONVIF::Analytics::Types::ItemList
|
||||
SimpleItem => ,
|
||||
ElementItem => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListExtension
|
||||
},
|
||||
},
|
||||
Key => { # ONVIF::Analytics::Types::ItemList
|
||||
SimpleItem => ,
|
||||
ElementItem => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListExtension
|
||||
},
|
||||
},
|
||||
Data => { # ONVIF::Analytics::Types::ItemList
|
||||
SimpleItem => ,
|
||||
ElementItem => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListExtension
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::MessageExtension
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,89 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::MetadataConfiguration;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver10/schema' }
|
||||
|
||||
__PACKAGE__->__set_name('MetadataConfiguration');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::MetadataConfiguration
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::MetadataConfiguration
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
MetadataConfiguration from the namespace http://www.onvif.org/ver10/schema.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::MetadataConfiguration->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::MetadataConfiguration
|
||||
PTZStatus => { # ONVIF::Analytics::Types::PTZFilter
|
||||
Status => $some_value, # boolean
|
||||
Position => $some_value, # boolean
|
||||
},
|
||||
Analytics => $some_value, # boolean
|
||||
Multicast => { # ONVIF::Analytics::Types::MulticastConfiguration
|
||||
Address => { # ONVIF::Analytics::Types::IPAddress
|
||||
Type => $some_value, # IPType
|
||||
IPv4Address => $some_value, # IPv4Address
|
||||
IPv6Address => $some_value, # IPv6Address
|
||||
},
|
||||
Port => $some_value, # int
|
||||
TTL => $some_value, # int
|
||||
AutoStart => $some_value, # boolean
|
||||
},
|
||||
SessionTimeout => $some_value, # duration
|
||||
AnalyticsEngineConfiguration => { # ONVIF::Analytics::Types::AnalyticsEngineConfiguration
|
||||
AnalyticsModule => { # ONVIF::Analytics::Types::Config
|
||||
Parameters => { # ONVIF::Analytics::Types::ItemList
|
||||
SimpleItem => ,
|
||||
ElementItem => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListExtension
|
||||
},
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::AnalyticsEngineConfigurationExtension
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::MetadataConfigurationExtension
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,192 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::MetadataStream;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver10/schema' }
|
||||
|
||||
__PACKAGE__->__set_name('MetadataStream');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::MetadataStream
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::MetadataStream
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
MetadataStream from the namespace http://www.onvif.org/ver10/schema.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::MetadataStream->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::MetadataStream
|
||||
# One of the following elements.
|
||||
# No occurance checks yet, so be sure to pass just one...
|
||||
VideoAnalytics => { # ONVIF::Analytics::Types::VideoAnalyticsStream
|
||||
# One of the following elements.
|
||||
# No occurance checks yet, so be sure to pass just one...
|
||||
Frame => { # ONVIF::Analytics::Types::Frame
|
||||
PTZStatus => { # ONVIF::Analytics::Types::PTZStatus
|
||||
Position => { # ONVIF::Analytics::Types::PTZVector
|
||||
PanTilt => ,
|
||||
Zoom => ,
|
||||
},
|
||||
MoveStatus => { # ONVIF::Analytics::Types::PTZMoveStatus
|
||||
PanTilt => $some_value, # MoveStatus
|
||||
Zoom => $some_value, # MoveStatus
|
||||
},
|
||||
Error => $some_value, # string
|
||||
UtcTime => $some_value, # dateTime
|
||||
},
|
||||
Transformation => { # ONVIF::Analytics::Types::Transformation
|
||||
Translate => ,
|
||||
Scale => ,
|
||||
Extension => { # ONVIF::Analytics::Types::TransformationExtension
|
||||
},
|
||||
},
|
||||
Object => { # ONVIF::Analytics::Types::Object
|
||||
Appearance => { # ONVIF::Analytics::Types::Appearance
|
||||
Transformation => { # ONVIF::Analytics::Types::Transformation
|
||||
Translate => ,
|
||||
Scale => ,
|
||||
Extension => { # ONVIF::Analytics::Types::TransformationExtension
|
||||
},
|
||||
},
|
||||
Shape => { # ONVIF::Analytics::Types::ShapeDescriptor
|
||||
BoundingBox => ,
|
||||
CenterOfGravity => ,
|
||||
Polygon => { # ONVIF::Analytics::Types::Polygon
|
||||
Point => ,
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ShapeDescriptorExtension
|
||||
},
|
||||
},
|
||||
Color => { # ONVIF::Analytics::Types::ColorDescriptor
|
||||
ColorCluster => {
|
||||
Color => ,
|
||||
Weight => $some_value, # float
|
||||
Covariance => ,
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ColorDescriptorExtension
|
||||
},
|
||||
},
|
||||
Class => { # ONVIF::Analytics::Types::ClassDescriptor
|
||||
ClassCandidate => {
|
||||
Type => $some_value, # ClassType
|
||||
Likelihood => $some_value, # float
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ClassDescriptorExtension
|
||||
OtherTypes => { # ONVIF::Analytics::Types::OtherType
|
||||
Type => $some_value, # string
|
||||
Likelihood => $some_value, # float
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ClassDescriptorExtension2
|
||||
},
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::AppearanceExtension
|
||||
},
|
||||
},
|
||||
Behaviour => { # ONVIF::Analytics::Types::Behaviour
|
||||
Removed => {
|
||||
},
|
||||
Idle => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::BehaviourExtension
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ObjectExtension
|
||||
},
|
||||
},
|
||||
ObjectTree => { # ONVIF::Analytics::Types::ObjectTree
|
||||
Rename => { # ONVIF::Analytics::Types::Rename
|
||||
from => ,
|
||||
to => ,
|
||||
},
|
||||
Split => { # ONVIF::Analytics::Types::Split
|
||||
from => ,
|
||||
to => ,
|
||||
},
|
||||
Merge => { # ONVIF::Analytics::Types::Merge
|
||||
from => ,
|
||||
to => ,
|
||||
},
|
||||
Delete => ,
|
||||
Extension => { # ONVIF::Analytics::Types::ObjectTreeExtension
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::FrameExtension
|
||||
MotionInCells => { # ONVIF::Analytics::Types::MotionInCells
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::FrameExtension2
|
||||
},
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::VideoAnalyticsStreamExtension
|
||||
},
|
||||
},
|
||||
PTZ => { # ONVIF::Analytics::Types::PTZStream
|
||||
# One of the following elements.
|
||||
# No occurance checks yet, so be sure to pass just one...
|
||||
PTZStatus => { # ONVIF::Analytics::Types::PTZStatus
|
||||
Position => { # ONVIF::Analytics::Types::PTZVector
|
||||
PanTilt => ,
|
||||
Zoom => ,
|
||||
},
|
||||
MoveStatus => { # ONVIF::Analytics::Types::PTZMoveStatus
|
||||
PanTilt => $some_value, # MoveStatus
|
||||
Zoom => $some_value, # MoveStatus
|
||||
},
|
||||
Error => $some_value, # string
|
||||
UtcTime => $some_value, # dateTime
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::PTZStreamExtension
|
||||
},
|
||||
},
|
||||
Event => $some_value, # anyType
|
||||
Extension => { # ONVIF::Analytics::Types::MetadataStreamExtension
|
||||
AudioAnalyticsStream => { # ONVIF::Analytics::Types::AudioAnalyticsStream
|
||||
AudioDescriptor => { # ONVIF::Analytics::Types::AudioDescriptor
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::AudioAnalyticsStreamExtension
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::MetadataStreamExtension2
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::ModifyAnalyticsModules;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('ModifyAnalyticsModules');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %ConfigurationToken_of :ATTR(:get<ConfigurationToken>);
|
||||
my %AnalyticsModule_of :ATTR(:get<AnalyticsModule>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( ConfigurationToken
|
||||
AnalyticsModule
|
||||
|
||||
) ],
|
||||
{
|
||||
'ConfigurationToken' => \%ConfigurationToken_of,
|
||||
'AnalyticsModule' => \%AnalyticsModule_of,
|
||||
},
|
||||
{
|
||||
'ConfigurationToken' => 'ONVIF::Analytics::Types::ReferenceToken',
|
||||
'AnalyticsModule' => 'ONVIF::Analytics::Types::Config',
|
||||
},
|
||||
{
|
||||
|
||||
'ConfigurationToken' => 'ConfigurationToken',
|
||||
'AnalyticsModule' => 'AnalyticsModule',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::ModifyAnalyticsModules
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
ModifyAnalyticsModules from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * ConfigurationToken
|
||||
|
||||
$element->set_ConfigurationToken($data);
|
||||
$element->get_ConfigurationToken();
|
||||
|
||||
|
||||
|
||||
|
||||
=item * AnalyticsModule
|
||||
|
||||
$element->set_AnalyticsModule($data);
|
||||
$element->get_AnalyticsModule();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::ModifyAnalyticsModules->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
ConfigurationToken => $some_value, # ReferenceToken
|
||||
AnalyticsModule => { # ONVIF::Analytics::Types::Config
|
||||
Parameters => { # ONVIF::Analytics::Types::ItemList
|
||||
SimpleItem => ,
|
||||
ElementItem => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListExtension
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::ModifyAnalyticsModulesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('ModifyAnalyticsModulesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
# There's no variety - empty complexType
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
__PACKAGE__->_factory();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::ModifyAnalyticsModulesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
ModifyAnalyticsModulesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::ModifyAnalyticsModulesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
,
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::ModifyRules;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('ModifyRules');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
Class::Std::initialize();
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
my %ConfigurationToken_of :ATTR(:get<ConfigurationToken>);
|
||||
my %Rule_of :ATTR(:get<Rule>);
|
||||
|
||||
__PACKAGE__->_factory(
|
||||
[ qw( ConfigurationToken
|
||||
Rule
|
||||
|
||||
) ],
|
||||
{
|
||||
'ConfigurationToken' => \%ConfigurationToken_of,
|
||||
'Rule' => \%Rule_of,
|
||||
},
|
||||
{
|
||||
'ConfigurationToken' => 'ONVIF::Analytics::Types::ReferenceToken',
|
||||
'Rule' => 'ONVIF::Analytics::Types::Config',
|
||||
},
|
||||
{
|
||||
|
||||
'ConfigurationToken' => 'ConfigurationToken',
|
||||
'Rule' => 'Rule',
|
||||
}
|
||||
);
|
||||
|
||||
} # end BLOCK
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::ModifyRules
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
ModifyRules from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
=item * ConfigurationToken
|
||||
|
||||
$element->set_ConfigurationToken($data);
|
||||
$element->get_ConfigurationToken();
|
||||
|
||||
|
||||
|
||||
|
||||
=item * Rule
|
||||
|
||||
$element->set_Rule($data);
|
||||
$element->get_Rule();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::ModifyRules->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{
|
||||
ConfigurationToken => $some_value, # ReferenceToken
|
||||
Rule => { # ONVIF::Analytics::Types::Config
|
||||
Parameters => { # ONVIF::Analytics::Types::ItemList
|
||||
SimpleItem => ,
|
||||
ElementItem => {
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::ItemListExtension
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::ModifyRulesResponse;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver20/analytics/wsdl' }
|
||||
|
||||
__PACKAGE__->__set_name('ModifyRulesResponse');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
SOAP::WSDL::XSD::Typelib::ComplexType
|
||||
);
|
||||
|
||||
our $XML_ATTRIBUTE_CLASS;
|
||||
undef $XML_ATTRIBUTE_CLASS;
|
||||
|
||||
sub __get_attr_class {
|
||||
return $XML_ATTRIBUTE_CLASS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
# There's no variety - empty complexType
|
||||
use Class::Std::Fast::Storable constructor => 'none';
|
||||
use base qw(SOAP::WSDL::XSD::Typelib::ComplexType);
|
||||
|
||||
__PACKAGE__->_factory();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} # end of BLOCK
|
||||
|
||||
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::ModifyRulesResponse
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
ModifyRulesResponse from the namespace http://www.onvif.org/ver20/analytics/wsdl.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 PROPERTIES
|
||||
|
||||
The following properties may be accessed using get_PROPERTY / set_PROPERTY
|
||||
methods:
|
||||
|
||||
=over
|
||||
|
||||
|
||||
=back
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::ModifyRulesResponse->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
,
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,106 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::PTZConfiguration;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver10/schema' }
|
||||
|
||||
__PACKAGE__->__set_name('PTZConfiguration');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::PTZConfiguration
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::PTZConfiguration
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
PTZConfiguration from the namespace http://www.onvif.org/ver10/schema.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::PTZConfiguration->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::PTZConfiguration
|
||||
NodeToken => $some_value, # ReferenceToken
|
||||
DefaultAbsolutePantTiltPositionSpace => $some_value, # anyURI
|
||||
DefaultAbsoluteZoomPositionSpace => $some_value, # anyURI
|
||||
DefaultRelativePanTiltTranslationSpace => $some_value, # anyURI
|
||||
DefaultRelativeZoomTranslationSpace => $some_value, # anyURI
|
||||
DefaultContinuousPanTiltVelocitySpace => $some_value, # anyURI
|
||||
DefaultContinuousZoomVelocitySpace => $some_value, # anyURI
|
||||
DefaultPTZSpeed => { # ONVIF::Analytics::Types::PTZSpeed
|
||||
PanTilt => ,
|
||||
Zoom => ,
|
||||
},
|
||||
DefaultPTZTimeout => $some_value, # duration
|
||||
PanTiltLimits => { # ONVIF::Analytics::Types::PanTiltLimits
|
||||
Range => { # ONVIF::Analytics::Types::Space2DDescription
|
||||
URI => $some_value, # anyURI
|
||||
XRange => { # ONVIF::Analytics::Types::FloatRange
|
||||
Min => $some_value, # float
|
||||
Max => $some_value, # float
|
||||
},
|
||||
YRange => { # ONVIF::Analytics::Types::FloatRange
|
||||
Min => $some_value, # float
|
||||
Max => $some_value, # float
|
||||
},
|
||||
},
|
||||
},
|
||||
ZoomLimits => { # ONVIF::Analytics::Types::ZoomLimits
|
||||
Range => { # ONVIF::Analytics::Types::Space1DDescription
|
||||
URI => $some_value, # anyURI
|
||||
XRange => { # ONVIF::Analytics::Types::FloatRange
|
||||
Min => $some_value, # float
|
||||
Max => $some_value, # float
|
||||
},
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::PTZConfigurationExtension
|
||||
PTControlDirection => { # ONVIF::Analytics::Types::PTControlDirection
|
||||
EFlip => { # ONVIF::Analytics::Types::EFlip
|
||||
Mode => $some_value, # EFlipMode
|
||||
},
|
||||
Reverse => { # ONVIF::Analytics::Types::Reverse
|
||||
Mode => $some_value, # ReverseMode
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::PTControlDirectionExtension
|
||||
},
|
||||
},
|
||||
Extension => { # ONVIF::Analytics::Types::PTZConfigurationExtension2
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::Polygon;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver10/schema' }
|
||||
|
||||
__PACKAGE__->__set_name('Polygon');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::Polygon
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::Polygon
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
Polygon from the namespace http://www.onvif.org/ver10/schema.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::Polygon->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::Polygon
|
||||
Point => ,
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
|
||||
package ONVIF::Analytics::Elements::Polyline;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
{ # BLOCK to scope variables
|
||||
|
||||
sub get_xmlns { 'http://www.onvif.org/ver10/schema' }
|
||||
|
||||
__PACKAGE__->__set_name('Polyline');
|
||||
__PACKAGE__->__set_nillable();
|
||||
__PACKAGE__->__set_minOccurs();
|
||||
__PACKAGE__->__set_maxOccurs();
|
||||
__PACKAGE__->__set_ref();
|
||||
use base qw(
|
||||
SOAP::WSDL::XSD::Typelib::Element
|
||||
ONVIF::Analytics::Types::Polyline
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
ONVIF::Analytics::Elements::Polyline
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
Perl data type class for the XML Schema defined element
|
||||
Polyline from the namespace http://www.onvif.org/ver10/schema.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=head2 new
|
||||
|
||||
my $element = ONVIF::Analytics::Elements::Polyline->new($data);
|
||||
|
||||
Constructor. The following data structure may be passed to new():
|
||||
|
||||
{ # ONVIF::Analytics::Types::Polyline
|
||||
Point => ,
|
||||
},
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Generated by SOAP::WSDL
|
||||
|
||||
=cut
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue