Critical ! Message is discarded when MQTT out node is in Connection state

You could queue the messages with the delay node and rate limit, set to a high rate delay. Then use a status node to start flushing the messages, once connected and queue again if disconnected. read the help text on these nodes to see how this would work, there are also many examples of this on the forum, This post may help to