Open egekorkan opened 1 year ago
So, BACnet's approach is that only the numeric values (unsigned, enum, boolean) are transferred over the wire. Strings remain on the state-text property on multistate objects (and active-text, inactive-text properties on binary objects), and BACnet clients can use these strings to show the actual value of the object as a string instead of the numeric value.
In WoT-BACnet protocol binding we mimic this behavior with the ValueMap. Data schema is based on strings, which is then mapped to protocol-specific numeric values in the Form using the ValueMap.
As seen in https://github.com/BrickSchema/Brick/issues/566, a property can have 3 values i.e.
State_Text = ("Off", "On_Low", "On_High")
but these are not what is sent via the protocol. Based on the implementation, these "meanings" can be mapped to different numbers. E.g. one implementation says that "Off" is 0 where the other has that as "2". We can solve this with TDs