Commit Graph

270 Commits (7f9b7c7b0e8398a4a85eb648da55cc4058e93802)

Author SHA1 Message Date
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
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
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
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
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
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
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
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
Marc Mueller 487fa0a905
Use assignment expressions 20 (#57969) 2021-10-20 20:31:00 +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 4d7e3cde5a
Minor cleanup and test coverage improvement for MQTT (#55265) 2021-09-27 17:45:52 +02: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
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 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
Erik Montnemery 4e5ec26ce6
Remove value_template from MQTT_RW_PLATFORM_SCHEMA (#51590) 2021-06-08 08:23:35 +02:00
Paulus Schoutsen bcd91cc2bd
Drop certificate filling in for cloudmqtt (#51112) 2021-05-26 09:31:35 -07:00
jan iversen 9410aefd0d
Integrations m*: Rename HomeAssistantType to HomeAssistant. (#49567) 2021-04-22 14:53:37 -07:00
Marc Mueller 25a13d1554
Update typing 10 (#48071) 2021-03-18 13:07:04 +01:00
Ville Skyttä dc880118a4
Lint suppression cleanups (#47248)
* Unused pylint suppression cleanups

* Remove outdated pylint bug references

* Add flake8-noqa config and note to run it every now and then

* Add codes to noqa's

* Unused noqa cleanups
2021-03-02 09:02:04 +01:00
Erik Montnemery 190a9f66cb
Improve MQTT timeout print (#46398) 2021-02-12 11:43:44 +01:00
tkdrob b85ecc0bd2
Use core constants for mqtt (#46389) 2021-02-11 13:38:33 +01:00
tkdrob 66ecd2e0f2
Remove unused config_flows (#46188) 2021-02-08 08:32:24 +01:00
Erik Montnemery 0e068a5f39
Truncate MQTT payload in debug messages to 8kB (#45465) 2021-01-23 14:52:43 -05:00
Erik Montnemery b85efd343f
Move MQTT entity helpers to separate file (#44838)
* Move MQTT entity helpers to separate file

* Fix imports

* Update MQTT number

* Review comments

* Fix formatting
2021-01-09 00:47:17 +01:00
Diogo Gomes f18880686c
Add MQTT Number (#44739)
* Initial Commit

* initial commit

* add discovery and tests

* increase coverage

* address review

* catchup with reality
2021-01-06 08:27:46 +01:00
Erik Montnemery 34bd70aee6
Fix race when handling MQTT discovery messages (#44730)
* Fix race when handling MQTT discovery messages

* Lint

* retrigger checks
2021-01-04 12:28:17 +01:00
Paulus Schoutsen 594e905742
Remove invalidation_version from deprecated (#44156)
* Remove invalidation_version from deprecated. We don't follow up and just hurts releases

* Revert change to ZHA
2020-12-12 22:24:16 +01:00
Kiall Mac Innes 8efa9c5097
Add support for MQTT Scenes (#42639) 2020-12-02 19:42:28 +01:00
Erik Montnemery d18a33020b
Fix MQTT birth message deadlock (#43790) 2020-12-01 01:01:22 +01:00
Paulus Schoutsen 5b6d9abe2a
Await callbacks to keep cleaner stacktraces (#43693) 2020-11-27 17:48:43 +01:00
Erik Montnemery a5e5c5c7e6
Exclude disabled entities from async_entries_for_device (#43665) 2020-11-27 09:03:44 +01:00
Erik Montnemery 8ff10ad3b8
Fix MQTT threading bug (#43667) 2020-11-26 22:33:58 +01:00
Erik Montnemery 7f640c4a2e
Generate random MQTT client ID (#42934)
* Generate random MQTT client ID

* Add comment

* Apply suggestions from code review

Co-authored-by: Franck Nijhof <git@frenck.dev>

Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-11-07 16:27:09 +01:00
Paulus Schoutsen 6380ebd1eb
Fix MQTT publish from a script with templates (#42398) 2020-10-26 16:46:26 +01:00
J. Nick Koston e0df91ef9f
Update mqtt to use HassJob (#41796)
Avoids the overhead of checking the callable type at run time
2020-10-14 22:04:48 +02:00
J. Nick Koston da2f9db62e
Fix async functions accidentally marked as callbacks (#41607) 2020-10-10 16:54:36 +02:00
Erik Montnemery 392d5c673a
Cache matching MQTT subscriptions (#41433) 2020-10-08 08:52:23 +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 06e9489fc7
Add Tasmota integration (#39624)
* Add Tasmota integration

* Refactor

* Add tests, small improvements

* isort

* Attempt to fix tests failing with Python 3.8

* Revert "Attempt to fix tests failing with Python 3.8"

This reverts commit 11454f8a00136f068ea27204183fa3e62f3cd263.

* Fix tests failing with Python 3.8

* Cleanup tests

* Address review comments

* Address review comments

* Address review comments

* Use MAC address for device identification

* Bump hatasmota

* Bump hatasmota

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Fix indentation

* Remove preparation for device remove WS API

* Address review comments

* Remove useless try-except

* Tweak

* Improve tests

* Tweak

* Address review comments

* Correct test

* Update manifest.json

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-06 14:51:58 +02:00
J. Nick Koston a11fd08d20
Create MQTTMatcher once per subscription instead of each message (#40345)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-09-30 17:18:43 +02:00
Erik Montnemery e7f832a82f
Add MQTT tag scanner (#40709) 2020-09-28 22:04:27 +02:00
Erik Montnemery a50f121011
Get option flow defaults from yaml for non configured MQTT options (#40177) 2020-09-19 22:10:01 +02:00
springstan a13c4d4c17
Increase TIMEOUT_ACK to 10s (#40117) 2020-09-16 08:14:11 +02:00
Erik Montnemery 0f3a2f1f29
Increase TIMEOUT_ACK to 2s (#40080) 2020-09-14 22:10:30 +02:00