Files
2026-05-28 10:25:34 -05:00

55 lines
1.0 KiB
Python

from dataclasses import dataclass
from datetime import datetime
from typing import Optional
@dataclass
class Room:
id: int
name: str
device_label: Optional[str]
is_active: bool
last_seen: Optional[datetime]
created_at: datetime
@dataclass
class Speaker:
id: int
name: str
created_at: datetime
updated_at: datetime
@dataclass
class VoiceEmbedding:
id: int
speaker_id: int
embedding: bytes # packed float32
audio_sample: Optional[bytes]
created_at: datetime
@dataclass
class Utterance:
id: int
room_id: int
speaker_id: Optional[int]
transcript: str
embedding: Optional[bytes]
match_status: str # known | unknown | ambiguous | unreviewed
match_confidence: Optional[float]
start_time: datetime
end_time: datetime
audio_clip_path: Optional[str]
livekit_room: Optional[str]
created_at: datetime
@dataclass
class DailySummary:
id: int
date: str # YYYY-MM-DD
summary_text: str
generated_at: datetime