We are publishing messages in Ignition to the MQTT Distributor through the MT Python Scripting API ( system.cirruslink.transmission.publish) and we need to make sure that every one of those messages, published under the same topic gets intercepted by the MQTT Engine Module because its payload contains data that needs to get INSERTED into a DB Table. Basically, is there a way to implement Message Queueing with the three MQTT modules?
You can use MQTT QoS 1 to ensure messages are delivered to MQTT Engine. You will need to specify QoS 1 in your publish call from the Transmission side and configure your MQTT Engine Custom Namespace to subscribe on the appropriate topics using QoS 1. Please see this document for more info on enabling QoS 1 subscriptions for MQTT Engine Custom Namespaces.
Thank you Nathan for your reply! How can I make sure that multiple messages published under the same topic while the MQTT Engine Module is disconnected will get delivered once the module gets a good connection once again?