Commit Graph

996 Commits (2e191d6a60a8904644c536c4d3103f5e9bb6158f)

Author SHA1 Message Date
Erik Montnemery f3a89de71f
Fix race when handling updated MQTT discovery data (#65415) 2022-02-02 17:12:22 -08:00
Erik Montnemery fda0fbd115
Stringify MQTT payload in mqtt/debug/info WS response (#65429) 2022-02-02 18:08:48 +01:00
Jan Bouwhuis 2c07330794
Fix MQTT expire_after effects after reloading (#65359)
* Cleanup sensor expire triggers after reload

* fix test binary_sensor

* Also trigger cleanup parent classes

* Restore an expiring state after a reload

* correct discovery_update

* restore expiring state with remaining time

* Update homeassistant/components/mqtt/binary_sensor.py

description

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Log remaining time

* Move check

* check and tests reload

* remove self.async_write_ha_state()

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-02-02 16:14:52 +01:00
Erik Montnemery 627be81531
Import registries in MQTT mixins (#65411) 2022-02-02 10:32:11 +01:00
Jan Bouwhuis 4991f1a693
Use super() in mqtt siren init (#65291) 2022-01-31 13:16:45 +01:00
Jan Bouwhuis 6fdaec0847
Add MQTT siren platform (#64440)
* Add mqtt siren draft

* fix tests

* Intergrate notify platform

* tests and fixes siren platform

* Add tests notify platform

* config parameters and abbreviations

* remove duplicate key

* undo move topic abbreviation

* Move const CONF_MESSAGE_COMMAND_TEMPLATE

* Remove notify service integration

* Rework

* Update homeassistant/components/mqtt/siren.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Publish JSON by default

* Allow unknown state - rename value_template

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-01-31 10:31:57 +01:00
Jan Bouwhuis bfaada34e2
Allow `unknown` state to be set (#65183) 2022-01-31 10:25:08 +01:00
GitHub Action ca7d4234e1 [ci skip] Translation update 2022-01-31 00:14:28 +00:00
GitHub Action 77ef86faee [ci skip] Translation update 2022-01-30 00:14:21 +00:00
Jan Bouwhuis 0cabf3e577
Fix MQTT climate action null warnings (#64658) 2022-01-27 08:41:27 +01:00
GitHub Action dd4e5bb9c5 [ci skip] Translation update 2022-01-27 00:14:02 +00: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
Jan Bouwhuis efe5b0ca81
Add command template for MQTT button (#63838)
* Add command template for MQTT button

* Move CONF_COMMAND_TEMPLATE
2022-01-23 12:48:41 +01:00
GitHub Action 47d3fb1dec [ci skip] Translation update 2022-01-23 00:13:53 +00:00
GitHub Action 9098c71cd4 [ci skip] Translation update 2022-01-22 00:13:08 +00:00
Jan Bouwhuis 7ea8d72133
Move CONF_COMMAND_TEMPLATE to .const (#64558) 2022-01-20 16:15:26 +01:00
Jan Bouwhuis 8b30751839
MQTT Remove unused and not tested code (#64550) 2022-01-20 13:47:46 +01:00
GitHub Action 04a2227f4b [ci skip] Translation update 2022-01-19 00:13:35 +00:00
GitHub Action c6d481ca01 [ci skip] Translation update 2022-01-17 00:14:48 +00:00
Marc Mueller 67c35652f0
Update typing - collections.abc (2) (#63934) 2022-01-12 09:04:37 +01:00
Jan Bouwhuis 65deaa1daf
Always send hvac_mode deprecate send_if_off (#63814) 2022-01-11 17:12:48 +01:00
Jan Bouwhuis aa73e5bd72
Fix MQTT climate optimistic preset modes (#63463)
* Always publish when preset_mode is set

* Revert "Fixed isort error"

This reverts commit 1a3c5e6460.

* isort
2022-01-11 17:08:26 +01:00
GitHub Action d3cd813c5e [ci skip] Translation update 2022-01-11 00:14:57 +00: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
Marc Mueller 945b67c5c5
Fix 3rd party imports (#63455) 2022-01-05 19:00:47 +01:00
Marc Mueller ae6d9c229e
Use const imports [l-z] (#63469) 2022-01-05 18:21:20 +01:00
Marc Mueller b168a8c7d0
Use imports from `helpers.typing` (#63459) 2022-01-05 14:56:34 +01:00
Erik Montnemery d8e7236502
Cleanup handling of unsupported config keys in MQTT fan (#62681)
* Cleanup handling of unsupported config keys in MQTT fan

* Update fan.py
2022-01-03 17:54:03 +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 061ce0c187
Fix mqtt reloading and rework tests (#62950)
* Improve mqtt reloading/tests and fix issues

* Cleanup fixture for reloading test

* isort and black remove replaced test_reloadable
2022-01-03 15:14:50 +01:00
Jan Bouwhuis 0dab5e69db
Fix MQTT cover not using tilt_command_template (#63080) 2022-01-03 15:13:30 +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
epenet 2cc4d9846b
Add basic type hints to mqtt (#62875)
* Add basic type hints to mqtt

* Add hints to async_setup_platform

* Add type hint to async_setup_entry

* Fix pylint

* Set correct argument order in climate entity

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 08:53:52 +01:00
GitHub Action ea0b24a5f0 [ci skip] Translation update 2022-01-03 00:14:23 +00:00
epenet 20150daf1e
Fix incorrect parameter name/hint in mqtt climate (#63106)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 17:06:17 +01:00
epenet 33e926371f
Add init type hints [m] (#63189)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 16:28:14 +01:00
Sebastian Lövdahl d18f1cc872
Use Platform constants all over the place 2/3 (#62953) 2021-12-28 21:23:07 +01:00
epenet 8cc0df7b72
Ensure service calls are typed [k-n] (#62917)
* Ensure service calls are typed [k-n]

* Ensure service calls are typed in mazda

* Adjust mazda

* Add mazda comment

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 14:33:08 +01:00
Dave T 8fd60dbd51
Refactor entity_category str types (#62790) 2021-12-27 18:23:08 +01:00
GitHub Action 8c8c7e91a2 [ci skip] Translation update 2021-12-25 00:13:29 +00:00
Erik Montnemery c1ada1754f
Reject MQTT cover discovery using unsupported tilt_invert_state (#62680) 2021-12-23 17:05:52 +01:00
GitHub Action babd753610 [ci skip] Translation update 2021-12-21 00:15:06 +00:00
epenet 079b7f217f
Use new enums in mqtt (#61936)
* Use new enums in mqtt

* Fix typo
2021-12-16 15:09:31 +01:00
Jan Bouwhuis d5defa8995
Support publishing MQTT messages with raw bytes payloads (#61090)
* correctly publish mqtt ouput

* Additional tests

* Add template test with binary output

* render_outgoing_payload with command templates

* use MqttCommandTemplate helper class

* add tests command_template

* Additional tests

* support pass-through for MqttComandTemplate

* fix bugs

* unify workform always initiate with hass

* clean up

* remove not needed lines

* comment not adding value
2021-12-15 11:28:43 +01:00
GitHub Action eb345bfdf1 [ci skip] Translation update 2021-12-14 00:13:33 +00:00
epenet da7c5f4722
Break long lines in discovery_info (#61431) 2021-12-10 12:48:47 +01:00
epenet c05eca1c82
Remove log flooding prevention logic from discovery info (#61243)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 10:28:26 -10:00
GitHub Action 5258c5fc9c [ci skip] Translation update 2021-12-07 00:51:52 +00:00
GitHub Action ecdb18eb0a [ci skip] Translation update 2021-12-06 00:13:37 +00:00
epenet b65b25c1bb
Move MqttServiceInfo to init.py (#60905)
Co-authored-by: epenet <epenet@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-03 19:34:48 +01:00
epenet 358922db56
Use dataclass for HassioServiceInfo (#60824)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 14:05:56 +01:00
Jan Bouwhuis 3307e54363
Add MQTT availability template and encoding (#60470)
* Add MQTT availability template and encoding

* use generic encoding field

* pylint and cleanup

* remove additional topic check
2021-12-02 10:21:31 +01:00
GitHub Action de792e3af2 [ci skip] Translation update 2021-12-02 00:13:02 +00:00
Franck Nijhof 16462df451
Add button device classes to MQTT (#60628) 2021-11-30 16:08:02 +01:00
Jan Bouwhuis 2a2a20fcb3
Add mqtt sensor configurable state encoding for sensor and binary_sensor platform (#60447)
* Add mqtt sensor state encoding

* Make encoding attribute not specific to states

* Move encoding attribute to schema base
2021-11-30 14:04:24 +01:00
Raphaël Beamonte 8600b5597a
Add 'trigger' support for MQTT Alarm Control Panel (#60525)
When configuring an Alarm Control Panel through MQTT discovery, it
was not possible to use the trigger service. This fixes that by making
it available the same way as ARM and DISARM services are.
2021-11-29 14:41:52 +01:00
GitHub Action 3af54d96c7 [ci skip] Translation update 2021-11-28 00:14:19 +00:00
GitHub Action 96313bbbe0 [ci skip] Translation update 2021-11-27 00:12:17 +00:00
GitHub Action 78b47019f9 [ci skip] Translation update 2021-11-26 00:12:49 +00:00
Hypnos 57fd632cd9
Add missing MQTT lock.open (#60022)
* Add missing MQTT lock.open

from:
https://community.home-assistant.io/t/mqtt-lock-open/232823/13
based on https://github.com/home-assistant/core/pull/48008

* Update homeassistant/components/mqtt/lock.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/mqtt/lock.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/mqtt/lock.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* removed `STATE_OPEN` from tests

* Apply suggestions from code review

* Format code

* Update lock.py

* Update test_lock.py

* Update test_lock.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-25 15:54:08 +01:00
Till Skrodzki 635d875b1d
Only accept valid hvac actions sent via mqtt (#59919)
* Only accept valid hvac actions sent via mqtt

* Only accept valid hvac actions sent via mqtt

* Fix existing action test and remove old one

* Remote None as valid hvac action being accepted

* Change loglevel of wrong hvac action received
2021-11-25 15:53:34 +01:00
GitHub Action d3c020325b [ci skip] Translation update 2021-11-25 00:13:33 +00:00
Erik Montnemery 7c3edf24f2
Allow MQTT selects to have a single or no options (#60281) 2021-11-24 20:06:12 +01:00
Franck Nijhof 5c443b626a
Use native datetime value in MQTT sensors (#59923) 2021-11-23 22:10:14 +01:00
epenet f6bbdec6cb
Use BaseServiceInfo inheritance in MqttServiceInfo (#60207)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 16:52:33 +01:00
epenet 3b0d984959
Use dataclass for MqttServiceInfo (#60191)
* Use dataclass for MqttServiceInfo

* Drop test exception

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 09:01:40 +01:00
GitHub Action 9e606abb0c [ci skip] Translation update 2021-11-23 00:13:54 +00:00
GitHub Action 31d4239b64 [ci skip] Translation update 2021-11-22 00:13:02 +00:00
GitHub Action 72b0eb719e [ci skip] Translation update 2021-11-20 00:12:27 +00:00
GitHub Action 29dc9de08f [ci skip] Translation update 2021-11-19 00:14:01 +00:00
GitHub Action 9a85c8d894 [ci skip] Translation update 2021-11-18 00:12:48 +00:00
Robert Hillis 16027b9f43
Fix mqtt undefined error (#59787) 2021-11-16 17:16:24 +01:00
David Beitey 1bcd62cd32
Add topic_template for mqtt.publish (#53743)
Co-authored-by: Erik Montnemery <erik@montnemery.com>

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-16 16:13:54 +01:00
epenet 4387bbfb94
Adjust async_step_mqtt signature for strict typing (#59761)
* Add MqttServiceInfo

* Adjust async_step_mqtt signature

* Adjust async_step_mqtt signature

* Adjust components

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-16 13:30:38 +01:00
GitHub Action 3f2b1fa952 [ci skip] Translation update 2021-11-12 00:12:35 +00:00
GitHub Action 34bc1298aa [ci skip] Translation update 2021-11-11 00:15:23 +00:00
Erik Montnemery b5ce84cd89
Add MQTT button (#59348) 2021-11-09 12:04:14 +01:00
Erik Montnemery 7b9715bec3
Bump paho-mqtt to 1.6.1 (#59339) 2021-11-08 18:16:44 +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
GitHub Action e35b83081e [ci skip] Translation update 2021-11-08 00:12:31 +00:00
GitHub Action 332a571bb4 [ci skip] Translation update 2021-11-07 00:12:38 +00:00
Jan Bouwhuis c3fc19915e
Mqtt fan fail deprecated options for classic speeds (#58992)
* Fail deprecated options

* new removed validator

* correct module_name - add tests

* Add test cant find module cv.removed

* module name from stack+1

* Remove error from log. Just throw.

* assert on thrown exception text

* cleanup formatting remove KeyStyleAdapter

* format the replacement_key and update test

* deprecated vs removed - add raise_if_present opt

* doc string update

* is deprecated
2021-11-04 17:54:27 +01:00
GitHub Action c9c95165e4 [ci skip] Translation update 2021-11-04 00:12:21 +00:00
Jan Bouwhuis 0c4863198e
Add command_template to MQTT number platform (#58949) 2021-11-02 18:21:49 +01:00
Chris Browet 2df1ba2346
Add device_class to MQTT switch (#58931) 2021-11-02 17:40:05 +01:00
Jan Bouwhuis 339117aceb
Add command_template to mqtt select platform (#58934) 2021-11-02 17:33:23 +01:00
GitHub Action 0a94badb72 [ci skip] Translation update 2021-11-02 00:12:41 +00:00
GitHub Action 4e419d8c6f [ci skip] Translation update 2021-11-01 00:13:04 +00:00
Marc Mueller 4c68662612
Use assignment expressions 34 (#58823) 2021-10-31 19:01:16 +01:00
Marc Mueller b1d49b3b66
Use assignment expressions 29 (#58713) 2021-10-30 16:31:43 +02:00
Marc Mueller 887d04be60
Use assignment expressions 32 (#58716) 2021-10-30 16:30:13 +02:00
Erik Montnemery f3bd13d179
Fix regression in MQTT discovery (#58684)
* Fix regression in MQTT discovery

* Update test
2021-10-29 15:59:16 +02: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 41e14c4871
Correct changes in Allow extra keys in MQTT discovery messages (#58534) 2021-10-27 16:33:02 +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
epenet a8a8b532d0
Use DeviceInfo in mqtt (#58389)
* Use DeviceInfo in mqtt

* Updates for mypy

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 13:46:09 +02:00
Franck Nijhof 027e167d95
Add support for unit of measurement in MQTT number platform (#58343) 2021-10-25 09:44:43 +02:00
Maciej Bieniek 0aa06d22f1
Move `configuration_url` abbreviation to MQTT `DEVICE_ABBREVIATIONS` const (#58313) 2021-10-24 11:35:46 +02:00
GitHub Action f9d985553c [ci skip] Translation update 2021-10-22 00:14:10 +00:00
Marc Mueller 487fa0a905
Use assignment expressions 20 (#57969) 2021-10-20 20:31:00 +02:00
Jan Bouwhuis 58569a58a9
MQTT Alarm control panel - Enable remote code validation (#57764)
* Enable remote code validation

* Update homeassistant/components/mqtt/alarm_control_panel.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-10-19 12:07:38 +02:00
Marc Mueller 4f8148f9ea
Use assignment expressions 07 (#57787) 2021-10-17 20:24:34 +02:00
GitHub Action c76e15149c [ci skip] Translation update 2021-10-17 00:12:27 +00:00
Erik Montnemery 1eebe45154
Add support for entity categories to MQTT entities (#57656)
* Add support for entity categories to MQTT entities

* Improve test

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Update homeassistant/components/mqtt/mixins.py

Co-authored-by: Paul Monigatti <paulmonigatti@users.noreply.github.com>

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Paul Monigatti <paulmonigatti@users.noreply.github.com>
2021-10-15 14:28:30 +02:00
Franck Nijhof eed9f67402
Add service configuration URL to MQTT (#57731) 2021-10-14 18:27:40 -07: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
GitHub Action 10b62370ff [ci skip] Translation update 2021-10-12 00:12:28 +00:00
Jan Bouwhuis a36a765352
Allow MQTT discovery availability shortcut (#57479)
* replace base in availability topic

* add tests for availability shortcuts - fix import

* group constants

* simplified loop

* Moving constants to .const

* rename value to topic

* move CONF_TOPIC to .const

* move CONF_AVAILABILITY to .const

* remove check for string

* Silently ignore if no config topic is found.

* CONF_TOPIC should be required
2021-10-11 23:37:31 +02:00
Erik Montnemery 7223c59e79
Allow resetting an MQTT number (#57161)
* Allow resetting an MQTT number

* Add abbreviation
2021-10-07 13:54:34 +02:00
GitHub Action 8fea54fff7 [ci skip] Translation update 2021-10-07 00:10:57 +00:00
Paulus Schoutsen eb9b9c57a4 [ci skip] Translation update 2021-10-04 08:38:24 -07:00
GitHub Action f42c2f5170 [ci skip] Translation update 2021-10-02 12:59:05 +00:00
Marc Mueller 364767ff22
Import Callable from collections.abc (4) (#56778) 2021-09-29 16:15:36 +02:00
Erik Montnemery 4d7e3cde5a
Minor cleanup and test coverage improvement for MQTT (#55265) 2021-09-27 17:45:52 +02:00
GitHub Action 9da3fa5d75 [ci skip] Translation update 2021-09-07 00:11:29 +00:00
Ville Skyttä b10fc89a6b
Automation trigger info type hint improvements (#55402)
* Make automation trigger info a TypedDict

* zwave_js trigger type hint fixes

* Remove redundant automation trigger info field presence checks

* Use async_initialize_triggers in mqtt and tasmota device_trigger tests
2021-09-04 02:25:51 +02:00
GitHub Action 19dcb19d07 [ci skip] Translation update 2021-09-04 00:13:17 +00:00
GitHub Action 368cac7e5d [ci skip] Translation update 2021-08-31 00:17:01 +00:00
Erik Montnemery 18c03e2f8d
Fix race in MQTT sensor when last_reset_topic is configured (#55463) 2021-08-30 23:32:35 +02:00
Erik Montnemery ed53bb1d91
Revert "Deprecate last_reset options in MQTT sensor" (#55457)
This reverts commit f9fa5fa804.
2021-08-30 16:58:48 +02:00
GitHub Action ea7f3c8bb3 [ci skip] Translation update 2021-08-30 00:11:40 +00:00
GitHub Action 291a2d6258 [ci skip] Translation update 2021-08-29 00:11:57 +00:00
GitHub Action b0c52220bc [ci skip] Translation update 2021-08-28 00:11:00 +00:00
Matthias Alphart cd0ae66d58
Add CONF_STATE_CLASS to `sensor/__init__.py` (#54106)
* add CONF_STATE_CLASS to const.py

* move to `sensor/__init__.py`

* move to sensor/const.py

* Revert "move to sensor/const.py"

This reverts commit 604d0d066b.

* move it to `sensor/const.py` but import it from `sensor/__init__.py`

* add Modbus
2021-08-27 05:54:50 +02:00
GitHub Action 65d14909ee [ci skip] Translation update 2021-08-27 00:14:42 +00:00
Franck Nijhof 96303a1d80
Fix MQTT add-on discovery to be ignorable (#55250) 2021-08-26 11:14:42 +02:00
Erik Montnemery 3432efddaa
Remember state of MQTT availability topics when reconfiguring (#55199) 2021-08-25 12:23:42 +02:00
posixx 547ede1e91
Implementation of new Vacation mode for MQTT-based alarm panels (#53561)
* Impelentation of new Vacation Mode for MQTT-based alarm panels

* Fixed typo

* another typo fix

* Split integrations: remove manual_mqtt

* added newline

* Impelentation of new Vacation Mode for MQTT-based alarm panels

* Fixed typo

* another typo fix

* Split integrations: remove manual_mqtt

* added newline

* missing abbreviation

* Fix tests

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-08-24 13:22:49 +02:00
Jan Bouwhuis 5bb9aa8f3d
Remove MQTT Fan legacy speeds (#54768)
* Remove MQTT Fan legacy speeds

* deprecated attibutes are not disruptive
2021-08-24 11:21:35 +02:00
Ville Skyttä 0095c6baeb
Improve device trigger type hinting (#54907) 2021-08-22 20:32:50 +02:00
Erik Montnemery f9fa5fa804
Deprecate last_reset options in MQTT sensor (#54840) 2021-08-18 20:22:01 +02:00
Erik Montnemery 2720ba2753
Move temperature conversions to sensor base class (4/8) (#54472)
* Move temperature conversions to entity base class (4/8)

* Fix litterrobot sensor

* Fix tests
2021-08-11 21:17:47 +02:00
J. Nick Koston e99576c094
Pass width and height when requesting camera snapshot (#53835) 2021-08-10 19:33:06 -05:00
GitHub Action 390023a576 [ci skip] Translation update 2021-08-11 00:18:57 +00:00
GitHub Action 64c9f9e1cb [ci skip] Translation update 2021-08-06 00:15:04 +00:00
Marc Mueller 0815eede4b
Replace lists with tuples (2) (#53685) 2021-07-30 01:20:03 +02:00
Maciej Bieniek fb3b8b6686
Fix `last_reset_topic` config replaces `state_topic` for sensor platform (#53677) 2021-07-29 12:09:14 -07:00
Marc Mueller 10bfc78365
Fix missing encoding with open() (#53593)
* Fix missing encoding with open()

* Fix tests

* Improve open - frontend
2021-07-28 09:41:45 +02:00
GitHub Action ecf0d4398d [ci skip] Translation update 2021-07-22 00:10:31 +00:00
Franck Nijhof 4546e14674
Fix MQTT to allow setting an unknown Select state (#53227) 2021-07-21 10:02:07 +02:00
Marc Mueller f6b162bc39
Add pylint CodeStyle extension (#53147) 2021-07-19 06:57:06 -07:00
GitHub Action 531733da7b [ci skip] Translation update 2021-07-19 00:09:50 +00:00
Jan Bouwhuis c9eab10134
Add MQTT humidifier platform integration (#52828)
* New mqtt humidifier platform

* Add humidifier platform

* Leave out humidity step

* Use humidity in constant for payload reset

* change TARGET_HUMIDITY_RESET payload name

* _attr_max_humidity not assigned correctly

* _target_humidity_range has a zero base

* align CONF_TARGET_HUMIDITY_MIN and MAX  with model

* shorter topics for humidity_range

* Converts float to int from template

* new humidifier abbreviations

* Add common module to support tests

* Add tests

* Addtional testing

* Always require target_humidity_command_topic

* Typo

* use available_modes to align entity model

* use avail_modes not modes to avoid conflict

* typo target_humidity_value_template

* Allign modes and templates with climate platform

* mode_state_template

* target_humidity_state_template

* Typo in platform name

* Remove humidity_range feature and common lib

* Update homeassistant/components/mqtt/humidifier.py

Use vol.In, not regex

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* black

* Update homeassistant/components/mqtt/humidifier.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Use round to convert float to target humidity

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-07-15 11:12:23 +02:00
Erik Montnemery 5e472f2c06
Improve typing of Tasmota (1/3) (#52746) 2021-07-12 20:14:03 +02:00
Erik Montnemery 4d32e1ed01
Minor improvements of MQTT typing (#52578)
* Minor improvements of MQTT typing

* Tweak
2021-07-06 14:38:48 +02:00
Erik Montnemery 79ee112490
Enable basic type checking for mqtt (#52463)
* Enable basic type checking for mqtt

* Tweak
2021-07-05 10:33:12 +02:00
GitHub Action abc9b01ede [ci skip] Translation update 2021-07-05 00:09:10 +00:00
GitHub Action 378b5f75ec [ci skip] Translation update 2021-07-04 00:09:33 +00:00
Erik Montnemery 520b500165
Fix MQTT cover optimistic mode (#52392)
* Fix MQTT cover optimistic mode

* Add test
2021-07-01 17:34:59 +02:00
Erik Montnemery b77f2b9e12
Filter MQTT camera JSON attributes (#52279)
* Filter MQTT camera JSON attributes

* Add missing attribute to blocked list
2021-06-29 12:14:02 +02:00
Erik Montnemery 39a064683a
Filter MQTT cover JSON attributes (#52282) 2021-06-29 11:59:23 +02:00
Erik Montnemery a7dd7c1a3d
Filter MQTT select JSON attributes (#52288) 2021-06-29 11:22:58 +02:00
Erik Montnemery 74e61ab7f7
Filter MQTT switch JSON attributes (#52290) 2021-06-29 11:22:25 +02:00
Erik Montnemery de4cfb0ce2
Filter MQTT vacuum JSON attributes (#52291) 2021-06-29 11:21:22 +02:00
Erik Montnemery 61f7f5c96a
Filter MQTT sensor JSON attributes (#52289) 2021-06-29 11:19:40 +02:00
Erik Montnemery e0f7987544
Filter MQTT fan JSON attributes (#52283) 2021-06-29 11:18:50 +02:00
Erik Montnemery 71a0e474cc
Filter MQTT number JSON attributes (#52286) 2021-06-29 11:16:57 +02:00
Erik Montnemery 3b89fcfe83
Filter MQTT lock JSON attributes (#52285) 2021-06-29 11:16:07 +02:00
Erik Montnemery 040c88f982
Filter MQTT climate JSON attributes (#52280) 2021-06-29 11:13:58 +02:00
Erik Montnemery 91b4f7d1d5
Filter MQTT alarm JSON attributes (#52278) 2021-06-29 10:32:23 +02:00
Erik Montnemery 7a4f3fe7b8
Filter MQTT light JSON attributes (#52242) 2021-06-28 14:37:26 +02:00
Erik Montnemery e14480599b
Add value_template support to MQTT number (#52155) 2021-06-28 10:23:34 +02:00
Erik Montnemery 4533a77597
Add MQTT select (#52120)
* Add MQTT select

* Fix value_template support

* Lint
2021-06-24 17:09:06 +02:00
Erik Montnemery 04c9665241
Filter MQTT JSON attributes (#52076)
* Filter JSON attributes

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Refactor, add tests

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-06-24 16:22:54 +02:00
Erik Montnemery 2351f2d95e
Warn when receiving message on illegal MQTT discovery topic (#52106)
* Warn when receiving message on illegal MQTT discovery topic

* Fix test
2021-06-23 15:53:17 +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 77de233679
Update MQTT number to treat received payload as UTF-8 (#52121)
* Update MQTT number to treat received payload as UTF-8

* Lint
2021-06-23 15:35: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
Erik Montnemery 4c9f12b9c5
Correct trace path for trigger with custom id (#51847) 2021-06-14 17:09:20 +02:00
Erik Montnemery 49bec86dae
Add base schema for triggers (#51727)
* Add base schema for triggers

* Tweak

* Make TRIGGER_BASE_SCHEMA a voluptuous schema

* Make state trigger BASE_SCHEMA a voluptuous schema
2021-06-11 09:51:12 +02:00
Erik Montnemery 76c3058d15
Rename device trigger base schema to DEVICE_TRIGGER_BASE_SCHEMA (#51719) 2021-06-10 19:11:38 +02:00
Erik Montnemery 9097f41219
Correct comment in MQTT fan (#51682) 2021-06-10 08:18:59 +02:00
Erik Montnemery a4587b5f3b
Deprecate support for undocumented value_template in MQTT light (#51589) 2021-06-08 08:23:51 +02:00
Erik Montnemery 4e5ec26ce6
Remove value_template from MQTT_RW_PLATFORM_SCHEMA (#51590) 2021-06-08 08:23:35 +02:00
Erik Montnemery 76edfe6c62
Fix deprecated value_template for MQTT light (#51587) 2021-06-07 14:14:42 -07:00
GitHub Action 7615af35d8 [ci skip] Translation update 2021-06-07 00:18:16 +00:00
GitHub Action c81df50191 [ci skip] Translation update 2021-06-06 00:19:43 +00:00
Ville Skyttä c2f5dcefa5
Use flow result type constants more (#51122) 2021-05-29 14:09:13 +02:00
Paulus Schoutsen bcd91cc2bd
Drop certificate filling in for cloudmqtt (#51112) 2021-05-26 09:31:35 -07:00
Massimiliano Cannarozzo 5a5a145778
Make all MQTT cover payloads optional (#50579)
* Remove unused constant

* Make payload_close optional

* Make payload_open optional

* Compute supported features based on config
2021-05-26 13:50:44 +03:00
Erik Montnemery 789a14fc44
Add support for last_reset to MQTT sensor (#51036)
* Add support for last_reset to MQTT sensor

* Update abbreviations

* Improve test coverage
2021-05-26 11:50:29 +02:00
tkdrob 028a07d86f
Wrap up selectors (#50794)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-05-25 14:45:17 +02:00
Erik Montnemery 870c61a622
Add color_mode support to MQTT light with basic schema (#50464)
* Add color_mode support to MQTT light with basic schema

* Update abbreviations

* Silence pylint

* Improve test coverage

* Apply suggestions from code review
2021-05-24 11:37:02 +02:00
Erik Montnemery dc65f279a7
Add support for state_class to MQTT sensor (#50927) 2021-05-21 17:37:26 +02:00
Shay Levy 6e087039f4
Add min/max/step to MQTT number (#50869) 2021-05-21 18:35:27 +03:00
Erik Montnemery d4d335fb9c
Fix MQTT debug info for removed triggers (#50859) 2021-05-20 10:27:38 +03:00
Michael Klamminger 7c7432a582
Add entity_id to mqtt sensor templates (#50773)
* Add entity_id to mqtt sensor

* update test comment
2021-05-19 14:38:18 +02:00
Shay Levy 109b08bb57
Remove MQTT cover deprecated options (#50263)
* Remove MQTT cover deprecated options

* Fix pylint
2021-05-19 14:34:20 +02:00
Jan Bouwhuis 9abf43f95f
Mqtt fan feature for resetting current speed `percentage` or `preset_mode` (#50565)
* Mqtt fan resetting speed percentage or preset_mode

* tests reset payload is working with val templates

* Remove duplicate line for CONF_PAYLOAD_HIGH_SPEED
2021-05-18 08:24:42 +02:00
Erik Montnemery 9e681cd214
Refactor MQTT basic light pt5: Add RGB color helpers (#50780)
* Refactor MQTT basic light pt5: Add RGB color helpers

* Revert change of rounding instead of truncating RGB
2021-05-17 23:50:12 +02:00
Michael Klamminger 3554316f3f
Update MQTT cover template handling (#50236)
* flake 8

* Implement feedback from PR

* update warning message

* added and updated tests

* remove _has_tilt_topic variable

* flake 8

* Implement feedback from PR

* update warning message

* added and updated tests

* remove _has_tilt_topic variable

* renamed _tilt_message_received to _tilt_payload_received

* merged with latesed upstream/dev

* converted if to try except for type check

* Implemented the suggestions of @emontnemery

* Tweak tests

* logger info to debug

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* cast tilt payload as int; combine exceptions to one line

* Add test for JSONDecodeError

* Update homeassistant/components/mqtt/cover.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2021-05-17 19:31:11 +02:00
Erik Montnemery 848ab5c2bc
Deduplicate code in MQTT basic light pt4: Add set_optimistic helper (#50774) 2021-05-17 16:28:30 +02:00
Erik Montnemery 8c6f4a8c71
Refactor MQTT basic light pt3: Add publish helper (#50767) 2021-05-17 14:54:19 +02:00
Erik Montnemery b36021b4fd
Deduplicate code in MQTT basic light pt2: Add restore_state helper (#50766)
* Refactor MQTT basic light pt2: Add restore_state helper

* Update homeassistant/components/mqtt/light/schema_basic.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2021-05-17 14:53:48 +02:00
Erik Montnemery 3ab14d452c
Refactor MQTT basic light pt1: Add add_topic helper (#50759) 2021-05-17 12:50:54 +02:00
GitHub Action 877cb43c06 [ci skip] Translation update 2021-05-17 05:17:18 +00:00
HomeAssistant Azure 7df47664e8 [ci skip] Translation update 2021-05-12 00:04:03 +00:00