* Adding switch code for harmony activities
* Working on-off
* Removing poll code for now
* Async updates for current activity
* Update our state based on events
* Notifications we got connected or disconnected
* Remove unncessary constructor arg
* Initial switch tests
* Additional tests for switch transitions
* Test transitions for availability
* Testing switch state changes
* Tests passing
* Final tests
* Updating manifest.
* Correctly mock the return value from a call to the library
* Adding new subscriber classes
* Update class name and location
* Got the refactor working locally.
* Tests passing
* Tracking state changes
* Remove write_to_config_file - this appears to never be read.
It was added far back in the past to account for a harmony library
change, but nothing ever reads that path.
Removing that side effect from tests is a pain - avoid the side effect
completely.
* Connection changes tested
* Clean up temporary code
* Update .coveragerc for harmony component
Specifically exclude untested files instead of the whole module
* Fix linting
* test sending activity change commands by id
* Improving coverage
* Testing channel change commands
* Splitting subscriber logic into it's own class
* Improve coverage and tighten up .coveragerc
* Test cleanups.
* re-add config file writing for harmony remote
* Create fixture for the mock harmonyclient
* Reduce duplication in subscription callbacks
* use async_run_job to call callbacks
* Adding some tests for async behaviors with subscribers.
* async_call_later for delay in marking remote unavailable
* Test disconnection handling in harmony remote
* Early exit if activity not specified
* Use connection state mixin
* Lint fix after rebase
* Fix isort
* super init for ConnectionStateMixin
* Adding @mkeesey to harmony CODEOWNERS
* Add nearest method
* Add tests
* Move urls to consts
* Simplify config flow
* Fix tests
* Update tests
* Use in instead get
* Fix AirlyError message in tests
* Fix manual update entity tests
* Clean up tests
* Fix after rebase
* Increase test coverage
* Format the code
* Fix after rebase
* Add logbook and device trigger platforms to Shelly
Add `logbook` platform for describing “shelly.click” event
Add `device_trigger` platform for adding automation based on click events:
Example of logbook event:
Shelly 'single' click event for Test I3 channel 3 was fired.
(Test I3 is the name of the device)
Example of automation triggers:
First button triple clicked
First button long clicked and then single clicked
First button double clicked
First button long clicked
First button single clicked and then long clicked
First button single clicked
Second button triple clicked
..
Second button single clicked
* Fix codespell
* Remove pylint added for debug
* Add tests
* Rebase
* Fix Rebase & Apply PR review suggestions
Fix tests after rebasing
Use `INPUTS_EVENTS_DICT` for input triggers
Apply PR suggestions
* First implementationof Ondilo component support
* Update manifest toadd pypi pkg dependency
* Update entities name and corrected refresh issue
* Changed percentage unit name
* Corrected merge issues
* Updated coveragerc
* cleaned up code and corrected config flow tests
* Code cleanup and added test for exisitng entry
* Changes following PR comments:
- Inherit CoordinatorEntity instead of Entity
- Merged pools blocking calls into one
- Renamed devices vars to sensors
- Check supported sensor types
- Stop relying on array index position for pools
- Stop relying on attribute position in dict for sensors
* Corrected unit test
* Reformat sensor type check
* Add index to old_state_id column for older databases
The schema was updated in #43610 but the index was not
added on migration.
* Handle postgresql missing ondelete
* create index first
* Bump PyTado to v0.10.0
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* Tado: switch to getDeviceInfo
This function has been introduced in version 0.10.0 of PyTado.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* Tado: update tests
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* update xknx to 0.16.0
* fix telegram in knx_event and knx.send service
* fix knx.send to not coerce floats to int
fixes#44792
also enables strings to be sent
* Revert "fix knx.send to not coerce floats to int"
This reverts commit ac40fb53f9.
* Add service to lock/unlock Sure Petcare pet flaps
Adds a service to the Sure Petcare pet flaps to allow lock, unlocking,
locking in and locking out pets using the pet flap
* Linting
* Changes from code review
* Add tilt control for RFXtrx Rfy venetian blinds
* Update Rfy cover test
* Update the required version of pyRFXtrx
* Update required pyRFXtrx version to 0.26.1
* Revert "Update required pyRFXtrx version to 0.26.1"
This reverts commit d54f1645d5.
* Revert "Update the required version of pyRFXtrx"
This reverts commit ac36d65326.
* Update required version of pyRFXtrx to 0.26.1
* @dzukero
Update required version of pyRFXtrx to 0.26.1
* Make requested changes from review
* Fix isort
* Remove set tilt position support
* Remove set tilt position support per review
* Add service to enable / disable music mode
* Black reformat
* Update test
* Fix tests
* Revert consts cleanup
* Use entity method as service call
* Use ATTR for service call
* Sort
* Add tests
* Fix isort
* Fix print
* Black
* Add Config Flow to bmw_connected_drive
* Fix checks for bmw_connected_drive
* Adjust code as requested
* Clean .coveragerc after merge
* Use references for config flow
* Fix execute_service check against allowed accounts
* Adjust translation as username can be email or phone no
* Add BMWConnectedDriveBaseEntity mixin, remove unnecessary type casts
* Use BaseEntity correctly, fix pylint error
* Bump bimmer_connected to 0.7.13
* Adjustments for review
* Fix pylint
* Fix loading notify, move vin to entity attrs
* Remove vin from device registry
* Remove commented-out code
* Show tracker warning only if vehicle (currently) doesn't support location
* Remove unnecessary return values & other small adjustments
* Move original hass_config to own domain in hass.data
* Move entries to separate dict in hass.data
* Remove invalid_auth exception handling & test as it cannot happen
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
* Updating sensor to use single API call
* Updated comment
Updated comment to reflect that polling is needed.
* Reduced calls to single API call
* Added except handling and increased async timeout
* Cleaned up some comments
* Added error handling
* Added last_reported date for inverters
* Added message during failed update
* Added retries to update function
* Updated update function
* Reformatted sensor.py with black
* Increased default scan period
* fixed timedelta typo
* importing CoordinatorEntity
* Check during setup else raise PlatformNotReady
* Removed async_update and override state
* using SCAN_INTERVAL constant
* fixed typo
* removed unused constant
* Removed retry logic
* Changed to catching exceptions rather than strings
* shortened string split line
* Replace requests_async with httpx
* Bump envoy_reader version to 0.17.2
* Resolving comments from PR requested changes
* Fixed typo in scan_interval
* Removed period from logging messages
* Bumping envoy_reader to 0.18.0
* Incorporating suggested changes
* Removing no longer used try/except
* Fail setup if authentication fails
* Bump envoy_reader to 0.18.2
Current device_id variable refers to the Home ID obtained from the Tado API.
Let's use home_id in order to avoid confusion with Tado devices.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* Improve error handling user experience
This is meant to make the nest integration quieter. Exceptions are handled with a single log error message.
Co-authored-by: j-stienstra <65826735+j-stienstra@users.noreply.github.com>
* Simplify nest event handling
Use device specific update callbacks rather than a global callback.
The motivation is to prepare for a follow up change that will store
camera specific event tokens on the camera itself, so that a service
can later fetch event specific image snapshots, which would be difficult
to send across the event bus.
* Increase nest camera test coverage
* Remove unnecessary device updates for nest cameras
* Remove unused imports
* Fix device id check to look at returned entry
* Remove unused imports after rebase
* Partial revert of nest event simplification
* Push more update logic into the nest library
* Revert nest device_info changes
* Revert test changes to restore global update behavior
* Bump nest library version to support new callback interfaces
* Add album art support in the mpd component
Uses `readpicture` to retrieve embedded artwork and `albumart` to
acquire cover art located in the media directory.
As the mpd component supports multiple different implementations (think
mopidy, PI MusicBox, etc.) we check for the availability of each command
before using them.
Tested against mpd 0.22.3, which includes support for both.
* fixup! Add album art support in the mpd component
* Handle missing devices during update
* Raise error only if there was devices previously
* Not final dot
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
* - Make the dyson integration report that the fan is on if its in AUTO or FAN states instead of only in FAN state
* - Fix code style issue to be compliant with flake8
* Periodically attempt to discover new wemo devices
* Set self._stop=None after stopping the periodic discovery task
* Use the async_fire_time_changed test helper to simplify test_discovery
* Stop the pywemo registry outside of the async loop
* Add a comment describing why async_fire_time_changed is used
Siri always requests auto mode even when the device does not
support auto which results in the thermostat failing to turn
on as success is assumed. We now determine the heat cool
target mode based on the current temp, target temp, and
supported modes to ensure the thermostat will reach the
requested target temp.
* Move Legacy Works With Nest integration to subdirectory
Motivation is to streamline the actively developed integration e.g. make code coverage easier to reason about and simplify __init__.py
* Update humidity attributes.
* Update climate.py
* Raise ValueError
* Update conditions for humidity controls to show
Humidity controls only show when the humidifier mode is in "manual" mode.
* Adding the water_box / mop status
* Clean up
Co-authored-by: Teemu R. <tpr@iki.fi>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Teemu R. <tpr@iki.fi>
* pydaikin version bump to 2.4.0
Add support for controlling the streamer feature.
* Add switch for toggling Daikin streamer on and off
* Have DaikinStreamerSwitch inherit from SwitchEntity instead of ToggleEntity
* Update nl.json
* added period to end of every logging entry.
* Functional and ambient light added
* Change to dict.get method
* Update light.py
* Update __init__.py
Platforms sorted 🔡.
* Update api.py
- Removed all none light platform related changes.
- Period removed from loggin.
- Storing entities removed.
- Not needed formating change reverted.
-
* Update const.py
All words seperated with underscore.
* Update nl.json
Reverted change on translation file.
* Update light.py
-All words of constants seperated with underscore.
- f-string used iso concatenation.
- Added "ambient"to loggin text.
- Removed self._state = false when color setting did not succeed.
- Logging starts with a capital.
* Update api.py
- Removed ending perio in logging
- Reverted formating
- Removed self.device.entities.append(self)
-
* Update entity.py
- Removed self.device.entities.append(self)
* Update api.py
- Adding newline at end of file
- Added whitespave after ","
* Update api.py
Newline at end of file
* Update const.py
Removed unused.
* Update light.py
- seperated words with whitespaces
- improved debug text
* Update light.py
remove state setting after an error