]> git.basschouten.com Git - openhab-addons.git/commitdiff
[tr064] Adds new channels for DSL Max & Current Down-/Upstream Rate (#9519)
authorStefan Giehl <stefan@matomo.org>
Fri, 25 Dec 2020 21:15:54 +0000 (22:15 +0100)
committerGitHub <noreply@github.com>
Fri, 25 Dec 2020 21:15:54 +0000 (22:15 +0100)
Signed-off-by: Stefan Giehl <stefangiehl@gmail.com>
bundles/org.openhab.binding.tr064/README.md
bundles/org.openhab.binding.tr064/src/main/java/org/openhab/binding/tr064/internal/soap/SOAPValueConverter.java
bundles/org.openhab.binding.tr064/src/main/resources/channels.xml

index 3690b83db730da9e2bf75cabd6b25df22e5612f8..9017484a8717ba9bd8e79d0a6ef8a6ced085994e 100644 (file)
@@ -78,12 +78,16 @@ This is an optional parameter and multiple values are allowed.
 | `callList`                 | `String`                  |     x    | A string containing the call list as JSON (see below)          |    
 | `deviceLog`                | `String`                  |     x    | A string containing the last log messages                      |
 | `dslCRCErrors`             | `Number:Dimensionless`    |     x    | DSL CRC Errors                                                 |
+| `dslDownstreamMaxRate`     | `Number:DataTransferRate` |     x    | DSL Max Downstream Rate                                        |
+| `dslDownstreamCurrRate`    | `Number:DataTransferRate` |     x    | DSL Curr. Downstream Rate                                      |
 | `dslDownstreamNoiseMargin` | `Number:Dimensionless`    |     x    | DSL Downstream Noise Margin                                    |
 | `dslDownstreamAttenuation` | `Number:Dimensionless`    |     x    | DSL Downstream Attenuation                                     |
 | `dslEnable`                | `Switch`                  |          | DSL Enable                                                     |
 | `dslFECErrors`             | `Number:Dimensionless`    |     x    | DSL FEC Errors                                                 |
 | `dslHECErrors`             | `Number:Dimensionless`    |     x    | DSL HEC Errors                                                 |
 | `dslStatus`                | `Switch`                  |          | DSL Status                                                     |
+| `dslUpstreamMaxRate`       | `Number:DataTransferRate` |     x    | DSL Max Upstream Rate                                          |
+| `dslUpstreamCurrRate`      | `Number:DataTransferRate` |     x    | DSL Curr. Upstream Rate                                        |
 | `dslUpstreamNoiseMargin`   | `Number:Dimensionless`    |     x    | DSL Upstream Noise Margin                                      |
 | `dslUpstreamAttenuation`   | `Number:Dimensionless`    |     x    | DSL Upstream Attenuation                                       |
 | `inboundCalls`             | `Number`                  |     x    | Number of inbound calls within the given number of days.       |
index f653d23836608e658cc462c74abb983973ebdf3d..e3436141acd9d598d125831788807d1ebee8e7a3 100644 (file)
@@ -85,6 +85,7 @@ public class SOAPValueConverter {
             switch (dataType) {
                 case "ui2":
                     return Optional.of(String.valueOf(value.shortValue()));
+                case "i4":
                 case "ui4":
                     return Optional.of(String.valueOf(value.intValue()));
                 default:
@@ -94,6 +95,7 @@ public class SOAPValueConverter {
             switch (dataType) {
                 case "ui2":
                     return Optional.of(String.valueOf(value.shortValue()));
+                case "i4":
                 case "ui4":
                     return Optional.of(String.valueOf(value.intValue()));
                 default:
@@ -132,6 +134,7 @@ public class SOAPValueConverter {
                 case "string":
                     return new StringType(rawValue);
                 case "ui2":
+                case "i4":
                 case "ui4":
                     if (!unit.isEmpty()) {
                         return new QuantityType<>(rawValue + " " + unit);
index a321c7066ea93cfd13e78799d8133f5c7745371c..be6743f0643cf2ab4f41db409a37332553443b88 100644 (file)
                        serviceId="urn:WANDSLIfConfig-com:serviceId:WANDSLInterfaceConfig1"/>
                <getAction name="GetInfo" argument="NewStatus"/>
        </channel>
+       <channel name="dslDownstreamMaxRate" label="DSL Max Downstream Rate">
+               <item type="Number:DataTransferRate" unit="kbit/s" statePattern="%.1f Mbit/s"/>
+               <service deviceType="urn:dslforum-org:device:WANDevice:1"
+                       serviceId="urn:WANDSLIfConfig-com:serviceId:WANDSLInterfaceConfig1"/>
+               <getAction name="GetInfo" argument="NewDownstreamMaxRate"/>
+       </channel>
+       <channel name="dslUpstreamMaxRate" label="DSL Max Upstream Rate">
+               <item type="Number:DataTransferRate" unit="kbit/s" statePattern="%.1f Mbit/s"/>
+               <service deviceType="urn:dslforum-org:device:WANDevice:1"
+                       serviceId="urn:WANDSLIfConfig-com:serviceId:WANDSLInterfaceConfig1"/>
+               <getAction name="GetInfo" argument="NewUpstreamMaxRate"/>
+       </channel>
+       <channel name="dslDownstreamCurrRate" label="DSL Curr. Downstream Rate">
+               <item type="Number:DataTransferRate" unit="kbit/s" statePattern="%.1f Mbit/s"/>
+               <service deviceType="urn:dslforum-org:device:WANDevice:1"
+                       serviceId="urn:WANDSLIfConfig-com:serviceId:WANDSLInterfaceConfig1"/>
+               <getAction name="GetInfo" argument="NewDownstreamCurrRate"/>
+       </channel>
+       <channel name="dslUpstreamCurrRate" label="DSL Curr. Upstream Rate">
+               <item type="Number:DataTransferRate" unit="kbit/s" statePattern="%.1f Mbit/s"/>
+               <service deviceType="urn:dslforum-org:device:WANDevice:1"
+                       serviceId="urn:WANDSLIfConfig-com:serviceId:WANDSLInterfaceConfig1"/>
+               <getAction name="GetInfo" argument="NewUpstreamCurrRate"/>
+       </channel>
        <channel name="dslDownstreamNoiseMargin" label="DSL Downstream Noise Margin">
                <item type="Number:Dimensionless" unit="dB" statePattern="%.1f dB"/>
                <service deviceType="urn:dslforum-org:device:WANDevice:1"