Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Aggregate sensor device_class/unit of measure map key bug #211

Merged
merged 1 commit into from
May 2, 2022

Conversation

jseidl
Copy link
Owner

@jseidl jseidl commented May 1, 2022

The function was logically flawed. I used a string made of {device_class/unit_of_measurement} for a dict key (used for lookup) and when faced with an unit of measurement that has /, ta-da!

Changing to another character was another bug waiting to happen, so I rewrote it and now should work regardless of the values on those attributes.

This (probably) fixes #208. I can't test it tho because I don't have a sensor that fits this case.

@jseidl jseidl added the hotfix Hotfix label May 1, 2022
@jseidl jseidl self-assigned this May 1, 2022
@jseidl jseidl merged commit c4b7690 into develop May 2, 2022
@jseidl jseidl deleted the hotfix/aggr-sensor-unit-of-measure-map-key branch May 2, 2022 08:15
jseidl added a commit that referenced this pull request Jul 9, 2022
* Add active_areas attribute to aggregate binary sensors of meta areas

* Add support for cover groups

* Add binary sensor vibration device class for
presence detection

* add connectivity to supported device classes. #91

* Add attribute to cover group to show included cover entities

* Add support for binary sensors belonging to multiple areas

* Split options flow up into multiple steps

* fixed issues after merge of PRs from contributors for release 2.1.0

* fixed backwards compatibility and added filters on the entities returned by the entity lits on config flow, changed naming of aggregates, other minor fixes

* fixed configuration on features to use new schema

* fixed config schema for area-aware media player

* fixed area-aware media player logic

* changed notify_on_sleep to be in parity with notification_devices (being global option)

* Event-based IPC (#126)

* separated sleep and dark state tracking into a new config step, changed light groups to have more categories, changed light component to pull those new groups. automatic light logic removed, will be re-introduced from light groups

* fixing manifest

* fixing manifest

* first stab on event based light group triggering

* automatic lights fully migrated into light groups (hopefully)

* automatic lights fully migrated into light groups (hopefully)

* Lingering conflict fix

* made extended_time configurable

* created media group support, moved control_media funcionality into it

* forgot to add parameters to area-aware media creation functions

* forgot to add parameters to area-aware media creation functions

* updated hacs.json with minimum HA version because of new Media Group

* setting the base for dynamic clear timeouts. fixed call_later for clear timeout

* setting the base for dynamic clear timeouts. fixed call_later for clear timeout

* initial migration of presence hold as a feature and addition of climate group

* initial migration of presence hold as a feature and addition of climate group

* implemented turn_on on climate groups

* implemented climate turn on based on secondary state, finalized config_flow steps

* implemented climate turn on based on secondary state, finalized config_flow steps

* implemented presence hold timeout, fixed turn_off bug on media player group

* implemented presence hold timeout, fixed turn_off bug on media player group

* fixing bugs on light groups after testing on main stack (home)

* fixing extended state bug

* fixed light group logic, addded AREA_STATE_BRIGHT meta state to fix bugs, fixed media_player not being able to turn on issue and added AREA_STATE_DARK for areas that havent the state configured

* fixing climate default state bug

* added lost_states to report_event, fixed light bugs

* added lost_states to report_event, fixed light bugs

* fixed meta light groups, set default timeout to 0 for meta areas, made device platforms configurable

* fixed meta light groups, set default timeout to 0 for meta areas, made device platforms configurable

* Forgot one conflict fix

* Forgot one conflict fix

* fixed unique_id and some light group related bugs, also added occupied/clear as area states for better handling turn on and off

* fixed unique_id and some light group related bugs, also added occupied/clear as area states for better handling turn on and off

* minor fixes

* fixed area-aware media player, made climate group available for meta areas

* fixed area-aware media player, made climate group available for meta areas

* updated readme

* updated readme

* Added group resolution (#173)

* Create CONTRIBUTING.md (#162)

* Create CODE_OF_CONDUCT.md (#161)

* Creating LICENSE (#160)

* Update issue templates (#159)

* Release/3.0.0 beta (#179)

* bumping version on manifest for beta release

* bugfix for issue reported on issue 144 by cerebrate

* added Enable Automatic Control option for light groups (bugfix)

* added Enable Automatic Control option for light groups (bugfix)

* lowering warn levels to debug where appropriate

* light control is now a switch and on_states are no longer free-text

* light control is now a switch and on_states are no longer free-text

* missed a conflict

* missed a conflict

* updated readme.md with badges

* added more logging for debugging purposes

* adding more debug

* adding more debug

* more debugging

* removing title from init step (#204)

* pulling ALL_BINARY_SENSOR_CLASSES from main HA DEVICE_CLASSES list, never need to update this again! (#203)

* fix for groups breaking change on home assistant 2022.4 (#202)

* refactor of load_sensors because I was doing the dumb way (#211)

* moved the naming generation inside where device class is checked for existence (#210)

* Config flow selectors (#212)

Seems to be stable and functioning 100%. Merging

Commits
* testing new selectors

* first run of all config screens with selectors

* first run of all config screens with selectors

* fixed area options page for meta areas

* Flatten entity groups (#205)

* added list flattenting to entity loading, shall resolve problems with groups

* added list flattenting to entity loading, shall resolve problems with groups

* wrapped entity loading in try/catch block

* Leftover conflict fix

* adding more debugging

* fixed flatten function to be string-aware

* fixing naming regression of flatten function

* fixing naming regression of flatten function

* added more error catching and logging, also skipping unavailable and unknown states in more places

* Fixing light group attributes (#207)

* fixing attributes incorrectly displaying for light groups

* changing async_get_registry to async_get

* added/renamed entity_id attribute to memebers entity_ids (#222)

* checking if entity is on self.all_entities (valid) (#221)

* removed integration name from unique ids bc is bad practice (#223)

* fixing regression (#224)

* standardizing unique_ids as name slug (#227)

* removing feature req template as we are using discussions now (#228)

* updating readme.md description (#229)

* adding links in the issues area (#230)

* Device uom pair regression fix (#231)

* fixing tuple regression from code fixer

* fixing cover name issue

* Meta area exclude entities (#232)

* added is_valid_entity check into meta areea load_entities

* didnt worked, is_valid_entity expects object, checking diretly against excluded entities

* removed behavior of all lights turning on if none configured for occupied state (#233)

* changed import from util.py to collections.abc since Iterable was moved over on 3.10 (#234)

Co-authored-by: caphm <info@caphm.de>
Co-authored-by: Timo S <sht.online@gmail.com>
Co-authored-by: Maximilian <43999966+DeerMaximum@users.noreply.github.com>
jseidl added a commit that referenced this pull request Jul 24, 2022
* Add active_areas attribute to aggregate binary sensors of meta areas

* Add support for cover groups

* Add binary sensor vibration device class for
presence detection

* add connectivity to supported device classes. #91

* Add attribute to cover group to show included cover entities

* Add support for binary sensors belonging to multiple areas

* Split options flow up into multiple steps

* fixed issues after merge of PRs from contributors for release 2.1.0

* fixed backwards compatibility and added filters on the entities returned by the entity lits on config flow, changed naming of aggregates, other minor fixes

* fixed configuration on features to use new schema

* fixed config schema for area-aware media player

* fixed area-aware media player logic

* changed notify_on_sleep to be in parity with notification_devices (being global option)

* Event-based IPC (#126)

* separated sleep and dark state tracking into a new config step, changed light groups to have more categories, changed light component to pull those new groups. automatic light logic removed, will be re-introduced from light groups

* fixing manifest

* fixing manifest

* first stab on event based light group triggering

* automatic lights fully migrated into light groups (hopefully)

* automatic lights fully migrated into light groups (hopefully)

* Lingering conflict fix

* made extended_time configurable

* created media group support, moved control_media funcionality into it

* forgot to add parameters to area-aware media creation functions

* forgot to add parameters to area-aware media creation functions

* updated hacs.json with minimum HA version because of new Media Group

* setting the base for dynamic clear timeouts. fixed call_later for clear timeout

* setting the base for dynamic clear timeouts. fixed call_later for clear timeout

* initial migration of presence hold as a feature and addition of climate group

* initial migration of presence hold as a feature and addition of climate group

* implemented turn_on on climate groups

* implemented climate turn on based on secondary state, finalized config_flow steps

* implemented climate turn on based on secondary state, finalized config_flow steps

* implemented presence hold timeout, fixed turn_off bug on media player group

* implemented presence hold timeout, fixed turn_off bug on media player group

* fixing bugs on light groups after testing on main stack (home)

* fixing extended state bug

* fixed light group logic, addded AREA_STATE_BRIGHT meta state to fix bugs, fixed media_player not being able to turn on issue and added AREA_STATE_DARK for areas that havent the state configured

* fixing climate default state bug

* added lost_states to report_event, fixed light bugs

* added lost_states to report_event, fixed light bugs

* fixed meta light groups, set default timeout to 0 for meta areas, made device platforms configurable

* fixed meta light groups, set default timeout to 0 for meta areas, made device platforms configurable

* Forgot one conflict fix

* Forgot one conflict fix

* fixed unique_id and some light group related bugs, also added occupied/clear as area states for better handling turn on and off

* fixed unique_id and some light group related bugs, also added occupied/clear as area states for better handling turn on and off

* minor fixes

* fixed area-aware media player, made climate group available for meta areas

* fixed area-aware media player, made climate group available for meta areas

* updated readme

* updated readme

* Added group resolution (#173)

* Create CONTRIBUTING.md (#162)

* Create CODE_OF_CONDUCT.md (#161)

* Creating LICENSE (#160)

* Update issue templates (#159)

* Release/3.0.0 beta (#179)

* bumping version on manifest for beta release

* bugfix for issue reported on issue 144 by cerebrate

* added Enable Automatic Control option for light groups (bugfix)

* added Enable Automatic Control option for light groups (bugfix)

* lowering warn levels to debug where appropriate

* light control is now a switch and on_states are no longer free-text

* light control is now a switch and on_states are no longer free-text

* missed a conflict

* missed a conflict

* updated readme.md with badges

* added more logging for debugging purposes

* adding more debug

* adding more debug

* more debugging

* removing title from init step (#204)

* pulling ALL_BINARY_SENSOR_CLASSES from main HA DEVICE_CLASSES list, never need to update this again! (#203)

* fix for groups breaking change on home assistant 2022.4 (#202)

* refactor of load_sensors because I was doing the dumb way (#211)

* moved the naming generation inside where device class is checked for existence (#210)

* Config flow selectors (#212)

Seems to be stable and functioning 100%. Merging

Commits
* testing new selectors

* first run of all config screens with selectors

* first run of all config screens with selectors

* fixed area options page for meta areas

* Flatten entity groups (#205)

* added list flattenting to entity loading, shall resolve problems with groups

* added list flattenting to entity loading, shall resolve problems with groups

* wrapped entity loading in try/catch block

* Leftover conflict fix

* adding more debugging

* fixed flatten function to be string-aware

* fixing naming regression of flatten function

* fixing naming regression of flatten function

* added more error catching and logging, also skipping unavailable and unknown states in more places

* Fixing light group attributes (#207)

* fixing attributes incorrectly displaying for light groups

* changing async_get_registry to async_get

* added/renamed entity_id attribute to memebers entity_ids (#222)

* checking if entity is on self.all_entities (valid) (#221)

* removed integration name from unique ids bc is bad practice (#223)

* fixing regression (#224)

* standardizing unique_ids as name slug (#227)

* removing feature req template as we are using discussions now (#228)

* updating readme.md description (#229)

* adding links in the issues area (#230)

* Device uom pair regression fix (#231)

* fixing tuple regression from code fixer

* fixing cover name issue

* Meta area exclude entities (#232)

* added is_valid_entity check into meta areea load_entities

* didnt worked, is_valid_entity expects object, checking diretly against excluded entities

* removed behavior of all lights turning on if none configured for occupied state (#233)

* changed import from util.py to collections.abc since Iterable was moved over on 3.10 (#234)

Co-authored-by: caphm <info@caphm.de>
Co-authored-by: Timo S <sht.online@gmail.com>
Co-authored-by: Maximilian <43999966+DeerMaximum@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
hotfix Hotfix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant