Ariston NET Remotethermo integration
Project description
Ariston NET remotethermo API
Thin integration is a side project which works only with 1 zone climate configured. It logs in to Ariston website (https://www.ariston-net.remotethermo.com) and fetches/sets data on that site. You are free to modify and distribute it. It is distributed 'as is' with no liability for possible damage.
API and Home Assistant
API was created in order to be used by Home Assistant officially. Example of API use can be found:
API slow nature
API connect to the website, which then connect via gateway to the boiler. The bus has problem handling high bandwidth and thus requests are sent after some specific periods of time. Periods were selected based on tests where not much of interfence was seen when using Ariston Net application or Google Home application or using https://www.ariston-net.remotethermo.com. Still interfences occaionally take place. It is normal to occasionally get connection errors due to devices chain involved.
API was tested on and works with:
- Ariston Clas Evo
- Ariston Genus One with Ariston BCH cylinder
- Ariston Nimbus Flex You may check possible support of your boiler by logging into https://www.ariston-net.remotethermo.com and if climate and water heater parts (like temperatures) are available on the home page, then intergation should potentially work.
API was tested and does not work with:
- Ariston Velis Wifi Website https://www.ariston-net.remotethermo.com does not provide required data for this kind of a boiler.
API use
API was developed as AristonHandler class, which can be imported from the module. Use PIP to install the module:
pip install aristonremotethermo
Import api in python script:
from aristonremotethermo.ariston import AristonHandler
API dependencies
requests- for HTTPS requests.
API start communication
from aristonremotethermo.ariston import AristonHandler
ApiInstance = AristonHandler(
username='username',
password='password',
sensors=list_of_sensors,
units=units,
store_file=False,
store_folder="/config/custom_components/ariston"
)
ApiInstance.start()
username- mandatory usernamepassword- mandatory passwordsensors-listof sensor names to be fetched by API (seeApiInstance.supported_sensors_getfor supported list of sensors by API). Used to filter out requests and only use required onces thus reducing cycle to fetch all of the data.retries-intnumber of retries to set the data until successful result. Default is5. Useful in case of unstable connections.polling-floatpoling rate. Default is1. With increase of the value all timers to fetch or set the data are increased by corresponding value.store_file-boolif to store files with reply data and some internal dictionaries for troubleshooting purposes. Default isFalse.store_folder-strpath to the folder that shall be used for storing of files. Default is location of API.units-strvalue ofmetric,imperialorauto. Default ismetric. Valueautoinsterts additional request to fetch the data thus reducing cycle to fetch all of the data.ch_and_dhw-boolif CH and DHW can heat independently (often there is one heating element and valve controls which element is being heated). Default isFalse.dhw_unknown_as_on-boolof how to treat unknown value ofdhw_flamesensor by the API. The value is actually never reported and is only approximated by the api and in one of the cases (CH is ON) the value shall be treated based on this parameter. Default isTrue
API stop communication
ApiInstance.stop()
API properties
ApiInstance.available- returnsboolif API assumes connection to be working or not.ApiInstance.ch_available- returnsboolif API assumes connection to be working or not and if data is available to assume CH as working.ApiInstance.dhw_available- returnsboolif API assumes connection to be working or not and if data is available to assume DHW as working.ApiInstance.version- returnsstrof API version.ApiInstance.supported_sensors_get- returnssetof supported sensor names by the API that can be potentially fetched.ApiInstance.supported_sensors_set- returnssetof supported sensor names by the API that can be potentially set.ApiInstance.sensor_values- returnsdictof sensors with sensor names as keys and value being dictionary with keysvalue(for the fetched value) andunits(for used units).ApiInstance.supported_sensors_set_values- returnsdictof sensors that support change of data as keys (seesupported_sensors_set). The value of the dictionary is either set with supported values or another dictionary with keysmin(minimum value),max(maximum value) andstep(value step). The provided data is available based on fetched data, meaning occasionally it might be empty.ApiInstance.setting_data- returnsboolif setting of data by the API is ongoing.
API changing data on the server
ApiInstance.set_http_data(parameter1=value1,parameter2=value2,...)
Method accepts parameters to be changed (see supported_sensors_set) according to supported_sensors_set_values.
API changing data example
ApiInstance.set_http_data("mode"="winter","ch_mode"="scheduled")
API supported sensors
API cannot identify which senors shall be in fact supported by the heater model and thus invalid or empty values might be expected
account_ch_gas- gas use summary for CH.account_ch_electricity- electricity use summary for CH.account_dhw_gas- gas use summary for DHW.account_dhw_electricity- electricity use summary for DHW.ch_antifreeze_temperature- CH antifreeze temperature.ch_detected_temperature- temperature measured by thermostat.ch_mode- mode of CH (manualorscheduledand others).ch_comfort_temperature- CH comfort temperature.ch_economy_temperature- CH economy temperature.ch_set_temperature- CH temperature currently used as target.ch_program- CH Time Program.dhw_program- DHW Time Program.dhw_comfort_function- DHW comfort function.dhw_mode- mode of DHW.dhw_comfort_temperature- DHW storage comfort temperature.dhw_economy_temperature- DHW storage economy temperature.dhw_set_temperature- DHW temperature currently used as target.dhw_storage_temperature- DHW storage temperature.dhw_thermal_cleanse_cycle- DHW thermal cleanse cycle.electricity_cost- Electricity cost.errors-listof active errors (no actual errors to test on).errors_count- active errors (no actual errors to test on).gas_type- Gas type.gas_cost- Gas cost.heating_last_24h- energy use for heating in last 24 hours as summary.heating_last_30d- energy use for heating in last 7 days as summary.heating_last_365d- energy use for heating in last 30 days as summary.heating_last_7d- energy use for heating in last 365 days as summary.heating_last_24h_list- energy use for heating in last 24 hours asdictof different periods.heating_last_30d_list- energy use for heating in last 7 days asdictof different periods.heating_last_365d_list- energy use for heating in last 30 days asdictof different periods.heating_last_7d_list- energy use for heating in last 365 days asdictof different periods.mode- mode of boiler (offorsummerorwinterand others).outside_temperature- outside temperature.signal_strength- Wifi signal strength.units- Units of measurement.water_last_24h- energy use for water in last 24 hours as summary.water_last_30d- energy use for water in last 7 days as summary.water_last_365d- energy use for water in last 30 days as summary.water_last_7d- energy use for water in last 365 days as summary.water_last_24h_list- energy use for water in last 24 hours asdictof different periods.water_last_30d_list- energy use for water in last 7 days asdictof different periods.water_last_365d_list- energy use for water in last 30 days asdictof different periods.water_last_7d_list- energy use for water in last 365 days asdictof different periods.ch_auto_function- CH AUTO function status.ch_flame- CH heating ongoing.ch_pilot- CH Pilot mode.dhw_flame- DHW heating ongoing. This parameter is not reported by boilers and is approximated based on multiple parameters.dhw_thermal_cleanse_function- DHW thermal cleanse function.flame- CH and/or DHW heating ongoing.heat_pump- Heating pump status.holiday_mode- Holiday mode status.internet_time- Internet time status.internet_weather- Internet weather status.update- API update status. API specific sensor, which fetches latest version from github. Fetching from github is performed if sensorupdateoronline_versionin the list of sensors during class instance initiation.online_version- API online version. API specific sensor, which fetches latest version from github. Fetching from github is performed if sensorupdateoronline_versionin the list of sensors during class instance initiation.
API supported parameters to be changed
API cannot identify which parameters shall be in fact supported by the heater model and thus invalid or empty values might be expected in supported_sensors_set_values
All values expected to be a string
mode- mode of boiler (offorsummerorwinterandheating_only).internet_time- turn off and on sync with internet time (trueorfalse).internet_weather- turn off and on fetching of weather from internet (trueorfalse).ch_mode- mode of CH (manualorscheduled).ch_auto_function- turn off and on Auto function (trueorfalse).ch_comfort_temperature- CH comfort temperature.ch_economy_temperature- CH economy temperature.ch_set_temperature- CH temperature currently used as target.dhw_mode- mode of DHW (manualorscheduled).dhw_comfort_temperature- DHW storage comfort temperature.dhw_economy_temperature- DHW storage economy temperature.dhw_set_temperature- DHW temperature currently used as target.dhw_thermal_cleanse_function- DHW thermal cleanse function enabled (trueorfalse).dhw_thermal_cleanse_cycle- DHW thermal cleanse cycle.dhw_comfort_function- DHW comfort function (disabledortime_basedoralways_active).units- Units of measurement (imperialormetric).
Version 1.0.4
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aristonremotethermo-1.0.4.tar.gz.
File metadata
- Download URL: aristonremotethermo-1.0.4.tar.gz
- Upload date:
- Size: 27.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3404bb13197fc67203616a46cf8540d548ce731df0a7f76c1bf9e66e199b43b5
|
|
| MD5 |
aca196e95a1fa1f2678c5dfc8b065111
|
|
| BLAKE2b-256 |
188c588fa448e9da814bd215e62b90ce05e6ef746246480488c370a226c914f2
|
File details
Details for the file aristonremotethermo-1.0.4-py3-none-any.whl.
File metadata
- Download URL: aristonremotethermo-1.0.4-py3-none-any.whl
- Upload date:
- Size: 25.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fd115d1a8c8efa5a1115294b7c5a86db05787b617819e2e50654dc4c8c32f7fa
|
|
| MD5 |
b6c6d06d8b95629d477f262b42595a12
|
|
| BLAKE2b-256 |
2efc3961d55ac6e1c317b5001b9515a191aa26b058672e9fb9da628224fcb221
|