20 lines
503 B
Python
20 lines
503 B
Python
from fastapi import APIRouter
|
|
from socketio import AsyncServer
|
|
|
|
from .socket import Socket
|
|
from .game import game_router
|
|
from .create_room import create_room_router
|
|
|
|
|
|
def get_backend() -> tuple[APIRouter, AsyncServer]:
|
|
router = APIRouter(prefix="/api")
|
|
sio = AsyncServer(async_mode="asgi")
|
|
server = Socket(sio)
|
|
|
|
@sio.on("connect") # type: ignore
|
|
async def sio_connect(sid, _):
|
|
socket = server.to(sid)
|
|
await create_room_router(server, socket)
|
|
|
|
return router, sio
|