messageArrived从未在mqtt paho客户端中调用

时间:2018-07-04 12:47:31

标签: java mqtt paho

我有一个使用mqtt paho版本 MqttConnectOptions.MQTT_VERSION_3_1_1 运行的程序。我订阅了“设备/ + /发布”主题,并且在程序中收到了来自硬件的消息。直到昨天它运行良好,今天我遇到一个问题,即订阅行之后代码未继续执行。我将mqttclient对象更改为MqttAsyncClient。并将代码订阅为

mqttClient.subscribe("device/+/publish", 0 , new IMqttMessageListener() {

                    @Override
                    public void messageArrived(String topic, MqttMessage mqttMessage) throws Exception {
                        // TODO Auto-generated method stub
                        System.out.println(
                                "---------------------------------------------------------------------------------------------------");

                        processMessage(mqttMessage, collarTopic, identity);
                    }
                });

messageArrived也像

一样用MqttCallbackExtended()编写。
mqttClient.setCallback(new MqttCallbackExtended() {
        @Override
        public void messageArrived(String topic, MqttMessage mqttMessage) throws Exception {
            // TODO Auto-generated method stub

            System.out.println(
                    "---------------------------------------------------------------------------------------------------");
            processMessage(mqttMessage, collarTopic, identity);

        }

但这在我的程序中从未调用过。我可以在MQTTBox中看到收到具有相同订阅的消息,但是在我的程序中看不到。

有人可以帮忙吗?

0 个答案:

没有答案