onvif-python 0.2.8__tar.gz → 0.2.9__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.8/onvif_python.egg-info → onvif_python-0.2.9}/PKG-INFO +4 -4
- {onvif_python-0.2.8 → onvif_python-0.2.9}/README.md +3 -3
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/__init__.py +1 -1
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/utils/service.py +27 -31
- {onvif_python-0.2.8 → onvif_python-0.2.9/onvif_python.egg-info}/PKG-INFO +4 -4
- {onvif_python-0.2.8 → onvif_python-0.2.9}/pyproject.toml +1 -1
- {onvif_python-0.2.8 → onvif_python-0.2.9}/LICENSE.md +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/MANIFEST.in +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/cli/__init__.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/cli/__main__.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/cli/interactive.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/cli/main.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/cli/utils.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/client.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/db/companies.db +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/db/products.db +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/operator.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/__init__.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/accesscontrol.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/accessrules.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/actionengine.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/analytics/analytics.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/analytics/ruleengine.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/analyticsdevice.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/appmgmt.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/authenticationbehavior.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/credential.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/deviceio.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/devicemgmt.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/display.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/doorcontrol.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/events/events.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/events/notification.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/events/pausable_subscription.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/events/pullpoint.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/events/subscription.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/imaging.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/media.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/media2.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/provisioning.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/ptz.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/receiver.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/recording.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/replay.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/schedule.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/search.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/security/advancedsecurity.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/security/authorizationserver.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/security/dot1x.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/security/jwt.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/security/keystore.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/security/mediasigning.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/security/tlsserver.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/thermal.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/services/uplink.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/utils/__init__.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/utils/discovery.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/utils/error_handlers.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/utils/exceptions.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/utils/parser.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/utils/wsdl.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/utils/xml_capture.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/utils/zeep.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/LICENSE.md +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/b-2.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/bf-2.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/bw-2.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/include +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/mpqf.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/r-2.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/rw-2.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/soap-envelope +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/t-1.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/ws-addr.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/xml.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/schema/common/xmlmime +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/accesscontrol/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/accessrules/wsdl/accessrules.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/accessrules/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/actionengine.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/advancedsecurity/wsdl/advancedsecurity.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/advancedsecurity/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/analyticsdevice.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/appmgmt/wsdl/appmgmt.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/appmgmt/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/authenticationbehavior/wsdl/authenticationbehavior.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/authenticationbehavior/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/credential/wsdl/credential.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/credential/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/device/wsdl/devicemgmt.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/deviceio.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/display/display.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/display/wsdl/index.htm +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/display.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/doorcontrol/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/events/wsdl/bw-2-vs-mod.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/events/wsdl/event-vs.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/events/wsdl/event.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/events/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/federatedsearch.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/media/wsdl/media.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/pacs/accesscontrol.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/pacs/doorcontrol.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/pacs/types.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/provisioning/wsdl/provisioning.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/receiver.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/recording.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/replay.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/schedule/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/schedule/wsdl/schedule.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/schema/common.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/schema/metadatastream.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/schema/onvif.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/search.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/thermal/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/thermal/wsdl/thermal.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/topics/topicns.xml +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/uplink/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/uplink/wsdl/uplink.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/analytics/humanbody.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/analytics/humanface.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/analytics/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/analytics/radiometry.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/analytics/rules.xsd +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/analytics/wsdl/analytics.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/analytics/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/imaging/wsdl/imaging.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/media/wsdl/index.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/media/wsdl/media.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/ptz/wsdl/ptz.wsdl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/util/federated_search_documentation.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/util/fedsearch-docu-viewer.xsl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/util/onvif-wsdl-viewer.xsl +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/util/operationIndex.html +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif_python.egg-info/SOURCES.txt +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif_python.egg-info/dependency_links.txt +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif_python.egg-info/entry_points.txt +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif_python.egg-info/requires.txt +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/onvif_python.egg-info/top_level.txt +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/setup.cfg +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/setup.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/tests/test_client.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/tests/test_core.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/tests/test_error_handlers.py +0 -0
- {onvif_python-0.2.8 → onvif_python-0.2.9}/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.9
|
|
4
4
|
Summary: A modern Python library for ONVIF-compliant devices
|
|
5
5
|
Author-email: Nirsimetri Technologies® <open@nirsimetri.com>
|
|
6
6
|
Maintainer: Kaburagi
|
|
@@ -46,7 +46,7 @@ Dynamic: license-file
|
|
|
46
46
|
<div align="center">
|
|
47
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.9-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.9
|
|
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.9
|
|
447
447
|
https://github.com/nirsimetri/onvif-python
|
|
448
448
|
|
|
449
449
|
Basic Commands:
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<div align="center">
|
|
4
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.9-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.9
|
|
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.9
|
|
404
404
|
https://github.com/nirsimetri/onvif-python
|
|
405
405
|
|
|
406
406
|
Basic Commands:
|
|
@@ -8,36 +8,6 @@ logger = logging.getLogger(__name__)
|
|
|
8
8
|
logger.addHandler(logging.NullHandler())
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
class ONVIFResponse:
|
|
12
|
-
"""Transparent wrapper that adds to_dict() to zeep objects."""
|
|
13
|
-
|
|
14
|
-
def __init__(self, wrapped_object):
|
|
15
|
-
object.__setattr__(self, "_wrapped", wrapped_object)
|
|
16
|
-
|
|
17
|
-
def __getattr__(self, name):
|
|
18
|
-
return getattr(self._wrapped, name)
|
|
19
|
-
|
|
20
|
-
def __setattr__(self, name, value):
|
|
21
|
-
if name == "_wrapped":
|
|
22
|
-
object.__setattr__(self, name, value)
|
|
23
|
-
else:
|
|
24
|
-
setattr(self._wrapped, name, value)
|
|
25
|
-
|
|
26
|
-
def __repr__(self):
|
|
27
|
-
return repr(self._wrapped)
|
|
28
|
-
|
|
29
|
-
def __str__(self):
|
|
30
|
-
return str(self._wrapped)
|
|
31
|
-
|
|
32
|
-
def to_dict(self):
|
|
33
|
-
"""Convert zeep object to Python dictionary."""
|
|
34
|
-
return (
|
|
35
|
-
{}
|
|
36
|
-
if self._wrapped is None
|
|
37
|
-
else zeep.helpers.serialize_object(self._wrapped)
|
|
38
|
-
)
|
|
39
|
-
|
|
40
|
-
|
|
41
11
|
def _is_zeep_object(obj):
|
|
42
12
|
"""Check if an object is a Zeep-generated object.
|
|
43
13
|
|
|
@@ -135,7 +105,7 @@ class ONVIFService:
|
|
|
135
105
|
logger.debug(f"Calling wrapped ONVIF method: {name}")
|
|
136
106
|
result = attr(*args, **kwargs)
|
|
137
107
|
logger.debug(f"ONVIF method {name} completed successfully")
|
|
138
|
-
return
|
|
108
|
+
return result
|
|
139
109
|
except ONVIFOperationException as oe:
|
|
140
110
|
# Re-raise ONVIF exceptions as-is
|
|
141
111
|
service_name = getattr(self.operator, "service_name", "Unknown")
|
|
@@ -149,6 +119,32 @@ class ONVIFService:
|
|
|
149
119
|
|
|
150
120
|
return wrapped_method
|
|
151
121
|
|
|
122
|
+
def to_dict(self, zeep_object):
|
|
123
|
+
"""
|
|
124
|
+
Convert a zeep object (result from ONVIF operation) to Python dictionary.
|
|
125
|
+
|
|
126
|
+
Args:
|
|
127
|
+
zeep_object: The zeep object returned from ONVIF operations
|
|
128
|
+
|
|
129
|
+
Returns:
|
|
130
|
+
dict: Python dictionary representation of the zeep object
|
|
131
|
+
|
|
132
|
+
Example:
|
|
133
|
+
device = client.devicemgmt()
|
|
134
|
+
|
|
135
|
+
info = device.GetDeviceInformation()
|
|
136
|
+
info_dict = device.to_dict(info)
|
|
137
|
+
print(info_dict)
|
|
138
|
+
|
|
139
|
+
profiles = media.GetProfiles()
|
|
140
|
+
profiles_dict = device.to_dict(profiles)
|
|
141
|
+
"""
|
|
142
|
+
try:
|
|
143
|
+
return {} if zeep_object is None else zeep.helpers.serialize_object(zeep_object)
|
|
144
|
+
except Exception as e:
|
|
145
|
+
logger.error(f"Failed to convert zeep object to dict: {e}")
|
|
146
|
+
return {}
|
|
147
|
+
|
|
152
148
|
def type(self, type_name: str):
|
|
153
149
|
"""
|
|
154
150
|
Create and return an instance of the specified ONVIF type.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: onvif-python
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.9
|
|
4
4
|
Summary: A modern Python library for ONVIF-compliant devices
|
|
5
5
|
Author-email: Nirsimetri Technologies® <open@nirsimetri.com>
|
|
6
6
|
Maintainer: Kaburagi
|
|
@@ -46,7 +46,7 @@ Dynamic: license-file
|
|
|
46
46
|
<div align="center">
|
|
47
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.9-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.9
|
|
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.9
|
|
447
447
|
https://github.com/nirsimetri/onvif-python
|
|
448
448
|
|
|
449
449
|
Basic Commands:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/accessrules/wsdl/accessrules.wsdl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/authenticationbehavior/wsdl/index.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver10/provisioning/wsdl/provisioning.wsdl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{onvif_python-0.2.8 → onvif_python-0.2.9}/onvif/wsdl/ver20/util/federated_search_documentation.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|