Jan Bouwhuis
4335b0db25
Clean up or correct from removed deprecation for MQTT platform ( #82684 )
...
Clean up or correct from removed deprecation
2022-11-25 16:11:22 +01:00
Jan Bouwhuis
8a8732f0bc
Strict type hints for MQTT integration ( #82317 )
...
* Strict type hints for MQTT integration
* Fix errors
* Additional corrections
* Use cv.template to avoid untyped calls
* Enable strict typing policy for MQTT integration
* Use ignore[no-untyped-call]
* Use # type: ignore[unreachable]
* Correct cast
* Refactor getting discovery_payload
* Remove unused type ignore comments
2022-11-24 08:25:44 +01:00
epenet
7f1e1ed1d8
Enforce LightEntityFeature ( #82460 )
2022-11-22 07:14:47 +01:00
Jan Bouwhuis
982e75a15f
Improve type hints MQTT light schema template ( #82211 )
...
* Improve type hints MQTT light schema template
* A few improvements
* Follow up comments
2022-11-21 09:20:11 +01:00
Jan Bouwhuis
fb909d694f
Improve type hints MQTT light schema json ( #82208 )
...
* Improve type hints schema json
* Add hint for brightness
* Follow up comments
* Follow up missed comments
* Correct hint on flash arg
* hints on one line
2022-11-18 12:12:27 +01:00
Jan Bouwhuis
7c2e7863d2
Remove legacy YAML support from MQTT ( #82102 )
2022-11-17 22:55:31 +01:00
Jan Bouwhuis
3d00923665
Improve MQTT type hints / refactor part 9 - light ( #81151 )
...
* Improve type hints light base
* improve type hints light schema basic
* Improve type hints light schema json
* Use MQTT Template models with light template
* Addtional type hints for template light
* Improve template hints for schema template
* Use strict type hints for templates
* MyPy corrections
* Follow up comments
* Follow up comments
* Revert changes schema_json
* Revert changes schema template
* Hints setup_entity_json and setup_entity_template
* Remove type hint on setup_entity JSON
2022-11-17 10:22:25 +01:00
Jan Bouwhuis
d66d079330
Use `_attr_` for MQTT light ( #81465 )
...
* Schema basic
* Schema json
* Schema template
* add color_mode - follow up comments
* Fix regression
* Follow up comments 2
* Fix mypy errors
* Update homeassistant/components/mqtt/light/schema_template.py
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-11-08 10:16:05 +01:00
epenet
9b2a8901b1
Adjust payload sentinel in mqtt ( #81553 )
...
* Adjust payload sentinel in mqtt
* Add type hints
* Update sensor.py
* Adjust vacuum
* Add type hints
* Adjust schema basic
* Remove invalid hint
2022-11-07 12:31:11 +01:00
Jan Bouwhuis
591d13bc49
Move MQTT CONF_SCHEMA from light and vacuum to .const ( #81152 )
...
Move CONF_SCHEMA to .const
2022-10-29 10:22:59 +02:00
Jan Bouwhuis
8aa30cce26
Fix state saving when sharing topics for MQTT entities ( #79421 )
...
* Do not write old state sharing availability topic
* Add a test
* Support for all availability topics
* delay async_write_ha_state till last callback
* Process write req after processing callback jobs
* Do not count subscription callbacks
* Simplify
* Stale docsting
* No topic needed for delays state write
* No need to clear when reloading
* Move test to test_mixins.py
* Only set up sensor platform for test
2022-10-11 10:49:54 +02:00
Jan Bouwhuis
354411feed
Link manually added MQTT entities the the MQTT config entry ( #78547 )
...
Co-authored-by: Erik <erik@montnemery.com>
2022-09-18 12:55:31 -04:00
Jan Bouwhuis
d53d59eb6c
Improve warning messages on invalid received modes ( #77909 )
2022-09-09 11:12:09 +02:00
Erik Montnemery
b21f8c9ea8
Remove use of deprecated SUPPORT_* constants from MQTT light ( #77828 )
...
* Remove use of deprecated SUPPORT_* constants from MQTT light
* Refactor
2022-09-08 11:21:46 +02:00
Jan Bouwhuis
90aba6c523
Add cv.deprecated to MQTT modern schema's too ( #76884 )
...
Add cv.deprcated to modern schema too
2022-08-19 11:12:47 +02:00
Erik Montnemery
60c8d95a77
Remove white_value support from light ( #76926 )
2022-08-18 08:21:05 -04:00
Erik Montnemery
4cc1428eea
Add support for color_mode white to MQTT JSON light ( #76918 )
2022-08-17 13:07:50 +02:00
Erik Montnemery
73001e29ff
Remove deprecated white_value support from MQTT light ( #76848 )
...
* Remove deprecated white_value support from MQTT light
* Remove deprecated white_value support from MQTT JSON light
* Remove deprecated white_value support from MQTT template light
2022-08-16 16:47:21 +02:00
Jan Bouwhuis
5930f056a8
Mqtt support config_entry unload ( #70149 )
...
* squashed commits for rebase
* Flake
* Fix reloading issue manual legacy items
* Improve ACS sync for unsubscribe at disconnect
* Processed review comments
* Update homeassistant/components/mqtt/client.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* No need to await entry setup
* Remove complication is_connected
* Update homeassistant/components/mqtt/__init__.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-07-12 11:07:18 +02:00
Erik Montnemery
f05b4a0ca0
Fire event_mqtt_reloaded only after reload is completed ( #74226 )
2022-06-30 10:15:25 -07:00
J. Nick Koston
2742bf86e3
Switch mqtt to use json helper ( #73871 )
...
* Switch mqtt to use json helper
* whitespace
2022-06-23 14:29:09 +02:00
Jan Bouwhuis
57daeaa174
Fix MQTT config schema to ensure correct validation ( #73619 )
...
* Ensure config schema validation
* Use correct schema for device_tracker
* Remove schema validation from the platform setup
* Remove loop to build schema
2022-06-20 08:51:12 +02:00
Erik Montnemery
b97d346df7
Fix reload of MQTT yaml config ( #72901 )
2022-06-02 11:32:31 -07:00
Erik Montnemery
635d7085cf
Move MQTT config schemas and client to separate modules ( #71995 )
...
* Move MQTT config schemas and client to separate modules
* Update integrations depending on MQTT
2022-05-31 09:32:44 +02:00
Jan Bouwhuis
ed1c2ea2b8
Move manual configuration of MQTT fan and light to the integration key ( #71676 )
...
* Processing yaml config through entry setup
* Setup all platforms
* Update homeassistant/components/mqtt/__init__.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* adjust mock_mqtt - reference config from cache
* Fix test config entry override
* Add tests yaml setup
* additional tests
* Introduce PLATFORM_SCHEMA_MODERN
* recover temporary MQTT_BASE_PLATFORM_SCHEMA
* Allow extra key in light base schema, restore test
* Fix test for exception on platform key
* One deprecation message per platform
* Remove deprecation checks from modern schema
* Update homeassistant/components/mqtt/fan.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/fan.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/__init__.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/__init__.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/schema_json.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/schema_template.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/mixins.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* rename validate_modern_schema
* Do not fail platform if a single config is broken
* Update homeassistant/components/mqtt/__init__.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Fix tests on asserting log
* Update log. Make helper transparant, remove patch
* Perform parallel processing
* Update tests/components/mqtt/test_init.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/mqtt/mixins.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* black
* Fix tests and add #new_format anchor
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-05-19 15:04:53 +02:00
epenet
09d61edd9f
Use LightEntityFeature enum in mqtt ( #71055 )
2022-04-29 22:47:26 +03:00
Erik Montnemery
2f9beb4a4a
Deprecate white_value support in MQTT light ( #71002 )
2022-04-29 08:37:49 +02:00
epenet
38d86fc7b1
Use ColorMode enum in mqtt ( #70579 )
2022-04-24 09:06:56 -10:00
rubenverhoef
95de1dd446
Additional MQTT light command templates ( #63361 )
...
Co-authored-by: jbouwh <jan@jbsoft.nl>
2022-02-22 00:00:49 +01:00
Erik Montnemery
fe38e6ba87
Drop MQTT import flow ( #66160 )
...
* Drop MQTT import flow
* Reload manually configured MQTT entities when config entry is setup
* Address review comments
* Actually remove the import flow
2022-02-10 21:09:57 +01:00
Jan Bouwhuis
678e56b8b7
Mqtt move to .const ( #65631 )
2022-02-10 09:18:35 +01:00
Erik Montnemery
8245ff7473
Log transmitted MQTT messages ( #65550 )
2022-02-04 17:35:32 +01:00
Jan Bouwhuis
cf52357229
Add MQTT light unknown state support ( #65308 )
...
* Add MQTT light unknown sate support
* Update homeassistant/components/mqtt/light/schema_basic.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/schema_json.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/components/mqtt/light/schema_template.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update tests for default unknown state
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-02-03 16:49:57 +01:00
Erik Montnemery
f3a89de71f
Fix race when handling updated MQTT discovery data ( #65415 )
2022-02-02 17:12:22 -08:00
epenet
78e92d1662
Adjust pylint plugin to enforce platform type hints ( #64836 )
...
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-24 18:51:06 +01:00
Orce MARINKOVSKI
b78e22e012
Update MQTT light schema template ( #62759 )
...
* shema template update
* tests to cover the additional template variables
* fix flake8: too many blank lines
* Update schema_template.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-01-10 09:57:56 +01:00
Erik Montnemery
1995a825f3
Reject MQTT light discovery using unsupported value_template ( #62682 )
...
* Reject MQTT light discovery using unsupported value_template
* Tweak
2022-01-03 17:16:26 +01:00
Jan Bouwhuis
dd0193052c
Add MQTT encoding parameter for all subscribed topics ( #62263 )
...
* Add encoding parameter for all subscribable topics
* test setup encoding incoming payload
* remove support for device_tracker and tag+tests
2022-01-03 16:08:07 +01:00
Jan Bouwhuis
3ca18922e6
Mqtt rework on value templates ( #62105 )
...
* add MqttValueTemplate class
* support variables at initiation
* pass MqttEntity instead of hass
* Use MqttValueTemplace class for value templates
* make hass en enitity parameters conditional
* remove unused property and remove None assignment
* rename self._attr_value_template
2022-01-03 16:07:40 +01:00
Jan Bouwhuis
457ce195dd
Add mqtt entity attributes command templates ( #61937 )
...
* Add entity variables to MqttCommandTemplate
* missing command template update
* make hass and entity conditional parameters
* Add encoding support for publishing
* Revert "Add encoding support for publishing"
This reverts commit b69b9c60ec
.
2022-01-03 15:10:15 +01:00
Jan Bouwhuis
d0c4f0fec4
Add mqtt encoding support for publishing ( #62739 )
...
* encoding support for mqtt publishing - todo tests
* signature allows None values for qos and retain
* common test for mqtt publishing encoding
* better test with command templates
* more tests
* fix tests alarm control panel+tests light basic
* tests light json and template
* add tests vacuum and fix tests light_template
2022-01-03 09:03:47 +01:00
Damien Duboeuf
67c2747027
Add MQTT object_id option ( #58728 )
...
* Add MQTT object_id option
* Add MQTT object_id option
* Add MQTT object_id option
* Add MQTT object_id option - Fix light and vacuum
* Add MQTT object_id option - Fix light and vacuum
* Add MQTT object_id option - Fix lock
* Add MQTT object_id option - Fix device
* Add MQTT object_id option - Fix device
* Update tests/components/mqtt/test_discovery.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Change deprecated method
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-08 14:02:18 +01:00
Erik Montnemery
0456a896e3
Avoid service call in MQTT async_publish function ( #58441 )
...
* Avoid service call in MQTT async_publish function
* Tweak
* Fix integrations + tests
2021-10-28 08:13:32 +02:00
Erik Montnemery
640a7fee9d
Allow extra keys in MQTT discovery messages ( #58390 )
...
* Allow extra keys in MQTT discovery messages
* Remove extra keys
2021-10-25 13:47:06 +02:00
Marc Mueller
487fa0a905
Use assignment expressions 20 ( #57969 )
2021-10-20 20:31:00 +02:00
Marc Mueller
4f8148f9ea
Use assignment expressions 07 ( #57787 )
2021-10-17 20:24:34 +02:00
Jan Bouwhuis
879144b48d
MQTT rework constants ( #57529 )
...
* reference CONF_TOPIC to .const
* Organize common mqtt constants
2021-10-12 11:26:38 +02:00
Erik Montnemery
7a4f3fe7b8
Filter MQTT light JSON attributes ( #52242 )
2021-06-28 14:37:26 +02:00
Erik Montnemery
80ae346318
Pass the hass object to all MQTT component constructors ( #52124 )
2021-06-23 15:44:18 +02:00
Erik Montnemery
52c142a82d
Add support for color_mode white to MQTT light basic schema ( #51484 )
...
* Add support for color_mode white to MQTT light basic schema
* Add missing abbreviations
2021-06-22 11:59:20 +02:00