"""Schemas for the chat app.""" | |
from pydantic import BaseModel, validator | |
class ChatResponse(BaseModel): | |
"""Chat response schema.""" | |
sender: str | |
message: str | |
type: str | |
def sender_must_be_bot_or_you(cls, v): | |
if v not in ["bot", "you"]: | |
raise ValueError("sender must be bot or you") | |
return v | |
def validate_message_type(cls, v): | |
if v not in ["start", "stream", "end", "error", "info"]: | |
raise ValueError("type must be start, stream or end") | |
return v |