System
Endpoint group client.system (SystemEndpoints).
API Endpoints to send and retrieve the system data.
Example
client = KebaKeEnergyAPI(
host="ap4400.local",
username="test",
password="test",
ssl=True,
skip_ssl_verification=True
)
await client.system.get_info()
get_positions
async def get_positions() -> Position
Get the number of installed devices e.g. heat circuit, solar circuit, etc.
Returns
Position: The number of installed devices per device type
get_info
async def get_info() -> dict[str, Any]
Get the system information.
Returns
dict[str, Any]: A dictionary with system information
get_hmi_info
async def get_hmi_info() -> dict[str, Any]
Get the Web HMI information.
Returns
dict[str, Any]: A dictionary with Web HMI information
get_device_info
async def get_device_info() -> dict[str, Any]
Get the control unit information.
Returns
dict[str, Any]: A dictionary with control unit information
get_number_of_buffer_tanks
async def get_number_of_buffer_tanks() -> int
Get the number of buffer tanks.
Returns
int: Number of installed buffer tanks
get_number_of_hot_water_tanks
async def get_number_of_hot_water_tanks() -> int
Get the number of hot water tanks.
Returns
int: Number of installed hot water tanks
get_number_of_heat_pumps
async def get_number_of_heat_pumps() -> int
Get the number of heat pumps.
Returns
int: Number of installed heat pumps
get_number_of_heating_circuits
async def get_number_of_heating_circuits() -> int
Get the number of heating circuits.
Returns
int: Number of installed heating circuits
get_number_of_external_heat_sources
async def get_number_of_external_heat_sources() -> int
Get the number of external heat sources.
Returns
int: Number of installed external heat sources
get_number_of_switch_valves
async def get_number_of_switch_valves() -> int
Get the number of switch valves.
Returns
int: Number of installed switch valves
has_photovoltaics
async def has_photovoltaics(*, human_readable: bool = True) -> int | str
Check if photovoltaics is available.
Parameters
- human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
has_outdoor_temperature
async def has_outdoor_temperature(*, human_readable: bool = True) -> int | str
Check if outdoor temperature sensor is available.
Parameters
- human_readable
bool(default:True): Return a human-readable string
Returns
int | str: 0 (OFF) / 1 (ON)
get_outdoor_temperature
async def get_outdoor_temperature() -> float
Get the outdoor temperature.
Returns
float: Temperature in °C
get_operating_mode
async def get_operating_mode(*, human_readable: bool = True) -> int | str
Get the operating mode from the system.
Parameters
- human_readable
bool(default:True): Return a human-readable string
Returns
int | str: -1(SETUP) / (0) STANDBY / (1) SUMMER / (2) AUTO_HEAT / (3) AUTO_COOL / (4) AUTO
set_operating_mode
async def set_operating_mode(mode: int | str) -> None
Set the operating mode from the system.
Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.
Parameters
- mode
int | str: Set the mode as integer or string (human-readable) e.g. 0 or STANDBY
get_cpu_usage
async def get_cpu_usage() -> float
Get the CPU usage.
Returns
float: CPU usage in percent
get_webview_cpu_usage
async def get_webview_cpu_usage() -> float
Get the webview CPU usage.
Returns
float: Webview CPU usage in percent
get_webserver_cpu_usage
async def get_webserver_cpu_usage() -> float
Get the webserver CPU usage.
Returns
float: Webserver CPU usage in percent
get_control_cpu_usage
async def get_control_cpu_usage() -> float
Get the control CPU usage.
Returns
float: Control CPU usage in percent
get_ram_usage
async def get_ram_usage() -> int
Get the RAM usage.
Returns
int: RAM usage in kilobyte
get_free_ram
async def get_free_ram() -> int
Get the free RAM.
Returns
int: Free RAM in kilobyte
get_timezone
async def get_timezone() -> str
Get the timezone.
Returns
str: Timezone as name e.g. Europe/Vienna

