File size: 2,285 Bytes
591d823 d7d0d8e 72638cd 7306982 591d823 252d749 07fd3f6 ff3b5ca a2b82e9 d7d0d8e 62b2691 591d823 d865593 591d823 fa1fb30 7306982 bc45051 07fd3f6 bc45051 252d749 fa1fb30 d865593 d7d0d8e 252d749 62b2691 591d823 252d749 7fc9e46 72638cd be243ba b0b473d 591d823 fa1fb30 252d749 53a7593 0a00c05 72638cd 252d749 8cf933f 252d749 07fd3f6 a2b82e9 ff3b5ca d7d0d8e 62b2691 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
from fastapi import FastAPI, Request
from fastapi.responses import JSONResponse
from fastapi.middleware.gzip import GZipMiddleware
from App import bot
from .Users.UserRoutes import user_router
from .modelInit import models, database
from .Transcription.TranscriptionRoutes import transcription_router
from .Streaming.StreamingRoutes import streaming_router
from .UserTranscriptions.UserTranscriptionsRoutes import user_transcriptions_router
from .Monitor.monitorRoutes import monitor_router
from .Embedding.EmbeddingRoutes import embeddigs_router
from .Chat.ChatRoutes import chat_router
from fastapi.middleware.cors import CORSMiddleware
from fastapi_jwt_auth.exceptions import AuthJWTException
import logging, orm
# Configure logging
logging.basicConfig(
level=logging.DEBUG,
format="%(asctime)s - %(levelname)s - %(message)s",
datefmt="%Y-%m-%d %H:%M:%S",
)
app = FastAPI()
origins = ["*"]
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
app.add_middleware(GZipMiddleware, minimum_size=1000)
@app.exception_handler(AuthJWTException)
def authjwt_exception_handler(request: Request, exc: AuthJWTException):
return JSONResponse(status_code=exc.status_code, content={"detail": exc.message})
@app.on_event("startup")
async def startup_event():
await bot.start(bot_token="6183919505:AAEhHFt4mI18bQeAf2Lj7AePXFRPVLrOFM8")
# await upload_bot.start()
# await models.create_all()
# models.metadata.create_all()
# await create_async_model(models)
if not database.is_connected:
await database.connect()
print("connected!")
@app.on_event("shutdown")
async def shutdown_event():
await bot.session.save()
await bot.disconnect()
# await upload_bot.stop()
if not database.is_connected:
await database.disconnect()
print("shutting down!")
@app.get("/")
async def landing_page():
return {"code": 200, "message": "we are back!"}
app.include_router(user_router)
app.include_router(transcription_router)
app.include_router(streaming_router)
app.include_router(monitor_router)
app.include_router(user_transcriptions_router)
app.include_router(embeddigs_router)
app.include_router(chat_router)
|