Commit Graph

19376 Commits (4f317353e08d28661d67682e5f6437802ae8b5dc)

Author SHA1 Message Date
thomkaufmann 4f317353e0
Add Nuki Opener integration (#35702)
* Add Nuki Opener integration

* Update pynuki version requirement; fix typo

* Update requirements_all.txt

* Create base class of shared lock and opener code

* Clean up code formatting

* Update requirements_all; Run isort

* Remove unnecessary pass statements
2020-05-20 14:44:57 +02:00
Fredrik Erlandsson 2b3cf97979
Fix Daikin duplicate entries (#35833) 2020-05-20 13:25:42 +02:00
Franck Nijhof ee92d64088
Add UUID to ZeroConf service info (#35623) 2020-05-20 08:37:32 +02:00
Xiaonan Shen b452db8b67
Add dynamic icon to roomba battery sensor (#35647)
* Add dynamic icon to roomba battery sensor

* Fix lint

* Rename _state to _robot_state
2020-05-20 00:19:27 -05:00
HomeAssistant Azure c10aa13d0b [ci skip] Translation update 2020-05-20 00:03:49 +00:00
Boris Kaplounovsky 37f9b24a85
Add xiaomi miio services remote_set_led_on/off (#35805)
* Add services remote_set_led_on/remote_set_led_off to control changmi_ir led

* pylint: elif => if

* Fix services.async_register => platform.async_register_entity_service

* Update homeassistant/components/xiaomi_miio/remote.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* more fixes

* async

* more fixes

* fix

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-05-20 00:23:18 +02:00
Robert Svensson 648df6d984
UniFi - Fix disabled entities being enabled after a restart (#35819)
* Async remove call removed too much, resulting in disabled entities coming back after a restart

* Calling super().async_remove is no longer needed, changed to self.async_remove

* Yes, they should be sets...
2020-05-19 23:57:41 +02:00
Tom Harris 28db0cebf0
Fix Insteon cover and smoke detector entities (#35810)
* Bump pyinsteon to 1.0.1

* Fix cover open/close calls

* Add smokebridge sensors

* trigger tests

* trigger tests
2020-05-19 19:38:00 +02:00
Odin Ugedal 6c4a6568f5
Fix timezone issues for db fields in recorder (#35719)
The database fields are timezoned via DateTime(timezone=True), so the
default value should be timezoned too. When using cockroachdb this is
fatal and results in the recorder crashing.
2020-05-19 13:13:27 -04:00
Bram Kragten 2da718d7e8
Updated frontend to 20200519.0 (#35813) 2020-05-19 13:07:15 -04:00
uvjustin 8c8feb95a9
Change version check in forked-daapd zeroconf step (#35796) 2020-05-19 15:17:02 +02:00
Nick Whyte a51372f7b3
Fire events on homekit TV remote key press (#29588)
* Fire events on homekit TV remote key press

* Changes from code review

* black

* isort

* flake8

* Update tests/components/homekit/test_type_media_players.py

Co-authored-by: J. Nick Koston <nick@koston.org>

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-05-19 08:11:04 -05:00
Felipe Martins Diel 2b38df2766
Allow underscores in broadlink hostnames (#35791)
* Allow underscores in hostnames

* Ignore case
2020-05-19 13:46:12 +02:00
Ron Klinkien 12ec476821
Update to garminconnect 0.1.13 (#35750)
* Update to garminconnect 0.1.13

This will fix body composition sensors being unavailable

* Update requirements_all to garminconnect 0.1.13

* Update requirements_test_all.txt
2020-05-19 07:40:31 -04:00
Alexei Chetroi 188255bd81
Bump up ZHA dependencies. (#35797) 2020-05-19 06:50:05 -04:00
Anders Melchiorsen d6a5cb6083
Upgrade pysonos to 0.0.30 (#35793) 2020-05-19 08:58:51 +02:00
J. Nick Koston ebed1de581
Avoid creating multiple sqlalchemy sessions in a single history call (#35721)
* Avoid a context switch in the history api

The history api was creating a job to fetch the
states and another job to convert the states to
json. This can be done in a single job which
decreases the overhead of the operation.

* Ensure there is only one sqlalchemy session created per history
query.

Most queries created three sqlalchemy sessions which was
especially slow with sqlite since it opens and closes the
database.

In testing the UI is noticeably faster at generating history
graphs for entites.

* Add additional coverage

* pass hass first to _states_to_json and _get_significant_states
2020-05-19 07:52:38 +02:00
Jason Hunter aeae4edb74
Fix ONVIF subscription renewal (#35792)
* fix subscription renewal

* catch ValueError for #35762
2020-05-18 23:02:23 -04:00
HomeAssistant Azure ef6b1f9302 [ci skip] Translation update 2020-05-19 00:04:18 +00:00
gadgetmobile 93fddbed2b
Fix review requests for BleBox support from #35370 (#35786)
* fix review requests from #35370

* fix pylint W0621 (redefined-outer-name)
2020-05-18 22:30:15 +02:00
uvjustin 8258fa515d
Skip forked_daapd ignored entries with empty entry.data (#35772) 2020-05-18 21:40:39 +02:00
Bram Kragten a8fb627abc
Updated frontend to 20200518.0 (#35785) 2020-05-18 21:38:25 +02:00
Aaron Bach b464d276e2
Add support for templates in Slack blocks (#34704) 2020-05-18 12:00:23 -06:00
J. Nick Koston 6885d72180
Avoid a context switch in the history api (#35716)
* Avoid a context switch in the history api

The history api was creating a job to fetch the
states and another job to convert the states to
json. This can be done in a single job which
decreases the overhead of the operation.

* Revert to original solution to avoid function redefine each call
2020-05-18 11:57:16 -05:00
MatsNl aec68a9c2d
Bump Atag dependency to 0.3.1.2 (#35776) 2020-05-18 18:12:00 +02:00
Fredrik Erlandsson d0e8880e48
Fix daikin discovery flow (#35767) 2020-05-18 16:57:52 +02:00
J. Nick Koston 50105eed74
Handle UPS disconnects in NUT (#35758) 2020-05-18 16:23:05 +02:00
Daniel Høyer Iversen affd11b372
Update mill manifest to reflect config flow (#35748) 2020-05-18 11:00:44 +02:00
Anders Melchiorsen 796e6141ac
Handle Sonos changing IP address (#35639) 2020-05-17 20:20:10 -05:00
Josef Schlehofer 52a7a7175b
Upgrade sqlalchemy to 1.3.17 (#35745) 2020-05-17 20:07:23 -05:00
HomeAssistant Azure 2e0c0ded51 [ci skip] Translation update 2020-05-18 00:03:08 +00:00
gadgetmobile 312080de08
Cleanup BleBox platforms (#35552) 2020-05-17 18:56:49 -05:00
gadgetmobile 902eb187ef
Add Blebox lights support (#35370)
* add BleBox lights support

* cherry pick refactoring from #35552

* Inherit from LightEntity instead of Light

Co-authored-by: J. Nick Koston <nick@koston.org>

* import LightEntity instead of Light

Co-authored-by: J. Nick Koston <nick@koston.org>

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-05-17 18:54:32 -05:00
Andrew Fahrenholtz a03cb93f87
Add ARWN rain total and rain rate sensors (#35751)
* add rain total and rain rate sensors

* linting

* linting
2020-05-17 23:17:08 +02:00
J. Nick Koston 03b14c9aae
Add sw_version and connections to sonos devices (#35743) 2020-05-17 16:16:50 -05:00
J. Nick Koston f085fb1499
Set lifx device sw_version (#35739)
This change solves an issue where homekit would
think the firmware was out of date on the bulb
because no version was set.
2020-05-17 16:16:09 -05:00
tetienne 3815d7d74f
Add Somfy hub as device (#35209) 2020-05-17 16:14:11 -05:00
J. Nick Koston 8eb7777561
Ensure homekit version strings conform to spec (#35741)
HomeKit requires all version strings to be in the
format MAJOR.MINOR.REVISION
2020-05-17 15:51:51 -05:00
Adam Belebczuk 5104b79b4b
Bump PyWeMo version to 0.4.43 (#35693)
* PyWeMo version bump to 0.4.43

Changes necessary to safely upgrade to pyWeMo 0.4.43. This includes catching ActionExceptions that may be thrown by pyWeMo when it is unable to interact with a physical device.

* Black formatting fix

* Fix isort issues

* Code review changes

* More code review fixes

* Linting fix

* Undo dict.get change

* Change a couple instances of dict[key] to dict.get
2020-05-17 22:13:38 +02:00
springstan b42a197293
Add and use ELECTRICAL_CURRENT_AMPERE, ELECTRICAL_VOLTAGE_AMPERE constants (#33990)
* Add and use ELECTRICAL_CURRENT_AMPERE constant

* Add and use ELECTRICAL_VOLTAGE_AMPERE constant

* Rename ELECTRICAL_VOLTAGE_AMPERE to ELECTRICAL_VOLT_AMPERE

* Fix imports
2020-05-17 15:58:31 +02:00
Tom Harris dbd821a564
Change Insteon backend module to pyinsteon from insteonplm (#35198)
* Migrate to pyinsteon from insteonplm

* Rename devices entities

* Print ALDB even if not loaded

* Add relay to name map

* Change insteonplm to pyinsteon

* Update requirements_all correctly

* Code review updates

* async_set_speed receive std speed value

* default speed to std medium value

* Call async methods for fan on/off

* Comment await required in loop

* Remove emtpy and add codeowner

* Make services async and remove async_add_job call

* Remove extra logging

* New device as async task and aldb load in loop

* Place lock in context bloxk

* Limiting lock to min

* Remove .env file
2020-05-17 15:27:38 +02:00
uvjustin 47801e7350
Abort forked-daapd zeroconf flow if version < 27 (#35709)
* Change MediaPlayerDevice to MediaPlayerEntity

* Abort zeroconf if mtd-version < 27.0
2020-05-17 09:23:44 -04:00
rhadamantys d98bd418b1
Add restore last state for EnOcean Sensors (#34375) 2020-05-17 15:12:49 +02:00
Alan Murray 65e509ed8f
Add Acmeda integration (#33384)
* First cut of Rollease Acmeda Pulse Hub integration.

* Acmeda integration improvements:
 - Moved common code into a base entity
 - Battery level sensor added
 - Localisation now working

* Added requirement for aiopulse now that it has been uploaded to PyPI.

* Exclude acmeda integration from coverage check as it relies on a hub being present.

* Fix Travis CI build issues.

* Remove unused constants.

* Remove unused group logic from cover.py

* Removed commented code from base.py

* Remove sensors (battery entities) on removal of hub.

* Remove unused groups from sensor.py

* Acmeda device and entity update made fully asynchronous using subscriptions to remove need for config polling.

* Updated aiopulse version dependency.
Removed non-functional battery charging indication.

* Rationalised common code to update entities into helpers.py

* Fix linting issue.

* Correct additional CI pylint errors.

* Index config_entries by entry_id.
Move entity loading and unloading to __init__.py
Add entry_id to dispatcher signal
Removed now unused polling code hub
Added config_flow unit tests

* Tweak to integration config_entry title.

* Bumped aiopulse module to 0.3.2.
Reduced verbosity of aiopulse module.

* Changed to using direct write of device state.
Removed old style async_step_init config_flow step.

* Remove superfluous battery_level and device_state_attributes from battery entity.

* Removal of unused strings.
Removal of unused create_config_flow helper.
Removal of stale comment.

* Remove use of shared container to track existing enities.
Moved removal and deregistration of entities to base class through use of dispatch helper.

* Fixed strings.json

* Fix incorrect use of remove instead of pop on dict.

* Add support for tilting covers, bump aiopulse version number.

* Bump aiopulse version to v0.3.4.
Fixed bug in cover supported_features.

* Bumped aiopulse version to 0.4.0
Update acmeda .coveragerc exclusions

* Removed already configured hub check from __init__.py async_setup_entry
Removed passing in hass reference to base entity class
Renamed entity async_reset to async_will_remove_from_hass
Changed device_info and properties
Migrated to CoveEntity from CoverDevice
Added dispatched_connect cleanup on hub removal
Removed unused entries from manifest
Removed override of battery icon
Renamed translations folder

* Reversed unintended change to .coveragerc

* Fixed config flow for multi-hub discovery.

* Acmeda enhancements as requested by MartinHjelmare

* Force import to connect to hub to retrieve id prior to creating entry

* Remove YAML configuration support.

* Tidied up config_flow and tests:
 - removed unnecessary steps
 - fixed typos

* Removed storage of hub in config_flow.
2020-05-17 12:15:06 +02:00
Raman Gupta eec1b3e7a7
Reduce Vizio API calls (#35726)
* reduce calls to API

* get apps list every time

* fix typo
2020-05-17 12:13:53 +02:00
Daniel Høyer Iversen e2551b4e21
Upgrade opengarage lib to 0.1.4 (#35729) 2020-05-17 12:09:16 +02:00
Joakim Plate 62aa16e6e3
Support config entry unload in arcam_fmj (#35656)
* Support entry unload

* Switch to create_task and skip checking for available task
2020-05-17 12:05:21 +02:00
Joao Carreira df830a50e7
Add support for custom media_type in mediaroom (#34625)
* Add support for custom media_type in mediaroom

* Clean logging

* Fix formatting

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-05-17 10:36:28 +02:00
Steffen Zimmermann 51eebb3906
Add config option to set timeout for wiffi devices (#35694)
* add config option to set timeout for wiffi devices

Wiffi devices allow to configure the update period (=
full_loop_minutes). The integration shall respect the configured update
period and therefore need a configuration for the timeout, too.

* Move timeout from config flow to option flow

* add test for option flow
2020-05-17 10:31:28 +02:00
Carlos Giraldo d02bb70f0c
deCONZ - Add support for "Window covering controller" (#35294)
* Add support for "Window covering controller" 

Some window cover devices such as Sunricher SR-ZG9080A are identified in deconz as "Window covering controller".
We need to include this device type in const.py to be integrated as type "cover" in home-assistant.

* Added Window covering controller to deconz tests
2020-05-17 09:57:24 +02:00