axis 51__tar.gz → 52__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.
- {axis-51 → axis-52}/PKG-INFO +3 -3
- {axis-51 → axis-52}/axis/vapix/models/parameters/ptz.py +27 -27
- {axis-51 → axis-52}/axis.egg-info/PKG-INFO +3 -3
- {axis-51 → axis-52}/axis.egg-info/requires.txt +1 -1
- {axis-51 → axis-52}/pyproject.toml +2 -2
- {axis-51 → axis-52}/setup.py +1 -1
- {axis-51 → axis-52}/LICENSE +0 -0
- {axis-51 → axis-52}/README.md +0 -0
- {axis-51 → axis-52}/axis/__init__.py +0 -0
- {axis-51 → axis-52}/axis/__main__.py +0 -0
- {axis-51 → axis-52}/axis/configuration.py +0 -0
- {axis-51 → axis-52}/axis/device.py +0 -0
- {axis-51 → axis-52}/axis/errors.py +0 -0
- {axis-51 → axis-52}/axis/event_stream.py +0 -0
- {axis-51 → axis-52}/axis/models/__init__.py +0 -0
- {axis-51 → axis-52}/axis/models/event.py +0 -0
- {axis-51 → axis-52}/axis/py.typed +0 -0
- {axis-51 → axis-52}/axis/rtsp.py +0 -0
- {axis-51 → axis-52}/axis/stream_manager.py +0 -0
- {axis-51 → axis-52}/axis/vapix/__init__.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/__init__.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/api_discovery.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/api_handler.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/applications/__init__.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/applications/application_handler.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/applications/applications.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/applications/fence_guard.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/applications/loitering_guard.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/applications/motion_guard.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/applications/object_analytics.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/applications/vmd4.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/basic_device_info.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/event_instances.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/light_control.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/mqtt.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/parameters/__init__.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/parameters/brand.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/parameters/image.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/parameters/io_port.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/parameters/param_cgi.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/parameters/param_handler.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/parameters/properties.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/parameters/ptz.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/parameters/stream_profile.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/pir_sensor_configuration.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/port_cgi.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/port_management.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/ptz.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/pwdgrp_cgi.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/stream_profiles.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/user_groups.py +0 -0
- {axis-51 → axis-52}/axis/vapix/interfaces/view_areas.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/__init__.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/api.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/api_discovery.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/applications/__init__.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/applications/application.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/applications/fence_guard.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/applications/loitering_guard.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/applications/motion_guard.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/applications/object_analytics.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/applications/vmd4.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/basic_device_info.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/event_instance.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/light_control.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/mqtt.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/parameters/__init__.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/parameters/brand.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/parameters/image.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/parameters/io_port.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/parameters/param_cgi.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/parameters/properties.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/parameters/stream_profile.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/pir_sensor_configuration.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/port_cgi.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/port_management.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/ptz_cgi.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/pwdgrp_cgi.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/stream_profile.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/user_group.py +0 -0
- {axis-51 → axis-52}/axis/vapix/models/view_area.py +0 -0
- {axis-51 → axis-52}/axis/vapix/vapix.py +0 -0
- {axis-51 → axis-52}/axis.egg-info/SOURCES.txt +0 -0
- {axis-51 → axis-52}/axis.egg-info/dependency_links.txt +0 -0
- {axis-51 → axis-52}/axis.egg-info/entry_points.txt +0 -0
- {axis-51 → axis-52}/axis.egg-info/top_level.txt +0 -0
- {axis-51 → axis-52}/setup.cfg +0 -0
- {axis-51 → axis-52}/tests/test_api_discovery.py +0 -0
- {axis-51 → axis-52}/tests/test_api_handler.py +0 -0
- {axis-51 → axis-52}/tests/test_basic_device_info.py +0 -0
- {axis-51 → axis-52}/tests/test_configuration.py +0 -0
- {axis-51 → axis-52}/tests/test_device.py +0 -0
- {axis-51 → axis-52}/tests/test_event.py +0 -0
- {axis-51 → axis-52}/tests/test_event_instances.py +0 -0
- {axis-51 → axis-52}/tests/test_event_stream.py +0 -0
- {axis-51 → axis-52}/tests/test_light_control.py +0 -0
- {axis-51 → axis-52}/tests/test_mqtt.py +0 -0
- {axis-51 → axis-52}/tests/test_pir_sensor_configuration.py +0 -0
- {axis-51 → axis-52}/tests/test_port_cgi.py +0 -0
- {axis-51 → axis-52}/tests/test_port_management.py +0 -0
- {axis-51 → axis-52}/tests/test_ptz.py +0 -0
- {axis-51 → axis-52}/tests/test_pwdgrp_cgi.py +0 -0
- {axis-51 → axis-52}/tests/test_rtsp.py +0 -0
- {axis-51 → axis-52}/tests/test_stream_manager.py +0 -0
- {axis-51 → axis-52}/tests/test_stream_profiles.py +0 -0
- {axis-51 → axis-52}/tests/test_user_groups.py +0 -0
- {axis-51 → axis-52}/tests/test_vapix.py +0 -0
- {axis-51 → axis-52}/tests/test_view_areas.py +0 -0
{axis-51 → axis-52}/PKG-INFO
RENAMED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: axis
|
|
3
|
-
Version:
|
|
3
|
+
Version: 52
|
|
4
4
|
Summary: A Python library for communicating with devices from Axis Communications
|
|
5
5
|
Home-page: https://github.com/Kane610/axis
|
|
6
|
-
Download-URL: https://github.com/Kane610/axis/archive/
|
|
6
|
+
Download-URL: https://github.com/Kane610/axis/archive/v52.tar.gz
|
|
7
7
|
Author: Robert Svensson
|
|
8
8
|
Author-email: Robert Svensson <Kane610@users.noreply.github.com>
|
|
9
9
|
License: MIT
|
|
@@ -36,7 +36,7 @@ Requires-Dist: pytest-aiohttp==1.0.5; extra == "requirements-test"
|
|
|
36
36
|
Requires-Dist: pytest-asyncio==0.23.5; extra == "requirements-test"
|
|
37
37
|
Requires-Dist: pytest-cov==4.1.0; extra == "requirements-test"
|
|
38
38
|
Requires-Dist: respx==0.20.2; extra == "requirements-test"
|
|
39
|
-
Requires-Dist: ruff==0.3.
|
|
39
|
+
Requires-Dist: ruff==0.3.1; extra == "requirements-test"
|
|
40
40
|
Requires-Dist: types-orjson==3.6.2; extra == "requirements-test"
|
|
41
41
|
Requires-Dist: types-xmltodict==v0.13.0.3; extra == "requirements-test"
|
|
42
42
|
Provides-Extra: requirements-dev
|
|
@@ -21,15 +21,15 @@ class PtzLimitParamT(TypedDict):
|
|
|
21
21
|
MaxFieldAngle: NotRequired[int]
|
|
22
22
|
MaxFocus: NotRequired[int]
|
|
23
23
|
MaxIris: NotRequired[int]
|
|
24
|
-
MaxPan: int
|
|
25
|
-
MaxTilt: int
|
|
24
|
+
MaxPan: NotRequired[int]
|
|
25
|
+
MaxTilt: NotRequired[int]
|
|
26
26
|
MaxZoom: int
|
|
27
27
|
MinBrightness: NotRequired[int]
|
|
28
28
|
MinFieldAngle: int
|
|
29
29
|
MinFocus: NotRequired[int]
|
|
30
30
|
MinIris: NotRequired[int]
|
|
31
|
-
MinPan: int
|
|
32
|
-
MinTilt: int
|
|
31
|
+
MinPan: NotRequired[int]
|
|
32
|
+
MinTilt: NotRequired[int]
|
|
33
33
|
MinZoom: int
|
|
34
34
|
|
|
35
35
|
|
|
@@ -113,12 +113,12 @@ class PtzVariousParamT(TypedDict):
|
|
|
113
113
|
CtlQueuePollTime: int
|
|
114
114
|
HomePresetSet: bool
|
|
115
115
|
Locked: NotRequired[bool]
|
|
116
|
-
MaxProportionalSpeed: int
|
|
117
|
-
PanEnabled: bool
|
|
118
|
-
ProportionalSpeedEnabled: bool
|
|
116
|
+
MaxProportionalSpeed: NotRequired[int]
|
|
117
|
+
PanEnabled: NotRequired[bool]
|
|
118
|
+
ProportionalSpeedEnabled: NotRequired[bool]
|
|
119
119
|
ReturnToOverview: int
|
|
120
|
-
SpeedCtlEnabled: bool
|
|
121
|
-
TiltEnabled: bool
|
|
120
|
+
SpeedCtlEnabled: NotRequired[bool]
|
|
121
|
+
TiltEnabled: NotRequired[bool]
|
|
122
122
|
ZoomEnabled: bool
|
|
123
123
|
|
|
124
124
|
|
|
@@ -170,10 +170,6 @@ class PtzLimit:
|
|
|
170
170
|
The purpose of those two parameters is to calibrate image centering.
|
|
171
171
|
"""
|
|
172
172
|
|
|
173
|
-
max_pan: int
|
|
174
|
-
min_pan: int
|
|
175
|
-
max_tilt: int
|
|
176
|
-
min_tilt: int
|
|
177
173
|
max_zoom: int
|
|
178
174
|
min_zoom: int
|
|
179
175
|
max_brightness: int | None
|
|
@@ -184,15 +180,15 @@ class PtzLimit:
|
|
|
184
180
|
min_focus: int | None
|
|
185
181
|
max_iris: int | None
|
|
186
182
|
min_iris: int | None
|
|
183
|
+
max_pan: int | None
|
|
184
|
+
min_pan: int | None
|
|
185
|
+
max_tilt: int | None
|
|
186
|
+
min_tilt: int | None
|
|
187
187
|
|
|
188
188
|
@classmethod
|
|
189
189
|
def decode(cls, data: PtzLimitParamT) -> Self:
|
|
190
190
|
"""Decode dictionary to class object."""
|
|
191
191
|
return cls(
|
|
192
|
-
max_pan=data["MaxPan"],
|
|
193
|
-
min_pan=data["MinPan"],
|
|
194
|
-
max_tilt=data["MaxTilt"],
|
|
195
|
-
min_tilt=data["MinTilt"],
|
|
196
192
|
max_zoom=data["MaxZoom"],
|
|
197
193
|
min_zoom=data["MinZoom"],
|
|
198
194
|
max_brightness=data.get("MaxBrightness"),
|
|
@@ -203,6 +199,10 @@ class PtzLimit:
|
|
|
203
199
|
min_focus=data.get("MinFocus"),
|
|
204
200
|
max_iris=data.get("MaxIris"),
|
|
205
201
|
min_iris=data.get("MinIris"),
|
|
202
|
+
max_pan=data.get("MaxPan"),
|
|
203
|
+
min_pan=data.get("MinPan"),
|
|
204
|
+
max_tilt=data.get("MaxTilt"),
|
|
205
|
+
min_tilt=data.get("MinTilt"),
|
|
206
206
|
)
|
|
207
207
|
|
|
208
208
|
@classmethod
|
|
@@ -322,12 +322,12 @@ class PtzVarious:
|
|
|
322
322
|
control_queue_poll_time: int
|
|
323
323
|
home_preset_set: bool
|
|
324
324
|
locked: bool
|
|
325
|
-
max_proportional_speed: int
|
|
326
|
-
pan_enabled: bool
|
|
327
|
-
proportional_speed_enabled: bool
|
|
325
|
+
max_proportional_speed: int | None
|
|
326
|
+
pan_enabled: bool | None
|
|
327
|
+
proportional_speed_enabled: bool | None
|
|
328
328
|
return_to_overview: int
|
|
329
|
-
speed_control_enabled: bool
|
|
330
|
-
tilt_enabled: bool
|
|
329
|
+
speed_control_enabled: bool | None
|
|
330
|
+
tilt_enabled: bool | None
|
|
331
331
|
zoom_enabled: bool
|
|
332
332
|
|
|
333
333
|
@classmethod
|
|
@@ -339,12 +339,12 @@ class PtzVarious:
|
|
|
339
339
|
control_queue_poll_time=data["CtlQueuePollTime"],
|
|
340
340
|
home_preset_set=data["HomePresetSet"],
|
|
341
341
|
locked=data.get("Locked", False),
|
|
342
|
-
max_proportional_speed=data
|
|
343
|
-
pan_enabled=data
|
|
344
|
-
proportional_speed_enabled=data
|
|
342
|
+
max_proportional_speed=data.get("MaxProportionalSpeed"),
|
|
343
|
+
pan_enabled=data.get("PanEnabled"),
|
|
344
|
+
proportional_speed_enabled=data.get("ProportionalSpeedEnabled"),
|
|
345
345
|
return_to_overview=data["ReturnToOverview"],
|
|
346
|
-
speed_control_enabled=data
|
|
347
|
-
tilt_enabled=data
|
|
346
|
+
speed_control_enabled=data.get("SpeedCtlEnabled"),
|
|
347
|
+
tilt_enabled=data.get("TiltEnabled"),
|
|
348
348
|
zoom_enabled=data["ZoomEnabled"],
|
|
349
349
|
)
|
|
350
350
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: axis
|
|
3
|
-
Version:
|
|
3
|
+
Version: 52
|
|
4
4
|
Summary: A Python library for communicating with devices from Axis Communications
|
|
5
5
|
Home-page: https://github.com/Kane610/axis
|
|
6
|
-
Download-URL: https://github.com/Kane610/axis/archive/
|
|
6
|
+
Download-URL: https://github.com/Kane610/axis/archive/v52.tar.gz
|
|
7
7
|
Author: Robert Svensson
|
|
8
8
|
Author-email: Robert Svensson <Kane610@users.noreply.github.com>
|
|
9
9
|
License: MIT
|
|
@@ -36,7 +36,7 @@ Requires-Dist: pytest-aiohttp==1.0.5; extra == "requirements-test"
|
|
|
36
36
|
Requires-Dist: pytest-asyncio==0.23.5; extra == "requirements-test"
|
|
37
37
|
Requires-Dist: pytest-cov==4.1.0; extra == "requirements-test"
|
|
38
38
|
Requires-Dist: respx==0.20.2; extra == "requirements-test"
|
|
39
|
-
Requires-Dist: ruff==0.3.
|
|
39
|
+
Requires-Dist: ruff==0.3.1; extra == "requirements-test"
|
|
40
40
|
Requires-Dist: types-orjson==3.6.2; extra == "requirements-test"
|
|
41
41
|
Requires-Dist: types-xmltodict==v0.13.0.3; extra == "requirements-test"
|
|
42
42
|
Provides-Extra: requirements-dev
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "axis"
|
|
7
|
-
version = "
|
|
7
|
+
version = "52"
|
|
8
8
|
license = {text = "MIT"}
|
|
9
9
|
description = "A Python library for communicating with devices from Axis Communications"
|
|
10
10
|
readme = "README.md"
|
|
@@ -40,7 +40,7 @@ requirements_test = [
|
|
|
40
40
|
"pytest-asyncio==0.23.5",
|
|
41
41
|
"pytest-cov==4.1.0",
|
|
42
42
|
"respx==0.20.2",
|
|
43
|
-
"ruff==0.3.
|
|
43
|
+
"ruff==0.3.1",
|
|
44
44
|
"types-orjson==3.6.2",
|
|
45
45
|
"types-xmltodict==v0.13.0.3",
|
|
46
46
|
]
|
{axis-51 → axis-52}/setup.py
RENAMED
{axis-51 → axis-52}/LICENSE
RENAMED
|
File without changes
|
{axis-51 → axis-52}/README.md
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
|
{axis-51 → axis-52}/axis/rtsp.py
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
|
|
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
|
{axis-51 → axis-52}/setup.cfg
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
|