openhab-bot [Mon, 3 Oct 2022 15:21:26 +0000 (17:21 +0200)]
New Crowdin updates (#13481)
* New translations influxdb.properties (French)
* New translations tado.properties (Italian)
* New translations ecowatt.properties (Italian)
* New translations solarmax.properties (Italian)
[unifi] Detect all PoE ports, and set PoE thing offline if no data could be found (#13455)
* [unifi] Set PoE thing offline if no data could be found
This would better reflect the PoE thing status if there is a problem with either the data from the api or a configuration problem (like invalid port number).
* [unifi] Fix bug to detect PoE ports when first port is not PoE port
The binding assumed either all ports or no ports were PoE, and asssumed if port 0 was not PoE none was PoE.
However, some switches have ports starting at port 5 to be PoE. Therefor changed code to just test each port if it is PoE.
Jan Vybíral [Sun, 2 Oct 2022 16:10:40 +0000 (18:10 +0200)]
[nuki] Disabled warning for things created from textual config (#13331)
* Removed warning shown when thing is created with hexadecimal warning for read-only things
* Added missing configuration parameters into documentation
Signed-off-by: Jan Vybíral <jan.vybiral1@gmail.com>
Tobias Liese [Sat, 1 Oct 2022 13:32:11 +0000 (15:32 +0200)]
Added URL path support. (#13436)
Changes:
Fix: Now using KTOR instead of building the url by simple string concad. This fixes the https and port 443 bug that existed prier to this change. (https://example.com would look like: https://example.com:443)
Added: Support for jellyfins Base URL option. This allows the addon to be used on installations were jellyfin uses a base path.
[jrubyscripting] clean up assignment of class objects (#13451)
pass the actual class objects through, and post-process in Ruby, to
avoid the rescue nil -- and by extension, any issues with visibility
into private objects from JRuby.
Peter Hicks [Fri, 30 Sep 2022 19:41:53 +0000 (20:41 +0100)]
[tapocontrol] Fix authentication issue making plugin unusable (#13468)
The tapocontrol plugin uses a static UUID which is now causing a an API rate limit exceeded error from the TP-Link API. This commit generates a separate UUID for every login attempt.
Signed-off-by: Peter Hicks <peter.hicks@opentraintimes.com>
* New translations openwebnet.properties (German)
* New translations sonos.properties (German)
* New translations openhabcloud.properties (German)
* New translations hueemulation.properties (German)
* New translations epsonprojector.properties (German)
* New translations hpprinter.properties (German)
* New translations http.properties (German)
* New translations knx.properties (German)
* New translations lcn.properties (German)
* New translations magentatv.properties (German)
* New translations onkyo.properties (German)
* New translations fineoffsetweatherstation.properties (German)
* New translations openweathermap.properties (German)
rgb -> hsv -> rgb still isn't perfect, but it's better. In
particular, I found this when using HSBType.BLUE in a test,
and it was coming out as 0,0,250 in RGB. It now comes out as
a proper 0,0,255.
Maximilian Heß [Sun, 25 Sep 2022 12:29:10 +0000 (14:29 +0200)]
[KVV] Replace underlying API (#13186)
* [KVV] Replace underlying API
The underlying API does no longer work so it is replace. An API key is no longer necessary.
Users need to replace the `stopId` in there station thing configuration. See README.md for details.
Signed-off-by: Maximilian Hess <mail@ne0h.de> Co-authored-by: Laurent Garnier <lg.hc@free.fr>
[pulseaudio] Apply real disconnection when needed (#13338)
* [pulseaudio] Removing isIdle test
The isIdle boolean was not properly handled.
When disconnection is called, isIdle is not relevant : we should always honnor the disconnection request.
In fact, isIdle prevented disconnection when it is necessary (example : when a IOException occurs when sending audio to sink)
+Little bug fix on volume parsing: some volume request doesn't respond with a space after the comma separating left/right channel.
* [pulseaudio] Enhancement to the idle detection for disconnection
Using a counter to count client instead of a isIdle variable, which was not thread safe.
The PulseaudioSimpleProtocolStream parent class is now the sole responsible for closing source or sink stream.
* [pulseaudio] Small performance enhancement
Avoid a costly synchronized operation for a method called very often.
Sami Salonen [Sun, 18 Sep 2022 19:22:06 +0000 (22:22 +0300)]
[mqtt.homeassistant] More readable label for discovered things (#13402)
* [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)".
Sami Salonen [Sun, 18 Sep 2022 16:20:49 +0000 (19:20 +0300)]
[mqtt.homeassistant] Stable jsondb discovery result (#13401)
* [mqtt.homeassistant] Stable jsondb serialization for discovery results
Similar to openhab/openhab-core#2436, we want
to have consistent ordering of data in JSONDB. This is fixing the jsondb
order for mqtt.homeassistant discovery results, specifically, the
"topics" property.
* [mqtt.homeassistant] order using full topic string, not by subcomponent
[miio] Qingping Air Monitor (cgllc.airmonitor.s1) support is broken (#13262)
* [miio] Qingping Air Monitor (cgllc.airmonitor.s1) support is broken #13258
1. Custom refresh command for "battery" was defined . The device with "4.1.8_9999" firmware version does not allowed to obtain this information by this way which prevents to obtain other values. The solution should work for both old firmware (the battery information would be requested as before) and it does not prevent the device with new firmware from sending other values (I checked it).
Signed-off-by: Dmitry Malenok <_mak_@bk.ru>
* [miio] Qingping Air Monitor (cgllc.airmonitor.s1) support is broken #13258
1. The comment clarifying the "battery" parameter behavior was added.
[unifi] Fix portoverride to not remove any other data (#13362)
When a user has configured additional settings on a PoE port, like name.
These settings where lost when changing the PoEPort status in openHAB.
This was because in the binding only some information of the override was stored and when writing the new state this information would have been sent too.
In this change the object to store the override has been replaced by a plain json object. Therefore we don't have to know what is in it and all information is kept.
[avmfritz] Allow to set every userdefined color (#13317)
* Added INCREASE/DECREASE commands for brightness/color Channels
* Fixed NPE in HeatingModel
* Use set unmapped color command for color control of bulbs
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
Andreas Berger [Wed, 31 Aug 2022 13:27:18 +0000 (15:27 +0200)]
[fineoffsetweatherstation] Add support for the new GW2001 weather station (#13283)
* [fineoffsetweatherstation] add support for the new GW2001 weather station with its WH90 sensor
* [fineoffsetweatherstation] add missing channel labels
* [fineoffsetweatherstation] remove redundant translations
* [fineoffsetweatherstation] add test data + fix for WH90
* [fineoffsetweatherstation] fix wrong size for `CMD_READ_RAIN`
Signed-off-by: Andreas Berger <andreas@berger-freelancer.com>
Wouter Born [Mon, 29 Aug 2022 15:15:17 +0000 (17:15 +0200)]
[rrd4j] Use RrdDbPool to prevent ClosedByInterruptException (#13332)
Using the pool prevents exceptions like:
```
java.nio.channels.ClosedByInterruptException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:199) ~[?:?]
at sun.nio.ch.FileChannelImpl.endBlocking(FileChannelImpl.java:162) ~[?:?]
at sun.nio.ch.FileChannelImpl.size(FileChannelImpl.java:388) ~[?:?]
at org.rrd4j.core.RrdNioBackend.<init>(RrdNioBackend.java:94) ~[?:?]
at org.rrd4j.core.RrdNioBackendFactory.open(RrdNioBackendFactory.java:163) ~[?:?]
at org.rrd4j.core.RrdBackendFactory.getBackend(RrdBackendFactory.java:521) ~[?:?]
at org.rrd4j.core.RrdDb.<init>(RrdDb.java:627) ~[?:?]
at org.rrd4j.core.RrdDb.of(RrdDb.java:500) ~[?:?]
at org.openhab.persistence.rrd4j.internal.RRD4jPersistenceService.getDB(RRD4jPersistenceService.java:323) ~[?:?]
at org.openhab.persistence.rrd4j.internal.RRD4jPersistenceService.store(RRD4jPersistenceService.java:141) ~[?:?]
at org.openhab.persistence.rrd4j.internal.RRD4jPersistenceService.lambda$0(RRD4jPersistenceService.java:211) ~[?:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
```