mirror of
https://github.com/blakeblackshear/frigate.git
synced 2025-09-10 17:51:45 +02:00
* semantic trigger test * database and model * config * embeddings maintainer and trigger post-processor * api to create, edit, delete triggers * frontend and i18n keys * use thumbnail and description for trigger types * image picker tweaks * initial sync * thumbnail file management * clean up logs and use saved thumbnail on frontend * publish mqtt messages * webpush changes to enable trigger notifications * add enabled switch * add triggers from explore * renaming and deletion fixes * fix typing * UI updates and add last triggering event time and link * log exception instead of return in endpoint * highlight entry in UI when triggered * save and delete thumbnails directly * remove alert action for now and add descriptions * tweaks * clean up * fix types * docs * docs tweaks * docs * reuse enum
56 lines
1.5 KiB
Python
56 lines
1.5 KiB
Python
from typing import List, Optional, Union
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
from frigate.config.classification import TriggerType
|
|
|
|
|
|
class EventsSubLabelBody(BaseModel):
|
|
subLabel: str = Field(title="Sub label", max_length=100)
|
|
subLabelScore: Optional[float] = Field(
|
|
title="Score for sub label", default=None, gt=0.0, le=1.0
|
|
)
|
|
camera: Optional[str] = Field(
|
|
title="Camera this object is detected on.", default=None
|
|
)
|
|
|
|
|
|
class EventsLPRBody(BaseModel):
|
|
recognizedLicensePlate: str = Field(
|
|
title="Recognized License Plate", max_length=100
|
|
)
|
|
recognizedLicensePlateScore: Optional[float] = Field(
|
|
title="Score for recognized license plate", default=None, gt=0.0, le=1.0
|
|
)
|
|
|
|
|
|
class EventsDescriptionBody(BaseModel):
|
|
description: Union[str, None] = Field(title="The description of the event")
|
|
|
|
|
|
class EventsCreateBody(BaseModel):
|
|
source_type: Optional[str] = "api"
|
|
sub_label: Optional[str] = None
|
|
score: Optional[float] = 0
|
|
duration: Optional[int] = 30
|
|
include_recording: Optional[bool] = True
|
|
draw: Optional[dict] = {}
|
|
|
|
|
|
class EventsEndBody(BaseModel):
|
|
end_time: Optional[float] = None
|
|
|
|
|
|
class EventsDeleteBody(BaseModel):
|
|
event_ids: List[str] = Field(title="The event IDs to delete")
|
|
|
|
|
|
class SubmitPlusBody(BaseModel):
|
|
include_annotation: int = Field(default=1)
|
|
|
|
|
|
class TriggerEmbeddingBody(BaseModel):
|
|
type: TriggerType
|
|
data: str
|
|
threshold: float = Field(default=0.5, ge=0.0, le=1.0)
|