public @Nullable Float power;
/** Batttery sensors provide this value */
public @Nullable Integer battery;
+ /**
+ * Some battery sensors (especially Tuya driven devices) provide this boolean
+ * instead of battery level
+ */
+ public @Nullable Boolean lowbattery;
/** Consumption sensors provide this value in Watts/hour. */
public @Nullable Float consumption;
/** Power sensors provide this value in Volt. */
createChannel(CHANNEL_BATTERY_LOW, ChannelKind.STATE);
}
+ if (sensorState.lowbattery != null) {
+ createChannel(CHANNEL_BATTERY_LOW, ChannelKind.STATE);
+ }
+
createTypeSpecificChannels(sensorConfig, sensorState);
ignoreConfigurationUpdate = false;
updateState(channelUID, Util.convertTimestampToDateTime(lastUpdated));
}
break;
+ case CHANNEL_BATTERY_LOW:
+ Boolean lowBattery = newState.lowbattery;
+ if (lowBattery != null) {
+ updateState(channelUID, OnOffType.from(lowBattery));
+ }
+ break;
default:
// other cases covered by sub-class
}