Section | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Overview of MQTT topics
The communication among the modules is done through the MQTT broker using a set of topics and subtopics. The following table gives you a general overview of the topics that you can observe in our broker. Knowing this is important in order to do installation and configuration tests, as it gives you real time information of the status of the system. If you are going to connect to the broker you can use any MQTT tool that is available. We recommend using MQTT.fx, a JavaFX client based MQTT client that will allow you connect to the broker, subscribe to topics and publish information.
...
MQTT topic/subtopic | Used for | Description |
---|---|---|
config/complete | System Configuration | This topic contains the complete XML configuration of the system, as published by the Config Provider. When the config provider receives a new configuration (in the topic config/complete_update) and the configuration is confirmed to be valid, it publishes it in this topic as the latest valid configuration. Please do not use it for configuration changes, use the following topic (config/complete_update). You can use it to know the latest configuration that was distributed in the system. |
config/complete_update | System Configuration | This topic is used to update the configuration. An update configuration job will publish here the configuration in order to be received by the Config Provider. Technicians will also use this topic for quick tests during installation. |
config/module/%ModuleName% | Module configuration | Every module receives after starting a configuration from the module Config Provider. This configuration includes which gateways, sensors and actions the module is responsible for. With this information, each module can build its internal configuration and start performing its tasks. |
jobs/# | Jobs | Jobs are scripts that are passed from the cloud server to the Site Controller in order to perform a task. They are managed by the Job Processor module. A job can be anything, for example a new configuration, update of the system, change in an access control list for a site, etc. Please refer to our Jobs guide in order to get more information. |
raw_result/%GatewayName% | Raw results | Raw results are provided by the gateways and publish the information that they gather to a topic with the gateway name. Internally, modules publishes values to this topic in order to be processed by the Raw Results Demultiplexer. This results are measurements that come in a raw format as they come from the devices, without calibrations, grouping or evaluations of any kind. |
calibrated_result/%SensorName% | Calibrated results | Calibrated results are the outcome of the processing of the Raw results by the Raw Results Demultiplexer module. They can also be directly generated by some modules, like the Automation Controller or Virtual Sensor Provider. The content of a Calibrated result is a meaningful piece of data, that belongs to a sensor. This information will be processed by the Calibrated Results Evaluator module to generate events depending on its value. |
events/%SYSID%/Sensorname | Events | Events are special situations or changes of state on calibrated results. An event can be generated by the Calibrated Results Evaluator, an Action or the Automation Controller. They are immediately delivered to the cloud and reflect the current state of a sensor (its value will be in the calibrated_result). |
cloud/%SYSID%/exec_action/# | Action execution | When an action is published in this topic (do not be confused by the name, it is internal to the MQTT broker), an Actuator Module responsible for the action will execute them. Examples of actuator modules are the Modbus Daemon, Virtual Sensor Provider, Snmp daemon, Trap daemon. Actions can be published here by the Automation Controller, the Command Line Interface and the Cloud Connector (when the action has been requested to be executed from the cloud). |
Tip | |||||
---|---|---|---|---|---|
Enclose parameters and paths into double brackets
when typing and Confluence automatically applies the preformat style. |
Right: Headings use Capitalization for Nouns and Important Information and Words 4+ Letters
Wrong: Headings use capitalization for nouns and important Information and words 4+ letters
Writing Instructions
Instructions are numbered lists and links in the software are bold with arrows (dash plus > becomes: → ):
- Open Components → Edit and set your new component name
- Choose Lorem Ipsum and do something
XML snippets go into a code bracket with type XML: {code:xml
} (this will insert a code macro here) like this:
...
<here is some></here is some>
Screenshots
Screenshots use a Drop Shadow effect which can be accessed by Edit → Properties
Writing Best Practice
...
Connection to a topic
Text
Next Steps
Info |
---|
|