@@ -36,6 +36,7 @@ Dcdbpusher will check the given file-path for the global configuration file `glo
`global.conf` should have the following scheme:
```
global {
restAddr localhost:8000
mqttBroker localhost:1883
mqttprefix /00112233445566778899AABB0000
threads 24
...
...
@@ -62,6 +63,7 @@ Explanation of the values:
| Value        | Explanation |
|:----- |:----------- |
| global | Wrapper structure for the global values.
|   restAddr | Define address and port where the REST API should run on. See the corresponding [section](#restAPI) for more information.
|   mqttBroker | Define address and port of the MQTT-broker which collects the messages (sensor values) send by dcdbpusher.
|   mqttprefix | To not rewrite a full MQTT-topic for every sensor one can specify here a consistend prefix.
|   threads | Specify how many threads should be created to handle the sensors async. Default value of threads is 1. Note that the MQTTPusher always starts an extra thread. So the actual number of started threads is always one more than defined here. Specifying not enough threads can result in a delay for some sensors until they are read.
...
...
@@ -79,6 +81,12 @@ Explanation of the values:
Formats of the other sensor-specific config-files are explained in the corresponding [subsections](#IPMI). Example configuration-files can be found in the `config/` directory.
## <a name="restApi">REST API</a>
Dcdbpusher provides some functionality to be controlled over a REST API. The API is by default hosted at port 8000 on the localhost but the address can be changed in the [`global.conf`](#GC).
Currently dcdbpusher allows to switch plugins on or off via the REST API. To do so, one has to send a PUT request of the form `host:port/pluginName/start|stop?authkey=YourToken` to the API.
## MQTT topic
For communication between the different DCDB-components (database, dcdbpusher) the [MQTT protocol](https://mqtt.org/) is used. In order to identify each sensor, everyone has to have a unique MQTT topic assigned. A MQTT topic for DCDB consists of exactly 128 bits (= 32 hex characters), not including '/' separators.