43 lines
912 B
Python
43 lines
912 B
Python
import random
|
|
from typing import List, Dict
|
|
|
|
from pydantic import BaseModel
|
|
|
|
from app.configs.constants import MinTimers, AvatarEnum
|
|
|
|
|
|
class SaveSpeakingDTO(BaseModel):
|
|
exercises: List[Dict]
|
|
minTimer: int = MinTimers.SPEAKING_MIN_TIMER_DEFAULT
|
|
|
|
|
|
class GradeSpeakingDTO(BaseModel):
|
|
question: str
|
|
answer: str
|
|
|
|
|
|
class GradeSpeakingAnswersDTO(BaseModel):
|
|
answers: List[Dict]
|
|
|
|
|
|
class GenerateVideo1DTO(BaseModel):
|
|
avatar: str = (random.choice(list(AvatarEnum))).value
|
|
questions: List[str]
|
|
first_topic: str
|
|
second_topic: str
|
|
|
|
|
|
class GenerateVideo2DTO(BaseModel):
|
|
avatar: str = (random.choice(list(AvatarEnum))).value
|
|
prompts: List[str] = []
|
|
suffix: str = ""
|
|
question: str
|
|
topic: str
|
|
|
|
|
|
class GenerateVideo3DTO(BaseModel):
|
|
avatar: str = (random.choice(list(AvatarEnum))).value
|
|
questions: List[str]
|
|
topic: str
|
|
|