When an MQTT client is not connected
When a client is not connected the queue manager can continue to receive publications on its behalf. They are forwarded to the client when it reconnects. A client can create a
Last will and testament, which the queue manager publishes on behalf of the client, if the client disconnects unexpectedly.To be notified when the client unexpectedly disconnects, we can register a last will and testament publication; see Last will and testament publication. It is sent by the telemetry (MQXR) service, if it detects the connection to the client has broken without the client requesting it.
A client can publish a retained publication at any time; see Retained publications and MQTT clients. A new subscription to a topic can request to be sent any retained publication associated with topic. If you create the last will and testament as a retained publication, we can use it to monitor the status of a client.
For example, the client publishes a retained publication, when it connects, advertising its availability. At the same time, it creates a retained last will and testament publication that announces its unavailability. In addition, just before it makes a planned disconnection, it publishes its unavailability as a retained publication. To find out whether the client is available, you would subscribe to the topic of the retained publication. You would always receive one of the three publications.
If the client is to receive messages published when it is disconnected, then reconnect the client to its previous session; see MQTT stateless and stateful sessions. Its subscriptions are active until they are deleted, or until the client creates a clean session.
Parent topic: MQ Telemetry overview