hass-core/homeassistant/components/switch
Teemu R 94be43e3e1 Add support for automatic discovery of TP-Link switches, bulbs and dimmers (#18091)
* {switch,light}.tplink: use deviceid as unique id, fetch name from the device during initialization

* raise PlatformNotReady when no device is available

* Use mac instead of deviceid

* remove name option as obsolete

* Add support for configuration flow / integration

Allows activating automatic discovery of supported devices from the configuration

* Fix linting, update requirements_all.txt

* start cleaning up tplink component based on feedback

* add device info, improve config handling

* Allow overriding detected devices via configuration file

* Update requirements.txt

* Remove debug logging

* make hound happy

* Avoid I/O during init and simplify the code, remove remains of leds_on

* Fix issues based on feedback, use consistent quotation marks for device info

* add async_setup_platform emiting a deprecation warning

* Avoid blocking the I/O, check for None on features

* handle some Martin's comments, schema-validation is still missing

* use async_create_task instead of async_add_job, let core validate the schema

* simplify configuration handling by storing the configuration data separately from initialized instances

* add default values to schema, make hound happy

* with defaults set by schema, simplify the checks. add async_unload_entry

* Use constant for data structure access

* REWORD add a short note about async_unload_entry

* handle feedback from Martin, config_data is checked against Noneness

* use pop to remove the domain on unload

* First steps to add tests for the new tplink component

* embed platforms under the component directory

* Fix tests by mocking the pyhs100 internals

* Fix linting

* Test against multiple instances of devices, tidy up

* (hopefully) final linting round

* Add pyHS100 to test requirements

* log always the warnings occured during an update to make them easy to see

* revert back the warning behavior (requirement for silver level in IQS)

* Unload only when an entry is being loaded and add tests for that

Thanks @MartinHjelmare for pointing this out!

* Fix linting

* Bump the upstream lib, fixes most prominently the HSV setting on bulbs

* Test unloading for all platforms, clear the data storage instead of popping it out, making it possible to reconfigure after removal without restarting hass first

* Use class variables instead of instance variables for bulb states, required for HS220

* Use new-style format string

* Fix indenting, uppercase the mock constant

* Run black on test_init, hopefully that will finally fix the weird formatting (pycharm, pylint and hound seems to have different opinions...)
2019-02-21 20:29:07 +01:00
..
__init__.py Use PLATFORM_SCHEMA_BASE as base schema for additional components. (#20578) 2019-02-04 21:52:19 -08:00
acer_projector.py
anel_pwrctrl.py
arest.py
broadlink.py Fix error handling in switch.broadlink module (#20772) 2019-02-06 11:39:56 +01:00
command_line.py Config Validator: schema_with_slug_keys (#20298) 2019-01-21 16:36:04 -08:00
deluge.py
demo.py
digitalloggers.py
dlink.py Minor changes (#17812) 2018-10-26 15:45:57 +02:00
edimax.py
flux.py Make flux switch async (#18277) 2018-11-07 21:52:55 +01:00
fritzdect.py
hikvisioncam.py
hook.py
kankun.py Config Validator: schema_with_slug_keys (#20298) 2019-01-21 16:36:04 -08:00
litejet.py
mfi.py
mystrom.py
netio.py Fix netio component (#17411) 2018-10-13 21:09:10 +02:00
orvibo.py
pencom.py Pencom (#19369) 2018-12-26 08:49:34 +01:00
pulseaudio_loopback.py
rainbird.py
raspyrfm.py Add RaspyRFM switch platform (#19130) 2018-12-29 16:40:03 -08:00
recswitch.py
rest.py Add verify_ssl to restful_command and switch.rest (#20199) (#20207) 2019-01-18 13:42:52 +01:00
rflink.py Restore states for RFLink devices (#18816) 2018-12-11 17:20:30 +01:00
rpi_rf.py Upgrade rpi-rf to 0.9.7 (#19394) 2018-12-26 14:50:45 -05:00
services.yaml
snmp.py Upgrade pysnmp to 4.4.8 (#19961) 2019-01-11 10:47:53 -05:00
switchbot.py Update switchbot library (#19202) 2018-12-12 09:16:20 +01:00
switchmate.py upgrade switchmate lib (#20792) 2019-02-06 21:41:38 -05:00
telnet.py Config Validator: schema_with_slug_keys (#20298) 2019-01-21 16:36:04 -08:00
template.py Config Validator: schema_with_slug_keys (#20298) 2019-01-21 16:36:04 -08:00
vesync.py
vultr.py
wake_on_lan.py