Files
saresb/script/devices/axis.py
2021-04-28 09:14:56 +02:00

28 lines
892 B
Python
Executable File

import requests
def axis_exec(camera, cmd):
if is_string(camera):
camera = get_device(camera)
url = camera.url
s="axis-cgi/"
ctrl_url = url[0:url.find(s) + len(s)] + "com/ptz.cgi?"
cmd_url=ctrl_url+cmd
response = requests.get(url=cmd_url)
if 200<=response.status_code<300:
return response.text.strip()
raise Exception(response.text)
def axis_move(camera, direction):
direction=str(direction)
if direction not in ("home", "up", "down", "left", "right", "upleft", "upright", "downleft", "downright", "stop"):
raise Exception("Invalid direction: " + direction)
return axis_exec(camera, "move="+direction)
def axis_rzoom(camera, steps):
steps= int(steps)
if steps<-9999 or steps>9999:
raise Exception("Invalid relative zoom steps: " + str(steps))
return axis_exec(camera, "rzoom="+str(steps))