blob: 833bf724b3506292d6537fc2d8c1e977da3f4271 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
from contextlib import asynccontextmanager
from typing import Annotated
from fastapi import FastAPI, Depends
import apirouters.agents
import modules.database
@asynccontextmanager
async def lifespan(app: FastAPI):
modules.database.cursor.execute(
"CREATE TABLE IF NOT EXISTS agents(primary_key INTEGER PRIMARY KEY, callsign TEXT NOT NULL UNIQUE, token_hash TEXT NOT NULL)")
yield
app = FastAPI(lifespan=lifespan)
app.include_router(apirouters.agents.router)
@app.get("/{callsign}/tasks")
async def get_tasks(callsign: str, token: Annotated[str, Depends(apirouters.agents.oauth2_scheme)]):
return f'{{"callsign": "{callsign}", "token": "{token}"}}'
|