* Remove redundant feature dependencies
The following features are already dependencies of openhab-runtime-base:
* openhab-core-base
* openhab-core-model-item
* openhab-core-model-script
* openhab-transport-mdns
See also: https://github.com/openhab/openhab-addons/pull/16202#issuecomment-1876875456
* Remove redundant openhab.tp-jackson and openhab.tp-jaxb feature dependencies
Signed-off-by: Wouter Born <github@maindrain.net>
If the long poll response from the Smart Home Controller does not
contain valid JSON, the subscription is gracefully terminated a new one
is initiated after 15 seconds.
closes#15912
Signed-off-by: David Pace <dev@davidpace.de>
Switch from vitalidze/chromecast-java-api-v2 to de.sfuhrm/chromecast-java-api-v2.
This fork updates protobuf-java from 2.6.0 to protobuf-javalite 3.25.1.
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
* [network] Add parameter for limiting network interfaces to fix performance issues
* Use last known reachable interface
---------
Signed-off-by: Wouter Born <github@maindrain.net>
* [mqtt.homeassistant] Improve support for Lock component
* handle state and command payloads differing (as they do by default)
* expose full state possibilities and OPEN command by adding
a TextValue channel
* Recognize intermediate lock states as unlocked on the switch channel
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* New translations automower.properties (Italian)
* New translations opensprinkler.properties (Italian)
* New translations samsungtv.properties (Italian)
* [boschshc] Fix options for channels with Switch items
Previously, the option values partially contained Bosch-specific states
instead of the openHAB-specific states ON and OFF.
The option values were fixed and the descriptions were
enhanced/shortened since the UI only provides little space for the state
descriptions.
Signed-off-by: David Pace <dev@davidpace.de>
* [boschshc] Support for Door/Window Sensor II
* add new thing type for Door/Window Sensor II
* add channel types for bypass state and communication quality
* add handler extending the basic Door/Window Sensor handler
* add service implementations
* register handler in discovery service
* add unit tests
* re-generate i18n properties file
* add documentation
closes#15954
Signed-off-by: David Pace <dev@davidpace.de>
This is an issue if the user cancels/restarts discovery scans, new tasks were added to the shutdown threadpool.
With this PR, a new threadpool will be created on the next scan in getExecutorService().
Signed-off-by: Nils Schnabel <github@to.nilsschnabel.de>
since #13801, it's not been possible to add new milight things,
because the thing XML already has the new channel types, but not
the thingTypeVersion property set, so it would try to apply the
update instructions and error about duplicate channels
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* Fix 300mA current draw will display as 0 due to rounding.
* Remove WARN logs when retries have not yet expired.
Signed-off-by: Matthew Skinner <matt@pcmus.com>
* Provide work-around for currency issues
* Verify unit before trying to instantiate QuantityType
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
* Correct things definition in README.md
Add example of bridge and link thing to bridge.
---------
Signed-off-by: aliijm <44173819+aliijm@users.noreply.github.com>
* [mqtt.espmilighthub] use system channel types for color temp and brightness
closes#10096
also add absolute color temp channel. and remove level channel when we
already have a color channel (you can link a DimmerItem to a color
channel if your light doesn't happen to have color or you want direct
control of brightness only for some reason)
---------
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* [mqtt.homeassistant] add support for Update component
This component is fairly non-standard - it doesn't add any channels.
Instead, it provides several properties to the thing, and also adds
a thing configuration allowing you to trigger an OTA update on a
Home Assistant device from MainUI.
---------
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* [mybmw] fix not working binding due to API update
to make it work the code has been refactored and due to API changes some
improvements could be made. These include:
- (improvement) fingerprint generation: You can
take a look at the README how to create a
fingerprint more conveniently.
- (change) changed channel: charge-info has been
renamed to charge-remaining
- (improvement) added channels:
estimated-fuel-l-100km and estimated-fuel-mpg
which calculates the estimated fuel consumption
based on the range and remaining fuel liters
- unfortunately such a calculation is not available
for EVs as there is no information about the capacity of the battery.
- (improvement) added channel last-fetched:
the last-updated timestamp is showing by when
the last update of the vehicle happened. As right
now you can not see from the channels if a thing
is offline due to connection issues, you can check
now if last-fetched is more than 5 minutes ago to identify an issue
- (fixed) remote command typos fixed
Fixes#14065
Also-by: Mark Herwege <mark.herwege@telenet.be>
Signed-off-by: Martin Grassl <martin.grassl@digital-filestore.de>
* Add support for garage door transition status
Homekit requires a status for the garage door of OPEN, CLOSED, CLOSING,
OPENING. In order to report that, we must provide state transition
information. State transition information is inferred when the garage
door state is changed. For door_transition_time_seconds since the last
open/close command was issued, the binding reports the state as either
"closing" or "opening".
---------
Signed-off-by: Tim Harper <timcharper@gmail.com>
Co-authored-by: Laurent Garnier <lg.hc@free.fr>
* [knx] New modifier to set mainGA write-only
Co-authored-by: Florian Hotze <florianh_dev@icloud.com>
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
* [mqtt.homeassistant] improve Cover support
* Add support for covers that report position
* Handle when command and state values for OPEN/CLOSE/STOP
differ (as they do by default)
* Expose the full cover state, since it can have tell you
if the cover is moving or not
* Handle covers that have a position only, but not a state
* add constants to clarify up/down values
* Be sure to parse percents from strings in RollshutterValue
---------
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* [boschshc] Add support for motion detector illuminance sensor
- add channel and corresponding channel type
- add update description
- add state model
- implement service and handler
- add documentation
- add unit test
---------
Signed-off-by: David Pace <dev@davidpace.de>
* [pilight] Add option to disable background discovery for a given pilight bridge thing
Previously the background discovery updated periodically all channels of all
devices regardless whether they have sent an update or not. This behavior
makes it impossible to decide whether a device is still alive by observing
channel updates sent by a device itself. Especially for devices running on
battery, it is important to know, if it still sends updates.
Create ExecutorService during initialize
---------
Signed-off-by: Stefan Roellin <stefan@roellin-baumann.ch>
* [mqtt] Interpet incoming NaN as UNDEF for NumberValues
Since DecimalType and QuantityType don't support NaN, but
when you're linking to a topic that the device is using
floating point, NaN might happen.
---------
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* Fix IOOB exception with missing DPT in number channels
Also improves test messages for DPT unit tests
Signed-off-by: Jan N. Klug <github@klug.nrw>
Co-authored-by: Holger Friedrich <mail@holger-friedrich.de>
* Use of actions.get instead of getActions
Adopt doc to newest default JS environment regarding calling mail actions via actions.get
Signed-off-by: Siegmar Immel <36704892+SiggiFR@users.noreply.github.com>
* [mail] Adding Javascript examples in documentation
Because function name has changed to get actions defined within the mail binding, the examples have been extended by a tab for JavaScript code.
* Update bundles/org.openhab.binding.mail/README.md
Co-authored-by: J-N-K <github@klug.nrw>
Signed-off-by: Siegmar Immel <36704892+SiggiFR@users.noreply.github.com>
---------
Signed-off-by: Siegmar Immel <36704892+SiggiFR@users.noreply.github.com>
Co-authored-by: J-N-K <github@klug.nrw>
A new thing parameter to define the API version has been added.
Its default value is 4 for backward compatibility even if this version
is now deprecated. The documentation explains what to do to switch from
a version to another.
Signed-off-by: Laurent Garnier <lg.hc@free.fr>
* Implements #15949: Plus Dimmer 10v added
* category DimmableLight does not exist; README updated
---------
Signed-off-by: Markus Michels <markus7017@gmail.com>
* [mqtt.homeassistant] interpret a dimmable light as OFF properly from zigbee2mqtt
zigbee2mqtt can send a brightness of say 99, with a state of OFF, when a bulb is
off. make sure if state is sent, it overrides all other inferences
* handle brightness but not color bulbs
---------
Signed-off-by: Cody Cutrer <cody@cutrer.us>
I.e. Button, Scene, and Binary Sensors.
Also ensure we set up the CommandDescription, since some value types mights use it.
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* [boschshc] Update active profile of intrusion detection system
Fixes an issue that caused the active configuration profile of the
intrusion detection system not to be updated.
closes#15848
* [boschshc] add channel to control state service registration
Signed-off-by: David Pace <dev@davidpace.de>
* New translations openwebnet.properties (Italian)
* New translations jsscripting.properties (Danish)
* New translations hdpowerview.properties (Danish)
* [mqtt.homeassistant] Add support for Button component
* use a StringValue instead of an OnOffValue
---------
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* feat(energy): get current day and current month totalizers
* fixed unit (Power:Energy), refreshPeriod config and scheduler
---------
Signed-off-by: Giovanni Fabiani <fabiani.giovanni@gmail.com>
Co-authored-by: Conte Andrea <andrea@conte.com>
The page was missing information in some places (e.g. some supported
modules were not listed at all,) and some outdated information in
others. Some examples were malformed, and some wording didn’t flow too
well. The section on Channels is still pretty iffy, but I left this as
an exercise for a future me or somebody else :)
Signed-off-by: Simonas Kazlauskas <openhab@kazlauskas.me>
Follow on to #15427
ring-mqtt sends `"name": ""`, not `"name": null` or simply omitting it,
so be sure to handle that way as well
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* [mqtt.homeassistant] handle null component name
channels from such components will not have a group. this is
now done by zigbee2mqtt for the "default" component of a device,
such as the light. HASS encourages this as of release 2023.8
Signed-off-by: Cody Cutrer <cody@cutrer.us>
* [mqtt.homeassistant] support color temp on JSON schema lights
also adds a color_mode channel if color temp is possible, so you can
know how the bulb is behaving
* put color mode channel construction into buildChannels()
---------
Signed-off-by: Cody Cutrer <cody@cutrer.us>
Depending on device configuration and used central [1], HM devices may
indicate long press repetition either by a single PRESS_CONT event or by
a PRESS_CONT + PRESS_LONG combination. In the latter case, make sure to
not generate a LONG_REPEATED trigger channel event for both PRESS_CONT
and PRESS_LONG, but instead keep LONG_REPEATED generation to the
PRESS_CONT handling.
[1] I'm not sure what a real CCU is doing, but for Homegear, a
configured long press timeout of less than 1s generates only
PRESS_CONT, while a timeout of more than 1s generates
PRESS_CONT + PRESS_LONG ... see [2].
[2] https://github.com/Homegear/Homegear-HomeMaticBidCoS/blob/master/src/BidCoSPeer.cpp#L1711-L1716
Signed-off-by: Danny Baumann <dannybaumann@web.de>
* Fix resource leak when discovery handling failed and NPE when a IPv6
address is reported.
* remove callApi(request/innerRequest from Shelly1HttpApi, which changes
to callApi/httpRequest in ShellyHttpCLient.
Signed-off-by: Markus Michels <markus7017@gmail.com>
* New translations sonos.properties (French)
* New translations influxdb.properties (French)
* New translations netatmo.properties (French)
* New translations jpa.properties (French)
* New translations chatgpt.properties (French)
* [influxdb] Improve connection handling
Especially for InfluxDB2 the connection check was not properly implemented. It only checked if a connections was ever successfully established. Since we removed the full crash when a write error occured, this lead to a situation where a broken connection was not detected. A ping is now implemented and also a failed write results in a disconnect.
---------
Signed-off-by: Jan N. Klug <github@klug.nrw>
* [fineoffsetweatherstation] Improve tracing
* [fineoffsetweatherstation] Fix wrong handling temperature reading for of WH34
Signed-off-by: Andreas Berger <andreas@berger-freelancer.com>
* Added a few new channels:
- cleaning the mop
- check if mop drying is enabled
- remaining time for mop drying
Signed-off-by: David Kumar <github@truidix.de>
Some devices report "Window covering controller" instead of "Window covering device". They are controlled in the same way.
Signed-off-by: Jan N. Klug <github@klug.nrw>
Also adapt the documentation and drop the batteryFeedIn in the documentation
which is not part of the binding.
Fix#15365
Signed-off-by: Tim Lochmüller <tim@fruit-lab.de>
If there were multiple network interfaces and the DatagramSocket.receive
timed out an exception was thrown and the remaining network interfaces
were not considered anymore.
Signed-off-by: Stefan Roellin <stefan@roellin-baumann.ch>
* [GPIO] Update the GPIO binding to fix issues and provide new functionality.
* Add the ability to recover from network disconnects to pigpiod.
* Provide actions to what the binding does on pigpiod connect/disconnect/reconnect.
* Provide the ability to pulse outputs in a one-shot/momentary fashion.
* Provide edge level configuration for gpio outputs.
* Fix automated style checks.
* Attempt to squash jenkins build warnings/errors.
* Correct Null annotations and adjust log levels in certain areas.
* Fix bracing per checkstyle review.
* Normalize gpiod/pigpiod to pigpiod. openhab/openHAB normalized to OpenHAB.
* Fix a copy/paste error. Output channels should not be referred as input. Attempt to clarify plurals.
* Convert strings to defined constants.
* Convert pulse command strings to binding constants.
* Java17 instanceof pattern matching.
* Nit, fix missed pulse command string to binding constant.
* Add missing quotes in demo.things file definition.
Workaround #11039Fixes#11038Fixes#13376
Signed-off-by: Jeremy Rumpf <rumpf.99@gmail.com>
* Add channels for last motion/temperature sensor update (API v2)
* Add channel for last light level sensor update (API v2)
* Add channel for last rotary steps update (API v2)
* Add channel for last button update (API v2)
Resolves#15546
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
* Add support for Expiring Messages
* Add action variants with TTL parameter
Resolves#15288
---------
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
* make VirtualDatapoint belonging ContactSensor for more devices available
---------
Signed-off-by: niclas18 <87126599+niclas18@users.noreply.github.com>
* New translations energidataservice.properties (Italian)
* New translations energidataservice.properties (Danish)
* New translations sonos.properties (Italian)
* [ipcamera] Handle empty snapshotUrls and XML encoded characters
* use unescape method from StringUtils
---------
Signed-off-by: Kai Kreuzer <kai@openhab.org>
* Rename channel powerConsumption to energyConsumption and set display unit to litres for waterConsumption
---------
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
* Adds power and powerState. Updates refresh to allow 1 second refresh.
* Add activeAppName channel
* Add Player channel for transport control
Signed-off-by: Ben Rosenblum <rosenblumb@gmail.com>
* [lutron] initial submission for RA3 support
* add parameter to getDevices(), remove getRA3Devices()
---------
Signed-off-by: Peter J Wojciechowski <peterwoj@dwellersoul.com>
Under demo.items the button-last-event channel was of the Number type. I have changed this to String.
In the channels for devices section this was already corrected but is not 'live' yet?
Signed-off-by: Gemertw <59452423+Gemertw@users.noreply.github.com>
* Fix refresh/initial state request
Fixes#15735
* Fix channel updates when thing comes online
Fixes#15669
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
Also-by: Andrew Fiddian-Green <software@whitebear.ch>
While the app can't go lower than 5A, the API allows setting values down
to 0A, and at least going to 2-3A can make sense if you want to put
excess solar power into the car without also drawing some from the grid.
Due to the overhead this causes it can be wasteful, so keep logging the
warning about going below 5A.
Signed-off-by: Ulrich Spörlein <uspoerlein@gmail.com>
* New translations jpa.properties (Italian)
* New translations inmemory.properties (Italian)
* New translations mapdb.properties (Italian)
* New translations mongodb.properties (Italian)
* New translations rrd4j.properties (Italian)
Upgrades H2 database from 1.4.191 to 2.2.224.
Add ';NON_KEYWORDS=VALUE' to the JDBC URL because the add-on uses 'value' (which is also a keyword) as column name.
Also fixes some queries used by the command extension because H2 always uses upper case table names.
For the change log, see:
https://h2database.com/html/changelog.html
For migration notes, see:
https://h2database.com/html/migration-to-v2.htmlFixes#13115
Signed-off-by: Wouter Born <github@maindrain.net>
* Fix problem with DPT 251.600.
In the old implementation the datatype was implemented with byte 0-255.
The DPT 251.600 is defined with 0-100%, change this from byte to
PercentType.
Signed-off-by: Marco Mueller <marco@ms.mueller.ch>
The dependency change in #15659 caused slf4j to be embedded into the bundle.
As a result the bundle no longer uses Pax Logging so it cannot find an SLF4J provider and logs the following when it is installed:
SLF4J: No SLF4J providers were found.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See https://www.slf4j.org/codes.html#noProviders for further details.
Signed-off-by: Wouter Born <github@maindrain.net>
* Adding the possibility to disable websocket listening.
This is set up in order to ease debugging of the "Erreur Interne" issue.
* Enhancing websocket work with recurrent deconnection, simplification of listeners handling
* refactored function name
* Fixed the name of the channel where the refresh command is sent.
* Solving SAT issues
* Corrected doc error
* Added properties
* Removed gson 2.10 now that it is included into core.
---------
Signed-off-by: clinique <gael@lhopital.org>
* Convert to OH jetty HttpClient
* Adds a Stack for HttpClient storage
* Add synchronized to prevent exception
* fix binding
* Stop stack on close
* Resolves exception on registring forward actions
* Reduces client count to 5 to align to expected thread pool limit of 5
---------
Signed-off-by: Ben Rosenblum <rosenblumb@gmail.com>
Co-authored-by: Mark Herwege <mark.herwege@telenet.be>
* Update README.md
I had some struggles with setting up google TTS, got it to work eventually and now update the README to help users in the future.
This commit includes updating the information, including necessary tips, formatting und some minor details
Signed-off-by: Felix Schneider <fs@felix-schneider.org>
The cleanup includes:
* Use lambdas
* Use enhanced switches
* Make abstract class constructors protected
* Fix typos
Signed-off-by: Wouter Born <github@maindrain.net>
Adding support for the following models:
* Xiaomi Smart Humidifier 2 (modelId: deerma.humidifier.jsq2w)
closing #15639
Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
* Upgrade to version 3
* Use ThreadPoolManager and add sleep
* Remove pool prefix, already added by thread pool manager
Signed-off-by: Miguel Álvarez <miguelwork92@gmail.com>
* Add a buffer to lower Weather API requests
* Correcting typo identified in PR #15587 after merge
---------
Signed-off-by: clinique <gael@lhopital.org>
* Resolve itest runbundles
* Fix dependency issues
* Add specs features because Pax Web now depends on "asm"
Signed-off-by: Wouter Born <github@maindrain.net>
* New translations netatmo.properties (Italian)
* New translations danfossairunit.properties (Danish)
* New translations jsscripting.properties (Italian)
* Added connection check via IdleStateHandler events for sent onvif requests.
Also checking connect errors and setting new states connectError or refusedError accordingly.
On connect, only one request is sent to have less parallel actions in case of reconnect, timeout.
Moved GetCapabilities call to GetSystemDateAndTime response handler part.
Added support to disable automatic polling at startup.
* Fixed call of sendOnvifRequest (missed to remove one call of requestBuilder).
---------
Signed-off-by: Thomas Burri <th@thonojato.ch>
Signed-off-by: Matthew Skinner <matt@pcmus.com>
Co-authored-by: Matthew Skinner <matt@pcmus.com>
Migrating from OH 2.5 I tripped over this, as :power no longer exists and instead one has to send ON/OFF commands to the :color channel instead.
Looks like documentation wasn't fully updated with the code changes.
Signed-off-by: uqs <uqs@FreeBSD.org>
* Improve conversion of database value to item state
* Refactor test cases to reduce redundancy
* Refactor for type-safety
* Refactor type cast
Fixes#15433
---------
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
Special handling for temperature differences in °F and °F/%,
DPT 9.002 and 9.003, needs to be adapted due to change in core.
Refs openhab/openhab-core#3792.
Implementation is valid for 4.0 and 4.x snapshot.
Fixes#15567.
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
* [miio] maintenance - update device names list
Update the list with latest device names
Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
* [miio] Update device names list
Update the list with latest device names used by some of the support
tools
Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
---------
Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
* [Juicenet] Fix typos in setOverride()
Some obvious typos in setOverride() result in the timestamp being
ignored which causes it to fail
Fixes#15564
* [Juicenet] Allow disabling the override
- The charger has default settings upon plugin, changing the current state
sets the overide to Y, this makes override settable only in the N direction
to remove whatever settings were previously applied
* [Juicenet] Document new writable status of override
---------
Signed-off-by: Ed Martin <edman007@edman007.com>
* simplified determination of start/stop as the opMode now has new values (7+8) to show missing authentication (before this was included in value "2")
* refactored ChargerOpState to enum
---------
Signed-off-by: Alexander Friese <af944580@googlemail.com>
Signed-off-by: Alexander Friese <alexf2015@users.noreply.github.com>
Co-authored-by: lsiepel <leosiepel@gmail.com>
* Provide detailed error information on failed commands
* Log as info when command succeeds
* Revert collect(Collectors.toList()) refactoring
* Provide exception message in status description
Fixes#15511
---------
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
* fixed problems with fingerprint codes which were received in decimal instead of hex
Signed-off-by: Andre Jendrysseck <ajendry@gwdg.de>
* correct format issues
Signed-off-by: Andre Jendrysseck <ajendry@gwdg.de>
* add test file for fingerprint codes
Signed-off-by: Andre Jendrysseck <ajendry@gwdg.de>
* Delete openhab-addons.code-workspace
Signed-off-by: Andre Jendrysseck <ajendry@gwdg.de>
---------
Signed-off-by: Andre Jendrysseck <ajendry@gwdg.de>
Co-authored-by: Andre Jendrysseck <ajendry@gwdg.de>
* [gardena] Improve and fix UoM support
Properly convert incoming UoM values for command durations, and output
measurements as UoM values where possible.
* [gardena] Fix signal strength channel value
Previously the binding sent 0..100, but the system expects 0..4 for the
system.signal-strength channel.
* [gardena] Update README
* [gardena] Use actual units in state description where appropriate
Signed-off-by: Danny Baumann <dannybaumann@web.de>
XMLInputFactory: Disable properties IS_SUPPORTING_EXTERNAL_ENTITIES and
SUPPORT_DTD which allow injecting external entities.
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
* Updated A5-10 EEP family (corrected readings, added new channels)
* Changed fanSpeedStage channel to type Number and added new options to it
* Added dayNightModeState channel
Fixes#15458
Signed-off-by: Daniel Weber <uni@fruggy.de>