You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If we receive UNSUPPORTED_ATTRIBUTE during a read attribute request, we should mark this attribute unsupported so that applications can use this information.
The text was updated successfully, but these errors were encountered:
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
I would like to implement this as it will make applications more mindful of unsupported attributes and we can avoid requesting them. However, despite the apparent simplicity, is may end up a breaking change to some extent.
There are currently a couple of systems in place for tracking supported attributes -:
The supportedAttributes list in ZclCluster. This is updated when the user explicitly requests the list from the remote device. This is not always implemented on remote devices though.
The ZclAttribute class has an isImplemented method.
There are a few options - all have drawbacks, but I propose the following -:
We change the ZclAttribute.isImplemented method (or add a new method) that returns "implemented", "unimplemented" and "unknown". This could be a Boolean returning TRUE, FALSE, and null. This state can be updated when either the list of supported attributes is requested, and also when the UNSUPPORTED_ATTRIBUTE` is returned to a read request.
The main downside to this is that it will have an impact on the ZclAttributeDao class since that will also need to change and it's probably not possible to support the current implementation which is boolean for the current implemented member. That means when restoring the state, we loose the three options.
I will leave this a few weeks before implementing this and welcome any thoughts.
If we receive
UNSUPPORTED_ATTRIBUTE
during a read attribute request, we should mark this attribute unsupported so that applications can use this information.The text was updated successfully, but these errors were encountered: