channel: change state pattern dynamically [message #1733762] |
Tue, 31 May 2016 09:51  |
Eclipse User |
|
|
|
I have a device that reports energy and power consumption.
The consumer is wired to the device, so the device itself does not know the characteristics of the energy and power consumption.
The reporting of the device itself can be configured.
The unit the value (always integer) is reported (e.g. energy: Ws, Wh, kWh) and some other stuff.
I would like to use thing or channel configuration to leave it to the user to configure the measurement reporting.
Depend on the selection I want to change the state pattern of the channel:
The pattern is stored in the channel-type and not in the channel, so I assume it is not possible ATM.
Is there any way to handle this use case?
The last resort is to use a String item-type for the channel and build the "<value> <unit>" pattern in the code, but I don't like that.
|
|
|
Re: channel: change state pattern dynamically [message #1763837 is a reply to message #1733762] |
Sun, 21 May 2017 16:40  |
Eclipse User |
|
|
|
hi ,
i do have a similar problem.
I am currently writing a binding for openhab for a meter device.
As the meter device send it measurement data as OBIS i get the unit of the values from the meter.
When initializing the thing a build the channels according the initial received values.
How can i problematically change the pattern of the state.
I have tried with below code but the pattern is not showing in paperUI.
ChannelTypeUID channelTypeUID = new ChannelTypeUID(BINDING_ID, CHANNEL_NUMBER);
Map<String, String> properties = new HashMap<String, String>();
properties.put("obis", obis);
properties.put("category", "Energy");
Configuration configuration = new Configuration();
configuration.put("state.pattern", "%d " + obisUnit);
Channel channel = ChannelBuilder.create(new ChannelUID(channelUID), itemType).withLabel(obis)
.withDescription("OBIS data value").withProperties(properties).withConfiguration(configuration)
.withType(channelTypeUID).build();
thanks
Peter
|
|
|
Powered by
FUDForum. Page generated in 1.02358 seconds