Изменение сканирования подсети и точек доступа wi-fi в связи с последними изменениями на сервере
This commit is contained in:
parent
990a7594fc
commit
f0d5481dfe
4 changed files with 188 additions and 501 deletions
|
|
@ -7,18 +7,22 @@ from services.wifi_service import WifiService
|
|||
from services.connect_service import WifiConnectionService
|
||||
from utils.i18n import get_translations, _
|
||||
from babel.support import Translations
|
||||
import logging
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
logging.basicConfig(level=logging.INFO)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@router.post("/devices", response_model=SubnetScanResult)
|
||||
def scan_subnet(request: SubnetScanRequest = Body(...), translations: Translations = Depends(get_translations("api_v1"))):
|
||||
"""Сканирует локальную подсеть и возвращает данные об устройствах.
|
||||
|
||||
Выполняет сканирование указанной подсети для обнаружения активных устройств
|
||||
с возможностью проверки указанных портов.
|
||||
Выполняет сканирование указанной подсети для обнаружения активных устройств.
|
||||
|
||||
Args:
|
||||
request (SubnetScanRequest): Объект с полями subnet и ports.
|
||||
request (SubnetScanRequest): Объект с полем subnet.
|
||||
translations: Объект переводов для текущего языка.
|
||||
|
||||
Returns:
|
||||
|
|
@ -29,10 +33,15 @@ def scan_subnet(request: SubnetScanRequest = Body(...), translations: Translatio
|
|||
"""
|
||||
try:
|
||||
subnet_service = SubnetService()
|
||||
subnet = request.subnet or "192.168.1.0/24"
|
||||
# Если subnet пустая строка, определяем автоматически
|
||||
subnet = request.subnet.strip() if request.subnet else None
|
||||
logger.info(f"Requested subnet scan for: {subnet or 'auto-detected'}")
|
||||
result = subnet_service.scan_subnet(subnet)
|
||||
if not result.devices:
|
||||
logger.warning(f"No devices found in subnet {subnet or 'auto-detected'}")
|
||||
return result
|
||||
except Exception as e:
|
||||
logger.error(f"Error in scan_subnet: {str(e)}")
|
||||
raise HTTPException(status_code=500, detail=translations.gettext("Ошибка сканирования: {error}").format(error=str(e)))
|
||||
|
||||
@router.get("/wifi", response_model=WifiScanResult)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue