Erik Montnemery
5e6f5fca90
Don't send MQTT birth message in tests ( #43917 )
2020-12-04 04:39:49 +01:00
Kiall Mac Innes
8efa9c5097
Add support for MQTT Scenes ( #42639 )
2020-12-02 19:42:28 +01:00
Erik Montnemery
8ff10ad3b8
Fix MQTT threading bug ( #43667 )
2020-11-26 22:33:58 +01:00
Paulus Schoutsen
b3be708db6
Add default config if not there ( #43321 )
...
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2020-11-25 15:10:04 +01:00
Erik Montnemery
52e1282d8c
Make MQTT climate return PRESET_NONE when no preset is set ( #43257 )
2020-11-16 20:10:55 +01:00
Erik Montnemery
4e49bd0596
Correct handling of existing MQTT subscriptions ( #43056 )
2020-11-10 21:55:26 +01:00
Erik Montnemery
b45fa29077
Force color or white mode exclusivity for MQTT lights ( #42887 )
2020-11-09 12:51:01 +01:00
Paulus Schoutsen
d4efa938dd
Improve mqtt test ( #42490 )
2020-10-27 23:22:59 +01:00
Paulus Schoutsen
6380ebd1eb
Fix MQTT publish from a script with templates ( #42398 )
2020-10-26 16:46:26 +01:00
Paulus Schoutsen
5dac3883b0
Stub light profiles ( #42232 )
2020-10-23 16:28:21 +02:00
Erik Montnemery
e203896638
Align MQTT light's default color temperature ( #41842 )
2020-10-21 15:46:29 +02:00
Tim Werner
e5aa5e2c35
rewrite mqtt unittest tests to pytest style ( #42122 )
2020-10-20 16:35:49 +02:00
Erik Montnemery
343e5d64b8
Add MQTT integration discovery ( #41332 )
...
* Add MQTT integration discovery
* Add script/hassfest/mqtt.py
* Unsubscribe if config entry exists
* Add homeassistant/generated/mqtt.py
* Fix bad loop
* Improve tests
* Improve tests
* Apply suggestions from code review
Co-authored-by: Fabian Affolter <mail@fabian-affolter.ch>
* Prevent initiating multiple config flows
Co-authored-by: Fabian Affolter <mail@fabian-affolter.ch>
2020-10-07 18:30:51 +02:00
Erik Montnemery
306ee30574
Enable MQTT discovery by default ( #41361 )
2020-10-07 14:51:06 +02:00
Franck Nijhof
ee914366a8
Add native Python types support to templates ( #41227 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-10-07 00:05:52 +02:00
Erik Montnemery
c777647233
Drop legacy_patchable_time from MQTT tests ( #41287 )
2020-10-05 21:39:44 +02:00
Erik Montnemery
13dad34019
Reorder MQTT binary sensor tests ( #41277 )
2020-10-05 19:42:28 +02:00
Erik Montnemery
e7f832a82f
Add MQTT tag scanner ( #40709 )
2020-09-28 22:04:27 +02:00
Franck Nijhof
8837ed35cd
Use direct service calls in tests instead of automation common ( #40623 )
...
* Use direct service calls in tests instead of automation common
* Remove automation common test helpers
2020-09-26 19:28:26 +02:00
Erik Montnemery
4d6e694d14
Fix discovery update of MQTT state templates ( #39901 )
2020-09-10 20:52:23 +02:00
Erik Montnemery
9aba1985c7
Fix MQTT light value template ( #39820 )
2020-09-08 23:11:42 +02:00
J. Nick Koston
65e53b8251
Support reloading mqtt yaml configuration ( #39531 )
2020-09-02 20:16:21 -05:00
Erik Montnemery
4c6960ed36
Fix discovery update of MQTT light ( #39325 )
2020-09-02 10:52:33 +02:00
Franck Nijhof
1c2ebdf307
Upgrade black to 20.8b1 ( #39287 )
2020-08-27 13:56:20 +02:00
Erik Montnemery
114a7226d6
Wait before sending MQTT birth message ( #39120 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-08-25 16:42:24 +02:00
Erik Montnemery
ee043d8614
Wait for broker to ACK MQTT operations ( #39051 )
...
* Wait for broker to ACK MQTT operations
* Deduplicate new code
* Fix tests
* Improve test
* Don't hold PAHO lock when waiting for ACK
* Fix tests
* Add constant for ACK timeout
2020-08-21 17:00:13 +02:00
Phil Bruckner
ca9dd0c833
Reorganize trigger code ( #38655 )
2020-08-17 11:54:56 -05:00
Erik Montnemery
4ed1f8023b
Suppress MQTT discovery updates without changes ( #38568 )
2020-08-06 10:43:47 +02:00
Erik Montnemery
686e6b8fc3
Add test ( #37890 )
2020-07-24 12:29:19 +02:00
Erik Montnemery
fa0e12ffe8
Use keywords for MQTT birth and will ( #38040 )
2020-07-21 14:10:34 -07:00
Erik Montnemery
908b72370b
Correct arguments to MQTT will_set ( #38036 )
2020-07-21 12:36:21 -07:00
J. Nick Koston
910b6c9c2c
Index entity_registry_updated listeners ( #37940 )
2020-07-17 21:59:18 -07:00
Erik Montnemery
fb3049d6a2
Set MQTT sensor to state unavailable when value expires ( #36609 )
2020-07-08 16:20:19 -07:00
Erik Montnemery
b63655057c
Publish birth and will messages by default ( #37371 )
...
* Publish birth and will messages by default
* Remove useless copy
2020-07-04 17:49:08 +02:00
Erik Montnemery
4b3ad0a1cd
Support multiple MQTT availability topics ( #37418 )
...
* Support multiple MQTT availability topics
* Make availability list and availability_topic exclusive
* Make availability list and availability_topic exclusive
* Add missing abbreviation
2020-07-04 17:48:34 +02:00
Erik Montnemery
9ade1de3d5
Support empty output of MQTT binary_sensor value_template ( #37420 )
...
* Support empty output of MQTT binary_sensor value_template
* Strip white space
* Add test
* Add test
2020-07-04 17:48:02 +02:00
J. Nick Koston
89a9634d35
Use eventloop for scheduling ( #37184 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-06-29 09:39:24 -07:00
Erik Montnemery
bb17cbdd83
Drop MQTT broker tls_version parameter ( #37033 )
2020-06-23 12:12:37 -07:00
Erik Montnemery
4e77969f5e
Drop use of mock_mqtt_component ( #37013 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-06-23 10:17:22 -07:00
Erik Montnemery
1b3e5460a9
Remove embedded MQTT broker ( #37032 )
2020-06-23 09:51:50 -07:00
Erik Montnemery
747490ab34
Support reconfiguring MQTT config entry ( #36537 )
2020-06-22 17:49:01 -07:00
Erik Montnemery
280f49540e
Drop use of async_mock_mqtt_component ( #37011 )
2020-06-22 23:59:50 +02:00
Erik Montnemery
a2e2c35011
Use pytest for more MQTT tests ( #36859 )
...
* Use pytest for more MQTT tests
* Address review comments
* Break out PAHO client mock in separate fixture.
* tweak.
2020-06-22 22:02:29 +02:00
Erik Montnemery
16cf16e418
Update MQTT tests to not create duplicated config entries ( #36833 )
2020-06-15 15:38:56 -07:00
Paulus Schoutsen
c33edbe5bb
Use TestCase.addCleanup ( #36560 )
2020-06-08 12:26:40 -07:00
Erik Montnemery
35cd6b9abf
Remove unused parameter for MQTT discovery ( #36526 )
...
* Remove unused parameter for MQTT discovery
* Fix tests
2020-06-07 19:35:35 +02:00
definitio
ad5101c5c0
Set state for MQTT entities to 'unavailable' when no connection to broker ( #36479 )
...
* Report 'unavailable' state when not connected
to MQTT broker
* Fix tests
* Rewrite to remove the polling
* Add tests
* Add some fixes
2020-06-07 09:21:16 +02:00
Paulus Schoutsen
276f3afb00
Do async_setup_platform in background ( #36244 )
...
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-05-31 22:18:30 -07:00
Erik Montnemery
f1af5b71e2
Correct MQTT device trigger reconfiguration with same topic ( #36234 )
2020-05-28 15:50:23 -07:00
Erik Montnemery
8de863ecf1
Let PAHO MQTT client handle connection to MQTT server ( #35983 )
...
* Let PAHO client handle connection to MQTT server
2020-05-26 17:12:22 +02:00
Pieter Goetschalckx
02a36a9b68
Add min_mireds and max_mireds to MQTT Light ( #32613 )
...
* Add min_mireds and max_mireds to MQTT Light
* Add abbreviations for min_mireds and max_mireds
* Add tests for min_mireds and max_mireds
2020-05-10 09:34:48 +02:00
Erik Montnemery
f1ecac92df
Fail tests if wrapped callbacks or coroutines throw ( #35010 )
2020-05-06 14:14:57 -07:00
Erik Montnemery
f9b420a5a5
Make sure MQTT light brightness is not rounded to 0 ( #35207 )
2020-05-04 15:54:49 -07:00
Paulus Schoutsen
2af984917e
Use asynctest-mock in most places ( #35109 )
...
* Use asynctest-mock in most places
* Fix broken patch in pilight
2020-05-03 11:27:19 -07:00
Erik Montnemery
2b13a8cde4
Include QoS and retain in MQTT debug info ( #35011 )
2020-05-01 08:41:57 -07:00
Erik Montnemery
82a478e2fb
Fix MQTT debug info for same topic ( #34952 )
2020-04-30 22:34:44 -07:00
Paulus Schoutsen
76f392476b
Use a future for mock coro ( #34989 )
2020-04-30 16:31:00 -07:00
Paulus Schoutsen
ec47216388
Use built-in test helpers on 3.8 ( #34901 )
2020-04-30 13:29:50 -07:00
Paulus Schoutsen
454c5d824a
Attempt to fix CI ( #34800 )
2020-04-28 10:31:22 -07:00
Paulus Schoutsen
0d700f6a63
Fix tests for Python 3.8 ( #34672 )
2020-04-25 14:32:55 -07:00
Erik Montnemery
4448eb94a1
Only subscribe when MQTT client is connected. ( #34557 )
2020-04-22 14:38:04 -07:00
Tom
d6ab36bf8e
Set mqtt binary_sensor unavailable if expire_after specified ( #34259 )
...
* Set self._expired=True if expire_after specified
* Added test_expiration_on_discovery_and_discovery_update_of_binary_sensor to mqtt/test_binary_sensor.py
* Fixed flake8 error
* Fixed isort error
2020-04-22 23:29:49 +02:00
Erik Montnemery
6631bbc6f5
Remove reconnect logic from MQTT client. ( #34556 )
2020-04-22 14:28:36 -07:00
Erik Montnemery
877eb0c3ad
Don't log same MQTT message multiple times ( #34511 )
2020-04-21 16:48:04 -07:00
presslab-us
e41753556c
Add MQTT climate temperature unit ( #34066 )
...
* Add MQTT temperature unit
2020-04-15 20:11:04 +02:00
springstan
78d87dc40f
Use TEMP_CELSIUS constant ( #33963 )
2020-04-10 19:17:46 +02:00
Franck Nijhof
30c6ace0f3
Rewrite MQTT & demo Lock tests ( #33838 )
...
* Refactor tests to remove tests.lock.common
* Remove unused is_locked hass binding
* Import constants via entity component
* Import constants via entity component
* Fix light vs lock in naming
2020-04-10 00:40:51 +02:00
Erik Montnemery
ddef681dd2
Improve MQTT debug info for subscriptions with wildcard ( #33752 )
2020-04-07 09:38:22 -07:00
Erik Montnemery
f3b6575272
Fix MQTT debug info for subscriptions with wildcard. ( #33744 )
2020-04-06 10:25:09 -07:00
Franck Nijhof
98a2efcbab
Collection of random (mainly) test improvements ( #33733 )
2020-04-06 12:51:48 +02:00
Jevgeni Kiski
a1aebe904e
Add MQTT Alarm Control Panel custom bypass state ( #32541 )
...
* MQTT Alarm Control Panel to have all available states
* MQTT Alarm Control Panel to have all available states
* test_arm_custom_bypass_* tests added
* MQTT payload_arm_custom_bypass abbreviation
2020-04-06 11:45:37 +02:00
Franck Nijhof
262b01d632
Removal of old style class definitions in tests ( #33671 )
2020-04-05 02:21:07 +02:00
Franck Nijhof
03dd92d51b
Use set literals in tests ( #33669 )
2020-04-05 02:20:09 +02:00
Franck Nijhof
d7e9959442
String formatting improvements for tests (2) ( #33666 )
2020-04-05 00:33:07 +02:00
Erik Montnemery
4e6fd19624
Improve MQTT test coverage and remove dead code ( #33584 )
...
* Improve MQTT tests and remove dead code
* Remove useless test.
* Add more test
2020-04-03 09:05:58 -07:00
Ziv
8fbdc703e0
Fix uncaught exceptions for mqtt ( #33547 )
...
now all mqtt tests pass
2020-04-02 15:18:30 -07:00
David F. Mulcahey
201e958854
Use mock storage for MQTT tests ( #33553 )
...
* mock storage for MQTT
* more mqtt storage mocks
2020-04-02 17:13:44 -05:00
Erik Montnemery
fbd197146a
Add MQTT debug info for remaining MQTT integrations ( #33506 )
2020-04-01 11:48:32 -07:00
Erik Montnemery
fb93b79b12
Add MQTT debug info ( #33461 )
...
* Add MQTT debug info
* Tweaks
* Tweaks
2020-04-01 10:00:40 -07:00
Erik Montnemery
9508c51403
Fix change of entity_id for discovered MQTT entities ( #33444 )
2020-03-30 14:26:59 -07:00
Erik Montnemery
e0d2e5dcb0
Remove deprecated features from MQTT platforms ( #32909 )
...
* Remove deprecated features
* Lint
2020-03-18 22:39:15 -07:00
Erik Montnemery
505de3dce3
Add attributes and availability to MQTT camera ( #32908 )
2020-03-17 16:49:50 -07:00
Erik Montnemery
52a4c16980
Improve MQTT light test coverage ( #32907 )
2020-03-17 18:29:12 -05:00
Erik Montnemery
86d48c608e
Deduplicate MQTT tests ( #32874 )
2020-03-17 02:09:19 -05:00
Erik Montnemery
8bc542776b
Cleanup entity and device registry on MQTT discovery removal ( #32693 )
...
* Cleanup entity and device registry on MQTT discovery removal.
* Review comments
2020-03-11 18:00:47 -07:00
Erik Montnemery
f7ddbc7e1e
Remove duplicated config from MQTT tests ( #32689 )
2020-03-11 09:34:19 -07:00
Erik Montnemery
324dfe07b4
Clear discovery topic for MQTT device triggers ( #32617 )
2020-03-09 21:59:38 -07:00
Erik Montnemery
4bb9f1800d
Deduplicate MQTT mixin tests ( #32563 )
...
* Deduplicate MQTT mixin tests
* Remove test of not yet merged function
2020-03-09 09:40:00 -07:00
Erik Montnemery
2d6b80470f
Improve error handling ( #32182 )
2020-02-25 10:44:24 -08:00
Erik Montnemery
7e387f93d6
Add MQTT WS command to remove device ( #31989 )
...
* Add MQTT WS command to remove device
* Review comments, fix test
* Fix tests
2020-02-24 20:46:02 -08:00
springstan
9801810552
Use f-strings in integrations starting with "B"-"E" ( #32121 )
...
* Use f-strings in integrations starting with B
* Use f-strings in integrations starting with C
* Use f-strings in integrations starting with D
* Use f-strings in integrations starting with E
* Fix pylint errors
* Fix pylint errors v2
* Fix tests
* Fix tests v2
2020-02-24 08:47:52 -08:00
Erik Montnemery
60ae85564e
Add support for MQTT device triggers ( #31679 )
...
* Add support for MQTT device triggers
* Fix test, tweaks
* Improve test coverage
* Address review comments, improve tests
* Tidy up exception handling
* Fix abbreviations
* Rewrite to handle update of attached triggers
* Update abbreviation test
* Refactor according to review comments
* Refactor according to review comments
* Improve trigger removal
* Further refactoring
2020-02-18 13:51:10 -08:00
Paulus Schoutsen
81dbdc6b9c
Add dump service to MQTT integration ( #31370 )
...
* Add dump service to MQTT integration
* Lint
2020-02-02 15:01:51 -08: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
Rick
3718b25bd9
Add opening and closing states to MQTT covers ( #31259 )
...
* Added support for the opening and closing states to MQTT covers
* Processed PR feedback on MQTT cover changes
* Add missing MQTT abbreviation to fix failing tests
* Fixed typo in MQTT abbreviations
* Added mqtt set cover position optimistic test
2020-01-30 21:14:46 +01: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
Paulus Schoutsen
9aa02e35a7
Entity Component to no longer generate automatic groups ( #23789 )
2020-01-07 17:30:53 +01:00
Jc2k
8257ea30c0
Set required_features field when registering fan services ( #30516 )
...
* Set required_features on fan services
* Fix mqtt fan test
* Update fan.py
2020-01-06 17:10:51 +01:00
Franck Nijhof
e642d95d0f
Migrate collection of component tests from coroutine to async/await ( #30504 )
2020-01-06 01:22:22 +01:00
Ville Skyttä
e6388e186c
Remove unnecessary string literal concatenations ( #30360 )
2020-01-02 21:17:10 +02:00
Iulius
1c2618d99a
Add separate command and state topics for mqtt lock ( #29808 )
...
* Update lock.py
Allow different command and state topic + different command and state values.
* Formatting updated after black run
* TC updated to reflect different state & cmd values
* Abbreviations for lock states added
* additional non-default state test
* whitespaces fixed
* black formatting run
2019-12-31 15:24:09 +01:00
Ville Skyttä
a12cf7211d
Upgrade pydocstyle to 5.0.1 ( #29830 )
...
* Upgrade pydocstyle to 5.0.1
http://www.pydocstyle.org/en/5.0.1/release_notes.html
* Pydocstyle and other docstring fixes
2019-12-10 23:25:06 +01:00
Bas Nijholt
ce5072fc91
use isort to sort imports according to PEP8 for mqtt ( #29649 )
2019-12-08 22:45:26 +05:30
Paulus Schoutsen
02d9ed5e36
Do not select all entities when omitting entity ID in service call ( #29178 )
...
* Do not select all entities when omitting entity ID
* Address comments Matthew
* Require either area_id or entity_id
* Fix tests
* Fix test
2019-12-02 16:23:12 -08:00
Paulus Schoutsen
ffaa0e572a
Inline MQTT paho imports ( #29177 )
...
* Inline MQTT paho imports
* Address comments
* Fix patch paths
* Move other imports inline
* Fix test
2019-12-02 11:32:02 -08:00
Dmitry Krasnoukhov
4881bc04d8
Allow to change MQTT climate hold mode ( #28988 )
2019-11-25 20:53:37 -08:00
Kevin Köck
b7153ca207
Add mqtt temp_low/high_template in SCHEMA_BASE ( #28257 )
...
* fix missing temp_low/high_template in SCHEMA_BASE
* temperature_high/low_state_template test
* Update test_climate.py
* paste error
* Update test_climate.py
* Update test_climate.py
* Update test_climate.py
* Update test_climate.py
2019-11-06 07:50:54 -05:00
Fabian Affolter
15900094a1
Update MQTT sensor test ( #28449 )
2019-11-01 17:30:37 -07:00
Adrien Foulon
85eefe41da
Fix supported_features in mqtt cover ( #28120 )
...
* Correctly compute the supported_features in cover.mqtt
* Update homeassistant/components/mqtt/cover.py
Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>
* Correctly compute the supported_features in cover.mqtt
* Format
2019-10-23 10:44:47 -07:00
Raman Gupta
4cb984842a
Support custom source type for MQTT device tracker ( #27838 )
...
* support custom source type for MQTT device tracker
* fix typo
* add abbreviation
2019-10-22 22:26:29 -07:00
Raman Gupta
4e25807b7d
Add ability for MQTT device tracker to map non-default topic payloads to zones/states ( #27143 )
...
* add ability for MQTT device tracker to map nondefault topic payloads to zones
* update new parameter name and add abbreviation
* support for payload_home, payload_not_home, and payload_custom
* use constants STATE_NOT_HOME and STATE_HOME as defaults
* reference state constants directly
* add empty dict as default for payload_custom
* change parameter name for custom mapping of payloads to non-home zones to be more descriptive
* removed 'payload_other_zones' per ballobs review
* remove abbreviation for 'payload_other_zones'
* add tests for feature
2019-10-17 17:51:27 -07:00
Malte Franken
1a5b4c105a
Move imports in mqtt component ( #27835 )
...
* move imports to top-level in mqtt server
* move imports to top-level in mqtt configflow
* move imports to top-level in mqtt init
* move imports to top-level in mqtt vacuum
* move imports to top-level in mqtt light
2019-10-17 17:04:27 -07:00
Paulus Schoutsen
3231e22ddf
Remove direct authentication via trusted networks or API password ( #27656 )
...
* Remove direct authentication via trusted networks and API password
* Fix tests
2019-10-14 14:56:45 -07:00
Albert Gouws
e394be7337
Mqtt binary sensor expire after ( #26058 )
...
* Added expire_after to mqtt binary_sensor. Updated mqtt test_binary_sensor test.
* Cleanup MQTT Binary Sensor and tests after suggestions
* Updated to not alter state at all
* Change to include custom expired variable, and override available property to check expired
* Added # pylint: disable=no-member
2019-09-21 20:42:03 +02:00
zewelor
c4c21d3e99
Add device to mqtt camera ( #26238 )
...
* Add device to mqtt camera
* Support discovery device info update and add tests
2019-09-04 16:15:40 +02:00
Erik Montnemery
e0be4efe3e
Add test case to identify missing MQTT configuration abbreviations ( #25616 )
...
* Add missing abbreviations
* Move abbreviations to own file, add script to find missing abbreviations
* Move check from script to test case
* Lint
* Rewrite to use pathlib
* Lint
2019-08-06 17:32:15 -07:00
Paulus Schoutsen
4de97abc3a
Black
2019-07-31 12:25:30 -07:00
Paulus Schoutsen
50d4921d0a
Introduce PRESET_NONE for climate ( #25360 )
...
* Introduce PRESET_NONE for climate
* Require preset mode to be a string
* Lint
* Fix tests
2019-07-21 11:00:42 -07:00
Philip Rosenberg-Watt
1c6d55e51b
Add MQTT climate precision ( #25265 )
...
* Add MQTT climate precision
* Remove stale code
2019-07-18 15:21:50 -07:00
definitio
93970b5621
Add hvac_action support for MQTT HVAC ( #25260 )
...
* Add hvac_action support
* Add tests
2019-07-18 10:17:26 -07: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
Franck Nijhof
31f569ada9
Batch of Component(s) -> Integration(s) ( #24972 )
2019-07-05 15:24:26 -07:00
Dennis Keitzel
8cd138608c
Support mqtt discovery topic prefix with slashes ( #24840 )
2019-07-01 10:23:01 -07:00
kbickar
7564d1fb52
Added toggle service to covers ( #23198 )
...
* Added toggle service to cover
* Added toggle tilt service and tilt closed property
* Added is_tilt_closed so tilt can be toggled
* Added toggle services
* Added toggle tilt service
* Removed spaces
* Added tests for tilt services
* Updated tests
* Added range conversion in comparison
* Added tests to cover broken areas
* Fixed open/close tilt values and added toggle function
* Added default toggle behavior using tilt_position of 0, reverted other changes
* blank space
* Added constants and swapped assert comparisons
* Fixed attribute name
* Added mqtt responses in test
* Added constants
* Space
* Fix tilt_optimistic flag being ignored if status topic set
* Added more tests
* Changed async toggle call
* Updated group tilt test
* Updated format of asserts
* Updated states calls
* Updated function variables
* merge fixes
* Added blank line
* Changed calls to async
* More async updates
2019-06-17 14:09:31 -07:00
Penny Wood
84e6813779
Rename via_hub to via_device ( #24360 )
...
* Rename via_hub to via_device
* Fixed registry interactions
2019-06-10 09:10:44 -07:00
Tommy Long
e98054accb
Add templating to MQTT Cover tilt_status ( #24355 )
2019-06-06 15:30:27 -07:00
Paulus Schoutsen
59ce31f44f
No longer allow invalid slugs or extra keys ( #24176 )
...
* No longer allow slugs
* Lint
* Remove HASchema
* Lint
* Fix tests
2019-05-30 13:33:26 +02:00
Paulus Schoutsen
70ed58a78d
Restructure device tracker ( #23862 )
...
* Restructure device tracker
* Docstyle
* Fix typing
* Lint
* Lint
* Fix tests
2019-05-15 23:43:45 +02:00
Martin Hjelmare
4fe0cd76f8
Clean up mqtt device tracker tests ( #23700 )
...
* Move mqtt device tracker test under mqtt dir
* Patch config file load and save
* Clean up
* Sort imports
* Put expected value last in assertions
2019-05-05 11:50:38 -07:00
Erik Montnemery
5376e15286
Convert some test helpers to coroutines and adjust tests ( #23352 )
...
* Convert some test helpers to coroutines
* Fix tests
2019-04-25 10:14:16 +02:00
Pawel
9007e17c3e
MQTT Vacuum State Device ( #23171 )
...
* add StateVacuum MQTT
2019-04-22 21:49:15 +02:00
Erik Montnemery
a89c7f8feb
Improve MQTT tests ( #23296 )
...
* Improve MQTT tests
* Tweak
2019-04-22 08:48:50 -04:00
Erik Montnemery
1e0bc97f56
Drop unnecessary block_till_done ( #23256 )
2019-04-19 16:08:11 -07:00
Erik Montnemery
eebb452fb5
Drop unnecessary block_till_done, improve tests for MQTT Cover tests ( #23255 )
2019-04-19 16:07:28 -07:00
Erik Montnemery
2c42e1a5cb
Drop unnecessary block_till_done for MQTT tests ( #23254 )
...
* Drop unnecessary block_till_done
* Drop unnecessary block_till_done
2019-04-19 14:59:16 -07:00
Erik Montnemery
28c411c742
Drop unnecessary block_till_done for MQTT fan tests ( #23253 )
2019-04-19 14:58:44 -07:00
Erik Montnemery
73a7d5e6f4
Drop unnecessary block_till_done, improve tests ( #23252 )
2019-04-19 14:52:23 -07:00
Erik Montnemery
f584878204
Drop unnecessary block_till_done ( #23251 )
2019-04-19 14:51:48 -07:00
Erik Montnemery
416af5cf57
Drop unnecessary block_till_done ( #23250 )
2019-04-19 14:10:48 -07:00
Erik Montnemery
557211240e
Drop unnecessary block_till_done, improve tests ( #23249 )
2019-04-19 14:08:54 -07:00
Erik Montnemery
13e0691c90
Drop unnecessary block_till_done, improve tests ( #23248 )
2019-04-19 14:08:02 -07:00
Erik Montnemery
0e429cca33
Drop unnecessary block_till_done, improve tests ( #23247 )
2019-04-19 12:26:56 -07:00
Erik Montnemery
887e1cd8e3
Drop unnecessary block_till_done, improve tests ( #23246 )
2019-04-19 12:19:46 -07:00
Erik Montnemery
bea7e2a7fa
Fix clearing error message for MQTT vacuum ( #23206 )
...
* Fix clearing error message
* Remove redundant hass.async_block_till_done
2019-04-18 21:01:19 -07:00
Erik Montnemery
7a84cfb0be
Fix optimistic mode + other bugs, tests ( #22976 )
2019-04-18 20:59:41 -07:00
Erik Montnemery
70ba5eb0ef
Add json_attributes_template ( #22981 )
2019-04-18 20:55:10 -07:00
Paulus Schoutsen
d722f4d64a
Further integration load cleanups ( #23104 )
...
* Further integration load cleanups
* Fix tests
* Unflake MQTT vacuum command test
2019-04-14 19:07:05 -07:00
Pawel
1d2e9b6915
Add support for params in send_command ( #23071 )
...
* add support for params in send_command
* add more tests
2019-04-14 11:09:46 -07:00
Erik Montnemery
b390de1598
Fix bugs in MQTT vacuum ( #23048 )
2019-04-13 20:29:01 -07:00
Erik Montnemery
d99637e51b
Deprecate implicit state_topic for MQTT discovery ( #22998 )
...
* Deprecate implicit state_topic for MQTT discovery
* Lint
* Add comments
* Modernize tests
2019-04-13 20:25:45 -07:00
Erik Montnemery
38d92b2abf
Fix optimistic mode and add tests ( #22899 )
2019-04-10 13:56:34 -07:00
Erik Montnemery
bc5f0ff0b3
Use dict[key] for required config keys and keys with default values of MQTT light ( #22834 )
...
* Use dict[key] for required config keys and keys with default values.
* Improve tests
* Lint
* Improve tests of JSON data
2019-04-10 11:16:41 +02:00
Paulus Schoutsen
590eead128
Test fixes ( #22911 )
...
* Fix light tests [skip ci]
* Fix tests/common
* Fix some mqtt tests [skip ci]
* Fix tests and component manifests which have only one platform
* Fix more tests and manifests
* Fix demo/notify tests
* Rollback test for demo.geo_location
2019-04-08 23:16:55 -07:00
Otto Winter
c9ec166f4b
Add MQTT climate two-point target temperature support ( #22860 )
...
* Add MQTT climate two-point target temperature support
* Sort
* Fix test
2019-04-08 06:28:42 -07:00
Kyle Niewiada
a5a926bcc6
Raise ConfigEntryNotReady for MQTT connection exception ( #22540 )
...
* Raise ConfigEntryNotReady for connection exception
Raise ConfigEntryNotReady for the connection exception like if the MQTT Server container/device is being restarted or was unavailable on boot.
* Add new exception
* grammar fix
* Possibly resolve hound comments
* raise `ConfigEntryNotReady` for mqtt connection error
* revert exceptions.py
* Update exceptions.py
* modify test to handle exception
* use constants to control exception scope
* Raise ConfigEntryNotReady for connection exception
Raise ConfigEntryNotReady for the connection exception like if the MQTT Server container/device is being restarted or was unavailable on boot.
* Add new exception
* Add new exception
* grammar fix
* Possibly resolve hound comments
* raise `ConfigEntryNotReady` for mqtt connection error
* revert exceptions.py
* Update exceptions.py
* modify test to handle exception
* use constants to control exception scope
* revert test change as it's not the same thing
* Update test_init.py
* Add test for MQTT OSError
* revert file changes from a bad rebase
* Rewrite test with valid syntax
* rewrite test to be less ambiguous
* add empty line
* add back 'axis'
* Remove empty line
* Update tests and undo merge from earlier
* correctly restore test for no connect broker
* fix test mock correctly
* line was too long. hit enter.
2019-04-03 21:51:01 -07:00
Kevin Cooper
4b9e3258dc
Add command_template and value_template for MQTT alarm ( #21438 )
...
* Option to send pin code with the MQTT payload for MQTT alarm
* publish code via json
Add publish code via json
add code_disarm_required
* publish code via json
Add publish code via json
add code_disarm_required
* implemented command_template
* Fix issue with night arm and add template test
* implemented value_template for mqtt alarm
* Fixed merge errors
* Requested changes
* Resolve lint errors
* Resolve hound issues
* Fix test formatting
2019-03-30 07:36:10 +01:00
emontnemery
5957e4b75b
Pass Message object to MQTT message callbacks ( #21959 )
...
* Pass Message object to MQTT message callbacks
* Improve method of detecting deprecated msg callback
* Fix mysensors
* Fixup
* Review comments
* Fix merge error
2019-03-13 12:58:20 -07:00
emontnemery
ce1fe06193
Write state directly in all MQTT platforms ( #21971 )
2019-03-12 14:46:48 -07:00
Paulus Schoutsen
429bbc05dc
Add WS subscription command for MQTT ( #21696 )
...
* Add WS subscription command for MQTT
* Add test
* Add check for connected
* Rename event_listeners to subscriptions
2019-03-10 20:07:09 -07:00
Jason Hu
fe1840f901
Deprecate http.api_password ( #21884 )
...
* Deprecated http.api_password
* Deprecated ApiConfig.api_password
GitHub Drafted PR would trigger CI after changed it to normal PR.
I have to commit a comment change to trigger it
* Trigger CI
* Adjust if- elif chain in auth middleware
2019-03-10 19:55:36 -07:00
Marco M
05333f60d7
Fix missing code_required check in async_alarm_arm_night ( #21858 )
...
* Fix missing code_required check in async_alarm_arm_night
* Remove double code validation
Test added
2019-03-10 14:25:01 +01:00
Marco M
c3d4738649
Mqtt alarm added value_template and code_arm_required ( #19558 )
...
* Added value_template config for parsing json value from state topic
Added arm_code_required to avoid code enter when arming
* Renamed config parameter to code_arm_required
* Fix for discovery update compatibility
* Fixed lint error
* Added test
2019-02-28 17:44:23 +01: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
Ryan Wagoner
62b2b23d0b
Add night arm mode to MQTT alarm control panel ( #20961 )
...
* Add night arm mode to MQTT alarm control panel
* Add unit test for MQTT alarm night mode
2019-02-13 22:52:32 +01:00
emontnemery
22af9707ad
Add support for device_class to MQTT cover ( #21044 )
2019-02-13 19:58:46 +00:00
emontnemery
5f7f7777a0
Fix encoding for MQTT camera ( #20932 )
2019-02-10 12:35:54 +01:00
emontnemery
b1faad0a50
Use PLATFORM_SCHEMA_BASE as base schema for additional components. ( #20578 )
...
* Disable extra=vol.ALLOW_EXTRA for additional platforms.
* Remove PLATFORM_SCHEMA_2
* Add entity_namespace to base platform schema
2019-02-04 21:52:19 -08:00
emontnemery
79d3f533a9
Add missing abbreviations ( #20741 )
2019-02-04 10:54:40 -08:00
Jason Hu
d7b61f7ff6
Move mqtt_mock to tests/components/mqtt/conftest.py ( #20621 )
...
* Move mqtt_mock to tests/components/mqtt/conftest.py
* Move mqtt room presence sensor test to tests/components/mqtt
* Revert "Move mqtt room presence sensor test to tests/components/mqtt"
This reverts commit e08bc143
* Decouple mqtt room presence sensor test and mqtt_mock
2019-01-31 21:22:29 +01:00
emontnemery
89fc3b2a1b
Disable extra=vol.ALLOW_EXTRA for MQTT platforms. ( #20562 )
2019-01-29 09:29:02 -08:00
emontnemery
3ee3acd550
Update device registry of MQTT light ( #20441 )
...
* Update device registry of MQTT light
* Move config_entry to constructor
2019-01-28 19:45:34 -08:00
emontnemery
bb1583c453
Add discovery update support to MQTT camera ( #20529 )
2019-01-28 16:21:38 -08:00
emontnemery
bb4ca1f525
Cleanup if discovered mqtt vacuum can't be added ( #20549 )
2019-01-28 15:56:47 -08:00
emontnemery
648adcc708
Small cleanup of MQTT platforms ( #20503 )
...
* Move CONF_UNIQUE_ID to init
* Sort imports
* Update ordering
2019-01-27 18:54:52 +01:00
emontnemery
8804f55fcc
Update device registry of MQTT Vacuum ( #20500 )
2019-01-27 17:43:16 +01:00
emontnemery
1f93984fd5
Update device registry of MQTT Lock ( #20501 )
2019-01-27 17:42:45 +01:00
emontnemery
60dc337f3f
Update device registry of MQTT cover ( #20443 )
...
* Update device registry of MQTT cover
* Move config_entry to constructor
2019-01-26 10:52:41 -08:00
emontnemery
85c72fbca6
Update device registry of MQTT alarm ( #20439 )
2019-01-26 10:48:35 -08:00
emontnemery
85ccd71d39
Update device registry of MQTT sensor ( #20440 )
2019-01-26 10:48:18 -08:00
Paulus Schoutsen
09cbcb74bc
Merge pull request #20442 from emontnemery/mqtt_binary_sensor_update_device_info
...
Update device registry of MQTT binary_sensor
2019-01-26 10:47:57 -08:00
Paulus Schoutsen
0e453fe492
Update device registry of MQTT climate ( #20444 )
2019-01-26 10:47:29 -08:00
emontnemery
1d16bb2cd4
Update device registry of MQTT fan ( #20445 )
2019-01-26 10:46:41 -08:00
emontnemery
6d2e7db123
Update device registry of MQTT climate
2019-01-26 09:04:02 +08:00
emontnemery
d8e43978b7
Update device registry of MQTT binary_sensor
2019-01-26 08:58:08 +08:00
emontnemery
d84cd01cbf
Cleanup if discovered mqtt light can't be added ( #19740 )
...
* Cleanup if discovered mqtt light can't be added
* No bare except
* Clear ALREADY_DISCOVERED list with helper
* Use constant instead of string literal
2019-01-24 22:40:52 -08:00
emontnemery
a1da6a677a
Update device registry of MQTT Switch ( #19540 )
...
* MQTT Switch: Update device registry
* Move config_entry to constructor
* Remove duplicated code
* Fix merge error
2019-01-24 22:39:16 -08:00
emontnemery
3fcbcd5a38
Add JSON attribute topic to MQTT alarm ( #20238 )
2019-01-20 16:42:56 -08:00
emontnemery
dbba3eb0d4
Add JSON attribute topic to MQTT climate ( #20239 )
2019-01-20 16:42:35 -08:00
emontnemery
89e9d827a2
Add JSON attribute topic to MQTT fan ( #20240 )
2019-01-20 16:42:17 -08:00
emontnemery
ab4e4787e3
Add JSON attribute topic to MQTT lock ( #20241 )
2019-01-20 16:41:50 -08:00
Erik
5b8f64093b
Add JSON attribute topic to MQTT vacuum
2019-01-19 11:58:21 +01:00
emontnemery
6800871c13
Log exceptions thrown by signal callbacks ( #20015 )
...
* Log exceptions thrown by signal callbacks
* Fix unsub
* Simplify traceback print
* Typing
* Add test
* lint
* Review comments
* Rework MQTT test case
* Fix bad merge
* Fix bad merge
2019-01-17 14:44:57 -08:00
emontnemery
f094a7369d
Add JSON attribute topic to MQTT switch ( #20192 )
2019-01-17 10:55:22 -08:00
emontnemery
234f348ba1
Add JSON attribute topic to MQTT light ( #20191 )
2019-01-17 10:54:22 -08:00
emontnemery
d1c6eb4f3e
Add JSON attribute topic to MQTT cover ( #20190 )
...
* Add JSON attribute topic to MQTT cover
* Lint
2019-01-17 10:53:52 -08:00
emontnemery
368682647d
Log exceptions thrown by MQTT message callbacks ( #19977 )
...
* Log exceptions thrown by MQTT message callbacks
* Fix tests
* Correct method for skipping wrapper in traceback
* Lint
* Simplify traceback print
* Add test
* Move wrapper to common helper function
* Typing
* Lint
2019-01-16 13:50:21 -08:00
emontnemery
5b53bd6aa0
Move MQTT platforms under the component ( #20050 )
...
* Move MQTT platforms under the component
2019-01-15 17:31:06 +01:00
Fredrik Erlandsson
b9a488912a
Add support for 'via_hub' for device_info ( #19454 )
...
* Add support for 'via_hub'
* Update config schema
* add domain to via_hub
* add tests for via_hub
2019-01-11 13:11:13 -08:00
Paulus Schoutsen
df21dd21f2
RFC: Call services directly ( #18720 )
...
* Call services directly
* Simplify
* Type
* Lint
* Update name
* Fix tests
* Catch exceptions in HTTP view
* Lint
* Handle ServiceNotFound in API endpoints that call services
* Type
* Don't crash recorder on non-JSON serializable objects
2018-11-30 21:28:35 +01:00
emontnemery
de9bac9ee3
Reconfigure MQTT binary_sensor component if discovery info is changed ( #18169 )
...
* Recreate component if discovery info is changed
* Update component instead of remove+add
* Set name and unique_id in __init__
* Update unit test
* Cleanup
* More cleanup
* Refactor according to review comments
* Change discovery_hash
* Review comments, add tests
* Fix handling of value_template
2018-11-19 16:49:04 +01:00
Pascal Vizeli
eb0d989c88
Bugfix discovery (delete/mqtt) call for Hass.io ( #18159 )
...
* Bugfix discovery delete call for Hass.io
* Fix host
* fix tests
2018-11-04 12:19:04 +01:00
Paulus Schoutsen
08fe7c3ece
Pytest tests ( #17750 )
...
* Convert core tests
* Convert component tests to use pytest assert
* Lint 🤷♂️
* Fix test
* Fix 3 typos in docs
2018-10-24 12:10:05 +02:00
emontnemery
b2789d9883
Support abbreviations in discovery topic ( #16635 )
...
* Support abbreviations in discovery topic
* Add abbreviations for all words. Add testcase.
Add missing docstring.
* Add missing abbreviations
* Support topic prefix
* Update test case
* Restrict topic prefix
* Fix merge
* Simplify abbreviations expanding, assume TOPIC_PREFIX is one character long
* Support abbreviated keys instead of words
* Remove redundant abbreviations
* Remove extra spaces in abbreviation list
* Make topic prefix less restrictive
* Make topix prefix a bit more restrictive again
2018-10-12 08:51:16 +02:00
Otto Winter
af2402ea59
Implement base for MQTT device registry integration ( #16943 )
...
* Implement base for MQTT device registry integration
* Lint
* Lint
* Address comments
* Lint
* Lint
* Address comments
* Only add keys if specified
See https://github.com/home-assistant/home-assistant/pull/17136#discussion_r223267185
2018-10-08 12:53:30 +02:00
Paulus Schoutsen
c69a790ede
Add Hass.io discovery to MQTT ( #16962 )
...
* Add Hass.io discovery to MQTT
* Update en.json
* Update __init__.py
* Update config_flow.py
* Update strings.json
* Update test_config_flow.py
* Lint
* Ensure we don't send bad data in config entry
2018-10-01 14:11:21 +02:00
Otto Winter
d1ad2cc225
Make MQTT platforms config entries ( #16904 )
...
* Make MQTT platforms config entries
* Fix tests
* Address Comment
* Rework tests
* Undo style auto-reformat style changes
2018-09-27 16:07:56 +02:00
emontnemery
eb59f2dd3c
Move MQTT discovery removal tests to platform test files ( #16861 )
2018-09-25 19:32:04 +02:00
emontnemery
093285f92f
Remove discovered MQTT binary_sensor device when discovery topic is cleared ( #16826 )
2018-09-25 14:25:03 +02:00
Paulus Schoutsen
e4898bb05c
Allow MQTT discovery ( #16842 )
2018-09-25 12:22:14 +02:00
emontnemery
90197b6ec9
Remove discovered MQTT light device when discovery topic is cleared ( #16824 )
2018-09-25 09:19:04 +02:00
emontnemery
42790d3e97
Remove discovered MQTT alarm_control_panel device when discovery topic is cleared ( #16825 )
2018-09-25 08:44:14 +02:00
emontnemery
5ee4718e24
Remove discovered MQTT Switch device when discovery topic is cleared ( #16605 )
...
* Remove discovered device when discovery topic is cleared
* Move entity removal away from mqtt discovery
* Move discovery update to mixin class
* Add testcase
* Review comments
2018-09-24 10:11:49 +02:00
Paulus Schoutsen
72e746d240
MQTT config entry ( #16594 )
...
* MQTT config entry
* Solely rely on config entry
* Improve wawrning
* Lint
* Lint2
2018-09-14 11:57:31 +02:00
Rohan Kapoor
e61ac1a4a1
Delegate mqtt topic match validation to the paho mqtt client ( #16403 )
...
* Delegate mqtt match topics to the paho mqtt client
* Fixing linting error with importing MQTTMatcher
2018-09-04 10:31:45 +02:00
Jason Hu
87eb6cd25a
Upgrade hbmqtt to 0.9.4 ( #16356 )
...
* Upgrade to hbmqtt 0.9.4
* Lint
* Typo
2018-09-02 12:50:30 +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
Ville Skyttä
dbd0763f83
Grammar and spelling fixes ( #16065 )
2018-08-19 22:29:08 +02:00
Jason Hu
45f12dd3c7
MQTT embedded broker has to set its own password. ( #15929 )
2018-08-13 11:26:06 +02:00
Richard Orr
cd6544d32a
Add support for alarm_control_panel to MQTT Discovery. ( #15689 )
2018-07-27 17:16:49 +02:00
Andrey
02238b6412
Add python 3.7 to travis and tox ( #14523 )
...
* Add python 3.7 to travis and tox
* Use pyyaml from github
* Don't version constraints
* Fix version tag
* Change to new pyyaml release
* Python 3.7 requires xenial
* Fix namespace detection
* Use correct RegEx type
* Update pexpect to 4.6
* Use correct validation for dictionaries
* Disable Py37 incompatible packages
* Upgrade all pexpect to 4.6
* Add explicit None as default param
2018-07-07 10:48:02 -04:00
dreizehnelf
73034c933e
Add discovery support to mqtt climate component. ( #15085 )
...
* Add discovery support to mqtt climate component.
* - Fix flake8 error (./homeassistant/components/climate/mqtt.py:130:1: D202 No blank lines allowed after function docstring)
- Fix test error (since climate component was expected not to work - changed it to "lock" component, which also does not have MQTT discovery support yet)
* Fix old assert statement to reflect new lock component usage
* Change invalid MQTT discovery component type from 'lock' to 'timer', since contrary to the documentation the lock component is properly supported when using MQTT discovery.
* Make configuration of invalid MQTT config component a single point of entry to prevent missing the assertion later in the code when changing.
* Add new testcases to cover not-yet-covered code paths in https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/components/climate/mqtt.py
2018-06-25 15:13:19 +02:00
Otto Winter
9d1f9fe204
Improve MQTT topic validation ( #14099 )
...
* Improve MQTT topic validation
* Fix test
* Improve length check
2018-04-27 13:15:45 +02:00
Paulus Schoutsen
89a19c89a7
Fix aiohttp deprecation warnings ( #13240 )
...
* Fix aiohttp deprecation warnings
* Fix Ring deprecation warning
* Lint
2018-03-15 21:49:49 +01:00
Otto Winter
d3386907a4
MQTT Python 3.5 Async Await Syntax ( #12815 )
...
* MQTT Async Await
* Remove unused decorator.
2018-03-01 15:06:26 -08:00
Paulus Schoutsen
6ee3c1b3e5
Hello Python 3.5 ( #12610 )
...
* Hello Python 3.5
* Fix test
* Fix tests
* Fix never awaited block till done warnings
2018-02-22 23:22:27 -08:00
Paulus Schoutsen
f32911d036
Cleanup http ( #12424 )
...
* Clean up HTTP component
* Clean up HTTP mock
* Remove unused import
* Fix test
* Lint
2018-02-15 22:06:14 +01:00
Otto Winter
5d4b1ecd3b
Fix MQTT payload decode returning prematurely ( #12420 )
...
* Fix MQTT returning prematurely
* Add test
2018-02-14 22:00:49 -08:00
Otto Winter
b1c0cabe6c
Fix MQTT retained message not being re-dispatched ( #12004 )
...
* Fix MQTT retained message not being re-dispatched
* Fix tests
* Use paho-mqtt for retained messages
* Improve code style
* Store list of subscribers
* Fix lint error
* Adhere to Home Assistant's logging standard
"Try to avoid brackets and additional quotes around the output to make it easier for users to parse the log."
- https://home-assistant.io/developers/development_guidelines/
* Add reconnect tests
* Fix lint error
* Introduce Subscription
Tests still need to be updated
* Use namedtuple for MQTT messages
... And fix issues
Accessing the config manually at runtime isn't ideal
* Fix MQTT __init__.py tests
* Updated usage of Mocks
* Moved tests that were testing subscriptions out of the MQTTComponent test, because of how mock.patch was used
* Adjusted the remaining tests for the MQTT clients new behavior - e.g. self.progress was removed
* Updated the async_fire_mqtt_message helper
* ✅ Update MQTT tests
* Re-introduce the MQTT subscriptions through the dispatcher for tests - quite ugly though... 🚧
* Update fixtures to use our new MQTT mock 🎨
* 📝 Update base code according to comments
* 🔨 Adjust MQTT test base
* 🔨 Update other MQTT tests
* 🍎 Fix carriage return in source files
Apparently test_mqtt_json.py and test_mqtt_template.py were written on Windows. In order to not mess up the diff, I'll just redo the carriage return.
* 🎨 Remove unused import
* 📝 Remove fire_mqtt_client_message
* 🐛 Fix using python 3.6 method
What's very interesting is that 3.4 didn't fail on travis...
* 🐛 Fix using assert directly
2018-02-11 09:17:58 -08:00
Cezar Sá Espinola
b8b4e32758
Make MQTT reconnection logic more resilient and fix race condition ( #10133 )
2017-11-17 10:29:23 -08:00
Walter Huf
8a3f8457e8
Adds MQTT Fan Discovery ( #9463 )
2017-09-17 11:32:22 +02:00
natemason
23400c4b0a
Fixed mqtt subscription filter on sys $ topics ( #8166 )
...
* Fixed mqtt subscription filter on sys $ topics
* fixed linting issue
* added unit tests for $ topics and changed fix to use re.escape
* merge upstream/dev mqtt unit tests
* Update test_init.py
2017-06-26 22:17:55 -07:00
Alex Mekkering
c1095665e9
added optional node_id to MQTT discovery ( #8096 )
2017-06-24 00:46:41 -07:00
pezinek
1c2f4866e2
No update in MQTT Binary Sensor #7478 ( #8057 )
2017-06-16 14:55:59 +02:00
nordeep
be53cc7068
Don't initialize mqtt components which have already been discovered ( #7625 )
...
* Don't initialize mqtt components which have already been discovered
* Fix string length
* Fix blank lines, fix constant name
* Remove globals. Remove JSON dump
* Add tests. Update grammar
* PEP8 style issue
* Add hyphen to object_id regex
* PEP8 style fix
2017-05-23 11:08:12 -07:00
amigian74
0e08925259
correct MQTT subscription filter ( #7269 )
...
* correct MQTT subscription filter
* wildcard handling (#) fixed
* wildcard handling (#) fixed
* added tests for topic subscription like +/something/#
* function names changed (line too long)
* using raw strings for regular expression
import order changed
2017-05-02 09:18:34 -07:00
Gianluca Barbaro
fa65783f39
MQTT: Managing binary payloads ( #6976 )
...
* Managing binary payloads
Hello,
background: I wrote a HA camera component that gets the image from a binary payload. I'm testing it with Zanzito (https://play.google.com/store/apps/details?id=it.barbaro.zanzito ) and it works apparently well: it gets the image and correctly displays it in the front-end.
But I had to make the changes I'm proposing here: the message was being blocked because the utf-8 decoding failed.
As far as I know, the utf-8 encoding is required for the topic, not for the payload. What I did here was try the utf-8 decoding, but even if unsuccessful, it dispatches the message anyway.
Is there anything else I'm missing?
thanks
Gianluca
* Update __init__.py
* Update __init__.py
* Update __init__.py
* git test - ignore
* Should work
* minor fixes
* updated mqtt/services.yaml
* added two tests, modified threaded subscribe
* removing polymer
* requested changes
* requested changes - minor fix
* security wrap around payload_file_path
* services.yaml updated
* removed file publishing
* minor fix
2017-04-13 07:38:09 -07:00
printzlau
1cb2a6add0
automatically use bundled certificate it set to auto ( #6707 )
...
* automatically use bundled certificate if certificate-parameter is set to 'auto' and seperate this from which port is specified
* Fix travis error and long lines
* Update __init__.py
2017-03-19 14:51:53 -07:00
Dennis de Greef
5183cb5903
Be able to select mqtt:tls_version for Python < 3.6 ( #6442 )
...
* Be able to select tls_version
* This test should always assert this value, not only in 3.6
* Disable linting on future property (py36)
* Only allow TLS 1.0, 1.1 and 1.2
* Fix line length issue
* Fix check config tests
* Allow auto as a TLS version
2017-03-12 22:02:59 -07:00
Pascal Vizeli
20fcd1f0e2
Bugfix mqtt socket memory error ( #6501 )
...
* Bugfix mqtt socket memory error
* Fix tests
* Fix lint
2017-03-09 06:31:43 -08:00
Dennis de Greef
1b23b32817
Use bundled certificates if port matches mqtts ( #6429 )
...
* Use bundled certificates if port matches mqtts
* Move import requests.certs to top, since it's used in more places
* Add happy and non-happy path tests for default certificate bundle on mqtts port
2017-03-05 14:08:29 -08:00
Paulus Schoutsen
2650c73a89
Split bootstrap into bs + setup ( #6416 )
...
* Split bootstrap into bs + setup
* Lint
2017-03-05 10:41:54 +01:00
Pascal Vizeli
41f558b181
Bootstrap / Component setup async ( #6264 )
...
* Bootstrap / Entiy setup async
* Cleanup add_job stuff / return task/future object
* Address paulus comments / part 1
* fix install pip
* Cleanup bootstrap / move config stuff to config.py
* Make demo async
* Further bootstrap improvement
* Address Martin's comments
* Fix initial tests
* Fix final tests
* Fix bug with prepare loader
* Remove no longer needed things
* Log error when invalid config
* More cleanup
* Cleanups platform events & fix lint
* Use a non blocking add_entities callback for platform
* Fix Autoamtion is setup befor entity is ready
* Better automation fix
* Address paulus comments
* Typo
* fix lint
* rename functions
* fix tests
* fix test
* change exceptions
* fix spell
2017-02-28 20:33:19 -08:00
Fabian Affolter
9f2719bb1f
Update regex ( #6216 )
2017-02-25 12:55:01 -08:00
Pascal Vizeli
81ca978413
Move mqtt from eventbus to dispatcher / add unsub for dispatcher ( #6206 )
...
* Move mqtt from eventbus to dispatcher / add unsub for dispatcher
* Fix lint
* Fix test
* Fix lint v2
* fix dispatcher_send
2017-02-24 17:11:50 -08:00
Paulus Schoutsen
25408941de
Mqtt fixes ( #6116 )
...
* Fix MQTT stop
* MQTT: Make sure to have connection setup at end of MQTT setup.
* Fix MQTT connect
2017-02-19 22:43:10 -08:00
Pascal Vizeli
e1cbd6b4c0
MQTT convert to async ( #6064 )
...
* Migrate mqtt to async
* address paulus comment / convert it complet async
* adress paulus comment / remove future
* Automation triggers should be async
* Fix MQTT async calls
* Show that event helpers are callbacks
* Fix tests
* Lint
2017-02-18 14:17:18 -08:00
Paulus Schoutsen
c54517de90
Convert config.components to a set ( #5824 )
2017-02-09 20:21:57 +02:00
Fabian Affolter
c7fd28c10f
MQTT discovery ( #5724 )
...
* Change implementation
* Re-write
* Remove unused consts
* Update discovery.py
* Add tests
* fix other tests
* Fix check_config script test
* Lint
* Lint
2017-02-07 09:13:24 -08:00
Johann Kellerman
4692ea85b7
[mqtt] Embedded MQTT server fix ( #5132 )
...
* Embedded MQTT server fix and schema
* feedback
2017-01-03 23:17:56 +01:00
Fabian Affolter
51e20c92f9
WIP Fix pylint and PEP257 issues (tests) ( #4120 )
...
* Fix pylint and PEP257 issues
* More PEP257 fixes
2016-12-01 21:45:19 -08:00
bestlibre
0e0ba28249
support for last will and birth message for mqtt ( #4381 )
2016-11-14 22:18:33 -08:00
Paulus Schoutsen
2bfded7153
MQTT.Server will use HASS eventloop ( #3429 )
2016-11-10 22:45:38 -08:00
Paulus Schoutsen
e88b98f5fa
Clean up tests ( #4209 )
2016-11-03 21:58:18 -07:00
Paulus Schoutsen
7f699b4261
Lazy initialise the worker pool ( #4110 )
...
* Lazy initialise the worker pool
* Minimize pool initialization in core tests
* Fix tests on Python 3.4
* Remove passing in thread count to mock HASS
* Tests: Allow pool by default for threaded, disable for async
* Remove JobPriority for thread pool
* Fix wrong block_till_done
* EmulatedHue: Remove unused test code
* Zigbee: do not touch hass.pool
* Init loop in add_job
* Fix core test
* Fix random sensor test
2016-10-31 08:47:29 -07:00
Pascal Vizeli
d5368f6f78
Async bootstrap / component init ( #3991 )
...
* Async bootstrap
* Adress comments
* Fix tests
* More fixes
* Tests fixes
2016-10-27 00:16:23 -07:00
Rob Capellini
272539105f
Replacing tempfile with mock_open in tests ( #3753 )
...
- test_bootstrap.py
- test_config.py
- components/test_init.py
- components/test_panel_custom.py
- components/test_api.py
- components/notify/test_file.py
- components/notify/test_demo.py
- components/camera/test_local_file.py
- helpers/test_config_validation.py
- util/test_package.py
- util/test_yaml.py
No changes needed in:
- components/cover/test_command_line.py
- components/switch/test_command_line.py
- components/rollershutter/test_command_line.py
- components/test_shell_command.py
- components/notify/test_command_line.py
Misc changes in:
- components/mqtt/test_server.py
Also, removed some unused mock parameters in tests/components/mqtt/test_server.py.
2016-10-17 20:16:36 -07:00
Michael
ce19e6367f
Catch MQTT encoding errors ( #3749 )
...
* added error handling to mqtt message receive if payload is not utf-8 unicode
added mqtt test for above code as well
* change permission back to 644
* attempting to test new code
* changed exception to AttributeError
fixed test for above
* fixed lint errors I made in tests....mqtt/test_init.py
* more lint fixes for my added test
* remove dual decode of MQTT payload
* convert if to try, except, else statement for mqtt payload decode
* rework mqtt unicode testing code to properly check for log file entriy on unicode decode exception
* fixed lint error
* Update test_init.py
2016-10-14 21:08:44 -07:00
Paulus Schoutsen
8c694eb279
Speed up MQTT server test ( #3703 )
2016-10-04 22:49:43 -07:00
Paulus Schoutsen
00e298206e
Optimize template 2 ( #3521 )
...
* Enforce compiling templates
* Refactor templates
* Add template validator to Logbook service
* Some more fixes
* Lint
* Allow easy skipping of rfxtrx tests
* Fix template bug in AND & OR conditions
* add entities extractor
Conflicts:
tests/helpers/test_template.py
* fix unittest
* Convert template to be async
* Fix Farcy
* Lint fix
* Limit template updates to related entities
* Make template automation async
2016-09-27 21:29:55 -07:00
Paulus Schoutsen
609d7ebea5
Migrate core from threads to async awesomeness ( #3248 )
...
* Add event loop to the core
* Add block_till_done to HA core object
* Fix some tests
* Linting core
* Fix statemachine tests
* Core test fixes
* fix block_till_done to wait for loop and queue to empty
* fix test_core for passing, and correct start/stop/block_till_done
* Fix remote tests
* Fix tests: block_till_done
* Fix linting
* Fix more tests
* Fix final linting
* Fix remote test
* remove unnecessary import
* reduce sleep to avoid slowing down the tests excessively
* fix remaining tests to wait for non-threadsafe operations
* Add async_ doc strings for event loop / coroutine info
* Fix command line test to block for the right timeout
* Fix py3.4.2 loop var access
* Fix SERVICE_CALL_LIMIT being in effect for other tests
* Fix lint errors
* Fix lint error with proper placement
* Fix slave start to not start a timer
* Add asyncio compatible listeners.
* Increase min Python version to 3.4.2
* Move async backports to util
* Add backported async tests
* Fix linting
* Simplify Python version check
* Fix lint
* Remove unneeded try/except and queue listener appproriately.
* Fix tuple vs. list unorderable error on version compare.
* Fix version tests
2016-09-12 19:16:14 -07:00
Paulus Schoutsen
d9ecc4af64
EventBus: return function to unlisten
2016-08-25 23:25:35 -07:00
Paulus Schoutsen
e0dd5a8558
Tweak Recorder
2016-07-11 08:56:07 -07:00
Jan Harkes
3aa4727b18
Fix for MQTT config validation on the protocol field. ( #1765 )
2016-04-09 09:03:41 -07:00
Jan Harkes
5b17f629ad
Test function for mqtt topic validators and IsFile() linting fix ( #1740 )
...
* Add test function for mqtt topic validators.
* Fix for linting error on vol.IsFile()
2016-04-07 13:52:25 -04:00
Jan Harkes
58ea589f99
Fixes for mqtt config validation tests.
2016-04-06 22:51:38 -04:00
Jan Harkes
8cca2bb344
Config validation for MQTT
2016-04-06 22:51:38 -04:00
Jan Harkes
9ce2081110
Coerce ascii flags in MQTT publish service call.
...
Also fixes a bug where the test when no payload is given succeeds only
because we run the jinja templating out of memory. Sending an empty
payload instead of trying to fix it through validation for now.
2016-04-03 00:54:05 -07:00
Jan Harkes
5c753f8ffd
Service validation for MQTT component.
...
* Service validation for MQTT component.
* Fixes for failing mqtt tests.
- Changed behaviour when both 'payload' and 'payload_template' are provided
instead of silently ignoring the payload_template value.
- Have validation accept any type of payload and leave encoding to paho-mqtt.
2016-04-02 08:46:09 -07:00
Paulus Schoutsen
8386bda4e4
MQTT: Start embedded server if no config given
2016-03-12 21:42:47 -08:00