Spaces:
Runtime error
Runtime error
| import random | |
| import string | |
| from datetime import datetime, timedelta | |
| from typing import Dict, Optional | |
| _sessions: Dict[str, dict] = {} | |
| def _gen_code() -> str: | |
| return "".join(random.choices(string.ascii_uppercase + string.digits, k=6)) | |
| def create_session() -> dict: | |
| code = _gen_code() | |
| while code in _sessions: | |
| code = _gen_code() | |
| s = { | |
| "code": code, | |
| "created_at": datetime.now(), | |
| "mood": "", | |
| "users": {}, | |
| "status": "waiting", | |
| "results": None, | |
| } | |
| _sessions[code] = s | |
| return s | |
| def get_session(code: str) -> Optional[dict]: | |
| s = _sessions.get(code.upper()) | |
| if not s: | |
| return None | |
| if datetime.now() - s["created_at"] > timedelta(hours=24): | |
| del _sessions[code.upper()] | |
| return None | |
| return s | |