feat: creating chats for cards and clients, sending and deleting text messages
This commit is contained in:
28
main.py
28
main.py
@@ -1,16 +1,37 @@
|
||||
import asyncio
|
||||
import platform
|
||||
from contextlib import asynccontextmanager
|
||||
|
||||
from aiokafka.errors import KafkaConnectionError
|
||||
from fastapi import FastAPI
|
||||
from fastapi.middleware.cors import CORSMiddleware
|
||||
import platform
|
||||
|
||||
from starlette.staticfiles import StaticFiles
|
||||
|
||||
import routers
|
||||
from constants import API_ROOT
|
||||
from external.kafka import producer, consume_messages
|
||||
|
||||
origins = [
|
||||
'http://localhost:5173'
|
||||
]
|
||||
app = FastAPI(separate_input_output_schemas=False)
|
||||
|
||||
|
||||
@asynccontextmanager
|
||||
async def lifespan(app: FastAPI):
|
||||
try:
|
||||
await producer.start()
|
||||
except KafkaConnectionError as e:
|
||||
print(e)
|
||||
|
||||
consumer_task = asyncio.create_task(consume_messages())
|
||||
|
||||
yield
|
||||
|
||||
await producer.stop()
|
||||
consumer_task.cancel()
|
||||
|
||||
|
||||
app = FastAPI(lifespan=lifespan, separate_input_output_schemas=False)
|
||||
|
||||
if platform.system() == 'Linux':
|
||||
import uvicorn.workers
|
||||
@@ -58,6 +79,7 @@ routers_list = [
|
||||
routers.board_router,
|
||||
routers.status_router,
|
||||
routers.card_tag_router,
|
||||
routers.chat_router,
|
||||
]
|
||||
for router in routers_list:
|
||||
app.include_router(router)
|
||||
|
||||
Reference in New Issue
Block a user