Add relative movement by clicking on camera image for supported ptzs (#10629)

This commit is contained in:
Josh Hawkins
2024-03-23 11:53:33 -05:00
committed by GitHub
parent 63bf986e08
commit 3a9607e59b
3 changed files with 75 additions and 2 deletions

View File

@@ -315,6 +315,9 @@ class Dispatcher:
if "preset" in payload.lower():
command = OnvifCommandEnum.preset
param = payload.lower()[payload.index("_") + 1 :]
elif "move_relative" in payload.lower():
command = OnvifCommandEnum.move_relative
param = payload.lower()[payload.index("_") + 1 :]
else:
command = OnvifCommandEnum[payload.lower()]
param = ""

View File

@@ -21,6 +21,7 @@ class OnvifCommandEnum(str, Enum):
init = "init"
move_down = "move_down"
move_left = "move_left"
move_relative = "move_relative"
move_right = "move_right"
move_up = "move_up"
preset = "preset"
@@ -536,6 +537,9 @@ class OnvifController:
self._stop(camera_name)
elif command == OnvifCommandEnum.preset:
self._move_to_preset(camera_name, param)
elif command == OnvifCommandEnum.move_relative:
_, pan, tilt = param.split("_")
self._move_relative(camera_name, float(pan), float(tilt), 0, 1)
elif (
command == OnvifCommandEnum.zoom_in or command == OnvifCommandEnum.zoom_out
):