# 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** – Если произошла ошибка при обработке данных.