onvif-python 0.2.3__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.
Files changed (134) hide show
  1. {onvif_python-0.2.3/onvif_python.egg-info → onvif_python-0.2.4}/PKG-INFO +11 -23
  2. {onvif_python-0.2.3 → onvif_python-0.2.4}/README.md +10 -22
  3. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/cli/interactive.py +2 -2
  4. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/cli/main.py +382 -382
  5. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/cli/utils.py +49 -22
  6. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/client.py +28 -0
  7. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/__init__.py +2 -0
  8. onvif_python-0.2.4/onvif/services/events/pausable_subscription.py +31 -0
  9. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/utils/service.py +4 -2
  10. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/utils/wsdl.py +14 -0
  11. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/advancedsecurity/wsdl/advancedsecurity.wsdl +11 -0
  12. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/device/wsdl/devicemgmt.wsdl +2 -2
  13. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/schema/onvif.xsd +2 -2
  14. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/media/wsdl/media.wsdl +1 -1
  15. {onvif_python-0.2.3 → onvif_python-0.2.4/onvif_python.egg-info}/PKG-INFO +11 -23
  16. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif_python.egg-info/SOURCES.txt +2 -2
  17. {onvif_python-0.2.3 → onvif_python-0.2.4}/pyproject.toml +1 -1
  18. onvif_python-0.2.3/tests/test_wsdl_map.py +0 -47
  19. {onvif_python-0.2.3 → onvif_python-0.2.4}/LICENSE.md +0 -0
  20. {onvif_python-0.2.3 → onvif_python-0.2.4}/MANIFEST.in +0 -0
  21. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/__init__.py +0 -0
  22. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/cli/__init__.py +0 -0
  23. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/cli/__main__.py +0 -0
  24. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/db/companies.db +0 -0
  25. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/db/products.db +0 -0
  26. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/operator.py +0 -0
  27. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/accesscontrol.py +0 -0
  28. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/accessrules.py +0 -0
  29. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/actionengine.py +0 -0
  30. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/analytics/analytics.py +0 -0
  31. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/analytics/ruleengine.py +0 -0
  32. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/analyticsdevice.py +0 -0
  33. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/appmgmt.py +0 -0
  34. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/authenticationbehavior.py +0 -0
  35. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/credential.py +0 -0
  36. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/deviceio.py +0 -0
  37. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/devicemgmt.py +0 -0
  38. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/display.py +0 -0
  39. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/doorcontrol.py +0 -0
  40. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/events/events.py +0 -0
  41. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/events/notification.py +0 -0
  42. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/events/pullpoint.py +0 -0
  43. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/events/subscription.py +0 -0
  44. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/imaging.py +0 -0
  45. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/media.py +0 -0
  46. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/media2.py +0 -0
  47. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/provisioning.py +0 -0
  48. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/ptz.py +0 -0
  49. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/receiver.py +0 -0
  50. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/recording.py +0 -0
  51. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/replay.py +0 -0
  52. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/schedule.py +0 -0
  53. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/search.py +0 -0
  54. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/security/advancedsecurity.py +0 -0
  55. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/security/authorizationserver.py +0 -0
  56. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/security/dot1x.py +0 -0
  57. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/security/jwt.py +0 -0
  58. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/security/keystore.py +0 -0
  59. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/security/mediasigning.py +0 -0
  60. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/security/tlsserver.py +0 -0
  61. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/thermal.py +0 -0
  62. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/services/uplink.py +0 -0
  63. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/utils/__init__.py +0 -0
  64. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/utils/discovery.py +0 -0
  65. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/utils/error_handlers.py +0 -0
  66. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/utils/exceptions.py +0 -0
  67. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/utils/parser.py +0 -0
  68. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/utils/xml_capture.py +0 -0
  69. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/utils/zeep.py +0 -0
  70. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/LICENSE.md +0 -0
  71. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/accesscontrol/wsdl/index.html +0 -0
  72. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/accessrules/wsdl/accessrules.wsdl +0 -0
  73. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/accessrules/wsdl/index.html +0 -0
  74. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/actionengine.wsdl +0 -0
  75. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/advancedsecurity/wsdl/index.html +0 -0
  76. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/analyticsdevice.wsdl +0 -0
  77. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/appmgmt/wsdl/appmgmt.wsdl +0 -0
  78. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/appmgmt/wsdl/index.html +0 -0
  79. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/authenticationbehavior/wsdl/authenticationbehavior.wsdl +0 -0
  80. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/authenticationbehavior/wsdl/index.html +0 -0
  81. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/credential/wsdl/credential.wsdl +0 -0
  82. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/credential/wsdl/index.html +0 -0
  83. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/deviceio.wsdl +0 -0
  84. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/display/display.wsdl +0 -0
  85. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/display/wsdl/index.htm +0 -0
  86. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/display.wsdl +0 -0
  87. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/doorcontrol/wsdl/index.html +0 -0
  88. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/events/wsdl/bw-2-vs-mod.wsdl +0 -0
  89. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/events/wsdl/event-vs.wsdl +0 -0
  90. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/events/wsdl/event.wsdl +0 -0
  91. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/events/wsdl/index.html +0 -0
  92. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/federatedsearch.wsdl +0 -0
  93. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/media/wsdl/media.wsdl +0 -0
  94. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/pacs/accesscontrol.wsdl +0 -0
  95. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/pacs/doorcontrol.wsdl +0 -0
  96. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/pacs/types.xsd +0 -0
  97. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/provisioning/wsdl/provisioning.wsdl +0 -0
  98. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/receiver.wsdl +0 -0
  99. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/recording.wsdl +0 -0
  100. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/replay.wsdl +0 -0
  101. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/schedule/wsdl/index.html +0 -0
  102. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/schedule/wsdl/schedule.wsdl +0 -0
  103. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/schema/common.xsd +0 -0
  104. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/schema/metadatastream.xsd +0 -0
  105. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/search.wsdl +0 -0
  106. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/thermal/wsdl/index.html +0 -0
  107. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/thermal/wsdl/thermal.wsdl +0 -0
  108. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/topics/topicns.xml +0 -0
  109. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/uplink/wsdl/index.html +0 -0
  110. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver10/uplink/wsdl/uplink.wsdl +0 -0
  111. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/humanbody.xsd +0 -0
  112. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/humanface.xsd +0 -0
  113. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/index.html +0 -0
  114. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/radiometry.xsd +0 -0
  115. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/rules.xsd +0 -0
  116. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/wsdl/analytics.wsdl +0 -0
  117. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/analytics/wsdl/index.html +0 -0
  118. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/imaging/wsdl/imaging.wsdl +0 -0
  119. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/media/wsdl/index.html +0 -0
  120. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/ptz/wsdl/ptz.wsdl +0 -0
  121. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/util/federated_search_documentation.html +0 -0
  122. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/util/fedsearch-docu-viewer.xsl +0 -0
  123. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/util/onvif-wsdl-viewer.xsl +0 -0
  124. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif/wsdl/ver20/util/operationIndex.html +0 -0
  125. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif_python.egg-info/dependency_links.txt +0 -0
  126. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif_python.egg-info/entry_points.txt +0 -0
  127. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif_python.egg-info/requires.txt +0 -0
  128. {onvif_python-0.2.3 → onvif_python-0.2.4}/onvif_python.egg-info/top_level.txt +0 -0
  129. {onvif_python-0.2.3 → onvif_python-0.2.4}/setup.cfg +0 -0
  130. {onvif_python-0.2.3 → onvif_python-0.2.4}/setup.py +0 -0
  131. {onvif_python-0.2.3 → onvif_python-0.2.4}/tests/test_client.py +0 -0
  132. {onvif_python-0.2.3 → onvif_python-0.2.4}/tests/test_core.py +0 -0
  133. {onvif_python-0.2.3 → onvif_python-0.2.4}/tests/test_error_handlers.py +0 -0
  134. {onvif_python-0.2.3 → 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
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
- [![Codacy grade](https://img.shields.io/codacy/grade/bff08a94e4d447b690cea49c6594826d?label=Code%20Quality&logo=codacy)](https://app.codacy.com/gh/nirsimetri/onvif-python/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
49
- [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/nirsimetri/onvif-python)
50
- [![PyPI](https://img.shields.io/badge/PyPI-0.2.3-orange?logo=archive)](https://pypi.org/project/onvif-python/)
51
- [![Downloads](https://img.shields.io/pypi/dm/onvif-python?label=Downloads&color=red)](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
- [![Build](https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml/badge.svg?branch=main)](https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml)
54
- [![Upload Python Package](https://github.com/nirsimetri/onvif-python/actions/workflows/python-publish.yml/badge.svg)](https://github.com/nirsimetri/onvif-python/actions/workflows/python-publish.yml)
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">
@@ -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.3
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.3
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) | ⚠️ Partial |
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
- [![Codacy grade](https://img.shields.io/codacy/grade/bff08a94e4d447b690cea49c6594826d?label=Code%20Quality&logo=codacy)](https://app.codacy.com/gh/nirsimetri/onvif-python/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
6
- [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/nirsimetri/onvif-python)
7
- [![PyPI](https://img.shields.io/badge/PyPI-0.2.3-orange?logo=archive)](https://pypi.org/project/onvif-python/)
8
- [![Downloads](https://img.shields.io/pypi/dm/onvif-python?label=Downloads&color=red)](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
- [![Build](https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml/badge.svg?branch=main)](https://github.com/nirsimetri/onvif-python/actions/workflows/python-app.yml)
11
- [![Upload Python Package](https://github.com/nirsimetri/onvif-python/actions/workflows/python-publish.yml/badge.svg)](https://github.com/nirsimetri/onvif-python/actions/workflows/python-publish.yml)
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">
@@ -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.3
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.3
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) | ⚠️ Partial |
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.3",
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.3', 'cyan')}\n{colorize('https://github.com/nirsimetri/onvif-python', 'white')}
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