我有一个通过MQTT订阅了多个主题的侦听器类(Java)。我想访问从另一个类发布到我的侦听器的消息。这该怎么做?
目标是将侦听器类的输出馈送到不断刷新的JFrame中。
最佳答案
你有一个客户
private MqttClient sampleClient;
您需要订阅一些主题:
sampleClient.subscribe(topicToSubscribe);
并设置回调,这样您就可以获取经纪人向您推送的信息(这肯定是您所缺少的)
sampleClient.setCallback(new MqttCallback() {
@Override
public void messageArrived(String topicInforming, MqttMessage mqttMessage) throws Exception {
System.out.println("messageArrived: " + mqttMessage.toString());
}
@Override
public void deliveryComplete(IMqttDeliveryToken arg0) {
System.out.println("DeliveryComplete: " + arg0.getMessageId());
}
@Override
public void connectionLost(Throwable arg0) {
System.err.println("Connection lost: " + arg0.getMessage());
}
});