I know that due to how the model works, channel values aren’t captured unless there’s a matching item. But some bindings have ambiguously-named channels and if you’re looking for a particular value, it’s not always obvious which channel it will be in. Usually when adding a new binding, I’ll create a bunch of items, review the results and then go back and delete the unwanted ones. This is a bit of an effort though. (I use an items file, but even in the UI, it’s a number of steps and can leave artifacts.)
It would be nice in the UI to offer a way to “peek” at channel values, maybe by creating a temporary item, showing the value and then deleting the item, all in one step. Is anything like this on the roadmap?
Channels don’t have values to peek at, they pass events.
Yes, that’s exactly the issue. Those events most commonly go to items, where they set item values. If you’re looking at a thing with 20 channels, maybe you want to create an item bound to one of those channels to get the value you need, but it’s not obvious which channel will provide the value you’re looking for.
So it would be nice in the UI to see the value supplied by a channel, without going through all of that effort. I know the model doesn’t allow this… hence the suggestion to maybe use transient items to expose a channel’s supplied value without so many steps.
Obviously this won’t work for all channels (some are consumers rather than providers) but I think it would work for the vast majority of cases and would lead to faster/easier adoption.
Okay, so to avoid creating Items you want the system to automatically create Items for you and add them automatically to your UI?
And maybe automatically delete them again when … something?
The uh general experience of an OH2 feature like this was not positive.
All channels offered by a Thing (with a few exceptions like Zwave or Zigbee) should be documented in the binding’s readme. If it’s unclear what a Channel represents in the docs, please file an issue or even better if you figure out what the Channel represents file an update to the docs to make that more clear.
It should only very rarely be unclear what a Channel is for, if you look at the docs.
I’m not looking to avoid creating items. Only to avoid creating unnecessary items that I don’t plan to keep, while looking for the channel that contains a certain value.
I’ll give you a real-world example. I recently installed the Hayward Omnilogic binding for my pool automation. My pool controller has several sensors but they all have arbitrary ID numbers. When first creating things and/or items, there’s no way to know which channel is which.
So while looking at the things (either existing or in the inbox), it would be nice to click on a channel and say: “show me the value this channel would provide right now, if I were to create an item for it.”
I think the only way to accomplish this would be to create a transient item, wait for it to get a value, snag and display the value, and then delete the item. But the real goal is just to easily get a peek at the value provided by the channel.