Initialize a new RelayDataObject from a given GetStateDataObject.
Just
Indicates whether the object is considered to be active.
Indeed this only means the name is not 'n.a.'.
Object instance category string.
Sub-index for each category.
Starts counting from 0
at the first object of the instances category.
Used to determine e.g. the relay IDs.
Object display value.
Object value gain.
Object id aka column index.
Object label.
Object value offset.
Raw object input value.
Object unit.
Plain (calculated) object value.
Returns the bit mask for toggling the relay's state using the /usrcfg.cgi
endpoint (see: UsrcfgCgiService).
The service endpoint expects two input values, one defining on/off states and another one for the auto-mode on/off. Both values are simple bit patterns, where every relay has one bit according to its categoryId, which sets its individual state.
Ultimately this means, you have to consider the current on/off and auto state of every single relay to determine the values you need to change a single relays state. This is, where the RelayDataInterpreter comes in.
Set object values based on the raw input values.
The input values correspond to the data rows of the represented column
(except the index
paramter which indeed is the column id/index itself).
Column id/index
Column or data portion name
Column or data portion unit (if applicable in any way)
Column value offset
Column value gain
Column value raw measurement
The RelayDataObject extends the GetStateDataObject by an additional magic bitMask attribute, that determines the correct bitmask to toggle the relay's state.