]> git.basschouten.com Git - openhab-addons.git/commitdiff
[miio] also refresh after custom commands (#10714)
authorMarcel <marcel@verpaalen.com>
Wed, 26 May 2021 19:04:19 +0000 (21:04 +0200)
committerGitHub <noreply@github.com>
Wed, 26 May 2021 19:04:19 +0000 (21:04 +0200)
Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/handler/MiIoBasicHandler.java
bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/handler/MiIoVacuumHandler.java

index a41be4897d1bd2fc7efaf080d7e2cdf08b42f64b..101e7a7895f088db420ebf35fc930b2f8b96f34a 100644 (file)
@@ -130,8 +130,8 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
             }
             return;
         }
-        if (channelUID.getId().equals(CHANNEL_COMMAND)) {
-            cmds.put(sendCommand(command.toString()), command.toString());
+        if (handleCommandsChannels(channelUID, command)) {
+            forceStatusUpdate();
             return;
         }
         logger.debug("Locating action for {} channel '{}': '{}'", getThing().getUID(), channelUID.getId(), command);
@@ -263,15 +263,19 @@ public class MiIoBasicHandler extends MiIoAbstractHandler {
                     }
                 }
             }
-            updateDataCache.invalidateValue();
-            miIoScheduler.schedule(() -> {
-                updateData();
-            }, 3000, TimeUnit.MILLISECONDS);
+            forceStatusUpdate();
         } else {
             logger.debug("Actions not loaded yet, or none available");
         }
     }
 
+    private void forceStatusUpdate() {
+        updateDataCache.invalidateValue();
+        miIoScheduler.schedule(() -> {
+            updateData();
+        }, 3000, TimeUnit.MILLISECONDS);
+    }
+
     private @Nullable JsonElement miotTransform(MiIoBasicChannel miIoBasicChannel, @Nullable JsonElement value) {
         JsonObject json = new JsonObject();
         json.addProperty("did", miIoBasicChannel.getChannel());
index f52e473bbfd435ba1d425b0fe6a43ed859caa126..e3b36f664e4894737cbeb0418600f19a7555254d 100644 (file)
@@ -190,6 +190,7 @@ public class MiIoVacuumHandler extends MiIoAbstractHandler {
             return;
         }
         if (handleCommandsChannels(channelUID, command)) {
+            forceStatusUpdate();
             return;
         }
         if (channelUID.getId().equals(CHANNEL_VACUUM)) {