Commit Graph

24521 Commits (a12c4da0ca4c182ff1c6071f9880d66eac626adb)

Author SHA1 Message Date
Paulus Schoutsen a6eb776768 Merge remote-tracking branch 'origin/master' into dev 2020-02-15 21:39:55 -08:00
J. Nick Koston 096e7cceed
Support XML conversion for RESTful sensors (#31809)
* Support XML conversion for RESTful sensors

Many devices continue to use XML for RESTful
APIs.  Interfacing with these APIs requires custom
integrations or command line fork()/exec() overhead
which many of these devices can work with as if
they were JSON using xmltojson via this spec:
https://www.xml.com/pub/a/2006/05/31/converting-between-xml-and-json.html

This change implements converting XML output to
JSON via xmltojson so it can work with the existing
rest sensor component.  As the attributes that
usually need to be scraped are deeper in the document
support for passing in a template to find the
JSON attributes that have been added.  JSON APIs that
do not have their attributes at the top level
can also benefit from this change.

* Auto convert xml, change out the template for jsonpath

* Address review items and potentially unexpected normalize behavior with jsonpath

* Revert "Address review items and potentially unexpected normalize behavior with jsonpath"

This reverts commit fe9e179092.

* json_dict[0] turned out to be needed
2020-02-15 21:10:23 -08:00
Joseph Albert fee0d8dbdd
Add rainforest_eagle support for legacy hardware (#28082)
* Add compatibility with Legacy EAGLE models.

* added mdns resultion via zeroconf

* Added requirements to requirements_all.txt

* Fixed model determination bug

* Fixed formatting issue for Eagle-200 responses.

* Remove mDNS resolution, IP now required.

* added pypi deps, fixed handling of optional params

manifest updates

* Fixed import order per isort.

* Two pylint fixes.

* More consistent try-fail structure to guessing hardware.  Errors actually fail.
2020-02-15 21:10:04 -08:00
J. Nick Koston f6d9e6b6c5
Convert august to async so a token refresh lock can be used (#31848)
* Convert august to async so a token refresh lock can be used

* Update comment since we now have a lock

* Do not mock the lock

* Address review items
2020-02-15 21:08:52 -08:00
Philip Rosenberg-Watt fb8cbc2e93
Fix CalDAV recurring events (#31805)
* Fix CalDAV parsing of recurring events

Some CaDAV servers (see: SOGo) return the original event that contains
the recurrence rules. The CalDAV calendar component sorts and filters
events based on their start and end dates, and was failing to properly
show recurring events based on these recurrence rules.

This this change checks if an event has recurrence rules and changes the
start/end dates of the event to today if the event is set to occur
today. This allows the rest of the component logic to function properly.

* Use date from nextmost occurence

* Adding unit tests

* Add endless event unit test

* Create new vevent for each event recurrence today

* Remove redundant unit test

* Add timezone to events that have none

Python cannot compare them otherwise.

* Simplify code, add comments & guard clause

* Add test for recurring all day event

* Account for all-day events

* Remove redundant code

* Remove redundant code

* Remove unnecessary deepcopy

* Add hourly recurring tests

* Add tests for hourly repeating event

* Fix unit test

* Use event.copy()
2020-02-15 19:31:36 -08:00
HomeAssistant Azure 3fb80712be [ci skip] Translation update 2020-02-16 00:31:42 +00:00
jjlawren 91018034b6
Use new custom_serializer (#31871) 2020-02-15 15:36:57 -08:00
Moshe Kaplan 7dff5e79d1
Add support for displaying Daf Yomi (#30628)
* Add support for displaying Daf Yomi

* Ran black --fast

* Added docstring to get_daf

* Further lint fixes

* Remove unnecessary else

* clarify code

* Use fstrings

* pull daf yomi from hdate

* Update manifest version for daf_yomi support

* fix variable usage

* Update requirements

* Also pass in today's date as well

* Rename date variable to daytime_date

* Add tests for daf yomi sensor

* Update stale test IDs
2020-02-16 00:00:17 +01:00
Chris Caron 481d3295a6
Bump Apprise version to v0.8.4 (#31868) 2020-02-15 23:58:42 +01:00
Daniel Høyer Iversen 8c270e6fc7
update pyTibber libary, add signal strength for Pulse and watty (#31851)
* update pyTibber libary, add signal strength for Pulse and watty

* update pyTibber libary, add signal strength for Pulse and watty
2020-02-15 13:52:56 -08:00
Massimiliano Cannarozzo 2c42e2aa79
Improve media name detection on lg_netcast (#31863)
When the tv is using an external input (e.g. HDMI1) values have to be taken from fields otherwise they'll empty
2020-02-15 13:48:30 -08:00
Paulus Schoutsen 02002ac3b9
Update codecov.yml 2020-02-15 13:06:08 -08:00
Ville Skyttä 733f1e1101
Helpers typing improvements (#31865) 2020-02-15 13:03:53 -08:00
Martin Hjelmare 588f2cd920
Revert "Check netgear device_tracker link_rate to ensure device is connected" (#31855)
This reverts commit 669844e4dd.
2020-02-15 17:21:04 +01:00
Michaël Arnauts b8f9ff76b3
Add Tado water_heater (#30095)
* Add Tado water_heater

* Don't use climate CONSTS

* Fix logging text

* Add changes for multiple bridge support

* Address remarks

* should_poll must be False

* Remove additional async_schedule_update_ha_state()

* Not for climate
2020-02-15 17:08:21 +01:00
Ville Skyttä 1609e33030
Simplify missing Garmin Connect data handling, mark entities un/available (#31718)
* Simplify missing Garmin Connect data handling, mark entities un/available

* Remove unnecessary else
2020-02-15 17:53:10 +02:00
Robin e38522c612
Bump pillow to 7.0 (#31847) 2020-02-15 11:59:41 +01:00
Massimiliano Cannarozzo 4e54dfa874
Add turn_on_action configuration variable (#31792)
Allow to turn on the TV using an external service
2020-02-15 10:57:04 +01:00
HomeAssistant Azure f3a8196fb5 [ci skip] Translation update 2020-02-15 00:31:45 +00:00
Paulus Schoutsen 68d2a1107e
Merge pull request #31841 from home-assistant/rc
0.105.4
2020-02-14 16:29:09 -08:00
Paulus Schoutsen 350726d938 Revert "For vizio integration, set unique ID early to prevent multiple zeroconf discovery items for the same device to appear (#31686)"
This reverts commit 295963f8e8.
2020-02-14 15:47:14 -08:00
Paulus Schoutsen 8140c033fa Bumped version to 0.105.4 2020-02-14 15:30:23 -08:00
Franck Nijhof f26cbbdef9 Spotify integration hotfixes (#31835)
* Remove services file, incorrect info

* Guard currently playing for being a NoneType

* Revert "Guard currently playing for being a NoneType"

This reverts commit f5f56b0db0.

* Guard currently playing item is None

* Process review suggestions
2020-02-14 15:30:11 -08:00
Paulus Schoutsen 7705eb7941 Google Assistant: Remove speaker type and earlier filter out devices from being locally exposed (#31830)
* Remove speaker type

* Do not expose locks or alarms to Google Local
2020-02-14 15:30:11 -08:00
Paulus Schoutsen af9832d468 Fix person device_trackers null (#31829) 2020-02-14 15:30:10 -08:00
Bram Kragten f042c6f8d5 Updated frontend to 20200130.3 (#31771) 2020-02-14 15:29:41 -08:00
SukramJ 656c901f7b Fix smoke detection for HomematicIP Cloud (#31753) 2020-02-14 15:29:10 -08:00
Paulus Schoutsen 30e302a8a3 Fix person reload service (#31716) 2020-02-14 15:29:09 -08:00
cgtobi 7edf0460cc Fix missing device class in netatmo binary sensors (#31693)
* Bring back device class

* Add door tag sensors types

* Actually discover individual tags per camera
2020-02-14 15:29:08 -08:00
Raman Gupta 295963f8e8 For vizio integration, set unique ID early to prevent multiple zeroconf discovery items for the same device to appear (#31686)
* set unique ID early to prevent multiple zeroconf discovery items for the same device to appear

* add test
2020-02-14 15:29:08 -08:00
Paulus Schoutsen 966df6a411 Guard writing automation/scene/script config (#31568) 2020-02-14 15:29:07 -08:00
Paulus Schoutsen 4501471b8c
Google Assistant: Remove speaker type and earlier filter out devices from being locally exposed (#31830)
* Remove speaker type

* Do not expose locks or alarms to Google Local
2020-02-14 15:28:11 -08:00
Paulus Schoutsen 52b045ed30
Fix person device_trackers null (#31829) 2020-02-14 15:27:31 -08:00
Franck Nijhof f396f1cb18
Spotify integration hotfixes (#31835)
* Remove services file, incorrect info

* Guard currently playing for being a NoneType

* Revert "Guard currently playing for being a NoneType"

This reverts commit f5f56b0db0.

* Guard currently playing item is None

* Process review suggestions
2020-02-14 22:58:39 +01:00
Vilppu Vuorinen 614be5c1bb
Remove energy sensor from incompatible Ata devices (#31831)
An AtaDevice has a boolean flag describing whether it supports energy
consumption metering. The flag was ignored resulting in sensor entities
reporting constant 0 kWh consumption.

* Update pymelcloud dependency to support the has_energy_consumed_meter
flag.

* Add ATTR_ENABLED_FN to sensor definitions for filtering out
unsupported sensors.

* Fix typing issue in sensor constructor.

* Remove unused UnitSystem constructor parameter.
2020-02-14 21:11:51 +01:00
Robert Svensson 043d36f7c6
Change multi_select config validator to class (#31828)
* Move multi_select to class

* Fix serializer and add test

* Serializer should also return options
2020-02-14 11:09:40 -08:00
Aaron Bach d6f0c26e7f
Fire HASS events on SimpliSafe events (#31811)
* Fire HASS events on SimpliSafe events

* Bump simplisafe-ptyhon to 7.3.0

* Update reqirements

* Updates

* Revert "Updates"

This reverts commit 5581889417.

* Restrict which events get fired

* Code review comments
2020-02-14 11:24:35 -07:00
Paulus Schoutsen e019280d94
Annotate more async functions correctly (#31802) 2020-02-14 10:00:22 -08:00
Paulus Schoutsen 71a81c443f
Limit translations_develop to an integration (#31804)
* limit translations_develop to english

* Convert to Python

* Limit to integration

* Add to hassfest

* Remove old bash comment
2020-02-14 09:26:50 -08:00
Abílio Costa e6148d223a
Allow hourly forecast in IPMA (#30979)
* update ipma component for pyipma 2.0
* fix wind speed; refactor forecast
* update requirements*.txt
* fix tests; update CODEOWNERS; update pyipma to 2.0.1
* minor changes as suggested in PR
* make lint happy
* fix mocking coroutines
* restore old unique id
* fix station lat/lon; update pyipma version
* add hourly forecast option to IPMA
* add forecast tests
* use for instead of lambda
2020-02-14 12:04:41 -05:00
SukramJ 9eb0415234
Speed up tests of HomematicIP Cloud (#31810)
* Speed up tests of HomematicIP Cloud

* load the json once
2020-02-13 22:56:17 -08:00
Chris Talkington f9fda7d616
update directv to directpy==0.6 (#31812) 2020-02-13 17:47:16 -08:00
jjlawren 408b41ea02
Add device registry support for Plex (#31797)
* Add device registry support for Plex

* Fix model

* Use Plex server as sensor device identifier
2020-02-13 16:37:52 -08:00
Vladimír Záhradník f0b2d50e41
Fix swap of min and max default values in Modbus climate (#31801) 2020-02-13 16:34:42 -08:00
jjlawren eb3097506f
Add summary attribtue for currently playing media (#31803) 2020-02-13 16:34:12 -08:00
HomeAssistant Azure 32bc94bdd6 [ci skip] Translation update 2020-02-14 00:31:49 +00:00
SukramJ 2f3ab15268
Remove force from async_schedule_update_ha_state for HMIPC (#31796)
* remove force from async_schedule_update_ha_state if HMIPC

* Fix lint
2020-02-13 16:24:43 -08:00
Paulus Schoutsen ebeab7f44c
Update codecov.yml 2020-02-13 16:15:46 -08:00
jjlawren 59932545ab
Update Plex connection class to push (#31806) 2020-02-13 16:45:48 -07:00
Robbie Trencheny f6341ed3de
Add Home Assistant Companion to manifest.json so we can sugges… (#31808) 2020-02-13 15:44:45 -08:00