Files
2026-01-24 16:35:30 +01:00

50 lines
1012 B
Python

"""
Focolari Voting System - Modelli Pydantic
"""
from typing import Optional, Literal
from pydantic import BaseModel
class LoginRequest(BaseModel):
"""Richiesta login validatore"""
badge: str
password: str
class EntryRequest(BaseModel):
"""Richiesta ingresso partecipante"""
user_badge: str
validator_password: str
class UserResponse(BaseModel):
"""Risposta dati utente"""
badge_code: str
nome: str
cognome: str
url_foto: str
ruolo: Literal["Convocato", "Invitato", "Tecnico", "Staff"]
ammesso: bool
warning: Optional[str] = None
class RoomInfoResponse(BaseModel):
"""Risposta info sala"""
room_name: str
meeting_id: str
server_start_time: int # Timestamp avvio server per invalidare sessioni
class LoginResponse(BaseModel):
"""Risposta login"""
success: bool
message: str
class EntryResponse(BaseModel):
"""Risposta richiesta ingresso (asettica, senza welcome_message)"""
success: bool
message: str