springstan
ed71683488
Improve string formatting ( #33643 )
2020-04-04 20:17:11 +02:00
Paulus Schoutsen
6afe6acb6c
Mark new gate device class as 2FA ( #33541 )
2020-04-02 22:02:59 +02:00
Oxan van Leeuwen
6180f7bd64
Fix Google Assistant temperature control for entity without mo… ( #33107 )
2020-03-23 16:57:26 -07:00
springstan
ad102b3840
Use f-strings in integrations starting with "F"and"G" ( #32150 )
...
* Use f-strings in integrations starting with F
* Use f-strings in tests for integrations starting with F
* Use f-strings in integrations starting with G
* Use f-strings in tests for integrations starting with G
* Fix pylint error
* Fix broken test
2020-02-24 17:54:20 -08:00
Paulus Schoutsen
8ceef72853
Google Assistant: Track if request is local ( #31226 )
...
* Track if request is local
* Cancel early if 2FA disabled
* Allow disabling 2FA for ack
* Do not mark devices with 2FA as reachable
* Add request source to GA events
2020-01-28 10:54:39 -08:00
Joakim Plate
8dc57a3700
Allow all sources and sound modes to be selected in google assistant ( #30418 )
...
* Simplify media player source list
Google don't need a whitelisted set of modes anymore. So let's just forward any mode that we have.
* Report current mode with the setting name, not a synonym
* Refactor mode generation to support other modes
* Support sound mode as mode as well
* Adjust failing test now with sound modes
2020-01-04 00:39:03 +01:00
Joakim Plate
039cc98278
Support case of unknown/unavailable temperature/humidity ( #29959 )
...
* Support case of unknown/unavailable temperature/humidity
State is never None, just a string.
* Lint suggestion
2019-12-16 08:04:59 +01:00
springstan
b759d50900
Move imports to top for google_assistant ( #29561 )
...
* Move imports to top for google_assistant
* Fix pylint error caused by isorting the imports with noqa: F401
* Move back an import because of circular dependency, add annotations
2019-12-08 09:45:13 +01:00
Shulyaka
1f72de108c
google_assistant: support for humidity sensors ( #28695 )
2019-11-25 22:12:20 -08:00
Joakim Plate
5fd9b474dc
Always provide brightness value ( #28228 )
...
HA will remove attribute when light is off, but google expect all trait data all the time.
2019-11-03 11:36:02 -08:00
Paulus Schoutsen
2ab6eb4fa0
Revert "Allow Google Assistant relative volume control ( #26585 )" ( #27416 )
...
This reverts commit 95c537bee8
.
2019-10-10 12:46:40 -07:00
Ryan Ewen
95c537bee8
Allow Google Assistant relative volume control ( #26585 )
...
* Allow Google Assistant volume control without volume_level
* Add test for relative volume control w/o volume_level
2019-10-10 17:53:52 +03:00
Rami Mosleh
d1adb28c6b
Add google_assistant alarm_control_panel ( #26249 )
...
* add alarm_control_panel to google_assistant
* add cancel arming option
* raise error if requested state is same as current
* rework executing command logic
* Add tests
* fixed tests
* fixed level synonyms
2019-09-25 10:13:31 -07:00
Bryan York
f45f8f2f3d
Emulate color temperature for non-ct lights in light groups ( #23495 )
...
* Emulate color temperature for non-ct lights in light groups
* fix tests
* Address review comments
* Fix black formatting
* Fix for pylint
* Address comments
* Fix black formatting
* Address comments
2019-09-15 20:53:05 +02:00
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
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
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
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
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
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
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
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
Fabian Affolter
3736120c6a
Update file header ( #21061 )
...
* Update file header
* Fix lint issue
* Fix lint issue
2019-02-14 16:01:46 +01:00
Paulus Schoutsen
802497b05c
Google_assistant: fix climate modes ( #19084 )
...
* home-assistant/home-assistant#18645 : Fix climate mode mapping.
* home-assistant/home-assistant#18645 : Remove un-used constants.
* home-assistant/home-assistant#18645 : revert heat-cool -> auto change
2018-12-10 12:32:24 +01:00
Eric Nagley
df2f476c67
Google assistant fix target temp for *F values. ( #19083 )
...
* home-assistant/home-assistant#18524 : Add rounding to *F temps
* home-assistant/home-assistant#18524 : Linting
* simplify round behavior
* fix trailing whitespace
(thanks github editor)
2018-12-10 12:31:52 +01:00
phnx
385f0298bd
home-assistant/home-assistant#18645 : revert heat-cool -> auto change
2018-12-07 10:00:56 -05:00
phnx
471d94b6cd
home-assistant/home-assistant#18645 : Fix climate mode mapping.
2018-12-07 01:15:04 -05:00
Eric Nagley
4e272624eb
BUGFIX: handle extra fan speeds. ( #18799 )
...
* BUGFIX: add support for extra fan speeds.
* Drop extra fan speeds.
Remove catch all, drop missing fan speeds.
* fix self.speed_synonyms call. Remove un-needed keys() call
2018-11-29 22:24:53 +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
cfbd84f450
Added vacuum dock and pause/unpause traits ( #17657 )
2018-10-26 23:02:07 +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
Ville Skyttä
dd9d53c83e
Update pydocstyle to 2.1.1 and flake8-docstrings to 1.3.0 ( #14557 )
...
* Update pydocstyle to 2.1.1 and flake8-docstrings to 1.3.0
* Pydocstyle D401 fixes
2018-08-24 10:28:43 +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