Commit Graph

2216 Commits (a690aeba3def6a9ce435d2e1aedb7522b0880395)

Author SHA1 Message Date
openhab-bot a690aeba3d
New Crowdin updates (#3744)
* New translations voice.properties (Hungarian)

* New translations automation.properties (Hungarian)
2023-08-11 14:08:26 +02:00
openhab-bot b3cc326217
New Crowdin updates (#3739)
* New translations automation.properties (Italian)

* New translations LanguageSupport.properties (Portuguese, Brazilian)
2023-08-03 14:08:47 +02:00
Jacob Laursen e079352473
Upgrade JUPnP to 2.7.1 (#3737)
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
2023-07-31 22:30:27 +02:00
Florian Hotze c4fb71fcc6
[automation] Update texts for rule-based actions (#3733)
Core part of https://github.com/openhab/openhab-webui/issues/1921.

With UI-support for scenes & scripts, the texts (labels, descriptions etc.) for rule-based actions should be updated to mention scenes & scripts as well.
This improves the UI experience.

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
2023-07-30 20:26:51 +02:00
Florian Hotze f5a0b37b3d
[persistence] Handle `null` value for `relative` & `inverted` props of filters (#3727)
Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
2023-07-25 21:07:24 +02:00
Florian Hotze e1741cf61d
[rest] Add caching for TagResource & De-duplicate code for caching (#3729)
* [rest] Add caching for TagResource
* [core] Add & use RegistryChangedRunnableListener class

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
2023-07-25 20:59:39 +02:00
J-N-K 79fd459f59
Fix limitToOptions in script profile (#3730)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-25 09:16:07 +02:00
Wouter Born 3b91692be1
Fix build (#3726)
Signed-off-by: Wouter Born <github@maindrain.net>
2023-07-24 09:02:01 +02:00
Kai Kreuzer 5692232e2b Apply spotless
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2023-07-24 01:11:37 +02:00
openhab-bot fd93f0a766 [unleash-maven-plugin] Preparation for next development cycle. 2023-07-23 17:14:35 +00:00
J-N-K 546e34252f
Fix system started DSL rules (#3725)
* Fix system started DSL rules

Signed-off-by: Jan N. Klug <github@klug.nrw>
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2023-07-23 10:21:37 +02:00
GiviMAD 559ab9136f
[Auth Filter] Fix implicit user role for websocket connections (#3724)
Signed-off-by: Miguel Álvarez <miguelwork92@gmail.com>
2023-07-22 22:53:19 +02:00
Flole998 5449c476e0
Provide correct version information for XChart in NOTICE (#3721)
Signed-off-by: Flole <flole@flole.de>
2023-07-21 22:07:20 +02:00
J-N-K 573c94b560
Fix MQTT crashes when subscriber throws exception (#3719)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-21 17:37:57 +02:00
Kai Kreuzer 7a87001f98
Revert "Upgrade XChart to 3.8.4 (#3291)" (#3720)
This reverts commit c2e81a13fd.
2023-07-21 17:21:14 +02:00
J-N-K b8ae55c3f5
Fix rule startlevel trigger executes during initialization (#3717)
* Fix rule startlevel trigger executes during initialization

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-21 14:18:28 +02:00
Florian Hotze 72ec0f3517
[rest] Add missing fields to /rest/items?staticDataOnly=true resource (#3712)
Fixes #https://github.com/openhab/openhab-webui/issues/1958.

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
2023-07-21 13:35:38 +02:00
Florian Hotze 62a83557ae
[persistence] Handle null value for unit field of filters (#3716)
Setting up a treshold filter with the UI, it did not work because the unit field was blank.
I got an NPE from PersistenceTresholdFilter, and the PersistenceIncludeFilter would also throw a NPE in that case.
For PersistenceTimeFilter, defaulting to "s" is just cosmetic.

Picks-up PR #3681 and should be merged for the 4.0 release, because the UI does not prevent the unit field from being null.

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
2023-07-20 17:17:53 +02:00
J-N-K 5a00bfdc41
Align system-channel-types for electricity (#3707)
* Align system-channel-types for electricity

These are only used by one binding at the moment and it's very inconsistent to have power, voltage and current with the "electric" prefix and energy with "electrical".

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-18 09:05:42 +02:00
Wouter Born 3396ff7758
Use Eclipse formatter 4.25 with Spotless (#3710)
Fixes #3515

Signed-off-by: Wouter Born <github@maindrain.net>
2023-07-18 09:03:16 +02:00
openhab-bot 2ee85a75f5
New translations voice.properties (French) (#3709) 2023-07-17 17:58:47 +02:00
lolodomo f71137331f
[Sitemap UI] Do not break format defined in label with extra spaces (#3708)
Fix openhab/openhab-webui#1953

Fix a regression introduced by PR #3644

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-07-17 17:58:01 +02:00
J-N-K 66dec25571
Keep channel properties in upgrades (#3612)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-16 10:24:21 +02:00
J-N-K 9ba8e71c54
Add unit "calorie" (#3684)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-15 22:18:27 +02:00
openhab-bot 7b7ccba5bb
New translations voice.properties (Italian) (#3703) 2023-07-15 22:17:15 +02:00
J-N-K 35ca7a9a94
Fix NPE in PersistenceManager (#3704)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-15 22:16:32 +02:00
Gwendal Roulleau 07e88234c6
[voice] Add length limit to TTS handled by cache (#3699)
* [voice] Add length limit to TTS handled by cache

We can safely assume that long TTS are generated for report (meteo, chatGPT ?), probably not meant to be repeated, and so not cached.

Signed-off-by: Gwendal Roulleau <gwendal.roulleau@gmail.com>
2023-07-15 09:47:59 +02:00
J-N-K 141b7b637a
Increase large event queue warn limit (#3702)
On larger installations with 1000+ items the limit of 1000 elements in the queue is exceeded easily. Since no events are lost (they just take longer to be processed), the limit that needs to be exceeded before a warning is issued should be increased.

See reports on the forum.

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-14 21:47:14 +02:00
Mark Herwege f0c00959aa
[rest] add unit to item response (#3654)
Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2023-07-14 20:01:22 +02:00
openhab-bot fb4f45e3e2
New Crowdin updates (#3653)
* New translations scriptprofile.properties (Hungarian)

* New translations validation.properties (Hungarian)

* New translations automation.properties (Hungarian)

* New translations lsp.properties (German)

* New translations persistence.properties (German)
2023-07-11 18:47:44 +02:00
lolodomo f0adf76719
HTTP audio servlet: check end of play every 2 seconds (#3695)
Instead of 5s before.
It helps triggering the end of playback earlier for audio sinks in asynchronous mode.

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-07-11 18:46:01 +02:00
lolodomo 591b16ff35
Avoid null hash warning in WatchServiceImpl when possible (#3691)
Fix #3680

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-07-07 20:26:12 +02:00
J-N-K abcfe54678
Fix marketplace add-ons missing config description URI (#3688)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-06 08:26:33 +02:00
J-N-K 6a0b268c3e
Fix wrong ready marker in ScriptEngineFactoryBundleTracker (#3683)
* Fix wrong ready marker in ScriptEngineFactoryBundleTracker
* fix ready marker handling

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-06 08:25:13 +02:00
lolodomo e9719eb577
Make firmwareStatus field not final in DTO object (#3687)
Fix #3679

If not, calls of method limitToFields by PR #3335 fails when the list of
fields does not contain firmwareStatus.

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-07-05 21:02:24 +02:00
lolodomo b2934ad044
Avoid warning log introduced by PR #3644 (#3686)
Fix openhab/openhab-webui#1951

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-07-05 20:15:10 +02:00
J-N-K 4be95788f1
Remove error logging from PersistenceIncludeFilter (#3682)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-04 07:34:27 +02:00
J-N-K a656073352
Improve performance for state update handling (#3635)
* Improve threading in EventHandler
* refactor pagechangelistener to event
* One executor per subscriber type, not per subscriber

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-07-02 12:12:53 +02:00
GiviMAD 6b914162bf
[voice] Add console commands for register/unregister dialogs and list them (#3459)
* [voice] Add voice commands for register/unregister dialogs and list dialogs and dialog registrations

Signed-off-by: Miguel Álvarez <miguelwork92@gmail.com>
2023-07-02 11:27:10 +02:00
Gwendal Roulleau 3ec1457583
[audio] Improve audio duration computation (#3675)
Allows the use of a Sizeable interface (for AudioStream that we know the length of, but we cannot clone). We can then improve the duration detection, for example for the pulseaudio sink (PR coming after).
We can also give the length information to sink in more cases.

Add the support of the mark / reset methods to some common AudioStream. We then allow more stream analysis for sink requiring it (Stream analysis often requires to get back in time after consuming a few bytes)

Signed-off-by: Gwendal Roulleau <gwendal.roulleau@gmail.com>
2023-07-02 11:19:34 +02:00
Mark Herwege 5ceaa64768
[rest] Add widget state pattern and default unit to ItemUIRegistry (#3644)
* expose widget format pattern to sitemap REST
* Add unit fields to sitemap REST

Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2023-07-02 11:03:00 +02:00
Scott Hraban 505e51210e
Always use ThingUid as the unique identifier for thing status metrics (#3674)
* Always use ThingUid as the unique identifier for thing status metrics

At bind time, ThingId was being used, but then ThingUid was being used when changes occured,
causing multiple meters to be created for the same Thing, with the status always being 0 for
the meter created at bind time.

This change uses the full ThingUid, for both binding and event processing, since ThingUid is
the globally unique value.

Fixes #3672

Signed-off-by: Scott Hraban <scotthraban@gmail.com>
2023-07-02 09:31:02 +02:00
Wouter Born db97610111
Replace StringBuffer usages with StringBuilder (#3668)
See: https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/StringBuilder.html

> This class provides an API compatible with StringBuffer, but with no guarantee of synchronization.
> This class is designed for use as a drop-in replacement for StringBuffer in places where the string buffer was being used by a single thread (as is generally the case).
> Where possible, it is recommended that this class be used in preference to StringBuffer as it will be faster under most implementations.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-06-25 17:24:46 +02:00
J-N-K 78e66745ab
Add support for things with generic channels (#3355)
* Add support for generic channels

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-06-25 16:22:55 +02:00
J-N-K 64fd046266
Bump spifly to 1.3.6 and asm to 9.4 to support records (#3658)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-06-23 10:46:43 +02:00
J-N-K 36f95bb5b5
Fix missing query prefix in JarFileAddonService (#3664)
See title. This brings the query id in-line with the other add-on services.

Also adds correct content type.

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-06-18 21:08:47 +02:00
J-N-K d64bd3b90b
Improve existing and add new persistence filters (#3642)
* Improve existing and add new persistence filters
* include filter

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-06-18 09:29:49 +02:00
J-N-K c2e81a13fd
Upgrade XChart to 3.8.4 (#3291)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-06-17 11:00:39 +02:00
Gwendal Roulleau 8eddad5c76
[audio] Enhance AudioSink capabilities using the AudioServlet (#3461)
* [audio] More capabilities for AudioSink using the AudioServlet

AudioServlet can now serve all type of AudioStream multiple times by buffering data in memory or in temporary file.
Adding method to ease disposal of temporary file after playing a sound
Adding an identifyier to audio stream for further development (allow audio sink to cache computation data)

We can now send audio with a Runnable for a delayed task to be executed after. This delayed task includes temporary file deletion and volume restoration.
This is a no breaking change / no behaviour modification for other addon AudioSink, as existing AudioSink must explicitly override the old behaviour to use this capability.
Add AudioSinkSync / AudioSinkAsync abstract classes to use this capability easily.
WebAudioSink now implements this capability, with the help of a modified AudioServlet

Adding (approximative, better than nothing) sound duration computation method for MP3 and WAV.
Use this sound duration computation to guess when the async sound is finished and when to do the post process (i.e. volume restoration)

Signed-off-by: Gwendal Roulleau <gwendal.roulleau@gmail.com>
2023-06-16 21:54:11 +02:00
lolodomo f86635fe96
[rest] Add semantic tag registry + API to manage user tags (#3646)
* Add semantic tag registry + REST API to manage user tags

Related to #3619

New registry for semantic tags.
New default semantic tags provider for all built-in semantic tags.
New managed provider to add/remove/update user semantic tags.
Storage of user semantic tags in a JSON DB file.
New REST API to add/remove/update user tags in the semantic model.
New REST API to get a sub-tree of the semantic tags.

Semantic tag class annotations are removed.

Semantic tag classes are now created at runtime.
Classes Locations, Equipments, Points and Properties are removed

Static methods SemanticTags.add removed
The adding of semantic tag classes is now managed only by the tag registry.

Avoids calling static method SemanticTags.getById when possible

SemanticsMetadataProvider service now requires semanticTagRegistry to start.

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-06-16 16:38:03 +02:00