QoS1 message can't be shown anywhere

Hi, I started to use MQTT CLI as it looks fine.
It’s good and almost works I expected. but there is one issue I’m facing.

I can’t see published message if it’s QoS1 and sent when disconnected. I’m using -oc and -of option, but no output to both console and file.
But by seeing broker’s log, the CLI client received the message and sent PUBACK to the broker properly.

If I publish a message during connected, I can see a message in both console and file.

Is there a way to see the message with CLI ?

Hi @Seiji,

thank you for the feedback.
Could you provide your used commands and setup so that I can reproduce the problem?

Best regards
Till

Thank you for your reply.
I used this command.

mqtt sub -t TOPIC -oc -i IDENTIFIER -h HOST -p 1883 -u USER -pw PASSWORD -q 1 --no-cleanStart -of FILE -V 3

Steps:

  1. execute the command
  2. publish a message with QoS1
  3. CLI shows the message. (this is OK)
  4. disconnect the session
  5. publish message with QoS1
  6. execute the command
  7. no message appeared. but broker received PUBACK from CLI

And I also tried shell mode but the result was the same.
The command is:

$ mqtt sh
mqtt> con -i IDENTIFIER -h HOST -p 1883 -u USER -pw PASSWORD --no-cleanStart -V 3
IDENTIFIER@HOST> sub -t TOPIC -q 1 -oc -of FILE

FYI, I’m using CLI installed by brew install mqtt-cli on macOS 10.14.5.

Thank you for your detailed description, Seiji.

I can confirm this as a bug in the cli as there is currently no behavior for printing out QoS1 publishes when the client reconnects.
Therefore i converted your description into a bug report on github and will address this as soon as possible.

I am sorry for the inconvenience and will also keep you updated in this thread.

Update 17.10.19: I just merged the Fix for this report. It will be released with the 1.1 release of the CLI which should be coming up in the next month.

1 Like