New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LWT not sent on exceeded timeout #1143
Comments
It should be sent, the only case a MQTT 3.1.1 will shouldn't be sent is when the client sends a DISCONNECT. I'll take a look. |
I've fixed this in my local branch which will be part of 1.5.6 soon. Thanks very much! |
Was this a regression? I know I've tested cable pulling before. |
Just on websockets, yes. |
I have a similar issue in 1.6.2 My client connects with:
Then I unplug the client device and wait. As expected log shows:
But the LWT is not sent. Here the full session with one subscriber from mosquitto log:
|
Mosquitto version: 1.5.5
The following code is used to test LWT functionality in mosquitto over websockets.
There is a load balancer (traefik) that directs the websockets connection to mosquitto.
When there is an unclean disconnect (python script is killed with SIGKILL - not SIGINT), the LWT is sent, as expected.
However, unplugging the device's network cable to simulate a loss of connectivity results in mosquitto logging the following, and no LWT is ever sent:
Should a LWT be sent in this case? How is one to know when a client is offline if no LWT is sent on timeout?
The text was updated successfully, but these errors were encountered: