diff --git a/bundles/org.openhab.binding.wundergroundupdatereceiver/README.md b/bundles/org.openhab.binding.wundergroundupdatereceiver/README.md index 1ff4297ff..d2ee15fe8 100644 --- a/bundles/org.openhab.binding.wundergroundupdatereceiver/README.md +++ b/bundles/org.openhab.binding.wundergroundupdatereceiver/README.md @@ -106,21 +106,21 @@ Additionally there is a receipt timestamp and a trigger channel. #### Metadata channel-types: -| Request parameter | Channel type id | Type | Label | Description | Group | -|-------------------|------------------------------|----------------------|-----------------------------------|-----------------------------------------------------------------------------------------------------|-------------| -| dateutc | dateutc | String | Last Updated | The date and time of the last update in UTC as submitted by the weather station. This can be 'now'. | Metadata | -| softwaretype | softwaretype | String | Software Type | A software type string from the weather station | Metadata | -| rtfreq | realtime-frequency | Number | Realtime Frequency | How often does the weather station submit measurements | Metadata | -| lowbatt | system:low-battery | Switch | Low Battery | Low battery warning with possible values on (low battery) and off (battery ok) | Metadata | +| Request parameter | Channel type id | Type | Label | Description | Group | +|-------------------|------------------------------|----------------------|-----------------------------------|--------------------------------------------------------------------------------------------|-------------| +| dateutc | dateutc | String | Last Updated | The date and time of the last update in UTC as submitted by the device. This can be 'now'. | Metadata | +| softwaretype | softwaretype | String | Software Type | A software type string from the device | Metadata | +| rtfreq | realtime-frequency | Number | Realtime Frequency | How often does the device submit measurements | Metadata | +| lowbatt | system:low-battery | Switch | Low Battery | Low battery warning with possible values on (low battery) and off (battery ok) | Metadata | #### Synthetic channel-types. These are programmatically added: -| Channel type id | Type | Channel type | Label | Description | Group | -|------------------------|----------------------|--------------|--------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------|----------| -| dateutc-datetime | dateutc-datetime | state | Last Updated as DateTime | The date and time of the last update in UTC as submitted by the weather station converted to a DateTime value. In case of 'now', the current time is used. | Metadata | -| last-received-datetime | DateTime | state | Last Received | The date and time of the last update. | Metadata | -| last-query-state | String | state | The last query | The part of the last query after the first unurlencoded '?' | Metadata | -| last-query-trigger | String | trigger | The last query | The part of the last query after the first unurlencoded '?' | Metadata | +| Channel type id | Type | Channel type | Label | Description | Group | +|------------------------|----------------------|--------------|--------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|----------| +| dateutc-datetime | dateutc-datetime | state | Last Updated as DateTime | The date and time of the last update in UTC as submitted by the device converted to a DateTime value. In case of 'now', the current time is used. | Metadata | +| last-received-datetime | DateTime | state | Last Received | The date and time of the last update. | Metadata | +| last-query-state | String | state | The last query | The query part of the last request from the device | Metadata | +| last-query-trigger | String | trigger | The last query | The query part of the last request from the device | Metadata | The trigger channel's payload is the last querystring, so the following dsl rule script would send the measurements on to wunderground.com: diff --git a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/java/org/openhab/binding/wundergroundupdatereceiver/internal/WundergroundUpdateReceiverBindingConstants.java b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/java/org/openhab/binding/wundergroundupdatereceiver/internal/WundergroundUpdateReceiverBindingConstants.java index 471edeb95..2dd0e685b 100644 --- a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/java/org/openhab/binding/wundergroundupdatereceiver/internal/WundergroundUpdateReceiverBindingConstants.java +++ b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/java/org/openhab/binding/wundergroundupdatereceiver/internal/WundergroundUpdateReceiverBindingConstants.java @@ -72,7 +72,7 @@ public class WundergroundUpdateReceiverBindingConstants { public static final String PRESSURE_GROUP = "pressure"; public static final String POLLUTION_GROUP = "pollution"; - // Known or observed request paramters received from weather stations submitting to wunderground.com + // Known or observed request paramters received from devices submitting to wunderground.com public static final String DATEUTC = "dateutc"; public static final String SOFTWARE_TYPE = "softwaretype"; public static final String LOW_BATTERY = "lowbatt"; diff --git a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/java/org/openhab/binding/wundergroundupdatereceiver/internal/WundergroundUpdateReceiverHandler.java b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/java/org/openhab/binding/wundergroundupdatereceiver/internal/WundergroundUpdateReceiverHandler.java index a0d8ca451..82e828fe6 100644 --- a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/java/org/openhab/binding/wundergroundupdatereceiver/internal/WundergroundUpdateReceiverHandler.java +++ b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/java/org/openhab/binding/wundergroundupdatereceiver/internal/WundergroundUpdateReceiverHandler.java @@ -166,10 +166,10 @@ public class WundergroundUpdateReceiverHandler extends BaseThingHandler { private DateTimeType safeResolvUtcDateTime(String dateUtc) { if (!dateUtc.isEmpty() && !NOW.equals(dateUtc)) { try { - // Supposedly the format is "yyyy-MM-dd hh:mm:ss" from the weather station + // Supposedly the format is "yyyy-MM-dd hh:mm:ss" from the device return new DateTimeType(ZonedDateTime.parse(dateUtc.replace(" ", "T") + "Z")); } catch (Exception ex) { - logger.warn("The weather station is submitting unparsable datetime values: {}", dateUtc); + logger.warn("The device is submitting unparsable datetime values: {}", dateUtc); } } return new DateTimeType(); diff --git a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/binding/binding.xml b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/binding/binding.xml index b1c162a66..578705b05 100644 --- a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/binding/binding.xml +++ b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/binding/binding.xml @@ -5,7 +5,7 @@ Wunderground Update Receiver Binding - This binding enables acting as a receiver of updates from weather stations that post measurements to + This binding enables acting as a receiver of updates from devices that post measurements to https://rtupdate.wunderground.com/weatherstation/updateweatherstation.php. diff --git a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/i18n/wundergroundupdatereceiver.properties b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/i18n/wundergroundupdatereceiver.properties index 9c733d6c9..2fae05749 100644 --- a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/i18n/wundergroundupdatereceiver.properties +++ b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/i18n/wundergroundupdatereceiver.properties @@ -1,7 +1,7 @@ # binding binding.wundergroundupdatereceiver.name = Wunderground Update Receiver Binding -binding.wundergroundupdatereceiver.description = This binding enables acting as a receiver of updates from weather stations that post measurements to https://rtupdate.wunderground.com/weatherstation/updateweatherstation.php. +binding.wundergroundupdatereceiver.description = This binding enables acting as a receiver of updates from devices that post measurements to https://rtupdate.wunderground.com/weatherstation/updateweatherstation.php. # thing types @@ -45,24 +45,24 @@ channel-type.wundergroundupdatereceiver.carbon-monoxide.description = Carbon Mon channel-type.wundergroundupdatereceiver.clouds.label = Cloud Cover channel-type.wundergroundupdatereceiver.clouds.description = METAR style cloud cover. channel-type.wundergroundupdatereceiver.dateutc-datetime.label = Last Updated as DateTime -channel-type.wundergroundupdatereceiver.dateutc-datetime.description = The date and time of the last update in UTC as submitted by the weather station converted to a DateTime value. In case of 'now', the current time is used. +channel-type.wundergroundupdatereceiver.dateutc-datetime.description = The date and time of the last update in UTC as submitted by the device converted to a DateTime value. In case of 'now', the current time is used. channel-type.wundergroundupdatereceiver.dateutc-datetime.state.pattern = %1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS channel-type.wundergroundupdatereceiver.dateutc.label = Last Updated -channel-type.wundergroundupdatereceiver.dateutc.description = The date and time of the last update in UTC as submitted by the weather station. This can be 'now'. +channel-type.wundergroundupdatereceiver.dateutc.description = The date and time of the last update in UTC as submitted by the device. This can be 'now'. channel-type.wundergroundupdatereceiver.dew-point.label = Dew Point channel-type.wundergroundupdatereceiver.dew-point.description = Outdoor dew point. channel-type.wundergroundupdatereceiver.elemental-carbon.label = Elemental Carbon channel-type.wundergroundupdatereceiver.elemental-carbon.description = Elemental Carbon, PM2.5 µG/m3. -channel-type.wundergroundupdatereceiver.humidity.label = Humidity -channel-type.wundergroundupdatereceiver.humidity.description = Humidity in %. +channel-type.wundergroundupdatereceiver.humidity.label = Outdoor Humidity +channel-type.wundergroundupdatereceiver.humidity.description = Outdoor humidity in %. channel-type.wundergroundupdatereceiver.indoor-humidity.label = Indoor Humidity channel-type.wundergroundupdatereceiver.indoor-humidity.description = Indoor humidity in %. channel-type.wundergroundupdatereceiver.indoor-temperature.label = Indoor Temperature channel-type.wundergroundupdatereceiver.indoor-temperature.description = Indoor temperature. channel-type.wundergroundupdatereceiver.last-query-state.label = The last query -channel-type.wundergroundupdatereceiver.last-query-state.description = The part of the last query after the first unurlencoded '?' +channel-type.wundergroundupdatereceiver.last-query-state.description = The query part of the last request from the device channel-type.wundergroundupdatereceiver.last-query-trigger.label = The last query -channel-type.wundergroundupdatereceiver.last-query-trigger.description = The part of the last query after the first unurlencoded '?' +channel-type.wundergroundupdatereceiver.last-query-trigger.description = The query part of the last request from the device channel-type.wundergroundupdatereceiver.last-received-datetime.label = Last Received channel-type.wundergroundupdatereceiver.last-received-datetime.description = The date and time of the last update. channel-type.wundergroundupdatereceiver.last-received-datetime.state.pattern = %1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS @@ -101,17 +101,17 @@ channel-type.wundergroundupdatereceiver.rain-yearly.description = Rain since the channel-type.wundergroundupdatereceiver.rain.label = Hourly Rain channel-type.wundergroundupdatereceiver.rain.description = Rain over the past hour. channel-type.wundergroundupdatereceiver.realtime-frequency.label = Realtime Frequency -channel-type.wundergroundupdatereceiver.realtime-frequency.description = How often does the weather station submit measurements +channel-type.wundergroundupdatereceiver.realtime-frequency.description = How often does the device submit measurements channel-type.wundergroundupdatereceiver.so4-ion.label = SO4 ion channel-type.wundergroundupdatereceiver.so4-ion.description = SO4 ion (sulfate, not adjusted for ammonium ion) µG/m3. channel-type.wundergroundupdatereceiver.softwaretype.label = Software Type -channel-type.wundergroundupdatereceiver.softwaretype.description = A software type string from the weather station +channel-type.wundergroundupdatereceiver.softwaretype.description = A software type string from the device channel-type.wundergroundupdatereceiver.soil-moisture.label = Soil Moisture channel-type.wundergroundupdatereceiver.soil-moisture.description = Soil moisture in %. channel-type.wundergroundupdatereceiver.soil-temperature.label = Soil Temperature channel-type.wundergroundupdatereceiver.soil-temperature.description = Soil temperature. channel-type.wundergroundupdatereceiver.solarradiation.label = Solar Radiation -channel-type.wundergroundupdatereceiver.solarradiation.description = Solar radiation +channel-type.wundergroundupdatereceiver.solarradiation.description = Solar radiation, W/m2 channel-type.wundergroundupdatereceiver.sulfur-dioxide-trace-levels.label = Sulfur Dioxide Trace Levels channel-type.wundergroundupdatereceiver.sulfur-dioxide-trace-levels.description = Sulfur Dioxide, trace levels ppb. channel-type.wundergroundupdatereceiver.sulfur-dioxide.label = Sulfur Dioxide @@ -121,7 +121,7 @@ channel-type.wundergroundupdatereceiver.total-reactive-nitrogen.description = To channel-type.wundergroundupdatereceiver.uv.label = UV Index channel-type.wundergroundupdatereceiver.uv.description = UV index. channel-type.wundergroundupdatereceiver.visibility.label = Visibility -channel-type.wundergroundupdatereceiver.visibility.description = Visibility. +channel-type.wundergroundupdatereceiver.visibility.description = Visibility in nautical miles. channel-type.wundergroundupdatereceiver.wind-chill.label = Wind Chill channel-type.wundergroundupdatereceiver.wind-chill.description = The apparent wind chill temperature. channel-type.wundergroundupdatereceiver.wind-direction-avg-2min.label = Wind Direction 2min Average diff --git a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/thing/channel-types.xml b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/thing/channel-types.xml index 08ef9a745..2797867b5 100644 --- a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/thing/channel-types.xml +++ b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/thing/channel-types.xml @@ -19,7 +19,7 @@ String - The date and time of the last update in UTC as submitted by the weather station. This can be 'now'. + The date and time of the last update in UTC as submitted by the device. This can be 'now'. Time Point @@ -30,8 +30,9 @@ DateTime - The date and time of the last update in UTC as submitted by the weather station converted to a DateTime - value. In case of 'now', the current time is used. + The date and time of the last update in UTC as submitted by the device converted to a DateTime + value. In + case of 'now', the current time is used. Time Point @@ -126,8 +127,8 @@ Number:Dimensionless - - Humidity in %. + + Outdoor humidity in %. Humidity Measurement @@ -157,7 +158,7 @@ Measurement Temperature - + @@ -182,7 +183,7 @@ Measurement Temperature - + @@ -195,7 +196,7 @@ Measurement Temperature - + @@ -303,13 +304,13 @@ Number:Intensity - Solar radiation + Solar radiation in W/m2. Sun Measurement Light - + @@ -332,7 +333,7 @@ Measurement - + @@ -344,7 +345,7 @@ Measurement - + @@ -355,7 +356,7 @@ Measurement - + @@ -366,7 +367,7 @@ Measurement - + @@ -377,7 +378,7 @@ Measurement - + @@ -388,7 +389,7 @@ Measurement - + @@ -399,7 +400,7 @@ Measurement - + @@ -410,7 +411,7 @@ Measurement - + @@ -421,7 +422,7 @@ Measurement - + @@ -432,7 +433,7 @@ Measurement - + @@ -443,7 +444,7 @@ Measurement - + @@ -454,7 +455,7 @@ Measurement - + @@ -465,7 +466,7 @@ Measurement - + @@ -476,7 +477,7 @@ Measurement - + @@ -487,7 +488,7 @@ Measurement - + @@ -498,7 +499,7 @@ Measurement - + @@ -509,7 +510,7 @@ Measurement - + @@ -520,7 +521,7 @@ Measurement - + @@ -531,7 +532,7 @@ Measurement - + @@ -542,13 +543,13 @@ Measurement - + String - A software type string from the weather station + A software type string from the device Text @@ -556,7 +557,7 @@ Number - How often does the weather station submit measurements + How often does the device submit measurements Number @@ -565,7 +566,7 @@ String state - The part of the last query after the first unurlencoded '?' + The query part of the last request from the device @@ -573,7 +574,7 @@ String trigger - The part of the last query after the first unurlencoded '?' + The query part of the last request from the device diff --git a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/thing/thing-types.xml index aee394e4b..1e86328af 100644 --- a/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.wundergroundupdatereceiver/src/main/resources/OH-INF/thing/thing-types.xml @@ -28,7 +28,7 @@ The wunderground.com update api requires a station id, that is defined for the WeatherUnderground account measurements are to be submitted to.

- In this binding it is used to identify a unique thing, so each weather-station or + In this binding it is used to identify a unique thing, so each device or other apparatus submitting measurements can have a separate id, but if you don't intend to forward the observations to wunderground.com, this value can be any non-blank string. ]]>