Rockbox open source high quality audio player as a Music Player Daemon
mpris
rockbox
mpd
libadwaita
audio
rust
zig
deno
1"""System-level info: version, runtime status."""
2
3from __future__ import annotations
4
5from ..transport import HttpTransport
6from ..types import SystemStatus
7
8
9class SystemApi:
10 def __init__(self, http: HttpTransport) -> None:
11 self._http = http
12
13 async def version(self) -> str:
14 data = await self._http.execute("query Version { rockboxVersion }")
15 return str(data["rockboxVersion"])
16
17 async def status(self) -> SystemStatus:
18 data = await self._http.execute(
19 "query GlobalStatus { globalStatus { "
20 "resumeIndex resumeCrc32 resumeElapsed resumeOffset "
21 "runtime topruntime dircacheSize "
22 "lastScreen viewerIconCount lastVolumeChange } }"
23 )
24 return SystemStatus.model_validate(data["globalStatus"])