diff --git a/bundles/org.openhab.binding.ipobserver/src/main/java/org/openhab/binding/ipobserver/internal/IpObserverHandler.java b/bundles/org.openhab.binding.ipobserver/src/main/java/org/openhab/binding/ipobserver/internal/IpObserverHandler.java index 145e0c6e8a81b..24543c189aad5 100644 --- a/bundles/org.openhab.binding.ipobserver/src/main/java/org/openhab/binding/ipobserver/internal/IpObserverHandler.java +++ b/bundles/org.openhab.binding.ipobserver/src/main/java/org/openhab/binding/ipobserver/internal/IpObserverHandler.java @@ -14,10 +14,6 @@ import static org.openhab.binding.ipobserver.internal.IpObserverBindingConstants.*; -<<<<<<< HEAD -<<<<<<< HEAD -======= ->>>>>>> Bulk updated to UOM. import java.util.ArrayList; import java.util.HashMap; import java.util.Map; @@ -28,7 +24,6 @@ import javax.measure.Unit; -<<<<<<< HEAD import org.eclipse.jdt.annotation.NonNullByDefault; import org.eclipse.jdt.annotation.Nullable; import org.eclipse.jetty.client.HttpClient; @@ -56,40 +51,6 @@ import org.openhab.core.types.Command; import org.openhab.core.types.State; import org.openhab.core.types.TypeParser; -======= -======= ->>>>>>> Bulk updated to UOM. -import org.eclipse.jdt.annotation.NonNullByDefault; -import org.eclipse.jdt.annotation.Nullable; -import org.eclipse.jetty.client.HttpClient; -import org.eclipse.jetty.client.api.ContentResponse; -import org.eclipse.jetty.client.api.Request; -import org.eclipse.jetty.http.HttpHeader; -import org.eclipse.jetty.http.HttpMethod; -import org.jsoup.Jsoup; -import org.jsoup.nodes.Document; -import org.jsoup.nodes.Element; -import org.jsoup.select.Elements; -import org.openhab.core.library.types.DecimalType; -import org.openhab.core.library.types.QuantityType; -import org.openhab.core.library.types.StringType; -import org.openhab.core.library.unit.MetricPrefix; -import org.openhab.core.library.unit.SIUnits; -import org.openhab.core.library.unit.Units; -import org.openhab.core.thing.Channel; -import org.openhab.core.thing.ChannelUID; -import org.openhab.core.thing.Thing; -import org.openhab.core.thing.ThingStatus; -import org.openhab.core.thing.ThingStatusDetail; -import org.openhab.core.thing.binding.BaseThingHandler; -import org.openhab.core.types.Command; -<<<<<<< HEAD -import org.openhab.core.types.RefreshType; ->>>>>>> ipObserver creation -======= -import org.openhab.core.types.State; -import org.openhab.core.types.TypeParser; ->>>>>>> Bulk updated to UOM. import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -102,75 +63,20 @@ */ @NonNullByDefault public class IpObserverHandler extends BaseThingHandler { -<<<<<<< HEAD -<<<<<<< HEAD private final HttpClient httpClient; private final Logger logger = LoggerFactory.getLogger(IpObserverHandler.class); private Map channelHandlers = new HashMap(); -<<<<<<< HEAD - private @Nullable ScheduledFuture pollingFuture = null; - private IpObserverConfiguration config = new IpObserverConfiguration(); - - class ChannelHandler { - private IpObserverHandler handler; - private Channel channel; - private String currentState = ""; - private Unit unit; - private final ArrayList> acceptedDataTypes = new ArrayList>(); - - ChannelHandler(IpObserverHandler handler, Channel channel, Class acceptable, Unit unit) { - super(); - this.handler = handler; - this.channel = channel; - this.unit = unit; - acceptedDataTypes.add(acceptable); - } - - public void processMessage(String sensorValue) { - if (!sensorValue.equals(this.currentState)) { - this.currentState = sensorValue; - State state = TypeParser.parseState(this.acceptedDataTypes, sensorValue); - if (state instanceof QuantityType) { - handler.updateState(this.channel.getUID(), - QuantityType.valueOf(Double.parseDouble(sensorValue), unit)); - } else if (state != null) { - this.handler.updateState(this.channel.getUID(), state); - } - } - } - } - - public IpObserverHandler(Thing thing, HttpClient httpClient) { - super(thing); - this.httpClient = httpClient; -======= - -======= - private final HttpClient httpClient; ->>>>>>> Bulk updated to UOM. - private final Logger logger = LoggerFactory.getLogger(IpObserverHandler.class); - private Map updateHandlers = new HashMap(); - private @Nullable ScheduledFuture pollingFuture = null; - private IpObserverConfiguration config = new IpObserverConfiguration(); - - class UpdateHandler { -======= private @Nullable ScheduledFuture pollingFuture = null; private IpObserverConfiguration config = new IpObserverConfiguration(); class ChannelHandler { ->>>>>>> Fix merge conflicts. private IpObserverHandler handler; private Channel channel; private String currentState = ""; private Unit unit; private final ArrayList> acceptedDataTypes = new ArrayList>(); -<<<<<<< HEAD - UpdateHandler(IpObserverHandler handler, Channel channel, Class acceptable, Unit unit) { -======= ChannelHandler(IpObserverHandler handler, Channel channel, Class acceptable, Unit unit) { ->>>>>>> Fix merge conflicts. super(); this.handler = handler; this.channel = channel; @@ -179,11 +85,7 @@ class ChannelHandler { } public void processMessage(String sensorValue) { -<<<<<<< HEAD - if (!Objects.equals(sensorValue, this.currentState)) { -======= if (!sensorValue.equals(this.currentState)) { ->>>>>>> Fix merge conflicts. this.currentState = sensorValue; State state = TypeParser.parseState(this.acceptedDataTypes, sensorValue); if (state instanceof QuantityType) { @@ -198,19 +100,11 @@ public void processMessage(String sensorValue) { public IpObserverHandler(Thing thing, HttpClient httpClient) { super(thing); -<<<<<<< HEAD ->>>>>>> ipObserver creation -======= this.httpClient = httpClient; ->>>>>>> Bulk updated to UOM. } @Override public void handleCommand(ChannelUID channelUID, Command command) { -<<<<<<< HEAD -<<<<<<< HEAD -======= ->>>>>>> Bulk updated to UOM. } private void parseSettings(String html) { @@ -255,7 +149,6 @@ private void parseAndUpdate(String html) { if (localUpdater != null) { localUpdater.processMessage(value); } -<<<<<<< HEAD } } } @@ -265,57 +158,6 @@ private void sendGetRequest(String url) { request.method(HttpMethod.GET).timeout(5, TimeUnit.SECONDS).header(HttpHeader.ACCEPT_ENCODING, "gzip"); String errorReason = ""; try { -<<<<<<< HEAD - ContentResponse contentResponse = request.send(); - if (contentResponse.getStatus() == 200) { - updateStatus(ThingStatus.ONLINE); - if (url == STATION_SETTINGS_URL) { - parseSettings(contentResponse.getContentAsString()); - } else { - parseAndUpdate(contentResponse.getContentAsString()); - } - return; - } else { - errorReason = String.format("IpObserver request failed with %d: %s", contentResponse.getStatus(), - contentResponse.getReason()); - } - } catch (TimeoutException e) { - errorReason = "TimeoutException: IpObserver was not reachable on your network"; - } catch (ExecutionException e) { - errorReason = String.format("ExecutionException: %s", e.getMessage()); - } catch (InterruptedException e) { - Thread.currentThread().interrupt(); - errorReason = String.format("InterruptedException: %s", e.getMessage()); - } - updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.COMMUNICATION_ERROR, errorReason); - } - - private void pollStation() { - sendGetRequest(LIVE_DATA_URL); - } - - private void createChannel(String chanName, Class type, Unit unit, String htmlName) { - @Nullable - Channel channel = this.getThing().getChannel(chanName); - if (channel != null) { - updateHandlers.put(htmlName, new UpdateHandler(this, channel, type, unit)); -======= - if (CHANNEL_1.equals(channelUID.getId())) { - if (command instanceof RefreshType) { - // TODO: handle data refresh -======= ->>>>>>> Bulk updated to UOM. - } - } - } - - private void sendGetRequest(String url) { - Request request = httpClient.newRequest("http://" + config.address + url); - request.method(HttpMethod.GET).timeout(5, TimeUnit.SECONDS).header(HttpHeader.ACCEPT_ENCODING, "gzip"); - String errorReason = ""; - try { -======= ->>>>>>> Fix merge conflicts. long start = System.currentTimeMillis(); ContentResponse contentResponse = request.send(); if (contentResponse.getStatus() == 200) { @@ -357,93 +199,15 @@ private void pollStation() { sendGetRequest(LIVE_DATA_URL); } -<<<<<<< HEAD -<<<<<<< HEAD -<<<<<<< HEAD - // Note: if communication with thing fails for some reason, - // indicate that by setting the status with detail information: - // updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.COMMUNICATION_ERROR, - // "Could not control device at IP address x.x.x.x"); ->>>>>>> ipObserver creation -======= - private void createChannel(String chanName, Class type, Unit unit, String htmlName) { - @Nullable - Channel channel = this.getThing().getChannel(chanName); - if (channel != null) { - updateHandlers.put(htmlName, new UpdateHandler(this, channel, type, unit)); ->>>>>>> Bulk updated to UOM. -======= -======= ->>>>>>> Fix merge conflicts. private void createChannelHandler(String chanName, Class type, Unit unit, String htmlName) { @Nullable Channel channel = this.getThing().getChannel(chanName); if (channel != null) { channelHandlers.put(htmlName, new ChannelHandler(this, channel, type, unit)); ->>>>>>> Fix time channels. } } -<<<<<<< HEAD - @Override - public void initialize() { - config = getConfigAs(IpObserverConfiguration.class); -<<<<<<< HEAD -<<<<<<< HEAD - updateStatus(ThingStatus.UNKNOWN); - sendGetRequest(STATION_SETTINGS_URL); - createChannel(INDOOR_TEMP, QuantityType.class, SIUnits.CELSIUS, "inTemp");// ImperialUnits.FAHRENHEIT - createChannel(OUTDOOR_TEMP, QuantityType.class, SIUnits.CELSIUS, "outTemp"); - createChannel(INDOOR_HUMIDITY, DecimalType.class, Units.PERCENT, "inHumi"); - createChannel(OUTDOOR_HUMIDITY, DecimalType.class, Units.PERCENT, "outHumi"); - createChannel(ABS_PRESSURE, DecimalType.class, SIUnits.PASCAL, "AbsPress"); - createChannel(REL_PRESSURE, DecimalType.class, SIUnits.PASCAL, "RelPress"); - createChannel(WIND_DIRECTION, DecimalType.class, SIUnits.CELSIUS, "windir"); - createChannel(WIND_SPEED, QuantityType.class, Units.KNOT, "avgwind"); - createChannel(WIND_SPEED2, QuantityType.class, Units.KNOT, "windspeed"); - createChannel(WIND_GUST, QuantityType.class, Units.KNOT, "gustspeed"); - createChannel(DAILY_GUST, QuantityType.class, Units.KNOT, "dailygust"); - createChannel(SOLAR_RADIATION, DecimalType.class, SIUnits.CELSIUS, "solarrad"); - createChannel(UV, DecimalType.class, SIUnits.CELSIUS, "uv"); - createChannel(UVI, DecimalType.class, SIUnits.CELSIUS, "uvi"); - createChannel(HOURLY_RAIN, QuantityType.class, Units.MILLIMETRE_PER_HOUR, "rainofhourly"); - createChannel(DAILY_RAIN, QuantityType.class, MetricPrefix.MILLI(SIUnits.METRE), "rainofdaily"); - createChannel(WEEKLY_RAIN, QuantityType.class, MetricPrefix.MILLI(SIUnits.METRE), "rainofweekly"); - createChannel(MONTHLY_RAIN, QuantityType.class, MetricPrefix.MILLI(SIUnits.METRE), "rainofmonthly"); - createChannel(YEARLY_RAIN, QuantityType.class, MetricPrefix.MILLI(SIUnits.METRE), "rainofyearly"); - createChannel(BATTERY_OUT, StringType.class, Units.PERCENT, "outBattSta1"); - createChannel(INDOOR_BATTERY, StringType.class, Units.PERCENT, "inBattSta"); - createChannel(LAST_UPDATED_TIME, StringType.class, SIUnits.CELSIUS, "CurrTime"); - pollingFuture = scheduler.scheduleWithFixedDelay(this::pollStation, 1, config.pollTime, TimeUnit.SECONDS); - } - - @Override - public void dispose() { - updateHandlers.clear(); - if (pollingFuture != null) { - pollingFuture.cancel(true); - pollingFuture = null; - } -======= - - // TODO: Initialize the handler. - // The framework requires you to return from this method quickly. Also, before leaving this method a thing - // status from one of ONLINE, OFFLINE or UNKNOWN must be set. This might already be the real thing status in - // case you can decide it directly. - // In case you can not decide the thing status directly (e.g. for long running connection handshake using WAN - // access or similar) you should set status UNKNOWN here and then decide the real status asynchronously in the - // background. - - // set the thing status to UNKNOWN temporarily and let the background task decide for the real status. - // the framework is then able to reuse the resources from the thing handler initialization. - // we set this upfront to reliably check status updates in unit tests. -======= ->>>>>>> Bulk updated to UOM. - updateStatus(ThingStatus.UNKNOWN); - sendGetRequest(STATION_SETTINGS_URL); -======= private void setupChannels() { ->>>>>>> updates if (config.imperialTemperature) { logger.debug("Using imperial units of measurement for temperature."); createChannelHandler(TEMP_INDOOR, QuantityType.class, ImperialUnits.FAHRENHEIT, "inTemp"); @@ -533,33 +297,6 @@ public void initialize() { pollingFuture = scheduler.scheduleWithFixedDelay(this::pollStation, 1, config.pollTime, TimeUnit.SECONDS); } -<<<<<<< HEAD -<<<<<<< HEAD - // Example for background initialization: - scheduler.execute(() -> { - boolean thingReachable = true; // - // when done do: - if (thingReachable) { - updateStatus(ThingStatus.ONLINE); - } else { - updateStatus(ThingStatus.OFFLINE); - } - }); - - // These logging types should be primarily used by bindings - // logger.trace("Example trace message"); - // logger.debug("Example debug message"); - // logger.warn("Example warn message"); - - // Note: When initialization can NOT be done set the status with more details for further - // analysis. See also class ThingStatusDetail for all available status details. - // Add a description to give user information to understand why thing does not work as expected. E.g. - // updateStatus(ThingStatus.OFFLINE, ThingStatusDetail.CONFIGURATION_ERROR, - // "Can not access device as username and/or password are invalid"); ->>>>>>> ipObserver creation -======= -======= ->>>>>>> Fix merge conflicts. @Override public void dispose() { channelHandlers.clear(); @@ -569,6 +306,5 @@ public void dispose() { localFuture.cancel(true); localFuture = null; } ->>>>>>> Bulk updated to UOM. } } diff --git a/bundles/org.openhab.binding.ipobserver/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.ipobserver/src/main/resources/OH-INF/thing/thing-types.xml index 6e2b26e2b0c1b..25c627f2ee8a1 100644 --- a/bundles/org.openhab.binding.ipobserver/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.ipobserver/src/main/resources/OH-INF/thing/thing-types.xml @@ -4,21 +4,10 @@ xmlns:thing="https://openhab.org/schemas/thing-description/v1.0.0" xsi:schemaLocation="https://openhab.org/schemas/thing-description/v1.0.0 https://openhab.org/schemas/thing-description-1.0.0.xsd"> -<<<<<<< HEAD -<<<<<<< HEAD Use for any weather station sold under multiple brands that come with an IP Observer unit. -<<<<<<< HEAD -<<<<<<< HEAD -======= - - - ->>>>>>> Fix merge conflicts. -======= ->>>>>>> Rename channels to put kind first. @@ -234,232 +223,4 @@ Time -======= - - - - Sample thing for IpObserver Binding - -======= - - - Use for any weather station sold under multiple brands that come with an IP Observer unit. ->>>>>>> Bulk updated to UOM. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - network-address - - Hostname or IP for the IP Observer - 192.168.1.243 - - - - Time in seconds between each Scan of the livedata.htm from the ObserverIP - 20 - - - - Time in milliseconds to wait for a reply before rebooting the IP Observer. A value of 0 disables this - feature allowing you to manually trigger or use a rule to handle the reboots. - 2000 - - - - - Number:Time - - How many milliseconds it took to fetch the sensor readings from livedata.htm - - - - Number:Temperature - - Current Temperature Indoor - Temperature - - - - Number:Temperature - - Current Temperature Outdoors - Temperature - - - - Number:Dimensionless - - Current Humidity Indoors - Humidity - - - - Number:Dimensionless - - Current Humidity Outdoors - Humidity - - - - Number:Pressure - - Absolute Current Pressure - Pressure - - - - Number:Pressure - - Relative Current Pressure - Pressure - - - - Number:Angle - - Wind Direction - Wind - - - - Number - - Solar Radiation - Sun - - - - Number - - UV - Sun - - - - Number - - UV Index - Sun - - - - Number:Speed - - Wind Speed - Wind - - - - Number:Speed - - Wind Speed - Wind - - - - Number:Speed - - Wind Gust - Wind - - - - Number:Speed - - Max Wind Gust - Wind - - - - Number:Length - - Hourly Rain Rate - Rain - - - - Number:Length - - Daily Rain - Rain - - - - Number:Length - - Weekly Rain - Rain - - - - Number:Length - - Monthly Rain - Rain - - - - Number:Length - - Yearly Rain - Rain - - - - String - - Outdoor Battery Status - Battery - - - - String - - Indoor Battery Status - Battery - - - - Switch - - If scraping fails to work you can trigger a reboot of the hardware either manually or via a rule. - - - String - - Time of the last livedata scrape - Time - - -<<<<<<< HEAD - ->>>>>>> ipObserver creation -======= ->>>>>>> Bulk updated to UOM. diff --git a/bundles/pom.xml b/bundles/pom.xml index 7b815768c5016..4f94f1a241c2c 100644 --- a/bundles/pom.xml +++ b/bundles/pom.xml @@ -1,1536 +1,344 @@ -<<<<<<< HEAD - - + + 4.0.0 - + - org.openhab.addons - org.openhab.addons.reactor - 3.1.0-SNAPSHOT - - + org.openhab.addons.bundles - org.openhab.addons.reactor.bundles - pom - + openHAB Add-ons :: Bundles - + - - org.openhab.automation.groovyscripting -<<<<<<< HEAD org.openhab.automation.jsscripting -======= - ->>>>>>> ipObserver creation org.openhab.automation.jythonscripting - org.openhab.automation.pidcontroller - - org.openhab.io.homekit - org.openhab.io.hueemulation - org.openhab.io.imperihome -<<<<<<< HEAD org.openhab.io.metrics -======= - ->>>>>>> ipObserver creation org.openhab.io.neeo - org.openhab.io.openhabcloud - - org.openhab.transform.bin2json - org.openhab.transform.exec - org.openhab.transform.javascript - org.openhab.transform.jinja - org.openhab.transform.jsonpath - org.openhab.transform.map - org.openhab.transform.regex - org.openhab.transform.scale - org.openhab.transform.xpath - org.openhab.transform.xslt - - org.openhab.binding.adorne -<<<<<<< HEAD org.openhab.binding.ahawastecollection org.openhab.binding.airq -======= - ->>>>>>> ipObserver creation org.openhab.binding.airquality - org.openhab.binding.airvisualnode - org.openhab.binding.alarmdecoder - org.openhab.binding.allplay - org.openhab.binding.amazondashbutton - org.openhab.binding.amazonechocontrol - org.openhab.binding.ambientweather - org.openhab.binding.androiddebugbridge - org.openhab.binding.astro - org.openhab.binding.atlona - org.openhab.binding.autelis - org.openhab.binding.automower - org.openhab.binding.avmfritz - org.openhab.binding.bigassfan - org.openhab.binding.bluetooth - org.openhab.binding.bluetooth.airthings - org.openhab.binding.bluetooth.am43 - org.openhab.binding.bluetooth.bluegiga - org.openhab.binding.bluetooth.bluez - org.openhab.binding.bluetooth.blukii - org.openhab.binding.bluetooth.daikinmadoka - org.openhab.binding.bluetooth.enoceanble - org.openhab.binding.bluetooth.generic - org.openhab.binding.bluetooth.govee - org.openhab.binding.bluetooth.roaming - org.openhab.binding.bluetooth.ruuvitag -<<<<<<< HEAD org.openhab.binding.bmwconnecteddrive -======= - ->>>>>>> ipObserver creation org.openhab.binding.boschindego - org.openhab.binding.boschshc - org.openhab.binding.bosesoundtouch - org.openhab.binding.broadlinkthermostat - org.openhab.binding.bsblan - org.openhab.binding.bticinosmarther - org.openhab.binding.buienradar - org.openhab.binding.caddx - org.openhab.binding.cbus - org.openhab.binding.chromecast - org.openhab.binding.cm11a - org.openhab.binding.comfoair - org.openhab.binding.coolmasternet - org.openhab.binding.coronastats - org.openhab.binding.daikin -<<<<<<< HEAD org.openhab.binding.dali -======= - ->>>>>>> ipObserver creation org.openhab.binding.danfossairunit - org.openhab.binding.darksky - org.openhab.binding.deconz - org.openhab.binding.denonmarantz - org.openhab.binding.digiplex - org.openhab.binding.digitalstrom - org.openhab.binding.dlinksmarthome - org.openhab.binding.dmx - org.openhab.binding.doorbird - org.openhab.binding.draytonwiser - org.openhab.binding.dscalarm - org.openhab.binding.dsmr - org.openhab.binding.dwdpollenflug - org.openhab.binding.dwdunwetter - org.openhab.binding.ecobee -<<<<<<< HEAD org.openhab.binding.ecotouch -======= - ->>>>>>> ipObserver creation org.openhab.binding.elerotransmitterstick - org.openhab.binding.energenie - org.openhab.binding.enigma2 - org.openhab.binding.enocean -<<<<<<< HEAD org.openhab.binding.enphase -======= - ->>>>>>> ipObserver creation org.openhab.binding.enturno - org.openhab.binding.epsonprojector - org.openhab.binding.etherrain - org.openhab.binding.evohome - org.openhab.binding.exec - org.openhab.binding.feed - org.openhab.binding.feican - org.openhab.binding.fmiweather - org.openhab.binding.folderwatcher - org.openhab.binding.folding - org.openhab.binding.foobot - org.openhab.binding.freebox - org.openhab.binding.fronius - org.openhab.binding.fsinternetradio - org.openhab.binding.ftpupload - org.openhab.binding.gardena - org.openhab.binding.gce - org.openhab.binding.generacmobilelink - org.openhab.binding.goecharger - org.openhab.binding.gpio - org.openhab.binding.globalcache - org.openhab.binding.gpstracker - org.openhab.binding.gree - org.openhab.binding.groheondus -<<<<<<< HEAD org.openhab.binding.haassohnpelletstove -======= - ->>>>>>> ipObserver creation org.openhab.binding.harmonyhub - org.openhab.binding.haywardomnilogic -<<<<<<< HEAD org.openhab.binding.hccrubbishcollection -======= - ->>>>>>> ipObserver creation org.openhab.binding.hdanywhere - org.openhab.binding.hdpowerview - org.openhab.binding.helios - org.openhab.binding.heliosventilation - org.openhab.binding.heos -<<<<<<< HEAD org.openhab.binding.homeconnect org.openhab.binding.homematic org.openhab.binding.homewizard -======= - - org.openhab.binding.homematic - ->>>>>>> ipObserver creation org.openhab.binding.hpprinter - org.openhab.binding.http - org.openhab.binding.hue - org.openhab.binding.hydrawise - org.openhab.binding.hyperion - org.openhab.binding.iammeter - org.openhab.binding.iaqualink - org.openhab.binding.icalendar - org.openhab.binding.icloud - org.openhab.binding.ihc - org.openhab.binding.innogysmarthome - org.openhab.binding.insteon - org.openhab.binding.ipcamera - org.openhab.binding.ipobserver - org.openhab.binding.intesis - org.openhab.binding.ipp - org.openhab.binding.irobot - org.openhab.binding.irtrans - org.openhab.binding.ism8 - org.openhab.binding.jablotron - org.openhab.binding.jeelink - org.openhab.binding.kaleidescape - org.openhab.binding.keba - org.openhab.binding.km200 - org.openhab.binding.knx - org.openhab.binding.kodi - org.openhab.binding.konnected - org.openhab.binding.kostalinverter - org.openhab.binding.kvv - org.openhab.binding.lametrictime - org.openhab.binding.lcn - org.openhab.binding.leapmotion - org.openhab.binding.lghombot - org.openhab.binding.lgtvserial - org.openhab.binding.lgwebos - org.openhab.binding.lifx - org.openhab.binding.linky - org.openhab.binding.linuxinput - org.openhab.binding.lirc - org.openhab.binding.logreader - org.openhab.binding.loxone - org.openhab.binding.luftdateninfo - org.openhab.binding.lutron -<<<<<<< HEAD org.openhab.binding.luxtronikheatpump -======= - ->>>>>>> ipObserver creation org.openhab.binding.magentatv - org.openhab.binding.mail - org.openhab.binding.max - org.openhab.binding.mcp23017 -<<<<<<< HEAD org.openhab.binding.mecmeter -======= - ->>>>>>> ipObserver creation org.openhab.binding.melcloud - org.openhab.binding.meteoalerte - org.openhab.binding.meteoblue - org.openhab.binding.meteostick - org.openhab.binding.miele - org.openhab.binding.mihome - org.openhab.binding.miio - org.openhab.binding.millheat - org.openhab.binding.milight - org.openhab.binding.minecraft - org.openhab.binding.modbus - org.openhab.binding.modbus.e3dc - org.openhab.binding.modbus.sbc - org.openhab.binding.modbus.studer - org.openhab.binding.modbus.sunspec - org.openhab.binding.modbus.stiebeleltron - org.openhab.binding.modbus.helioseasycontrols - org.openhab.binding.monopriceaudio - org.openhab.binding.mpd - org.openhab.binding.mqtt - org.openhab.binding.mqtt.espmilighthub - org.openhab.binding.mqtt.generic - org.openhab.binding.mqtt.homeassistant - org.openhab.binding.mqtt.homie - org.openhab.binding.myq - org.openhab.binding.mystrom - org.openhab.binding.nanoleaf - org.openhab.binding.neato - org.openhab.binding.neeo - org.openhab.binding.neohub - org.openhab.binding.nest - org.openhab.binding.netatmo - org.openhab.binding.network - org.openhab.binding.networkupstools - org.openhab.binding.nibeheatpump - org.openhab.binding.nibeuplink - org.openhab.binding.nikobus - org.openhab.binding.nikohomecontrol - org.openhab.binding.novafinedust - org.openhab.binding.ntp - org.openhab.binding.nuki - org.openhab.binding.nuvo - org.openhab.binding.nzwateralerts - org.openhab.binding.oceanic - org.openhab.binding.ojelectronics - org.openhab.binding.omnikinverter - org.openhab.binding.omnilink - org.openhab.binding.onebusaway - org.openhab.binding.onewiregpio - org.openhab.binding.onewire - org.openhab.binding.onkyo - org.openhab.binding.opengarage - org.openhab.binding.opensprinkler - org.openhab.binding.openthermgateway - org.openhab.binding.openuv - org.openhab.binding.openweathermap - org.openhab.binding.openwebnet - org.openhab.binding.oppo - org.openhab.binding.orvibo - org.openhab.binding.paradoxalarm - org.openhab.binding.pentair - org.openhab.binding.phc - org.openhab.binding.pilight - org.openhab.binding.pioneeravr - org.openhab.binding.pixometer - org.openhab.binding.pjlinkdevice - org.openhab.binding.playstation - org.openhab.binding.plclogo - org.openhab.binding.plugwise - org.openhab.binding.powermax - org.openhab.binding.pulseaudio - org.openhab.binding.pushbullet - org.openhab.binding.pushover -<<<<<<< HEAD org.openhab.binding.qbus -======= - ->>>>>>> ipObserver creation org.openhab.binding.radiothermostat - org.openhab.binding.regoheatpump - org.openhab.binding.revogi - org.openhab.binding.remoteopenhab -<<<<<<< HEAD org.openhab.binding.resol -======= - ->>>>>>> ipObserver creation org.openhab.binding.rfxcom - org.openhab.binding.rme - org.openhab.binding.robonect - org.openhab.binding.roku - org.openhab.binding.rotel - org.openhab.binding.russound - org.openhab.binding.sagercaster - org.openhab.binding.samsungtv - org.openhab.binding.satel - org.openhab.binding.senechome - org.openhab.binding.seneye - org.openhab.binding.sensebox - org.openhab.binding.sensibo - org.openhab.binding.serial - org.openhab.binding.serialbutton - org.openhab.binding.shelly - org.openhab.binding.silvercrestwifisocket - org.openhab.binding.siemensrds - org.openhab.binding.sinope - org.openhab.binding.sleepiq - org.openhab.binding.smaenergymeter - org.openhab.binding.smartmeter - org.openhab.binding.smhi - org.openhab.binding.smartthings - org.openhab.binding.snmp - org.openhab.binding.solaredge - org.openhab.binding.solarlog - org.openhab.binding.somfymylink - org.openhab.binding.somfytahoma - org.openhab.binding.sonos - org.openhab.binding.sonyaudio - org.openhab.binding.sonyprojector - org.openhab.binding.spotify - org.openhab.binding.squeezebox - org.openhab.binding.surepetcare - org.openhab.binding.synopanalyzer - org.openhab.binding.systeminfo - org.openhab.binding.tacmi - org.openhab.binding.tado - org.openhab.binding.tankerkoenig - org.openhab.binding.telegram - org.openhab.binding.teleinfo - org.openhab.binding.tellstick - org.openhab.binding.tesla - org.openhab.binding.tibber - org.openhab.binding.tivo - org.openhab.binding.touchwand - org.openhab.binding.tplinksmarthome - org.openhab.binding.tr064 - org.openhab.binding.tradfri - org.openhab.binding.unifi - org.openhab.binding.unifiedremote - org.openhab.binding.upnpcontrol - org.openhab.binding.upb - org.openhab.binding.urtsi - org.openhab.binding.valloxmv -<<<<<<< HEAD org.openhab.binding.vdr -======= - ->>>>>>> ipObserver creation org.openhab.binding.vektiva - org.openhab.binding.velbus - org.openhab.binding.velux - org.openhab.binding.venstarthermostat -<<<<<<< HEAD org.openhab.binding.ventaair -======= - ->>>>>>> ipObserver creation org.openhab.binding.verisure - org.openhab.binding.vigicrues - org.openhab.binding.vitotronic - org.openhab.binding.volvooncall -<<<<<<< HEAD org.openhab.binding.warmup -======= - ->>>>>>> ipObserver creation - org.openhab.binding.weathercompany - - org.openhab.binding.weatherunderground -<<<<<<< HEAD - org.openhab.binding.webthing -======= - ->>>>>>> ipObserver creation - org.openhab.binding.wemo - - org.openhab.binding.wifiled - - org.openhab.binding.windcentrale - - org.openhab.binding.wlanthermo - - org.openhab.binding.wled - - org.openhab.binding.xmltv - - org.openhab.binding.xmppclient - - org.openhab.binding.yamahareceiver - - org.openhab.binding.yioremote - - org.openhab.binding.yeelight - - org.openhab.binding.zoneminder - - org.openhab.binding.zway - - - - org.openhab.persistence.dynamodb - - org.openhab.persistence.influxdb - - org.openhab.persistence.jdbc - - org.openhab.persistence.jpa - - org.openhab.persistence.mapdb - - org.openhab.persistence.mongodb - - org.openhab.persistence.rrd4j - - - - org.openhab.voice.googletts - - org.openhab.voice.mactts - - org.openhab.voice.marytts - - org.openhab.voice.picotts - - org.openhab.voice.pollytts - - org.openhab.voice.voicerss - - - - - - - target/dependency - - - - - - - - - - org.lastnpe.eea - - eea-all - - ${eea.version} - - - - - - - - org.openhab.core.bom - - org.openhab.core.bom.compile - - pom - - provided - - - - - - org.openhab.core.bom - - org.openhab.core.bom.openhab-core - - pom - - provided - - - - - - commons-net - - commons-net - - - - - - - - - - org.openhab.core.bom - - org.openhab.core.bom.test - - pom - - test - - - - - - - - org.apache.karaf.features - - framework - - ${karaf.version} - - kar - - true - - - - - - * - - * - - - - - - - - - - - - org.apache.karaf.features - - standard - - ${karaf.version} - - features - - xml - - provided - - - - - - - - - - - - - - org.apache.maven.plugins - - maven-jar-plugin - - - - - - ${project.build.outputDirectory}/META-INF/MANIFEST.MF - - - - true - - - - - - - - org.apache.karaf.tooling - - karaf-maven-plugin - - ${karaf.version} - - true - - - - 80 - - true - - true - - false - - true - - true - - - - - - - - compile - - - - features-generate-descriptor - - - - generate-resources - - - - ${feature.directory} - - - - - - - - karaf-feature-verification - - - - verify - - - - verify - - - - - - - - mvn:org.apache.karaf.features/framework/${karaf.version}/xml/features - - mvn:org.apache.karaf.features/standard/${karaf.version}/xml/features - - - - file:${project.build.directory}/feature/feature.xml - - - - org.apache.karaf.features:framework - - ${oh.java.version} - - - - framework - - - - - - openhab-* - - - - false - - true - - first - - - - - - - - - - - - - - - - - - biz.aQute.bnd - - bnd-maven-plugin - - - - - - org.apache.maven.plugins - - maven-source-plugin - - - - - - attach-sources - - - - jar-no-fork - - - - - - - - - - - - org.apache.karaf.tooling - - karaf-maven-plugin - - - - - - - - org.apache.maven.plugins - - maven-dependency-plugin - - 3.1.1 - - - - - - embed-dependencies - - - - unpack-dependencies - - - - - - runtime - - jar - - javax.activation,org.apache.karaf.features,org.lastnpe.eea - - ${dep.noembedding} - - ${project.build.directory}/classes - - true - - true - - true - - jar - - - - - - - - unpack-eea - - - - unpack - - - - - - - - - - org.lastnpe.eea - - eea-all - - ${eea.version} - - true - - - - - - - - - - - - - - - - - - - - - - - - no-embed-dependencies - - - - - - noEmbedDependencies.profile - - - - - - - - - - - - org.apache.maven.plugins - - maven-dependency-plugin - - - - - - embed-dependencies - - none - - - - - - - - - - - - - - - - -======= - - - 4.0.0 - - - org.openhab.addons - org.openhab.addons.reactor - 3.1.0-SNAPSHOT - - - org.openhab.addons.bundles - org.openhab.addons.reactor.bundles - pom - - openHAB Add-ons :: Bundles - - - - org.openhab.automation.groovyscripting - org.openhab.automation.jythonscripting - org.openhab.automation.pidcontroller - - org.openhab.io.homekit - org.openhab.io.hueemulation - org.openhab.io.imperihome - org.openhab.io.metrics - org.openhab.io.neeo - org.openhab.io.openhabcloud - - org.openhab.transform.bin2json - org.openhab.transform.exec - org.openhab.transform.javascript - org.openhab.transform.jinja - org.openhab.transform.jsonpath - org.openhab.transform.map - org.openhab.transform.regex - org.openhab.transform.scale - org.openhab.transform.xpath - org.openhab.transform.xslt - - org.openhab.binding.adorne - org.openhab.binding.airquality - org.openhab.binding.airvisualnode - org.openhab.binding.alarmdecoder - org.openhab.binding.allplay - org.openhab.binding.amazondashbutton - org.openhab.binding.amazonechocontrol - org.openhab.binding.ambientweather - org.openhab.binding.androiddebugbridge - org.openhab.binding.astro - org.openhab.binding.atlona - org.openhab.binding.autelis - org.openhab.binding.automower - org.openhab.binding.avmfritz - org.openhab.binding.bigassfan - org.openhab.binding.bluetooth - org.openhab.binding.bluetooth.airthings - org.openhab.binding.bluetooth.am43 - org.openhab.binding.bluetooth.bluegiga - org.openhab.binding.bluetooth.bluez - org.openhab.binding.bluetooth.blukii - org.openhab.binding.bluetooth.daikinmadoka - org.openhab.binding.bluetooth.enoceanble - org.openhab.binding.bluetooth.generic - org.openhab.binding.bluetooth.govee - org.openhab.binding.bluetooth.roaming - org.openhab.binding.bluetooth.ruuvitag - org.openhab.binding.boschindego - org.openhab.binding.boschshc - org.openhab.binding.bosesoundtouch - org.openhab.binding.broadlinkthermostat - org.openhab.binding.bsblan - org.openhab.binding.bticinosmarther - org.openhab.binding.buienradar - org.openhab.binding.caddx - org.openhab.binding.cbus - org.openhab.binding.chromecast - org.openhab.binding.cm11a - org.openhab.binding.comfoair - org.openhab.binding.coolmasternet - org.openhab.binding.coronastats - org.openhab.binding.daikin - org.openhab.binding.dali - org.openhab.binding.danfossairunit - org.openhab.binding.darksky - org.openhab.binding.deconz - org.openhab.binding.denonmarantz - org.openhab.binding.digiplex - org.openhab.binding.digitalstrom - org.openhab.binding.dlinksmarthome - org.openhab.binding.dmx - org.openhab.binding.doorbird - org.openhab.binding.draytonwiser - org.openhab.binding.dscalarm - org.openhab.binding.dsmr - org.openhab.binding.dwdpollenflug - org.openhab.binding.dwdunwetter - org.openhab.binding.ecobee - org.openhab.binding.elerotransmitterstick - org.openhab.binding.energenie - org.openhab.binding.enigma2 - org.openhab.binding.enocean - org.openhab.binding.enphase - org.openhab.binding.enturno - org.openhab.binding.epsonprojector - org.openhab.binding.etherrain - org.openhab.binding.evohome - org.openhab.binding.exec - org.openhab.binding.feed - org.openhab.binding.feican - org.openhab.binding.fmiweather - org.openhab.binding.folderwatcher - org.openhab.binding.folding - org.openhab.binding.foobot - org.openhab.binding.freebox - org.openhab.binding.fronius - org.openhab.binding.fsinternetradio - org.openhab.binding.ftpupload - org.openhab.binding.gardena - org.openhab.binding.gce - org.openhab.binding.generacmobilelink - org.openhab.binding.goecharger - org.openhab.binding.gpio - org.openhab.binding.globalcache - org.openhab.binding.gpstracker - org.openhab.binding.gree - org.openhab.binding.groheondus - org.openhab.binding.harmonyhub - org.openhab.binding.haywardomnilogic - org.openhab.binding.hdanywhere - org.openhab.binding.hdpowerview - org.openhab.binding.helios - org.openhab.binding.heliosventilation - org.openhab.binding.heos - org.openhab.binding.homematic - org.openhab.binding.homewizard - org.openhab.binding.hpprinter - org.openhab.binding.http - org.openhab.binding.hue - org.openhab.binding.hydrawise - org.openhab.binding.hyperion - org.openhab.binding.iammeter - org.openhab.binding.iaqualink - org.openhab.binding.icalendar - org.openhab.binding.icloud - org.openhab.binding.ihc - org.openhab.binding.innogysmarthome - org.openhab.binding.insteon - org.openhab.binding.ipcamera - org.openhab.binding.intesis - org.openhab.binding.ipobserver - org.openhab.binding.ipp - org.openhab.binding.irobot - org.openhab.binding.irtrans - org.openhab.binding.ism8 - org.openhab.binding.jablotron - org.openhab.binding.jeelink - org.openhab.binding.kaleidescape - org.openhab.binding.keba - org.openhab.binding.km200 - org.openhab.binding.knx - org.openhab.binding.kodi - org.openhab.binding.konnected - org.openhab.binding.kostalinverter - org.openhab.binding.kvv - org.openhab.binding.lametrictime - org.openhab.binding.lcn - org.openhab.binding.leapmotion - org.openhab.binding.lghombot - org.openhab.binding.lgtvserial - org.openhab.binding.lgwebos - org.openhab.binding.lifx - org.openhab.binding.linky - org.openhab.binding.linuxinput - org.openhab.binding.lirc - org.openhab.binding.logreader - org.openhab.binding.loxone - org.openhab.binding.luftdateninfo - org.openhab.binding.lutron - org.openhab.binding.luxtronikheatpump - org.openhab.binding.magentatv - org.openhab.binding.mail - org.openhab.binding.max - org.openhab.binding.mcp23017 - org.openhab.binding.mecmeter - org.openhab.binding.melcloud - org.openhab.binding.meteoalerte - org.openhab.binding.meteoblue - org.openhab.binding.meteostick - org.openhab.binding.miele - org.openhab.binding.mihome - org.openhab.binding.miio - org.openhab.binding.millheat - org.openhab.binding.milight - org.openhab.binding.minecraft - org.openhab.binding.modbus - org.openhab.binding.modbus.e3dc - org.openhab.binding.modbus.sbc - org.openhab.binding.modbus.studer - org.openhab.binding.modbus.sunspec - org.openhab.binding.modbus.stiebeleltron - org.openhab.binding.modbus.helioseasycontrols - org.openhab.binding.monopriceaudio - org.openhab.binding.mpd - org.openhab.binding.mqtt - org.openhab.binding.mqtt.espmilighthub - org.openhab.binding.mqtt.generic - org.openhab.binding.mqtt.homeassistant - org.openhab.binding.mqtt.homie - org.openhab.binding.myq - org.openhab.binding.mystrom - org.openhab.binding.nanoleaf - org.openhab.binding.neato - org.openhab.binding.neeo - org.openhab.binding.neohub - org.openhab.binding.nest - org.openhab.binding.netatmo - org.openhab.binding.network - org.openhab.binding.networkupstools - org.openhab.binding.nibeheatpump - org.openhab.binding.nibeuplink - org.openhab.binding.nikobus - org.openhab.binding.nikohomecontrol - org.openhab.binding.novafinedust - org.openhab.binding.ntp - org.openhab.binding.nuki - org.openhab.binding.nuvo - org.openhab.binding.nzwateralerts - org.openhab.binding.oceanic - org.openhab.binding.ojelectronics - org.openhab.binding.omnikinverter - org.openhab.binding.omnilink - org.openhab.binding.onebusaway - org.openhab.binding.onewiregpio - org.openhab.binding.onewire - org.openhab.binding.onkyo - org.openhab.binding.opengarage - org.openhab.binding.opensprinkler - org.openhab.binding.openthermgateway - org.openhab.binding.openuv - org.openhab.binding.openweathermap - org.openhab.binding.openwebnet - org.openhab.binding.oppo - org.openhab.binding.orvibo - org.openhab.binding.paradoxalarm - org.openhab.binding.pentair - org.openhab.binding.phc - org.openhab.binding.pilight - org.openhab.binding.pioneeravr - org.openhab.binding.pixometer - org.openhab.binding.pjlinkdevice - org.openhab.binding.playstation - org.openhab.binding.plclogo - org.openhab.binding.plugwise - org.openhab.binding.powermax - org.openhab.binding.pulseaudio - org.openhab.binding.pushbullet - org.openhab.binding.pushover - org.openhab.binding.qbus - org.openhab.binding.radiothermostat - org.openhab.binding.regoheatpump - org.openhab.binding.revogi - org.openhab.binding.remoteopenhab - org.openhab.binding.resol - org.openhab.binding.rfxcom - org.openhab.binding.rme - org.openhab.binding.robonect - org.openhab.binding.roku - org.openhab.binding.rotel - org.openhab.binding.russound - org.openhab.binding.sagercaster - org.openhab.binding.samsungtv - org.openhab.binding.satel - org.openhab.binding.senechome - org.openhab.binding.seneye - org.openhab.binding.sensebox - org.openhab.binding.sensibo - org.openhab.binding.serial - org.openhab.binding.serialbutton - org.openhab.binding.shelly - org.openhab.binding.silvercrestwifisocket - org.openhab.binding.siemensrds - org.openhab.binding.sinope - org.openhab.binding.sleepiq - org.openhab.binding.smaenergymeter - org.openhab.binding.smartmeter - org.openhab.binding.smhi - org.openhab.binding.smartthings - org.openhab.binding.snmp - org.openhab.binding.solaredge - org.openhab.binding.solarlog - org.openhab.binding.somfymylink - org.openhab.binding.somfytahoma - org.openhab.binding.sonos - org.openhab.binding.sonyaudio - org.openhab.binding.sonyprojector - org.openhab.binding.spotify - org.openhab.binding.squeezebox - org.openhab.binding.surepetcare - org.openhab.binding.synopanalyzer - org.openhab.binding.systeminfo - org.openhab.binding.tacmi - org.openhab.binding.tado - org.openhab.binding.tankerkoenig - org.openhab.binding.telegram - org.openhab.binding.teleinfo - org.openhab.binding.tellstick - org.openhab.binding.tesla - org.openhab.binding.tibber - org.openhab.binding.tivo - org.openhab.binding.touchwand - org.openhab.binding.tplinksmarthome - org.openhab.binding.tr064 - org.openhab.binding.tradfri - org.openhab.binding.unifi - org.openhab.binding.unifiedremote - org.openhab.binding.upnpcontrol - org.openhab.binding.upb - org.openhab.binding.urtsi - org.openhab.binding.valloxmv - org.openhab.binding.vdr - org.openhab.binding.vektiva - org.openhab.binding.velbus - org.openhab.binding.velux - org.openhab.binding.venstarthermostat - org.openhab.binding.ventaair - org.openhab.binding.verisure - org.openhab.binding.vigicrues - org.openhab.binding.vitotronic - org.openhab.binding.volvooncall org.openhab.binding.weathercompany org.openhab.binding.weatherunderground org.openhab.binding.webthing @@ -1785,7 +593,3 @@ -<<<<<<< HEAD ->>>>>>> fix up build issues. -======= ->>>>>>> spotless.