diff --git a/org.eclipse.paho.client.mqttv3/src/main/java/org/eclipse/paho/client/mqttv3/MqttClient.java b/org.eclipse.paho.client.mqttv3/src/main/java/org/eclipse/paho/client/mqttv3/MqttClient.java index 635568cf..57baa4c6 100644 --- a/org.eclipse.paho.client.mqttv3/src/main/java/org/eclipse/paho/client/mqttv3/MqttClient.java +++ b/org.eclipse.paho.client.mqttv3/src/main/java/org/eclipse/paho/client/mqttv3/MqttClient.java @@ -567,7 +567,11 @@ public void publish(String topic, byte[] payload,int qos, boolean retained) thro */ public void publish(String topic, MqttMessage message) throws MqttException, MqttPersistenceException { - aClient.publish(topic, message, null, null).waitForCompletion(getTimeToWait()); + if (message.getQos() == 0) { + getTopic(topic).publish(message); + } else { + aClient.publish(topic, message, null, null).waitForCompletion(getTimeToWait()); + } } /**