* [mqtt.homeassistant] implement JSON schema lights
* [mqtt.homeassistant] use enum for current state of color mode
* [mqtt.homeassistant] use implicit lambdas
* [mqtt.homeassistant] remove string constants in favor of an enum
* [mqtt.homeassistant] allow sending ON and brightness commands through bare
* [mqtt.homeassistant] turn down debug logging
---------
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* [mqtt.homeassistant] support command_template for fan components
* [mqtt.homeassistant] fix field declaration for consistency
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* [mqtt.homeassistant] support non-RGB lights
dynamically decide which type of channel to expose. also send "down-typed"
commands to the proper topic. this also sets the groundwork for supporting
template and JSON schemas
Signed-off-by: Cody Cutrer <cody@cutrer.us>
So that other pieces of openhab can know what unit it's going to be,
without it having a value yet. Importantly, any necessary conversion
that need to be applied to the other portion of the state description -
min, max, and step.
See also https://github.com/openhab/openhab-core/pull/3132
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* [mqtt.openassistant] Better labels for discoverd things
This PR introduces more simple label for things, instead of
"My Sensor (Sensor, Sensor, Sensor, Sensor, Sensor, Switch)" we have
simply "Me Sensor (5x Sensor, Switch)".
Signed-off-by: Sami Salonen <ssalonen@gmail.com>
see reference in code comment, but a measurement sensor is assumed to
be numeric, even if it doesn't have a unit
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* Add UOM for MQTT Channels
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Fix dependencies
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Simplify units parsing, remove channelUID from NumberValue constructor
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Simplify pattern
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Fix tests
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Correct Units reference
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Correct homeassistant binding changes
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Wrap precision in temperature unit definition
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Use BigDecimal for precision
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Use BigDecimal throughout
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Fix SAT
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Inverty equals check
Signed-off-by: James Melville <jamesmelville@gmail.com>
* Update imports to use JUnit 5 instead of JUnit 4
* Add commonly used JUnit 4 classes to forbidden packages
Related to: https://github.com/openhab/openhab-core/pull/2534
Signed-off-by: Wouter Born <github@maindrain.net>
* MQTT.Homeassistant Climate support
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant synthetic config test added
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant refactoring
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant discovery test added
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant thing handler test added
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant switch test added
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant Climate test added
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant author header added
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant copyright header added
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant test fixed
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant test fixed
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant test infrastructure updated. Added tests with mqtt publishing and commands posting.
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant fixed Climate#send_if_off handling
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant do not filter the power command
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant climate unit test added
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* Update bundles/org.openhab.binding.mqtt.homeassistant/src/main/java/org/openhab/binding/mqtt/homeassistant/internal/DiscoverComponents.java
Redundant annotation removed
Co-authored-by: Fabian Wolter <github@fabian-wolter.de>
* MQTT.Homeassistant Redundant @Nullable annotations removed
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant Unit tests added for all components
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant Unit tests stability fix
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant @NonNullByDefault removed from Device, config.dto package created
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant Climate author added
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant Device.sw_version renamed
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
* MQTT.Homeassistant tests wait timeout increased to 10s
Signed-off-by: Anton Kharuzhy <antroids@gmail.com>
Co-authored-by: antroids <antroids@gmail.com>
Co-authored-by: Fabian Wolter <github@fabian-wolter.de>