参考这篇文章,我想我知道 QoS1 和 QoS2 消息之间的区别,但我不知道将它们作为 Paho MQTT 客户端处理的区别。
想象一下,我订阅了这样的主题:
MqttClient subscriber = new MqttClient(SERVER_URI, SUBSCRIBER_ID);
subscriber.subscribe(TOPIC);
然后我发布这样的消息:
publisher.publish(TOPIC, PAYLOAD, 1, false);
目前我正在使用 MqttCallback 接口来处理到达订阅者的消息。
有一种方法可以覆盖:
public void messageArrived(String topic, MqttMessage mqttMessage) {
if(mqttMessage.isDuplicate()) {
// is it really the duplicate message from my perspective?
} else {...}
}
在 MqttMessage 我们可以找到一个 isDuplicate() 方法,但是我如何确定返回 true 的 mqttMessage 不是我的订阅者收到的第一条消息?
我对找到一个显示如何处理 QoS1 的解决方案非常感兴趣,但是每一个能澄清这里任何事情的答案都将不胜感激。
来自克拉科夫的问候!