mirror of
https://github.com/blakeblackshear/frigate.git
synced 2025-02-09 00:17:00 +01:00
* Add sub label to model and set / delete funs * Add migrations for sub label * Tweaks to API and model * Show sublabel if available * Cleanups * Update docs * Show person in UI title * Fix typo and don't fail on no json * Transfer sub labels for in progress events * Remove sublabel reset * Remove person only check * Make default null * Update docs and formatting * Make default null * Make nullable in migration * Undo null * Update model to accept null * Update migration to accept null * Don't set to default values * Remove redundant defaults and update http logic * Only need a single route * Enforce 20 character limit in http * Update docs to mention 20 character limit * Cleanup * Separate insert and update to make sure updated values are retained when event ends * Use insert instead of replace * Remove redundant if and have should_update_db include clip or snapshot requirement.
34 lines
1.0 KiB
Python
34 lines
1.0 KiB
Python
from numpy import unique
|
|
from peewee import *
|
|
from playhouse.sqlite_ext import *
|
|
|
|
|
|
class Event(Model):
|
|
id = CharField(null=False, primary_key=True, max_length=30)
|
|
label = CharField(index=True, max_length=20)
|
|
sub_label = CharField(max_length=20, null=True)
|
|
camera = CharField(index=True, max_length=20)
|
|
start_time = DateTimeField()
|
|
end_time = DateTimeField()
|
|
top_score = FloatField()
|
|
false_positive = BooleanField()
|
|
zones = JSONField()
|
|
thumbnail = TextField()
|
|
has_clip = BooleanField(default=True)
|
|
has_snapshot = BooleanField(default=True)
|
|
region = JSONField()
|
|
box = JSONField()
|
|
area = IntegerField()
|
|
retain_indefinitely = BooleanField(default=False)
|
|
|
|
|
|
class Recordings(Model):
|
|
id = CharField(null=False, primary_key=True, max_length=30)
|
|
camera = CharField(index=True, max_length=20)
|
|
path = CharField(unique=True)
|
|
start_time = DateTimeField()
|
|
end_time = DateTimeField()
|
|
duration = FloatField()
|
|
motion = IntegerField(null=True)
|
|
objects = IntegerField(null=True)
|