访问 MQTT 异步消息
Access MQTT asynchronous messages
我有一个侦听器 class(Java),它通过 MQTT 订阅了多个主题。我想访问从另一个 class 发布到我的听众的消息。这该怎么做?
目标是将侦听器 class 的输出提供给持续刷新的 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());
}
});
我有一个侦听器 class(Java),它通过 MQTT 订阅了多个主题。我想访问从另一个 class 发布到我的听众的消息。这该怎么做? 目标是将侦听器 class 的输出提供给持续刷新的 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());
}
});