* 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
* 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>
* Add suggested_area to MQTT Discovery
This adds suggested_area to MQTT discovery, so that the discovered devices could be automatically added to the proper area.
* Add abbreviation for MQTT suggested_area
* Remove extra whitespace
* Remove extra whitespace #2
* Added tests for MQTT Dicovery of suggested_area
* Fix test for MQTT suggested_area
* Better tests of MQTT suggested_area
Changes made as per feedback from @emontnemery
* Make async_get_device connections Optional, default None
* Remove unnecessary async_get_device connections arg usages
Some of these were using an incorrect collection type, which didn't
cause issues mostly just due to luck.
* Support multiple MQTT availability topics
* Make availability list and availability_topic exclusive
* Make availability list and availability_topic exclusive
* Add missing abbreviation