# pygruenbeck_cloud
<p align="center">
<a href="https://www.gruenbeck.com/" target="_blank"><img src="https://www.gruenbeck.com/typo3conf/ext/sitepackage_gruenbeck/Resources/Public/Images/gruenbeck-logo.svg" alt="Gruenbeck" /></a>
</p>
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pygruenbeck_cloud?logo=python)
[![PyPI release](https://img.shields.io/pypi/v/pygruenbeck_cloud)](https://pypi.org/project/pygruenbeck_cloud/)
![Release status](https://img.shields.io/pypi/status/pygruenbeck_cloud)
![Build Pipeline](https://img.shields.io/github/actions/workflow/status/p0l0/pygruenbeck_cloud/ci.yml)
[![codecov](https://codecov.io/gh/p0l0/pygruenbeck_cloud/branch/main/graph/badge.svg?token=V5C2O6SK2O)](https://codecov.io/gh/p0l0/pygruenbeck_cloud)
[![Checked with mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/)
[![Pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=f8b424)](https://github.com/pre-commit/pre-commit)
![License](https://img.shields.io/github/license/p0l0/pygruenbeck_cloud)
`pygruenbeck_cloud` is a Python 3 (>= 3.11) library to communicate with the Grünbeck Cloud based Water softeners.
It is intended to be used in custom_component [hagruenbeck_cloud](https://github.com/p0l0/hagruenbeck_cloud) for [Home Assistant](https://www.home-assistant.io/).
Implementation is based on the [ioBroker gruenbeck adapter](https://github.com/TA2k/ioBroker.gruenbeck) implementation.
### Available configuration parameter
| Parameter | Type | Description |
|-------------------------------|--------------|----------------------------------------------------------------------------------|
| dslt | boolean | Activation of daylight saving time |
| buzzer | boolean | Activation of signal on error |
| buzzer_from | time (HH:MM) | Signal from time |
| buzzer_to | time (HH:MM) | Signal from time |
| push_notification | boolean | Activation of push notifications |
| email_notification | boolean | Activation of email notifications |
| water_hardness_unit | integer | Water hardness Unit (1 = "°dH", 2 = "°fH", 3 = "°e", 4 = "mol/m³", 5 = "ppm") |
| raw_water_hardness | integer | Water hardness value |
| soft_water_hardness | integer | Softwater hardness value |
| mode | integer | Current operation mode (1 = "Eco", 2 = "Comfort", 3 = "Power", 4 = "Individual") |
| mode_individual_monday | integer | Individual mode for Monday |
| mode_individual_tuesday | integer | Individual mode for Tuesday |
| mode_individual_wednesday | integer | Individual mode for Wednesday |
| mode_individual_thursday | integer | Individual mode for Thursday |
| mode_individual_friday | integer | Individual mode for Friday |
| mode_individual_saturday | integer | Individual mode for Saturday |
| mode_individual_sunday | integer | Individual mode for Sunday |
| regeneration_mode | integer | Regeneration mode (0 = "Auto", 1 = "Fixed") |
| regeneration_time_monday_1 | string | Custom regeneration time for Monday 1 (Format: HH:MM) | |
| regeneration_time_monday_2 | string | Custom regeneration time for Monday 2 (Format: HH:MM) |
| regeneration_time_monday_3 | string | Custom regeneration time for Monday 3 (Format: HH:MM) |
| regeneration_time_tuesday_1 | string | Custom regeneration time for Tuesday 1 (Format: HH:MM) | |
| regeneration_time_tuesday_2 | string | Custom regeneration time for Tuesday 2 (Format: HH:MM) |
| regeneration_time_tuesday_3 | string | Custom regeneration time for Tuesday 3 (Format: HH:MM) |
| regeneration_time_wednesday_1 | string | Custom regeneration time for Wednesday 1 (Format: HH:MM) | |
| regeneration_time_wednesday_2 | string | Custom regeneration time for Wednesday 2 (Format: HH:MM) |
| regeneration_time_wednesday_3 | string | Custom regeneration time for Wednesday 3 (Format: HH:MM) |
| regeneration_time_thursday_1 | string | Custom regeneration time for Thursday 1 (Format: HH:MM) | |
| regeneration_time_thursday_2 | string | Custom regeneration time for Thursday 2 (Format: HH:MM) |
| regeneration_time_thursday_3 | string | Custom regeneration time for Thursday 3 (Format: HH:MM) |
| regeneration_time_friday_1 | string | Custom regeneration time for Friday 1 (Format: HH:MM) | |
| regeneration_time_friday_2 | string | Custom regeneration time for Friday 2 (Format: HH:MM) |
| regeneration_time_friday_3 | string | Custom regeneration time for Friday 3 (Format: HH:MM) |
| regeneration_time_saturday_1 | string | Custom regeneration time for Saturday 1 (Format: HH:MM) | |
| regeneration_time_saturday_2 | string | Custom regeneration time for Saturday 2 (Format: HH:MM) |
| regeneration_time_saturday_3 | string | Custom regeneration time for Saturday 3 (Format: HH:MM) |
| regeneration_time_sunday_1 | string | Custom regeneration time for Sunday 1 (Format: HH:MM) | |
| regeneration_time_sunday_2 | string | Custom regeneration time for Sunday 2 (Format: HH:MM) |
| regeneration_time_sunday_3 | string | Custom regeneration time for Sunday 3 (Format: HH:MM) |
| maintenance_interval | integer | Maintenance interval in days |
| installer_name | string | Installer name |
| installer_phone | string | Installer phone |
| installer_email | string | Installer email |
And these are additional parameter which are provided by the API, but their meaning and/or value is not known:
| Parameter | Type |
|------------------|-------|
| pntpsync | bool |
| pcfcontact | bool |
| pknx | bool |
| pmonflow | bool |
| pmondisinf | bool |
| pledatsaltpre | bool |
| prescaplimit | int |
| pcurrent | int |
| pload | int |
| pforcedregdist | int |
| pfreqregvalve | int |
| pfreqblendvalve | int |
| pledbright | int |
| pvolume | int |
| ppratesoftwater | float |
| pprateblending | float |
| pprateregwater | float |
| psetcapmo | int |
| psetcaptu | int |
| psetcapwe | int |
| psetcapth | int |
| psetcapfr | int |
| psetcapsa | int |
| psetcapsu | int |
| pnomflow | float |
| ppressurereg | int |
| pmonregmeter | int |
| pmonsalting | int |
| prinsing | float |
| pbackwash | int |
| pwashingout | int |
| pminvolmincap | float |
| pmaxvolmincap | float |
| pminvolmaxcap | float |
| pmaxvolmaxcap | float |
| pmaxdurdisinfect | int |
| pmaxresdurreg | int |
| planguage | int |
| pprogout | int |
| pprogin | int |
| ppowerfail | int |
| pmodedesinf | int |
| pled | int |
| pmonblend | int |
| poverload | int |
| pfreqregvalve2 | int |
Feel free to open an [issue](https://github.com/p0l0/pygruenbeck_cloud/issues) if you know the meaning of them and their possible values.
Raw data
{
"_id": null,
"home_page": "https://github.com/p0l0/pygruenbeck_cloud",
"name": "pygruenbeck-cloud",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": "",
"keywords": "gruenbeck,gruenbeck-cloud,home,automation",
"author": "Marco Neumann",
"author_email": "pygruenbeck_cloud@binware.dev",
"download_url": "https://files.pythonhosted.org/packages/78/d5/840c43919021637957fe12617b5bb22fe269f49ad5ed200b8a1ed195c1cc/pygruenbeck_cloud-0.1.0.tar.gz",
"platform": "any",
"description": "# pygruenbeck_cloud\n\n<p align=\"center\">\n <a href=\"https://www.gruenbeck.com/\" target=\"_blank\"><img src=\"https://www.gruenbeck.com/typo3conf/ext/sitepackage_gruenbeck/Resources/Public/Images/gruenbeck-logo.svg\" alt=\"Gruenbeck\" /></a>\n</p>\n\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pygruenbeck_cloud?logo=python)\n[![PyPI release](https://img.shields.io/pypi/v/pygruenbeck_cloud)](https://pypi.org/project/pygruenbeck_cloud/)\n![Release status](https://img.shields.io/pypi/status/pygruenbeck_cloud)\n![Build Pipeline](https://img.shields.io/github/actions/workflow/status/p0l0/pygruenbeck_cloud/ci.yml)\n[![codecov](https://codecov.io/gh/p0l0/pygruenbeck_cloud/branch/main/graph/badge.svg?token=V5C2O6SK2O)](https://codecov.io/gh/p0l0/pygruenbeck_cloud)\n[![Checked with mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/)\n[![Pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=f8b424)](https://github.com/pre-commit/pre-commit)\n![License](https://img.shields.io/github/license/p0l0/pygruenbeck_cloud)\n\n`pygruenbeck_cloud` is a Python 3 (>= 3.11) library to communicate with the Gr\u00fcnbeck Cloud based Water softeners.\n\nIt is intended to be used in custom_component [hagruenbeck_cloud](https://github.com/p0l0/hagruenbeck_cloud) for [Home Assistant](https://www.home-assistant.io/).\n\nImplementation is based on the [ioBroker gruenbeck adapter](https://github.com/TA2k/ioBroker.gruenbeck) implementation.\n\n### Available configuration parameter\n\n| Parameter | Type | Description |\n|-------------------------------|--------------|----------------------------------------------------------------------------------|\n| dslt | boolean | Activation of daylight saving time |\n| buzzer | boolean | Activation of signal on error |\n| buzzer_from | time (HH:MM) | Signal from time |\n| buzzer_to | time (HH:MM) | Signal from time |\n| push_notification | boolean | Activation of push notifications |\n| email_notification | boolean | Activation of email notifications |\n| water_hardness_unit | integer | Water hardness Unit (1 = \"\u00b0dH\", 2 = \"\u00b0fH\", 3 = \"\u00b0e\", 4 = \"mol/m\u00b3\", 5 = \"ppm\") |\n| raw_water_hardness | integer | Water hardness value |\n| soft_water_hardness | integer | Softwater hardness value |\n| mode | integer | Current operation mode (1 = \"Eco\", 2 = \"Comfort\", 3 = \"Power\", 4 = \"Individual\") |\n| mode_individual_monday | integer | Individual mode for Monday |\n| mode_individual_tuesday | integer | Individual mode for Tuesday |\n| mode_individual_wednesday | integer | Individual mode for Wednesday |\n| mode_individual_thursday | integer | Individual mode for Thursday |\n| mode_individual_friday | integer | Individual mode for Friday |\n| mode_individual_saturday | integer | Individual mode for Saturday |\n| mode_individual_sunday | integer | Individual mode for Sunday |\n| regeneration_mode | integer | Regeneration mode (0 = \"Auto\", 1 = \"Fixed\") |\n| regeneration_time_monday_1 | string | Custom regeneration time for Monday 1 (Format: HH:MM) | |\n| regeneration_time_monday_2 | string | Custom regeneration time for Monday 2 (Format: HH:MM) |\n| regeneration_time_monday_3 | string | Custom regeneration time for Monday 3 (Format: HH:MM) |\n| regeneration_time_tuesday_1 | string | Custom regeneration time for Tuesday 1 (Format: HH:MM) | |\n| regeneration_time_tuesday_2 | string | Custom regeneration time for Tuesday 2 (Format: HH:MM) |\n| regeneration_time_tuesday_3 | string | Custom regeneration time for Tuesday 3 (Format: HH:MM) |\n| regeneration_time_wednesday_1 | string | Custom regeneration time for Wednesday 1 (Format: HH:MM) | |\n| regeneration_time_wednesday_2 | string | Custom regeneration time for Wednesday 2 (Format: HH:MM) |\n| regeneration_time_wednesday_3 | string | Custom regeneration time for Wednesday 3 (Format: HH:MM) |\n| regeneration_time_thursday_1 | string | Custom regeneration time for Thursday 1 (Format: HH:MM) | |\n| regeneration_time_thursday_2 | string | Custom regeneration time for Thursday 2 (Format: HH:MM) |\n| regeneration_time_thursday_3 | string | Custom regeneration time for Thursday 3 (Format: HH:MM) |\n| regeneration_time_friday_1 | string | Custom regeneration time for Friday 1 (Format: HH:MM) | |\n| regeneration_time_friday_2 | string | Custom regeneration time for Friday 2 (Format: HH:MM) |\n| regeneration_time_friday_3 | string | Custom regeneration time for Friday 3 (Format: HH:MM) |\n| regeneration_time_saturday_1 | string | Custom regeneration time for Saturday 1 (Format: HH:MM) | |\n| regeneration_time_saturday_2 | string | Custom regeneration time for Saturday 2 (Format: HH:MM) |\n| regeneration_time_saturday_3 | string | Custom regeneration time for Saturday 3 (Format: HH:MM) |\n| regeneration_time_sunday_1 | string | Custom regeneration time for Sunday 1 (Format: HH:MM) | |\n| regeneration_time_sunday_2 | string | Custom regeneration time for Sunday 2 (Format: HH:MM) |\n| regeneration_time_sunday_3 | string | Custom regeneration time for Sunday 3 (Format: HH:MM) |\n| maintenance_interval | integer | Maintenance interval in days |\n| installer_name | string | Installer name |\n| installer_phone | string | Installer phone |\n| installer_email | string | Installer email |\n\nAnd these are additional parameter which are provided by the API, but their meaning and/or value is not known:\n\n| Parameter | Type |\n|------------------|-------|\n| pntpsync | bool |\n| pcfcontact | bool |\n| pknx | bool |\n| pmonflow | bool |\n| pmondisinf | bool |\n| pledatsaltpre | bool |\n| prescaplimit | int |\n| pcurrent | int |\n| pload | int |\n| pforcedregdist | int |\n| pfreqregvalve | int |\n| pfreqblendvalve | int |\n| pledbright | int |\n| pvolume | int |\n| ppratesoftwater | float |\n| pprateblending | float |\n| pprateregwater | float |\n| psetcapmo | int |\n| psetcaptu | int |\n| psetcapwe | int |\n| psetcapth | int |\n| psetcapfr | int |\n| psetcapsa | int |\n| psetcapsu | int |\n| pnomflow | float |\n| ppressurereg | int |\n| pmonregmeter | int |\n| pmonsalting | int |\n| prinsing | float |\n| pbackwash | int |\n| pwashingout | int |\n| pminvolmincap | float |\n| pmaxvolmincap | float |\n| pminvolmaxcap | float |\n| pmaxvolmaxcap | float |\n| pmaxdurdisinfect | int |\n| pmaxresdurreg | int |\n| planguage | int |\n| pprogout | int |\n| pprogin | int |\n| ppowerfail | int |\n| pmodedesinf | int |\n| pled | int |\n| pmonblend | int |\n| poverload | int |\n| pfreqregvalve2 | int |\n\nFeel free to open an [issue](https://github.com/p0l0/pygruenbeck_cloud/issues) if you know the meaning of them and their possible values.\n",
"bugtrack_url": null,
"license": "MIT License",
"summary": "Python Library to communicate with Gr\u00fcnbeck Cloud based Water softeners",
"version": "0.1.0",
"project_urls": {
"Download": "https://github.com/p0l0/pygruenbeck_cloud/tarball/0.1.0",
"Homepage": "https://github.com/p0l0/pygruenbeck_cloud"
},
"split_keywords": [
"gruenbeck",
"gruenbeck-cloud",
"home",
"automation"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "07c3e10943eacf0eeae040af6de2ea0f32e233bf3b774a36491f2fea978c4e53",
"md5": "b021eecfd9f15b9ecc07299dc4eef5ba",
"sha256": "24f90ae4eae5076c16fb0a54c2479b5a28e9ac7731fe63daa31fdf196ad030ed"
},
"downloads": -1,
"filename": "pygruenbeck_cloud-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b021eecfd9f15b9ecc07299dc4eef5ba",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 18920,
"upload_time": "2024-02-03T08:49:07",
"upload_time_iso_8601": "2024-02-03T08:49:07.126238Z",
"url": "https://files.pythonhosted.org/packages/07/c3/e10943eacf0eeae040af6de2ea0f32e233bf3b774a36491f2fea978c4e53/pygruenbeck_cloud-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "78d5840c43919021637957fe12617b5bb22fe269f49ad5ed200b8a1ed195c1cc",
"md5": "607fb02f4661f7d0ab7c57b843969d4a",
"sha256": "023a23701ff30e0befb9def8157a6d859afcc8eb301996eee333b986da96feae"
},
"downloads": -1,
"filename": "pygruenbeck_cloud-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "607fb02f4661f7d0ab7c57b843969d4a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 21066,
"upload_time": "2024-02-03T08:49:08",
"upload_time_iso_8601": "2024-02-03T08:49:08.193460Z",
"url": "https://files.pythonhosted.org/packages/78/d5/840c43919021637957fe12617b5bb22fe269f49ad5ed200b8a1ed195c1cc/pygruenbeck_cloud-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-03 08:49:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "p0l0",
"github_project": "pygruenbeck_cloud",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"tox": true,
"lcname": "pygruenbeck-cloud"
}