Check event json

This commit is contained in:
Nick Mowen 2023-05-01 09:28:33 -06:00
parent 73a1b970f6
commit 0a1b0ed92a
2 changed files with 9 additions and 8 deletions

View File

@ -25,7 +25,7 @@ class ExternalEventProcessor:
self, self,
camera: str, camera: str,
label: str, label: str,
sub_label: str, sub_label: Optional[str],
duration: Optional[int], duration: Optional[int],
include_recording: bool, include_recording: bool,
) -> str: ) -> str:

View File

@ -82,6 +82,7 @@ def create_app(
app.detected_frames_processor = detected_frames_processor app.detected_frames_processor = detected_frames_processor
app.storage_maintainer = storage_maintainer app.storage_maintainer = storage_maintainer
app.onvif = onvif app.onvif = onvif
app.external_processor = external_processor
app.plus_api = plus_api app.plus_api = plus_api
app.camera_error_image = None app.camera_error_image = None
app.hwaccel_errors = [] app.hwaccel_errors = []
@ -853,22 +854,21 @@ def create_event(camera_name, label):
{"success": False, "message": f"{camera_name} is not a valid camera."}, 404 {"success": False, "message": f"{camera_name} is not a valid camera."}, 404
) )
camera_config = current_app.frigate_config.cameras.get(camera_name)
if not label: if not label:
return jsonify({"success": False, "message": f"{label} must be set."}, 404) return jsonify({"success": False, "message": f"{label} must be set."}, 404)
event_id = create_manual_event( event_id = current_app.external_processor.create_manual_event(
current_app.detected_frames_processor,
camera_config,
camera_name, camera_name,
label, label,
request.json.get("sub_label"),
request.json.get("duration"),
request.json.get("include_recording") or True,
) )
return jsonify( return jsonify(
{ {
"success": True, "success": True,
"message": f"Event successfully created.", "message": "Successfully created event.",
"event_id": event_id, "event_id": event_id,
}, },
200, 200,
@ -878,7 +878,8 @@ def create_event(camera_name, label):
@bp.route("/events/manual/<event_id>/end", methods=("POST",)) @bp.route("/events/manual/<event_id>/end", methods=("POST",))
def end_event(event_id): def end_event(event_id):
try: try:
finish_manual_event(current_app.detected_frames_processor, event_id) current_app.external_processor.finish_manual_event(event_id)
# TODO we need some way to verify that the event id is valid, just check in the db?
except: except:
return jsonify( return jsonify(
{"success": False, "message": f"{event_id} must be set and valid."}, 404 {"success": False, "message": f"{event_id} must be set and valid."}, 404