pysaleryd package
Submodules
pysaleryd.client module
HRV System client
- class pysaleryd.client.Client(url: str, port: int, session: ClientSession, update_interval=30)[source]
Bases:
objectClient to manage communication with HRV
- property data
Get data from system
- async send_command(key: MessageTypeEnum, value: str | int)[source]
Send command to HRV
- property state
Get internal socket state
pysaleryd.const module
- class pysaleryd.const.DataKeyEnum(value)[source]
Bases:
StrEnumData key enumerator
- AIR_TEMPERATURE_AT_HEATER = '*TK'
- AIR_TEMPERATURE_SUPPLY = '*TC'
- BOOST_MODE_MINUTES = 'FH'
- CONTROL_SYSTEM_STATE = 'MP'
- CONTROL_SYSTEM_VERSION = '*SC'
- COOLING_MODE = 'MK'
- ERROR_FRAME_END = '*EZ'
- ERROR_FRAME_START = '*EA'
- ERROR_MESSAGE = '*EB'
- FAN_SPEED_EXHAUST = '*DB'
- FAN_SPEED_SUPPLY = '*DA'
- FILTER_MONTHS_LEFT = '*FL'
- FIREPLACE_MODE = 'MB'
- FIREPLACE_MODE_MINUTES = 'MC'
- HEATER_POWER_PERCENT = '*MJ'
- HEAT_EXCHANGER_ROTOR_PERCENT = '*XA'
- HEAT_EXCHANGER_ROTOR_RPM = '*XB'
- INSTALLER_EMAIL = 'IB'
- INSTALLER_NAME = 'IA'
- INSTALLER_PASSWORD = 'IP'
- INSTALLER_PHONE = 'IC'
- INSTALLER_WEBSITE = 'IE'
- MINUTES_LEFT_BOOST_MODE = '*FI'
- MINUTES_LEFT_FIREPLACE_MODE = '*ME'
- MODEL_NAME = '*SB'
- MODE_FAN = 'MF'
- MODE_HEATER = 'MH'
- MODE_HEATER_POWER_RATING = 'MG'
- MODE_TEMPERATURE = 'MT'
- NONE = ''
- PRODUCT_NUMBER = '*SA'
- TARGET_TEMPERATURE_COOL = 'TF'
- TARGET_TEMPERATURE_ECONOMY = 'TE'
- TARGET_TEMPERATURE_NORMAL = 'TD'
pysaleryd.helpers module
pysaleryd.skeleton module
This is a skeleton file that can serve as a starting point for a Python
console script. To run this script uncomment the following lines in the
[options.entry_points] section in setup.cfg:
console_scripts =
pysaleryd = pysaleryd.skeleton:run
Then run pip install . (or pip install -e . for editable mode)
which will install the command pysaleryd inside your current environment.
Besides console scripts, the header (i.e. until _logger…) of this file can
also be used as template for Python modules.
Note
This file can be renamed depending on your needs or safely removed if not needed.
References
- pysaleryd.skeleton.parse_args(args)[source]
Parse command line parameters
- Parameters:
args (List[str]) – command line parameters as list of strings (for example
["--help"]).- Returns:
command line parameters namespace
- Return type:
- pysaleryd.skeleton.run()[source]
Calls
main()passing the CLI arguments extracted fromsys.argvThis function can be used as entry point to create console scripts with setuptools.
pysaleryd.utils module
Utils
- class pysaleryd.utils.ErrorSystemProperty(key: DataKeyEnum, value: list[str] | None = None)[source]
Bases:
BaseSystemPropertyHRV System error property
- class pysaleryd.utils.IncomingMessage[source]
Bases:
objectIncoming message from system
- static from_str(msg: str) tuple[DataKeyEnum, str, MessageTypeEnum][source]
Parse message string
- Parameters:
msg (str) – raw message
- Raises:
ParseError – if parsing fails
- Returns:
parsed message key and value
- Return type:
- class pysaleryd.utils.OutgoingMessage(key: DataKeyEnum, value: str)[source]
Bases:
objectOutgoing message to system
- key: DataKeyEnum
- exception pysaleryd.utils.ParseError[source]
Bases:
BaseExceptionParse error. Raised when message parsing fails
- class pysaleryd.utils.SystemProperty(key: DataKeyEnum, value: int | str | None = None, min_value: int | str | None = None, max_value: int | str | None = None, *_args)[source]
Bases:
BaseSystemPropertyHRV System property with value, min, max
- classmethod from_str(key: DataKeyEnum, raw_value: str)[source]
Create instance from from string
pysaleryd.websocket module
Websocket client to listen and send messages to and from HRV system.
- class pysaleryd.websocket.Signal(value)[source]
Bases:
EnumWhat is the content of the callback.
- CONNECTION_STATE = 'state'
- DATA = 'data'
- class pysaleryd.websocket.State(value)[source]
Bases:
EnumState of the connection.
- NONE = ''
- RETRYING = 'retrying'
- RUNNING = 'running'
- STOPPED = 'stopped'
- class pysaleryd.websocket.WSClient(session: ClientSession, host: str, port: int, callback: Callable[[Signal, str | None, State | None], Awaitable[None]])[source]
Bases:
objectWebsocket Client