The current version of SIMOC SAM (aka SIMOC live) relies on a custom implementation using websockets. This issue is about moving from that to a new implementation based on MQTT.
Plan
[x] research/select a server/broker and client implementation
[x] update BaseSensor class to support MQTT through paho-mqtt
[ ] possibly add additional scripts to start/stop/manage/test the new setup
Open issues
Should this completely replace the socketio implementation, or be added as an alternative?
we should support multiple protocols (MQTT, socketio, DDS, etc.)
Should SIMOC (the web interface/dashboard) connect directly to the MQTT broker, or should we have an MQTT subscriber that keeps relying all messages to the dashboard through socketio?
there should be a subscriber in the backend that receives all data and sends them to the frontend through socketio
How much of the MQTT implementation do we want to expose to the dashboard? Should we have panels able to subscribe to certain MQTT topics?
the dashboard shouldn't know about the protocols used by the backend
The current version of SIMOC SAM (aka SIMOC live) relies on a custom implementation using websockets. This issue is about moving from that to a new implementation based on MQTT.
Plan
apt-get
abile, no setup requiredmosquitto_pub
andmosquitto_sub
as clientspaho-mqtt
as pub/sub clientsBaseSensor
class to support MQTT throughpaho-mqtt
Open issues
See the MQTT support page for further instructions.