Show correct previous state when updating for end

This commit is contained in:
Nicolas Mowen 2024-06-23 06:32:05 -06:00
parent 9bbb88cdcb
commit 71a209ea7b

View File

@ -201,6 +201,7 @@ class ReviewSegmentMaintainer(threading.Thread):
segment.update_frame(camera_config, frame, objects)
new_data = segment.get_data(ended=False)
logger.error(f"comparing prev {prev_data} to new {new_data}")
self.requestor.send_data(UPSERT_REVIEW_SEGMENT, new_data)
self.requestor.send_data(
"reviews",
@ -213,7 +214,7 @@ class ReviewSegmentMaintainer(threading.Thread):
),
)
def end_segment(self, segment: PendingReviewSegment) -> None:
def end_segment(self, segment: PendingReviewSegment, prev_data: dict[str, any],) -> None:
"""End segment."""
final_data = segment.get_data(ended=True)
self.requestor.send_data(UPSERT_REVIEW_SEGMENT, final_data)
@ -223,7 +224,7 @@ class ReviewSegmentMaintainer(threading.Thread):
json.dumps(
{
"type": "end",
"before": end_data,
"before": prev_data,
"after": end_data,
}
),
@ -309,9 +310,9 @@ class ReviewSegmentMaintainer(threading.Thread):
if segment.severity == SeverityEnum.alert and frame_time > (
segment.last_update + THRESHOLD_ALERT_ACTIVITY
):
self.end_segment(segment)
self.end_segment(segment, prev_data)
elif frame_time > (segment.last_update + THRESHOLD_DETECTION_ACTIVITY):
self.end_segment(segment)
self.end_segment(segment, prev_data)
def check_if_new_segment(
self,