Regarding difference b/w Message Id and ApplicationMessageID

Hi @amol_p81 . The JMS header property “JMSMessageID” maps to “ApplicationMessageID” in the Solace C (CCSMP) API, as well as JCSMP and others. https://solace.com/blog/inside-a-solace-message-using-header-properties/

The Message ID is (sometimes) automatically set by the broker, depending on various things. Applications should not rely on them… consider it “internal use only”. The can mean something when using Guaranteed (Persistent) publishing, and correlating acknowledgements. Generally, you can ignore the MessageID field. It will reset possibly during broke\r failovers and/or application restarts. (XMLMessage (Solace Messaging API for Java v10.25.2) JavaDocs with good explanation)

So, yes, there is no automatic way of setting the ApplicationMessageId in C or other APIs… the application must set it “manually”.