diff --git a/bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/handler/MiIoBasicHandler.java b/bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/handler/MiIoBasicHandler.java index 92df54e41..f8fadf3b5 100644 --- a/bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/handler/MiIoBasicHandler.java +++ b/bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/handler/MiIoBasicHandler.java @@ -12,7 +12,7 @@ */ package org.openhab.binding.miio.internal.handler; -import static org.openhab.binding.miio.internal.MiIoBindingConstants.CHANNEL_COMMAND; +import static org.openhab.binding.miio.internal.MiIoBindingConstants.*; import java.awt.Color; import java.io.IOException; @@ -452,6 +452,7 @@ public class MiIoBasicHandler extends MiIoAbstractHandler { thingBuilder.withoutChannel(new ChannelUID(getThing().getUID(), channel)); } ChannelBuilder newChannel = ChannelBuilder.create(channelUID, datatype).withLabel(friendlyName); + boolean useGenericChannelType = false; if (!channelType.isBlank()) { ChannelTypeUID channelTypeUID = new ChannelTypeUID(channelType); if (channelTypeRegistry.getChannelType(channelTypeUID) != null) { @@ -459,7 +460,13 @@ public class MiIoBasicHandler extends MiIoAbstractHandler { } else { logger.debug("ChannelType '{}' is not available. Check the Json file for {}", channelTypeUID, getThing().getUID()); + useGenericChannelType = true; } + } else { + useGenericChannelType = true; + } + if (useGenericChannelType) { + newChannel = newChannel.withType(new ChannelTypeUID(BINDING_ID, datatype.toLowerCase())); } thingBuilder.withChannel(newChannel.build()); return channelUID; diff --git a/bundles/org.openhab.binding.miio/src/main/resources/OH-INF/thing/commonChannels.xml b/bundles/org.openhab.binding.miio/src/main/resources/OH-INF/thing/commonChannels.xml index 27cbfcbbb..30ee2b821 100644 --- a/bundles/org.openhab.binding.miio/src/main/resources/OH-INF/thing/commonChannels.xml +++ b/bundles/org.openhab.binding.miio/src/main/resources/OH-INF/thing/commonChannels.xml @@ -14,6 +14,52 @@ + + + Color + + + + Contact + + + + DateTime + + + + Dimmer + + + + Image + + + + Location + + + + Number + + + + Player + + + + Rollershutter + + + + String + + + + Switch + + + String