onvif-python 0.2.5__tar.gz → 0.2.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {onvif_python-0.2.5/onvif_python.egg-info → onvif_python-0.2.6}/PKG-INFO +5 -5
- {onvif_python-0.2.5 → onvif_python-0.2.6}/README.md +4 -4
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/cli/interactive.py +2 -2
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/cli/main.py +2 -2
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/devicemgmt.py +3 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/media2.py +17 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/advancedsecurity/wsdl/advancedsecurity.wsdl +9 -9
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/device/wsdl/devicemgmt.wsdl +53 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/schema/metadatastream.xsd +2 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/schema/onvif.xsd +224 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/media/wsdl/media.wsdl +148 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6/onvif_python.egg-info}/PKG-INFO +5 -5
- {onvif_python-0.2.5 → onvif_python-0.2.6}/pyproject.toml +1 -1
- {onvif_python-0.2.5 → onvif_python-0.2.6}/LICENSE.md +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/MANIFEST.in +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/__init__.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/cli/__init__.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/cli/__main__.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/cli/utils.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/client.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/db/companies.db +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/db/products.db +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/operator.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/__init__.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/accesscontrol.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/accessrules.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/actionengine.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/analytics/analytics.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/analytics/ruleengine.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/analyticsdevice.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/appmgmt.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/authenticationbehavior.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/credential.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/deviceio.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/display.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/doorcontrol.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/events/events.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/events/notification.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/events/pausable_subscription.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/events/pullpoint.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/events/subscription.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/imaging.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/media.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/provisioning.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/ptz.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/receiver.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/recording.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/replay.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/schedule.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/search.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/security/advancedsecurity.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/security/authorizationserver.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/security/dot1x.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/security/jwt.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/security/keystore.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/security/mediasigning.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/security/tlsserver.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/thermal.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/services/uplink.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/utils/__init__.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/utils/discovery.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/utils/error_handlers.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/utils/exceptions.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/utils/parser.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/utils/service.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/utils/wsdl.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/utils/xml_capture.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/utils/zeep.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/LICENSE.md +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/accesscontrol/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/accessrules/wsdl/accessrules.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/accessrules/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/actionengine.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/advancedsecurity/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/analyticsdevice.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/appmgmt/wsdl/appmgmt.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/appmgmt/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/authenticationbehavior/wsdl/authenticationbehavior.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/authenticationbehavior/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/credential/wsdl/credential.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/credential/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/deviceio.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/display/display.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/display/wsdl/index.htm +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/display.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/doorcontrol/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/events/wsdl/bw-2-vs-mod.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/events/wsdl/event-vs.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/events/wsdl/event.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/events/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/federatedsearch.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/media/wsdl/media.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/pacs/accesscontrol.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/pacs/doorcontrol.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/pacs/types.xsd +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/provisioning/wsdl/provisioning.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/receiver.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/recording.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/replay.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/schedule/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/schedule/wsdl/schedule.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/schema/common.xsd +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/search.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/thermal/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/thermal/wsdl/thermal.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/topics/topicns.xml +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/uplink/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver10/uplink/wsdl/uplink.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/analytics/humanbody.xsd +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/analytics/humanface.xsd +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/analytics/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/analytics/radiometry.xsd +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/analytics/rules.xsd +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/analytics/wsdl/analytics.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/analytics/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/imaging/wsdl/imaging.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/media/wsdl/index.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/ptz/wsdl/ptz.wsdl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/util/federated_search_documentation.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/util/fedsearch-docu-viewer.xsl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/util/onvif-wsdl-viewer.xsl +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif/wsdl/ver20/util/operationIndex.html +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif_python.egg-info/SOURCES.txt +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif_python.egg-info/dependency_links.txt +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif_python.egg-info/entry_points.txt +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif_python.egg-info/requires.txt +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/onvif_python.egg-info/top_level.txt +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/setup.cfg +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/setup.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/tests/test_client.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/tests/test_core.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/tests/test_error_handlers.py +0 -0
- {onvif_python-0.2.5 → onvif_python-0.2.6}/tests/test_exceptions.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: onvif-python
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.6
|
|
4
4
|
Summary: A modern Python library for ONVIF-compliant devices
|
|
5
5
|
Author-email: Nirsimetri Technologies® <open@nirsimetri.com>
|
|
6
6
|
Maintainer: Kaburagi
|
|
@@ -44,9 +44,9 @@ Dynamic: license-file
|
|
|
44
44
|
<h1 align="center">ONVIF Python</h1>
|
|
45
45
|
|
|
46
46
|
<div align="center">
|
|
47
|
-
<a href="https://app.codacy.com/gh/nirsimetri/onvif-python/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade"><img
|
|
47
|
+
<a href="https://app.codacy.com/gh/nirsimetri/onvif-python/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade"><img src="https://app.codacy.com/project/badge/Grade/bff08a94e4d447b690cea49c6594826d"/></a>
|
|
48
48
|
<a href="https://deepwiki.com/nirsimetri/onvif-python"><img alt="Ask DeepWiki" src="https://deepwiki.com/badge.svg"></a>
|
|
49
|
-
<a href="https://pypi.org/project/onvif-python/"><img alt="PyPI Version" src="https://img.shields.io/badge/PyPI-0.2.
|
|
49
|
+
<a href="https://pypi.org/project/onvif-python/"><img alt="PyPI Version" src="https://img.shields.io/badge/PyPI-0.2.6-orange?logo=archive&color=yellow"></a>
|
|
50
50
|
<a href="https://pepy.tech/projects/onvif-python"><img alt="Pepy Total Downloads" src="https://img.shields.io/pepy/dt/onvif-python?label=Downloads&color=red"></a>
|
|
51
51
|
<br>
|
|
52
52
|
<a href="https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml"><img alt="Build" src="https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml/badge.svg?branch=main"></a>
|
|
@@ -362,7 +362,7 @@ usage: onvif [-h] [--host HOST] [--port PORT] [--username USERNAME] [--password
|
|
|
362
362
|
[--cache {all,db,mem,none}] [--health-check-interval HEALTH_CHECK_INTERVAL] [--output OUTPUT] [--version]
|
|
363
363
|
[service] [method] [params ...]
|
|
364
364
|
|
|
365
|
-
ONVIF Terminal Client — v0.2.
|
|
365
|
+
ONVIF Terminal Client — v0.2.6
|
|
366
366
|
https://github.com/nirsimetri/onvif-python
|
|
367
367
|
|
|
368
368
|
positional arguments:
|
|
@@ -443,7 +443,7 @@ Examples:
|
|
|
443
443
|
<summary><b>2. Interactive Shell</b></summary>
|
|
444
444
|
|
|
445
445
|
```bash
|
|
446
|
-
ONVIF Interactive Shell — v0.2.
|
|
446
|
+
ONVIF Interactive Shell — v0.2.6
|
|
447
447
|
https://github.com/nirsimetri/onvif-python
|
|
448
448
|
|
|
449
449
|
Basic Commands:
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<h1 align="center">ONVIF Python</h1>
|
|
2
2
|
|
|
3
3
|
<div align="center">
|
|
4
|
-
<a href="https://app.codacy.com/gh/nirsimetri/onvif-python/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade"><img
|
|
4
|
+
<a href="https://app.codacy.com/gh/nirsimetri/onvif-python/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade"><img src="https://app.codacy.com/project/badge/Grade/bff08a94e4d447b690cea49c6594826d"/></a>
|
|
5
5
|
<a href="https://deepwiki.com/nirsimetri/onvif-python"><img alt="Ask DeepWiki" src="https://deepwiki.com/badge.svg"></a>
|
|
6
|
-
<a href="https://pypi.org/project/onvif-python/"><img alt="PyPI Version" src="https://img.shields.io/badge/PyPI-0.2.
|
|
6
|
+
<a href="https://pypi.org/project/onvif-python/"><img alt="PyPI Version" src="https://img.shields.io/badge/PyPI-0.2.6-orange?logo=archive&color=yellow"></a>
|
|
7
7
|
<a href="https://pepy.tech/projects/onvif-python"><img alt="Pepy Total Downloads" src="https://img.shields.io/pepy/dt/onvif-python?label=Downloads&color=red"></a>
|
|
8
8
|
<br>
|
|
9
9
|
<a href="https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml"><img alt="Build" src="https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml/badge.svg?branch=main"></a>
|
|
@@ -319,7 +319,7 @@ usage: onvif [-h] [--host HOST] [--port PORT] [--username USERNAME] [--password
|
|
|
319
319
|
[--cache {all,db,mem,none}] [--health-check-interval HEALTH_CHECK_INTERVAL] [--output OUTPUT] [--version]
|
|
320
320
|
[service] [method] [params ...]
|
|
321
321
|
|
|
322
|
-
ONVIF Terminal Client — v0.2.
|
|
322
|
+
ONVIF Terminal Client — v0.2.6
|
|
323
323
|
https://github.com/nirsimetri/onvif-python
|
|
324
324
|
|
|
325
325
|
positional arguments:
|
|
@@ -400,7 +400,7 @@ Examples:
|
|
|
400
400
|
<summary><b>2. Interactive Shell</b></summary>
|
|
401
401
|
|
|
402
402
|
```bash
|
|
403
|
-
ONVIF Interactive Shell — v0.2.
|
|
403
|
+
ONVIF Interactive Shell — v0.2.6
|
|
404
404
|
https://github.com/nirsimetri/onvif-python
|
|
405
405
|
|
|
406
406
|
Basic Commands:
|
|
@@ -194,7 +194,7 @@ class InteractiveShell(cmd.Cmd):
|
|
|
194
194
|
" / __ \\/ | / / | / / _/ ____/",
|
|
195
195
|
" / / / / |/ /| | / // // /_ ",
|
|
196
196
|
"/ /_/ / /| / | |/ // // __/ ",
|
|
197
|
-
"\\____/_/ |_/ |___/___/_/ v0.2.
|
|
197
|
+
"\\____/_/ |_/ |___/___/_/ v0.2.6",
|
|
198
198
|
" ",
|
|
199
199
|
]
|
|
200
200
|
|
|
@@ -1400,7 +1400,7 @@ class InteractiveShell(cmd.Cmd):
|
|
|
1400
1400
|
super().do_help(line)
|
|
1401
1401
|
else:
|
|
1402
1402
|
help_text = f"""
|
|
1403
|
-
{colorize('ONVIF Interactive Shell — v0.2.
|
|
1403
|
+
{colorize('ONVIF Interactive Shell — v0.2.6', 'cyan')}\n{colorize('https://github.com/nirsimetri/onvif-python', 'white')}
|
|
1404
1404
|
|
|
1405
1405
|
{colorize('Basic Commands:', 'yellow')}
|
|
1406
1406
|
capabilities, caps - Show device capabilities
|
|
@@ -22,7 +22,7 @@ def create_parser():
|
|
|
22
22
|
"""Create argument parser for ONVIF CLI"""
|
|
23
23
|
parser = argparse.ArgumentParser(
|
|
24
24
|
prog="onvif",
|
|
25
|
-
description=f"{colorize('ONVIF Terminal Client', 'yellow')} — v0.2.
|
|
25
|
+
description=f"{colorize('ONVIF Terminal Client', 'yellow')} — v0.2.6\nhttps://github.com/nirsimetri/onvif-python",
|
|
26
26
|
formatter_class=argparse.RawDescriptionHelpFormatter,
|
|
27
27
|
epilog=f"""
|
|
28
28
|
Examples:
|
|
@@ -188,7 +188,7 @@ def main():
|
|
|
188
188
|
|
|
189
189
|
# Show ONVIF CLI version
|
|
190
190
|
if args.version:
|
|
191
|
-
print(colorize("0.2.
|
|
191
|
+
print(colorize("0.2.6", "yellow"))
|
|
192
192
|
sys.exit(0)
|
|
193
193
|
|
|
194
194
|
# Handle product search
|
|
@@ -313,3 +313,20 @@ class Media2(ONVIFService):
|
|
|
313
313
|
|
|
314
314
|
def GetPlayingAudioClips(self):
|
|
315
315
|
return self.operator.call("GetPlayingAudioClips")
|
|
316
|
+
|
|
317
|
+
def GetMulticastAudioDecoderConfigurationOptions(self, ConfigurationToken=None):
|
|
318
|
+
return self.operator.call(
|
|
319
|
+
"GetMulticastAudioDecoderConfigurationOptions",
|
|
320
|
+
ConfigurationToken=ConfigurationToken,
|
|
321
|
+
)
|
|
322
|
+
|
|
323
|
+
def GetMulticastAudioDecoderConfigurations(self, ConfigurationToken=None):
|
|
324
|
+
return self.operator.call(
|
|
325
|
+
"GetMulticastAudioDecoderConfigurations",
|
|
326
|
+
ConfigurationToken=ConfigurationToken,
|
|
327
|
+
)
|
|
328
|
+
|
|
329
|
+
def SetMulticastAudioDecoderConfiguration(self, Configuration):
|
|
330
|
+
return self.operator.call(
|
|
331
|
+
"SetMulticastAudioDecoderConfiguration", Configuration=Configuration
|
|
332
|
+
)
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
</xs:enumeration>
|
|
83
83
|
</xs:restriction>
|
|
84
84
|
</xs:simpleType>
|
|
85
|
-
<xs:simpleType name="
|
|
85
|
+
<xs:simpleType name="KeyPairAlgorithm">
|
|
86
86
|
<xs:restriction base="xs:string">
|
|
87
87
|
<xs:enumeration value="RSA"/>
|
|
88
88
|
<xs:enumeration value="ECC"/>
|
|
@@ -740,12 +740,12 @@
|
|
|
740
740
|
</xs:attribute>
|
|
741
741
|
<xs:attribute name="RSAKeyPairGeneration" type="xs:boolean">
|
|
742
742
|
<xs:annotation>
|
|
743
|
-
<xs:documentation>Indication that the device supports on-board
|
|
743
|
+
<xs:documentation>Deprecated - Indication that the device supports on-board ECC key pair generation.</xs:documentation>
|
|
744
744
|
</xs:annotation>
|
|
745
745
|
</xs:attribute>
|
|
746
746
|
<xs:attribute name="ECCKeyPairGeneration" type="xs:boolean">
|
|
747
747
|
<xs:annotation>
|
|
748
|
-
<xs:documentation>Indication that the device supports on-board ECC key pair generation.</xs:documentation>
|
|
748
|
+
<xs:documentation>Deprecated - Indication that the device supports on-board ECC key pair generation.</xs:documentation>
|
|
749
749
|
</xs:annotation>
|
|
750
750
|
</xs:attribute>
|
|
751
751
|
<xs:attribute name="KeyPairGeneration" type="tt:StringList">
|
|
@@ -760,12 +760,12 @@
|
|
|
760
760
|
</xs:attribute>
|
|
761
761
|
<xs:attribute name="EllipticCurves" type="tas:EllipticCurves">
|
|
762
762
|
<xs:annotation>
|
|
763
|
-
<xs:documentation>Indicates which elliptic curves are supported by the device.</xs:documentation>
|
|
763
|
+
<xs:documentation>Indicates which elliptic curves are supported by the device. Supported curve names can be found in the IANA TLS Supported Groups section, under the Description field.</xs:documentation>
|
|
764
764
|
</xs:annotation>
|
|
765
765
|
</xs:attribute>
|
|
766
766
|
<xs:attribute name="PKCS10ExternalCertificationWithRSA" type="xs:boolean">
|
|
767
767
|
<xs:annotation>
|
|
768
|
-
<xs:documentation>Indicates support for creating PKCS#10 requests for RSA keys and uploading the certificate obtained from a CA..</xs:documentation>
|
|
768
|
+
<xs:documentation>Deprecated - Indicates support for creating PKCS#10 requests for RSA keys and uploading the certificate obtained from a CA..</xs:documentation>
|
|
769
769
|
</xs:annotation>
|
|
770
770
|
</xs:attribute>
|
|
771
771
|
<xs:attribute name="PKCS10" type="xs:boolean">
|
|
@@ -775,7 +775,7 @@
|
|
|
775
775
|
</xs:attribute>
|
|
776
776
|
<xs:attribute name="SelfSignedCertificateCreationWithRSA" type="xs:boolean">
|
|
777
777
|
<xs:annotation>
|
|
778
|
-
<xs:documentation>Indicates support for creating self-signed certificates for RSA keys.</xs:documentation>
|
|
778
|
+
<xs:documentation>Deprecated - Indicates support for creating self-signed certificates for RSA keys.</xs:documentation>
|
|
779
779
|
</xs:annotation>
|
|
780
780
|
</xs:attribute>
|
|
781
781
|
<xs:attribute name="SelfSignedCertificateCreation" type="xs:boolean">
|
|
@@ -795,7 +795,7 @@
|
|
|
795
795
|
</xs:attribute>
|
|
796
796
|
<xs:attribute name="PKCS8RSAKeyPairUpload" type="xs:boolean">
|
|
797
797
|
<xs:annotation>
|
|
798
|
-
<xs:documentation>Indicates support for uploading an RSA key pair in a PKCS#8 data structure.</xs:documentation>
|
|
798
|
+
<xs:documentation>Deprecated - Indicates support for uploading an RSA key pair in a PKCS#8 data structure.</xs:documentation>
|
|
799
799
|
</xs:annotation>
|
|
800
800
|
</xs:attribute>
|
|
801
801
|
<xs:attribute name="PKCS8" type="xs:boolean">
|
|
@@ -805,7 +805,7 @@
|
|
|
805
805
|
</xs:attribute>
|
|
806
806
|
<xs:attribute name="PKCS12CertificateWithRSAPrivateKeyUpload" type="xs:boolean">
|
|
807
807
|
<xs:annotation>
|
|
808
|
-
<xs:documentation>Indicates support for uploading a certificate along with an RSA private key in a PKCS#12 data structure.</xs:documentation>
|
|
808
|
+
<xs:documentation>Deprecated - Indicates support for uploading a certificate along with an RSA private key in a PKCS#12 data structure.</xs:documentation>
|
|
809
809
|
</xs:annotation>
|
|
810
810
|
</xs:attribute>
|
|
811
811
|
<xs:attribute name="PKCS12" type="xs:boolean">
|
|
@@ -2967,7 +2967,7 @@
|
|
|
2967
2967
|
</wsdl:operation>
|
|
2968
2968
|
<wsdl:operation name="UploadKeyPairInPKCS8">
|
|
2969
2969
|
<wsdl:documentation>
|
|
2970
|
-
|
|
2970
|
+
Deprecated method for uploading a key pair in a PKCS#8 data structure as specified in [RFC 5958, RFC 5959].<br/>
|
|
2971
2971
|
If an encryption passphrase ID is supplied in the request, the device shall assume that the KeyPair parameter contains an EncryptedPrivateKeyInfo ASN.1
|
|
2972
2972
|
structure that is encrypted under the passphrase in the keystore that corresponds to the supplied ID, where the EncryptedPrivateKeyInfo structure contains
|
|
2973
2973
|
both the private key and the corresponding public key. If no encryption passphrase ID is supplied, the device shall assume that the KeyPair parameter contains a
|
|
@@ -306,6 +306,11 @@ IN NO EVENT WILL THE CORPORATION OR ITS MEMBERS OR THEIR AFFILIATES BE LIABLE FO
|
|
|
306
306
|
<xs:documentation>Indicates support for firmware upgrade through MTOM.</xs:documentation>
|
|
307
307
|
</xs:annotation>
|
|
308
308
|
</xs:attribute>
|
|
309
|
+
<xs:attribute name="CloudFirmwareUpgrade" type="xs:boolean">
|
|
310
|
+
<xs:annotation>
|
|
311
|
+
<xs:documentation>Indicates support for firmware upgrade through the cloud.</xs:documentation>
|
|
312
|
+
</xs:annotation>
|
|
313
|
+
</xs:attribute>
|
|
309
314
|
<xs:attribute name="HttpFirmwareUpgrade" type="xs:boolean">
|
|
310
315
|
<xs:annotation>
|
|
311
316
|
<xs:documentation>Indicates support for firmware upgrade through HTTP.</xs:documentation>
|
|
@@ -2118,6 +2123,21 @@ IN NO EVENT WILL THE CORPORATION OR ITS MEMBERS OR THEIR AFFILIATES BE LIABLE FO
|
|
|
2118
2123
|
</xs:complexType>
|
|
2119
2124
|
</xs:element>
|
|
2120
2125
|
<!--===============================-->
|
|
2126
|
+
<xs:element name="UpgradeFirmware">
|
|
2127
|
+
<xs:complexType>
|
|
2128
|
+
<xs:sequence>
|
|
2129
|
+
<xs:element name="Version" type="xs:string"/>
|
|
2130
|
+
</xs:sequence>
|
|
2131
|
+
</xs:complexType>
|
|
2132
|
+
</xs:element>
|
|
2133
|
+
<xs:element name="UpgradeFirmwareResponse">
|
|
2134
|
+
<xs:complexType>
|
|
2135
|
+
<xs:sequence>
|
|
2136
|
+
<xs:element name="ExpectedDownTime" type="xs:duration"/>
|
|
2137
|
+
</xs:sequence>
|
|
2138
|
+
</xs:complexType>
|
|
2139
|
+
</xs:element>
|
|
2140
|
+
<!--===============================-->
|
|
2121
2141
|
<xs:element name="StartSystemRestore">
|
|
2122
2142
|
<xs:complexType>
|
|
2123
2143
|
<xs:sequence/>
|
|
@@ -2959,6 +2979,12 @@ IN NO EVENT WILL THE CORPORATION OR ITS MEMBERS OR THEIR AFFILIATES BE LIABLE FO
|
|
|
2959
2979
|
<wsdl:message name="StartFirmwareUpgradeResponse">
|
|
2960
2980
|
<wsdl:part name="parameters" element="tds:StartFirmwareUpgradeResponse"/>
|
|
2961
2981
|
</wsdl:message>
|
|
2982
|
+
<wsdl:message name="UpgradeFirmwareRequest">
|
|
2983
|
+
<wsdl:part name="parameters" element="tds:UpgradeFirmware"/>
|
|
2984
|
+
</wsdl:message>
|
|
2985
|
+
<wsdl:message name="UpgradeFirmwareResponse">
|
|
2986
|
+
<wsdl:part name="parameters" element="tds:UpgradeFirmwareResponse"/>
|
|
2987
|
+
</wsdl:message>
|
|
2962
2988
|
<wsdl:message name="StartSystemRestoreRequest">
|
|
2963
2989
|
<wsdl:part name="parameters" element="tds:StartSystemRestore"/>
|
|
2964
2990
|
</wsdl:message>
|
|
@@ -3553,6 +3579,24 @@ IN NO EVENT WILL THE CORPORATION OR ITS MEMBERS OR THEIR AFFILIATES BE LIABLE FO
|
|
|
3553
3579
|
<wsdl:input message="tds:StartFirmwareUpgradeRequest"/>
|
|
3554
3580
|
<wsdl:output message="tds:StartFirmwareUpgradeResponse"/>
|
|
3555
3581
|
</wsdl:operation>
|
|
3582
|
+
<wsdl:operation name="UpgradeFirmware">
|
|
3583
|
+
<wsdl:documentation>This operation initiates a firmware upgrade using between the device
|
|
3584
|
+
and the MCS, without further actions from the client. Cloud firmware upgrade may be
|
|
3585
|
+
achieved using the following steps:
|
|
3586
|
+
<ol>
|
|
3587
|
+
<li>Client retrieves the list of available firmware versions from the MCS.</li>
|
|
3588
|
+
<li>Client calls UpgradeFirmware, selecting the desired FW version.</li>
|
|
3589
|
+
<li>Device service responds with a downtime value.</li>
|
|
3590
|
+
<li>Device and MCS perform the firmware upgrade procedure without further interaction from the Client</li>
|
|
3591
|
+
<li>Device notifies the Client of the result by emitting the appropriate CloudFirmwareUpgrade event</li>
|
|
3592
|
+
</ol>
|
|
3593
|
+
After applying a firmware upgrade the device shall keep the basic network configuration
|
|
3594
|
+
like IP address, subnet mask and gateway or DHCP settings, as well as all the parameters
|
|
3595
|
+
of the Uplink and Security service unchanged, so that it can connect to the cloud.
|
|
3596
|
+
Additionally a firmware upgrade shall not change user credentials.</wsdl:documentation>
|
|
3597
|
+
<wsdl:input message="tds:UpgradeFirmwareRequest"/>
|
|
3598
|
+
<wsdl:output message="tds:UpgradeFirmwareResponse"/>
|
|
3599
|
+
</wsdl:operation>
|
|
3556
3600
|
<wsdl:operation name="StartSystemRestore">
|
|
3557
3601
|
<wsdl:documentation>This operation initiates a system restore from backed up configuration data using the HTTP
|
|
3558
3602
|
POST mechanism. The response to the command includes an HTTP URL to which the backup
|
|
@@ -4523,6 +4567,15 @@ IN NO EVENT WILL THE CORPORATION OR ITS MEMBERS OR THEIR AFFILIATES BE LIABLE FO
|
|
|
4523
4567
|
<soap:body use="literal"/>
|
|
4524
4568
|
</wsdl:output>
|
|
4525
4569
|
</wsdl:operation>
|
|
4570
|
+
<wsdl:operation name="UpgradeFirmware">
|
|
4571
|
+
<soap:operation soapAction="http://www.onvif.org/ver10/device/wsdl/UpgradeFirmware"/>
|
|
4572
|
+
<wsdl:input>
|
|
4573
|
+
<soap:body use="literal"/>
|
|
4574
|
+
</wsdl:input>
|
|
4575
|
+
<wsdl:output>
|
|
4576
|
+
<soap:body use="literal"/>
|
|
4577
|
+
</wsdl:output>
|
|
4578
|
+
</wsdl:operation>
|
|
4526
4579
|
<wsdl:operation name="StartSystemRestore">
|
|
4527
4580
|
<soap:operation soapAction="http://www.onvif.org/ver10/device/wsdl/StartSystemRestore"/>
|
|
4528
4581
|
<wsdl:input>
|
|
@@ -194,6 +194,8 @@ IN NO EVENT WILL THE CORPORATION OR ITS MEMBERS OR THEIR AFFILIATES BE LIABLE FO
|
|
|
194
194
|
<xs:enumeration value="LicensePlate"/>
|
|
195
195
|
<xs:enumeration value="Bike"/> <!-- any of bicycle, motorcycle, motorbike -->
|
|
196
196
|
<xs:enumeration value="Barcode"/>
|
|
197
|
+
<xs:enumeration value="Fire"/>
|
|
198
|
+
<xs:enumeration value="Smoke"/>
|
|
197
199
|
</xs:restriction>
|
|
198
200
|
</xs:simpleType>
|
|
199
201
|
<xs:simpleType name="ClassType">
|
|
@@ -2042,6 +2042,230 @@ decoding .A decoder shall decode every data it receives (according to its capabi
|
|
|
2042
2042
|
</xs:sequence>
|
|
2043
2043
|
</xs:complexType>
|
|
2044
2044
|
<!--===============================-->
|
|
2045
|
+
<!-- MulticastAudioDecoder -->
|
|
2046
|
+
<!--===============================-->
|
|
2047
|
+
<xs:complexType name="MulticastAudioDecoderConfiguration">
|
|
2048
|
+
<xs:annotation>
|
|
2049
|
+
<xs:documentation>
|
|
2050
|
+
Configuration for the Multicast Audio Decoder.
|
|
2051
|
+
</xs:documentation>
|
|
2052
|
+
</xs:annotation>
|
|
2053
|
+
<xs:complexContent>
|
|
2054
|
+
<xs:extension base="tt:ConfigurationEntity">
|
|
2055
|
+
<xs:sequence>
|
|
2056
|
+
<xs:element name="Enable" type="xs:boolean">
|
|
2057
|
+
<xs:annotation>
|
|
2058
|
+
<xs:documentation>
|
|
2059
|
+
Indicates whether the Multicast Audio Decoder is enabled or disabled.
|
|
2060
|
+
</xs:documentation>
|
|
2061
|
+
</xs:annotation>
|
|
2062
|
+
</xs:element>
|
|
2063
|
+
<xs:element name="AudioOutputToken" type="tt:ReferenceToken" minOccurs="0" maxOccurs="unbounded">
|
|
2064
|
+
<xs:annotation>
|
|
2065
|
+
<xs:documentation>
|
|
2066
|
+
Token of the physical Audio output. This element is optional and can occur multiple times.
|
|
2067
|
+
</xs:documentation>
|
|
2068
|
+
</xs:annotation>
|
|
2069
|
+
</xs:element>
|
|
2070
|
+
<xs:element name="Encoding" type="xs:string">
|
|
2071
|
+
<xs:annotation>
|
|
2072
|
+
<xs:documentation>
|
|
2073
|
+
Specifies the encoding type according to IANA media types.
|
|
2074
|
+
</xs:documentation>
|
|
2075
|
+
</xs:annotation>
|
|
2076
|
+
</xs:element>
|
|
2077
|
+
<xs:element name="Bitrate" type="xs:int">
|
|
2078
|
+
<xs:annotation>
|
|
2079
|
+
<xs:documentation>
|
|
2080
|
+
The bitrate of the audio stream in bits per second.
|
|
2081
|
+
</xs:documentation>
|
|
2082
|
+
</xs:annotation>
|
|
2083
|
+
</xs:element>
|
|
2084
|
+
<xs:element name="SamplingRate" type="xs:int">
|
|
2085
|
+
<xs:annotation>
|
|
2086
|
+
<xs:documentation>
|
|
2087
|
+
The sampling rate of the audio stream in kHz.
|
|
2088
|
+
</xs:documentation>
|
|
2089
|
+
</xs:annotation>
|
|
2090
|
+
</xs:element>
|
|
2091
|
+
<xs:element name="Multicast" type="tt:MulticastReceiverConfiguration">
|
|
2092
|
+
<xs:annotation>
|
|
2093
|
+
<xs:documentation>
|
|
2094
|
+
Contains configuration details for multicast settings.
|
|
2095
|
+
</xs:documentation>
|
|
2096
|
+
</xs:annotation>
|
|
2097
|
+
</xs:element>
|
|
2098
|
+
<xs:element name="RTPPayloadType" type="xs:int">
|
|
2099
|
+
<xs:annotation>
|
|
2100
|
+
<xs:documentation>
|
|
2101
|
+
Defines the RTP payload type used for the audio stream.
|
|
2102
|
+
To ensure compatibility, it is recommended to use dynamic payload types (96 and above), as specified in RFC 3551.
|
|
2103
|
+
Standard payload types (0-95) should only be used for predefined audio formats matching the audio encoding as defined in
|
|
2104
|
+
<a href="https://www.iana.org/assignments/rtp-parameters/rtp-parameters.xhtml#rtp-parameters-1">IANA RTP Payload Types</a>,
|
|
2105
|
+
as using them for non-standard media may lead to unexpected errors or interoperability issues.
|
|
2106
|
+
</xs:documentation>
|
|
2107
|
+
</xs:annotation>
|
|
2108
|
+
</xs:element>
|
|
2109
|
+
<xs:element name="Priority" type="xs:int">
|
|
2110
|
+
<xs:annotation>
|
|
2111
|
+
<xs:documentation>
|
|
2112
|
+
Indicates the priority level when multiple configurations are active.
|
|
2113
|
+
A higher value signifies a higher priority. If several configurations have the same priority value the order between those configurations is undefined.
|
|
2114
|
+
</xs:documentation>
|
|
2115
|
+
</xs:annotation>
|
|
2116
|
+
</xs:element>
|
|
2117
|
+
<xs:element name="MediaFormatParameters" type="xs:string" minOccurs="0">
|
|
2118
|
+
<xs:annotation>
|
|
2119
|
+
<xs:documentation>
|
|
2120
|
+
Optional media format parameters as specified in SDP, such as:
|
|
2121
|
+
a=fmtp:101 stereo=1; sprop-stereo=1.
|
|
2122
|
+
</xs:documentation>
|
|
2123
|
+
</xs:annotation>
|
|
2124
|
+
</xs:element>
|
|
2125
|
+
<xs:element name="SRTPPreSharedParameters" type="tt:SRTPPreShared" minOccurs="0">
|
|
2126
|
+
<xs:annotation>
|
|
2127
|
+
<xs:documentation>
|
|
2128
|
+
Optional configuration parameters for SRTP pre-shared key usage, applicable when SRTP is supported. When this configuration is present, RTP packets shall be encrypted.
|
|
2129
|
+
</xs:documentation>
|
|
2130
|
+
</xs:annotation>
|
|
2131
|
+
</xs:element>
|
|
2132
|
+
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> <!-- first Vendor then ONVIF -->
|
|
2133
|
+
</xs:sequence>
|
|
2134
|
+
<xs:anyAttribute processContents="lax"/>
|
|
2135
|
+
</xs:extension>
|
|
2136
|
+
</xs:complexContent>
|
|
2137
|
+
</xs:complexType>
|
|
2138
|
+
<!--===============================-->
|
|
2139
|
+
<xs:complexType name="SRTPPreShared">
|
|
2140
|
+
<xs:sequence>
|
|
2141
|
+
<xs:element name="SRTPPSK" type="xs:string">
|
|
2142
|
+
<xs:annotation>
|
|
2143
|
+
<xs:documentation>
|
|
2144
|
+
An optional SRTP Pre-Shared Key (PSK) represented as a hexadecimal string.
|
|
2145
|
+
This includes both the SRTP master key, followed by the master salt.
|
|
2146
|
+
The sizes of the key and salt depend on the specified SRTPCryptoPolicy.
|
|
2147
|
+
When this element is specified, RTP packets shall be encrypted.
|
|
2148
|
+
The SRTPPSK shall never be returned on a get method.
|
|
2149
|
+
</xs:documentation>
|
|
2150
|
+
</xs:annotation>
|
|
2151
|
+
</xs:element>
|
|
2152
|
+
<xs:element name="SecureStreamingProtocolAlgorithm" type="xs:string">
|
|
2153
|
+
<xs:annotation>
|
|
2154
|
+
<xs:documentation>
|
|
2155
|
+
Specifies the cryptographic algorithm when using SRTP,
|
|
2156
|
+
selecting from predefined values provided in the GetMulticastAudioDecoderConfigurationOptions response.
|
|
2157
|
+
</xs:documentation>
|
|
2158
|
+
</xs:annotation>
|
|
2159
|
+
</xs:element>
|
|
2160
|
+
<xs:element name="ROCExtMapID" type="xs:int">
|
|
2161
|
+
<xs:annotation>
|
|
2162
|
+
<xs:documentation>
|
|
2163
|
+
The RTP header extension ID (ExtMapID) used to identify the ROC extension, as defined in RFC 8285.
|
|
2164
|
+
Valid values are 1 to 14 for one-byte header extensions.
|
|
2165
|
+
</xs:documentation>
|
|
2166
|
+
</xs:annotation>
|
|
2167
|
+
</xs:element>
|
|
2168
|
+
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> <!-- first Vendor then ONVIF -->
|
|
2169
|
+
</xs:sequence>
|
|
2170
|
+
<xs:anyAttribute processContents="lax"/>
|
|
2171
|
+
</xs:complexType>
|
|
2172
|
+
<!--===============================-->
|
|
2173
|
+
<xs:complexType name="MulticastReceiverConfiguration">
|
|
2174
|
+
<xs:sequence>
|
|
2175
|
+
<xs:element name="Address" type="tt:IPAddress">
|
|
2176
|
+
<xs:annotation>
|
|
2177
|
+
<xs:documentation>The multicast address (if this address is set to 0 no multicast streaming is enabled)</xs:documentation>
|
|
2178
|
+
</xs:annotation>
|
|
2179
|
+
</xs:element>
|
|
2180
|
+
<xs:element name="Port" type="xs:int">
|
|
2181
|
+
<xs:annotation>
|
|
2182
|
+
<xs:documentation>The RTP multicast destination port. A device may support RTCP. In this case the port value shall be even to allow the corresponding RTCP stream to be mapped to the next higher (odd) destination port number as defined in the RTSP specification.</xs:documentation>
|
|
2183
|
+
</xs:annotation>
|
|
2184
|
+
</xs:element>
|
|
2185
|
+
<xs:element name="TTL" type="xs:int">
|
|
2186
|
+
<xs:annotation>
|
|
2187
|
+
<xs:documentation>In case of IPv6 the TTL value is assumed as the hop limit. Note that for IPV6 and administratively scoped IPv4 multicast the primary use for hop limit / TTL is to prevent packets from (endlessly) circulating and not limiting scope. In these cases the address contains the scope.</xs:documentation>
|
|
2188
|
+
</xs:annotation>
|
|
2189
|
+
</xs:element>
|
|
2190
|
+
<xs:element name="InterfaceToken" type="tt:ReferenceToken" minOccurs="0" maxOccurs="unbounded">
|
|
2191
|
+
<xs:annotation>
|
|
2192
|
+
<xs:documentation>Unique identifier of the network interface on the device. If not specified, all available interfaces will be used for listening. </xs:documentation>
|
|
2193
|
+
</xs:annotation>
|
|
2194
|
+
</xs:element>
|
|
2195
|
+
<xs:element name="SourceSpecificMulticast" type="tt:IPAddress" minOccurs="0">
|
|
2196
|
+
<xs:annotation>
|
|
2197
|
+
<xs:documentation>When a source-specific multicast address is configured, the device will process multicast data only from the specified source, in accordance with SSM principles defined in RFC 4607.</xs:documentation>
|
|
2198
|
+
</xs:annotation>
|
|
2199
|
+
</xs:element>
|
|
2200
|
+
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> <!-- first Vendor then ONVIF -->
|
|
2201
|
+
</xs:sequence>
|
|
2202
|
+
<xs:anyAttribute processContents="lax"/>
|
|
2203
|
+
</xs:complexType>
|
|
2204
|
+
<!--===============================-->
|
|
2205
|
+
<xs:complexType name="MulticastAudioDecoderConfigurationOptions">
|
|
2206
|
+
<xs:sequence>
|
|
2207
|
+
<xs:element name="EncodingOptions" type="tt:AudioDecoder2Options">
|
|
2208
|
+
<xs:annotation>
|
|
2209
|
+
<xs:documentation>Supported encoding options for the multicast audio decoder.</xs:documentation>
|
|
2210
|
+
</xs:annotation>
|
|
2211
|
+
</xs:element>
|
|
2212
|
+
<xs:element name="PriorityRange" type="tt:IntRange">
|
|
2213
|
+
<xs:annotation>
|
|
2214
|
+
<xs:documentation>
|
|
2215
|
+
Specifies the priority range as an integer. This indicates the priority level for audio configuration.
|
|
2216
|
+
</xs:documentation>
|
|
2217
|
+
</xs:annotation>
|
|
2218
|
+
</xs:element>
|
|
2219
|
+
<xs:element name="SecureStreamingProtocolAlgorithms" type="tt:StringList" minOccurs="0">
|
|
2220
|
+
<xs:annotation>
|
|
2221
|
+
<xs:documentation>
|
|
2222
|
+
An optional parameter specifies the list of supported cryptographic algorithms when SRTP support is signaled as 'true' in the GetServiceCapabilitiesResponse.
|
|
2223
|
+
Refer to tt:SrtpSecurityAlgorithms for the acceptable values.
|
|
2224
|
+
</xs:documentation>
|
|
2225
|
+
</xs:annotation>
|
|
2226
|
+
</xs:element>
|
|
2227
|
+
<xs:element name="AudioOutputTokens" type="tt:StringList" minOccurs="0">
|
|
2228
|
+
<xs:annotation>
|
|
2229
|
+
<xs:documentation>
|
|
2230
|
+
Optional list of physical Audio output tokens. This element is used when only certain audio outputs can be configured for this token.
|
|
2231
|
+
</xs:documentation>
|
|
2232
|
+
</xs:annotation>
|
|
2233
|
+
</xs:element>
|
|
2234
|
+
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> <!-- first ONVIF then Vendor -->
|
|
2235
|
+
</xs:sequence>
|
|
2236
|
+
<xs:anyAttribute processContents="lax"/>
|
|
2237
|
+
</xs:complexType>
|
|
2238
|
+
<!--===============================-->
|
|
2239
|
+
<xs:complexType name="AudioDecoder2Options">
|
|
2240
|
+
<xs:sequence>
|
|
2241
|
+
<xs:element name="Encoding" type="xs:string">
|
|
2242
|
+
<xs:annotation>
|
|
2243
|
+
<xs:documentation>Audio Media Subtype for the audio format. For definitions see tt:AudioEncodingMimeNames and <a href="https://www.iana.org/assignments/media-types/media-types.xhtml#audio"> IANA Media Types</a>.</xs:documentation>
|
|
2244
|
+
</xs:annotation>
|
|
2245
|
+
</xs:element>
|
|
2246
|
+
<xs:element name="BitrateList" type="tt:IntItems">
|
|
2247
|
+
<xs:annotation>
|
|
2248
|
+
<xs:documentation>List of supported bitrates in kbps for the specified Encoding</xs:documentation>
|
|
2249
|
+
</xs:annotation>
|
|
2250
|
+
</xs:element>
|
|
2251
|
+
<xs:element name="SampleRateList" type="tt:IntItems">
|
|
2252
|
+
<xs:annotation>
|
|
2253
|
+
<xs:documentation>List of supported Sample Rates in kHz for the specified Encoding</xs:documentation>
|
|
2254
|
+
</xs:annotation>
|
|
2255
|
+
</xs:element>
|
|
2256
|
+
<xs:element name="RTPPayloadType" type="xs:int" minOccurs="0">
|
|
2257
|
+
<xs:annotation>
|
|
2258
|
+
<xs:documentation>
|
|
2259
|
+
Optional element for specifying the RTP payload type,
|
|
2260
|
+
particularly when it is fixed for a specific audio encoding as defined in <a href="https://www.iana.org/assignments/rtp-parameters/rtp-parameters.xhtml#rtp-parameters-1">IANA RTP Payload Types</a>.
|
|
2261
|
+
</xs:documentation>
|
|
2262
|
+
</xs:annotation>
|
|
2263
|
+
</xs:element>
|
|
2264
|
+
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> <!-- first ONVIF then Vendor -->
|
|
2265
|
+
</xs:sequence>
|
|
2266
|
+
<xs:anyAttribute processContents="lax"/>
|
|
2267
|
+
</xs:complexType>
|
|
2268
|
+
<!--===============================-->
|
|
2045
2269
|
<!-- Streaming -->
|
|
2046
2270
|
<!--===============================-->
|
|
2047
2271
|
<xs:complexType name="MulticastConfiguration">
|