/
EastW
/
Reiai-python-FastAPI
Обзор
Документация
Войти
/
EastW
/
Reiai-python-FastAPI
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
api/core/websockets/websocket.py
19 строк
818 B
Dennis Mattews
added tests, alembic, refactoring
18 окт 2024, 22:49
18 окт 2024, 22:49
cdb56bd
Код
Авторство
О чём код?
# WebSocket для обработки сообщений from fastapi import WebSocket, WebSocketDisconnect from main import app from redis.redis import save_message_in_cache # WebSocket для чатов @app.websocket("/ws/{chat_id}") async def websocket_endpoint(websocket: WebSocket, chat_id: int): await websocket.accept() try: while True: data = await websocket.receive_text() # Отправляем уведомления всем пользователям, подписанным на этот чат await websocket.send_text(f"Message in chat {chat_id}: {data}") save_message_in_cache(chat_id, data) # Сохраняем сообщение в Redis except WebSocketDisconnect: print(f"Client disconnected from chat {chat_id}")