Here my view on that based on tests.
DMQEligible:
DQMEligible is a problem case introduced likely with a history. It was discussed already in other threads that a publisher flag should not risk message loss and undergo a proper subscriber setting for DMQ.
The default is: false. I heard then in some chats the some libs are changed to have the default set to true. I checked now latest:
JCSMMP => default still false
Javascript => not even telling what is default => not good
Only when using JMS there is a way to overrule the setting JNDI provider connection factory.
But that is just for JMS. So the generic pattern is a setting = false
More info here:
JMSTimestamp
JMSMessageID
I tested both by publish from e.g. javascript and nothing was set.
Only when setting
ApplicationMessageID =>JMSMessageID
SenderTimeStamp => JMSTimestamp
i saw values on jms consumer.
As well a fixed value on JMSMessageID would be worst option.
As that value is defined like that:
Unique Id per message from publisher (so publisher and any event message id) => must be unique
Additional that field is often used for de-dup next to: HDR_DUPLICATE_DETECTION_ID
I will create now another thread to recommend to re-work all library docs to state clearly on each set
the default value set.