3.5 KiB
api.v1.websocket
class api.v1.websocket.WebSocketManager
Bases: object
Класс для управления подключениями к WebSocket-серверу.
Обрабатывает подключение, отключение и трансляцию сообщений для клиентов, подключённых через WebSocket.
async broadcast(message: dict)
Транслирует сообщения всем подключённым клиентам.
Отправляет JSON-данные всем активным соединениям, обрабатывая отключения клиентов.
- Parameters: message (dict) – Сообщение для трансляции в формате JSON.
- Raises:
- WebSocketDisconnect – Если клиент неожиданно отключился.
- Exception – Если произошла другая ошибка при отправке.
async connect(websocket: WebSocket)
Подключает клиента к WebSocket-серверу.
Принимает подключение и добавляет WebSocket в список активных соединений.
- Parameters: websocket (WebSocket) – Объект WebSocket для подключения.
- Raises: Exception – Если произошла ошибка при принятии подключения.
disconnect(websocket: WebSocket)
Отключает клиента от WebSocket-серверу.
Удаляет WebSocket из списка активных соединений.
- Parameters: websocket (WebSocket) – Объект WebSocket для отключения.
async api.v1.websocket.broadcast_data(translations: Translations = Depends(translations_dependency))
Таск для периодической трансляции сетевых данных.
Выполняет сканирование сети и отправляет данные всем подключённым клиентам с интервалом в 2 секунды.
- Parameters: translations – Объект переводов для текущего языка.
- Raises: Exception – Если произошла ошибка при получении данных или трансляции.
async api.v1.websocket.startup_event()
Запуск таска для трансляции сетевых данных при старте приложения.
Создаёт асинхронную задачу для периодической трансляции данных.
- Raises: Exception – Если произошла ошибка при запуске таска.
async api.v1.websocket.websocket_endpoint(websocket: WebSocket, translations: Translations = Depends(translations_dependency))
Обработчик WebSocket-соединения.
Управляет соединением клиента, принимает данные для обновления позиций контейнеров и транслирует сетевые данные.
- Parameters:
- websocket (WebSocket) – Объект WebSocket для обработки соединения.
- translations – Объект переводов для текущего языка.
- Raises:
- WebSocketDisconnect – Если клиент отключился.
- Exception – Если произошла ошибка при обработке данных.