* Enhance yamaha component
This enhances the yamaha component to create 1 player per zone,
instead of only one play, which provides direct control of the various
zones for the player.
It also exposes play_media for NET_RADIO sources, which allows direct
setting of that.
This requires code changes in rxv 0.2.0, so the requirement dependency
is raised.
* Support current playback metadata for NET_RADIO
When on NET RADIO, support the currently playing information.
* Pilight daemon expects JSON serializable data. Thus dict is needed and not a mapping proxy.
* Add explanation why dict as message data is needed
* Use pytest-caplog and no unittest.TestCase
* #3899 - Ecobee tempoeratures
* #3899 Remove unused import
* #3899 Implement min/max_temp in ecobee.py as these temperatures have to be in F for ecobee api.
* #3899 Stale print
* #3899 Use min/max_temp from base class
* #3899 Removed unused import (again) so tests pass since changing to use super class
* #3899 Fix long lines
* #3899 Install tox locally... make it happy, commit
* #3899 Remove overridden min/max_temp and instead update __init__:min/max_temp to convert to self.temperature_unit (of the thermostat) as opposed to self.unit_of_measurement (of the system), which is wrong
* Remove unused import from ecobee
* #3829 - Fixed type LowHighTuple doesn't define __round__ method issue when Nest is operating in range mode
* Testing if temperature is a tuple instead int or float
* added push notification implementation
* some lint changes
* added docs
* added push notification implementation
* some lint changes
* added docs
* Fixed comment formatting issues
* Added requirments
* Update requirements_all.txt
* Update apns.py
* re-generated requirments_all.txt
* Added link to online docs
* added push notification implementation
* some lint changes
* added docs
* added push notification implementation
* some lint changes
* added docs
* Fixed comment formatting issues
* Added requirments
* Update requirements_all.txt
* Update apns.py
* re-generated requirments_all.txt
* Added link to online docs
* changed to use http/2 library for push notifications
* fixed lint issue
* fixed test that fails on CI
* another go at fixing test that fails on CI
* another go at fixing test that fails on CI
* another go at fixing test that fails on CI
* added missing docstring
* moved service description to main services.yaml file
* renamed apns service
requests/urllib3 is notorious for using the INFO log level for very
DEBUG kinds of information. Given the configurability of python
logging it's actually pretty easy to just set requests to WARN by
default. This cleans out a bunch of largely unuseful log lines from
home assistant output.
Instead of globally using StrictUndefined, introduce a filter that
will trigger a render failure on undefined variables.
Use as `{{ value_json.someval | is_defined }}`.
By not successfully rendering unknown objects to an empty string
the caller provided error_value actually gets used.
This allows, for instance, the MQTT sensor to retain its state when an
unexpected or unwanted message (#2733/#3834) is received.
* Emoncms_history component, fix git mess
* - switch to track_point_in_time to send all data at foxed interval
- don't use json_dump
- switch to http post instead of http get
* first version
* First draft component entities
* Change add_entities to callback from coroutine
* Fix bug add async_prepare_reload
* Group draft v1
* group async
* bugfix
* bugfix v2
* fix lint
* fix extract_entity_ids
* fix other things
* move get_component out of executor
* bugfix
* Address minor changes
* lint
* bugfix - should work now
* make group init async only
* change update handling to old stuff
* fix group handling, remove generator from init
* fix lint
* protect loop for spaming with updates
* fix lint
* update test_group
* fix
* update group handling
* fix __init__ async trouble
* move device_tracker to new layout
* lint
* fix group unittest
* Test with coroutine
* fix bug
* now it works 💯
* ups
* first part of suggestion
* add_entities to coroutine
* change group
* convert add async_add_entity to coroutine
* fix unit tests
* fix lint
* fix lint part 2
* fix wrong import delete
* change async_update_tracked_entity_ids to coroutine
* fix
* revert last change
* fix unittest entity id
* fix unittest
* fix unittest
* fix unittest entity_component
* fix group
* fix group_test
* try part 2 to fix test_group
* fix all entity_component
* rename _process_config
* Change Group to init with factory
* fix lint
* fix lint
* fix callback
* Tweak entity component and group
* More fixes
* Final fixes
* No longer needed blocks
* Address @bbangert comments
* Add test for group.stop
* More callbacks for automation
* Added the ability to Weather Underground to track severe weather alerts
* * Added message on the advisory attr
* Updated tests
* * Making use of guard clause
* Checking multiple_alerts prior loop
* Using a better way to create dict
* Fixed issue to set to None only the object that failed
* Added unittest
* Split update() method to different calls with their one throttle control to minimize API calls
* Updated unittest and make sure the alert sensor will not return 'unknown' status'
* Removed update() method from state property
* Branch rebased and include Weather Underground attribution
* Update wunderground.py
* Relaxes the configuration options for influxdb
By default influxdb allows unauthenticated access
Home Assistant required at least username and password to be present to properly submit data to influxdb
* Removes unused import of 'copy'
The copy module was used only in the removed test case responsible for testing the missing keys
* Updates InfluxDB config schema to require user and password
Current InfluxDB (v 1.0) can work without any authentication, but when authentication is enabled both username and password should be set.
* Removes extra white space in test_influxdb.py
* added error handling to mqtt message receive if payload is not utf-8 unicode
added mqtt test for above code as well
* change permission back to 644
* attempting to test new code
* changed exception to AttributeError
fixed test for above
* fixed lint errors I made in tests....mqtt/test_init.py
* more lint fixes for my added test
* remove dual decode of MQTT payload
* convert if to try, except, else statement for mqtt payload decode
* rework mqtt unicode testing code to properly check for log file entriy on unicode decode exception
* fixed lint error
* Update test_init.py
* Initial Zoneminder commit
* Fixing bug when ZM sets its function to 'None'
* Adding zoneminder to coverage
* Quick Doc fix
* Update zoneminder.py
Doc Fix
* making the url base optional
This adds a sensor component that builds sensors based on the arwn
project (https://github.com/sdague/arwn). This uses a 433mhz receiver
to collect weather data and publish it over mqtt in a well defined
schema, which home-assistant can display as sensors.
* Add Alexa Flash Briefing Skill API support
* Set default value for text to empty string as per API docs
* Clean up existing Alexa tests
* Update configuration parsing and validation
* Add tests for the Flash Briefing API
* Update test_alexa.py
* added include and exclude functionality to history component
* fixed summary lines in test method doc.
* cleanup of query filter creation
* o improved config validation
o move move IGNORE_DOMAINS to Filter.apply()
o removed config from Last5StatesView
o Filters instance is now created on setup
o config values are processed in setup and set to the Filters instance
o function _set_filters_in_query() moved to Filters class and renamed to apply()
* added unittests for more include/exclude filter combinations
* make pylint happy
* Fixes an issue where Chromecast audio groups were not properly discovered
* Forgot to commit the main fix
* Removes unused variable
* Doesn't use a protected API anymore
* PR remarks
* Fixes tests, adds comment
* Restores line as it was in the original commit, rephrases comment
* Should fix lint issues
* Trailing whitespace
* Some more lint
* Add files via upload
* Update .coveragerc
* test
* Update synology camera
* Use voluptuous for synology
* Use voluptuous for synology
* Use voluptuous for synology
* Use voluptuous for synology
* Conform synology to flake8
* Added Whitelist to synology
* Sync to dev branch
* Added helper function to synology
* Separate platform and presentation units in climate
* Fix unit tests
Maybe
* Fix unit tests some more
Maybe
* Rename _platform_unit_of_measurement to temperature_unit
* Fix tests for renamed attribute
* Added additional checks which hides functions which are not support (like fans / humidity / cooling)
* Fixed pylint and flake8 errors (not test file available)
* Fixed pydocstyle error
* Refactored Code and Comments as described in pull-request
* Added additional comment and requesting retest
* Upgraded to python-nest 2.11 which contains previously hidden functions
* Cache condition in helpers.Script
The caching is a simple in-memory, per-instance dictionary.
We use __str__ to format cache keys.
This naive implementation has some disadvantages (e.g., we won't be able
to cache two conditions that contain references to
distinct-but-equivalent object instances and we don't have any control
over the size of the condition cache), but for most simple use-cases the
approach should be good enough.
Resolves#3629
* Fix docstring style
* Basic support for Netatmo welcome binary sensors
Signed-off-by: Hugo D. (jabesq) <jabesq@gmail.com>
* Bug fixes and optimization for Netatmo devices
Signed-off-by: Hugo D. (jabesq) <jabesq@gmail.com>
* pylint fixes
* Bug Fixing and optimization for Netatmo devices
Signed-off-by: Hugo D. (jabesq) <jabesq@gmail.com>
* Add unique_id for cameras to avoid duplicate
And global config to disable discovery for netatmo devices
Signed-off-by: Hugo D. (jabesq) <jabesq@gmail.com>
* Change approved_ips from string to cidr validation
Relabel to trusted_networks, better reflecting its expected inputs,
everything that ipaddress.ip_networks recognizes as an ip network
is possible:
- 127.0.0.1 (single ipv4 addresses)
- 192.168.0.0/24 (ipv4 networks)
- ::1 (single ipv6 addresses)
- 2001:DB8::/48 (ipv6 networks)
* Add support for the X-Forwarded-For header
The command line cover value template is optional so we
need to check it's not none before assigning hass to it.
Fixes#3649
Signed-off-by: Roi Dayan <roi.dayan@gmail.com>
* Initial version of "haveibeenpwned" sensor component
* 2 flake8 fixes
* remove debugging error message
* Increase scan_interval as well as throttle to make sure that during initial startup of hass the request happens with 5 seconds delays and after startup with 15 minutes delays. Scan_interval is increased also to not call update as often
* update .coveragerc
* remove (ssl) verify=False
* - use dict to keep the request values with email as key
- use track_point_in_time system to make sure data updates initially at 5 seconds between each call until all sensor's email have a result in the dict.
* fix a pylint error that happend on the py35 tests
* Add discovery support for Netatmo Weather station
Only The weather information are currently supported (No battery or wifi status supported)
Signed-off-by: Hugo D. (jabesq) <jabesq@gmail.com>
* Add unique_id for netatmo sensors to avoid duplicate
Signed-off-by: Hugo D. (jabesq) <jabesq@gmail.com>
* Update requirements_all.txt and PEP8 fixes
Signed-off-by: Hugo D. (jabesq) <jabesq@gmail.com>
* Rename Forecast.io platform to Dark Sky
* Upgrade to python-forecastio to 1.3.5
* Update to reflect name change (Forecast.io -> Dark Sky)
* Rename forecast to darksky
* Bugfix signhandling/services
* change from coroutine to callback
* add error handling
* fix bug with endless running
* fix unit test
* Revert "fix unit test"
This reverts commit 31135c7709.
* Disable sigterm/sighup test
* Add async_safe annotation
* More async_run_job
* coroutine -> async_save
* Lint
* Rename async_safe -> callback
* Add tests to core for different job types
* Add one more test with different type of callbacks
* Fix typing signature for callback methods
* Fix callback service executed method
* Fix method signatures for callback