|
|
|
Re: New (static) channels are not shown/added for things already existing [message #1736983 is a reply to message #1735796] |
Mon, 04 July 2016 19:03 |
|
Kai, I already think about this one. Not to find a general solution for the framework but how a binding or binding developer could handle that in the develop phase.
There is already a method to change the thing type.
WDYT, could (for a custom binding) this method work (if I refer to 'thing property' here, I assume something that is allowed to be written by the binding / thing handler and is persistent -- so, not the real thing properties):
* if there is no 'created_version'' property, it is created with the current version of the binding (so, only once)
* if the property is available and does not fit to (is lower then) the current version of the binding, the property is removed and the 'change thing type' method is called (using the same thing type but another UID)
* the thing will be created again and the handler will add created_version with the current one again.
I am only interested if this could be working while the development phase where a thing changes very frequently.
I don't know if a binding should ever remove or add channels. But IMHO it is difficult to decide.
If a handler does not send updates to a previously channel anymore, it is rather useless, but removing it could be lead perhaps to a wired user experience (User: "Hey, where is my channel now??").
Adding channels is perhaps not such a problem, but at least we do not know if a thing has been created by the DSL or something similar...
|
|
|
|
Re: New (static) channels are not shown/added for things already existing [message #1737621 is a reply to message #1737618] |
Mon, 11 July 2016 11:04 |
|
If I develop my bindings I have to add, remove and rename channel types and channel ids of a thing frequently.
Sure, perhaps I should do all correctly once and never change stuff again, but some knowledge of devices has to be learned by development... [see below]
If the development is done, I normally have not to add or remove channels because the real device is nothing that changes anymore.
Why do you think I should remove all my code?
For example EnOcean devices should use EEPs for communication.
A device manufacturer states that its device is using EEP xx-yy-zz.
But if you use the EEP xx-yy-zz you identify that it is not EEP conform.
* some stuff of the EEP is not supported -> remove channels because unused
* some stuff of the EEP is used differently -> change channels
* some stuff that is not part of the EEP is implemented on some proprietary fashion -> add channels
So, the thing-type for this devices changes while development.
After I have added this specific device, it does not change anymore.
I have written "I am only interested" and that I does not search for a general solution for myself.
I never have written that this is a "development feature" only. I only have written how this topic fits to me at the moment.
|
|
|
|
Powered by
FUDForum. Page generated in 0.04400 seconds