this for the sparkplug namespace, instead for another namespace or a custom one?
Is it possible to have certainty to receive all messages in the case of connection problems
Thank you
To allow MQTT Engine to subscribe on QoS1 with cleanSession=false, set the following:
In the Server configuration of Engine, make sure the ‘Client ID’ is set to something unique and non-null under the advanced section. This is required for cleanSession=false MQTT Sessions to ensure auto-generated client IDs are not used which would change across sessions.
In the Server configuration of Engine, set ‘Clean Session’ to ‘false’ under the advanced section.
In the Custom Namespace configuration, set the QoS1 to ‘true’
Note if QoS1 is set on a custom namespace and either clientID is not set or cleanSession=true, a warning will be logged and Engine will subscribe at QoS0 for the custom namespace.
Bump this thread - has anyone gotten the QoS 1 to work? I followed Wes’ suggestion on the additions that need to be made to engine, but it is still reporting a QoS of 0. Any help would be appreciated.
I got it working by following @wes0johnson instructions, using Ignition v7.9.18 and Engine v3.4.12.
Beware when copy/pasting Wes’s string in the Custom Properties section: because of the formatting used on the forum, the double-quotes are not properly written and the configuration options for QoS1 do not appear.
This should do the trick: {"allowCustomNamespacesQos1":true}
Also, I should note in order for this to work, the MQTT Client ID in the Engine Server settings must be set to something non-blank. Otherwise, the ‘clean_session = false’ setting will have no effect because Engine will generate random client ID which defeats the purpose of clean_session=false.