Commit Graph

151 Commits (7350e5020f31d8ef58cf85f11854fcb5018a286a)

Author SHA1 Message Date
Holger Friedrich 639a1cb263
Prepare for OH 5.0.0 (#17906)
* Switch to 5.0.0-SNAPSHOT
* Fix spotless after unleash
* resolve itest runbundles

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2024-12-15 20:30:05 +01:00
openhab-bot f80fd3d18c [unleash-maven-plugin] Preparation for next development cycle. 2024-12-15 13:46:58 +00:00
Cody Cutrer 7fc3d3b685
[mqtt.homeassistant] Document new channels from #17659 (#17880)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-12-14 00:12:29 +01:00
Cody Cutrer c6f2fca499
[mqtt.homeassistant] fix unbounded growth of config for device_trigger (#17894)
Because of how it shares a channel, whenever openHAB was rebooted and it
would first restore the device trigger components from the channel configuration,
and then from the MQTT message, it didn't identify it as the same component
as before, and so would merge into another instance of itself. My Things.json
is normally 13MB, and had grown to 545MB, and my openHAB was constantly having
memory issues! So now just make sure we only keep unique information, which
will automatically clean up anyone in a bad state.

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-12-13 10:26:58 +01:00
openhab-bot 931f39ff17
New Crowdin updates (#17866)
* New translations mail.properties (French)

* New translations exec.properties (French)

* New translations netatmo.properties (French)

* New translations icalendar.properties (French)

* New translations mqtt.properties (Italian)

* New translations mail.properties (French)

* New translations exec.properties (French)
2024-12-08 13:10:43 +01:00
Cody Cutrer 5829b9056b
[mqtt.homeassistant] Update Jinjava to 2.7.4 (#17858)
* [mqtt.homeassistant] Update Jinjava to 2.7.4

Which includes support for break/continue, which is what Zigbee2MQTT's
new event component uses in their template.

Signed-off-by: Cody Cutrer <cody@cutrer.us>

* update bndrun file

Signed-off-by: Cody Cutrer <cody@cutrer.us>

---------

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-12-08 00:06:58 +01:00
Cody Cutrer 5d89c9a885
[mqtt.homeassistant] Implement WaterHeater (#17859)
* [mqtt.homeassistant] Implement WaterHeater

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-12-07 16:34:05 +01:00
Cody Cutrer f733c85343
[mqtt.homeassistant] Implement Humidifier (#17853)
* [mqtt.homeassistant] Implement Humidifier

Signed-off-by: Cody Cutrer <cody@cutrer.us>

* remove debug logging from test

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-12-07 00:39:43 +01:00
Cody Cutrer 2e7f0e061c
[mqtt.homeassistant] Implement Tag Scanner (#17852)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-12-05 23:27:05 +01:00
Cody Cutrer 35630e1074
[mqtt.homeassistant] Fix thing consistency for existing things when a device adds or removes components (#17851)
* [mqtt.homeassistant] gracefully handle a component's discovery info being deleted

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-12-05 22:31:58 +01:00
Cody Cutrer 156e691d0b
[mqtt.homeassistant] fix multi-speed fans (#17813)
* fix step math so that the state description represents the step
   scaled to 0-100%

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-12-03 19:47:28 +01:00
openhab-bot fd7fd8a84d
New translations mqtt.properties (Italian) (#17832) 2024-12-03 12:24:04 +01:00
Cody Cutrer 3f392ab80a
[mqtt.homeassistant] Implement Device Tracker (#17831)
* [mqtt.homeassistant] implement Device Tracker

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-12-03 06:10:44 +01:00
Cody Cutrer 546bb566e2
[mqtt.homeassistant] Fix duplicate component resolution when unique_id is set (#17803)
* [mqtt.homeassistant] fix duplicate component resolution when unique_id is set

unique_id is only unique per component type. so we need to a) take that into
account, and b) use that when resolving duplicates

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-11-25 22:04:29 +01:00
VasekCejka f4250b77f3
[mqtt.homeassistant] Add missing climate properties (#17659)
* Added support for humidity and preset_modes 

Signed-off-by: Václav Čejka <V.Cejka@seznam.cz>
Signed-off-by: VasekCejka <150804231+VasekCejka@users.noreply.github.com>
2024-11-02 00:05:47 +01:00
Cody Cutrer f52cede9ca
[mqtt.homeassistant] document which channels a component might have (#17618)
* [mqtt.homeassistant] document which channels a component might have

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-26 19:24:55 +02:00
Cody Cutrer 1926847559
[mqtt.homeassistant] Implement Text (#17624)
* [mqtt.homeassistant] Implement Text

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-25 18:51:55 +02:00
Cody Cutrer df36e79925
[mqtt.homeassistant] bring AlarmControlPanel in line with current documentation (#17607)
* [mqtt.homeassistant] bring AlarmControlPanel in line with current documentation

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-25 17:12:04 +02:00
Cody Cutrer a1f448eb23
[mqtt.homeassistant] Implement Valve (#17622)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-25 17:10:11 +02:00
Cody Cutrer 9efbb8137a
[mqtt.homeassistant] drop support for legacy schema vacuums (#17617)
Home Assistant dropped it in 2024.2.
See https://github.com/home-assistant/core/pull/107274

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-25 16:53:35 +02:00
Cody Cutrer c620b527e5
[mqtt.homeassistant] JSON Attributes can exist on BinarySensor (#17608)
also fix the conditional for JSON attributes on other components,
and make the channel read only.

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-22 06:28:14 +02:00
Cody Cutrer ecb1e960d3
[mqtt.homeassistant] JSON Attributes can exist on Climate (#17610)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-22 06:24:32 +02:00
Cody Cutrer b94ed45076
[mqtt.homeassistant] JSON Attributes can exist on Cover (#17611)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-22 06:20:11 +02:00
Cody Cutrer 41d306faab
[mqtt.homeassistant] JSON Attributes are supported by Scene (#17614)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-22 06:17:31 +02:00
Cody Cutrer 2952d21e60
[mqtt.homeassistant] JSON Attributes can exist on Number (#17613)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-22 06:15:39 +02:00
Cody Cutrer 4e5ba15493
[mqtt.homeassistant] JSON Attributes can exist on Lock (#17612)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-22 06:14:02 +02:00
Cody Cutrer eac49a836f
[mqtt.homeassistant] Add support for Event component (#17599)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-21 22:48:01 +02:00
Cody Cutrer f85da1a9c4
[mqtt.homeassistant] add JSON attributes channel to several components (#17605)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-21 22:12:21 +02:00
Cody Cutrer f7c14fe9d8
[mqtt.homeassistant] bring channel ids inline with coding standards (#17604)
but only for newStyleChannels, which is already a breaking change of
most channels getting renamed for 4.3 anyway

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-21 22:10:09 +02:00
Cody Cutrer 722818c30a
[mqtt.homeassistant] Use a single channel for all events from a single button (#17598)
Use the `subtype` field to collapse multiple DeviceAutomation components into
a single channel.

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-21 21:24:56 +02:00
Cody Cutrer 5cd76ee6ec
[mqtt.homeassistant] avoid improperly delivered triggers (#17584)
if multiple DeviceTrigger components share a topic, and each
has a payload value configured, only messages matching that
payload should be delivered to the corresponding channel

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-18 15:24:50 +02:00
Cody Cutrer 4cbae6f111
[mqtt.homeassistant] implement non-deprecated color inference for JSON Schema lights (#17529)
In particular, use the color_mode attribute to tell us which color space to parse in,
instead of trying to guess. Some devices will fill out attributes not-pertinent to
the current color mode, and their math might be... less than optimal.
Also sync color temp and color channels when the color_mode is the opposite.

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-11 14:56:17 +02:00
Cody Cutrer ab59bc871d
[mqtt.homeassistant] Implement optimistic components with AutoUpdatePolicy.RECOMMEND (#17520)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-08 08:45:11 +02:00
Cody Cutrer 31f6cda174
[mqtt.homeassistant] fix newStyleChannels (#17491)
* [mqtt.homeassistant] fix newStyleChannels
* further simplify channel IDs

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-10-07 23:28:50 +02:00
Cody Cutrer f4805eda2b
[mqtt.homeassistant] Fix jinja usage in availability templates (#17400)
* [mqtt.homeassistant] Fix jinja usage in availability templates

Use the local Jinjava, instead of implicitly depending on the Jinja
transformation service.

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-09-27 16:52:31 +02:00
Cody Cutrer 5de73f923a
[mqtt.homeassistant] implement iif and is_defined jinja function and filters (#17435)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-09-26 21:25:36 +02:00
Cody Cutrer bcfbd6480a
[mqtt.homeassistant] Update Jinjava to 2.7.3 (#17412)
* [mqtt.homeassistant] Update Jinjava to 2.7.3

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-09-23 16:57:21 +02:00
Cody Cutrer ab2daded4c
[mqtt.homeassistant] Include the details of JSON syntax errors when parsing fails (#17452)
While it's useful in general to not have to copy/paste a MQTT message into a JSON
parser to verify syntax, it also includes details about fields that are the wrong
data type that a generic JSON parser won't catch. A la #17375.

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-09-20 20:47:20 +02:00
Cody Cutrer b77458dca7
[mqtt.homeassistant] remove channels for no-longer-configured components (#17447)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-09-20 08:52:05 +02:00
Holger Friedrich 54fd13b0c1
Reduce SAT warnings (#17406)
* Reduce SAT warnings

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2024-09-13 17:20:11 +02:00
Cody Cutrer 6953c8bc6f
[mqtt.homeassistant] Fully implement Fan component (#17402)
Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-09-11 22:36:43 +02:00
Cody Cutrer 436dea619d
[mqtt.homeassistant] Implement template schema lights (#17399)
* [mqtt.homeassistant] implement template schema lights

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-09-10 22:37:05 +02:00
Cody Cutrer 110fd9b1ca
[mqtt.homeassistant] Use Jinjava directly (#17378)
* [mqtt.homeassistant] Use Jinjava directly

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-09-09 14:54:08 +02:00
J-N-K c1a63ff4c6
[transform.jinja] Properly use jinjava OSGi (#17358)
Depends on https://github.com/openhab/openhab-osgiify/pull/49

Signed-off-by: Jan N. Klug <github@klug.nrw>
2024-09-04 23:07:21 +02:00
jimtng 06b361c139
[mqtt.homeassistant] Update config abbreviations (#17359)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-09-01 18:17:57 +02:00
jimtng 9c5689df90
[mqtt.generic] Support chaining transformations without an intersection symbol (#17290)
* [mqtt.generic] Support chaining transformations without an intersection symbol

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-09-01 12:54:37 +02:00
jimtng 03863feab4
[jinja] Use osgiified Jinjava (#17356)
* [jinja] Use osgiified Jinjava

Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2024-09-01 12:51:05 +02:00
openhab-bot cd398b701e
New Crowdin updates (#17285)
* New translations mqtt.properties (Italian)
2024-08-18 22:10:31 +02:00
Cody Cutrer 740e44994f
[mqtt.homeassistant] Fix color lights that don't specify color_mode: true (#17240)
* [mqtt.homeassistant] Fix color lights that don't specify color_mode: true

See https://github.com/home-assistant/core/pull/111676

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-08-13 23:22:31 +02:00
Cody Cutrer 73a3f151c9
[mqtt] Simplify homeassistant thing types, and use AbstractStorageBasedTypeProvider (#16600)
* [mqtt.homeassistant] don't dynamically generate channel types

Signed-off-by: Cody Cutrer <cody@cutrer.us>
2024-08-12 21:23:24 +02:00