From a04cfd33893301a287dbc5949288792cb0fb371b Mon Sep 17 00:00:00 2001 From: Christoph Weitkamp Date: Wed, 14 Apr 2021 15:11:31 +0200 Subject: [PATCH] Fixed SAT findings for new SAT 0.11.1 release (#10518) Signed-off-by: Christoph Weitkamp --- .../README.md | 2 +- .../org.openhab.binding.bluetooth/README.md | 2 +- bundles/org.openhab.binding.caddx/README.md | 2 +- .../org.openhab.binding.chromecast/README.md | 2 +- .../internal/action/ChromecastActions.java | 2 +- .../ChromecastDiscoveryParticipant.java | 13 ++++++----- .../OH-INF/i18n/chromecast.properties | 2 +- .../README.md | 5 ++-- .../DanfossAirUnitDiscoveryService.java | 6 ++++- .../src/main/feature/feature.xml | 9 ++++++++ .../org.openhab.binding.magentatv/README.md | 3 ++- .../internal/MagentaTVDeviceManager.java | 2 +- .../internal/network/MagentaTVOAuth.java | 2 +- .../OH-INF/i18n/magentatv_de.properties | 1 - .../resources/OH-INF/thing/thing-types.xml | 2 +- bundles/org.openhab.binding.miio/README.md | 2 +- .../README.md | 6 ++++- .../org.openhab.binding.senechome/README.md | 2 +- .../org.openhab.binding.somfymylink/README.md | 2 +- .../handler/SomfyMyLinkBridgeHandler.java | 10 ++++---- .../org.openhab.binding.telegram/README.md | 2 +- bundles/org.openhab.binding.wifiled/README.md | 2 +- .../internal/handler/WiFiLEDHandler.java | 6 ++++- bundles/org.openhab.io.homekit/README.md | 4 +++- .../accessories/HomekitAccessoryFactory.java | 23 ++++++++++++------- .../HomekitCharacteristicFactory.java | 12 +++++++++- .../README.md | 3 ++- .../org.openhab.persistence.mongodb/README.md | 2 +- 28 files changed, 88 insertions(+), 43 deletions(-) create mode 100644 bundles/org.openhab.binding.haywardomnilogic/src/main/feature/feature.xml diff --git a/bundles/org.openhab.binding.bluetooth.enoceanble/README.md b/bundles/org.openhab.binding.bluetooth.enoceanble/README.md index 02f6514fd..96998df8f 100644 --- a/bundles/org.openhab.binding.bluetooth.enoceanble/README.md +++ b/bundles/org.openhab.binding.bluetooth.enoceanble/README.md @@ -57,4 +57,4 @@ demo.items: ``` Dimmer Light_LivingRoom { channel="milight:rgbLed:milight2:4:ledbrightness", channel="bluetooth:ptm215b:bluegiga0:rocker_livingroom:rocker1" [profile="rawrocker-to-on-off"], channel="bluetooth:ptm215b:bluegiga0:rocker_kitchen:rocker1" [profile="rawrocker-to-on-off"] } // We have a combined kitchen / livingroom, so we control the living room lights with switches from the living room and from the kitchen Switch Light_Kitchen { channel="hue:group:1:kitchen-bulbs:switch", channel="bluetooth:ptm215b:bluegiga0:rocker_kitchen:rocker2" [profile="rawrocker-to-on-off"] } -``` \ No newline at end of file +``` diff --git a/bundles/org.openhab.binding.bluetooth/README.md b/bundles/org.openhab.binding.bluetooth/README.md index 51360c4e5..67733cc81 100644 --- a/bundles/org.openhab.binding.bluetooth/README.md +++ b/bundles/org.openhab.binding.bluetooth/README.md @@ -72,4 +72,4 @@ sitemap demo label="Main Menu" See also the following extensions for further examples: - \ No newline at end of file + diff --git a/bundles/org.openhab.binding.caddx/README.md b/bundles/org.openhab.binding.caddx/README.md index 6c222a574..df46713c9 100644 --- a/bundles/org.openhab.binding.caddx/README.md +++ b/bundles/org.openhab.binding.caddx/README.md @@ -347,4 +347,4 @@ then actions.bypass() end -``` \ No newline at end of file +``` diff --git a/bundles/org.openhab.binding.chromecast/README.md b/bundles/org.openhab.binding.chromecast/README.md index 35d3185ba..bd9c26b75 100644 --- a/bundles/org.openhab.binding.chromecast/README.md +++ b/bundles/org.openhab.binding.chromecast/README.md @@ -159,4 +159,4 @@ val castActions = getActions("chromecast","chromecast:chromecast:29fcf535da") val success = castActions.playURL("http://192.168.1.160:81/mjpg/front1/video.mjpg") val success2 = castActions.playURL("http://192.168.1.160:81/mjpg/front1/video.mjpg", "image/jpeg") -``` \ No newline at end of file +``` diff --git a/bundles/org.openhab.binding.chromecast/src/main/java/org/openhab/binding/chromecast/internal/action/ChromecastActions.java b/bundles/org.openhab.binding.chromecast/src/main/java/org/openhab/binding/chromecast/internal/action/ChromecastActions.java index ba7e07aae..deda63ed5 100644 --- a/bundles/org.openhab.binding.chromecast/src/main/java/org/openhab/binding/chromecast/internal/action/ChromecastActions.java +++ b/bundles/org.openhab.binding.chromecast/src/main/java/org/openhab/binding/chromecast/internal/action/ChromecastActions.java @@ -27,7 +27,7 @@ import org.slf4j.LoggerFactory; /** * The {@link ChromecastActions} class defines rule actions for playing URLs * - * @author Scott Hanson - Added Actions + * @author Scott Hanson - Initial contribution */ @ThingActionsScope(name = "chromecast") @NonNullByDefault diff --git a/bundles/org.openhab.binding.chromecast/src/main/java/org/openhab/binding/chromecast/internal/discovery/ChromecastDiscoveryParticipant.java b/bundles/org.openhab.binding.chromecast/src/main/java/org/openhab/binding/chromecast/internal/discovery/ChromecastDiscoveryParticipant.java index 55364d224..2475b6578 100644 --- a/bundles/org.openhab.binding.chromecast/src/main/java/org/openhab/binding/chromecast/internal/discovery/ChromecastDiscoveryParticipant.java +++ b/bundles/org.openhab.binding.chromecast/src/main/java/org/openhab/binding/chromecast/internal/discovery/ChromecastDiscoveryParticipant.java @@ -86,12 +86,13 @@ public class ChromecastDiscoveryParticipant implements MDNSDiscoveryParticipant if (model == null) { return null; } - if (model.equals("Chromecast Audio")) { - return THING_TYPE_AUDIO; - } else if (model.equals("Google Cast Group")) { - return THING_TYPE_AUDIOGROUP; - } else { - return THING_TYPE_CHROMECAST; + switch (model) { + case "Chromecast Audio": + return THING_TYPE_AUDIO; + case "Google Cast Group": + return THING_TYPE_AUDIOGROUP; + default: + return THING_TYPE_CHROMECAST; } } diff --git a/bundles/org.openhab.binding.chromecast/src/main/resources/OH-INF/i18n/chromecast.properties b/bundles/org.openhab.binding.chromecast/src/main/resources/OH-INF/i18n/chromecast.properties index a6cb3a91f..8fc71c6c9 100644 --- a/bundles/org.openhab.binding.chromecast/src/main/resources/OH-INF/i18n/chromecast.properties +++ b/bundles/org.openhab.binding.chromecast/src/main/resources/OH-INF/i18n/chromecast.properties @@ -3,4 +3,4 @@ playURLActionLabel = play a URL playURLActionDescription = Plays a URL. playURLTypeActionLabel = play a URL with a media type -playURLTypeActionDescription = Plays a URL with a defined media type attribute. \ No newline at end of file +playURLTypeActionDescription = Plays a URL with a defined media type attribute. diff --git a/bundles/org.openhab.binding.danfossairunit/README.md b/bundles/org.openhab.binding.danfossairunit/README.md index 5ec59603f..03f77b162 100644 --- a/bundles/org.openhab.binding.danfossairunit/README.md +++ b/bundles/org.openhab.binding.danfossairunit/README.md @@ -52,7 +52,8 @@ The channel will then be identified by `:#` You can also manually configure your air unit in case you don't want to use autodiscovery (e. g. if you want to have a portable configuration): -Create a new file, e. g. `danfoss.things`, in your _things_ configuration folder: +Create a new file, e. g. `danfoss.things`, in your _things_ configuration folder: + ``` Thing danfossairunit:airunit:myairunit [host="192.168.0.7", refreshInterval=5, @@ -79,4 +80,4 @@ Text item=Lueftung_Drehzahl_Extract Selection item=Lueftung_Mode mappings=[DEMAND="Bedarfslüftung", OFF="Aus", PROGRAM="Programm", MANUAL="manuell"] Switch item=Lueftung_Boost Switch item=Lueftung_Bypass -``` \ No newline at end of file +``` diff --git a/bundles/org.openhab.binding.danfossairunit/src/main/java/org/openhab/binding/danfossairunit/internal/discovery/DanfossAirUnitDiscoveryService.java b/bundles/org.openhab.binding.danfossairunit/src/main/java/org/openhab/binding/danfossairunit/internal/discovery/DanfossAirUnitDiscoveryService.java index 92e5079c9..2570d6344 100644 --- a/bundles/org.openhab.binding.danfossairunit/src/main/java/org/openhab/binding/danfossairunit/internal/discovery/DanfossAirUnitDiscoveryService.java +++ b/bundles/org.openhab.binding.danfossairunit/src/main/java/org/openhab/binding/danfossairunit/internal/discovery/DanfossAirUnitDiscoveryService.java @@ -21,7 +21,11 @@ import java.net.InetAddress; import java.net.InterfaceAddress; import java.net.NetworkInterface; import java.net.SocketTimeoutException; -import java.util.*; +import java.util.Arrays; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; import org.eclipse.jdt.annotation.NonNullByDefault; import org.openhab.core.config.discovery.AbstractDiscoveryService; diff --git a/bundles/org.openhab.binding.haywardomnilogic/src/main/feature/feature.xml b/bundles/org.openhab.binding.haywardomnilogic/src/main/feature/feature.xml new file mode 100644 index 000000000..463c80c13 --- /dev/null +++ b/bundles/org.openhab.binding.haywardomnilogic/src/main/feature/feature.xml @@ -0,0 +1,9 @@ + + + mvn:org.openhab.core.features.karaf/org.openhab.core.features.karaf.openhab-core/${ohc.version}/xml/features + + + openhab-runtime-base + mvn:org.openhab.addons.bundles/org.openhab.binding.haywardomnilogic/${project.version} + + diff --git a/bundles/org.openhab.binding.magentatv/README.md b/bundles/org.openhab.binding.magentatv/README.md index ddfcf6104..1fb23f859 100644 --- a/bundles/org.openhab.binding.magentatv/README.md +++ b/bundles/org.openhab.binding.magentatv/README.md @@ -130,6 +130,7 @@ Please note: The binding tries to detect and maintain the correct state, but due to device limitations this is not always possible. Make sure the receiver's and binding's state are in sync when OH is restarted (binding assumes state is OFF). - Channels receiving event information get updated when changing the channel or playing a video. + There is no way to read the current status, therefore they don't get initialized on startup nor being updated in real-time. The player channel supports the following actions: @@ -327,4 +328,4 @@ to switch it ON and to switch it off. -After an openHAB restart you need to make sure that OH and receiver are in sync, because the binding can't read the power status at startup. \ No newline at end of file +After an openHAB restart you need to make sure that OH and receiver are in sync, because the binding can't read the power status at startup. diff --git a/bundles/org.openhab.binding.magentatv/src/main/java/org/openhab/binding/magentatv/internal/MagentaTVDeviceManager.java b/bundles/org.openhab.binding.magentatv/src/main/java/org/openhab/binding/magentatv/internal/MagentaTVDeviceManager.java index 29c9cced0..e9c0073b6 100644 --- a/bundles/org.openhab.binding.magentatv/src/main/java/org/openhab/binding/magentatv/internal/MagentaTVDeviceManager.java +++ b/bundles/org.openhab.binding.magentatv/src/main/java/org/openhab/binding/magentatv/internal/MagentaTVDeviceManager.java @@ -139,7 +139,7 @@ public class MagentaTVDeviceManager { MagentaTVDevice dev = deviceList.get(udn.toUpperCase()); return dev.properties; } - if (deviceList.size() > 0) { + if (!deviceList.isEmpty()) { logger.debug("getDiscoveredProperties(): Unknown UDN: {}", udn); } return null; diff --git a/bundles/org.openhab.binding.magentatv/src/main/java/org/openhab/binding/magentatv/internal/network/MagentaTVOAuth.java b/bundles/org.openhab.binding.magentatv/src/main/java/org/openhab/binding/magentatv/internal/network/MagentaTVOAuth.java index a6b6539ba..3b020d7eb 100755 --- a/bundles/org.openhab.binding.magentatv/src/main/java/org/openhab/binding/magentatv/internal/network/MagentaTVOAuth.java +++ b/bundles/org.openhab.binding.magentatv/src/main/java/org/openhab/binding/magentatv/internal/network/MagentaTVOAuth.java @@ -222,7 +222,7 @@ public class MagentaTVOAuth { if (method.equals(HttpMethod.POST)) { fillPostData(request, data); } - if (cookies.size() > 0) { + if (!cookies.isEmpty()) { // Add cookies String cookieValue = ""; for (HttpCookie c : cookies) { diff --git a/bundles/org.openhab.binding.magentatv/src/main/resources/OH-INF/i18n/magentatv_de.properties b/bundles/org.openhab.binding.magentatv/src/main/resources/OH-INF/i18n/magentatv_de.properties index 14734cd78..78b388dc4 100644 --- a/bundles/org.openhab.binding.magentatv/src/main/resources/OH-INF/i18n/magentatv_de.properties +++ b/bundles/org.openhab.binding.magentatv/src/main/resources/OH-INF/i18n/magentatv_de.properties @@ -104,4 +104,3 @@ channel-type.magentatv.key.command.option.SWITCH = IPTV/DVB channel-type.magentatv.key.command.option.IPTV = IPTV channel-type.magentatv.key.command.option.PIP = PIP channel-type.magentatv.key.command.option.MULTIVIEW = Multi View - \ No newline at end of file diff --git a/bundles/org.openhab.binding.magentatv/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.magentatv/src/main/resources/OH-INF/thing/thing-types.xml index 96e6cfeff..6db7dc461 100755 --- a/bundles/org.openhab.binding.magentatv/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.magentatv/src/main/resources/OH-INF/thing/thing-types.xml @@ -22,7 +22,7 @@ macAddress - + IP address of the receiver diff --git a/bundles/org.openhab.binding.miio/README.md b/bundles/org.openhab.binding.miio/README.md index b280c4433..6f2ed2fd5 100644 --- a/bundles/org.openhab.binding.miio/README.md +++ b/bundles/org.openhab.binding.miio/README.md @@ -10371,4 +10371,4 @@ Mapping of countries in mihome app to server: | Yemen | YE | sg | | Zambia | ZM | sg | | Zimbabwe | ZW | sg | -| Åland Islands | AX | de | \ No newline at end of file +| Åland Islands | AX | de | diff --git a/bundles/org.openhab.binding.paradoxalarm/README.md b/bundles/org.openhab.binding.paradoxalarm/README.md index a866bbbd1..0eccb050c 100644 --- a/bundles/org.openhab.binding.paradoxalarm/README.md +++ b/bundles/org.openhab.binding.paradoxalarm/README.md @@ -47,6 +47,7 @@ Currently binding supports the following panels: EVO192, EVO48(not tested), EVO9 |communicationState | Shows the communication status to Paradox. Different from Bridge status. Bridge may be online and able to receive commands but communication may be offline due to various reasons. Possible values [Offline, Online] | #### Communication command channel allowed values + | Value | Description | |--------|------------------------------------------------------------------------------------| | LOGOUT | Logs out and disconnects from Paradox alarm system | @@ -61,6 +62,7 @@ Currently binding supports the following panels: EVO192, EVO48(not tested), EVO9 | disarmEnabled | Optional boolean flag. Valid for partitions. When set to true the command DISARM will be allowed for the partition where the flag is enabled. CAUTION: Enabling DISARM command can be dangerous. If attacker can gain access to your openHAB (via API or UI), this command can be used to disarm your armed partition (area) | ### Panel channels: + | Channel | Type | Description | |--------------------------|----------------------------|-------------------------------------------------------------------------------------------| | state | String | Overall panel state | @@ -174,11 +176,13 @@ Currently binding supports the following panels: EVO192, EVO48(not tested), EVO9 } } ``` + ## Acknowledgements + This binding would not be possible without the reverse engineering of the byte level protocol and the development by other authors in python, C# and other languages. Many thanks to the following authors and their respective GitHub repositories for their development that helped in creating this binding: João Paulo Barraca - https://github.com/ParadoxAlarmInterface/pai Jean Henning - repository not available -Tertuish - https://github.com/Tertiush/ParadoxIP150v2 / https://github.com/Tertiush/ParadoxIP150 \ No newline at end of file +Tertuish - https://github.com/Tertiush/ParadoxIP150v2 / https://github.com/Tertiush/ParadoxIP150 diff --git a/bundles/org.openhab.binding.senechome/README.md b/bundles/org.openhab.binding.senechome/README.md index c76ed3026..49fc88900 100644 --- a/bundles/org.openhab.binding.senechome/README.md +++ b/bundles/org.openhab.binding.senechome/README.md @@ -127,4 +127,4 @@ Text label="Power Grid"{ Default item=SenecLiveGridExport } } -``` \ No newline at end of file +``` diff --git a/bundles/org.openhab.binding.somfymylink/README.md b/bundles/org.openhab.binding.somfymylink/README.md index 2c334145e..c4eaffee1 100644 --- a/bundles/org.openhab.binding.somfymylink/README.md +++ b/bundles/org.openhab.binding.somfymylink/README.md @@ -56,4 +56,4 @@ The following channels are supported by the binding. Note that specific weather Bridge somfymylink:mylink:mylink1 "myLink Bridge" @ "Office" [ ipAddress="192.168.1.1", systemId="mysystemidhere" ] { Thing shade shade1 "Living Room" [ targetId="CC114A21.1" ] } -``` \ No newline at end of file +``` diff --git a/bundles/org.openhab.binding.somfymylink/src/main/java/org/openhab/binding/somfymylink/internal/handler/SomfyMyLinkBridgeHandler.java b/bundles/org.openhab.binding.somfymylink/src/main/java/org/openhab/binding/somfymylink/internal/handler/SomfyMyLinkBridgeHandler.java index 5563d177c..9ee234894 100644 --- a/bundles/org.openhab.binding.somfymylink/src/main/java/org/openhab/binding/somfymylink/internal/handler/SomfyMyLinkBridgeHandler.java +++ b/bundles/org.openhab.binding.somfymylink/src/main/java/org/openhab/binding/somfymylink/internal/handler/SomfyMyLinkBridgeHandler.java @@ -12,7 +12,7 @@ */ package org.openhab.binding.somfymylink.internal.handler; -import static org.openhab.binding.somfymylink.internal.SomfyMyLinkBindingConstants.*; +import static org.openhab.binding.somfymylink.internal.SomfyMyLinkBindingConstants.CHANNEL_SCENES; import java.io.BufferedReader; import java.io.IOException; @@ -23,7 +23,11 @@ import java.io.Writer; import java.net.Socket; import java.net.SocketTimeoutException; import java.nio.charset.StandardCharsets; -import java.util.*; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.List; +import java.util.Objects; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; @@ -179,7 +183,6 @@ public class SomfyMyLinkBridgeHandler extends BaseBridgeHandler { SomfyMyLinkCommandShadePing command = new SomfyMyLinkCommandShadePing(config.systemId); sendCommandWithResponse(command, SomfyMyLinkPingResponse.class).get(); updateStatus(ThingStatus.ONLINE); - } catch (SomfyMyLinkException | InterruptedException | ExecutionException e) { logger.warn("Problem with mylink during heartbeat: {}", e.getMessage()); updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.COMMUNICATION_ERROR, e.getMessage()); @@ -298,7 +301,6 @@ public class SomfyMyLinkBridgeHandler extends BaseBridgeHandler { Writer out = new OutputStreamWriter(socket.getOutputStream(), StandardCharsets.US_ASCII); BufferedReader in = new BufferedReader( new InputStreamReader(socket.getInputStream(), StandardCharsets.US_ASCII))) { - // send the command logger.debug("Sending: {}", json); out.write(json); diff --git a/bundles/org.openhab.binding.telegram/README.md b/bundles/org.openhab.binding.telegram/README.md index 65775ad31..109a09f32 100644 --- a/bundles/org.openhab.binding.telegram/README.md +++ b/bundles/org.openhab.binding.telegram/README.md @@ -346,4 +346,4 @@ then telegramAction.sendTelegramAnswer(telegramReplyId.state.toString, "Ok, I'll leave them *on*.") } end -``` \ No newline at end of file +``` diff --git a/bundles/org.openhab.binding.wifiled/README.md b/bundles/org.openhab.binding.wifiled/README.md index d0fa80962..104daffa3 100644 --- a/bundles/org.openhab.binding.wifiled/README.md +++ b/bundles/org.openhab.binding.wifiled/README.md @@ -364,4 +364,4 @@ then LED_1_program.sendCommand(99) LED_1_preset_23.sendCommand(OFF) end -``` \ No newline at end of file +``` diff --git a/bundles/org.openhab.binding.wifiled/src/main/java/org/openhab/binding/wifiled/internal/handler/WiFiLEDHandler.java b/bundles/org.openhab.binding.wifiled/src/main/java/org/openhab/binding/wifiled/internal/handler/WiFiLEDHandler.java index 2eb1bbcaa..48fd3afdb 100644 --- a/bundles/org.openhab.binding.wifiled/src/main/java/org/openhab/binding/wifiled/internal/handler/WiFiLEDHandler.java +++ b/bundles/org.openhab.binding.wifiled/src/main/java/org/openhab/binding/wifiled/internal/handler/WiFiLEDHandler.java @@ -20,7 +20,11 @@ import org.openhab.binding.wifiled.internal.WiFiLEDBindingConstants; import org.openhab.binding.wifiled.internal.configuration.WiFiLEDConfig; import org.openhab.binding.wifiled.internal.handler.AbstractWiFiLEDDriver.Driver; import org.openhab.binding.wifiled.internal.handler.AbstractWiFiLEDDriver.Protocol; -import org.openhab.core.library.types.*; +import org.openhab.core.library.types.HSBType; +import org.openhab.core.library.types.IncreaseDecreaseType; +import org.openhab.core.library.types.OnOffType; +import org.openhab.core.library.types.PercentType; +import org.openhab.core.library.types.StringType; import org.openhab.core.thing.ChannelUID; import org.openhab.core.thing.Thing; import org.openhab.core.thing.ThingStatus; diff --git a/bundles/org.openhab.io.homekit/README.md b/bundles/org.openhab.io.homekit/README.md index 50bc0da43..12a7069ae 100644 --- a/bundles/org.openhab.io.homekit/README.md +++ b/bundles/org.openhab.io.homekit/README.md @@ -718,6 +718,7 @@ String cooler_target_mode "Cooler Target Mode" (gCooler) Number cooler_cool_thrs "Cooler Cool Threshold Temp [%.1f C]" (gCooler) {homekit="CoolingThresholdTemperature" [minValue=10.5, maxValue=50]} Number cooler_heat_thrs "Cooler Heat Threshold Temp [%.1f C]" (gCooler) {homekit="HeatingThresholdTemperature" [minValue=0.5, maxValue=20]} ``` + ## Additional Notes HomeKit allows only a single pairing to be established with the bridge. @@ -753,6 +754,7 @@ openhab> log:tail io.github.hapjava ## Troubleshooting ### openHAB is not listed in home app + if you don't see openHAB in the home app, probably multicast DNS (mDNS) traffic is not routed correctly from openHAB to home app device or openHAB is already in paired state. You can verify this with [Discovery DNS iOS app](https://apps.apple.com/us/app/discovery-dns-sd-browser/id305441017) as follow: @@ -774,4 +776,4 @@ You can verify this with [Discovery DNS iOS app](https://apps.apple.com/us/app/d - verify the flag "sf". - if sf is equal 1, openHAB is accepting pairing from new iOS device. - if sf is equal 0 (as on screenshot), openHAB is already paired and does not accept any new pairing request. you can reset pairing using `openhab:homekit clearPairings` command in karaf console. -- if you see openHAB bridge and sf is equal 1 but you dont see openHAB in home app, probably you home app still think it is already paired with openHAB. remove your home from home app and restart iOS device. \ No newline at end of file +- if you see openHAB bridge and sf is equal 1 but you dont see openHAB in home app, probably you home app still think it is already paired with openHAB. remove your home from home app and restart iOS device. diff --git a/bundles/org.openhab.io.homekit/src/main/java/org/openhab/io/homekit/internal/accessories/HomekitAccessoryFactory.java b/bundles/org.openhab.io.homekit/src/main/java/org/openhab/io/homekit/internal/accessories/HomekitAccessoryFactory.java index 2c55a83ad..ac47063d1 100644 --- a/bundles/org.openhab.io.homekit/src/main/java/org/openhab/io/homekit/internal/accessories/HomekitAccessoryFactory.java +++ b/bundles/org.openhab.io.homekit/src/main/java/org/openhab/io/homekit/internal/accessories/HomekitAccessoryFactory.java @@ -16,9 +16,16 @@ import static org.openhab.io.homekit.internal.HomekitAccessoryType.*; import static org.openhab.io.homekit.internal.HomekitCharacteristicType.*; import java.lang.reflect.InvocationTargetException; -import java.util.*; import java.util.AbstractMap.SimpleEntry; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; import java.util.Map.Entry; +import java.util.Objects; +import java.util.Optional; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -124,7 +131,7 @@ public class HomekitAccessoryFactory { /** * creates HomeKit accessory for a openhab item. - * + * * @param taggedItem openhab item tagged as HomeKit item * @param metadataRegistry openhab metadata registry required to get item meta information * @param updater OH HomeKit update class that ensure the status sync between OH item and corresponding HomeKit @@ -171,7 +178,7 @@ public class HomekitAccessoryFactory { /** * return HomeKit accessory types for a OH item based on meta data - * + * * @param item OH item * @param metadataRegistry meta data registry * @return list of HomeKit accessory types and characteristics. @@ -210,7 +217,7 @@ public class HomekitAccessoryFactory { /** * return list of HomeKit relevant groups linked to an accessory - * + * * @param item OH item * @param itemRegistry item registry * @param metadataRegistry metadata registry @@ -231,7 +238,7 @@ public class HomekitAccessoryFactory { /** * collect all mandatory characteristics for a given tagged item, e.g. collect all mandatory HomeKit items from a * GroupItem - * + * * @param taggedItem HomeKit tagged item * @param metadataRegistry meta data registry * @return list of mandatory @@ -341,7 +348,7 @@ public class HomekitAccessoryFactory { /** * collect optional HomeKit characteristics for a OH item. - * + * * @param taggedItem main OH item * @param metadataRegistry OH metadata registry * @return a map with characteristics and corresponding OH items @@ -368,7 +375,7 @@ public class HomekitAccessoryFactory { /** * return true is characteristic is a mandatory characteristic for the accessory. - * + * * @param accessory accessory * @param characteristic characteristic * @return true if characteristic is mandatory, false if not mandatory @@ -381,7 +388,7 @@ public class HomekitAccessoryFactory { /** * check whether accessory is root accessory, i.e. without characteristic tag. - * + * * @param accessory accessory * @return true if accessory has not characteristic. */ diff --git a/bundles/org.openhab.io.homekit/src/main/java/org/openhab/io/homekit/internal/accessories/HomekitCharacteristicFactory.java b/bundles/org.openhab.io.homekit/src/main/java/org/openhab/io/homekit/internal/accessories/HomekitCharacteristicFactory.java index 4cbeb311f..3c860c96a 100644 --- a/bundles/org.openhab.io.homekit/src/main/java/org/openhab/io/homekit/internal/accessories/HomekitCharacteristicFactory.java +++ b/bundles/org.openhab.io.homekit/src/main/java/org/openhab/io/homekit/internal/accessories/HomekitCharacteristicFactory.java @@ -69,7 +69,17 @@ import io.github.hapjava.characteristics.impl.common.StatusFaultCharacteristic; import io.github.hapjava.characteristics.impl.common.StatusFaultEnum; import io.github.hapjava.characteristics.impl.common.StatusTamperedCharacteristic; import io.github.hapjava.characteristics.impl.common.StatusTamperedEnum; -import io.github.hapjava.characteristics.impl.fan.*; +import io.github.hapjava.characteristics.impl.fan.CurrentFanStateCharacteristic; +import io.github.hapjava.characteristics.impl.fan.CurrentFanStateEnum; +import io.github.hapjava.characteristics.impl.fan.LockPhysicalControlsCharacteristic; +import io.github.hapjava.characteristics.impl.fan.LockPhysicalControlsEnum; +import io.github.hapjava.characteristics.impl.fan.RotationDirectionCharacteristic; +import io.github.hapjava.characteristics.impl.fan.RotationDirectionEnum; +import io.github.hapjava.characteristics.impl.fan.RotationSpeedCharacteristic; +import io.github.hapjava.characteristics.impl.fan.SwingModeCharacteristic; +import io.github.hapjava.characteristics.impl.fan.SwingModeEnum; +import io.github.hapjava.characteristics.impl.fan.TargetFanStateCharacteristic; +import io.github.hapjava.characteristics.impl.fan.TargetFanStateEnum; import io.github.hapjava.characteristics.impl.lightbulb.BrightnessCharacteristic; import io.github.hapjava.characteristics.impl.lightbulb.ColorTemperatureCharacteristic; import io.github.hapjava.characteristics.impl.lightbulb.HueCharacteristic; diff --git a/bundles/org.openhab.persistence.dynamodb/README.md b/bundles/org.openhab.persistence.dynamodb/README.md index c002ffb3b..039f29287 100644 --- a/bundles/org.openhab.persistence.dynamodb/README.md +++ b/bundles/org.openhab.persistence.dynamodb/README.md @@ -18,6 +18,7 @@ This service is provided "AS IS", and the user takes full responsibility of any {::options toc_levels="2..4"/} - TOC + {:toc} ## Prerequisites @@ -175,4 +176,4 @@ Eclipse instructions -DDYNAMODBTEST_REGION=REGION-ID -DDYNAMODBTEST_ACCESS=ACCESS-KEY -DDYNAMODBTEST_SECRET=SECRET -```` \ No newline at end of file +```` diff --git a/bundles/org.openhab.persistence.mongodb/README.md b/bundles/org.openhab.persistence.mongodb/README.md index 51a352d26..4e07be4cd 100644 --- a/bundles/org.openhab.persistence.mongodb/README.md +++ b/bundles/org.openhab.persistence.mongodb/README.md @@ -16,4 +16,4 @@ This service can be configured in the file `services/mongodb.cfg`. If you have a username and password it looks like this: url = mongodb://[username]:[password]@[localhost]:27017/[database] The database is required: http://mongodb.github.io/mongo-java-driver/3.9/javadoc/com/mongodb/MongoClientURI.html -All item and event related configuration is done in the file `persistence/mongodb.persist`. \ No newline at end of file +All item and event related configuration is done in the file `persistence/mongodb.persist`.