v0.0.2 — 2025-09-27
·
262 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
PyPI
https://pypi.org/project/onvif-python/0.0.2
Added
- Improved
xsd:anyparsing logic for child elements, allowing automatic dictionary conversion of ONVIF<Extension>blocks (via monkey patch onparse_xmlelements) (fce868e)
→ This implements behavior proposed in python-zeep#1473
→ Since the PR is not yet merged, this version includes a local monkey patch applied at runtime tozeep.xsd.elements.any.Any.parse_xmlelements
Fixed
ONVIFClient._get_xaddr()now supports resolving service addresses (XAddr) from nested_value_1dictionaries (common in normalized extensions) (4292fc4)- Added support for overriding
XAddrhost/port when device is behind NAT or proxy (d5f5b1e) - Changed fallback
service_pathforSearchservice to improve compatibility with some ONVIF devices (d5f5b1e)
Comparison
These improvements make this version of onvif-python significantly more capable in handling dynamic ONVIF service extensions than other popular forks such as:
...which still rely on the unpatched version of Zeep and require manual parsing of xsd:any elements.
Full Changelog: v0.0.1...v0.0.2