Paulus Schoutsen
4de97abc3a
Black
2019-07-31 12:25:30 -07:00
Paulus Schoutsen
d37d1ce4ad
Simplify Alexa/Google for new climate turn_on/off ( #25115 )
2019-07-13 10:27:50 +02:00
Pascal Vizeli
84cf76ba36
Climate 1.0 ( #23899 )
...
* Climate 1.0 / part 1/2/3
* fix flake
* Lint
* Update Google Assistant
* ambiclimate to climate 1.0 (#24911 )
* Fix Alexa
* Lint
* Migrate zhong_hong
* Migrate tuya
* Migrate honeywell to new climate schema (#24257 )
* Update one
* Fix model climate v2
* Cleanup p4
* Add comfort hold mode
* Fix old code
* Update homeassistant/components/climate/__init__.py
Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>
* Update homeassistant/components/climate/const.py
Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>
* First renaming
* Rename operation to hvac for paulus
* Rename hold mode to preset mode
* Cleanup & update comments
* Remove on/off
* Fix supported feature count
* Update services
* Update demo
* Fix tests & use current_hvac
* Update comment
* Fix tests & add typing
* Add more typing
* Update modes
* Fix tests
* Cleanup low/high with range
* Update homematic part 1
* Finish homematic
* Fix lint
* fix hm mapping
* Support simple devices
* convert lcn
* migrate oem
* Fix xs1
* update hive
* update mil
* Update toon
* migrate deconz
* cleanup
* update tesla
* Fix lint
* Fix vera
* Migrate zwave
* Migrate velbus
* Cleanup humity feature
* Cleanup
* Migrate wink
* migrate dyson
* Fix current hvac
* Renaming
* Fix lint
* Migrate tfiac
* migrate tado
* Fix PRESET can be None
* apply PR#23913 from dev
* remove EU component, etc.
* remove EU component, etc.
* ready to test now
* de-linted
* some tweaks
* de-lint
* better handling of edge cases
* delint
* fix set_mode typos
* apply PR#23913 from dev
* remove EU component, etc.
* ready to test now
* de-linted
* some tweaks
* de-lint
* better handling of edge cases
* delint
* fix set_mode typos
* delint, move debug code
* away preset now working
* code tidy-up
* code tidy-up 2
* code tidy-up 3
* address issues #18932 , #15063
* address issues #18932 , #15063 - 2/2
* refactor MODE_AUTO to MODE_HEAT_COOL and use F not C
* add low/high to set_temp
* add low/high to set_temp 2
* add low/high to set_temp - delint
* run HA scripts
* port changes from PR #24402
* manual rebase
* manual rebase 2
* delint
* minor change
* remove SUPPORT_HVAC_ACTION
* Migrate radiotherm
* Convert touchline
* Migrate flexit
* Migrate nuheat
* Migrate maxcube
* Fix names maxcube const
* Migrate proliphix
* Migrate heatmiser
* Migrate fritzbox
* Migrate opentherm_gw
* Migrate venstar
* Migrate daikin
* Migrate modbus
* Fix elif
* Migrate Homematic IP Cloud to climate-1.0 (#24913 )
* hmip climate fix
* Update hvac_mode and preset_mode
* fix lint
* Fix lint
* Migrate generic_thermostat
* Migrate incomfort to new climate schema (#24915 )
* initial commit
* Update climate.py
* Migrate eq3btsmart
* Lint
* cleanup PRESET_MANUAL
* Migrate ecobee
* No conditional features
* KNX: Migrate climate component to new climate platform (#24931 )
* Migrate climate component
* Remove unused code
* Corrected line length
* Lint
* Lint
* fix tests
* Fix value
* Migrate geniushub to new climate schema (#24191 )
* Update one
* Fix model climate v2
* Cleanup p4
* Add comfort hold mode
* Fix old code
* Update homeassistant/components/climate/__init__.py
Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>
* Update homeassistant/components/climate/const.py
Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>
* First renaming
* Rename operation to hvac for paulus
* Rename hold mode to preset mode
* Cleanup & update comments
* Remove on/off
* Fix supported feature count
* Update services
* Update demo
* Fix tests & use current_hvac
* Update comment
* Fix tests & add typing
* Add more typing
* Update modes
* Fix tests
* Cleanup low/high with range
* Update homematic part 1
* Finish homematic
* Fix lint
* fix hm mapping
* Support simple devices
* convert lcn
* migrate oem
* Fix xs1
* update hive
* update mil
* Update toon
* migrate deconz
* cleanup
* update tesla
* Fix lint
* Fix vera
* Migrate zwave
* Migrate velbus
* Cleanup humity feature
* Cleanup
* Migrate wink
* migrate dyson
* Fix current hvac
* Renaming
* Fix lint
* Migrate tfiac
* migrate tado
* delinted
* delinted
* use latest client
* clean up mappings
* clean up mappings
* add duration to set_temperature
* add duration to set_temperature
* manual rebase
* tweak
* fix regression
* small fix
* fix rebase mixup
* address comments
* finish refactor
* fix regression
* tweak type hints
* delint
* manual rebase
* WIP: Fixes for honeywell migration to climate-1.0 (#24938 )
* add type hints
* code tidy-up
* Fixes for incomfort migration to climate-1.0 (#24936 )
* delint type hints
* no async unless await
* revert: no async unless await
* revert: no async unless await 2
* delint
* fix typo
* Fix homekit_controller on climate-1.0 (#24948 )
* Fix tests on climate-1.0 branch
* As part of climate-1.0, make state return the heating-cooling.current characteristic
* Fixes from review
* lint
* Fix imports
* Migrate stibel_eltron
* Fix lint
* Migrate coolmaster to climate 1.0 (#24967 )
* Migrate coolmaster to climate 1.0
* fix lint errors
* More lint fixes
* Fix demo to work with UI
* Migrate spider
* Demo update
* Updated frontend to 20190705.0
* Fix boost mode (#24980 )
* Prepare Netatmo for climate 1.0 (#24973 )
* Migration Netatmo
* Address comments
* Update climate.py
* Migrate ephember
* Migrate Sensibo
* Implemented review comments (#24942 )
* Migrate ESPHome
* Migrate MQTT
* Migrate Nest
* Migrate melissa
* Initial/partial migration of ST
* Migrate ST
* Remove Away mode (#24995 )
* Migrate evohome, cache access tokens (#24491 )
* add water_heater, add storage - initial commit
* add water_heater, add storage - initial commit
delint
add missing code
desiderata
update honeywell client library & CODEOWNER
add auth_tokens code, refactor & delint
refactor for broker
delint
* Add Broker, Water Heater & Refactor
add missing code
desiderata
* update honeywell client library & CODEOWNER
add auth_tokens code, refactor & delint
refactor for broker
* bugfix - loc_idx may not be 0
more refactor - ensure pure async
more refactoring
appears all r/o attributes are working
tweak precsion, DHW & delint
remove unused code
remove unused code 2
remove unused code, refactor _save_auth_tokens()
* support RoundThermostat
bugfix opmode, switch to util.dt, add until=1h
revert breaking change
* store at_expires as naive UTC
remove debug code
delint
tidy up exception handling
delint
add water_heater, add storage - initial commit
delint
add missing code
desiderata
update honeywell client library & CODEOWNER
add auth_tokens code, refactor & delint
refactor for broker
add water_heater, add storage - initial commit
delint
add missing code
desiderata
update honeywell client library & CODEOWNER
add auth_tokens code, refactor & delint
refactor for broker
delint
bugfix - loc_idx may not be 0
more refactor - ensure pure async
more refactoring
appears all r/o attributes are working
tweak precsion, DHW & delint
remove unused code
remove unused code 2
remove unused code, refactor _save_auth_tokens()
support RoundThermostat
bugfix opmode, switch to util.dt, add until=1h
revert breaking change
store at_expires as naive UTC
remove debug code
delint
tidy up exception handling
delint
* update CODEOWNERS
* fix regression
* fix requirements
* migrate to climate-1.0
* tweaking
* de-lint
* TCS working? & delint
* tweaking
* TCS code finalised
* remove available() logic
* refactor _switchpoints()
* tidy up switchpoint code
* tweak
* teaking device_state_attributes
* some refactoring
* move PRESET_CUSTOM back to evohome
* move CONF_ACCESS_TOKEN_EXPIRES CONF_REFRESH_TOKEN back to evohome
* refactor SP code and dt conversion
* delinted
* delinted
* remove water_heater
* fix regression
* Migrate homekit
* Cleanup away mode
* Fix tests
* add helpers
* fix tests melissa
* Fix nehueat
* fix zwave
* add more tests
* fix deconz
* Fix climate test emulate_hue
* fix tests
* fix dyson tests
* fix demo with new layout
* fix honeywell
* Switch homekit_controller to use HVAC_MODE_HEAT_COOL instead of HVAC_MODE_AUTO (#25009 )
* Lint
* PyLint
* Pylint
* fix fritzbox tests
* Fix google
* Fix all tests
* Fix lint
* Fix auto for homekit like controler
* Fix lint
* fix lint
2019-07-08 14:00:24 +02:00
Paulus Schoutsen
78b7ed0ebe
Clean up Google Config ( #24663 )
...
* Clean up Google Config
* Lint
* pylint
* pylint2
2019-06-21 11:17:21 +02:00
Paul Bottein
976bf3e979
Add temperature sensor support to google smarthome thermostat device ( #24264 )
...
* Add temperature sensor support to google smarthome thermostat device
* fix lint for trait_test
* Reset temperature unit in tests
* Address comment
2019-06-03 12:40:15 -07:00
Paulus Schoutsen
6947f8cb2e
Cloud: Websocket API to manage Google assistant entity config ( #24153 )
...
* Extract exposed devices function
* Add might_2fa info to trait
* Do not filter with should_expose in Google helper func
* Cloud: allow setting if Google entity is exposed
* Allow disabling 2FA via config
* Cloud: allow disabling 2FA
* Lint
* More changes
* Fix typing
2019-05-29 08:39:12 -07:00
Joakim Plate
c8cf06b8b7
Switch media player to SWITCH type ( #23914 )
...
MEDIA device type is being rejected by google now.
2019-05-16 22:34:40 +02:00
Penny Wood
7f0953766b
Prompt for pin only on open / unlock ( #23751 )
...
* Prompt for pin only on open / unlock
* Fixed test cases
2019-05-08 07:55:30 -07:00
Paulus Schoutsen
0f49a9cb7b
Return state when changing optimistic covers ( #23498 )
2019-04-28 12:09:20 -07:00
Joakim Plate
39932d132d
Add device classes for media player and map to google types ( #23236 )
...
* Add device classes for media player and map to google types
* Switch default class for media_player to media
2019-04-25 13:12:11 -07:00
Joakim Plate
62fcb1895e
Device type garage for binary sensor garage_door ( #23345 )
...
* Switch binary sensor to garage for garage_door
* Add test for cover garage device type
2019-04-24 09:56:22 -07:00
Joakim Plate
e11e6e1b04
Volume trait for google assistant ( #23237 )
...
* Add action.devices.traits.Volume
* Drop media player from brightness trait
* Factor out commands into separate functions
* Drop support for explicit mute
2019-04-24 09:08:41 -07:00
Joakim Plate
7c55b9f087
Expose door cover/binary_sensor as door type ( #23307 )
...
* Expose door cover/binary_sensor as door type
More logical to ask "What doors are open" than "What sensors are open"
* Add test for binary_sensor device_classes
* Cosmetic flake8
* Add test for device class for cover
2019-04-23 19:25:20 -07:00
Paulus Schoutsen
0533f56fe3
Ask users for a pin when interacting with locks/garage doors ( #23223 )
...
* Ask users for a pin when interacting with locks/garage doors
* Deprecate allow_unlock option
2019-04-19 14:50:21 -07:00
Joakim Plate
4a2a130bfa
Google assistant skip missing type ( #23174 )
...
* Skip entity if no device type found
* Add test for potentially skipped binary sensors
* Reorg code, add tests to ensure all exposed things have types
* Lint
* Fix tests
* Lint
2019-04-17 22:37:39 -07:00
Joakim Plate
1bfccd803f
Allow switches to be represented as outlets on google assistant ( #23149 )
...
* Add device class support for switch to support outlet type
* Add a test for cover device class sync
* Drop remnant unused import
2019-04-16 17:07:14 -07:00
giefca
497038b332
Add Google Assistant garage type ( #23115 )
...
* Tests
* Add Google Assistant GARAGE type
* Update test_trait.py
* Key device class by domain
* Update smart_home.py
2019-04-15 13:05:53 -07:00
giefca
b804919eaa
Fix for stateless covers ( #22962 )
...
* Corrections and test
* Raise error if does not support setting position
* Raising error for stateless and assumed state covers
* Fix pylint
* Tests
* Update test_trait.py
2019-04-14 19:52:00 -07:00
Paulus Schoutsen
f33bf718c7
Google Assistant: Migrate light setting trait to use HSV color spectrum ( #22980 )
...
* Migrate light setting trait to use HSV
* Fix tests
* Fix all the typos
2019-04-10 21:35:37 -07:00
Paulus Schoutsen
51e6d5380e
Add color setting trait ( #22894 )
2019-04-09 20:17:13 -07:00
Paulus Schoutsen
14da2fd8c9
Google Assistant: Add support for open/close binary sensors ( #22674 )
...
* Google Assistant: Add support for binary sensors
* Update test
2019-04-03 10:20:56 -07:00
Paulus Schoutsen
b1cca25299
Deal with cover assumed state ( #22673 )
...
* Deal with cover assumed state
* Add docs
2019-04-03 13:53:44 +02:00
giefca
b04fd08cea
Google assistant: add blinds trait for covers ( #22336 )
...
* Update const.py
* Update smart_home.py
* Update trait.py
* Update test_trait.py
* Update smart_home.py
* Update test_trait.py
* Update trait.py
* Update trait.py
* Update test_trait.py
* Update test_trait.py
* Update __init__.py
* Update test_trait.py
* Change email
* Trying to correct CLA
* Update __init__.py
* Update trait.py
* Update trait.py
* Update trait.py
* Update trait.py
* Update __init__.py
* Update test_trait.py
* Update test_google_assistant.py
* Update trait.py
* Update trait.py
* Update test_trait.py
* Update test_trait.py
2019-03-29 20:51:47 -07:00
Paulus Schoutsen
65432ba552
Move core stuff into Home Assistant integration ( #22407 )
...
* Move core stuff into Home Assistant integration
* Lint
2019-03-26 13:38:32 +01:00
Paulus Schoutsen
1ddc249989
Consolidate more platforms ( #22308 )
...
* Consolidate final platforms
* Fix some tests
* Fix more tests
* Fix more tests
2019-03-23 20:22:35 -07:00
Paulus Schoutsen
c68b621972
Google Assistant: Add camera stream trait ( #22278 )
...
* Add camera stream trait
* Lint
2019-03-23 09:16:43 -07:00
Penny Wood
ecabf92504
Update trait to support auto without ranges. ( #21847 )
2019-03-22 13:42:56 -07:00
Penny Wood
81bb928394
Handle on/off through TemperatrureSetting trait. ( #21842 )
2019-03-21 10:57:42 -07:00
Penny Wood
d1038ea79f
Google Assistant: Create and pass context to service calls ( #21551 )
...
* Google Assistant: Create and pass context to service calls
* Refactor request data into separate object and pass to execute.
2019-03-05 20:00:53 -08:00
Penny Wood
f61f650495
Get room hints from areas ( #21519 )
...
* Get google room hint from area.
* Test case for area code.
* Updates as per code review.
2019-03-01 23:31:57 -08:00
Penny Wood
b87eb9d79e
Fire events when Google Assistant commands come in #15139 ( #20204 )
2019-02-27 11:33:34 -08:00
Paulus Schoutsen
6626e5c4a4
Handle GA Disconnect intent ( #21387 )
...
* Handle GA Disconnect intent
* Fixed lint error
2019-02-25 10:35:03 -08:00
Joakim Plate
c5de32e7b1
Climate const.py move ( #20945 )
...
* Move constants to const.py
* Import from const instead of climate
2019-02-14 20:34:43 +01:00
Andrew Hayworth
b7e2522083
bugfix: ensure the `google_assistant` component respects `allow_unlock` ( #18874 )
...
The `Config` object specific to the `google_assistant` component
had a default value for `allow_unlock`. We were not overriding this
default when constructing the Config object during `google_assistant`
component setup, whereas we do when setting up the `cloud` component.
To fix, we thread the `allow_unlock` parameter down through http setup,
and ensure that it's set correctly. Moreover, we also change the
ordering of the `Config` parameters, and remove the default. Future
refactoring should not miss it, as it is now a required parameter.
2018-12-02 11:14:46 +01:00
Eric Nagley
e50a6ef8af
Add support for Mode trait in Google Assistant. ( #18772 )
...
* Add support for Mode trait in Google Assistant.
* Simplify supported logic.
* Fix SUPPORTED_MODE_SETTINGS to correct rip failures.
* more stray commas
* update tests.
2018-11-29 21:14:17 +01:00
Bryan York
02309cc318
Enable Google Assistant OnOffTrait for climate devices that support them ( #18544 )
...
* Enable Google Assistant OnOffTrait for climate devices that support them
This commit enables the OnOffTrait for climate devices that have the SUPPORT_ON_OFF feature. I have tested this locally with a Sensibo device which supports ON_OFF and a nest device that does not.
* Update trait.py
* Add tests for onoff_climate
* Add OnOff trait to climate.heatpump
* Add on status to heatpump in google_assistant tests
2018-11-27 17:11:55 +01:00
Eric Nagley
ddeeba20b9
Google assistant enable fan speed controls ( #18373 )
...
* Initial commit of Traits changes.
* Initial commit of tests chagnes for added FanSpeed trait.
* pylint fixes.
* Default reversible to false
* Ensure reversible returns True/False.
* Fix FanSpeed trait name and fix order.
* Add remaining checks to FanSpeed trait Test.
* Remove un-needed blank lines at EOF.
* Update homeassistant/components/google_assistant/trait.py
Co-Authored-By: marchingphoenix <eanagley@gmail.com>
* use fan.SPEED_* constants as keys to speed_synonyms dict.
convert True if() to bool() for reversible assignment.
* use fan.SPEED_OFF constant of 'on' check.
2018-11-11 22:02:33 +01:00
Andrew Hayworth
2bf2214d51
Add support for locks in google assistant component ( #18233 )
...
* Add support for locks in google assistant component
This is supported by the smarthome API, but there is no documentation
for it. This work is based on an article I found with screenshots of
documentation that was erroneously uploaded:
https://www.androidpolice.com/2018/01/17/google-assistant-home-can-now-natively-control-smart-locks-august-vivint-first-supported/
Google Assistant now supports unlocking certain locks - Nest and August
come to mind - via this API, and this commit allows Home Assistant to
do so as well.
Notably, I've added a config option `allow_unlock` that controls
whether we actually honor requests to unlock a lock via the google
assistant. It defaults to false.
Additionally, we add the functionNotSupported error, which makes a
little more sense when we're unable to execute the desired state
transition.
https://developers.google.com/actions/reference/smarthome/errors-exceptions#exception_list
* Fix linter warnings
* Ensure that certain groups are never exposed to cloud entities
For example, the group.all_locks entity - we should probably never
expose this to third party cloud integrations. It's risky.
This is not configurable, but can be extended by adding to the
cloud.const.NEVER_EXPOSED_ENTITIES array.
It's implemented in a modestly hacky fashion, because we determine
whether or not a entity should be excluded/included in several ways.
Notably, we define this array in the top level const.py, to avoid
circular import problems between the cloud/alexa components.
2018-11-06 10:39:10 +01:00
Mariusz Łuciów
a87a5d266e
Fixed copy-paste errors ( #17948 )
2018-10-29 19:32:58 +01:00
Mariusz Łuciów
38576e5b74
Corrected fan device type in google assistant to fan ( #17792 )
2018-10-28 14:53:47 +01:00
Mariusz Łuciów
cfbd84f450
Added vacuum dock and pause/unpause traits ( #17657 )
2018-10-26 23:02:07 +02:00
Jason Hu
92a5068977
Use HA native OAuth2 flow for google assistant components ( #16848 )
...
* Use HA native OAuth2 flow for google assistant components
* Lint
* Force breaking changes
* Fix CONFIG_SCHEMA
2018-09-26 08:57:55 +02:00
Paulus Schoutsen
df67093441
Fix faulty color temp crashing google ( #16758 )
...
* Fix faulty color temp crashing google
* Rename
* Print warning for incorrect color temp
2018-09-21 10:51:46 +02:00
Jerad Meisner
ae63980152
Remove unit_of_measurement from climate entities ( #16012 )
...
* Remove unit_of_measurement from climate base class.
* Updated google_assistant component and tests to use core temp units.
* Fixes
* Convert Alexa component to use core temp units for climate entities.
* Fix tests.
* Converted prometheus component.
* Remove unit_of_measurement from homekit thermostat tests.
* Small fix.
2018-08-22 09:17:29 +02:00
Bryan York
38928c4c0e
Fix Min/Max Kelvin color temp attribute for Google ( #15697 )
...
* Fix Min/Max Kelvin color temp attribute for Google
Max Kelvin is actually Min Mireds and vice-versa. K = 1000000 / mireds
* Update test_smart_home.py
* Update test_trait.py
2018-08-02 22:09:19 +02:00
Paulus Schoutsen
5dcad89a0d
Do not sync entities with an empty name ( #14181 )
2018-04-30 09:18:18 -04:00
Niklas Wagner
9fb73c1bab
Hue mireds value is actually 153 not 154 ( #13601 )
2018-04-02 09:45:38 +02:00
Paulus Schoutsen
d385e9645d
Merge remote-tracking branch 'origin/master' into dev
2018-03-22 10:20:35 -07:00
Paulus Schoutsen
da4e630f54
Fix tests
2018-03-21 10:38:06 -07:00
Paulus Schoutsen
ffbafa687a
Do not include unavailable entities in Google Assistant SYNC ( #13358 )
2018-03-21 10:14:56 -07:00