PySMA Main Class
SMA WebConnect library for Python.
See: http://www.sma.de/en/products/monitoring-control/webconnect.html
Source: http://www.github.com/kellerza/pysma
- class pysma.SMA(session: ClientSession, url: str, password: Optional[str] = None, group: str = 'user', uid: Optional[str] = None, lang: str = 'en-US')
Bases:
object
Class to connect to the SMA webconnect module and read parameters.
Init SMA connection.
- Parameters:
session (ClientSession) – aiohttp client session
url (str) – Url or IP address of device
password (str, optional) – Password to use during login. Defaults to None.
group (str, optional) – Username to use during login. Defaults to “user”.
uid (str, optional) – uid used for data extraction. Defaults to None.
lang (str, optional) – Language code of file to retrieve. Defaults to “en-US”.
- Raises:
KeyError – User was not in USERS
- async close_session() None
Close the session login.
- async device_info() dict
Read device info and return the results.
- Returns:
dict containing serial, name, type, manufacturer and sw_version
- Return type:
dict
- async get_sensors() Sensors
Get the sensors that are present on the device.
- Returns:
Sensors object containing Sensor objects
- Return type:
- async new_session() bool
Establish a new session.
- Raises:
SmaAuthenticationException – Authentication failed
- Returns:
authentication successful
- Return type:
bool
- async read(sensors: Sensors) bool
Read a set of keys.
- Parameters:
sensors (Sensors) – Sensors object containing Sensor objects to read
- Returns:
reading was successful
- Return type:
bool
- async read_dash_logger() dict
Read the dash loggers.
- Returns:
Dictionary containing loggers returned by device.
- Return type:
dict
- async read_logger(log_id: int, start: int, end: int) list
Read a logging key and return the results.
- Parameters:
log_id (int) – The ID of the log to read. totWhOut5min: 28672 totWhOutDaily: 28704 GridMsTotWhOutDaily: 28752 GridMsTotWhInDaily: 28768 ObjLogBatCha: 28816 totWhIn5min: 28736 totWhInDaily: 28768 ObjLogBatChrg: 29344 ObjLogBatDsch: 29360
start (int) – Start timestamp in seconds.
end (int) – End timestamp in seconds.
- Returns:
The log entries returned by the device
- Return type:
list