Spaces:
Paused
Paused
| from fastapi import FastAPI, WebSocket | |
| from fastapi.responses import FileResponse | |
| from fastapi.staticfiles import StaticFiles | |
| from bridge import TerminalBridge | |
| app = FastAPI() | |
| bridge = TerminalBridge() | |
| app.mount("/static", StaticFiles(directory="static"), name="static") | |
| async def index(): | |
| return FileResponse("static/index.html") | |
| async def websocket(ws: WebSocket): | |
| await ws.accept() | |
| session = await bridge.connect(ws) | |
| try: | |
| while True: | |
| message = await ws.receive_text() | |
| await bridge.input(session, message) | |
| except Exception: | |
| pass | |
| finally: | |
| await bridge.disconnect(session) |