mirror of
https://github.com/AbaTekNTNU/followspot-psn.git
synced 2025-12-06 13:54:58 +00:00
api endpoints for adding and removing trackers
This commit is contained in:
@@ -247,6 +247,35 @@ def osc_tracker_updater(address, fixed_args, *args) -> None:
|
|||||||
|
|
||||||
asyncio.ensure_future(update_all_clients(app))
|
asyncio.ensure_future(update_all_clients(app))
|
||||||
|
|
||||||
|
async def handle_add_tracker(request):
|
||||||
|
# Add tracker with id from request
|
||||||
|
try:
|
||||||
|
trackers = request.app["trackers"]
|
||||||
|
request_data = await request.json()
|
||||||
|
tracker_id = request_data["id"]
|
||||||
|
if tracker_id in trackers:
|
||||||
|
return web.Response(text="Tracker already exists", status=400)
|
||||||
|
|
||||||
|
trackers[tracker_id] = TrackerData(tracker_id, *START_POSITION_INTERNAL)
|
||||||
|
return web.Response(text="OK", status=200)
|
||||||
|
except Exception as e:
|
||||||
|
return web.Response(text=f"Error: {e}", status=400)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
async def handler_delete_tracker(request):
|
||||||
|
# Delete tracker with id from request
|
||||||
|
try:
|
||||||
|
trackers = request.app["trackers"]
|
||||||
|
request_data = await request.json()
|
||||||
|
tracker_id = request_data["id"]
|
||||||
|
if tracker_id not in trackers:
|
||||||
|
return web.Response(text="Tracker does not exist", status=400)
|
||||||
|
|
||||||
|
del trackers[tracker_id]
|
||||||
|
return web.Response(text="OK", status=200)
|
||||||
|
except Exception as e:
|
||||||
|
return web.Response(text=f"Error: {e}", status=400)
|
||||||
|
|
||||||
async def receive_osc_data(app):
|
async def receive_osc_data(app):
|
||||||
dispatcher = Dispatcher()
|
dispatcher = Dispatcher()
|
||||||
@@ -265,8 +294,13 @@ def create_app():
|
|||||||
app.router.add_get("/", handle_root)
|
app.router.add_get("/", handle_root)
|
||||||
app.router.add_get("/ws", handle_websocket)
|
app.router.add_get("/ws", handle_websocket)
|
||||||
app.router.add_get("/background_image", handle_background_image)
|
app.router.add_get("/background_image", handle_background_image)
|
||||||
|
|
||||||
app.router.add_post("/mode", handle_set_mode)
|
app.router.add_post("/mode", handle_set_mode)
|
||||||
app.router.add_get("/mode", handlet_get_mode)
|
app.router.add_get("/mode", handlet_get_mode)
|
||||||
|
|
||||||
|
app.router.add_post("/tracker", handle_add_tracker)
|
||||||
|
app.router.add_delete("/tracker", handler_delete_tracker)
|
||||||
|
|
||||||
app.router.add_static("/", "./static")
|
app.router.add_static("/", "./static")
|
||||||
|
|
||||||
# Setup app state
|
# Setup app state
|
||||||
|
|||||||
Reference in New Issue
Block a user