Merge branch 'master' into zma_to_thread

This commit is contained in:
Isaac Connor 2020-07-21 17:49:39 -04:00
commit 869860bb26
225 changed files with 40593 additions and 3919 deletions

4
.github/stale.yml vendored
View File

@ -1,10 +1,10 @@
# Configuration for probot-stale - https://github.com/probot/stale
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 60
daysUntilStale: 180
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
daysUntilClose: 30
# Issues with these labels will never be considered stale
exemptLabels:

View File

@ -41,6 +41,7 @@ env:
- SMPFLAGS=-j4 OS=ubuntu DIST=bionic DOCKER_REPO=iconzm/packpack
- SMPFLAGS=-j4 OS=ubuntu DIST=disco DOCKER_REPO=iconzm/packpack
- SMPFLAGS=-j4 OS=ubuntu DIST=eoan DOCKER_REPO=iconzm/packpack
- SMPFLAGS=-j4 OS=ubuntu DIST=focal DOCKER_REPO=iconzm/packpack
- SMPFLAGS=-j4 OS=debian DIST=jessie DOCKER_REPO=iconzm/packpack
- SMPFLAGS=-j4 OS=debian DIST=stretch DOCKER_REPO=iconzm/packpack
- SMPFLAGS=-j4 OS=debian DIST=buster DOCKER_REPO=iconzm/packpack

View File

@ -916,11 +916,7 @@ add_subdirectory(scripts)
add_subdirectory(db)
add_subdirectory(web)
add_subdirectory(misc)
# Enable ONVIF support
if(ZM_ONVIF)
add_subdirectory(onvif)
endif(ZM_ONVIF)
add_subdirectory(onvif)
# Process distro subdirectories
if((ZM_TARGET_DISTRO MATCHES "^el") OR (ZM_TARGET_DISTRO MATCHES "^fc"))

View File

@ -76,7 +76,7 @@ properly and are documented.
* Report issues/questions/feature requests on [GitHub Issues](https://github.com/ZoneMinder/ZoneMinder/issues)
Pull requests are very welcome! If you would like to contribute, please follow
the following steps.
the following steps. While step 3 is optional, it is preferred.
1. Fork the repo
2. Open an issue at our [GitHub Issues Tracker](https://github.com/ZoneMinder/ZoneMinder/issues).

18
SECURITY.md Normal file
View File

@ -0,0 +1,18 @@
# Security Policy
## Supported Versions
Time and computers move on. We do not have the resources to support every ancient version of everything
(unless you'd like to pay us to do so.) We ONLY support the latest stable release and development releases.
| Version | Supported |
| ------- | ------------------ |
| 1.34.x | :white_check_mark: |
| 1.35.x | :white_check_mark: |
| < 1.34.x | :x: |
## Reporting a Vulnerability
Since sometimes security vulnerabilities can be sensitive, you can just email me at isaac@zoneminder.com.
If it's not such a big deal, by all means, create an issue here on github

View File

@ -282,6 +282,7 @@ DROP TABLE IF EXISTS `Filters`;
CREATE TABLE `Filters` (
`Id` int(10) unsigned NOT NULL auto_increment,
`Name` varchar(64) NOT NULL default '',
`UserId` int(10) unsigned,
`Query_json` text NOT NULL,
`AutoArchive` tinyint(3) unsigned NOT NULL default '0',
`AutoVideo` tinyint(3) unsigned NOT NULL default '0',
@ -445,6 +446,10 @@ CREATE TABLE `Monitors` (
`Enabled` tinyint(3) unsigned NOT NULL default '1',
`LinkedMonitors` varchar(255),
`Triggers` set('X10') NOT NULL default '',
`ONVIF_URL` VARCHAR(255) NOT NULL DEFAULT '',
`ONVIF_Username` VARCHAR(64) NOT NULL DEFAULT '',
`ONVIF_Password` VARCHAR(64) NOT NULL DEFAULT '',
`ONVIF_Options` VARCHAR(64) NOT NULL DEFAULT '',
`Device` tinytext NOT NULL default '',
`Channel` tinyint(3) unsigned NOT NULL default '0',
`Format` int(10) unsigned NOT NULL default '0',
@ -784,6 +789,7 @@ INSERT INTO `Filters`
`AutoCopy`,
`AutoCopyTo`,
`UpdateDiskSpace`,
`UserId`,
`Background`,
`Concurrent`
)
@ -804,6 +810,7 @@ INSERT INTO `Filters`
0/*AutoMove*/,0/*MoveTo*/,
0/*AutoCopy*/,0/*CopyTo*/,
0/*UpdateDiskSpace*/,
1/*UserId = admin*/,
1/*Background*/,
0/*Concurrent*/
);
@ -827,6 +834,7 @@ INSERT INTO `Filters`
`AutoCopy`,
`AutoCopyTo`,
`UpdateDiskSpace`,
`UserId`,
`Background`,
`Concurrent`
)
@ -846,6 +854,7 @@ VALUES (
0/*AutoMove*/,0/*MoveTo*/,
0/*AutoCopy*/,0/*CopyTo*/,
1/*UpdateDiskSpace*/,
1/*UserId=admin*/,
1/*Background*/,
0/*Concurrent*/
);

View File

@ -1,206 +0,0 @@
--
-- This updates a 1.27.0 database to 1.27.1
--
--
-- Add Controls definition for Wanscam
--
INSERT INTO Controls
SELECT * FROM (SELECT NULL as Id,
'WanscamPT' as Name,
'Remote' as Type,
'Wanscam' as Protocol,
1 as CanWake,
1 as CanSleep,
1 as CanReset,
0 as CanZoom,
0 as CanAutoZoom,
0 as CanZoomAbs,
0 as CanZoomRel,
0 as CanZoomCon,
0 as MinZoomRange,
0 as MaxZoomRange,
0 as MinZoomStep,
0 as MaxZoomStep,
0 as HasZoomSpeed,
0 as MinZoomSpeed,
0 as MaxZoomSpeed,
0 as CanFocus,
0 as CanAutoFocus,
0 as CanFocusAbs,
0 as CanFocusRel,
0 as CanFocusCon,
0 as MinFocusRange,
0 as MaxFocusRange,
0 as MinFocusStep,
0 as MaxFocusStep,
0 as HasFocusSpeed,
0 as MinFocusSpeed,
0 as MaxFocusSpeed,
1 as CanIris,
0 as CanAutoIris,
1 as CanIrisAbs,
0 as CanIrisRel,
0 as CanIrisCon,
0 as MinIrisRange,
16 as MaxIrisRange,
0 as MinIrisStep,
0 as MaxIrisStep,
0 as HasIrisSpeed,
0 as MinIrisSpeed,
0 as MaxIrisSpeed,
0 as CanGain,
0 as CanAutoGain,
0 as CanGainAbs,
0 as CanGainRel,
0 as CanGainCon,
0 as MinGainRange,
0 as MaxGainRange,
0 as MinGainStep,
0 as MaxGainStep,
0 as HasGainSpeed,
0 as MinGainSpeed,
0 as MaxGainSpeed,
1 as CanWhite,
0 as CanAutoWhite,
1 as CanWhiteAbs,
0 as CanWhiteRel,
0 as CanWhiteCon,
0 as MinWhiteRange,
16 as MaxWhiteRange,
0 as MinWhiteStep,
0 as MaxWhiteStep,
0 as HasWhiteSpeed,
0 as MinWhiteSpeed,
0 as MaxWhiteSpeed,
1 as HasPresets,
16 as NumPresets,
1 as HasHomePreset,
1 as CanSetPresets,
1 as CanMove,
1 as CanMoveDiag,
0 as CanMoveMap,
0 as CanMoveAbs,
0 as CanMoveRel,
1 as CanMoveCon,
1 as CanPan,
0 as MinPanRange,
0 as MaxPanRange,
0 as MinPanStep,
0 as MaxPanStep,
0 as HasPanSpeed,
0 as MinPanSpeed,
0 as MaxPanSpeed,
0 as HasTurboPan,
0 as TurboPanSpeed,
1 as CanTilt,
0 as MinTiltRange,
0 as MaxTiltRange,
0 as MinTiltStep,
0 as MaxTiltStep,
0 as HasTiltSpeed,
0 as MinTiltSpeed,
0 as MaxTiltSpeed,
0 as HasTurboTilt,
0 as TurboTiltSpeed,
0 as CanAutoScan,
0 as NumScanPaths) AS tmp
WHERE NOT EXISTS (
SELECT Name FROM Controls WHERE name = 'WanscamPT'
) LIMIT 1;
-- Add extend alarm frame count to zone definition and Presets
SET @s = (SELECT IF(
(SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Zones'
AND table_schema = DATABASE()
AND column_name = 'ExtendAlarmFrames'
) > 0,
"SELECT 'Column ExtendAlarmFrames exists in Zones'",
"ALTER TABLE `Zones` ADD `ExtendAlarmFrames` smallint(5) unsigned not null default 0 AFTER `OverloadFrames`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;
SET @s = (SELECT IF(
(SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'ZonePresets'
AND table_schema = DATABASE()
AND column_name = 'ExtendAlarmFrames'
) > 0,
"SELECT 'Column ExtendAlarmFrames exists in ZonePresets'",
"ALTER TABLE `ZonePresets` ADD `ExtendAlarmFrames` smallint(5) unsigned not null default 0 AFTER `OverloadFrames`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;
--
-- Add MotionSkipFrame field for controlling how many frames motion detection should skip.
--
SET @s = (SELECT IF(
(SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Monitors'
AND table_schema = DATABASE()
AND column_name = 'MotionFrameSkip'
) > 0,
"SELECT 1",
"ALTER TABLE `Monitors` ADD `MotionFrameSkip` smallint(5) unsigned NOT NULL default '0' AFTER `FrameSkip`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;
--
-- Add Monitor Options field; used for specifying Ffmpeg AVoptions like rtsp_transport http or libVLC options
--
SET @s = (SELECT IF(
(SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Monitors'
AND table_schema = DATABASE()
AND column_name = 'Options'
) > 0,
"SELECT 'Column Options already exists in Monitors'",
"ALTER TABLE `Monitors` ADD `Options` varchar(255) not null default '' AFTER `Path`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;
--
-- Add V4LMultiBuffer and V4LCapturesPerFrame to Monitor
--
SET @s = (SELECT IF(
(SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Monitors'
AND table_schema = DATABASE()
AND column_name = 'V4LMultiBuffer'
) > 0,
"SELECT 'Column V4LMultiBuffer exists in Monitors'",
"ALTER TABLE `Monitors` ADD `V4LMultiBuffer` tinyint(1) unsigned AFTER `Format`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;
SET @s = (SELECT IF(
(SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Monitors'
AND table_schema = DATABASE()
AND column_name = 'V4LCapturesPerFrame'
) > 0,
"SELECT 'Column V4LCapturesPerFrame exists in Monitors'",
"ALTER TABLE `Monitors` ADD `V4LCapturesPerFrame` tinyint(3) unsigned AFTER `V4LMultiBuffer`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;

2
db/zm_update-1.35.3.sql Normal file
View File

@ -0,0 +1,2 @@
SELECT 'ALTERING Frames.Id to a BIGINT. This could take a long time.';
ALTER TABLE Frames MODIFY Id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT;

60
db/zm_update-1.35.4.sql Normal file
View File

@ -0,0 +1,60 @@
--
-- This update adds ONVIF features
--
SET @s = (SELECT IF(
(SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Monitors'
AND table_schema = DATABASE()
AND column_name = 'ONVIF_URL'
) > 0,
"SELECT 'Column ONVIF_URL already exists in Monitors'",
"ALTER TABLE `Monitors` ADD COLUMN `ONVIF_URL` VARCHAR(255) NOT NULL DEFAULT '' AFTER `Triggers`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;
SET @s = (SELECT IF(
(SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Monitors'
AND table_schema = DATABASE()
AND column_name = 'ONVIF_Username'
) > 0,
"SELECT 'Column ONVIF_Username already exists in Monitors'",
"ALTER TABLE `Monitors` ADD COLUMN `ONVIF_Username` VARCHAR(64) NOT NULL DEFAULT '' AFTER `ONVIF_URL`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;
SET @s = (SELECT IF(
(SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Monitors'
AND table_schema = DATABASE()
AND column_name = 'ONVIF_Password'
) > 0,
"SELECT 'Column ONVIF_Password already exists in Monitors'",
"ALTER TABLE `Monitors` ADD COLUMN `ONVIF_Password` VARCHAR(64) NOT NULL DEFAULT '' AFTER `ONVIF_Username`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;
SET @s = (SELECT IF(
(SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'Monitors'
AND table_schema = DATABASE()
AND column_name = 'ONVIF_Options'
) > 0,
"SELECT 'Column ONVIF_Options already exists in Monitors'",
"ALTER TABLE `Monitors` ADD COLUMN `ONVIF_Options` VARCHAR(64) NOT NULL DEFAULT '' AFTER `ONVIF_Password`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;

11
db/zm_update-1.35.5.sql Normal file
View File

@ -0,0 +1,11 @@
SET @s = (SELECT IF(
(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE table_schema = DATABASE()
AND table_name = 'Filters'
AND column_name = 'UserId'
) > 0,
"SELECT 'Column UserId already exists in Filters'",
"ALTER TABLE `Filters` ADD `UserId` int(10) unsigned AFTER `Name`"
));
PREPARE stmt FROM @s;
EXECUTE stmt;

View File

@ -40,7 +40,7 @@ zoneminder (1.27.99+1-testing-SNAPSHOT2014072901) testing; urgency=medium
-- Isaac Connor <iconnor@connortechnology.com> Tue, 29 Jul 2014 14:50:20 -0400
zoneminder (1.27.0+1-testing-v4ltomonitor-1) testing; urgency=high
zoneminder (1.27.0+1-trusty-v4ltomonitor-1) trusty; urgency=high
* Snapshot release -

View File

@ -28,7 +28,7 @@
%global _hardened_build 1
Name: zoneminder
Version: 1.35.2
Version: 1.35.5
Release: 1%{?dist}
Summary: A camera monitoring and analysis tool
Group: System Environment/Daemons
@ -357,6 +357,7 @@ EOF
%{_bindir}/zmtelemetry.pl
%{_bindir}/zmx10.pl
%{_bindir}/zmonvif-probe.pl
%{_bindir}/zmonvif-trigger.pl
%{_bindir}/zmstats.pl
%{_bindir}/zmrecover.pl

View File

@ -83,7 +83,7 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
,libssl | libssl1.0.0 | libssl1.1
,libcrypt-eksblowfish-perl
,libdata-entropy-perl
,libvncclient1
,libvncclient1|libvncclient0
Recommends: ${misc:Recommends}
,libapache2-mod-php5 | libapache2-mod-php | php5-fpm | php-fpm
,mysql-server | mariadb-server | virtual-mysql-server

View File

@ -21,8 +21,8 @@ override_dh_auto_configure:
-DCMAKE_BUILD_TYPE=Release \
-DZM_CONFIG_DIR="/etc/zm" \
-DZM_CONFIG_SUBDIR="/etc/zm/conf.d" \
-DZM_RUNDIR="/var/run/zm" \
-DZM_SOCKDIR="/var/run/zm" \
-DZM_RUNDIR="/run/zm" \
-DZM_SOCKDIR="/run/zm" \
-DZM_TMPDIR="/tmp/zm" \
-DZM_CGIDIR="/usr/lib/zoneminder/cgi-bin" \
-DZM_CACHEDIR="/var/cache/zoneminder/cache" \

View File

@ -19,6 +19,10 @@ if [ "$1" = "configure" ]; then
echo "The cgi module is not enabled in apache2. I am enabling it using a2enmod cgi."
a2enmod cgi
fi
if [ ! -e "/etc/apache2/mods-enabled/rewrite.load" ] && [ "$(command -v a2enmod)" != "" ]; then
echo "The rewrite module is not enabled in apache2. I am enabling it using a2enmod rewrite."
a2enmod rewrite
fi
if [ "$ZM_DB_HOST" = "localhost" ]; then
@ -61,11 +65,10 @@ if [ "$1" = "configure" ]; then
exit 1;
fi
# This creates the user.
echo "grant lock tables,alter,drop,select,insert,update,delete,create,index,alter routine,create routine, trigger,execute on ${ZM_DB_NAME}.* to '${ZM_DB_USER}'@localhost identified by \"${ZM_DB_PASS}\";" | mysql --defaults-file=/etc/mysql/debian.cnf mysql
else
echo "Updating permissions"
echo "grant lock tables,alter,drop,select,insert,update,delete,create,index,alter routine,create routine, trigger,execute on ${ZM_DB_NAME}.* to '${ZM_DB_USER}'@localhost;" | mysql --defaults-file=/etc/mysql/debian.cnf mysql
echo "CREATE USER '${ZM_DB_USER}'@localhost IDENTIFIED BY '${ZM_DB_PASS}';" | mysql --defaults-file=/etc/mysql/debian.cnf mysql
fi
echo "Updating permissions"
echo "grant lock tables,alter,drop,select,insert,update,delete,create,index,alter routine,create routine, trigger,execute on ${ZM_DB_NAME}.* to '${ZM_DB_USER}'@localhost;" | mysql --defaults-file=/etc/mysql/debian.cnf mysql
zmupdate.pl --nointeractive
zmupdate.pl --nointeractive -f

View File

@ -46,7 +46,7 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
,javascript-common
,libmp4v2-2, libx264-155
,libswscale5
,libswresample4
,libswresample3
,ffmpeg
,libdate-manip-perl, libmime-lite-perl, libmime-tools-perl
,libdbd-mysql-perl

View File

@ -21,8 +21,8 @@ override_dh_auto_configure:
-DCMAKE_BUILD_TYPE=Release \
-DZM_CONFIG_DIR="/etc/zm" \
-DZM_CONFIG_SUBDIR="/etc/zm/conf.d" \
-DZM_RUNDIR="/var/run/zm" \
-DZM_SOCKDIR="/var/run/zm" \
-DZM_RUNDIR="/run/zm" \
-DZM_SOCKDIR="/run/zm" \
-DZM_TMPDIR="/tmp/zm" \
-DZM_CGIDIR="/usr/lib/zoneminder/cgi-bin" \
-DZM_CACHEDIR="/var/cache/zoneminder/cache" \

View File

@ -61,11 +61,10 @@ if [ "$1" = "configure" ]; then
exit 1;
fi
# This creates the user.
echo "grant lock tables,alter,drop,select,insert,update,delete,create,index,alter routine,create routine, trigger,execute on ${ZM_DB_NAME}.* to '${ZM_DB_USER}'@localhost identified by \"${ZM_DB_PASS}\";" | mysql --defaults-file=/etc/mysql/debian.cnf mysql
else
echo "Updating permissions"
echo "grant lock tables,alter,drop,select,insert,update,delete,create,index,alter routine,create routine, trigger,execute on ${ZM_DB_NAME}.* to '${ZM_DB_USER}'@localhost;" | mysql --defaults-file=/etc/mysql/debian.cnf mysql
echo "CREATE USER '${ZM_DB_USER}'@localhost IDENTIFIED BY '${ZM_DB_PASS}';" | mysql --defaults-file=/etc/mysql/debian.cnf mysql
fi
echo "Updating permissions"
echo "grant lock tables,alter,drop,select,insert,update,delete,create,index,alter routine,create routine, trigger,execute on ${ZM_DB_NAME}.* to '${ZM_DB_USER}'@localhost;" | mysql --defaults-file=/etc/mysql/debian.cnf mysql
zmupdate.pl --nointeractive
zmupdate.pl --nointeractive -f

View File

@ -3,10 +3,157 @@ Debian
.. contents::
Easy Way: Debian Buster
------------------------
This procedure will guide you through the installation of ZoneMinder on Debian 10 (Buster).
**Step 1:** Make sure your system is up to date
Open a console and use ``su`` command to become root.
::
apt update
apt upgrade
**Step 2:** Setup Sudo (optional but recommended)
By default Debian does not come with sudo, so you have to install it and configure it manually.
This step is optional but recommended and the following instructions assume that you have setup sudo.
If you prefer to setup ZoneMinder as root, do it at your own risk and adapt the following instructions accordingly.
::
apt install sudo
usermod -a -G sudo <username>
exit
Now your terminal session is back under your normal user. You can check that
you are now part of the sudo group with the command ``groups``, "sudo" should
appear in the list. If not, run ``newgrp sudo`` and check again with ``groups``.
**Step 3:** Install Apache and MySQL
These are not dependencies for the ZoneMinder package as they could be
installed elsewhere. If they are not installed yet in your system, you have to
trigger their installation manually.
::
sudo apt install apache2 mysql-server
**Step 4:** Add ZoneMinder's Package repository to your apt sources
ZoneMinder's Debian packages are not included in Debian's official package
repositories. To be able to install ZoneMinder with APT, you have to edit the
list of apt sources and add ZoneMinder's repository.
::
sudo nano /etc/apt/sources.list
Add the following to the bottom of the file
::
# ZoneMinder repository
deb https://zmrepo.zoneminder.com/debian/release-1.34 stretch/
CTRL+o and <Enter> to save
CTRL+x to exit
Because ZoneMinder's package repository provides a secure connection through HTTPS, apt must be enabled for HTTPS.
::
sudo apt install apt-transport-https
Finally, download the GPG key for ZoneMinder's repository:
::
wget -O - https://zmrepo.zoneminder.com/debian/archive-keyring.gpg | sudo apt-key add -
**Step 5:** Install ZoneMinder
::
sudo apt update
sudo apt install zoneminder
**Step 6:** Read the Readme
The rest of the install process is covered in the README.Debian, so feel free to have
a read.
::
zcat /usr/share/doc/zoneminder/README.Debian.gz
**Step 7:** Enable ZoneMinder service
::
sudo systemctl enable zoneminder.service
**Step 8:** Configure Apache
The following commands will setup the default /zm virtual directory and configure
required apache modules.
::
sudo a2enconf zoneminder
sudo a2enmod rewrite
sudo a2enmod cgi # this is done automatically when installing the package. Redo this command manually only for troubleshooting.
**Step 9:** Edit Timezone in PHP
Automated way:
::
sudo sed -i "s/;date.timezone =/date.timezone = $(sed 's/\//\\\//' /etc/timezone)/g" /etc/php/7.0/apache2/php.ini
Manual way
::
sudo nano /etc/php/7.0/apache2/php.ini
Search for [Date] (Ctrl + w then type Date and press Enter) and change
date.timezone for your time zone. Don't forget to remove the ; from in front
of date.timezone.
::
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = America/New_York
CTRL+o then [Enter] to save
CTRL+x to exit
**Step 10:** Start ZoneMinder
Reload Apache to enable your changes and then start ZoneMinder.
::
sudo systemctl reload apache2
sudo systemctl start zoneminder
You are now ready to go with ZoneMinder. Open a browser and type either ``localhost/zm`` one the local machine or ``{IP-OF-ZM-SERVER}/zm`` if you connect from a remote computer.
Easy Way: Debian Stretch
------------------------
This procedure will guide you through the installation of ZoneMinder on Debian 9 (Stretch). This section has been tested with ZoneMinder 1.32.3 on Debian 9.8.
This procedure will guide you through the installation of ZoneMinder on Debian 9 (Stretch). This section has been tested with ZoneMinder 1.34 on Debian 9.8.
**Step 1:** Make sure your system is up to date
@ -52,7 +199,7 @@ Add the following to the bottom of the file
::
# ZoneMinder repository
deb https://zmrepo.zoneminder.com/debian/release stretch/
deb https://zmrepo.zoneminder.com/debian/release-1.34 stretch/
CTRL+o and <Enter> to save
CTRL+x to exit
@ -275,7 +422,6 @@ CTRL+x to exit
**Step 12:** Please check the configuration
Zoneminder 1.32.x
1. Check path of ZM_PATH in '/etc/zm/conf.d/zmcustom.conf' is ZM_PATH_ZMS=/zm/cgi-bin/nph-zms
::
cat /etc/zm/conf.d/zmcustom.conf
@ -309,8 +455,8 @@ Reload Apache to enable your changes and then start ZoneMinder.
::
{
"version": "1.29.0",
"apiversion": "1.29.0.1"
"version": "1.34.0",
"apiversion": "1.34.0.1"
}
**Congratulations** Your installation is complete

View File

@ -53,7 +53,7 @@ ZoneMinder releases are now being hosted at RPM Fusion. New users should navigat
Note that RHEL/CentOS 7 users should use yum instead of dnf.
Once ZoneMinder has been installed, it is critically important that you read the README file under /usr/share/doc/zoneminder. ZoneMinder will not run without completing the steps outlined in the README.
Once ZoneMinder has been installed, it is critically important that you read the README file under /usr/share/doc/zoneminder-common. ZoneMinder will not run without completing the steps outlined in the README.
How to Install Nightly Development Builds
-----------------------------------------
@ -191,7 +191,7 @@ Now clone the ZoneMinder git repository from your home folder:
git clone https://github.com/ZoneMinder/zoneminder
cd zoneminder
This will create a sub-folder called ZoneMinder, which will contain the latest development source code.
This will create a sub-folder called zoneminder, which will contain the latest development source code.
If you have previsouly cloned the ZoneMinder git repo and wish to update it to the most recent, then issue these commands instead:

View File

@ -32,8 +32,6 @@ BULK_FRAME_INTERVAL - Traditionally ZoneMinder writes an entry into the Frames d
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 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.
EVENT_IMAGE_DIGITS - As event images are captured they are stored to the filesystem with a numerical index. By default this index has three digits so the numbers start 001, 002 etc. This works works for most scenarios as events with more than 999 frames are rarely captured. However if you have extremely long events and use external applications then you may wish to increase this to ensure correct sorting of images in listings etc. Warning, increasing this value on a live system may render existing events unviewable as the event will have been saved with the previous scheme. Decreasing this value should have no ill effects.

40
onvif/modules/MYMETA.json Normal file
View File

@ -0,0 +1,40 @@
{
"abstract" : "unknown",
"author" : [
"Jan Hochstein"
],
"dynamic_config" : 0,
"generated_by" : "ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010",
"license" : [
"unknown"
],
"meta-spec" : {
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
"version" : 2
},
"name" : "ONVIF",
"no_index" : {
"directory" : [
"t",
"inc"
]
},
"prereqs" : {
"build" : {
"requires" : {
"ExtUtils::MakeMaker" : "0"
}
},
"configure" : {
"requires" : {
"ExtUtils::MakeMaker" : "0"
}
},
"runtime" : {
"requires" : {}
}
},
"release_status" : "stable",
"version" : "",
"x_serialization_backend" : "JSON::PP version 4.02"
}

22
onvif/modules/MYMETA.yml Normal file
View File

@ -0,0 +1,22 @@
---
abstract: unknown
author:
- 'Jan Hochstein'
build_requires:
ExtUtils::MakeMaker: '0'
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 0
generated_by: 'ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010'
license: unknown
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: '1.4'
name: ONVIF
no_index:
directory:
- t
- inc
requires: {}
version: ''
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'

View File

@ -44,6 +44,10 @@ require ONVIF::Deserializer::XSD;
require ONVIF::Device::Interfaces::Device::DevicePort;
require ONVIF::Media::Interfaces::Media::MediaPort;
require ONVIF::PTZ::Interfaces::PTZ::PTZPort;
require ONVIF::Analytics::Interfaces::Analytics::AnalyticsEnginePort;
require ONVIF::Analytics::Interfaces::Analytics::RuleEnginePort;
require WSNotification::Interfaces::WSBaseNotificationSender::NotificationProducerPort;
use Data::Dump qw(dump);
@ -70,6 +74,7 @@ my %services_of :ATTR(:default<{}>);
my %serializer_of :ATTR();
my %soap_version_of :ATTR(:default<('1.1')>);
my $verbose;
# =========================================================================
# private methods
@ -117,25 +122,27 @@ sub get_service_urls {
}
);
if ( $result ) {
print "Have results from GetServices\n" if $verbose;
foreach my $svc ( @{ $result->get_Service() } ) {
my $short_name = $namespace_map{$svc->get_Namespace()};
my $url_svc = $svc->get_XAddr()->get_value();
if ( defined $short_name && defined $url_svc ) {
#print "Got $short_name service\n";
print "Got $short_name service $url_svc\n" if $verbose;
$self->set_service($short_name, 'url', $url_svc);
}
}
#} else {
#print "No results from GetServices: $result\n";
} else {
print "No results from GetServices\n" if $verbose;
}
# Some devices do not support getServices, so we have to try getCapabilities
$result = $self->service('device', 'ep')->GetCapabilities( {}, , );
if ( !$result ) {
print "No results from GetCapabilities: $result\n";
print "No results from GetCapabilities: $result\n" if $verbose;
return;
}
print "Have results from GetCapabilities: $result\n" if $verbose;
# Result is a GetCapabilitiesResponse
foreach my $capabilities ( @{ $result->get_Capabilities() } ) {
foreach my $capability ( 'PTZ', 'Media', 'Imaging', 'Events', 'Device' ) {
@ -156,7 +163,6 @@ sub get_service_urls {
}
} else {
print "No $capability function\n";
} # end if has a get_ function
} # end foreach capability
} # end foreach capabilities
@ -185,9 +191,10 @@ sub http_digest {
sub BUILD {
my ($self, $ident, $args_ref) = @_;
my $url_svc_device = $args_ref->{'url_svc_device'};
my $soap_version = $args_ref->{'soap_version'};
if(! $soap_version) {
$verbose = $args_ref->{verbose};
my $url_svc_device = $args_ref->{url_svc_device};
my $soap_version = $args_ref->{soap_version};
if ( !$soap_version ) {
$soap_version = '1.1';
}
$self->set_soap_version($soap_version);
@ -240,7 +247,7 @@ sub set_credentials {
# TODO: snyc device and client time
if ($create_if_not_exists) {
if ( $create_if_not_exists ) {
# If GetUsers() is ok but empty then CreateUsers()
# if(not get_users()) {
# create_user($username, $password);
@ -276,7 +283,26 @@ sub create_services {
# transport => $transport
}));
}
}
if ( defined $self->service('events', 'url') ) {
$self->set_service('events', 'ep', WSNotification::Interfaces::WSBaseNotificationSender::NotificationProducerPort->new({
proxy => $self->service('events', 'url'),
serializer => $self->serializer(),
# transport => $transport
}));
}
if ( defined $self->service('analytics', 'url') ) {
$self->set_service('analytics', 'ep', ONVIF::Analytics::Interfaces::Analytics::AnalyticsEnginePort->new({
proxy => $self->service('analytics', 'url'),
serializer => $self->serializer(),
# transport => $transport
}));
$self->set_service('rules', 'ep', ONVIF::Analytics::Interfaces::Analytics::RuleEnginePort->new({
proxy => $self->service('analytics', 'url'),
serializer => $self->serializer(),
# transport => $transport
}));
}
} # end sub create_services
sub get_endpoint {
my ($self, $serviceType) = @_;

View File

@ -33,16 +33,15 @@ use ONVIF::Deserializer::MessageParser;
use SOAP::WSDL::Factory::Deserializer;
SOAP::WSDL::Factory::Deserializer->register('1.1', __PACKAGE__ );
SOAP::WSDL::Factory::Deserializer->register('1.2', __PACKAGE__ );
SOAP::WSDL::Factory::Deserializer->register('1.1', __PACKAGE__);
SOAP::WSDL::Factory::Deserializer->register('1.2', __PACKAGE__);
## we get the soap version from the message parser
my %soap_version_of :ATTR( :default<()>);
sub soap_version {
my ($self) = @_;
if($SOAP::WSDL::Deserializer::XSD::parser_of{ident $self}) {
if ( $SOAP::WSDL::Deserializer::XSD::parser_of{ident $self} ) {
return $SOAP::WSDL::Deserializer::XSD::parser_of{ident $self}->soap_version();
}
return '';
@ -52,7 +51,7 @@ sub deserialize {
my ($self, $content) = @_;
my $parser = $SOAP::WSDL::Deserializer::XSD::parser_of{ ${ $self } };
if(not $parser) {
if ( not $parser ) {
$parser = ONVIF::Deserializer::MessageParser->new({
strict => $SOAP::WSDL::Deserializer::XSD::strict_of{ ${ $self } }
});
@ -61,8 +60,8 @@ sub deserialize {
$parser->class_resolver(
$self->SOAP::WSDL::Deserializer::XSD::get_class_resolver() );
eval { $parser->parse_string( $content ) };
if ($@) {
eval { $parser->parse_string($content) };
if ( $@ ) {
return $self->generate_fault({
code => 'SOAP-ENV:Server',
role => 'urn:localhost',
@ -79,12 +78,9 @@ sub generate_fault {
return SOAP::WSDL::SOAP::Typelib::Fault11->new({
faultcode => $args_from_ref->{ code } || 'SOAP-ENV:Client',
faultactor => $args_from_ref->{ role } || 'urn:localhost',
faultstring => $args_from_ref->{ message } || "Unknown error"
faultstring => $args_from_ref->{ message } || 'Unknown error'
});
}
1;
__END__

0
onvif/modules/pm_to_blib Normal file
View File

40
onvif/proxy/MYMETA.json Normal file
View File

@ -0,0 +1,40 @@
{
"abstract" : "unknown",
"author" : [
"Jan Hochstein"
],
"dynamic_config" : 0,
"generated_by" : "ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010",
"license" : [
"unknown"
],
"meta-spec" : {
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
"version" : 2
},
"name" : "ONVIF",
"no_index" : {
"directory" : [
"t",
"inc"
]
},
"prereqs" : {
"build" : {
"requires" : {
"ExtUtils::MakeMaker" : "0"
}
},
"configure" : {
"requires" : {
"ExtUtils::MakeMaker" : "0"
}
},
"runtime" : {
"requires" : {}
}
},
"release_status" : "stable",
"version" : "",
"x_serialization_backend" : "JSON::PP version 4.02"
}

22
onvif/proxy/MYMETA.yml Normal file
View File

@ -0,0 +1,22 @@
---
abstract: unknown
author:
- 'Jan Hochstein'
build_requires:
ExtUtils::MakeMaker: '0'
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 0
generated_by: 'ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010'
license: unknown
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: '1.4'
name: ONVIF
no_index:
directory:
- t
- inc
requires: {}
version: ''
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,54 @@
package WSDiscovery::Attributes::Id;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('Id');
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Attribute
SOAP::WSDL::XSD::Typelib::Builtin::ID
);
}
1;
=pod
=head1 NAME
WSDiscovery::Attributes::Id
=head1 DESCRIPTION
Perl data type class for the XML Schema defined attribute
Id from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Attributes::Id->new($data);
Constructor. The following data structure may be passed to new():
{ value => $value }
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,54 @@
package WSDiscovery::Attributes::IsReferenceParameter;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('IsReferenceParameter');
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Attribute
SOAP::WSDL::XSD::Typelib::Builtin::boolean
);
}
1;
=pod
=head1 NAME
WSDiscovery::Attributes::IsReferenceParameter
=head1 DESCRIPTION
Perl data type class for the XML Schema defined attribute
IsReferenceParameter from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Attributes::IsReferenceParameter->new($data);
Constructor. The following data structure may be passed to new():
{ value => $value }
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::Action;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('Action');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::AttributedURIType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::Action
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
Action from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::Action->new($data);
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,58 @@
package WSDiscovery::Elements::AppSequence;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('AppSequence');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::AppSequenceType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::AppSequence
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
AppSequence from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::AppSequence->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::AppSequenceType
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,69 @@
package WSDiscovery::Elements::Bye;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('Bye');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::ByeType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::Bye
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
Bye from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::Bye->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ByeType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
XAddrs => $some_value, # UriListType
MetadataVersion => $some_value, # unsignedInt
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,63 @@
package WSDiscovery::Elements::EndpointReference;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('EndpointReference');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::EndpointReferenceType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::EndpointReference
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
EndpointReference from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::EndpointReference->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,63 @@
package WSDiscovery::Elements::FaultTo;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('FaultTo');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::EndpointReferenceType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::FaultTo
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
FaultTo from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::FaultTo->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,63 @@
package WSDiscovery::Elements::From;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('From');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::EndpointReferenceType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::From
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
From from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::From->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,69 @@
package WSDiscovery::Elements::Hello;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('Hello');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::HelloType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::Hello
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
Hello from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::Hello->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::HelloType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
XAddrs => $some_value, # UriListType
MetadataVersion => $some_value, # unsignedInt
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::MessageID;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('MessageID');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::AttributedURIType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::MessageID
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
MessageID from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::MessageID->new($data);
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,58 @@
package WSDiscovery::Elements::Metadata;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('Metadata');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::MetadataType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::Metadata
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
Metadata from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::Metadata->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::MetadataType
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::MetadataVersion;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('MetadataVersion');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::MetadataVersion
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
MetadataVersion from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::MetadataVersion->new($data);
Constructor. The following data structure may be passed to new():
$some_value, # unsignedInt
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,60 @@
package WSDiscovery::Elements::Probe;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('Probe');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::ProbeType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::Probe
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
Probe from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::Probe->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ProbeType
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,71 @@
package WSDiscovery::Elements::ProbeMatches;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('ProbeMatches');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::ProbeMatchesType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::ProbeMatches
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
ProbeMatches from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::ProbeMatches->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ProbeMatchesType
ProbeMatch => { # WSDiscovery::Types::ProbeMatchType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
XAddrs => $some_value, # UriListType
MetadataVersion => $some_value, # unsignedInt
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,60 @@
package WSDiscovery::Elements::ProblemAction;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('ProblemAction');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::ProblemActionType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::ProblemAction
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
ProblemAction from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::ProblemAction->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ProblemActionType
Action => { value => $some_value },
SoapAction => $some_value, # anyURI
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::ProblemHeaderQName;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('ProblemHeaderQName');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::AttributedQNameType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::ProblemHeaderQName
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
ProblemHeaderQName from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::ProblemHeaderQName->new($data);
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::ProblemIRI;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('ProblemIRI');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::AttributedURIType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::ProblemIRI
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
ProblemIRI from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::ProblemIRI->new($data);
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,58 @@
package WSDiscovery::Elements::ReferenceParameters;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('ReferenceParameters');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::ReferenceParametersType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::ReferenceParameters
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
ReferenceParameters from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::ReferenceParameters->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ReferenceParametersType
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::RelatesTo;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('RelatesTo');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::RelatesToType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::RelatesTo
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
RelatesTo from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::RelatesTo->new($data);
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,63 @@
package WSDiscovery::Elements::ReplyTo;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('ReplyTo');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::EndpointReferenceType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::ReplyTo
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
ReplyTo from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::ReplyTo->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,65 @@
package WSDiscovery::Elements::Resolve;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('Resolve');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::ResolveType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::Resolve
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
Resolve from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::Resolve->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ResolveType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,71 @@
package WSDiscovery::Elements::ResolveMatches;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('ResolveMatches');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::ResolveMatchesType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::ResolveMatches
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
ResolveMatches from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::ResolveMatches->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ResolveMatchesType
ResolveMatch => { # WSDiscovery::Types::ResolveMatchType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
XAddrs => $some_value, # UriListType
MetadataVersion => $some_value, # unsignedInt
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::RetryAfter;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('RetryAfter');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::AttributedUnsignedLongType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::RetryAfter
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
RetryAfter from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::RetryAfter->new($data);
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::Scopes;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('Scopes');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::ScopesType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::Scopes
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
Scopes from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::Scopes->new($data);
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,60 @@
package WSDiscovery::Elements::Security;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('Security');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::SecurityType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::Security
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
Security from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::Security->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::SecurityType
Sig => { # WSDiscovery::Types::SigType
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,58 @@
package WSDiscovery::Elements::Sig;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('Sig');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::SigType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::Sig
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
Sig from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::Sig->new($data);
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::SigType
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::SupportedMatchingRules;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('SupportedMatchingRules');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::UriListType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::SupportedMatchingRules
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
SupportedMatchingRules from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::SupportedMatchingRules->new($data);
Constructor. The following data structure may be passed to new():
$some_value, # UriListType
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::To;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' }
__PACKAGE__->__set_name('To');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::AttributedURIType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::To
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
To from the namespace http://www.w3.org/2005/08/addressing.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::To->new($data);
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::Types;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('Types');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::QNameListType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::Types
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
Types from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::Types->new($data);
Constructor. The following data structure may be passed to new():
$some_value, # QNameListType
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,57 @@
package WSDiscovery::Elements::XAddrs;
use strict;
use warnings;
{ # BLOCK to scope variables
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' }
__PACKAGE__->__set_name('XAddrs');
__PACKAGE__->__set_nillable();
__PACKAGE__->__set_minOccurs();
__PACKAGE__->__set_maxOccurs();
__PACKAGE__->__set_ref();
use base qw(
SOAP::WSDL::XSD::Typelib::Element
WSDiscovery::Types::UriListType
);
}
1;
=pod
=head1 NAME
WSDiscovery::Elements::XAddrs
=head1 DESCRIPTION
Perl data type class for the XML Schema defined element
XAddrs from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head1 METHODS
=head2 new
my $element = WSDiscovery::Elements::XAddrs->new($data);
Constructor. The following data structure may be passed to new():
$some_value, # UriListType
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,131 @@
package WSDiscovery::Interfaces::WSDiscovery::WSDiscoveryPort;
use strict;
use warnings;
use Class::Std::Fast::Storable;
use Scalar::Util qw(blessed);
use base qw(SOAP::WSDL::Client::Base);
# only load if it hasn't been loaded before
require WSDiscovery::Typemaps::WSDiscovery
if not WSDiscovery::Typemaps::WSDiscovery->can('get_class');
sub START {
$_[0]->set_proxy('soap.udp://239.255.255.250:3702/') if not $_[2]->{proxy};
$_[0]->set_class_resolver('WSDiscovery::Typemaps::WSDiscovery')
if not $_[2]->{class_resolver};
$_[0]->set_prefix($_[2]->{use_prefix}) if exists $_[2]->{use_prefix};
}
sub ProbeOp {
my ($self, $body, $header) = @_;
die "ProbeOp must be called as object method (\$self is <$self>)" if not blessed($self);
return $self->SUPER::call({
operation => 'ProbeOp',
soap_action => 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01/Probe',
style => 'document',
body => {
'use' => 'literal',
namespace => 'http://schemas.xmlsoap.org/wsdl/soap/',
encodingStyle => '',
parts => [qw( WSDiscovery::Elements::Probe )],
},
header => {
},
headerfault => {
}
}, $body, $header);
}
1;
__END__
=pod
=head1 NAME
WSDiscovery::Interfaces::WSDiscovery::WSDiscoveryPort - SOAP Interface for the WSDiscovery Web Service
=head1 SYNOPSIS
use WSDiscovery::Interfaces::WSDiscovery::WSDiscoveryPort;
my $interface = WSDiscovery::Interfaces::WSDiscovery::WSDiscoveryPort->new();
my $response;
$response = $interface->ProbeOp();
=head1 DESCRIPTION
SOAP Interface for the WSDiscovery web service
located at soap.udp://239.255.255.250:3702/.
=head1 SERVICE WSDiscovery
=head2 Port WSDiscoveryPort
=head1 METHODS
=head2 General methods
=head3 new
Constructor.
All arguments are forwarded to L<SOAP::WSDL::Client|SOAP::WSDL::Client>.
=head2 SOAP Service methods
Method synopsis is displayed with hash refs as parameters.
The commented class names in the method's parameters denote that objects
of the corresponding class can be passed instead of the marked hash ref.
You may pass any combination of objects, hash and list refs to these
methods, as long as you meet the structure.
List items (i.e. multiple occurences) are not displayed in the synopsis.
You may generally pass a list ref of hash refs (or objects) instead of a hash
ref - this may result in invalid XML if used improperly, though. Note that
SOAP::WSDL always expects list references at maximum depth position.
XML attributes are not displayed in this synopsis and cannot be set using
hash refs. See the respective class' documentation for additional information.
=head3 ProbeOp
Returns a L<WSDiscovery::Elements::ProbeMatches|WSDiscovery::Elements::ProbeMatches> object.
$response = $interface->ProbeOp( { # WSDiscovery::Types::ProbeType
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
},,
);
=head1 AUTHOR
Generated by SOAP::WSDL on Wed Jul 2 11:45:24 2014
=cut

View File

@ -0,0 +1,59 @@
package WSDiscovery::Typemaps::WSDiscovery;
use strict;
use warnings;
our $typemap_1 = {
'ProbeMatches/ProbeMatch/XAddrs' => 'WSDiscovery::Types::UriListType',
'ProbeMatches/ProbeMatch' => 'WSDiscovery::Types::ProbeMatchType',
'Fault/detail' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
'ProbeMatches/ProbeMatch/EndpointReference/Metadata' => 'WSDiscovery::Types::MetadataType',
'ProbeMatches/ProbeMatch/Scopes' => 'WSDiscovery::Types::ScopesType',
'ProbeMatches/ProbeMatch/EndpointReference/Address' => 'WSDiscovery::Types::AttributedURIType',
'Probe/Types' => 'WSDiscovery::Types::QNameListType',
'Probe' => 'WSDiscovery::Elements::Probe',
'Fault/faultstring' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
'ProbeMatches/ProbeMatch/MetadataVersion' => 'SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt',
'Probe/Scopes' => 'WSDiscovery::Types::ScopesType',
'Fault/faultactor' => 'SOAP::WSDL::XSD::Typelib::Builtin::token',
'Fault/faultcode' => 'SOAP::WSDL::XSD::Typelib::Builtin::anyURI',
'ProbeMatches/ProbeMatch/Types' => 'WSDiscovery::Types::QNameListType',
'ProbeMatches/ProbeMatch/EndpointReference/ReferenceParameters' => 'WSDiscovery::Types::ReferenceParametersType',
'ProbeMatches/ProbeMatch/EndpointReference' => 'WSDiscovery::Types::EndpointReferenceType',
'Fault' => 'SOAP::WSDL::SOAP::Typelib::Fault11',
'ProbeMatches' => 'WSDiscovery::Elements::ProbeMatches',
'MessageID' => 'WSDiscovery::Elements::MessageID',
'RelatesTo' => '__SKIP__',
'To' => '__SKIP__',
'Action' => '__SKIP__',
'AppSequence' => '__SKIP__',
};
;
sub get_class {
my $name = join '/', @{ $_[1] };
return $typemap_1->{ $name };
}
sub get_typemap {
return $typemap_1;
}
1;
__END__
__END__
=pod
=head1 NAME
WSDiscovery::Typemaps::WSDiscovery - typemap for WSDiscovery
=head1 DESCRIPTION
Typemap created by SOAP::WSDL for map-based SOAP message parsers.
=cut

View File

@ -0,0 +1,138 @@
package WSDiscovery::Types::AppSequenceType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
our $XML_ATTRIBUTE_CLASS = 'WSDiscovery::Types::AppSequenceType::_AppSequenceType::XmlAttr';
sub __get_attr_class {
return $XML_ATTRIBUTE_CLASS;
}
use base qw();
package WSDiscovery::Types::AppSequenceType::_AppSequenceType::XmlAttr;
use base qw(SOAP::WSDL::XSD::Typelib::AttributeSet);
{ # BLOCK to scope variables
my %InstanceId_of :ATTR(:get<InstanceId>);
my %SequenceId_of :ATTR(:get<SequenceId>);
my %MessageNumber_of :ATTR(:get<MessageNumber>);
__PACKAGE__->_factory(
[ qw(
InstanceId
SequenceId
MessageNumber
) ],
{
InstanceId => \%InstanceId_of,
SequenceId => \%SequenceId_of,
MessageNumber => \%MessageNumber_of,
},
{
InstanceId => 'SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt',
SequenceId => 'SOAP::WSDL::XSD::Typelib::Builtin::anyURI',
MessageNumber => 'SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::AppSequenceType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
AppSequenceType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::AppSequenceType
},
=head2 attr
NOTE: Attribute documentation is experimental, and may be inaccurate.
See the correspondent WSDL/XML Schema if in question.
This class has additional attributes, accessibly via the C<attr()> method.
attr() returns an object of the class WSDiscovery::Types::AppSequenceType::_AppSequenceType::XmlAttr.
The following attributes can be accessed on this object via the corresponding
get_/set_ methods:
=over
=item * InstanceId
This attribute is of type L<SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt|SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt>.
=item * SequenceId
This attribute is of type L<SOAP::WSDL::XSD::Typelib::Builtin::anyURI|SOAP::WSDL::XSD::Typelib::Builtin::anyURI>.
=item * MessageNumber
This attribute is of type L<SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt|SOAP::WSDL::XSD::Typelib::Builtin::unsignedInt>.
=back
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,73 @@
package WSDiscovery::Types::AttributedQNameType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' };
our $XML_ATTRIBUTE_CLASS;
undef $XML_ATTRIBUTE_CLASS;
sub __get_attr_class {
return $XML_ATTRIBUTE_CLASS;
}
use base qw(
SOAP::WSDL::XSD::Typelib::ComplexType
SOAP::WSDL::XSD::Typelib::Builtin::QName
);
1;
=pod
=head1 NAME
WSDiscovery::Types::AttributedQNameType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
AttributedQNameType from the namespace http://www.w3.org/2005/08/addressing.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,73 @@
package WSDiscovery::Types::AttributedURIType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' };
our $XML_ATTRIBUTE_CLASS;
undef $XML_ATTRIBUTE_CLASS;
sub __get_attr_class {
return $XML_ATTRIBUTE_CLASS;
}
use base qw(
SOAP::WSDL::XSD::Typelib::ComplexType
SOAP::WSDL::XSD::Typelib::Builtin::anyURI
);
1;
=pod
=head1 NAME
WSDiscovery::Types::AttributedURIType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
AttributedURIType from the namespace http://www.w3.org/2005/08/addressing.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,73 @@
package WSDiscovery::Types::AttributedUnsignedLongType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' };
our $XML_ATTRIBUTE_CLASS;
undef $XML_ATTRIBUTE_CLASS;
sub __get_attr_class {
return $XML_ATTRIBUTE_CLASS;
}
use base qw(
SOAP::WSDL::XSD::Typelib::ComplexType
SOAP::WSDL::XSD::Typelib::Builtin::unsignedLong
);
1;
=pod
=head1 NAME
WSDiscovery::Types::AttributedUnsignedLongType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
AttributedUnsignedLongType from the namespace http://www.w3.org/2005/08/addressing.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,180 @@
package WSDiscovery::Types::ByeType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
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 %EndpointReference_of :ATTR(:get<EndpointReference>);
my %Types_of :ATTR(:get<Types>);
my %Scopes_of :ATTR(:get<Scopes>);
my %XAddrs_of :ATTR(:get<XAddrs>);
my %MetadataVersion_of :ATTR(:get<MetadataVersion>);
__PACKAGE__->_factory(
[ qw( EndpointReference
Types
Scopes
XAddrs
MetadataVersion
) ],
{
'EndpointReference' => \%EndpointReference_of,
'Types' => \%Types_of,
'Scopes' => \%Scopes_of,
'XAddrs' => \%XAddrs_of,
'MetadataVersion' => \%MetadataVersion_of,
},
{
'EndpointReference' => 'WSDiscovery::Elements::EndpointReference',
'Types' => 'WSDiscovery::Elements::Types',
'Scopes' => 'WSDiscovery::Elements::Scopes',
'XAddrs' => 'WSDiscovery::Elements::XAddrs',
'MetadataVersion' => 'WSDiscovery::Elements::MetadataVersion',
},
{
'EndpointReference' => '',
'Types' => '',
'Scopes' => '',
'XAddrs' => '',
'MetadataVersion' => '',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::ByeType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ByeType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * EndpointReference
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * Types
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * Scopes
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * XAddrs
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * MetadataVersion
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ByeType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
XAddrs => $some_value, # UriListType
MetadataVersion => $some_value, # unsignedInt
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,137 @@
package WSDiscovery::Types::EndpointReferenceType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' };
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 %Address_of :ATTR(:get<Address>);
my %ReferenceParameters_of :ATTR(:get<ReferenceParameters>);
my %Metadata_of :ATTR(:get<Metadata>);
__PACKAGE__->_factory(
[ qw( Address
ReferenceParameters
Metadata
) ],
{
'Address' => \%Address_of,
'ReferenceParameters' => \%ReferenceParameters_of,
'Metadata' => \%Metadata_of,
},
{
'Address' => 'WSDiscovery::Types::AttributedURIType',
'ReferenceParameters' => 'WSDiscovery::Elements::ReferenceParameters',
'Metadata' => 'WSDiscovery::Elements::Metadata',
},
{
'Address' => 'Address',
'ReferenceParameters' => '',
'Metadata' => '',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::EndpointReferenceType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
EndpointReferenceType from the namespace http://www.w3.org/2005/08/addressing.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * Address
=item * ReferenceParameters
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * Metadata
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,76 @@
package WSDiscovery::Types::FaultCodeOpenType;
use strict;
use warnings;
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01'};
# derivation by union
# union is not fully supported yet - value space constraints are not
# checked yet.
# This implementation of union resorts to the simplest possible base, which
# is: "If the <list> or <union> alternative is chosen, then the
# simple ur-type definition·."
#
use base qw(
SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType
);
1;
__END__
=pod
=head1 NAME
=head1 DESCRIPTION
Perl data type class for the XML Schema defined simpleType
FaultCodeOpenType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
This type class is derived by union.
Derivation by union is not fully supported yet - value space constraints are
not checked yet.
The current implementation of union resorts to inheriting from the base type,
which means (quoted from the XML Schema specs): "If the <list> or <union>
alternative is chosen, then the simple ur-type definition·."
=head1 METHODS
=head2 new
Constructor.
=head2 get_value / set_value
Getter and setter for the simpleType's value.
=head1 OVERLOADING
Depending on the simple type's base type, the following operations are overloaded
Stringification
Numerification
Boolification
Check L<SOAP::WSDL::XSD::Typelib::Builtin> for more information.
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,65 @@
package WSDiscovery::Types::FaultCodeType;
use strict;
use warnings;
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01'};
# derivation by restriction
use base qw(
SOAP::WSDL::XSD::Typelib::Builtin::QName);
1;
__END__
=pod
=head1 NAME
=head1 DESCRIPTION
Perl data type class for the XML Schema defined simpleType
FaultCodeType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
This clase is derived from
SOAP::WSDL::XSD::Typelib::Builtin::QName
. SOAP::WSDL's schema implementation does not validate data, so you can use it exactly
like it's base type.
# Description of restrictions not implemented yet.
=head1 METHODS
=head2 new
Constructor.
=head2 get_value / set_value
Getter and setter for the simpleType's value.
=head1 OVERLOADING
Depending on the simple type's base type, the following operations are overloaded
Stringification
Numerification
Boolification
Check L<SOAP::WSDL::XSD::Typelib::Builtin> for more information.
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,76 @@
package WSDiscovery::Types::FaultCodesOpenEnumType;
use strict;
use warnings;
sub get_xmlns { 'http://www.w3.org/2005/08/addressing'};
# derivation by union
# union is not fully supported yet - value space constraints are not
# checked yet.
# This implementation of union resorts to the simplest possible base, which
# is: "If the <list> or <union> alternative is chosen, then the
# simple ur-type definition·."
#
use base qw(
SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType
);
1;
__END__
=pod
=head1 NAME
=head1 DESCRIPTION
Perl data type class for the XML Schema defined simpleType
FaultCodesOpenEnumType from the namespace http://www.w3.org/2005/08/addressing.
This type class is derived by union.
Derivation by union is not fully supported yet - value space constraints are
not checked yet.
The current implementation of union resorts to inheriting from the base type,
which means (quoted from the XML Schema specs): "If the <list> or <union>
alternative is chosen, then the simple ur-type definition·."
=head1 METHODS
=head2 new
Constructor.
=head2 get_value / set_value
Getter and setter for the simpleType's value.
=head1 OVERLOADING
Depending on the simple type's base type, the following operations are overloaded
Stringification
Numerification
Boolification
Check L<SOAP::WSDL::XSD::Typelib::Builtin> for more information.
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,65 @@
package WSDiscovery::Types::FaultCodesType;
use strict;
use warnings;
sub get_xmlns { 'http://www.w3.org/2005/08/addressing'};
# derivation by restriction
use base qw(
SOAP::WSDL::XSD::Typelib::Builtin::QName);
1;
__END__
=pod
=head1 NAME
=head1 DESCRIPTION
Perl data type class for the XML Schema defined simpleType
FaultCodesType from the namespace http://www.w3.org/2005/08/addressing.
This clase is derived from
SOAP::WSDL::XSD::Typelib::Builtin::QName
. SOAP::WSDL's schema implementation does not validate data, so you can use it exactly
like it's base type.
# Description of restrictions not implemented yet.
=head1 METHODS
=head2 new
Constructor.
=head2 get_value / set_value
Getter and setter for the simpleType's value.
=head1 OVERLOADING
Depending on the simple type's base type, the following operations are overloaded
Stringification
Numerification
Boolification
Check L<SOAP::WSDL::XSD::Typelib::Builtin> for more information.
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,180 @@
package WSDiscovery::Types::HelloType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
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 %EndpointReference_of :ATTR(:get<EndpointReference>);
my %Types_of :ATTR(:get<Types>);
my %Scopes_of :ATTR(:get<Scopes>);
my %XAddrs_of :ATTR(:get<XAddrs>);
my %MetadataVersion_of :ATTR(:get<MetadataVersion>);
__PACKAGE__->_factory(
[ qw( EndpointReference
Types
Scopes
XAddrs
MetadataVersion
) ],
{
'EndpointReference' => \%EndpointReference_of,
'Types' => \%Types_of,
'Scopes' => \%Scopes_of,
'XAddrs' => \%XAddrs_of,
'MetadataVersion' => \%MetadataVersion_of,
},
{
'EndpointReference' => 'WSDiscovery::Elements::EndpointReference',
'Types' => 'WSDiscovery::Elements::Types',
'Scopes' => 'WSDiscovery::Elements::Scopes',
'XAddrs' => 'WSDiscovery::Elements::XAddrs',
'MetadataVersion' => 'WSDiscovery::Elements::MetadataVersion',
},
{
'EndpointReference' => '',
'Types' => '',
'Scopes' => '',
'XAddrs' => '',
'MetadataVersion' => '',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::HelloType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
HelloType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * EndpointReference
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * Types
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * Scopes
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * XAddrs
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * MetadataVersion
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::HelloType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
XAddrs => $some_value, # UriListType
MetadataVersion => $some_value, # unsignedInt
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,94 @@
package WSDiscovery::Types::MetadataType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' };
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
1;
=pod
=head1 NAME
WSDiscovery::Types::MetadataType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
MetadataType from the namespace http://www.w3.org/2005/08/addressing.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::MetadataType
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,180 @@
package WSDiscovery::Types::ProbeMatchType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
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 %EndpointReference_of :ATTR(:get<EndpointReference>);
my %Types_of :ATTR(:get<Types>);
my %Scopes_of :ATTR(:get<Scopes>);
my %XAddrs_of :ATTR(:get<XAddrs>);
my %MetadataVersion_of :ATTR(:get<MetadataVersion>);
__PACKAGE__->_factory(
[ qw( EndpointReference
Types
Scopes
XAddrs
MetadataVersion
) ],
{
'EndpointReference' => \%EndpointReference_of,
'Types' => \%Types_of,
'Scopes' => \%Scopes_of,
'XAddrs' => \%XAddrs_of,
'MetadataVersion' => \%MetadataVersion_of,
},
{
'EndpointReference' => 'WSDiscovery::Elements::EndpointReference',
'Types' => 'WSDiscovery::Elements::Types',
'Scopes' => 'WSDiscovery::Elements::Scopes',
'XAddrs' => 'WSDiscovery::Elements::XAddrs',
'MetadataVersion' => 'WSDiscovery::Elements::MetadataVersion',
},
{
'EndpointReference' => '',
'Types' => '',
'Scopes' => '',
'XAddrs' => '',
'MetadataVersion' => '',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::ProbeMatchType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ProbeMatchType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * EndpointReference
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * Types
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * Scopes
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * XAddrs
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * MetadataVersion
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ProbeMatchType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
XAddrs => $some_value, # UriListType
MetadataVersion => $some_value, # unsignedInt
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,115 @@
package WSDiscovery::Types::ProbeMatchesType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
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 %ProbeMatch_of :ATTR(:get<ProbeMatch>);
__PACKAGE__->_factory(
[ qw( ProbeMatch
) ],
{
'ProbeMatch' => \%ProbeMatch_of,
},
{
'ProbeMatch' => 'WSDiscovery::Types::ProbeMatchType',
},
{
'ProbeMatch' => 'ProbeMatch',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::ProbeMatchesType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ProbeMatchesType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * ProbeMatch
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ProbeMatchesType
ProbeMatch => { # WSDiscovery::Types::ProbeMatchType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
XAddrs => $some_value, # UriListType
MetadataVersion => $some_value, # unsignedInt
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,126 @@
package WSDiscovery::Types::ProbeType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
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 %Types_of :ATTR(:get<Types>);
my %Scopes_of :ATTR(:get<Scopes>);
__PACKAGE__->_factory(
[ qw( Types
Scopes
) ],
{
'Types' => \%Types_of,
'Scopes' => \%Scopes_of,
},
{
'Types' => 'WSDiscovery::Elements::Types',
'Scopes' => 'WSDiscovery::Elements::Scopes',
},
{
'Types' => '',
'Scopes' => '',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::ProbeType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ProbeType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * Types
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * Scopes
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ProbeType
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,119 @@
package WSDiscovery::Types::ProblemActionType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' };
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 %Action_of :ATTR(:get<Action>);
my %SoapAction_of :ATTR(:get<SoapAction>);
__PACKAGE__->_factory(
[ qw( Action
SoapAction
) ],
{
'Action' => \%Action_of,
'SoapAction' => \%SoapAction_of,
},
{
'Action' => 'WSDiscovery::Elements::Action',
'SoapAction' => 'SOAP::WSDL::XSD::Typelib::Builtin::anyURI',
},
{
'Action' => '',
'SoapAction' => 'SoapAction',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::ProblemActionType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ProblemActionType from the namespace http://www.w3.org/2005/08/addressing.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * Action
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * SoapAction
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ProblemActionType
Action => { value => $some_value },
SoapAction => $some_value, # anyURI
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,75 @@
package WSDiscovery::Types::QNameListType;
use strict;
use warnings;
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01'};
# list derivation
use base qw(
SOAP::WSDL::XSD::Typelib::Builtin::list
SOAP::WSDL::XSD::Typelib::Builtin::QName
);
1;
__END__
=pod
=head1 NAME
=head1 DESCRIPTION
Perl data type class for the XML Schema defined simpleType
QNameListType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
This clase is derived from
SOAP::WSDL::XSD::Typelib::Builtin::QName
.
You may pass the following structure to new():
[ $value_1, .. $value_n ]
All elements of the list must be of the class' base type (or valid arguments
to it's constructor).
=head1 METHODS
=head2 new
Constructor.
=head2 get_value / set_value
Getter and setter for the simpleType's value.
=head1 OVERLOADING
Depending on the simple type's base type, the following operations are overloaded
Stringification
Numerification
Boolification
Check L<SOAP::WSDL::XSD::Typelib::Builtin> for more information.
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,94 @@
package WSDiscovery::Types::ReferenceParametersType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' };
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
1;
=pod
=head1 NAME
WSDiscovery::Types::ReferenceParametersType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ReferenceParametersType from the namespace http://www.w3.org/2005/08/addressing.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ReferenceParametersType
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,118 @@
package WSDiscovery::Types::RelatesToType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://www.w3.org/2005/08/addressing' };
our $XML_ATTRIBUTE_CLASS = 'WSDiscovery::Types::RelatesToType::_RelatesToType::XmlAttr';
sub __get_attr_class {
return $XML_ATTRIBUTE_CLASS;
}
use base qw(
SOAP::WSDL::XSD::Typelib::ComplexType
SOAP::WSDL::XSD::Typelib::Builtin::anyURI
);
package WSDiscovery::Types::RelatesToType::_RelatesToType::XmlAttr;
use base qw(SOAP::WSDL::XSD::Typelib::AttributeSet);
{ # BLOCK to scope variables
my %RelationshipType_of :ATTR(:get<RelationshipType>);
__PACKAGE__->_factory(
[ qw(
RelationshipType
) ],
{
RelationshipType => \%RelationshipType_of,
},
{
RelationshipType => 'WSDiscovery::Types::RelationshipTypeOpenEnum',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::RelatesToType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
RelatesToType from the namespace http://www.w3.org/2005/08/addressing.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head2 attr
NOTE: Attribute documentation is experimental, and may be inaccurate.
See the correspondent WSDL/XML Schema if in question.
This class has additional attributes, accessibly via the C<attr()> method.
attr() returns an object of the class WSDiscovery::Types::RelatesToType::_RelatesToType::XmlAttr.
The following attributes can be accessed on this object via the corresponding
get_/set_ methods:
=over
=item * RelationshipType
This attribute is of type L<WSDiscovery::Types::RelationshipTypeOpenEnum|WSDiscovery::Types::RelationshipTypeOpenEnum>.
=back
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,65 @@
package WSDiscovery::Types::RelationshipType;
use strict;
use warnings;
sub get_xmlns { 'http://www.w3.org/2005/08/addressing'};
# derivation by restriction
use base qw(
SOAP::WSDL::XSD::Typelib::Builtin::anyURI);
1;
__END__
=pod
=head1 NAME
=head1 DESCRIPTION
Perl data type class for the XML Schema defined simpleType
RelationshipType from the namespace http://www.w3.org/2005/08/addressing.
This clase is derived from
SOAP::WSDL::XSD::Typelib::Builtin::anyURI
. SOAP::WSDL's schema implementation does not validate data, so you can use it exactly
like it's base type.
# Description of restrictions not implemented yet.
=head1 METHODS
=head2 new
Constructor.
=head2 get_value / set_value
Getter and setter for the simpleType's value.
=head1 OVERLOADING
Depending on the simple type's base type, the following operations are overloaded
Stringification
Numerification
Boolification
Check L<SOAP::WSDL::XSD::Typelib::Builtin> for more information.
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,76 @@
package WSDiscovery::Types::RelationshipTypeOpenEnum;
use strict;
use warnings;
sub get_xmlns { 'http://www.w3.org/2005/08/addressing'};
# derivation by union
# union is not fully supported yet - value space constraints are not
# checked yet.
# This implementation of union resorts to the simplest possible base, which
# is: "If the <list> or <union> alternative is chosen, then the
# simple ur-type definition·."
#
use base qw(
SOAP::WSDL::XSD::Typelib::Builtin::anySimpleType
);
1;
__END__
=pod
=head1 NAME
=head1 DESCRIPTION
Perl data type class for the XML Schema defined simpleType
RelationshipTypeOpenEnum from the namespace http://www.w3.org/2005/08/addressing.
This type class is derived by union.
Derivation by union is not fully supported yet - value space constraints are
not checked yet.
The current implementation of union resorts to inheriting from the base type,
which means (quoted from the XML Schema specs): "If the <list> or <union>
alternative is chosen, then the simple ur-type definition·."
=head1 METHODS
=head2 new
Constructor.
=head2 get_value / set_value
Getter and setter for the simpleType's value.
=head1 OVERLOADING
Depending on the simple type's base type, the following operations are overloaded
Stringification
Numerification
Boolification
Check L<SOAP::WSDL::XSD::Typelib::Builtin> for more information.
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,180 @@
package WSDiscovery::Types::ResolveMatchType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
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 %EndpointReference_of :ATTR(:get<EndpointReference>);
my %Types_of :ATTR(:get<Types>);
my %Scopes_of :ATTR(:get<Scopes>);
my %XAddrs_of :ATTR(:get<XAddrs>);
my %MetadataVersion_of :ATTR(:get<MetadataVersion>);
__PACKAGE__->_factory(
[ qw( EndpointReference
Types
Scopes
XAddrs
MetadataVersion
) ],
{
'EndpointReference' => \%EndpointReference_of,
'Types' => \%Types_of,
'Scopes' => \%Scopes_of,
'XAddrs' => \%XAddrs_of,
'MetadataVersion' => \%MetadataVersion_of,
},
{
'EndpointReference' => 'WSDiscovery::Elements::EndpointReference',
'Types' => 'WSDiscovery::Elements::Types',
'Scopes' => 'WSDiscovery::Elements::Scopes',
'XAddrs' => 'WSDiscovery::Elements::XAddrs',
'MetadataVersion' => 'WSDiscovery::Elements::MetadataVersion',
},
{
'EndpointReference' => '',
'Types' => '',
'Scopes' => '',
'XAddrs' => '',
'MetadataVersion' => '',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::ResolveMatchType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ResolveMatchType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * EndpointReference
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * Types
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * Scopes
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * XAddrs
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=item * MetadataVersion
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ResolveMatchType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
XAddrs => $some_value, # UriListType
MetadataVersion => $some_value, # unsignedInt
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,115 @@
package WSDiscovery::Types::ResolveMatchesType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
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 %ResolveMatch_of :ATTR(:get<ResolveMatch>);
__PACKAGE__->_factory(
[ qw( ResolveMatch
) ],
{
'ResolveMatch' => \%ResolveMatch_of,
},
{
'ResolveMatch' => 'WSDiscovery::Types::ResolveMatchType',
},
{
'ResolveMatch' => 'ResolveMatch',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::ResolveMatchesType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ResolveMatchesType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * ResolveMatch
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ResolveMatchesType
ResolveMatch => { # WSDiscovery::Types::ResolveMatchType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
Types => $some_value, # QNameListType
Scopes => { value => $some_value },
XAddrs => $some_value, # UriListType
MetadataVersion => $some_value, # unsignedInt
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,116 @@
package WSDiscovery::Types::ResolveType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
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 %EndpointReference_of :ATTR(:get<EndpointReference>);
__PACKAGE__->_factory(
[ qw( EndpointReference
) ],
{
'EndpointReference' => \%EndpointReference_of,
},
{
'EndpointReference' => 'WSDiscovery::Elements::EndpointReference',
},
{
'EndpointReference' => '',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::ResolveType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ResolveType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * EndpointReference
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::ResolveType
EndpointReference => { # WSDiscovery::Types::EndpointReferenceType
Address => { value => $some_value },
ReferenceParameters => { # WSDiscovery::Types::ReferenceParametersType
},
Metadata => { # WSDiscovery::Types::MetadataType
},
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,118 @@
package WSDiscovery::Types::ScopesType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
our $XML_ATTRIBUTE_CLASS = 'WSDiscovery::Types::ScopesType::_ScopesType::XmlAttr';
sub __get_attr_class {
return $XML_ATTRIBUTE_CLASS;
}
use base qw(
SOAP::WSDL::XSD::Typelib::ComplexType
WSDiscovery::Types::UriListType
);
package WSDiscovery::Types::ScopesType::_ScopesType::XmlAttr;
use base qw(SOAP::WSDL::XSD::Typelib::AttributeSet);
{ # BLOCK to scope variables
my %MatchBy_of :ATTR(:get<MatchBy>);
__PACKAGE__->_factory(
[ qw(
MatchBy
) ],
{
MatchBy => \%MatchBy_of,
},
{
MatchBy => 'SOAP::WSDL::XSD::Typelib::Builtin::anyURI',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::ScopesType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
ScopesType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ value => $some_value },
=head2 attr
NOTE: Attribute documentation is experimental, and may be inaccurate.
See the correspondent WSDL/XML Schema if in question.
This class has additional attributes, accessibly via the C<attr()> method.
attr() returns an object of the class WSDiscovery::Types::ScopesType::_ScopesType::XmlAttr.
The following attributes can be accessed on this object via the corresponding
get_/set_ methods:
=over
=item * MatchBy
This attribute is of type L<SOAP::WSDL::XSD::Typelib::Builtin::anyURI|SOAP::WSDL::XSD::Typelib::Builtin::anyURI>.
=back
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,111 @@
package WSDiscovery::Types::SecurityType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
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 %Sig_of :ATTR(:get<Sig>);
__PACKAGE__->_factory(
[ qw( Sig
) ],
{
'Sig' => \%Sig_of,
},
{
'Sig' => 'WSDiscovery::Elements::Sig',
},
{
'Sig' => '',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::SecurityType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
SecurityType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=item * Sig
Note: The name of this property has been altered, because it didn't match
perl's notion of variable/subroutine names. The altered name is used in
perl code only, XML output uses the original name:
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::SecurityType
Sig => { # WSDiscovery::Types::SigType
},
},
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,172 @@
package WSDiscovery::Types::SigType;
use strict;
use warnings;
__PACKAGE__->_set_element_form_qualified(0);
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01' };
our $XML_ATTRIBUTE_CLASS = 'WSDiscovery::Types::SigType::_SigType::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
__PACKAGE__->_factory(
[ qw(
) ],
{
},
{
},
{
}
);
} # end BLOCK
package WSDiscovery::Types::SigType::_SigType::XmlAttr;
use base qw(SOAP::WSDL::XSD::Typelib::AttributeSet);
{ # BLOCK to scope variables
my %Scheme_of :ATTR(:get<Scheme>);
my %KeyId_of :ATTR(:get<KeyId>);
my %Refs_of :ATTR(:get<Refs>);
my %Sig_of :ATTR(:get<Sig>);
__PACKAGE__->_factory(
[ qw(
Scheme
KeyId
Refs
Sig
) ],
{
Scheme => \%Scheme_of,
KeyId => \%KeyId_of,
Refs => \%Refs_of,
Sig => \%Sig_of,
},
{
Scheme => 'SOAP::WSDL::XSD::Typelib::Builtin::anyURI',
KeyId => 'SOAP::WSDL::XSD::Typelib::Builtin::base64Binary',
Refs => 'SOAP::WSDL::XSD::Typelib::Builtin::IDREFS',
Sig => 'SOAP::WSDL::XSD::Typelib::Builtin::base64Binary',
}
);
} # end BLOCK
1;
=pod
=head1 NAME
WSDiscovery::Types::SigType
=head1 DESCRIPTION
Perl data type class for the XML Schema defined complexType
SigType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
=head2 PROPERTIES
The following properties may be accessed using get_PROPERTY / set_PROPERTY
methods:
=over
=back
=head1 METHODS
=head2 new
Constructor. The following data structure may be passed to new():
{ # WSDiscovery::Types::SigType
},
=head2 attr
NOTE: Attribute documentation is experimental, and may be inaccurate.
See the correspondent WSDL/XML Schema if in question.
This class has additional attributes, accessibly via the C<attr()> method.
attr() returns an object of the class WSDiscovery::Types::SigType::_SigType::XmlAttr.
The following attributes can be accessed on this object via the corresponding
get_/set_ methods:
=over
=item * Scheme
This attribute is of type L<SOAP::WSDL::XSD::Typelib::Builtin::anyURI|SOAP::WSDL::XSD::Typelib::Builtin::anyURI>.
=item * KeyId
This attribute is of type L<SOAP::WSDL::XSD::Typelib::Builtin::base64Binary|SOAP::WSDL::XSD::Typelib::Builtin::base64Binary>.
=item * Refs
This attribute is of type L<SOAP::WSDL::XSD::Typelib::Builtin::IDREFS|SOAP::WSDL::XSD::Typelib::Builtin::IDREFS>.
=item * Sig
This attribute is of type L<SOAP::WSDL::XSD::Typelib::Builtin::base64Binary|SOAP::WSDL::XSD::Typelib::Builtin::base64Binary>.
=back
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

View File

@ -0,0 +1,75 @@
package WSDiscovery::Types::UriListType;
use strict;
use warnings;
sub get_xmlns { 'http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01'};
# list derivation
use base qw(
SOAP::WSDL::XSD::Typelib::Builtin::list
SOAP::WSDL::XSD::Typelib::Builtin::anyURI
);
1;
__END__
=pod
=head1 NAME
=head1 DESCRIPTION
Perl data type class for the XML Schema defined simpleType
UriListType from the namespace http://docs.oasis-open.org/ws-dd/ns/discovery/2009/01.
This clase is derived from
SOAP::WSDL::XSD::Typelib::Builtin::anyURI
.
You may pass the following structure to new():
[ $value_1, .. $value_n ]
All elements of the list must be of the class' base type (or valid arguments
to it's constructor).
=head1 METHODS
=head2 new
Constructor.
=head2 get_value / set_value
Getter and setter for the simpleType's value.
=head1 OVERLOADING
Depending on the simple type's base type, the following operations are overloaded
Stringification
Numerification
Boolification
Check L<SOAP::WSDL::XSD::Typelib::Builtin> for more information.
=head1 AUTHOR
Generated by SOAP::WSDL
=cut

0
onvif/proxy/pm_to_blib Normal file
View File

532
onvif/wsdl/analytics.wsdl Normal file
View File

@ -0,0 +1,532 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="../../../ver20/util/onvif-wsdl-viewer.xsl"?>
<!--
Copyright (c) 2008-2012 by ONVIF: Open Network Video Interface Forum. All rights reserved.
Recipients of this document may copy, distribute, publish, or display this document so long as this copyright notice, license and disclaimer are retained with all copies of the document. No license is granted to modify this document.
THIS DOCUMENT IS PROVIDED "AS IS," AND THE CORPORATION AND ITS MEMBERS AND THEIR AFFILIATES, MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS OF THIS DOCUMENT ARE SUITABLE FOR ANY PURPOSE; OR THAT THE IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
IN NO EVENT WILL THE CORPORATION OR ITS MEMBERS OR THEIR AFFILIATES BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL DAMAGES, ARISING OUT OF OR RELATING TO ANY USE OR DISTRIBUTION OF THIS DOCUMENT, WHETHER OR NOT (1) THE CORPORATION, MEMBERS OR THEIR AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES, OR (2) SUCH DAMAGES WERE REASONABLY FORESEEABLE, AND ARISING OUT OF OR RELATING TO ANY USE OR DISTRIBUTION OF THIS DOCUMENT. THE FOREGOING DISCLAIMER AND LIMITATION ON LIABILITY DO NOT APPLY TO, INVALIDATE, OR LIMIT REPRESENTATIONS AND WARRANTIES MADE BY THE MEMBERS AND THEIR RESPECTIVE AFFILIATES TO THE CORPORATION AND OTHER MEMBERS IN CERTAIN WRITTEN POLICIES OF THE CORPORATION.
-->
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tan="http://www.onvif.org/ver20/analytics/wsdl" targetNamespace="http://www.onvif.org/ver20/analytics/wsdl">
<wsdl:types>
<xs:schema targetNamespace="http://www.onvif.org/ver20/analytics/wsdl" xmlns:tt="http://www.onvif.org/ver10/schema" elementFormDefault="qualified" version="2.2">
<xs:import namespace="http://www.onvif.org/ver10/schema" schemaLocation="file:wsdl/onvif-local.xsd"/>
<!-- Message Request/Responses elements -->
<!--===============================-->
<xs:element name="GetServiceCapabilities">
<xs:complexType>
<xs:sequence/>
</xs:complexType>
</xs:element>
<xs:element name="GetServiceCapabilitiesResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="Capabilities" type="tan:Capabilities">
<xs:annotation>
<xs:documentation>The capabilities for the analytics service is returned in the Capabilities element.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!--===============================-->
<xs:complexType name="Capabilities">
<xs:sequence>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="RuleSupport" type="xs:boolean">
<xs:annotation>
<xs:documentation>Indication that the device supports the rules interface and the rules syntax.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="AnalyticsModuleSupport" type="xs:boolean">
<xs:annotation>
<xs:documentation>Indication that the device supports the scene analytics module interface.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="CellBasedSceneDescriptionSupported" type="xs:boolean">
<xs:annotation>
<xs:documentation>Indication that the device produces the cell based scene description</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:anyAttribute processContents="lax"/>
</xs:complexType>
<xs:element name="Capabilities" type="tan:Capabilities"/>
<!--===============================-->
<xs:element name="GetSupportedRules">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationToken" type="tt:ReferenceToken">
<xs:annotation>
<xs:documentation>
References an existing Video Analytics configuration. The list of available tokens can be obtained
via the Media service GetVideoAnalyticsConfigurations method.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetSupportedRulesResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="SupportedRules" type="tt:SupportedRules"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!--===============================-->
<xs:element name="CreateRules">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationToken" type="tt:ReferenceToken">
<xs:annotation>
<xs:documentation>Reference to an existing VideoAnalyticsConfiguration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Rule" type="tt:Config" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CreateRulesResponse">
<xs:complexType/>
</xs:element>
<!--===============================-->
<xs:element name="DeleteRules">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationToken" type="tt:ReferenceToken">
<xs:annotation>
<xs:documentation>Reference to an existing VideoAnalyticsConfiguration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="RuleName" type="xs:string" minOccurs="1" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>References the specific rule to be deleted (e.g. "MyLineDetector"). </xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DeleteRulesResponse">
<xs:complexType/>
</xs:element>
<!--===============================-->
<xs:element name="ModifyRules">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationToken" type="tt:ReferenceToken">
<xs:annotation>
<xs:documentation>Reference to an existing VideoAnalyticsConfiguration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Rule" type="tt:Config" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ModifyRulesResponse">
<xs:complexType/>
</xs:element>
<!--===============================-->
<xs:element name="GetRules">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationToken" type="tt:ReferenceToken">
<xs:annotation>
<xs:documentation>Reference to an existing VideoAnalyticsConfiguration.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetRulesResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="Rule" type="tt:Config" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!--===============================-->
<xs:element name="GetSupportedAnalyticsModules">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationToken" type="tt:ReferenceToken">
<xs:annotation>
<xs:documentation>Reference to an existing VideoAnalyticsConfiguration.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetSupportedAnalyticsModulesResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="SupportedAnalyticsModules" type="tt:SupportedAnalyticsModules"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!--===============================-->
<xs:element name="CreateAnalyticsModules">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationToken" type="tt:ReferenceToken">
<xs:annotation>
<xs:documentation>Reference to an existing VideoAnalyticsConfiguration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="AnalyticsModule" type="tt:Config" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CreateAnalyticsModulesResponse">
<xs:complexType/>
</xs:element>
<!--===============================-->
<xs:element name="DeleteAnalyticsModules">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationToken" type="tt:ReferenceToken">
<xs:annotation>
<xs:documentation>Reference to an existing Video Analytics configuration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="AnalyticsModuleName" type="xs:string" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Name of the AnalyticsModule to be deleted.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="DeleteAnalyticsModulesResponse">
<xs:complexType/>
</xs:element>
<!--===============================-->
<xs:element name="ModifyAnalyticsModules">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationToken" type="tt:ReferenceToken">
<xs:annotation>
<xs:documentation>Reference to an existing VideoAnalyticsConfiguration.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="AnalyticsModule" type="tt:Config" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ModifyAnalyticsModulesResponse">
<xs:complexType/>
</xs:element>
<!--===============================-->
<xs:element name="GetAnalyticsModules">
<xs:complexType>
<xs:sequence>
<xs:element name="ConfigurationToken" type="tt:ReferenceToken">
<xs:annotation>
<xs:documentation>Reference to an existing VideoAnalyticsConfiguration.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GetAnalyticsModulesResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="AnalyticsModule" type="tt:Config" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!--===============================-->
</xs:schema>
</wsdl:types>
<wsdl:message name="GetServiceCapabilitiesRequest">
<wsdl:part name="parameters" element="tan:GetServiceCapabilities"/>
</wsdl:message>
<wsdl:message name="GetServiceCapabilitiesResponse">
<wsdl:part name="parameters" element="tan:GetServiceCapabilitiesResponse"/>
</wsdl:message>
<wsdl:message name="GetSupportedRulesRequest">
<wsdl:part name="parameters" element="tan:GetSupportedRules"/>
</wsdl:message>
<wsdl:message name="GetSupportedRulesResponse">
<wsdl:part name="parameters" element="tan:GetSupportedRulesResponse"/>
</wsdl:message>
<wsdl:message name="CreateRulesRequest">
<wsdl:part name="parameters" element="tan:CreateRules"/>
</wsdl:message>
<wsdl:message name="CreateRulesResponse">
<wsdl:part name="parameters" element="tan:CreateRulesResponse"/>
</wsdl:message>
<wsdl:message name="DeleteRulesRequest">
<wsdl:part name="parameters" element="tan:DeleteRules"/>
</wsdl:message>
<wsdl:message name="DeleteRulesResponse">
<wsdl:part name="parameters" element="tan:DeleteRulesResponse"/>
</wsdl:message>
<wsdl:message name="GetRulesRequest">
<wsdl:part name="parameters" element="tan:GetRules"/>
</wsdl:message>
<wsdl:message name="GetRulesResponse">
<wsdl:part name="parameters" element="tan:GetRulesResponse"/>
</wsdl:message>
<wsdl:message name="GetSupportedAnalyticsModulesResponse">
<wsdl:part name="parameters" element="tan:GetSupportedAnalyticsModulesResponse"/>
</wsdl:message>
<wsdl:message name="GetSupportedAnalyticsModulesRequest">
<wsdl:part name="parameters" element="tan:GetSupportedAnalyticsModules"/>
</wsdl:message>
<wsdl:message name="CreateAnalyticsModulesRequest">
<wsdl:part name="parameters" element="tan:CreateAnalyticsModules"/>
</wsdl:message>
<wsdl:message name="CreateAnalyticsModulesResponse">
<wsdl:part name="parameters" element="tan:CreateAnalyticsModulesResponse"/>
</wsdl:message>
<wsdl:message name="DeleteAnalyticsModulesRequest">
<wsdl:part name="parameters" element="tan:DeleteAnalyticsModules"/>
</wsdl:message>
<wsdl:message name="DeleteAnalyticsModulesResponse">
<wsdl:part name="parameters" element="tan:DeleteAnalyticsModulesResponse"/>
</wsdl:message>
<wsdl:message name="GetAnalyticsModulesRequest">
<wsdl:part name="parameters" element="tan:GetAnalyticsModules"/>
</wsdl:message>
<wsdl:message name="GetAnalyticsModulesResponse">
<wsdl:part name="parameters" element="tan:GetAnalyticsModulesResponse"/>
</wsdl:message>
<wsdl:message name="ModifyRulesRequest">
<wsdl:part name="parameters" element="tan:ModifyRules"/>
</wsdl:message>
<wsdl:message name="ModifyRulesResponse">
<wsdl:part name="parameters" element="tan:ModifyRulesResponse"/>
</wsdl:message>
<wsdl:message name="ModifyAnalyticsModulesRequest">
<wsdl:part name="parameters" element="tan:ModifyAnalyticsModules"/>
</wsdl:message>
<wsdl:message name="ModifyAnalyticsModulesResponse">
<wsdl:part name="parameters" element="tan:ModifyAnalyticsModulesResponse"/>
</wsdl:message>
<wsdl:portType name="RuleEnginePort">
<wsdl:operation name="GetSupportedRules">
<wsdl:documentation>
List all rules that are supported by the given VideoAnalyticsConfiguration.
The result of this method may depend on the overall Video analytics configuration of the device,
which is available via the current set of profiles.
</wsdl:documentation>
<wsdl:input message="tan:GetSupportedRulesRequest"/>
<wsdl:output message="tan:GetSupportedRulesResponse"/>
</wsdl:operation>
<wsdl:operation name="CreateRules">
<wsdl:documentation>
Add one or more rules to an existing VideoAnalyticsConfiguration.
The available supported types can be retrieved via <a href="#op.GetSupportedRules">GetSupportedRules</a>,
where the Name of the supported rule correspond to the type of an rule instance.<br/>
Pass unique module names which can be later used as reference.
The Parameters of the rules must match those of the corresponding description.
<br/>
Although this method is mandatory a device implementation must not support adding rules.
Instead it can provide a fixed set of predefined configurations via the media service function
<a href="media.wsdl#op.GetCompatibleVideoAnalyticsConfigurations">GetCompatibleVideoAnalyticsConfigurations</a>.
</wsdl:documentation>
<wsdl:input message="tan:CreateRulesRequest"/>
<wsdl:output message="tan:CreateRulesResponse"/>
</wsdl:operation>
<wsdl:operation name="DeleteRules">
<wsdl:documentation>
Remove one or more rules from a VideoAnalyticsConfiguration.
</wsdl:documentation>
<wsdl:input message="tan:DeleteRulesRequest"/>
<wsdl:output message="tan:DeleteRulesResponse"/>
</wsdl:operation>
<wsdl:operation name="GetRules">
<wsdl:documentation>
List the currently assigned set of rules of a VideoAnalyticsConfiguration.
</wsdl:documentation>
<wsdl:input message="tan:GetRulesRequest"/>
<wsdl:output message="tan:GetRulesResponse"/>
</wsdl:operation>
<wsdl:operation name="ModifyRules">
<wsdl:documentation>
Modify one or more rules of a VideoAnalyticsConfiguration. The rules are referenced by their names.
</wsdl:documentation>
<wsdl:input message="tan:ModifyRulesRequest"/>
<wsdl:output message="tan:ModifyRulesResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:portType name="AnalyticsEnginePort">
<wsdl:operation name="GetServiceCapabilities">
<wsdl:documentation>Returns the capabilities of the analytics service. The result is returned in a typed answer.</wsdl:documentation>
<wsdl:input message="tan:GetServiceCapabilitiesRequest"/>
<wsdl:output message="tan:GetServiceCapabilitiesResponse"/>
</wsdl:operation>
<wsdl:operation name="GetSupportedAnalyticsModules">
<wsdl:documentation>
List all analytics modules that are supported by the given VideoAnalyticsConfiguration.
The result of this method may depend on the overall Video analytics configuration of the device,
which is available via the current set of profiles.
</wsdl:documentation>
<wsdl:input message="tan:GetSupportedAnalyticsModulesRequest"/>
<wsdl:output message="tan:GetSupportedAnalyticsModulesResponse"/>
</wsdl:operation>
<wsdl:operation name="CreateAnalyticsModules">
<wsdl:documentation>
Add one or more analytics modules to an existing VideoAnalyticsConfiguration.
The available supported types can be retrieved via <a href="#op.GetSupportedAnalyticsModules">GetSupportedAnalyticsModules</a>,
where the Name of the supported AnalyticsModules correspond to the type of an AnalyticsModule instance.<br/>
Pass unique module names which can be later used as reference. The Parameters of the analytics module must match those of the corresponding AnalyticsModuleDescription.
<br/>
Although this method is mandatory a device implementation must not support adding modules.
Instead it can provide a fixed set of predefined configurations via the media service function
<a href="media.wsdl#op.GetCompatibleVideoAnalyticsConfigurations">GetCompatibleVideoAnalyticsConfigurations</a>.
<br/>
The device shall ensure that a corresponding analytics engine starts operation when a client
subscribes directly or indirectly for events produced by the analytics or rule engine or when a
client requests the corresponding scene description stream.
An analytics module must be attached to a Video source using the media profiles before it can be used.
In case differing analytics configurations are attached to the same profile it is undefined which
of the analytics module configuration becomes active if no stream is activated or multiple streams
with different profiles are activated at the same time.
</wsdl:documentation>
<wsdl:input message="tan:CreateAnalyticsModulesRequest"/>
<wsdl:output message="tan:CreateAnalyticsModulesResponse"/>
</wsdl:operation>
<wsdl:operation name="DeleteAnalyticsModules">
<wsdl:documentation>
Remove one or more analytics modules from a VideoAnalyticsConfiguration referenced by their names.<br/>
</wsdl:documentation>
<wsdl:input message="tan:DeleteAnalyticsModulesRequest"/>
<wsdl:output message="tan:DeleteAnalyticsModulesResponse"/>
</wsdl:operation>
<wsdl:operation name="GetAnalyticsModules">
<wsdl:documentation>
List the currently assigned set of analytics modules of a VideoAnalyticsConfiguration.
</wsdl:documentation>
<wsdl:input message="tan:GetAnalyticsModulesRequest"/>
<wsdl:output message="tan:GetAnalyticsModulesResponse"/>
</wsdl:operation>
<wsdl:operation name="ModifyAnalyticsModules">
<wsdl:documentation>
Modify the settings of one or more analytics modules of a VideoAnalyticsConfiguration. The modules are referenced by their names.
It is allowed to pass only a subset to be modified.
</wsdl:documentation>
<wsdl:input message="tan:ModifyAnalyticsModulesRequest"/>
<wsdl:output message="tan:ModifyAnalyticsModulesResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="RuleEngineBinding" type="tan:RuleEnginePort">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="GetSupportedRules">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/GetSupportedRules"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="CreateRules">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/CreateRules"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="DeleteRules">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/DeleteRules"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="GetRules">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/GetRules"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="ModifyRules">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/ModifyRules"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="AnalyticsEngineBinding" type="tan:AnalyticsEnginePort">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="GetServiceCapabilities">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/GetServiceCapabilities"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="GetSupportedAnalyticsModules">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/GetSupportedAnalyticsModules"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="CreateAnalyticsModules">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/CreateAnalyticsModules"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="DeleteAnalyticsModules">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/DeleteAnalyticsModules"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="GetAnalyticsModules">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/GetAnalyticsModules"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="ModifyAnalyticsModules">
<soap:operation soapAction="http://www.onvif.org/ver20/analytics/wsdl/ModifyAnalyticsModules"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="Analytics">
<wsdl:port name="RuleEnginePort" binding="tan:RuleEngineBinding" >
<soap:address
location="http://www.examples.com/Analytics/" />
</wsdl:port>
<wsdl:port name="AnalyticsEnginePort" binding="tan:AnalyticsEngineBinding" >
<soap:address
location="http://www.examples.com/Analytics/" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

586
onvif/wsdl/b-2.xsd Normal file
View File

@ -0,0 +1,586 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
Copyright (C) OASIS Open (2004-2006). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-->
<xsd:schema
targetNamespace="http://docs.oasis-open.org/wsn/b-2"
xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2"
xmlns:wstop="http://docs.oasis-open.org/wsn/t-1"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<!-- ======================== Imports ============================ -->
<xsd:import namespace="http://www.w3.org/2005/08/addressing"
schemaLocation="http://www.w3.org/2005/08/addressing/ws-addr.xsd"
/>
<xsd:import namespace="http://docs.oasis-open.org/wsrf/bf-2"
schemaLocation="file:wsdl/bf-2.xsd"/>
<!-- schemaLocation="http://docs.oasis-open.org/wsrf/bf-2.xsd" /> -->
<xsd:import namespace="http://docs.oasis-open.org/wsn/t-1"
schemaLocation="file:wsdl/t-1.xsd"
/>
<!-- ===================== Misc. Helper Types ===================== -->
<xsd:complexType name="QueryExpressionType" mixed="true">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="1" processContents="lax" />
</xsd:sequence>
<xsd:attribute name="Dialect" type="xsd:anyURI" use="required"/>
</xsd:complexType>
<xsd:complexType name="TopicExpressionType" mixed="true">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="1" processContents="lax" />
</xsd:sequence>
<xsd:attribute name="Dialect" type="xsd:anyURI" use="required" />
<xsd:anyAttribute/>
</xsd:complexType>
<xsd:complexType name="FilterType">
<xsd:sequence>
<!-- extension for zonemider ONVIF -->
<xsd:element ref="wsnt:TopicExpression"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="wsnt:MessageContent"
minOccurs="0" maxOccurs="unbounded" />
<!-- end extension -->
<xsd:any minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SubscriptionPolicyType">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
</xsd:sequence>
</xsd:complexType>
<!-- =============== Resource Property Related =================== -->
<!-- ======== Resource Properties for NotificationProducer ======== -->
<xsd:element name="TopicExpression" type="wsnt:TopicExpressionType"/>
<xsd:element name="FixedTopicSet" type="xsd:boolean" default="true"/>
<xsd:element name="TopicExpressionDialect" type="xsd:anyURI"/>
<xsd:element name="NotificationProducerRP">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsnt:TopicExpression"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="wsnt:FixedTopicSet"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:TopicExpressionDialect"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="wstop:TopicSet"
minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- ======== Resource Properties for SubscriptionManager ========= -->
<xsd:element name="ConsumerReference"
type="wsa:EndpointReferenceType" />
<xsd:element name="Filter" type="wsnt:FilterType" />
<xsd:element name="SubscriptionPolicy" type="wsnt:SubscriptionPolicyType" />
<xsd:element name="CreationTime" type="xsd:dateTime" />
<xsd:element name="SubscriptionManagerRP" >
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsnt:ConsumerReference"
minOccurs="1" maxOccurs="1" />
<xsd:element ref="wsnt:Filter"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:SubscriptionPolicy"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:CreationTime"
minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- ================= Notification Metadata ===================== -->
<xsd:element name="SubscriptionReference"
type="wsa:EndpointReferenceType" />
<xsd:element name="Topic"
type="wsnt:TopicExpressionType" />
<xsd:element name="ProducerReference"
type="wsa:EndpointReferenceType" />
<!-- ================== Message Helper Types ===================== -->
<xsd:complexType name="NotificationMessageHolderType" >
<xsd:sequence>
<xsd:element ref="wsnt:SubscriptionReference"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:Topic"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:ProducerReference"
minOccurs="0" maxOccurs="1" />
<xsd:element name="Message">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##any" processContents="lax"
minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="NotificationMessage"
type="wsnt:NotificationMessageHolderType"/>
<!-- ========== Message Types for NotificationConsumer =========== -->
<xsd:element name="Notify" >
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsnt:NotificationMessage"
minOccurs="1" maxOccurs="unbounded" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- ========== Message Types for NotificationProducer =========== -->
<xsd:simpleType name="AbsoluteOrRelativeTimeType">
<xsd:union memberTypes="xsd:dateTime xsd:duration" />
</xsd:simpleType>
<xsd:element name="CurrentTime" type="xsd:dateTime" />
<xsd:element name="TerminationTime"
nillable="true" type="xsd:dateTime" />
<xsd:element name="ProducerProperties"
type="wsnt:QueryExpressionType" />
<xsd:element name="MessageContent"
type="wsnt:QueryExpressionType" />
<xsd:element name="UseRaw"><xsd:complexType/></xsd:element>
<xsd:element name="Subscribe" >
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ConsumerReference"
type="wsa:EndpointReferenceType"
minOccurs="1" maxOccurs="1" />
<xsd:element name="Filter"
type="wsnt:FilterType"
minOccurs="0" maxOccurs="1" />
<xsd:element name="InitialTerminationTime"
type="wsnt:AbsoluteOrRelativeTimeType"
nillable="true"
minOccurs="0" maxOccurs="1" />
<xsd:element name="SubscriptionPolicy"
minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##any" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="SubscribeResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="SubscriptionReference"
type="wsa:EndpointReferenceType"
minOccurs="1" maxOccurs="1" />
<xsd:element ref="wsnt:CurrentTime"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsnt:TerminationTime"
minOccurs="0" maxOccurs="1" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GetCurrentMessage">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Topic"
type="wsnt:TopicExpressionType" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GetCurrentMessageResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="SubscribeCreationFailedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="SubscribeCreationFailedFault"
type="wsnt:SubscribeCreationFailedFaultType"/>
<xsd:complexType name="InvalidFilterFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType">
<xsd:sequence>
<xsd:element name="UnknownFilter" type="xsd:QName"
minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="InvalidFilterFault"
type="wsnt:InvalidFilterFaultType"/>
<xsd:complexType name="TopicExpressionDialectUnknownFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="TopicExpressionDialectUnknownFault"
type="wsnt:TopicExpressionDialectUnknownFaultType"/>
<xsd:complexType name="InvalidTopicExpressionFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="InvalidTopicExpressionFault"
type="wsnt:InvalidTopicExpressionFaultType"/>
<xsd:complexType name="TopicNotSupportedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="TopicNotSupportedFault"
type="wsnt:TopicNotSupportedFaultType"/>
<xsd:complexType name="MultipleTopicsSpecifiedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="MultipleTopicsSpecifiedFault"
type="wsnt:MultipleTopicsSpecifiedFaultType"/>
<xsd:complexType name="InvalidProducerPropertiesExpressionFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="InvalidProducerPropertiesExpressionFault"
type="wsnt:InvalidProducerPropertiesExpressionFaultType"/>
<xsd:complexType name="InvalidMessageContentExpressionFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="InvalidMessageContentExpressionFault"
type="wsnt:InvalidMessageContentExpressionFaultType"/>
<xsd:complexType name="UnrecognizedPolicyRequestFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType">
<xsd:sequence>
<xsd:element name="UnrecognizedPolicy" type="xsd:QName"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnrecognizedPolicyRequestFault"
type="wsnt:UnrecognizedPolicyRequestFaultType"/>
<xsd:complexType name="UnsupportedPolicyRequestFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType">
<xsd:sequence>
<xsd:element name="UnsupportedPolicy" type="xsd:QName"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnsupportedPolicyRequestFault"
type="wsnt:UnsupportedPolicyRequestFaultType"/>
<xsd:complexType name="NotifyMessageNotSupportedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="NotifyMessageNotSupportedFault"
type="wsnt:NotifyMessageNotSupportedFaultType"/>
<xsd:complexType name="UnacceptableInitialTerminationTimeFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType">
<xsd:sequence>
<xsd:element name="MinimumTime" type="xsd:dateTime"/>
<xsd:element name="MaximumTime" type="xsd:dateTime"
minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnacceptableInitialTerminationTimeFault"
type="wsnt:UnacceptableInitialTerminationTimeFaultType"/>
<xsd:complexType name="NoCurrentMessageOnTopicFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="NoCurrentMessageOnTopicFault"
type="wsnt:NoCurrentMessageOnTopicFaultType"/>
<!-- ======== Message Types for PullPoint ======================== -->
<xsd:element name="GetMessages">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="MaximumNumber"
type="xsd:nonNegativeInteger"
minOccurs="0"/>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:element name="GetMessagesResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsnt:NotificationMessage"
minOccurs="0" maxOccurs="unbounded" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:element name="DestroyPullPoint">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:element name="DestroyPullPointResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="UnableToGetMessagesFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnableToGetMessagesFault"
type="wsnt:UnableToGetMessagesFaultType"/>
<xsd:complexType name="UnableToDestroyPullPointFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnableToDestroyPullPointFault"
type="wsnt:UnableToDestroyPullPointFaultType"/>
<!-- ======== Message Types for Create PullPoint ================= -->
<xsd:element name="CreatePullPoint">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:element name="CreatePullPointResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="PullPoint"
type="wsa:EndpointReferenceType"/>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="UnableToCreatePullPointFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnableToCreatePullPointFault"
type="wsnt:UnableToCreatePullPointFaultType"/>
<!-- ======== Message Types for Base SubscriptionManager ========= -->
<xsd:element name="Renew">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="TerminationTime"
type="wsnt:AbsoluteOrRelativeTimeType"
nillable="true"
minOccurs="1" maxOccurs="1" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="RenewResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsnt:TerminationTime"
minOccurs="1" maxOccurs="1" />
<xsd:element ref="wsnt:CurrentTime"
minOccurs="0" maxOccurs="1" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="UnacceptableTerminationTimeFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType">
<xsd:sequence>
<xsd:element name="MinimumTime" type="xsd:dateTime"/>
<xsd:element name="MaximumTime" type="xsd:dateTime"
minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnacceptableTerminationTimeFault"
type="wsnt:UnacceptableTerminationTimeFaultType"/>
<xsd:element name="Unsubscribe">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="UnsubscribeResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="UnableToDestroySubscriptionFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="UnableToDestroySubscriptionFault"
type="wsnt:UnableToDestroySubscriptionFaultType"/>
<!-- ====== Message Types for Pausable SubscriptionManager ======= -->
<xsd:element name="PauseSubscription">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="PauseSubscriptionResponse" >
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ResumeSubscription">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ResumeSubscriptionResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="PauseFailedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="PauseFailedFault"
type="wsnt:PauseFailedFaultType"/>
<xsd:complexType name="ResumeFailedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="ResumeFailedFault"
type="wsnt:ResumeFailedFaultType"/>
</xsd:schema>

86
onvif/wsdl/bf-2.xsd Normal file
View File

@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification, can be obtained from the OASIS Executive Director.
OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
Copyright (C) OASIS Open (2005). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-->
<xsd:schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:wsrf-bf=
"http://docs.oasis-open.org/wsrf/bf-2"
elementFormDefault="qualified" attributeFormDefault="unqualified"
targetNamespace=
"http://docs.oasis-open.org/wsrf/bf-2">
<xsd:import
namespace="http://www.w3.org/2005/08/addressing"
schemaLocation=
"http://www.w3.org/2005/08/addressing/ws-addr.xsd"/>
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd">
<xsd:annotation>
<xsd:documentation>
Get access to the xml: attribute groups for xml:lang as declared on 'schema'
and 'documentation' below
</xsd:documentation>
</xsd:annotation>
</xsd:import>
<!-- ====================== BaseFault Types ======================= -->
<xsd:element name="BaseFault" type="wsrf-bf:BaseFaultType"/>
<xsd:complexType name="BaseFaultType">
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="Timestamp" type="xsd:dateTime"
minOccurs="1" maxOccurs="1"/>
<xsd:element name="Originator" type="wsa:EndpointReferenceType"
minOccurs="0" maxOccurs="1"/>
<xsd:element name="ErrorCode"
minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:complexContent mixed="true">
<xsd:extension base="xsd:anyType">
<xsd:attribute name="dialect" type="xsd:anyURI"
use="required"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="Description"
minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute ref="xml:lang" use="optional"/>
<!-- <xsd:anyAttribute processContents="lax" />-->
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="FaultCause" minOccurs="0" maxOccurs="1">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
</xsd:schema>

173
onvif/wsdl/br-2.xsd Normal file
View File

@ -0,0 +1,173 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
Copyright (C) OASIS Open (2004-2006). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-->
<xsd:schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:wsn-br="http://docs.oasis-open.org/wsn/br-2"
xmlns:wsn-b="http://docs.oasis-open.org/wsn/b-2"
xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2"
xmlns:wstop="http://docs.oasis-open.org/wsn/t-1"
targetNamespace="http://docs.oasis-open.org/wsn/br-2"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<!-- ======================== Imports ============================ -->
<xsd:import namespace="http://www.w3.org/2005/08/addressing"
schemaLocation="http://www.w3.org/2005/08/addressing/ws-addr.xsd"/>
<xsd:import namespace="http://docs.oasis-open.org/wsrf/bf-2"
schemaLocation="http://docs.oasis-open.org/wsrf/bf-2.xsd"/>
<xsd:import namespace="http://docs.oasis-open.org/wsn/b-2"
schemaLocation="http://docs.oasis-open.org/wsn/b-2.xsd"/>
<xsd:import namespace="http://docs.oasis-open.org/wsn/t-1"
schemaLocation="http://docs.oasis-open.org/wsn/t-1.xsd"/>
<!-- ======== Resource Properties for NotificationBroker ========== -->
<xsd:element name="RequiresRegistration" type="xsd:boolean"/>
<!-- ====== Resource Properties for PublisherRegistration ========= -->
<xsd:element name="PublisherReference"
type="wsa:EndpointReferenceType"/>
<xsd:element name="ConsumerReference"
type="wsa:EndpointReferenceType"/>
<xsd:element name="Topic"
type="wsn-b:TopicExpressionType"/>
<xsd:element name="Demand"
type="xsd:boolean"/>
<xsd:element name="CreationTime"
type="xsd:dateTime"/>
<xsd:element name="NotificationBrokerRP">
<xsd:complexType>
<xsd:sequence>
<!-- From NotificationProducer -->
<xsd:element ref="wsn-b:TopicExpression"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="wsn-b:FixedTopicSet"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsn-b:TopicExpressionDialect"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="wstop:TopicSet"
minOccurs="0" maxOccurs="1" />
<!-- NotificationBroker specific -->
<xsd:element ref="wsn-br:RequiresRegistration"
minOccurs="1" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- ====== Resource Properties for PublisherRegistration ========= -->
<xsd:element name="PublisherRegistrationRP">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="wsn-br:PublisherReference"
minOccurs="0" maxOccurs="1" />
<xsd:element ref="wsn-br:Topic"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element ref="wsn-br:Demand"
minOccurs="1" maxOccurs="1" />
<xsd:element ref="wsn-br:CreationTime"
minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- ========== Message Types for NotificationBroker ============ -->
<xsd:element name="RegisterPublisher">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="PublisherReference"
type="wsa:EndpointReferenceType"
minOccurs="0" maxOccurs="1" />
<xsd:element name="Topic"
type="wsn-b:TopicExpressionType"
minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="Demand"
type="xsd:boolean" default="false"
minOccurs="0" maxOccurs="1" />
<xsd:element name="InitialTerminationTime"
type="xsd:dateTime"
minOccurs="0" maxOccurs="1" />
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="RegisterPublisherResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="PublisherRegistrationReference"
type="wsa:EndpointReferenceType"
minOccurs="1" maxOccurs="1" />
<xsd:element name="ConsumerReference"
type="wsa:EndpointReferenceType"
minOccurs="0" maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="PublisherRegistrationRejectedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="PublisherRegistrationRejectedFault"
type="wsn-br:PublisherRegistrationRejectedFaultType"/>
<xsd:complexType name="PublisherRegistrationFailedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="PublisherRegistrationFailedFault"
type="wsn-br:PublisherRegistrationFailedFaultType"/>
<xsd:element name="DestroyRegistration">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:element name="DestroyRegistrationResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:anyAttribute/>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="ResourceNotDestroyedFaultType">
<xsd:complexContent>
<xsd:extension base="wsrf-bf:BaseFaultType"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="ResourceNotDestroyedFault"
type="wsn-br:ResourceNotDestroyedFaultType"/>
</xsd:schema>

195
onvif/wsdl/brw-2.wsdl Normal file
View File

@ -0,0 +1,195 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
Copyright (C) OASIS Open (2004-2006). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-->
<wsdl:definitions name="WS-BrokeredNotification"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:wsn-br="http://docs.oasis-open.org/wsn/br-2"
xmlns:wsn-brw="http://docs.oasis-open.org/wsn/brw-2"
xmlns:wsn-b="http://docs.oasis-open.org/wsn/b-2"
xmlns:wsn-bw="http://docs.oasis-open.org/wsn/bw-2"
xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2"
xmlns:wsrf-rw="http://docs.oasis-open.org/wsrf/rw-2"
targetNamespace="http://docs.oasis-open.org/wsn/brw-2">
<!-- ========================== Imports =========================== -->
<wsdl:import namespace="http://docs.oasis-open.org/wsrf/rw-2"
location="http://docs.oasis-open.org/wsrf/rw-2.wsdl"/>
<wsdl:import namespace="http://docs.oasis-open.org/wsn/bw-2"
location="http://docs.oasis-open.org/wsn/bw-2.wsdl"/>
<!-- ===================== Types Definitions ====================== -->
<wsdl:types>
<xsd:schema>
<xsd:import
namespace="http://docs.oasis-open.org/wsn/br-2"
schemaLocation="http://docs.oasis-open.org/wsn/br-2.xsd"/>
</xsd:schema>
</wsdl:types>
<!-- ========== NotificationBroker::RegisterPublisher =============
RegisterPublisher(PublisherReference, TopicExpression* ,
[Demand], [InitialTerminationTime])
returns: WS-Resource qualified EPR to a PublisherRegistration -->
<wsdl:message name="RegisterPublisherRequest">
<wsdl:part name="RegisterPublisherRequest"
element="wsn-br:RegisterPublisher"/>
</wsdl:message>
<wsdl:message name="RegisterPublisherResponse">
<wsdl:part name="RegisterPublisherResponse"
element="wsn-br:RegisterPublisherResponse"/>
</wsdl:message>
<wsdl:message name="PublisherRegistrationRejectedFault">
<wsdl:part name="PublisherRegistrationRejectedFault"
element="wsn-br:PublisherRegistrationRejectedFault"/>
</wsdl:message>
<wsdl:message name="PublisherRegistrationFailedFault">
<wsdl:part name="PublisherRegistrationFailedFault"
element="wsn-br:PublisherRegistrationFailedFault"/>
</wsdl:message>
<wsdl:message name="DestroyRegistrationRequest">
<wsdl:part name="DestroyRegistrationRequest"
element="wsn-br:DestroyRegistration"/>
</wsdl:message>
<wsdl:message name="DestroyRegistrationResponse">
<wsdl:part name="DestroyRegistrationResponse"
element="wsn-br:DestroyRegistrationResponse"/>
</wsdl:message>
<wsdl:message name="ResourceNotDestroyedFault">
<wsdl:part name="ResourceNotDestroyedFault"
element="wsn-br:ResourceNotDestroyedFault"/>
</wsdl:message>
<!-- =================== PortType Definitions ===================== -->
<!-- ========== RegisterPublisher ============ -->
<wsdl:portType name="RegisterPublisher">
<wsdl:operation name="RegisterPublisher">
<wsdl:input message="wsn-brw:RegisterPublisherRequest"/>
<wsdl:output message="wsn-brw:RegisterPublisherResponse"/>
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault"/>
<wsdl:fault name="InvalidTopicExpressionFault"
message="wsn-bw:InvalidTopicExpressionFault"/>
<wsdl:fault name="TopicNotSupportedFault"
message="wsn-bw:TopicNotSupportedFault"/>
<wsdl:fault name="PublisherRegistrationRejectedFault"
message="wsn-brw:PublisherRegistrationRejectedFault"/>
<wsdl:fault name="PublisherRegistrationFailedFault"
message="wsn-brw:PublisherRegistrationFailedFault"/>
<wsdl:fault name="UnacceptableInitialTerminationTimeFault"
message="wsn-bw:UnacceptableInitialTerminationTimeFault"/>
</wsdl:operation>
</wsdl:portType>
<!-- ========== NotificationBroker PortType Definition ============ -->
<wsdl:portType name="NotificationBroker">
<!-- ============= extends NotificationConsumer ============= -->
<wsdl:operation name="Notify">
<wsdl:input message="wsn-bw:Notify" />
</wsdl:operation>
<!-- ============= extends NotificationProducer ============= -->
<wsdl:operation name="Subscribe">
<wsdl:input message="wsn-bw:SubscribeRequest" />
<wsdl:output message="wsn-bw:SubscribeResponse" />
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="InvalidFilterFault"
message="wsn-bw:InvalidFilterFault"/>
<wsdl:fault name="TopicExpressionDialectUnknownFault"
message="wsn-bw:TopicExpressionDialectUnknownFault"/>
<wsdl:fault name="InvalidTopicExpressionFault"
message="wsn-bw:InvalidTopicExpressionFault" />
<wsdl:fault name="TopicNotSupportedFault"
message="wsn-bw:TopicNotSupportedFault" />
<wsdl:fault name="InvalidProducerPropertiesExpressionFault"
message="wsn-bw:InvalidProducerPropertiesExpressionFault"/>
<wsdl:fault name="InvalidMessageContentExpressionFault"
message="wsn-bw:InvalidMessageContentExpressionFault"/>
<wsdl:fault name="UnacceptableInitialTerminationTimeFault"
message="wsn-bw:UnacceptableInitialTerminationTimeFault"/>
<wsdl:fault name="UnrecognizedPolicyRequestFault"
message="wsn-bw:UnrecognizedPolicyRequestFault"/>
<wsdl:fault name="UnsupportedPolicyRequestFault"
message="wsn-bw:UnsupportedPolicyRequestFault"/>
<wsdl:fault name="NotifyMessageNotSupportedFault"
message="wsn-bw:NotifyMessageNotSupportedFault"/>
<wsdl:fault name="SubscribeCreationFailedFault"
message="wsn-bw:SubscribeCreationFailedFault"/>
</wsdl:operation>
<wsdl:operation name="GetCurrentMessage">
<wsdl:input message="wsn-bw:GetCurrentMessageRequest"/>
<wsdl:output message="wsn-bw:GetCurrentMessageResponse"/>
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault"/>
<wsdl:fault name="TopicExpressionDialectUnknownFault"
message="wsn-bw:TopicExpressionDialectUnknownFault"/>
<wsdl:fault name="InvalidTopicExpressionFault"
message="wsn-bw:InvalidTopicExpressionFault"/>
<wsdl:fault name="TopicNotSupportedFault"
message="wsn-bw:TopicNotSupportedFault"/>
<wsdl:fault name="NoCurrentMessageOnTopicFault"
message="wsn-bw:NoCurrentMessageOnTopicFault"/>
<wsdl:fault name="MultipleTopicsSpecifiedFault"
message="wsn-bw:MultipleTopicsSpecifiedFault"/>
</wsdl:operation>
<!-- ========= extends RegisterPublisher ======= -->
<wsdl:operation name="RegisterPublisher">
<wsdl:input message="wsn-brw:RegisterPublisherRequest"/>
<wsdl:output message="wsn-brw:RegisterPublisherResponse"/>
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault"/>
<wsdl:fault name="InvalidTopicExpressionFault"
message="wsn-bw:InvalidTopicExpressionFault"/>
<wsdl:fault name="TopicNotSupportedFault"
message="wsn-bw:TopicNotSupportedFault"/>
<wsdl:fault name="PublisherRegistrationRejectedFault"
message="wsn-brw:PublisherRegistrationRejectedFault"/>
<wsdl:fault name="PublisherRegistrationFailedFault"
message="wsn-brw:PublisherRegistrationFailedFault"/>
<wsdl:fault name="UnacceptableInitialTerminationTimeFault"
message="wsn-bw:UnacceptableInitialTerminationTimeFault"/>
</wsdl:operation>
</wsdl:portType>
<!-- ===== PublisherRegistrationManager PortType Definition ====== -->
<wsdl:portType name="PublisherRegistrationManager">
<!--===DestroyRegistration:ImmediateResourceTermination==========-->
<wsdl:operation name="DestroyRegistration">
<wsdl:input name="DestroyRegistrationRequest"
message="wsn-brw:DestroyRegistrationRequest" />
<wsdl:output name="DestroyRegistrationResponse"
message="wsn-brw:DestroyRegistrationResponse" />
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="ResourceNotDestroyedFault"
message="wsn-brw:ResourceNotDestroyedFault" />
</wsdl:operation>
</wsdl:portType>
</wsdl:definitions>

450
onvif/wsdl/bw-2.wsdl Normal file
View File

@ -0,0 +1,450 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
Copyright (C) OASIS Open (2004-2006). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-->
<wsdl:definitions name="WS-BaseNotification"
targetNamespace="http://docs.oasis-open.org/wsn/bw-2"
xmlns:wsntw="http://docs.oasis-open.org/wsn/bw-2"
xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"
xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:wsrf-rw="http://docs.oasis-open.org/wsrf/rw-2"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<!-- ========================== Imports =========================== -->
<!--
<wsdl:import
namespace="http://docs.oasis-open.org/wsrf/rw-2"
location="http://docs.oasis-open.org/wsrf/rw-2.wsdl"/>
-->
<!-- ===================== Types Definitions ====================== -->
<wsdl:types>
<xsd:schema>
<xsd:import
namespace="http://docs.oasis-open.org/wsn/b-2"
schemaLocation="file:wsdl/b-2.xsd"/>
<!-- schemaLocation="http://docs.oasis-open.org/wsn/b-2.xsd"/> -->
</xsd:schema>
</wsdl:types>
<!-- ================ NotificationConsumer::Notify ================
Notify(
NotificationMessage
(SubscriptionReference, TopicExpression, ProducerReference,
Message)*
returns: n/a (one way)
-->
<wsdl:message name="Notify">
<wsdl:part name="Notify" element="wsnt:Notify"/>
</wsdl:message>
<!-- ============== NotificationProducer::Subscribe ===============
Subscribe(
(ConsumerEndpointReference, [Filter], [SubscriptionPolicy],
[InitialTerminationTime])
returns: WS-Resource qualified EPR to a Subscription
-->
<wsdl:message name="SubscribeRequest" >
<wsdl:part name="SubscribeRequest"
element="wsnt:Subscribe"/>
</wsdl:message>
<wsdl:message name="SubscribeResponse">
<wsdl:part name="SubscribeResponse"
element="wsnt:SubscribeResponse"/>
</wsdl:message>
<wsdl:message name="SubscribeCreationFailedFault">
<wsdl:part name="SubscribeCreationFailedFault"
element="wsnt:SubscribeCreationFailedFault" />
</wsdl:message>
<wsdl:message name="TopicExpressionDialectUnknownFault">
<wsdl:part name="TopicExpressionDialectUnknownFault"
element="wsnt:TopicExpressionDialectUnknownFault" />
</wsdl:message>
<wsdl:message name="InvalidFilterFault">
<wsdl:part name="InvalidFilterFault"
element="wsnt:InvalidFilterFault" />
</wsdl:message>
<wsdl:message name="InvalidProducerPropertiesExpressionFault">
<wsdl:part name="InvalidProducerPropertiesExpressionFault"
element="wsnt:InvalidProducerPropertiesExpressionFault" />
</wsdl:message>
<wsdl:message name="InvalidMessageContentExpressionFault">
<wsdl:part name="InvalidMessageContentExpressionFault"
element="wsnt:InvalidMessageContentExpressionFault" />
</wsdl:message>
<wsdl:message name="UnrecognizedPolicyRequestFault">
<wsdl:part name="UnrecognizedPolicyRequestFault"
element="wsnt:UnrecognizedPolicyRequestFault" />
</wsdl:message>
<wsdl:message name="UnsupportedPolicyRequestFault">
<wsdl:part name="UnsupportedPolicyRequestFault"
element="wsnt:UnsupportedPolicyRequestFault" />
</wsdl:message>
<wsdl:message name="NotifyMessageNotSupportedFault">
<wsdl:part name="NotifyMessageNotSupportedFault"
element="wsnt:NotifyMessageNotSupportedFault" />
</wsdl:message>
<wsdl:message name="UnacceptableInitialTerminationTimeFault">
<wsdl:part name="UnacceptableInitialTerminationTimeFault"
element="wsnt:UnacceptableInitialTerminationTimeFault"/>
</wsdl:message>
<!-- ========== NotificationProducer::GetCurrentMessage ===========
GetCurrentMessage(topicExpression)
returns: a NotificationMessage (xsd:any)
-->
<wsdl:message name="GetCurrentMessageRequest">
<wsdl:part name="GetCurrentMessageRequest"
element="wsnt:GetCurrentMessage"/>
</wsdl:message>
<wsdl:message name="GetCurrentMessageResponse">
<wsdl:part name="GetCurrentMessageResponse"
element="wsnt:GetCurrentMessageResponse"/>
</wsdl:message>
<wsdl:message name="InvalidTopicExpressionFault">
<wsdl:part name="InvalidTopicExpressionFault"
element="wsnt:InvalidTopicExpressionFault" />
</wsdl:message>
<wsdl:message name="TopicNotSupportedFault">
<wsdl:part name="TopicNotSupportedFault"
element="wsnt:TopicNotSupportedFault" />
</wsdl:message>
<wsdl:message name="MultipleTopicsSpecifiedFault">
<wsdl:part name="MultipleTopicsSpecifiedFault"
element="wsnt:MultipleTopicsSpecifiedFault" />
</wsdl:message>
<wsdl:message name="NoCurrentMessageOnTopicFault">
<wsdl:part name="NoCurrentMessageOnTopicFault"
element="wsnt:NoCurrentMessageOnTopicFault" />
</wsdl:message>
<!-- ========== PullPoint::GetMessages ===========
GetMessages(MaximumNumber)
returns: NotificationMessage list
-->
<wsdl:message name="GetMessagesRequest">
<wsdl:part name="GetMessagesRequest"
element="wsnt:GetMessages"/>
</wsdl:message>
<wsdl:message name="GetMessagesResponse">
<wsdl:part name="GetMessagesResponse"
element="wsnt:GetMessagesResponse"/>
</wsdl:message>
<wsdl:message name="UnableToGetMessagesFault">
<wsdl:part name="UnableToGetMessagesFault"
element="wsnt:UnableToGetMessagesFault"/>
</wsdl:message>
<!-- ========== PullPoint::DestroyPullPoint ===========
DestroyPullPoint()
returns: void
-->
<wsdl:message name="DestroyPullPointRequest">
<wsdl:part name="DestroyPullPointRequest"
element="wsnt:DestroyPullPoint"/>
</wsdl:message>
<wsdl:message name="DestroyPullPointResponse">
<wsdl:part name="DestroyPullPointResponse"
element="wsnt:DestroyPullPointResponse"/>
</wsdl:message>
<wsdl:message name="UnableToDestroyPullPointFault">
<wsdl:part name="UnableToDestroyPullPointFault"
element="wsnt:UnableToDestroyPullPointFault"/>
</wsdl:message>
<!-- ========== PullPoint::CreatePullPoint ===========
CreatePullPoint()
returns: PullPoint (wsa:EndpointReference)
-->
<wsdl:message name="CreatePullPointRequest">
<wsdl:part name="CreatePullPointRequest"
element="wsnt:CreatePullPoint"/>
</wsdl:message>
<wsdl:message name="CreatePullPointResponse">
<wsdl:part name="CreatePullPointResponse"
element="wsnt:CreatePullPointResponse"/>
</wsdl:message>
<wsdl:message name="UnableToCreatePullPointFault">
<wsdl:part name="UnableToCreatePullPointFault"
element="wsnt:UnableToCreatePullPointFault"/>
</wsdl:message>
<!-- ================ SubscriptionManager::Renew ==================
Renew( Duration | AbsoluteTime)
returns: (New Termination Time [CurrentTime])
-->
<wsdl:message name="RenewRequest">
<wsdl:part name="RenewRequest"
element="wsnt:Renew"/>
</wsdl:message>
<wsdl:message name="RenewResponse">
<wsdl:part name="RenewResponse"
element="wsnt:RenewResponse"/>
</wsdl:message>
<wsdl:message name="UnacceptableTerminationTimeFault">
<wsdl:part name="UnacceptableTerminationTimeFault"
element="wsnt:UnacceptableTerminationTimeFault" />
</wsdl:message>
<!-- ============== SubscriptionManager::Unsubscribe ===============
Unsubscribe()
returns: empty
-->
<wsdl:message name="UnsubscribeRequest">
<wsdl:part name="UnsubscribeRequest"
element="wsnt:Unsubscribe"/>
</wsdl:message>
<wsdl:message name="UnsubscribeResponse">
<wsdl:part name="UnsubscribeResponse"
element="wsnt:UnsubscribeResponse"/>
</wsdl:message>
<wsdl:message name="UnableToDestroySubscriptionFault">
<wsdl:part name="UnableToDestroySubscriptionFault"
element="wsnt:UnableToDestroySubscriptionFault" />
</wsdl:message>
<!-- ========== SubscriptionManager::PauseSubscription ============
PauseSubscription()
returns: empty
-->
<wsdl:message name="PauseSubscriptionRequest">
<wsdl:part name="PauseSubscriptionRequest"
element="wsnt:PauseSubscription"/>
</wsdl:message>
<wsdl:message name="PauseSubscriptionResponse">
<wsdl:part name="PauseSubscriptionResponse"
element="wsnt:PauseSubscriptionResponse"/>
</wsdl:message>
<wsdl:message name="PauseFailedFault">
<wsdl:part name="PauseFailedFault"
element="wsnt:PauseFailedFault" />
</wsdl:message>
<!-- ========= SubscriptionManager::ResumeSubscription ============
ResumeSubscription()
returns: empty
-->
<wsdl:message name="ResumeSubscriptionRequest">
<wsdl:part name="ResumeSubscriptionRequest"
element="wsnt:ResumeSubscription"/>
</wsdl:message>
<wsdl:message name="ResumeSubscriptionResponse">
<wsdl:part name="ResumeSubscriptionResponse"
element="wsnt:ResumeSubscriptionResponse"/>
</wsdl:message>
<wsdl:message name="ResumeFailedFault">
<wsdl:part name="ResumeFailedFault"
element="wsnt:ResumeFailedFault" />
</wsdl:message>
<!-- =================== PortType Definitions ===================== -->
<!-- ========= NotificationConsumer PortType Definition =========== -->
<wsdl:portType name="NotificationConsumer">
<wsdl:operation name="Notify">
<wsdl:input message="wsntw:Notify" />
</wsdl:operation>
</wsdl:portType>
<!-- ========= NotificationProducer PortType Definition =========== -->
<wsdl:portType name="NotificationProducer">
<wsdl:operation name="Subscribe">
<wsdl:input message="wsntw:SubscribeRequest" />
<wsdl:output message="wsntw:SubscribeResponse" />
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="InvalidFilterFault"
message="wsntw:InvalidFilterFault"/>
<wsdl:fault name="TopicExpressionDialectUnknownFault"
message="wsntw:TopicExpressionDialectUnknownFault"/>
<wsdl:fault name="InvalidTopicExpressionFault"
message="wsntw:InvalidTopicExpressionFault" />
<wsdl:fault name="TopicNotSupportedFault"
message="wsntw:TopicNotSupportedFault" />
<wsdl:fault name="InvalidProducerPropertiesExpressionFault"
message="wsntw:InvalidProducerPropertiesExpressionFault"/>
<wsdl:fault name="InvalidMessageContentExpressionFault"
message="wsntw:InvalidMessageContentExpressionFault"/>
<wsdl:fault name="UnacceptableInitialTerminationTimeFault"
message="wsntw:UnacceptableInitialTerminationTimeFault"/>
<wsdl:fault name="UnrecognizedPolicyRequestFault"
message="wsntw:UnrecognizedPolicyRequestFault"/>
<wsdl:fault name="UnsupportedPolicyRequestFault"
message="wsntw:UnsupportedPolicyRequestFault"/>
<wsdl:fault name="NotifyMessageNotSupportedFault"
message="wsntw:NotifyMessageNotSupportedFault"/>
<wsdl:fault name="SubscribeCreationFailedFault"
message="wsntw:SubscribeCreationFailedFault"/>
</wsdl:operation>
<wsdl:operation name="GetCurrentMessage">
<wsdl:input message="wsntw:GetCurrentMessageRequest"/>
<wsdl:output message="wsntw:GetCurrentMessageResponse"/>
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="TopicExpressionDialectUnknownFault"
message="wsntw:TopicExpressionDialectUnknownFault"/>
<wsdl:fault name="InvalidTopicExpressionFault"
message="wsntw:InvalidTopicExpressionFault" />
<wsdl:fault name="TopicNotSupportedFault"
message="wsntw:TopicNotSupportedFault" />
<wsdl:fault name="NoCurrentMessageOnTopicFault"
message="wsntw:NoCurrentMessageOnTopicFault" />
<wsdl:fault name="MultipleTopicsSpecifiedFault"
message="wsntw:MultipleTopicsSpecifiedFault" />
</wsdl:operation>
</wsdl:portType>
<!-- ========== PullPoint PortType Definition ===================== -->
<wsdl:portType name="PullPoint">
<wsdl:operation name="GetMessages">
<wsdl:input name="GetMessagesRequest"
message="wsntw:GetMessagesRequest" />
<wsdl:output name="GetMessagesResponse"
message="wsntw:GetMessagesResponse" />
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="UnableToGetMessagesFault"
message="wsntw:UnableToGetMessagesFault" />
</wsdl:operation>
<wsdl:operation name="DestroyPullPoint">
<wsdl:input name="DestroyPullPointRequest"
message="wsntw:DestroyPullPointRequest" />
<wsdl:output name="DestroyPullPointResponse"
message="wsntw:DestroyPullPointResponse" />
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault"/>
<wsdl:fault name="UnableToDestroyPullPointFault"
message="wsntw:UnableToDestroyPullPointFault" />
</wsdl:operation>
<wsdl:operation name="Notify">
<wsdl:input message="wsntw:Notify"/>
</wsdl:operation>
</wsdl:portType>
<!-- ========== CreatePullPoint PortType Definition =============== -->
<wsdl:portType name="CreatePullPoint">
<wsdl:operation name="CreatePullPoint">
<wsdl:input name="CreatePullPointRequest"
message="wsntw:CreatePullPointRequest" />
<wsdl:output name="CreatePullPointResponse"
message="wsntw:CreatePullPointResponse" />
<wsdl:fault name="UnableToCreatePullPointFault"
message="wsntw:UnableToCreatePullPointFault" />
</wsdl:operation>
</wsdl:portType>
<!-- ========== SubscriptionManager PortType Definition =========== -->
<wsdl:portType name="SubscriptionManager">
<wsdl:operation name="Renew">
<wsdl:input name="RenewRequest"
message="wsntw:RenewRequest" />
<wsdl:output name="RenewResponse"
message="wsntw:RenewResponse" />
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="UnacceptableTerminationTimeFault"
message=
"wsntw:UnacceptableTerminationTimeFault" />
</wsdl:operation>
<wsdl:operation name="Unsubscribe">
<wsdl:input name="UnsubscribeRequest"
message="wsntw:UnsubscribeRequest" />
<wsdl:output name="UnsubscribeResponse"
message="wsntw:UnsubscribeResponse" />
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="UnableToDestroySubscriptionFault"
message=
"wsntw:UnableToDestroySubscriptionFault" />
</wsdl:operation>
</wsdl:portType>
<!-- ====== PausableSubscriptionManager PortType Definition ======= -->
<wsdl:portType name="PausableSubscriptionManager">
<!-- ============== Extends: SubscriptionManager ============ -->
<wsdl:operation name="Renew">
<wsdl:input name="RenewRequest"
message="wsntw:RenewRequest" />
<wsdl:output name="RenewResponse"
message="wsntw:RenewResponse" />
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="UnacceptableTerminationTimeFault"
message=
"wsntw:UnacceptableTerminationTimeFault" />
</wsdl:operation>
<wsdl:operation name="Unsubscribe">
<wsdl:input name="UnsubscribeRequest"
message="wsntw:UnsubscribeRequest" />
<wsdl:output name="UnsubscribeResponse"
message="wsntw:UnsubscribeResponse" />
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="UnableToDestroySubscriptionFault"
message=
"wsntw:UnableToDestroySubscriptionFault" />
</wsdl:operation>
<!-- === PausableSubscriptionManager specific operations === -->
<wsdl:operation name="PauseSubscription">
<wsdl:input message="wsntw:PauseSubscriptionRequest"/>
<wsdl:output message="wsntw:PauseSubscriptionResponse"/>
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="PauseFailedFault"
message="wsntw:PauseFailedFault" />
</wsdl:operation>
<wsdl:operation name="ResumeSubscription">
<wsdl:input message="wsntw:ResumeSubscriptionRequest"/>
<wsdl:output message="wsntw:ResumeSubscriptionResponse"/>
<wsdl:fault name="ResourceUnknownFault"
message="wsrf-rw:ResourceUnknownFault" />
<wsdl:fault name="ResumeFailedFault"
message="wsntw:ResumeFailedFault" />
</wsdl:operation>
</wsdl:portType>
</wsdl:definitions>

3786
onvif/wsdl/devicemgmt.wsdl Normal file

File diff suppressed because it is too large Load Diff

3688
onvif/wsdl/media.wsdl Normal file

File diff suppressed because it is too large Load Diff

8578
onvif/wsdl/onvif-local.xsd Normal file

File diff suppressed because it is too large Load Diff

8559
onvif/wsdl/onvif.xsd Normal file

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More