better handle cases when zooming is disabled

This commit is contained in:
Josh Hawkins 2024-02-14 22:16:16 -06:00
parent d68bdcf72c
commit 421392c661

View File

@ -191,11 +191,9 @@ class OnvifController:
move_request.Translation.Zoom.space = ptz_config["Spaces"][ move_request.Translation.Zoom.space = ptz_config["Spaces"][
"RelativeZoomTranslationSpace" "RelativeZoomTranslationSpace"
][zoom_space_id]["URI"] ][zoom_space_id]["URI"]
else:
move_request.Translation.Zoom = []
except Exception: except Exception:
if (
self.config.cameras[camera_name].onvif.autotracking.zooming
== ZoomingModeEnum.relative
):
self.config.cameras[ self.config.cameras[
camera_name camera_name
].onvif.autotracking.zooming = ZoomingModeEnum.disabled ].onvif.autotracking.zooming = ZoomingModeEnum.disabled
@ -390,7 +388,11 @@ class OnvifController:
move_request.Translation.PanTilt.x = pan move_request.Translation.PanTilt.x = pan
move_request.Translation.PanTilt.y = tilt move_request.Translation.PanTilt.y = tilt
if "zoom-r" in self.cams[camera_name]["features"]: if (
"zoom-r" in self.cams[camera_name]["features"]
and self.config.cameras[camera_name].onvif.autotracking.zooming
== ZoomingModeEnum.relative
):
move_request.Speed = { move_request.Speed = {
"PanTilt": { "PanTilt": {
"x": speed, "x": speed,
@ -406,7 +408,11 @@ class OnvifController:
move_request.Translation.PanTilt.x = 0 move_request.Translation.PanTilt.x = 0
move_request.Translation.PanTilt.y = 0 move_request.Translation.PanTilt.y = 0
if "zoom-r" in self.cams[camera_name]["features"]: if (
"zoom-r" in self.cams[camera_name]["features"]
and self.config.cameras[camera_name].onvif.autotracking.zooming
== ZoomingModeEnum.relative
):
move_request.Translation.Zoom.x = 0 move_request.Translation.Zoom.x = 0
self.cams[camera_name]["active"] = False self.cams[camera_name]["active"] = False