2025-06-09 10:17:12 +05:00
|
|
|
from pydantic import BaseModel
|
|
|
|
|
from typing import Optional, List
|
|
|
|
|
|
|
|
|
|
class Device(BaseModel):
|
|
|
|
|
ip: str
|
|
|
|
|
mac: Optional[str] = None
|
|
|
|
|
hostname: Optional[str] = None
|
|
|
|
|
vendor: Optional[str] = None
|
2025-06-10 16:19:09 +05:00
|
|
|
open_ports: List[str] = []
|
|
|
|
|
status: str
|
2025-06-09 10:17:12 +05:00
|
|
|
last_seen: Optional[str] = None
|
2025-06-10 16:19:09 +05:00
|
|
|
note: Optional[str] = None
|
2025-06-09 10:17:12 +05:00
|
|
|
|
|
|
|
|
class SubnetScanResult(BaseModel):
|
2025-06-10 16:19:09 +05:00
|
|
|
devices: List[Device] = []
|