Commit Graph

47 Commits (34a491f826e4891f62eb368370c2ad1a26e77da2)

Author SHA1 Message Date
Aaron Bach 7657a5c901
Move RainMachine services to entity services (#44139) 2021-01-04 20:01:14 +01:00
Aaron Bach ae596c7dff
Fix bug in unloading RainMachine options listener (#44359)
* Fix bug in unloading RainMachine options listener

* Order
2020-12-18 12:28:18 -07:00
Paulus Schoutsen 594e905742
Remove invalidation_version from deprecated (#44156)
* Remove invalidation_version from deprecated. We don't follow up and just hurts releases

* Revert change to ZHA
2020-12-12 22:24:16 +01:00
Aaron Bach bba7c15d79
Migrate RainMachine to DataUpdateCoordinator (#42530) 2020-11-06 10:58:50 +01:00
Aaron Bach 31518937c0
Cleanup RainMachine (#42544) 2020-10-29 00:52:15 +01:00
Aaron Bach e61e8fafee
Add options flow to RainMachine (#42241)
* Add options flow to RainMachine

* Linting
2020-10-28 15:52:42 -06:00
Aaron Bach 536f1186b0
Remove remnants of configurable RainMachine scan interval (#42239)
* Remove remnants of configurable RainMachine scan interval

* Clean up tests

* Cleanup
2020-10-22 21:32:04 -05:00
Aaron Bach 74a1b75919
Deprecate YAML config for RainMachine (0.119 removal) (#41971) 2020-10-16 16:35:13 -05:00
Ville Skyttä b4bac0f7a0
Exception chaining and wrapping improvements (#39320)
* Remove unnecessary exception re-wraps

* Preserve exception chains on re-raise

We slap "from cause" to almost all possible cases here. In some cases it
could conceivably be better to do "from None" if we really want to hide
the cause. However those should be in the minority, and "from cause"
should be an improvement over the corresponding raise without a "from"
in all cases anyway.

The only case where we raise from None here is in plex, where the
exception for an original invalid SSL cert is not the root cause for
failure to validate a newly fetched one.

Follow local convention on exception variable names if there is a
consistent one, otherwise `err` to match with majority of codebase.

* Fix mistaken re-wrap in homematicip_cloud/hap.py

Missed the difference between HmipConnectionError and
HmipcConnectionError.

* Do not hide original error on plex new cert validation error

Original is not the cause for the new one, but showing old in the
traceback is useful nevertheless.
2020-08-28 13:50:32 +02:00
Aaron Bach 4cceb4ad0a
Bump regenmaschine to 2.1.0 (#38649) 2020-08-07 18:01:55 -06:00
springstan b2af1de273
Improve string formatting v9 (#34050)
* Improve string formatting v9

* Address review comments
2020-04-12 17:18:09 +02:00
Aaron Bach f53dfc4308
Don't reinvent callback handler removal logic in several integ… (#33726) 2020-04-05 22:36:23 -07:00
Franck Nijhof e8a0abd107
String formatting improvements (#33635)
* String formatting improvements

* Found another one
2020-04-04 18:21:14 +02:00
Aaron Bach d8e3e9abaa
Fix RainMachine not properly storing data in the config entry (#33002)
* Fix bug related to RainMachine's default config flow

* A

* Fix tests

* Code review
2020-03-19 20:54:41 -07:00
Aaron Bach 0c49c8578b
Remove unnecessary awaits in RainMachine (#32884)
* Remove unnecessary awaits in RainMachine

* Cleanup
2020-03-17 07:00:54 -04:00
Aaron Bach 75f465bf7e
Remove unused RainMachine config flow function (#32165)
* Remove unused RainMachine config flow function

* Remove test we don't need

* Code review comments

* Linting
2020-02-24 22:01:55 -07:00
Aaron Bach 6b0d7c77f0
Clean up RainMachine config entry data (#32132) 2020-02-24 13:07:18 -07:00
Aaron Bach ac2172333c
Use non-deprecated method of instantiating RainMachine client (#31149) 2020-01-26 18:01:59 -07:00
Aaron Bach 4c4f726323
Refactor RainMachine switch platform (#31148)
* Import constants sanely

* Linting

* Rename data constants for consistency

* Refactor RainMachine switch platform

* Comments

* Cleanup

* Refactor switch and sensor API calls to be separate

* Linting

* Make sure zones are updated in appropriate service calls

* Correctly decrement

* Linting

* Don't do weird inheritance

* Ensure service calls update data properly

* Docstring

* Docstring

* Errors can be logged without string conversion

* Code review comments
2020-01-25 20:27:35 -07:00
Aaron Bach a007835293
Fix RainMachine update action (#31147) 2020-01-24 23:42:59 -07:00
Aaron Bach 550aa6a0a5 Add smarter API usage for RainMachine (#31115)
* Make RainMachine smarter with API usage

* Remove debug statements

* Fix deregistration

* Code review comments

* Code review

* Use an asyncio.Lock

* Remove unnecessary guard clause

* Ensure registation lock per API category
2020-01-24 21:31:14 -08:00
Aaron Bach 73a55825af Remove monitored conditions from RainMachine (#31066)
* Remove monitored conditions from RainMachine

* Migrate config entry

* Revert "Migrate config entry"

This reverts commit 84fcf5120f.

* Code review comments

* Disable some entities by default
2020-01-22 20:49:47 -08:00
springstan d9661b408b Move imports to top for rainmachine (#29472) 2019-12-04 21:12:44 -08:00
Aaron Bach 3f2c344e4f
Add small speed improvement when unloading RainMachine (#28759) 2019-11-13 14:27:42 -07:00
Franck Nijhof 445c741b30 Use literal string interpolation in integrations R-S (f-strings) (#26392) 2019-09-03 21:14:39 +02:00
Paulus Schoutsen 4de97abc3a Black 2019-07-31 12:25:30 -07:00
Aaron Bach b69663857b Fix missing sensor unit in RainMachine (#25101) 2019-07-12 17:59:04 +02:00
Aaron Bach 729df112a7
Add RainMachine device classes where appropriate (#24682) 2019-06-21 17:12:28 -06:00
Aaron Bach daa1d103d4 Add support for flow sensor metrics in RainMachine (#23221)
* Initial commit

* In the clear
2019-05-02 09:45:51 +02:00
Aaron Bach fc481133e7
Create decorator to check service permissions (#22667)
* Create decorator to check service permissions

* Typing

* Linting

* Member comments

* Linting

* Member comments

* Updated import

* Owner comments

* Linting

* Linting

* More work

* Fixed tests

* Removed service helper tests in RainMachine

* Linting

* Owner comments

* Linting

* Owner comments

Co-Authored-By: bachya <bachya1208@gmail.com>
2019-04-13 13:54:29 -06:00
Aaron Bach 05f267de6e
Update RainMachine sensors in parallel (#23057) 2019-04-12 17:44:04 -06:00
cgtobi 2c07bfb9e0 Remove dependencies and requirements (#23024)
* Remove dependencies and requirements

* Revert "Remove dependencies and requirements"

This reverts commit fe7171b4cd.

* Remove dependencies and requirements

* Revert "Remove dependencies and requirements"

This reverts commit 391355ee2c.

* Remove dependencies and requirements

* Fix flake8 complaints

* Fix more flake8 complaints

* Revert non-component removals
2019-04-12 10:13:30 -07:00
Aaron Bach 3d8efd4200 Add permission checking to all RainMachine services (#22399)
* Add permission checking to all RainMachine services

* Linting

* Some initial work

* Owner comments

* Test in place (I think)

* Linting

* Update conftest.py
2019-03-31 19:32:55 -07:00
Aaron Bach a71394a0ce
Add program/zone enable/disable services to RainMachine (#21785) 2019-03-13 08:20:13 -06:00
Aaron Bach 897862fca4
Add availability and next run datetime to RainMachine switches (#21786) 2019-03-13 08:19:26 -06:00
Aaron Bach 326513af90 Add pause/unpause services to RainMachine (#21548)
* Add pause/unpause services to RainMachine

* Update requirements
2019-02-28 17:58:39 -08:00
Fabian Affolter 127c55e0c1
Update file header (#21023)
* Update file header

* Update file header

* Update file header

* Update file header

* Update file header

* Fix lint issues
2019-02-13 21:21:14 +01:00
Aaron Bach c15445159d Add timeout to RainMachine login (#19476)
* Add timeout to RainMachine login

* Moved timeout logic to regenmaschine

* Moving logic back into try/except

* Bumped requirements
2018-12-20 22:51:10 +01:00
Aaron Bach 08702548f3
Add support for multiple RainMachine controllers (#18989)
* Add support for multiple RainMachine controllers

* Member comments

* Member comments

* Member comments

* Cleanup

* More config flow cleanup

* Member comments
2018-12-05 10:31:32 -07:00
Aaron Bach e73b9b9b8f Clean up left-behind dispatcher handlers when removing RainMachine (#18488)
* Clean up left-behind dispatcher handlers when removing RainMachine

* Member comments
2018-11-17 10:42:50 +01:00
Aaron Bach 4446b15cb0
Add Rainmachine to the device registry (#18452)
* Device registry in

* Member comments

* Hound
2018-11-15 10:43:20 -07:00
Aaron Bach 8aa1283adc
Add Rainmachine config entry (#18419)
* Initial stuff

* More work in place

* Starting with tests

* Device registry in place

* Hound

* Linting

* Member comments (including extracting device registry)

* Member comments (plus I forgot cleanup!)

* Hound

* More Hound

* Removed old import

* Adding config entry test to coverage

* Updated strings
2018-11-14 13:23:49 -07:00
Paulus Schoutsen ea2ff6aae3
Use async_create_task (#15633)
* Use async_create_task

* Fix test
2018-07-23 14:05:38 +02:00
Ville Skyttä 2f7b79764a More pylint 2 fixes (#15565)
## Description:

More fixes flagged by pylint 2 that don't hurt to have before the actual pylint 2 upgrade (which I'll submit soon).

## Checklist:
  - [ ] The code change is tested and works locally.
  - [x] Local tests pass with `tox`. **Your PR cannot be merged unless tests pass**
2018-07-20 11:45:20 +03:00
Aaron Bach 176ef411de Add scan_interval to RainMachine (#14945) 2018-06-13 07:30:06 +02:00
Aaron Bach 8aca2e84dc Make RainMachine async (#14879)
* Make RainMachine async

* Updated requirements

* Dispatcher adjustments

* Small verbiage change

* Member-requested changes

* Style consistency

* Updated requirements
2018-06-10 10:23:07 +02:00
Aaron Bach 084b3287ab Add sensors and services to RainMachine (#14326)
* Starting to add attributes

* All attributes added to programs

* Basic zone attributes in place

* Added advanced properties for zones

* We shouldn't calculate the MAC with every entity

* Small fixes

* Basic framework for push in play

* I THINK IT'S WORKING

* Some state cleanup

* Restart

* Restart part 2

* Added stub for service schema

* Update

* Added services

* Small service description update

* Lint

* Updated CODEOWNERS

* Moving to async methods

* Fixed coverage test

* Lint

* Removed unnecessary hass reference

* Lint

* Lint

* Round 1 of Owner-requested changes

* Round 2 of Owner-requested changes

* Round 3 of Owner-requested changes

* Round 4 (final for now) of Owner-requested changes

* Hound

* Updated package requirements

* Lint

* Collaborator-requested changes

* Collaborator-requested changes

* More small tweaks

* One more small tweak

* Bumping Travis and Coveralls
2018-05-29 21:02:16 +02:00