* Allow only_cache parameter in zha.safe_read()
* Use cache_only for binary_sensor.zha initial update.
* Use cache_only for fan.zha initial update.
* Use cache_only for sensor.zha initial update.
* Use cache_only for switch.zha initial update.
* Use cache_only for light.zha initial update.
* Refactor cached only read in zha platform.
* Add zha.configure_reporting() method.
Binds a cluster and configures reporting for the specified attribute.
* git add homeassistant/components/binary_sensor/zha.py
* Refactor sensor.zha to use new 'configure_reporting() method.
* Zha configure reporting - switch (#1)
* use configure_reporting for zha switch
* lint fixes
* Rename variables/classes to properly reflect the content
* always export max_age/min_age
* downgrade errors of missing data
on start with empty recorder database these errors are logged multiple times:
ERROR (MainThread) [homeassistant.components.sensor.statistics] mean requires at least one data point
ERROR (MainThread) [homeassistant.components.sensor.statistics] variance requires at least two data points
downgrade them to debug as they are not meaningful to end users
* add change_rate attribute
this calculates the average change rate of all data points
* simplify count, reorder attribute calculation
* reorder initialization
* reorder attribute names
* don't use min/max for min_age/max_age
* add test case
* style
* style
* sort constants
* init variables with None
* add precision config setting
* round to precision
* test round
* code not working
* did it all all at once
* removing debug stuff
* fixing lint issues
* fixing lint issues
* I am blind
* I felt small(80 by somthing) was to small, especily with lovelace
* fixing silly mistake
* this shouldnt be here
* made some changes
* corrrected client_id
* corrrected client_id
* less returns needed
* Fixing Small bugs and making stuff snake case
* Tweaking
* Added error handling for sense API timeouts
* Moved imports in function
* Moved imports to more appropriate function
* Change exception to custom package version
* Updated sense_energy library to 0.4.2
* fixed median was based on 1.5 minute interval, not 1 hour
* ignore median and set state from first value, when previous state was None
* update before add, removed unused 'retries' and 'ble_timeout', check if platform ready
* added missing blank line
* fixed too long line
* using modern python 3.5 features, changed comment to be less verbose
* continuation line fix
* removed DEFAULT_SCAN_INTERVAL in favor of existing SCAN_INTERVAL
* Add support for older Envoy models
* Stop requiring envoy model name in config
* Update to envoy_reader0.2
* Minor formatting fixes
* run script/gen_requirements_all.py
* Minor formatting fixes
* Change some strings to constants, use getattr to call function
* Added support for Habitica
Second refactoring
Moved all config to component.
Sensors are autodiscovered.
Signed-off-by: delphi <cpp.create@gmail.com>
* Apply requested changes
Signed-off-by: delphi <cpp.create@gmail.com>
* Made event fire async. Made `sensors` config implicit and opt-out-style.
Signed-off-by: delphi <cpp.create@gmail.com>
* Removed unneeded check and await.
Signed-off-by: delphi <cpp.create@gmail.com>
* Moved into separate component package and added service.yaml
Signed-off-by: delphi <cpp.create@gmail.com>
* Fix coveralls
Signed-off-by: delphi <cpp.create@gmail.com>
* Added precipitation type from API
Enables users to see type of precipitation.
Value returned from API is a string in swedish.
* Corrected tox verification errors
Correction of tox findings
* Missed in tox - fixed
* Hound witespace fix
* Updated comment to trigger travis rebuild
Travis tox failed due to problem with tox build process.
Correcting in a comment to trigger retry in travis..
* Try to retrigger travis/tox successful rebuild
* Cleaning
* Cleaning more
* Trafikverket rebuilt for library
Extended pytrafikverket with weather sensor collction
Changed behaviour of sensor component to use pytrafikverket.
Added more sensors.
User need to change config to use new version.
[] Documentation needs to be updated
* Cleaned up based on Martins input
Appreciate the feedback
* Added support for velbus temperature sensors
* Bumped the required version
* updated requirements_all.txt
* Auto review comments fixed
* Updated after comments
* Updated after comments
* Fix travis
* Fix travis
* Inconsistent entity_id when multiple sensors
I am submitting a change to fix a [bug](https://github.com/home-assistant/home-assistant/issues/16204) for when there are several sensors for the same hostname. For example I want to track my IPv4 and IPv6 address. It creates two entities that regularly switch ids based on the order they get initialized.
To fix this I comform to the way other componnents have addressed the issue by adding an optional `name` attribute.
* Line too long
* Removing trailing whitespace
* Allow device registry to optionally store config entries
* Connections and identifiers are now sets with tupels
* Make config entries mandatory
* Fix duplicate keys in test
* Rename device to device_info
* Entity platform should only create device entries if config_entry_id exists
* Fix Soundtouch tests
* Revert soundtouch to use self.device
* Fix baloobs comments
* Correct type in test
* Adding noaa-tides changes to new branch.
* Fix typo in .coverageac
* Incorporate @MartinHjelmare and @fabaff changes.
* Disable pylint error and add error message for unavailable station.
* Two spaces before inline comments
* Increment py_noaa version to 0.3.0
* Updated requirements.py
* Minor changes
* First draft
* Generate device id
* No obscure registry
* Dont store config_entry_id in device
* Storage
* Small mistake on rebase
* Do storage more like entity registry
* Improve device identification
* Add tests
* Remove deconz device support from PR
* Fix hound comments, voff!
* Fix comments and clean up
* Fix proper indentation
* Fix pydoc issues
* Fix mochad component to not use self.device
* Fix mochad light platform to not use self.device
* Fix TankUtilitySensor to not use self.device
* Fix Soundtouch to not use self.device
* Fix Plex to not use self.device
* Fix Emby to not use self.device
* Fix Heatmiser to not use self.device
* Fix Wemo lights to not use self.device
* Fix Lifx to not use self.device
* Fix Radiotherm to not use self.device
* Fix Juicenet to not use self.device
* Fix Qwikswitch to not use self.device
* Fix Xiaomi miio to not use self.device
* Fix Nest to not use self.device
* Fix Tellduslive to not use self.device
* Fix Knx to not use self.device
* Clean up a small mistake in soundtouch
* Fix comment from Ballob
* Fix bad indentation
* Fix indentatin
* Lint
* Remove unused variable
* Lint
* Implement X10
* Add X10 after add_device_callback
* Ref device by id not hex and add x10OnOffSwitch name
* X10 services and add sensor device
* Correctly reference X10_HOUSECODE_SCHEMA
* Log adding of X10 devices
* Add X10 All Units Off, All Lights On and All Lights Off devices
* Correct ref to X10 states vs devices
* Add X10 All Units Off, All Lights On and All Lights Off devices
* Correct X10 config
* Debug x10 device additions
* Config x10 from bool to housecode char
* Pass PLM to X10 device create
* Remove PLM to call to add_x10_device
* Unconfuse x10 config and method names
* Correct spelling of x10_all_lights_off_housecode
* Bump insteonplm to 0.10.0 to support X10
* Add host to config options
* Add username and password to config for hub connectivity
* Add username and password to config for hub
* Convert port to int if host is defined
* Add KeypadLinc
* Update config schema to require either port or host
* Solidify Hub and PLM configuration to ensure proper settings
* Update hub schema
* Bump insteonplm version
* Fix pylint and flake issues
* Bump insteonplm to 0.12.1
* Merge insteon_plm and insteon_local to insteon
* Rename insteon_plm to insteon
* Bump insteonplm to 0.12.2
* Flake8 cleanup
* Update .coveragerc for insteon_plm, insteon_local and insteon changes
* Add persistent notification
* Fix reference to insteon_plm
* Fix indentation
* Shorten message and fix grammer
* Add comment to remove in release 0.90
* Hound fix
* Added error handling for sense API timeouts
* Moved imports in function
* Moved imports to more appropriate function
* Change exception to custom package version
* Add a sensor for netatmo public data
* A bit of cleanup before submitting pull request
* Add netatmo_public file to .coveragerc, as per pull request template instructions
* Fixes for tox complaining
* make calculations simpler, based on review feedback
* explicitly pass required_data parameter to netatmo API
* remove unnecessary spaces
* remove debug code
* code style fix
* Add new public transport sensor for RMV (Rhein-Main area).
* Add required module.
* Fix naming problem.
* Add unit test.
* Update dependency version to 0.0.5.
* Add new requirements.
* Fix variable name.
* Fix issues pointed out in review.
* Remove unnecessary code.
* Fix linter error.
* Fix config value validation.
* Replace minutes as state by departure timestamp. (see ##14983)
* More work on the timestamp. (see ##14983)
* Revert timestamp work until #14983 gets merged.
* Simplify product validation.
* Remove redundant code.
* Address code change requests.
* Address more code change requests.
* Address even more code change requests.
* Simplify destination check.
* Fix linter problem.
* Bump dependency version to 0.0.7.
* Name variable more explicit.
* Only query once a minute.
* Update test case.
* Fix config validation.
* Remove unneeded import.
* add enphase envoy component
* Add Enphase Envoy component for energy monitoring
* Fix formatting problems
* Fix formatting errors
* Fix formatting errors
* Fix formatting errors
* Change unit of measurement to W or Wh. Return sensor states as integers
* Fix formatting errors
* Fix formatting errors
* Fix formatting errors
* Move import json to update function
* Fix formatting. Add file to .coveragerc
* Add new component to requirements_all.txt
* Move API call to third party library on PyPi
* Refactor
* Run gen_requirements_all.py
* Minor refactor
* Fix indentation
* Fix indentation
* Added Altitude to opensky
* decided to take all metadata
* Final Tidy
* More formatting
* moving CONF_ALTITUDE to platform
* Moved CONF_ALTITUDE to platform
* Change to newer pip package
The package Adafruit_Python_DHT==1.3.2 was broken and would not install, breaking DHT sensor support in Home assistant. It has since been fixed in Adafruit-DHT==1.3.3.
See: https://github.com/adafruit/Adafruit_Python_DHT/issues/99
* Update requirements_all.txt
New or updated dependencies have been added to `requirements_all.txt` by running `script/gen_requirements_all.py`.
* Comment out Adafruit-DHT
Adafruit_Python_DHT changed name to Adafruit-DHT, which still need pyx support breaking our CI, need to be comment out.
* Update requirements_all.txt
* MVG Live sensor: add option to store multiple departures in attributes
* Fix lint error
* mvglive: take into account timeoffset in API call
* Prevent exception if departure list is empty
* Rename state_attributes -> device_state_attributes
* Add tests to command_line for json_attrs
* Add json_attrs to command_line
* Remove whitespace on blank line
* Stick to <80 row length
* Use collections.Mapping, not dict
* Rename *attrs to *attributes
* Remove extraneous + for string concat
* Test multiple keys
* Add test
Makes sure the sensor's attributes don't contain a value for a missing key,
even if we want that key.
* Test that unwanted keys are skipped
* Remove additional log line
* Update tests for log changes
* Fix ordering
* Suppress error between 00:00 and 01:00
Suppress an error that often occers between 00:00 and 01:00 CE(S)T during that time, probably because buienradar.nl is then updating its forcast for the next day. The API does not always work between these times (in the middle of the night).
* white space & import
* unnecessary brackets
## 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**
* Check if device supports lowBat and shows it only if battery is low
* Show empty battery icon if lowBat is true
* Default return None
* Sabotage attribute and icon if device has this feature
* Bug fix and cleanup
* Use dedicated function for security state
* Cleanup of sensor attributes and icons
* Empty
* delay setup of component
Copied the necessary lines of code from the google travel time component to fix the setup delay in waze travel time component. Previously it was only watching the homeassistant start event on the bus, but doing nothing with it.
* Update waze_travel_time.py
* Update waze_travel_time.py
* Update to next version with enum states
* Change to generic dimmer class
* Update of requirement files
* Update to hmip lib to v0.9.7
* Missing update of requirements files
* Cleanup of icon properties
* Added a "last update" sensor that could be used by automations + cosmetic changes
* Improved the update logic of sensor data
The platform is now continuously adjusting the refresh interval
in order to synchronize with the expected next update from the
NetAtmo cloud. This significantly improves reaction time of
automations while keeping the refresh time to the recommended
value (10 minutes).
* Linting
* Incorporated the advanced Throttle class to support adaptive
throttling, as opposed to integrating it in the core framework.
Following code review, it was suggested to implement the
specialised Throttle class in this platform instead of making a
change in the general util package. Except that the required change
(about 4 LoC) is part of the only relevant piece of code of that
class, therefore this commit includes a full copy of the Throttle
class from homeassistant.util, plus the extra feature to support
adaptive throttling.
* Cosmetic changes on the introduced "last updated" sensor
* Alternate implementation for the adaptive throttling
Ensure the updates from the cloud are throttled and adapted to the
last update time provided by NetAtmo, without using the Throttle
decorator. Similar logic and similar usage of a lock to protect
the execution of the remote update.
* Linting
* Add HomematicIP Cloud to config flow
* Inititial trial for config_flow
* Integrations text files
* Load and write config_flow and init homematicip_cloud
* Split into dedicated files
* Ceanup of text messages
* Working config_flow
* Move imports inside a function
* Enable laoding even no accesspoints are defined
* Revert unnecassary changes in CONFIG_SCHEMA
* Better error handling
* fix flask8
* Migration to async for token generation
* A few fixes
* Simplify config_flow
* Bump version to 9.6 with renamed package
* Requirements file
* First fixes after review
* Implement async_step_import
* Cleanup for Config Flow
* First tests for homematicip_cloud setup
* Remove config_flow tests
* Really remove all things
* Fix comment
* Update picture
* Add support for async_setup_entry to switch and climate platform
* Update path of the config_flow picture
* Refactoring for better tesability
* Further tests implemented
* Move 3th party lib inside function
* Fix lint
* Update requirments_test_all.txt file
* UPdate of requirments_test_all.txt did not work
* Furder cleanup in websocket connection
* Remove a test for the hap
* Revert "Remove a test for the hap"
This reverts commit 968d58cba1.
* First tests implemented for config_flow
* Fix lint
* Rework of client registration process
* Implemented tests for config_flow 100% coverage
* Cleanup
* Cleanup comments and code
* Try to fix import problem
* Add homematicip to the test env requirements
* Added support to HTTPS URLs on SynologyDSM
* Bumped python-synology to 0.1.1
* Makes lint happy
* Added attribution to Synology and fixed 3rd library version
* Fixed requirements_all.txt
* Makes SynologyDSM defaults to 5001 using SSL
* Added support for Duke Energy smart meters
* Fixed hound
* Added function docstring
* Moved strings to constants, implemented unique_id, and cleaned up setup.
* Added doc string.
* Fixed review issues.
* Updated pydukenergy to 0.0.6 and set update interval to 2 hours
* Updated requirements_all
* Update nut.py
Added input.frequency and a number of output parameters.
* Update nut.py
Fixed formatting issues
Added "devices" fields
* Separated "device.description" line to two lines.
* Update nut.py
Removed device.* sensors
* Add storage helper
* Migrate config entries to use the storage helper
* Make sure tests do not do I/O
* Lint
* Add versions to stored data
* Add more instance variables
* Make migrator load config if nothing to migrate
* Address comments
Current version only supports latitude and longitude or an address for the origin and destination fields. This update allows those fields to use entity IDs of device_tracker, zone, and sensor.
By default simulated sensors are relative to when they're activated,
instead we make this togglable with this new option 'relative_to_epoch',
and instead they become relative to 1970-01-01 00:00:00.