Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 26 additions & 10 deletions airos/data.py
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,14 @@ class GPSData:
fix: int


@dataclass
class UnmsStatus:
"""Leaf definition."""

status: int
timestamp: str | None = None


@dataclass
class Remote:
"""Leaf definition."""
Expand Down Expand Up @@ -248,7 +256,7 @@ class Remote:
ip6addr: list[str]
gps: GPSData
oob: bool
unms: dict[str, Any]
unms: UnmsStatus
airview: int
service: ServiceTime

Expand All @@ -259,9 +267,23 @@ def __pre_deserialize__(cls, d: dict[str, Any]) -> dict[str, Any]:
return d


@dataclass
class Disconnected:
"""Leaf definition for disconnected devices."""

mac: str
lastip: str
signal: int
hostname: str
platform: str
reason_code: int
disconnect_duration: int
airos_connected: bool = False # Mock add to determine Disconnected vs Station


@dataclass
class Station:
"""Leaf definition."""
"""Leaf definition for connected/active devices."""

mac: str
lastip: str
Expand Down Expand Up @@ -295,6 +317,7 @@ class Station:
airmax: Airmax
last_disc: int
remote: Remote
airos_connected: bool = True # Mock add to determine Disconnected vs Station


@dataclass
Expand Down Expand Up @@ -334,7 +357,7 @@ class Wireless:
polling: Polling
count: int
sta: list[Station]
sta_disconnected: list[Any]
sta_disconnected: list[Disconnected]

@classmethod
def __pre_deserialize__(cls, d: dict[str, Any]) -> dict[str, Any]:
Expand Down Expand Up @@ -395,13 +418,6 @@ class NtpClient:
pass


@dataclass
class UnmsStatus:
"""Leaf definition."""

status: int


@dataclass
class GPSMain:
"""Leaf definition."""
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "airos"
version = "0.1.7"
version = "0.1.8"
license = "MIT"
description = "Ubiquity airOS module(s) for Python 3."
readme = "README.md"
Expand Down