Corp/backend/realtime/routing.py
Игорь Надеин 49b0231688 refactor(websocket): создано приложение realtime для унификации WebSocket
- Создано новое Django приложение realtime
- UserConsumer перенесен из communications в realtime
- Объединена функциональность чатов и уведомлений в одном consumer
- Обновлен asgi.py для использования realtime.routing
- Добавлена подписка на канал уведомлений (notifications_{user_id})
- Ping interval изменен на 20 секунд для лучшего keepalive
- Создан README.md с документацией по архитектуре

Улучшения архитектуры:
- Separation of Concerns: WebSocket логика отделена от бизнес-логики
- Single Responsibility: realtime отвечает только за real-time
- Расширяемость: легко добавлять новые real-time фичи
- Одно WebSocket соединение вместо двух (чаты + уведомления)
2025-12-03 12:44:21 +03:00

15 lines
487 B
Python

# realtime/routing.py
"""
WebSocket URL routing for real-time features.
All WebSocket connections are handled through this routing.
"""
from django.urls import re_path
from .consumers import UserConsumer
websocket_urlpatterns = [
# Универсальный WebSocket для пользователя
# Обрабатывает: чаты, уведомления, бейджи, онлайн-статус и др.
re_path(r"^ws/$", UserConsumer.as_asgi(), name="ws_user"),
]