Commit Graph

551 Commits (60234ecf4091e6b4fa312ca8514d1a410d780c8e)

Author SHA1 Message Date
Alexei Chetroi d494da271a
Bump up ZHA dependencies (#33856) 2020-04-08 21:36:11 -04:00
springstan fca90a8ddc
Improve string formatting v5 (#33697)
* Improve string formatting v5

* Address review comments
2020-04-05 17:48:55 +02:00
Franck Nijhof 39336d3ea3
Add prettier (in pre-commit and CI) (#33693)
* Add prettier (in pre-commit and CI)

* Make all file prettier

* Change order

* Add to Azure Pipelines

* Fix a YAML file prettier caught as invalid

* Remove flow mapping using curly braces from all YAML service files
2020-04-05 17:27:16 +02:00
springstan e3bcfb88e7
Improve string formatting v4 (#33668)
* Improve string formatting v4

* Use normal strings instead of f-strings

* Fix zeroconf test by adding back part of a condition
2020-04-05 16:01:41 +02:00
Franck Nijhof 7653dc947a
Enable pylint unnecessary-pass (#33650)
* Enable pylint unnecessary-pass

* Process review suggestions

* Fix smhi tests
2020-04-05 10:33:07 +02:00
springstan dde93304d3
Improve string formatting v2 (#33645)
* Improve string formatting v2

* Improve string formatting v3

* Address review comments
2020-04-04 23:09:34 +02:00
Alexei Chetroi 39a01fcdc6
Update zha dependencies (#33639) 2020-04-04 12:58:43 -04:00
David F. Mulcahey debc1f78d4
Add zigbee information to ZHA device information (#33612)
* add zigbee signature to zha device info

* add typing

* use props and sort clusters

* review comment
2020-04-04 08:40:55 -04:00
Paulus Schoutsen f1d3c0d19b
Remove unused manifest fields (#33595) 2020-04-03 12:58:19 -07:00
Alexei Chetroi eff9b2a1a0
Clean up ZHA channel reporting configuration (#33497) 2020-04-01 11:35:48 -04:00
David F. Mulcahey 3d73f166be
Correct issue on new device joins in ZHA (#33470) 2020-04-01 14:41:16 +02:00
Alexei Chetroi 0e6aacb440
Bump up zha dependencies. (#33488) 2020-03-31 23:33:05 -04:00
David F. Mulcahey d0dad4bfd6
Fix uncaught exceptions in ZHA tests (#33442) 2020-03-30 20:34:23 -04:00
Balazs Sandor 7330e30fd3
bump version zigpy-cc (#33448) 2020-03-30 20:33:07 -04:00
David F. Mulcahey ef61118d49
fix ZHA IASWD commands (#33402) 2020-03-29 17:42:37 -04:00
David F. Mulcahey 188ca630de
Miscellaneous ZHA code cleanup (#33395)
* cleanup state change listener

* update group id handling and unique id

* update test

* add guards for last_seen updates
2020-03-29 13:26:48 -04:00
David F. Mulcahey f7ae78f78e
Update ZHA group entity when Zigbee group membership changes (#33378)
* cleanup group entities

* add test

* appease pylint

* fix order
2020-03-28 20:38:48 -04:00
HomeAssistant Azure 5bedc4ede2 [ci skip] Translation update 2020-03-29 00:04:45 +00:00
David F. Mulcahey 5ce31cb383
Fix ZHA light group on state (#33308) 2020-03-27 23:01:17 -07:00
Paulus Schoutsen 6cafc45d2b
Fix ZHA light crashing on color loop effect (#33298) 2020-03-26 20:23:01 -07:00
David F. Mulcahey 4f767dd3ef
Add entities for ZHA fan groups (#33291)
* start of fan groups

* update fan classes

* update group entity domains

* add set speed

* update discovery for multiple entities for groups

* add fan group entity tests

* cleanup const

* cleanup entity_domain usage

* remove bad super call

* remove bad update line

* fix set speed on fan group

* change comparison

* pythonic list

* discovery guards

* Update homeassistant/components/zha/core/discovery.py

Co-Authored-By: Alexei Chetroi <lexoid@gmail.com>

Co-authored-by: Alexei Chetroi <lexoid@gmail.com>
2020-03-26 22:19:48 -04:00
David F. Mulcahey eb8e8d00a6
Add group entities for ZHA switches (#33207) 2020-03-25 13:29:40 -04:00
David F. Mulcahey 2a3c94bad0
Add group entity support to ZHA (#33196)
* split entity into base and entity

* add initial light group support

* add dispatching of groups to light

* added zha group object

* add group event listener

* add and remove group members

* get group by name

* fix rebase

* fix rebase

* use group_id for unique_id

* get entities from registry

* use group name

* update entity domain

* update zha storage to handle groups

* dispatch group entities

* update light group

* fix group remove and dispatch light group entities

* allow picking the domain for group entities

* beginning - auto determine entity domain

* move methods to helpers so they can be shared

* fix rebase

* remove double init groups... again

* cleanup startup

* use asyncio create task

* group entity discovery

* add logging and fix group name

* add logging and update group after probe if needed

* test add group via gateway

* add method to get group entity ids

* update storage

* test get group by name

* update storage on remove

* test group with single member

* add light group tests

* test some light group logic

* type hints

* fix tests and cleanup

* revert init changes except for create task

* remove group entity domain changing for now

* add missing import

* tricky code saving

* review comments

* clean up class defs

* cleanup

* fix rebase because I cant read

* make pylint happy
2020-03-25 07:23:54 -04:00
Alexei Chetroi 28c2f9caa9
Refactor ZHA platform setup (#33226)
Setup ZHA platforms only after successful gateway startup.
2020-03-24 20:32:46 -04:00
HomeAssistant Azure 763ed0dc7b [ci skip] Translation update 2020-03-24 13:18:47 +00:00
Alexei Chetroi bf4b099f11
Update sw_version in device registry for ZHA devices (#33184)
* Update firmware version in device registry.
Parse recevied OTA requests for firmware version and update device
registry.

* Update tests.
* Cleanup sw_id_update listener.
* Update ZHA test devices list.
2020-03-23 12:42:41 -04:00
Alexei Chetroi 991afccbd4
Refactor ZHA EventChannels (#32709)
* Refactor EventChannels.

* Rename EventRelayChannel.

* Fully rename EventRelayChannel.

- update docstrings
- rename all references from "relay" to "client"

* Remove CHANNEL_NAME.

* Update stale docstring.
2020-03-21 19:59:32 -04:00
Alexei Chetroi 81cef9a281
Split ZHA device loading and entities adding (#33075)
* Split ZHA device loading and entities adding.
Load zha devices from ZHA gateway, but add entities after integration
was setup.

* Use hass.loop.create_task()
* Split ZHA device initialization from loading.
Restore and initialize ZHA devices separately.

* Use hass.async_create_task()
Load devices prior group initialization.
2020-03-21 13:25:43 -04:00
Balazs Sandor e18bea0215
bump version zigpy-cc (#33097) 2020-03-21 10:43:55 -04:00
Alexei Chetroi 1a4199c485
Handle zigpy clusters without ep_attribute attribute. (#33028) 2020-03-19 22:47:08 -04:00
Alexei Chetroi 8cb1d630c8
Poll Hue lights in ZHA (#33017)
* Weighted ZHA entity matching.
* Poll ZHA Hue lights in 5 min intervals.
* Add comment.
* Spelling.
2020-03-19 22:14:07 -04:00
Balazs Sandor 62f2ee5f60
Bump version of zigpy-cc to 0.2.3 (#32951) 2020-03-19 11:42:49 -05:00
Alexei Chetroi c8c81d493d
Refactor ZHA setup (#32959)
* Refactor ZHA setup.
Catch errors and raise if needed.

* Cleanup.
2020-03-19 12:37:47 -04:00
David F. Mulcahey 41cd3ba532
Bump ZHA quirks to 0.0.37 (#32867) 2020-03-16 15:29:14 -04:00
David F. Mulcahey aa972b0005
Fix handling of attribute reports in ZHA sensors and binary sensors (#32776)
* Update sensor tests.

* Update light tests.

* Update binary_sensor tests.

* Update cover tests.

* Update device tracker tests.

* Update fan tests.

* Update lock tests.

* Update switch tests.

* add sensor attr to sensors

* add sensor attr to binary sensors

* cleanup extra var

Co-authored-by: Alexei Chetroi <alexei.chetroi@outlook.com>
2020-03-13 19:17:50 -04:00
David F. Mulcahey 7127492767
Additional ZHA cleanup (#32678)
* fix double device loading in tests

* change imports

* None is default
2020-03-11 13:37:28 +01:00
David F. Mulcahey 4248893007
Clean up custom polling in ZHA device and light (#32653)
* cleanup timer handle when device is removed

* separate unavailable times for mains vs battery

* better name

* remove light refresh handle when removing light

* remove unused parallel updates

* don't steal HA const for different purpose

* don't flood network every hour for lights

* update test to test both intervals

* add test for light refresh interval

* fix tests

* update test

* put parallel updates back for now...

* fix async_schedule_update_ha_state usage

* review comment

* review comment

* update test - review conversation

* review comments

* await count not call count

* flip some state
2020-03-11 07:17:53 -04:00
Alexei Chetroi 87b770be08
Add PollControl cluster support to ZHA (#32618)
* Poll control channel

Set check-in interval to 55min.
Set long-poll interval to 6s.

* Update tests.

* Don't use magic numbers.
2020-03-09 19:55:25 -04:00
Alexei Chetroi 743833e5f3
Bump up ZHA dependencies. (#32609)
* Bump up ZHA dependencies.

* Update tests to match library changes.
2020-03-09 12:39:41 -04:00
Alexei Chetroi 7e781946fa
Refactor ZHA device keep alive checker (#32561)
* Refactor zha core device _check_available().
Make it async, so we don't run it in a sync worker.

* Use random keep alive interval for zha device pings.
* Update tests.
2020-03-07 13:52:45 -05:00
David F. Mulcahey 732457745f
Add guard to ZHA device triggers (#32559) 2020-03-07 12:59:18 -05:00
David F. Mulcahey e52542c4d7
Allow multiple attribute reads in ZHA (#32498)
* multi attribute reads for lights

* catch specific exceptions

* get attributes

* fix mains powered update

* add guards and use get_attributes

* use debug for read failures

* cleanup

* update return value for read_attributes

* fix on with timed off
2020-03-07 07:33:59 -05:00
Alexei Chetroi dd91b51435
Make ZHA Scene channel an eventable channel. (#32546) 2020-03-06 17:32:26 -05:00
David F. Mulcahey b5022f5bcb
guard against invalid trigger and action scenarios (#32512) 2020-03-05 15:52:09 -05:00
Paulus Schoutsen 7b5b909f0a
ZHA Dependencies bump (#32483)
* ZHA Dependencies bump.

* Bump up ZHA dependencies.
2020-03-04 17:35:07 -08:00
Alexei Chetroi e416f17e4d
ZHA: Successful pairing feedback (#32456) 2020-03-04 19:27:37 -05:00
HomeAssistant Azure 104350265d [ci skip] Translation update 2020-03-04 18:13:24 +00:00
Alexei Chetroi 20333703c5
Remove ZHA attribute listening channel (#32468)
* remove AttributeListeningChannel
* pull sleeps
* update signature to fix pylint
2020-03-04 13:11:53 -05:00
Alexei Chetroi 896df9267a
Fix ZHA device healthcheck pings (#32425) 2020-03-03 13:37:17 -05:00
David F. Mulcahey 2ba514253c
Bump ZHA Quirks to 0.0.34 (#32401)
* bump zha quirks version

* add required parts to support alt opple remote
2020-03-02 11:26:37 -05:00
Robert Chmielowiec 8e3492d4f5
ZHA: Support light flashing (#32234) 2020-02-29 18:37:06 -05:00
Alexei Chetroi 5fbaaf41dc
Bump up ZHA depdendency (#32336) 2020-02-28 19:13:49 -05:00
springstan f1a0ca7cd3
Add and use percentage constant (#32094)
* Add and use percentage constant

* Fix pylint error and broken test
2020-02-28 11:46:48 -08:00
Ville Skyttä 9b2544c923
Remove some unneeded pylint suppressions (#32152) 2020-02-24 16:47:15 -08:00
springstan a85808e325
Add and use time related constants (#32065)
* Add and use time related constants

* Sort time constants and reuse them in data rate constants

* Fix greeneyemonitor import

* Fix greeneyemonitor import V2

* Fix failing here_travel_time test

* Add TIME_MONTHS and TIME_YEARS

* Use TIME_MINUTES in opentherm_gw and isy994

* Add and use TIME_MILLISECONDS

* Change inconsistent ones

* Add TIME_MICROSECONDS and TIME_WEEKS

* Use constants in apcupsd and travisci

* Fix import error in upnp sensor.py

* Fix isy994 sensor.py using TIME_YEARS

* Fix dyson tests

* Use TIME_SECONDS in more places

* Use TIME_DAYS in google wifi
2020-02-23 22:09:24 +02:00
HomeAssistant Azure 8257165562 [ci skip] Translation update 2020-02-23 00:31:50 +00:00
Alexei Chetroi 3385893b77
ZHA device channel refactoring (#31971)
* Add ZHA core typing helper.
* Add aux_channels to ZHA rule matching.
* Add match rule claim_channels() method.
* Expose underlying zigpy device.
* Not sure we need this one.
* Move "base" channels.
* Framework for channel discovery.
* Make DEVICE_CLASS and REMOTE_DEVICE_TYPE default dicts.
* Remove attribute reporting configuration registry.
* Refactor channels.
- Refactor zha events
- Use compound IDs and unique_ids
- Refactor signal dispatching on attribute updates

* Use unique id compatible with entities unique ids.
* Refactor ZHA Entity registry.
Let match rule to check for the match.

* Refactor discovery to use new channels.
* Cleanup ZDO channel.
Remove unused zha store call.

* Handle channel configuration and initialization.
* Refactor ZHA Device to use new channels.
* Refactor ZHA Gateway to use new discovery framework.
Use hass.data for entity info intermediate store.

* Don't keep entities in hass.data.
* ZHA gateway new discovery framework.
* Refactor ZHA platform loading.
* Don't update ZHA entities, when restoring from zigpy.
* ZHA entity discover tests.
* Add AnalogInput sensor.
* Remove 0xFC02 based entity from Keen smart vents.
* Clean up IAS channels.
* Refactor entity restoration.
* Fix lumi.router entities name.
* Rename EndpointsChannel to ChannelPool.
* Make Channels.pools a list.
* Fix cover test.
* Fix FakeDevice class.
* Fix device actions.
* Fix channels typing.
* Revert update_before_add=False
* Refactor channel class matching.
* Use a helper function for adding entities.
* Make Pylint happy.
* Rebase cleanup.
* Update coverage for ZHA device type overrides.
* Use cluster_id for single output cluster registry.
* Remove ZHA typing from coverage.
* Fix tests.
* Address comments.
* Address comments.
2020-02-21 18:06:57 -05:00
springstan 1ee7c483a7
Update file headers and outdated documentation links (#32022)
* Update documentation links

* Update file headers v2
2020-02-20 15:29:46 -08:00
HomeAssistant Azure 5839df39b5 [ci skip] Translation update 2020-02-20 00:31:46 +00:00
David F. Mulcahey 8255bdf3d5
Bump ZHA quirks and add skip configuration support (#31982)
* add skip configuration
* Bump quirks
* add skip configuration to FakeDevice
2020-02-19 09:19:26 -05:00
Balazs Sandor 41f3fb291a Add ZHA Texas Instruments CC device support (#31621) 2020-02-09 12:13:22 -05:00
Alexei Chetroi 57ab30d534 Bump ZHA dependencies. (#31619)
Bump up zigpy-homeassistant==0.13.2
2020-02-08 06:50:50 -05:00
HomeAssistant Azure 274cf23269 [ci skip] Translation update 2020-02-07 00:31:50 +00:00
Alexei Chetroi 0e68ace3dd
Bump ZHA dependencies. (#31555) 2020-02-06 16:34:28 -05:00
David F. Mulcahey 06c8e53323
bump quirks (#31355) 2020-01-31 13:55:06 -05:00
Christian Clauss df7d2b3aeb
Fix typos found by codespell (#31243)
* Fix typos found by codespell

* Fix typos found by codespell

* codespell: Furture  ==> Future

* Update test_config_flow.py

* Update __init__.py

* Spellcheck: successfull  ==> successful

* Codespell: unsuccesful  ==> unsuccessful

* Codespell: cant  ==> can't

* Codespell: firware ==> firmware

* Codespell: mimick  ==> mimic
2020-01-31 08:33:00 -08:00
Alexei Chetroi 24f4f53f16
ZHA dependencies bump (#31295)
* ZHA dependencies bump.

* Bump bellows-homeassistant.
2020-01-30 10:04:06 -05:00
Paulus Schoutsen e9e44dbd97
Fix callback and async (#31281)
* Fix callback and async

* Fix a return

* Fix test

* Fix mqtt tests

* Fix some more callbacks
2020-01-29 13:59:45 -08:00
David F. Mulcahey f4a4c6bea5
ZHA group and device cleanup (#31260)
* add dispatching of groups to light
* added ha device registry device id
* added zha group object
* add group event listener
* add and remove group members
* get group by name
* api cleanup
* clean up get device info
* create and remove zigpy groups
* clean up create and remove group api
* use device id
* use device id
* cleanup
* update test
* update tests to allow group events to flow
2020-01-29 12:24:43 -05:00
Alexei Chetroi 37af2170ec
Mark device unavailable when it leaves Zigbee network. (#31264) 2020-01-28 21:21:33 -05:00
HomeAssistant Azure 2c02334c1f [ci skip] Translation update 2020-01-29 00:31:54 +00:00
David F. Mulcahey 7d9c8fdfa0
update remove service (#31164) 2020-01-27 08:54:31 -05:00
Bill Durr e16e192b3c improvements to zha cover (#31144) 2020-01-25 13:20:59 -05:00
Alexei Chetroi 217e280f8b Update ZHA remotes registry to proper identify "remotes (#31146)
* Update ZHA remote device types.

* Remove `binary_sensor` entity from affected devices.

* Update ZHA Profiles.

Prevent DeviceType.ON_OFF_LIGHT_SWITCH from creating entities.

* Update tests and remove unused entities.
2020-01-25 12:42:19 -05:00
David F. Mulcahey 3c44a1353a change group id creation (#31075) 2020-01-22 09:23:35 -05:00
Franck Nijhof fb35d382e1
Remove all empty *_setup_platform() from integrations (#31025)
* Remove all empty *_setup_platform() from integrations

* Fix tests for smartthings

* Fix tests for heos
2020-01-21 12:38:38 +01:00
David F. Mulcahey 41014d73be
Allow ZHA device creation for the Zigbee coordinator (#31032)
* allow zha device creation for coordinator

* don't let coordinator get removed

* fix truthy issue in logical device type
2020-01-21 06:07:47 -05:00
Sébastien RAMAGE 1639432463 Bump zigpy-zigate to 0.5.1 (#31004)
* Bump zigpy-zigate to 0.5.1
Improve startup and channel setting
2020-01-20 13:09:20 -05:00
David F. Mulcahey 078ce24e5a Add logical Zigbee device type to ZHA device info (#30954)
* add device type to device info
* capitalize
* use zigpy logical device type
2020-01-18 19:27:55 -05:00
Alexei Chetroi 26fb1ce255 Don't use unit_of_measurement in state attributes. (#30941) 2020-01-18 10:03:59 -05:00
Alexei Chetroi 3bf657284c
Refactor rounding for ZHA electrical measurement sensor (#30923) 2020-01-17 20:53:31 -05:00
Alexei Chetroi 58520aa733 Add battery voltage state attribute for ZHA devices (#30901)
* Add battery voltage state attribute for ZHA devices.

* Pylint.
2020-01-17 19:43:02 -05:00
David F. Mulcahey 31996120dd add multistate back (#30889) 2020-01-17 13:06:10 -05:00
David F. Mulcahey 1b730b3055
Bump ZHA quirks to 0.0.31 (#30740)
* Bump ZHA quirks version

* update requirements
2020-01-13 13:10:22 -05:00
Bill Durr 4d6417295b ZHA cover device support (#30639)
* ZHA cover device support
* flake8
* flake8, black
* isort
* pylint
* more test
* use zigpy provided functions
* black
* handle command errors, better state handling
* black
* more test
* lint
* Update ZHA cover tests coverage.
Co-authored-by: Alexei Chetroi <lexoid@gmail.com>
2020-01-11 22:42:14 -05:00
Alexei Chetroi 008dddb17c Fix ZHA temperature sensor restoration (#30661)
* Add test for restoring state for zha temp.

* Don't restore unit of measurement for ZHA sensors.

Properly restore ZHA temperature sensor state.
2020-01-10 20:30:58 -05:00
Ville Skyttä 80cbc32c49 Spell Zigbee consistently, with lowercase "b" (#30440)
https://zigbeealliance.org/developer_resources/zigbee-specification/
"Please note that this uses old branding, Zigbee is always a lowercase
 B, not a capital. This change occurred shortly after the official
 release of this document."

Also other docs at https://zigbeealliance.org/solution_type/zigbee/,
https://github.com/zigpy/zigpy/issues/111
2020-01-06 08:32:10 -05:00
HomeAssistant Azure d1ed67f44a [ci skip] Translation update 2020-01-06 00:32:11 +00:00
David F. Mulcahey 6c89b6c5a2 Add Zigbee group binding to ZHA (#30433)
* initial group binding work
* add group cluster binding
2020-01-04 16:58:51 -05:00
Ville Skyttä fa4fa30461 Various string cleanups (#30435)
* Remove some unnecessary string concatenations

* Replace some simple str.formats with f-strings

* Replace some string concatenations with f-strings
2020-01-03 14:47:06 +01:00
David F. Mulcahey ef8eefc7a0 Remove ZHA establish device mappings function (#30423)
* remove establish_device_mappings
* inline init
2020-01-02 21:21:09 -05:00
Alexei Chetroi a3061bda60 Make the rest of ZHA platforms to use ZHA class registry (#30261)
* Refactor ZHA component tests fixtures.

* Add tests for ZHA device discovery.

* Refactor ZHA registry MatchRule.

Allow callables as a matching criteria.
Allow sets for model & manufacturer.

* Minor ZHA class registry refactoring.

Less cluttered strict_matching registrations.

* Add entities only if there are any.

* Migrate rest of ZHA platforms to ZHA registry.

* Pylint fixes.
2019-12-31 11:09:58 -05:00
HomeAssistant Azure ae51331d49 [ci skip] Translation update 2019-12-31 00:32:20 +00:00
HomeAssistant Azure 13116d8d3f [ci skip] Translation update 2019-12-30 00:32:19 +00:00
Alexei Chetroi 36585558a5
Refactor ZHA channel logging (#30259)
Add channel.id property -- id unique for this the device only.
2019-12-28 15:41:55 -05:00
David F. Mulcahey 05a0922dc0 Bump ZHA dependencies (#30228)
* bump dependencies
* requirement files
* bump quirks to 0.0.30
2019-12-26 17:08:14 -05:00
HomeAssistant Azure bb35d93fde [ci skip] Translation update 2019-12-25 00:32:06 +00:00
David F. Mulcahey 85d2ba047b Protect against bad data stored in ZHA (#30183) 2019-12-23 19:11:35 -05:00
Alexei Chetroi fdaaabf070
ZHA binary_sensor cleanup. (#30149) 2019-12-22 14:07:49 -05:00
Alexei Chetroi 83768be814 Refactor ZHA binary_sensor (#30138)
* Refactor ZHA binary_sensor.

Use ZHA entity class registry for channel specific implementations.

* Remove registries.BINARY_SENSOR_TYPES dict.

* Address PR comments.
2019-12-22 13:24:57 -05:00
Alexei Chetroi 9c23c4adf2
Cleanup ZHAEntity class (#30131)
Remove `_domain` attribute since we're not using it anymore.
2019-12-21 18:33:00 -05:00
Alexei Chetroi 8e3dfbd5c9
Refactor ZHA electrical measurement sensor. (#30130) 2019-12-21 17:15:50 -05:00
Alexei Chetroi fb3bb8220b
Implement ZHA entity classes registry (#30108)
* ZHA Entity registry.
Match a zha_device and channels to a ZHA entity.

* Refactor ZHA sensor to use registry.
* Remove sensor_types registry.
* Fix ZHA device tracker battery remaining.
* Remove should_poll/force_update attributes.
* Fix binary_sensor regression.
* isort.
* Pylint.
* Don't access protected members.
* Address comments and fix spelling.
* Make pylint happy again.
2019-12-21 16:26:58 -05:00
HomeAssistant Azure 95a6a7502a [ci skip] Translation update 2019-12-16 00:32:25 +00:00
Alexei Chetroi 7685c76b9b
Defer log formatting. (#29888) 2019-12-12 14:16:02 -05:00
Alexei Chetroi 327b5c3c94
Log ZHA bind/unbind operations status (#29842)
* Log bind/unbind operation result.
* Use ZDO consts.
* Use device logger for bind/unbind results.
* Lint.
2019-12-12 12:16:51 -05:00
Alexei Chetroi 315d0064fe
Fix zha circular import (#29802)
* Refactor zha.core.helpers.
* Make zha isort-able.
* Const import reorg.
* Keep DATA_ZHA config key on entry unload.
* Cleanup ZHA config flow.
* isort.
* Add test.
2019-12-10 00:00:04 -05:00
HomeAssistant Azure 12f273eb11 [ci skip] Translation update 2019-12-10 00:32:16 +00:00
David F. Mulcahey 1222aa8c56 Add ZHA group API (#29641)
* add skeleton to retrieve zigbee groups
* get single group
* add a group
* return group members with group
* add comment
* fix group members
* add function to add device to group
* add group members
* add remove from group method
* add api to remove members from group
* add remove groups method
* clean up group add and remove
* fix remove group
* fix remove groups
* add api to get only groupable devices
* change var init
* add tests
* address review comment
2019-12-09 14:50:04 -05:00
Bas Nijholt 6cc75fc6f3 Sort imports according to PEP8 for components starting with "Z" (#29784)
* use isort to sort imports for components starting with 'z'

* add skip to end of zha/core/channels/__init__.py

* put 'pylint: disable=import-error' at the right place

* remove the import of config_flow in zha/__init__.py

According to @balloob it is no longer needed.

* revert previous commit

* isort:skip homeassistant/components/zha/__init__.py completely
2019-12-09 18:54:54 +01:00
springstan 1ee8057662 Move imports to top for zha (#29555)
* Move imports to top for zha
* Move back some imports, add annotation for disabling import-outside-toplevel
* Move import config_flow before import api
2019-12-06 16:12:46 -05:00
HomeAssistant Azure 8dc366c75b [ci skip] Translation update 2019-11-29 00:32:07 +00:00
Ville Skyttä 99c7608fb4 Lint config cleanups (#28864)
* Remove bunch of unneeded lint exclusions

* Use symbolic names instead of identifiers in pylint disables

* Tighten scope of some pylint disables
2019-11-25 22:40:08 -08:00
Alexei Chetroi 4ba2bd232c Command arguments for issue_zigbee_cluster_commands. (#28885) 2019-11-20 08:34:06 -05:00
Abílio Costa e60ae77f1b Add ZHA service to issue group commands (#28823)
* add service to ZHA to issue group commands
* fix args
2019-11-19 19:49:09 -05:00
Ville Skyttä d88ca0f5cb Lint exclusions (#28655)
* Remove malformed pylint disable markers

* Remove some unused imports

* Remove some unneeded lint exclusions

* Remove more unneeded lint exclusions

* Add specific codes to all noqa's
2019-11-16 10:22:07 +01:00
David F. Mulcahey 376e3def1d Bump ZHA quirks to 0.0.28 (#28750) 2019-11-13 09:25:45 -05:00
Alexei Chetroi cfa689c3a6
Bump up ZHA dependencies. (#28711) 2019-11-11 20:53:23 -05:00
David F. Mulcahey f2c56cff43 Bump ZHA quirks version (#28636) 2019-11-08 09:12:50 -08:00
HomeAssistant Azure 265c390b65 [ci skip] Translation update 2019-11-07 00:32:16 +00:00
HomeAssistant Azure 4863face69 [ci skip] Translation update 2019-11-02 00:31:48 +00:00
Alexei Chetroi 89213a4ce8
Don't set entity_id in ZHA entities (#28362)
* Don't set entity_id on ZHA entities.
* Update tests.
* Use comma as separator for multiple channel names.
* Address PR comments.
2019-10-31 12:31:06 -04:00
HomeAssistant Azure 72dee7dd21 [ci skip] Translation update 2019-10-28 00:32:16 +00:00
Alexei Chetroi 969322e14a Fixes/zha ieee tail (#28160)
* Fix ZHA entity_id assignment.

* Update tests.
2019-10-24 12:23:02 -04:00
Paulus Schoutsen 23289459ca Update translations 2019-10-23 13:36:38 -07:00
HomeAssistant Azure 2cc039dbc4 [ci skip] Translation update 2019-10-22 00:32:10 +00:00
Alexei Chetroi fe7c45b363
Move remaining of ZHA imports to top level. (#28071)
* Move ZHA import to top level.
* ZHA tests: move imports to top level.
2019-10-21 19:30:56 -04:00
Alexei Chetroi a0c50f4794 Leverage zigpy for IEEE address conversions (#27972)
* Refactor EUI64 conversions.

* Update ZHA dependencies.

* Update tests.
2019-10-21 13:14:17 -04:00
HomeAssistant Azure 9e8c391c81 [ci skip] Translation update 2019-10-19 00:32:15 +00:00
HomeAssistant Azure b8e00925e7 [ci skip] Translation update 2019-10-16 00:32:17 +00:00
HomeAssistant Azure d8e3255603 [ci skip] Translation update 2019-10-15 00:31:44 +00:00
Erik Montnemery c7bd0fe909 Fix ZHA regressions caused by "Support async validation of device trigger" (#27401)
* Revert "Support async validation of device trigger (#27333)"

This reverts commit fdf4f398a7.

* Revert only ZHA changes

* Fix whitespace

* Restore ZHA changes but add check to make sure ZHA is loaded

* Address review comment

* Remove additional check
2019-10-14 14:11:43 -04:00
HomeAssistant Azure b37f0ad812 [ci skip] Translation update 2019-10-14 00:32:27 +00:00
HomeAssistant Azure 62b886a5d5 [ci skip] Translation update 2019-10-13 00:31:39 +00:00
HomeAssistant Azure 78a08d0425 [ci skip] Translation update 2019-10-12 00:31:47 +00:00
HomeAssistant Azure 4c71c6df6f [ci skip] Translation update 2019-10-11 00:31:40 +00:00
HomeAssistant Azure 762a714d87 [ci skip] Translation update 2019-10-10 00:31:40 +00:00
Erik Montnemery fdf4f398a7
Support async validation of device trigger (#27333) 2019-10-09 21:04:11 +02:00
Sébastien RAMAGE 1257706bd9 Update zigpy-zigate to 0.4.1 (#27345)
* Update zigpy-zigate to 0.4.1

Fix #27297

* Update zigpy-zigate to 0.4.1

Fix #27297
2019-10-09 08:47:43 -04:00
HomeAssistant Azure 768bb00177 [ci skip] Translation update 2019-10-09 00:32:17 +00:00
Erik Montnemery 0ba4ee1398 Validate generated device actions (#27262)
* Validate generated actions

* Use hass.services.async_call instead of service.async_call_from_config
2019-10-08 10:06:17 -07:00
HomeAssistant Azure 1087abd3b5 [ci skip] Translation update 2019-10-08 00:32:12 +00:00
Erik Montnemery dabdf8b577 Validate generated device triggers (#27264)
* Validate generated trigger

* Update scaffold
2019-10-07 13:09:48 -07:00
Ville Skyttä 761d7f21e9 Upgrade pylint (#27279)
* Upgrade pylint to 2.4.2 and astroid to 2.3.1

https://pylint.readthedocs.io/en/latest/whatsnew/2.4.html
https://pylint.readthedocs.io/en/latest/whatsnew/changelog.html#what-s-new-in-pylint-2-4-1
https://pylint.readthedocs.io/en/latest/whatsnew/changelog.html#what-s-new-in-pylint-2-4-2

* unnecessary-comprehension fixes

* invalid-name fixes

* self-assigning-variable fixes

* Re-enable not-an-iterable

* used-before-assignment fix

* invalid-overridden-method fixes

* undefined-variable __class__ workarounds

https://github.com/PyCQA/pylint/issues/3090

* no-member false positive disabling

* Remove some no longer needed disables

* using-constant-test fix

* Disable import-outside-toplevel for now

* Disable some apparent no-value-for-parameter false positives

* invalid-overridden-method false positive disables

https://github.com/PyCQA/pylint/issues/3150

* Fix unintentional Entity.force_update override in AfterShipSensor
2019-10-07 08:17:39 -07:00
HomeAssistant Azure 85947591c5 [ci skip] Translation update 2019-10-04 00:32:16 +00:00
HomeAssistant Azure e005f6f23a [ci skip] Translation update 2019-10-03 00:34:28 +00:00
Alexei Chetroi e011a94ce9 Bump up ZHA dependencies. (#27127) 2019-10-02 15:51:52 -07:00
Erik Montnemery 65ce3b49c1
Add support for `for` to binary_sensor, light and switch device triggers (#26658)
* Add support for `for` to binary_sensor, light and switch device triggers

* Add WS API device_automation/trigger/capabilities
2019-10-02 22:14:52 +02:00
Franck Nijhof d4a67e3a30 Update documentation link URL for integrations (part2) (#27117) 2019-10-02 09:34:07 -07:00
Franck Nijhof c7da781efc Update documentation link URL for integrations in all manifests (#27114) 2019-10-02 09:25:44 -07:00
HomeAssistant Azure 2090d650c6 [ci skip] Translation update 2019-10-02 00:32:11 +00:00
HomeAssistant Azure 513d2652e4 [ci skip] Translation update 2019-10-01 00:32:19 +00:00
David F. Mulcahey 5bd3d4aa0b Bump zha quirks to 0.0.26 (#27051) 2019-09-29 20:33:42 -04:00
HomeAssistant Azure cdb469f711 [ci skip] Translation update 2019-09-30 00:32:17 +00:00
HomeAssistant Azure 560ac3df3a [ci skip] Translation update 2019-09-29 00:32:13 +00:00
HomeAssistant Azure 2af34b461a [ci skip] Translation update 2019-09-28 00:32:10 +00:00
Paulus Schoutsen 77654da341
Add templates to scaffold device_trigger, device_condition, (#26871)
device_action
2019-09-27 12:54:17 -07:00
David F. Mulcahey b1a9fa47ca Add device action support for ZHA (#26903)
* start implementing device actions

* rename file

* cleanup and add tests

* fix docstrings

* sort imports
2019-09-27 09:57:47 -07:00
HomeAssistant Azure b04a70995e [ci skip] Translation update 2019-09-27 00:32:12 +00:00
HomeAssistant Azure ba92d781b4 [ci skip] Translation update 2019-09-26 00:32:13 +00:00
Sébastien RAMAGE dc229ed569 Update zigpy_zigate to 0.4.0 (#26883)
* zigpy-zigate==0.4.0

* zigpy-zigate==0.4.0
2019-09-24 21:02:23 -07:00
David F. Mulcahey 31964d0f49 bump quirks (#26885) 2019-09-24 21:01:38 -07:00
HomeAssistant Azure 24c8db0121 [ci skip] Translation update 2019-09-25 00:32:16 +00:00
Paulus Schoutsen 6fdff9ffab
Reorg device automation (#26880)
* async_trigger -> async_attach_trigger

* Reorg device automations

* Update docstrings

* Fix types

* Fix extending schemas
2019-09-24 14:57:05 -07:00
Franck Nijhof b1118cb8ff Removes unnecessary else/elif blocks (#26884) 2019-09-24 13:53:03 -07:00
David F. Mulcahey 18873d202d Add device automation support to ZHA (#26821)
* beginning ZHA device automations

* add cube

* load triggers from zigpy devices

* cleanup

* add face_any for aqara cube

* add endpoint id to events

* add cluster id to events

* cleanup

* add device tilt

* add test

* fix copy paste error

* add event trigger test

* add test for no triggers for device

* add exception test

* better exception tests
2019-09-24 08:54:41 -07:00
Alexei Chetroi 9c0fbfd101
Bump up ZHA dependencies (#26746)
* Update ZHA to track zigpy changes.
* Update ZHA dependencies.
* Update tests.
* Make coverage happy again.
2019-09-23 13:35:27 -04:00
Abílio Costa 61634d0a64 Store ZHA light brightness when fading off to turn on at the correct brightness (#26680)
* Use light's on_level in ZHA to turn on at the correct brightness

Previously, if the light is turned off with a time transition, the
brightness level stored in the light will be 1. The next time the light
is turned on with no explicit brightness, it will be at 1.

This is solved by storing the current brightness in on_level before
turning off, and then using that when turning on (by calling the
onOff cluster 'on' command).

* store off light level locally to avoid wearing device's flash memory

* store off brightness in HA attributes

* improve set/clear of off_brightness

* fix device_state_attributes; clear off_brightness when light goes on

* fix tests
2019-09-23 09:08:44 -04:00
David F. Mulcahey 62adff23f9 ZHA siren and warning device support (#26046)
* add ias warning device support
* use channel only clusters for warning devices
* squawk service
* add warning device warning service
* update services.yaml
* remove debugging statement
* update required attr access
* fix constant
* add error logging to IASWD services
2019-09-20 15:11:24 -04:00
Abílio Costa 8de84c53a1 zha: fix 0 second transitions being ignored. (#26654)
Allow turning a light on instantly, with no transition time.
This is actually required for IKEA lights to be able to set brightness
and color temp in a single call.
2019-09-16 07:14:05 -04:00
Dan Ponte bca7363a80 zha ZCL color loop effect (#26549)
* Initial implementation of ZCL color loop effect
* Fix linter complaints
* Use const for action
* Reformat with Black
* Cleanup after review.
* Handle effect being None
2019-09-13 22:06:09 -04:00
Sébastien RAMAGE 284ae01560 Bump zigpy-zigate to 0.3.1 (#26600)
* Bump zigpy-zigate to 0.3.1

Bump zigpy-zigate to 0.3.1 (fix Rpi.GPIO dependency)

* Bump zigpy-zigate to 0.3.1

Bump zigpy-zigate to 0.3.1 (fix Rpi.GPIO dependency)
2019-09-12 14:00:58 +02:00
Sébastien RAMAGE 3fda07a4ea Bump zigate to 0.3.0 (#26586)
* Bump zigate to 0.3.0
2019-09-11 20:03:02 -04:00
David F. Mulcahey c31efe50ca bump dependencies (#26576) 2019-09-11 09:18:31 -04:00
David F. Mulcahey 1cea3a6abc osram cluster (#26555) 2019-09-10 13:44:41 -07:00
David F. Mulcahey 4f3a2c0443 fix events for smartthings acceleration cluster (#26557) 2019-09-10 13:14:22 -07:00
David F. Mulcahey fec6706bf7 use newly added is_server for cluster reporting (#26533) 2019-09-09 09:21:34 -04:00
Alexei Chetroi 3544f3d7e0 Bump ZHA dependencies. (#26504) 2019-09-07 21:14:32 -05:00
David F. Mulcahey 5237bd3fd1 fix cluster configuration (#26494) 2019-09-07 10:39:56 -04:00
Ville Skyttä 33e1b44b3a
Use PEP 526 type annotations, add some type hints (#26464)
* Add some more type hints to helpers.event

* Change most type comments to variable types

* Remove some superfluous type hints
2019-09-07 09:48:58 +03:00
Franck Nijhof 9035efee10 Fixes invalid JSON files and whitespace corrections in YAML files (#26396) 2019-09-03 16:02:42 -07:00
Franck Nijhof dae6895a95 Use literal string interpolation in integrations X-Z (f-strings) (#26395) 2019-09-03 21:15:31 +02:00
Sébastien RAMAGE 6a5f7bd8e4 Update zigpy_zigate to 0.2.0 (#26327)
* Update zigpy_zigate to 0.2.0

* Update requirements_all.txt
2019-09-02 22:21:09 +02:00
David F. Mulcahey 25961df548 Fix ZHA state restore by always restoring last seen on devices (#26271)
* fix state restore by always restoring last seen

* cleanup
2019-08-29 12:44:53 -07:00
presslab-us 8e5d272b5f Support formatting and scaling with ZHA Metering cluster (#26201)
* Support formatting and scaling with Metering cluster

* fix lint

* run black formatter
2019-08-26 23:16:54 -04:00
David F. Mulcahey 6f2ac705eb
Add web socket API command to get a single ZHA device (#26196)
* get single device web socket command

* test get single device

* add not found error

* fix handling when device doesn't exist

* add test for zha device not found
2019-08-26 09:54:19 -04:00
David F. Mulcahey bde572c91a bump quirks version (#26198) 2019-08-25 22:34:43 -07:00
David F. Mulcahey 46bfd5e9c8 bump quirks (#26106) 2019-08-21 09:13:04 -07:00
Alexei Chetroi 21a946009d Bump up zha dependencies. (#26097) 2019-08-20 16:06:38 -07:00
Alexei Chetroi 61b687edec
Bump ZHA dependencies. (#25898) 2019-08-12 18:34:16 -04:00
Quentame ec2ce31204 Fix script/translations_develop launch + clean some unused error i18n (#25459)
* Fix : script/translations_develop launch + clean some unused error i18n

* Respecting strings.json order property

title
step
error
abort

* Review from @fredrike : remove Telldus Live all_configured
2019-08-11 20:40:18 -07:00
David F. Mulcahey fafd228418 Refactor ZHA device initialized logic (#25796)
* refactor device initialized
* better names and update tests
* clean up last seen logic
* logging consistency
2019-08-09 18:52:47 -04:00
Alexei Chetroi c3c45f8198
Manufacturer specific channel for SmartThings. (#25739)
* Manufacturer specific channel for SmartThings.
* Lint.
2019-08-06 20:59:18 -04:00
Alexei Chetroi 152a9eb466
Use more decorators for ZHA Core registries. (#25737)
* Move ZIGBEE_CHANNEL_REGISTRY to ZHA core registries.
* Refactor more ZHA Core registries to use decorator.
* Cleanup.
* Use relative imports for component.
* Flake8.
* Make pylint happy again.
2019-08-06 20:01:14 -04:00
Sébastien RAMAGE 5b02555255 Add zigate support to zha (#25552)
* Add zigpy-zigate support
* update requirements
* fix
* update
* fix flake8
* update requirements
* fix
* update
* add test to make codecov happy
* fix flake8
* Try to add test
* add test
* remove unneeded test
* exclude registries.py from coverage
exclude homeassistant/components/zha/core/registries.py  since untestable

* Fix merge: black formatting and flake8.
2019-08-05 18:05:07 -04:00
Alexei Chetroi 8dbac9176e Refactor ZHA Zigbee channel registry. (#25716)
* Update test to catch regression.

* Refactor ZHA Core channels.

Use channel decorator for Zigbee channel registry.

* Update tests.

* Pylint
2019-08-05 15:40:29 -06:00
David F. Mulcahey b073d87e08 stagger device init to avoid flooding network (#25709) 2019-08-05 10:14:19 -04:00
David F. Mulcahey 20b54c22f7
don't mark devices unavailable without ping try (#25710) 2019-08-05 09:50:48 -04:00
David F. Mulcahey ac5fcff1cd fix unique id in cluster channels (#25707) 2019-08-05 08:47:42 -04:00
Alexei Chetroi f7cfe908f7 Refactor ZHA Zigbee Cluster report configuration (#25589)
* Move ZCL report configs to ZHA core channels.

* Refactor ZCL report configuratopm and cluster binding.

* Tests for ZHA channel configuration.

* Update tests.

* Remove INPUT_BIND_ONLY_CLUSTER ZHA core registry.

We always need bind a cluster, but not always need to configure
attribute reporting. No reporting is done on ZCL "client" clusters.

* Lint

* Black
2019-08-04 18:20:03 -04:00