# api.v1.subnet ### api.v1.subnet.add_note(mac: str, request: NoteRequest, subnet_service: SubnetService = Depends(get_subnet_service), translations: Translations = Depends(translations_dependency)) Добавляет заметку для устройства по MAC-адресу. Привязывает заметку к устройству, идентифицируемому по MAC-адресу. * **Parameters:** * **mac** (*str*) – MAC-адрес устройства. * **request** (*NoteRequest*) – Объект с полем “note” для текста заметки. * **subnet_service** – Сервис сканирования подсети. * **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешном добавлении заметки. * **Return type:** dict * **Raises:** **HTTPException** – Если устройство не найдено (status_code=404), заметка уже существует (status_code=400), или произошла внутренняя ошибка (status_code=500). ### api.v1.subnet.add_wifi_note(ssid: str, request: NoteRequest, translations: Translations = Depends(translations_dependency)) Добавляет заметку для сети Wi-Fi по SSID. Привязывает заметку к Wi-Fi сети, идентифицируемой по SSID. * **Parameters:** * **ssid** (*str*) – Идентификатор Wi-Fi сети. * **request** (*NoteRequest*) – Объект с полем “note” для текста заметки. * **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешном добавлении заметки. * **Return type:** dict * **Raises:** **HTTPException** – Если сеть не найдена (status_code=404), заметка уже существует (status_code=400), или произошла внутренняя ошибка (status_code=500). ### api.v1.subnet.connect_to_wifi(request: WifiConnectRequest, translations: Translations = Depends(translations_dependency)) Подключается к Wi-Fi сети по SSID и паролю. Выполняет подключение к указанной Wi-Fi сети с использованием предоставленных учетных данных. * **Parameters:** * **request** (*WifiConnectRequest*) – Объект с полями “ssid” и “password”. * **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешном подключении. * **Return type:** dict * **Raises:** **HTTPException** – Если подключение не удалось (status_code=400). ### api.v1.subnet.delete_note(mac: str, subnet_service: SubnetService = Depends(get_subnet_service), translations: Translations = Depends(translations_dependency)) Удаляет заметку для устройства по MAC-адресу. Удаляет привязанную заметку для указанного устройства. * **Parameters:** * **mac** (*str*) – MAC-адрес устройства. * **subnet_service** – Сервис сканирования подсети. * **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешном удалении заметки. * **Return type:** dict * **Raises:** **HTTPException** – Если устройство не найдено (status_code=404), заметка не существует (status_code=400), или произошла внутренняя ошибка (status_code=500). ### api.v1.subnet.delete_wifi_note(ssid: str, translations: Translations = Depends(translations_dependency)) Удаляет заметку для сети Wi-Fi по SSID. Удаляет привязанную заметку для указанной Wi-Fi сети. * **Parameters:** * **ssid** (*str*) – Идентификатор Wi-Fi сети. * **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешном удалении заметки. * **Return type:** dict * **Raises:** **HTTPException** – Если сеть не найдена (status_code=404), заметка не существует (status_code=400), или произошла внутренняя ошибка (status_code=500). ### api.v1.subnet.disconnect_from_wifi(request: WifiDisconnectRequest, translations: Translations = Depends(translations_dependency)) Отключается от Wi-Fi сети по указанному SSID. Выполняет отключение от указанной Wi-Fi сети. * **Parameters:** * **request** (*WifiDisconnectRequest*) – Объект с полем “ssid”. * **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешном отключении. * **Return type:** dict * **Raises:** **HTTPException** – Если отключение не удалось (status_code=400). ### api.v1.subnet.get_wifi_status(translations: Translations = Depends(translations_dependency)) Проверяет статус текущего подключения к Wi-Fi. Возвращает информацию о текущем состоянии подключения и SSID, если подключение активно. * **Parameters:** **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с ключами: : - ”status” (str): Состояние (“connected” или другое). - ”ssid” (str, optional): SSID текущей сети, если подключено. * **Return type:** dict * **Raises:** **HTTPException** – Если проверка статуса не удалась (status_code=400). ### api.v1.subnet.scan_subnet(request: SubnetScanRequest = Body(PydanticUndefined), subnet_service: SubnetService = Depends(get_subnet_service), translations: Translations = Depends(translations_dependency)) Сканирует локальную подсеть и возвращает данные об устройствах. Выполняет сканирование указанной подсети для обнаружения активных устройств. * **Parameters:** * **request** (*SubnetScanRequest*) – Объект с полем subnet. * **subnet_service** – Сервис сканирования подсети. * **translations** – Объект переводов для текущего языка. * **Returns:** Объект с результатами сканирования (устройства и их данные). * **Return type:** SubnetScanResult * **Raises:** **HTTPException** – Если произошла ошибка сканирования (status_code=500). ### api.v1.subnet.scan_wifi(timeout: int = 30, translations: Translations = Depends(translations_dependency)) Сканирует Wi-Fi точки доступа и возвращает данные о них. Выполняет сканирование доступных Wi-Fi сетей с указанным таймаутом. * **Parameters:** * **timeout** (*int* *,* *optional*) – Таймаут сканирования в секундах. По умолчанию 30. * **translations** – Объект переводов для текущего языка. * **Returns:** Объект с результатами сканирования (список Wi-Fi сетей). * **Return type:** WifiScanResult * **Raises:** **HTTPException** – Если произошла ошибка сканирования Wi-Fi (status_code=500). ### api.v1.subnet.update_note(mac: str, request: NoteRequest, subnet_service: SubnetService = Depends(get_subnet_service), translations: Translations = Depends(translations_dependency)) Обновляет заметку для устройства по MAC-адресу. Изменяет существующую заметку, привязанную к устройству. * **Parameters:** * **mac** (*str*) – MAC-адрес устройства. * **request** (*NoteRequest*) – Объект с полем “note” для нового текста заметки. * **subnet_service** – Сервис сканирования подсети. * **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешном обновлении заметки. * **Return type:** dict * **Raises:** **HTTPException** – Если устройство не найдено (status_code=404), заметка не существует (status_code=400), или произошла внутренняя ошибка (status_code=500). ### api.v1.subnet.update_wifi_note(ssid: str, request: NoteRequest, translations: Translations = Depends(translations_dependency)) Обновляет заметку для сети Wi-Fi по SSID. Изменяет существующую заметку, привязанную к Wi-Fi сети. * **Parameters:** * **ssid** (*str*) – Идентификатор Wi-Fi сети. * **request** (*NoteRequest*) – Объект с полем “note” для нового текста заметки. * **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешном обновлении заметки. * **Return type:** dict * **Raises:** **HTTPException** – Если сеть не найдена (status_code=404), заметка не существует (status_code=400), или произошла внутренняя ошибка (status_code=500).