onvif-python 0.2.2__tar.gz → 0.2.4__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.2/onvif_python.egg-info → onvif_python-0.2.4}/PKG-INFO +12 -24
- {onvif_python-0.2.2 → onvif_python-0.2.4}/README.md +11 -23
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/cli/interactive.py +2 -2
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/cli/main.py +382 -382
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/cli/utils.py +49 -22
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/client.py +28 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/__init__.py +2 -0
- onvif_python-0.2.4/onvif/services/events/pausable_subscription.py +31 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/utils/service.py +4 -2
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/utils/wsdl.py +14 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/utils/zeep.py +1 -14
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/advancedsecurity/wsdl/advancedsecurity.wsdl +11 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/device/wsdl/devicemgmt.wsdl +2 -2
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/schema/onvif.xsd +2 -2
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/media/wsdl/media.wsdl +1 -1
- {onvif_python-0.2.2 → onvif_python-0.2.4/onvif_python.egg-info}/PKG-INFO +12 -24
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif_python.egg-info/SOURCES.txt +2 -2
- {onvif_python-0.2.2 → onvif_python-0.2.4}/pyproject.toml +1 -1
- onvif_python-0.2.2/tests/test_wsdl_map.py +0 -47
- {onvif_python-0.2.2 → onvif_python-0.2.4}/LICENSE.md +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/MANIFEST.in +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/__init__.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/cli/__init__.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/cli/__main__.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/db/companies.db +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/db/products.db +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/operator.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/accesscontrol.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/accessrules.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/actionengine.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/analytics/analytics.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/analytics/ruleengine.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/analyticsdevice.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/appmgmt.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/authenticationbehavior.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/credential.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/deviceio.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/devicemgmt.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/display.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/doorcontrol.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/events/events.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/events/notification.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/events/pullpoint.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/events/subscription.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/imaging.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/media.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/media2.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/provisioning.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/ptz.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/receiver.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/recording.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/replay.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/schedule.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/search.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/security/advancedsecurity.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/security/authorizationserver.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/security/dot1x.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/security/jwt.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/security/keystore.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/security/mediasigning.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/security/tlsserver.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/thermal.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/services/uplink.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/utils/__init__.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/utils/discovery.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/utils/error_handlers.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/utils/exceptions.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/utils/parser.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/utils/xml_capture.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/LICENSE.md +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/accesscontrol/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/accessrules/wsdl/accessrules.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/accessrules/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/actionengine.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/advancedsecurity/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/analyticsdevice.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/appmgmt/wsdl/appmgmt.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/appmgmt/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/authenticationbehavior/wsdl/authenticationbehavior.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/authenticationbehavior/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/credential/wsdl/credential.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/credential/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/deviceio.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/display/display.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/display/wsdl/index.htm +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/display.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/doorcontrol/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/events/wsdl/bw-2-vs-mod.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/events/wsdl/event-vs.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/events/wsdl/event.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/events/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/federatedsearch.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/media/wsdl/media.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/pacs/accesscontrol.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/pacs/doorcontrol.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/pacs/types.xsd +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/provisioning/wsdl/provisioning.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/receiver.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/recording.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/replay.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/schedule/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/schedule/wsdl/schedule.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/schema/common.xsd +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/schema/metadatastream.xsd +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/search.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/thermal/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/thermal/wsdl/thermal.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/topics/topicns.xml +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/uplink/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver10/uplink/wsdl/uplink.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/humanbody.xsd +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/humanface.xsd +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/radiometry.xsd +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/rules.xsd +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/wsdl/analytics.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/imaging/wsdl/imaging.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/media/wsdl/index.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/ptz/wsdl/ptz.wsdl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/util/federated_search_documentation.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/util/fedsearch-docu-viewer.xsl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/util/onvif-wsdl-viewer.xsl +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif/wsdl/ver20/util/operationIndex.html +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif_python.egg-info/dependency_links.txt +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif_python.egg-info/entry_points.txt +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif_python.egg-info/requires.txt +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/onvif_python.egg-info/top_level.txt +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/setup.cfg +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/setup.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/tests/test_client.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/tests/test_core.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/tests/test_error_handlers.py +0 -0
- {onvif_python-0.2.2 → onvif_python-0.2.4}/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.4
|
|
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,14 +44,13 @@ Dynamic: license-file
|
|
|
44
44
|
<h1 align="center">ONVIF Python</h1>
|
|
45
45
|
|
|
46
46
|
<div align="center">
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
[](https://clickpy.clickhouse.com/dashboard/onvif-python)
|
|
47
|
+
<img alt="Codacy grade" src="https://img.shields.io/codacy/grade/bff08a94e4d447b690cea49c6594826d?label=Code%20Quality&logo=codacy" href="https://app.codacy.com/gh/nirsimetri/onvif-python/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade">
|
|
48
|
+
<img alt="Ask DeepWiki" src="https://deepwiki.com/badge.svg" href="https://deepwiki.com/nirsimetri/onvif-python">
|
|
49
|
+
<img alt="PyPI Version" src="https://img.shields.io/badge/PyPI-0.2.4-orange?logo=archive&color=yellow" href="https://pypi.org/project/onvif-python/">
|
|
50
|
+
<img alt="Pepy Total Downloads" src="https://img.shields.io/pepy/dt/onvif-python?label=Downloads&color=red" href="https://pepy.tech/projects/onvif-python">
|
|
52
51
|
<br>
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
<img alt="Build" src="https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml/badge.svg?branch=main" href="https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml">
|
|
53
|
+
<img alt="Upload Python Package" src="https://github.com/nirsimetri/onvif-python/actions/workflows/python-publish.yml/badge.svg" href="https://github.com/nirsimetri/onvif-python/actions/workflows/python-publish.yml">
|
|
55
54
|
</div>
|
|
56
55
|
|
|
57
56
|
<h1 align="center">
|
|
@@ -91,7 +90,7 @@ This library simplifies that process by wrapping SOAP communication into a clean
|
|
|
91
90
|
|
|
92
91
|
From official [PyPI](https://pypi.org/project/onvif-python/):
|
|
93
92
|
```bash
|
|
94
|
-
pip install onvif-python
|
|
93
|
+
pip install --upgrade onvif-python
|
|
95
94
|
```
|
|
96
95
|
Or clone this repository and install locally:
|
|
97
96
|
```bash
|
|
@@ -356,7 +355,7 @@ usage: onvif [-h] [--host HOST] [--port PORT] [--username USERNAME] [--password
|
|
|
356
355
|
[--no-verify] [--no-patch] [--interactive] [--debug] [--wsdl WSDL] [--cache {all,db,mem,none}] [--health-check-interval HEALTH_CHECK_INTERVAL] [--version]
|
|
357
356
|
[service] [method] [params ...]
|
|
358
357
|
|
|
359
|
-
ONVIF Terminal Client — v0.2.
|
|
358
|
+
ONVIF Terminal Client — v0.2.4
|
|
360
359
|
https://github.com/nirsimetri/onvif-python
|
|
361
360
|
|
|
362
361
|
positional arguments:
|
|
@@ -429,7 +428,7 @@ Examples:
|
|
|
429
428
|
<summary><b>2. Interactive Shell</b></summary>
|
|
430
429
|
|
|
431
430
|
```bash
|
|
432
|
-
ONVIF Interactive Shell — v0.2.
|
|
431
|
+
ONVIF Interactive Shell — v0.2.4
|
|
433
432
|
https://github.com/nirsimetri/onvif-python
|
|
434
433
|
|
|
435
434
|
Basic Commands:
|
|
@@ -1028,7 +1027,7 @@ Below is a list of ONVIF services implemented and supported by this library, alo
|
|
|
1028
1027
|
| Service | Specifications | Service Definitions | Schema Files | Status |
|
|
1029
1028
|
|------------------------|-------------------------------|-----------------------------|-------------------------------------|------------|
|
|
1030
1029
|
| Device Management | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Core.xml) | [device.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/device/wsdl/devicemgmt.wsdl) | [onvif.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/onvif.xsd) <br> [common.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/common.xsd) | ✅ Complete |
|
|
1031
|
-
| Events | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Core.xml) | [event.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/events/wsdl/event.wsdl) | [onvif.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/onvif.xsd) <br> [common.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/common.xsd) |
|
|
1030
|
+
| Events | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Core.xml) | [event.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/events/wsdl/event.wsdl) | [onvif.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/onvif.xsd) <br> [common.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/common.xsd) | ✅ Complete |
|
|
1032
1031
|
| Access Control | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/AccessControl.xml) | [accesscontrol.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/pacs/accesscontrol.wsdl) | [types.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/pacs/types.xsd) | ✅ Complete |
|
|
1033
1032
|
| Access Rules | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/AccessRules.xml) | [accessrules.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/accessrules/wsdl/accessrules.wsdl) | - | ✅ Complete |
|
|
1034
1033
|
| Action Engine | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/ActionEngine.xml) | [actionengine.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/actionengine.wsdl) | - | ✅ Complete |
|
|
@@ -1050,12 +1049,10 @@ Below is a list of ONVIF services implemented and supported by this library, alo
|
|
|
1050
1049
|
| Recording Control | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/RecordingControl.xml) | [recording.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/recording.wsdl) | - | ✅ Complete |
|
|
1051
1050
|
| Recording Search | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/RecordingSearch.xml) | [search.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/search.wsdl) | - | ✅ Complete |
|
|
1052
1051
|
| Replay Control | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Replay.xml) | [replay.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/replay.wsdl) | - | ✅ Complete |
|
|
1053
|
-
| Resource Query | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/ResourceQuery.xml) | - | | ❌ Any idea? |
|
|
1054
1052
|
| Schedule | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Schedule.xml) | [schedule.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schedule/wsdl/schedule.wsdl) | - | ✅ Complete |
|
|
1055
1053
|
| Security | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Security.xml) | [advancedsecurity.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/advancedsecurity/wsdl/advancedsecurity.wsdl) | - | ✅ Complete |
|
|
1056
1054
|
| Thermal | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Thermal.xml) | [thermal.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/thermal/wsdl/thermal.wsdl) | [radiometry.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver20/analytics/radiometry.xsd) | ✅ Complete |
|
|
1057
1055
|
| Uplink | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Uplink.xml) | [uplink.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/uplink/wsdl/uplink.wsdl) | - | ✅ Complete |
|
|
1058
|
-
| WebRTC | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/WebRTC.xml) | - | - | ❌ Any idea? |
|
|
1059
1056
|
|
|
1060
1057
|
</details>
|
|
1061
1058
|
|
|
@@ -1169,19 +1166,10 @@ Some ONVIF services have multiple bindings in the same WSDL. These typically inc
|
|
|
1169
1166
|
- (soon) [onvif-mcp](https://github.com/nirsimetri/onvif-mcp):
|
|
1170
1167
|
A Model Context Protocol (MCP) server for ONVIF, providing a unified API and context-based integration for ONVIF devices, clients, and services. It enables advanced automation, orchestration, and interoperability across ONVIF-compliant devices and clients.
|
|
1171
1168
|
|
|
1172
|
-
## Alternatives
|
|
1173
|
-
|
|
1174
|
-
If you are looking for other ONVIF Python libraries, here are some alternatives:
|
|
1175
|
-
|
|
1176
|
-
- [python-onvif-zeep](https://github.com/FalkTannhaeuser/python-onvif-zeep):
|
|
1177
|
-
A synchronous ONVIF client library for Python, using Zeep for SOAP communication. Focuses on compatibility and ease of use for standard ONVIF device operations. Good for scripts and applications where async is not required.
|
|
1178
|
-
|
|
1179
|
-
- [python-onvif-zeep-async](https://github.com/openvideolibs/python-onvif-zeep-async):
|
|
1180
|
-
An asynchronous ONVIF client library for Python, based on Zeep and asyncio. Suitable for applications requiring non-blocking operations and concurrent device communication. Supports many ONVIF services and is actively maintained.
|
|
1181
|
-
|
|
1182
1169
|
## References
|
|
1183
1170
|
- [ONVIF Official Specifications](https://www.onvif.org/profiles/specifications/specification-history/)
|
|
1184
1171
|
- [ONVIF Official Specs Repository](https://github.com/onvif/specs)
|
|
1172
|
+
- [ONVIF Application Programmer's Guide](https://www.onvif.org/wp-content/uploads/2016/12/ONVIF_WG-APG-Application_Programmers_Guide-1.pdf)
|
|
1185
1173
|
- [ONVIF 2.0 Service Operation Index](https://www.onvif.org/onvif/ver20/util/operationIndex.html)
|
|
1186
1174
|
- [Usage Examples](./examples/)
|
|
1187
1175
|
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
<h1 align="center">ONVIF Python</h1>
|
|
2
2
|
|
|
3
3
|
<div align="center">
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
[](https://clickpy.clickhouse.com/dashboard/onvif-python)
|
|
4
|
+
<img alt="Codacy grade" src="https://img.shields.io/codacy/grade/bff08a94e4d447b690cea49c6594826d?label=Code%20Quality&logo=codacy" href="https://app.codacy.com/gh/nirsimetri/onvif-python/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade">
|
|
5
|
+
<img alt="Ask DeepWiki" src="https://deepwiki.com/badge.svg" href="https://deepwiki.com/nirsimetri/onvif-python">
|
|
6
|
+
<img alt="PyPI Version" src="https://img.shields.io/badge/PyPI-0.2.4-orange?logo=archive&color=yellow" href="https://pypi.org/project/onvif-python/">
|
|
7
|
+
<img alt="Pepy Total Downloads" src="https://img.shields.io/pepy/dt/onvif-python?label=Downloads&color=red" href="https://pepy.tech/projects/onvif-python">
|
|
9
8
|
<br>
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
<img alt="Build" src="https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml/badge.svg?branch=main" href="https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml">
|
|
10
|
+
<img alt="Upload Python Package" src="https://github.com/nirsimetri/onvif-python/actions/workflows/python-publish.yml/badge.svg" href="https://github.com/nirsimetri/onvif-python/actions/workflows/python-publish.yml">
|
|
12
11
|
</div>
|
|
13
12
|
|
|
14
13
|
<h1 align="center">
|
|
@@ -48,7 +47,7 @@ This library simplifies that process by wrapping SOAP communication into a clean
|
|
|
48
47
|
|
|
49
48
|
From official [PyPI](https://pypi.org/project/onvif-python/):
|
|
50
49
|
```bash
|
|
51
|
-
pip install onvif-python
|
|
50
|
+
pip install --upgrade onvif-python
|
|
52
51
|
```
|
|
53
52
|
Or clone this repository and install locally:
|
|
54
53
|
```bash
|
|
@@ -313,7 +312,7 @@ usage: onvif [-h] [--host HOST] [--port PORT] [--username USERNAME] [--password
|
|
|
313
312
|
[--no-verify] [--no-patch] [--interactive] [--debug] [--wsdl WSDL] [--cache {all,db,mem,none}] [--health-check-interval HEALTH_CHECK_INTERVAL] [--version]
|
|
314
313
|
[service] [method] [params ...]
|
|
315
314
|
|
|
316
|
-
ONVIF Terminal Client — v0.2.
|
|
315
|
+
ONVIF Terminal Client — v0.2.4
|
|
317
316
|
https://github.com/nirsimetri/onvif-python
|
|
318
317
|
|
|
319
318
|
positional arguments:
|
|
@@ -386,7 +385,7 @@ Examples:
|
|
|
386
385
|
<summary><b>2. Interactive Shell</b></summary>
|
|
387
386
|
|
|
388
387
|
```bash
|
|
389
|
-
ONVIF Interactive Shell — v0.2.
|
|
388
|
+
ONVIF Interactive Shell — v0.2.4
|
|
390
389
|
https://github.com/nirsimetri/onvif-python
|
|
391
390
|
|
|
392
391
|
Basic Commands:
|
|
@@ -985,7 +984,7 @@ Below is a list of ONVIF services implemented and supported by this library, alo
|
|
|
985
984
|
| Service | Specifications | Service Definitions | Schema Files | Status |
|
|
986
985
|
|------------------------|-------------------------------|-----------------------------|-------------------------------------|------------|
|
|
987
986
|
| Device Management | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Core.xml) | [device.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/device/wsdl/devicemgmt.wsdl) | [onvif.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/onvif.xsd) <br> [common.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/common.xsd) | ✅ Complete |
|
|
988
|
-
| Events | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Core.xml) | [event.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/events/wsdl/event.wsdl) | [onvif.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/onvif.xsd) <br> [common.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/common.xsd) |
|
|
987
|
+
| Events | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Core.xml) | [event.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/events/wsdl/event.wsdl) | [onvif.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/onvif.xsd) <br> [common.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schema/common.xsd) | ✅ Complete |
|
|
989
988
|
| Access Control | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/AccessControl.xml) | [accesscontrol.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/pacs/accesscontrol.wsdl) | [types.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/pacs/types.xsd) | ✅ Complete |
|
|
990
989
|
| Access Rules | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/AccessRules.xml) | [accessrules.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/accessrules/wsdl/accessrules.wsdl) | - | ✅ Complete |
|
|
991
990
|
| Action Engine | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/ActionEngine.xml) | [actionengine.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/actionengine.wsdl) | - | ✅ Complete |
|
|
@@ -1007,12 +1006,10 @@ Below is a list of ONVIF services implemented and supported by this library, alo
|
|
|
1007
1006
|
| Recording Control | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/RecordingControl.xml) | [recording.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/recording.wsdl) | - | ✅ Complete |
|
|
1008
1007
|
| Recording Search | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/RecordingSearch.xml) | [search.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/search.wsdl) | - | ✅ Complete |
|
|
1009
1008
|
| Replay Control | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Replay.xml) | [replay.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/replay.wsdl) | - | ✅ Complete |
|
|
1010
|
-
| Resource Query | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/ResourceQuery.xml) | - | | ❌ Any idea? |
|
|
1011
1009
|
| Schedule | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Schedule.xml) | [schedule.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/schedule/wsdl/schedule.wsdl) | - | ✅ Complete |
|
|
1012
1010
|
| Security | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Security.xml) | [advancedsecurity.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/advancedsecurity/wsdl/advancedsecurity.wsdl) | - | ✅ Complete |
|
|
1013
1011
|
| Thermal | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Thermal.xml) | [thermal.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/thermal/wsdl/thermal.wsdl) | [radiometry.xsd](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver20/analytics/radiometry.xsd) | ✅ Complete |
|
|
1014
1012
|
| Uplink | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/Uplink.xml) | [uplink.wsdl](https://developer.onvif.org/pub/specs/branches/development/wsdl/ver10/uplink/wsdl/uplink.wsdl) | - | ✅ Complete |
|
|
1015
|
-
| WebRTC | [Document](https://developer.onvif.org/pub/specs/branches/development/doc/WebRTC.xml) | - | - | ❌ Any idea? |
|
|
1016
1013
|
|
|
1017
1014
|
</details>
|
|
1018
1015
|
|
|
@@ -1126,19 +1123,10 @@ Some ONVIF services have multiple bindings in the same WSDL. These typically inc
|
|
|
1126
1123
|
- (soon) [onvif-mcp](https://github.com/nirsimetri/onvif-mcp):
|
|
1127
1124
|
A Model Context Protocol (MCP) server for ONVIF, providing a unified API and context-based integration for ONVIF devices, clients, and services. It enables advanced automation, orchestration, and interoperability across ONVIF-compliant devices and clients.
|
|
1128
1125
|
|
|
1129
|
-
## Alternatives
|
|
1130
|
-
|
|
1131
|
-
If you are looking for other ONVIF Python libraries, here are some alternatives:
|
|
1132
|
-
|
|
1133
|
-
- [python-onvif-zeep](https://github.com/FalkTannhaeuser/python-onvif-zeep):
|
|
1134
|
-
A synchronous ONVIF client library for Python, using Zeep for SOAP communication. Focuses on compatibility and ease of use for standard ONVIF device operations. Good for scripts and applications where async is not required.
|
|
1135
|
-
|
|
1136
|
-
- [python-onvif-zeep-async](https://github.com/openvideolibs/python-onvif-zeep-async):
|
|
1137
|
-
An asynchronous ONVIF client library for Python, based on Zeep and asyncio. Suitable for applications requiring non-blocking operations and concurrent device communication. Supports many ONVIF services and is actively maintained.
|
|
1138
|
-
|
|
1139
1126
|
## References
|
|
1140
1127
|
- [ONVIF Official Specifications](https://www.onvif.org/profiles/specifications/specification-history/)
|
|
1141
1128
|
- [ONVIF Official Specs Repository](https://github.com/onvif/specs)
|
|
1129
|
+
- [ONVIF Application Programmer's Guide](https://www.onvif.org/wp-content/uploads/2016/12/ONVIF_WG-APG-Application_Programmers_Guide-1.pdf)
|
|
1142
1130
|
- [ONVIF 2.0 Service Operation Index](https://www.onvif.org/onvif/ver20/util/operationIndex.html)
|
|
1143
1131
|
- [Usage Examples](./examples/)
|
|
1144
1132
|
|
|
@@ -194,7 +194,7 @@ class InteractiveShell(cmd.Cmd):
|
|
|
194
194
|
" / __ \\/ | / / | / / _/ ____/",
|
|
195
195
|
" / / / / |/ /| | / // // /_ ",
|
|
196
196
|
"/ /_/ / /| / | |/ // // __/ ",
|
|
197
|
-
"\\____/_/ |_/ |___/___/_/ v0.2.
|
|
197
|
+
"\\____/_/ |_/ |___/___/_/ v0.2.4",
|
|
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.4', '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
|