The Xentara C++ Control Engine v1.0.1
User Manual
JSON Format for Control

A JSON object describing a CPP control element has the following syntax:

{
"@Skill.CPP.Control": {
"name": "Control",
"UUID": "53fd995e-84b1-45da-9f2f-634764adfa2d",
"controlPath": "libcontrol.so",
"parameters": { ... }
}
}

Object Members
controlPathA string indicating the absolute or relative path to the compiled control library. If you place the compiled control in a directory named control within the standard configuration directories, you may use a relative path, specifying the value as control/your-control-binary-file for this parameter.
parametersAn optional object containing key-value pairs for configuration parameters that may be used during control initialization and operation. Each key represents a configuration name that you can use in your control. The value can be a number, text, timestamp, UUID, or the primary key of a Xentara datapoint.

A JSON object describing a CPP control element with configuration parameters has the following syntax:

{
"@Skill.CPP.Control": {
"name": "Control",
"UUID": "53fd995e-84b1-45da-9f2f-634764adfa2d",
"controlPath": "libcontrol.so",
"parameters": {
"lowerThreshold": 31.25,
"upperThreshold": 33,
"temperature input": "Sensor.Temperature",
"heater state": "Hardware.Heater State"
}
}
}

The Sensor.Temperature and Hardware.Heater State are Xentara datapoints and they originate from different Xentara skills. Sensor.Temperature provides the temperature reading from the sensor, while Hardware.Heater State manages the heater's state.