1
mirror of https://github.com/home-assistant/core synced 2024-09-06 10:29:55 +02:00
ha-core/homeassistant/components/omnilogic/manifest.json

9 lines
251 B
JSON
Raw Normal View History

Add Omnilogic integration (#40474) * Scaffold * Added the en translation * Modified the name * Basic functionality for config flow. * Pulled in enough to validate config flow works. * Update manifest.json * initial data polling (water and air temp sensors) * Adding sensors, debugging update function * polling updates working * support for new data format from library * Updated entity_id, friendly name, conversion for ppm, attributes for hayward display units, MSPSystemID and component systemID * Fixed errors for PR * clean up * Add login exc, check if configured, test login. * Remove debug print. * Black formatting, ran isort, update requirements. * Updated w isort. fix flake8 failures. * Fix flake8 errors * Fixed self.attrs to remove invalid self._ values - small change * Missed on small change - fixing attributes * Updated naming, updated unit of measure, updated icon, bumped omnilog… * Updated to fix flake8 issues in __init__.py and config_flow.py * Updated test_config_flow.py to pass, updated config_flow.py to correct errors in test * Remove comments in preparation for PR * update .covezragerc * Formatting fix * Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors. * Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors. * Added CSAD sensors for pools that have them. * Added CSAD sensors for pools that have them. * Fixed CSAD to not create if blank or don't exist, removed broad except usage to pass linting. * Updated entity naming convention. Fixed linting issues. * Added device association to the back yard / omnilogic system * Removed .0 from ppm values when returning imperial values for salt sensor * Updated to return state = None for water temp when pump is off, handled Chlorinator operatingMode = 2, and added PlatformNotReady check * Corrected exception from Omnilogic library * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Removed nested_lookup dependency, bumped omnilogic.py to 0.3.8. * Fixed lint error * Added logging for sensor creation. * Fixed linting errors with logging. * Fixed explicit chaining of raised error. Fixed issue with alarm sensor. * Fixed manifest.json based on feedback. * Fixed self.attrs, should_poll, CoordinatorEntity, SCAN_INTERVAL from comments in PR. * Addressed unique_id, moved data update coordinator, addressed minor other issues from testing * Created main OmniLogic entity for common items, reworked DataUpdateCoordinator to it's own class. * Addressed config_schema not used in __init__.py * Fixed linting issues. * Addressed several comments, still todo - separate sensor classes. * Split the Omnilogic Sensors into separate logical classes for simpler logic. * Fixed snake case lint error for AddAlarms (to add_alarms) * Addressed config_flow issues from comments. * Changed addressed ConfigNotReady issue from comments. * Updated strings.json and generated corrected en.json with translations. * Updated en.json to standard generated file. * Added config_flow tests and updated issue with config_flow on cannot_connect * Added test case for incomplete information entered. * Compressed logic in the sensor classes to reduce duplication. * Updated strings.json for polling_interval, added generic exception handling on config flow. * Removed omnilogic from the .coveragerc omit file. * Updated test_config_flow to follow recommended pattern. * Excluded sensor.py from test coverage tests. * Corected minor issues in test_config_flow from comments * Fixed linting issues on last commits * Fixed linting issues. * Corrected issue when temp state is not available from Omnilogic * Added omnililogic_common.py from .coveragerc to bypass test coverage check. * Return false on Login Exception, handle OmniLogicException in config_flow and in tests. * Handle all exceptions and in config_flow and tests, clarified test naming. * Broke out test cases per comments. * Regenerated en.json file. * Addressed changes from comments in PR. * Added session and bumped API to 0.4.0, addressed other comments from PR. * Addressed entitydata (missed earlier). * Fixed pylint issue * Added test case for options flow in test_config_flow.py * Removed super() and used self when calling methods in current class. * Addressed comments in PR. * Addressed comments in PR. * Updated translations file. * Rewrote data coordinator to output dict for easy searching. * Updated chlorinator unit when chlorinator is on/off only * Scaffold * Added the en translation * Modified the name * Basic functionality for config flow. * Pulled in enough to validate config flow works. * Update manifest.json * initial data polling (water and air temp sensors) * Adding sensors, debugging update function * polling updates working * support for new data format from library * Updated entity_id, friendly name, conversion for ppm, attributes for hayward display units, MSPSystemID and component systemID * Fixed errors for PR * clean up * Add login exc, check if configured, test login. * Remove debug print. * Black formatting, ran isort, update requirements. * Updated w isort. fix flake8 failures. * Fix flake8 errors * Fixed self.attrs to remove invalid self._ values - small change * Missed on small change - fixing attributes * Updated naming, updated unit of measure, updated icon, bumped omnilog… * Updated to fix flake8 issues in __init__.py and config_flow.py * Updated test_config_flow.py to pass, updated config_flow.py to correct errors in test * Remove comments in preparation for PR * update .covezragerc * Formatting fix * Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors. * Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors. * Added CSAD sensors for pools that have them. * Added CSAD sensors for pools that have them. * Fixed CSAD to not create if blank or don't exist, removed broad except usage to pass linting. * Updated entity naming convention. Fixed linting issues. * Added device association to the back yard / omnilogic system * Removed .0 from ppm values when returning imperial values for salt sensor * Updated to return state = None for water temp when pump is off, handled Chlorinator operatingMode = 2, and added PlatformNotReady check * Corrected exception from Omnilogic library * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Removed nested_lookup dependency, bumped omnilogic.py to 0.3.8. * Fixed lint error * Added logging for sensor creation. * Fixed linting errors with logging. * Fixed explicit chaining of raised error. Fixed issue with alarm sensor. * Fixed manifest.json based on feedback. * Fixed self.attrs, should_poll, CoordinatorEntity, SCAN_INTERVAL from comments in PR. * Addressed unique_id, moved data update coordinator, addressed minor other issues from testing * Created main OmniLogic entity for common items, reworked DataUpdateCoordinator to it's own class. * Addressed config_schema not used in __init__.py * Fixed linting issues. * Addressed several comments, still todo - separate sensor classes. * Split the Omnilogic Sensors into separate logical classes for simpler logic. * Fixed snake case lint error for AddAlarms (to add_alarms) * Addressed config_flow issues from comments. * Changed addressed ConfigNotReady issue from comments. * Updated strings.json and generated corrected en.json with translations. * Updated en.json to standard generated file. * Added config_flow tests and updated issue with config_flow on cannot_connect * Added test case for incomplete information entered. * Compressed logic in the sensor classes to reduce duplication. * Updated strings.json for polling_interval, added generic exception handling on config flow. * Removed omnilogic from the .coveragerc omit file. * Updated test_config_flow to follow recommended pattern. * Excluded sensor.py from test coverage tests. * Corected minor issues in test_config_flow from comments * Fixed linting issues on last commits * Fixed linting issues. * Corrected issue when temp state is not available from Omnilogic * Added omnililogic_common.py from .coveragerc to bypass test coverage check. * Return false on Login Exception, handle OmniLogicException in config_flow and in tests. * Handle all exceptions and in config_flow and tests, clarified test naming. * Broke out test cases per comments. * Regenerated en.json file. * Addressed changes from comments in PR. * Added session and bumped API to 0.4.0, addressed other comments from PR. * Addressed entitydata (missed earlier). * Fixed pylint issue * Added test case for options flow in test_config_flow.py * Removed super() and used self when calling methods in current class. * Addressed comments in PR. * Addressed comments in PR. * Updated translations file. * Rewrote data coordinator to output dict for easy searching. * Updated chlorinator unit when chlorinator is on/off only * Fixed ORP method not being @property, fixed unique_id potential issue. Does not address comments from PR. * Rewrote coordinator for updated dict structure, rewrote sensors to parse new data structure. * Added alarms as attributes on all entities which support alarm reporting. * Updated SENSOR_TYPES to sensor_types to adhere to snake case in pylint. * Addressed PR comments. * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Removed binary sensor conditions (alarms, on/off sensor types) and added ability for multiple guard conditions * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Updated per comments in PR for Pump Type and removal of force_update(). * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/common.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Correctly asserting conditions for the login exception case. * Update .coveragerc Co-authored-by: Martin Hjelmare <marhje52@gmail.com> Co-authored-by: Mike Hershberger <mike.hershberger@gmail.com> Co-authored-by: Chad <54695185+chadlyy@users.noreply.github.com> Co-authored-by: Tim Empringham <tim.empringham@live.ca> Co-authored-by: djtimca <60706061+djtimca@users.noreply.github.com> Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-09-25 17:55:10 +02:00
{
"domain": "omnilogic",
"name": "Hayward Omnilogic",
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/omnilogic",
2020-10-14 15:21:29 +02:00
"requirements": ["omnilogic==0.4.2"],
Add Omnilogic integration (#40474) * Scaffold * Added the en translation * Modified the name * Basic functionality for config flow. * Pulled in enough to validate config flow works. * Update manifest.json * initial data polling (water and air temp sensors) * Adding sensors, debugging update function * polling updates working * support for new data format from library * Updated entity_id, friendly name, conversion for ppm, attributes for hayward display units, MSPSystemID and component systemID * Fixed errors for PR * clean up * Add login exc, check if configured, test login. * Remove debug print. * Black formatting, ran isort, update requirements. * Updated w isort. fix flake8 failures. * Fix flake8 errors * Fixed self.attrs to remove invalid self._ values - small change * Missed on small change - fixing attributes * Updated naming, updated unit of measure, updated icon, bumped omnilog… * Updated to fix flake8 issues in __init__.py and config_flow.py * Updated test_config_flow.py to pass, updated config_flow.py to correct errors in test * Remove comments in preparation for PR * update .covezragerc * Formatting fix * Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors. * Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors. * Added CSAD sensors for pools that have them. * Added CSAD sensors for pools that have them. * Fixed CSAD to not create if blank or don't exist, removed broad except usage to pass linting. * Updated entity naming convention. Fixed linting issues. * Added device association to the back yard / omnilogic system * Removed .0 from ppm values when returning imperial values for salt sensor * Updated to return state = None for water temp when pump is off, handled Chlorinator operatingMode = 2, and added PlatformNotReady check * Corrected exception from Omnilogic library * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Removed nested_lookup dependency, bumped omnilogic.py to 0.3.8. * Fixed lint error * Added logging for sensor creation. * Fixed linting errors with logging. * Fixed explicit chaining of raised error. Fixed issue with alarm sensor. * Fixed manifest.json based on feedback. * Fixed self.attrs, should_poll, CoordinatorEntity, SCAN_INTERVAL from comments in PR. * Addressed unique_id, moved data update coordinator, addressed minor other issues from testing * Created main OmniLogic entity for common items, reworked DataUpdateCoordinator to it's own class. * Addressed config_schema not used in __init__.py * Fixed linting issues. * Addressed several comments, still todo - separate sensor classes. * Split the Omnilogic Sensors into separate logical classes for simpler logic. * Fixed snake case lint error for AddAlarms (to add_alarms) * Addressed config_flow issues from comments. * Changed addressed ConfigNotReady issue from comments. * Updated strings.json and generated corrected en.json with translations. * Updated en.json to standard generated file. * Added config_flow tests and updated issue with config_flow on cannot_connect * Added test case for incomplete information entered. * Compressed logic in the sensor classes to reduce duplication. * Updated strings.json for polling_interval, added generic exception handling on config flow. * Removed omnilogic from the .coveragerc omit file. * Updated test_config_flow to follow recommended pattern. * Excluded sensor.py from test coverage tests. * Corected minor issues in test_config_flow from comments * Fixed linting issues on last commits * Fixed linting issues. * Corrected issue when temp state is not available from Omnilogic * Added omnililogic_common.py from .coveragerc to bypass test coverage check. * Return false on Login Exception, handle OmniLogicException in config_flow and in tests. * Handle all exceptions and in config_flow and tests, clarified test naming. * Broke out test cases per comments. * Regenerated en.json file. * Addressed changes from comments in PR. * Added session and bumped API to 0.4.0, addressed other comments from PR. * Addressed entitydata (missed earlier). * Fixed pylint issue * Added test case for options flow in test_config_flow.py * Removed super() and used self when calling methods in current class. * Addressed comments in PR. * Addressed comments in PR. * Updated translations file. * Rewrote data coordinator to output dict for easy searching. * Updated chlorinator unit when chlorinator is on/off only * Scaffold * Added the en translation * Modified the name * Basic functionality for config flow. * Pulled in enough to validate config flow works. * Update manifest.json * initial data polling (water and air temp sensors) * Adding sensors, debugging update function * polling updates working * support for new data format from library * Updated entity_id, friendly name, conversion for ppm, attributes for hayward display units, MSPSystemID and component systemID * Fixed errors for PR * clean up * Add login exc, check if configured, test login. * Remove debug print. * Black formatting, ran isort, update requirements. * Updated w isort. fix flake8 failures. * Fix flake8 errors * Fixed self.attrs to remove invalid self._ values - small change * Missed on small change - fixing attributes * Updated naming, updated unit of measure, updated icon, bumped omnilog… * Updated to fix flake8 issues in __init__.py and config_flow.py * Updated test_config_flow.py to pass, updated config_flow.py to correct errors in test * Remove comments in preparation for PR * update .covezragerc * Formatting fix * Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors. * Rewrote sensors to dynamically add all BOWs, pumps, clorinators. Still to do - add CSAD sensors. * Added CSAD sensors for pools that have them. * Added CSAD sensors for pools that have them. * Fixed CSAD to not create if blank or don't exist, removed broad except usage to pass linting. * Updated entity naming convention. Fixed linting issues. * Added device association to the back yard / omnilogic system * Removed .0 from ppm values when returning imperial values for salt sensor * Updated to return state = None for water temp when pump is off, handled Chlorinator operatingMode = 2, and added PlatformNotReady check * Corrected exception from Omnilogic library * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Bumped omnilogic to 0.3.7. Added alarm sensor/data to sensors. Handle pump off condition for ph and orp sensors. * Removed nested_lookup dependency, bumped omnilogic.py to 0.3.8. * Fixed lint error * Added logging for sensor creation. * Fixed linting errors with logging. * Fixed explicit chaining of raised error. Fixed issue with alarm sensor. * Fixed manifest.json based on feedback. * Fixed self.attrs, should_poll, CoordinatorEntity, SCAN_INTERVAL from comments in PR. * Addressed unique_id, moved data update coordinator, addressed minor other issues from testing * Created main OmniLogic entity for common items, reworked DataUpdateCoordinator to it's own class. * Addressed config_schema not used in __init__.py * Fixed linting issues. * Addressed several comments, still todo - separate sensor classes. * Split the Omnilogic Sensors into separate logical classes for simpler logic. * Fixed snake case lint error for AddAlarms (to add_alarms) * Addressed config_flow issues from comments. * Changed addressed ConfigNotReady issue from comments. * Updated strings.json and generated corrected en.json with translations. * Updated en.json to standard generated file. * Added config_flow tests and updated issue with config_flow on cannot_connect * Added test case for incomplete information entered. * Compressed logic in the sensor classes to reduce duplication. * Updated strings.json for polling_interval, added generic exception handling on config flow. * Removed omnilogic from the .coveragerc omit file. * Updated test_config_flow to follow recommended pattern. * Excluded sensor.py from test coverage tests. * Corected minor issues in test_config_flow from comments * Fixed linting issues on last commits * Fixed linting issues. * Corrected issue when temp state is not available from Omnilogic * Added omnililogic_common.py from .coveragerc to bypass test coverage check. * Return false on Login Exception, handle OmniLogicException in config_flow and in tests. * Handle all exceptions and in config_flow and tests, clarified test naming. * Broke out test cases per comments. * Regenerated en.json file. * Addressed changes from comments in PR. * Added session and bumped API to 0.4.0, addressed other comments from PR. * Addressed entitydata (missed earlier). * Fixed pylint issue * Added test case for options flow in test_config_flow.py * Removed super() and used self when calling methods in current class. * Addressed comments in PR. * Addressed comments in PR. * Updated translations file. * Rewrote data coordinator to output dict for easy searching. * Updated chlorinator unit when chlorinator is on/off only * Fixed ORP method not being @property, fixed unique_id potential issue. Does not address comments from PR. * Rewrote coordinator for updated dict structure, rewrote sensors to parse new data structure. * Added alarms as attributes on all entities which support alarm reporting. * Updated SENSOR_TYPES to sensor_types to adhere to snake case in pylint. * Addressed PR comments. * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Removed binary sensor conditions (alarms, on/off sensor types) and added ability for multiple guard conditions * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Updated per comments in PR for Pump Type and removal of force_update(). * Update homeassistant/components/omnilogic/sensor.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Update homeassistant/components/omnilogic/common.py Co-authored-by: Martin Hjelmare <marhje52@gmail.com> * Correctly asserting conditions for the login exception case. * Update .coveragerc Co-authored-by: Martin Hjelmare <marhje52@gmail.com> Co-authored-by: Mike Hershberger <mike.hershberger@gmail.com> Co-authored-by: Chad <54695185+chadlyy@users.noreply.github.com> Co-authored-by: Tim Empringham <tim.empringham@live.ca> Co-authored-by: djtimca <60706061+djtimca@users.noreply.github.com> Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-09-25 17:55:10 +02:00
"codeowners": ["@oliver84","@djtimca","@gentoosu"]
}