Как реализовать шаблон запроса-ответа с помощью paho mqtt java? ⇐ JAVA

Программисты JAVA общаются здесь
Anonymous
Как реализовать шаблон запроса-ответа с помощью paho mqtt java?

Сообщение Anonymous »

Я хотел бы использовать Java Paho MQTT и реализовать некоторый шаблон «запрос-ответ». Я имею в виду, что в некоторых случаях клиент должен общаться с сервером и ожидать конкретного ответа на конкретный запрос. Такое ощущение, что в этой библиотеке есть все необходимое для сопоставления запроса и ответа, но я не могу собрать это воедино.

Я обнаружил, что могу получить токен через DeliveryComplete и что я могу выполнить setActionCallback для этого токена. Но во-первых, я не совсем понимаю, что означает «действие». Тогда, если это означает то, что я думаю, как получить оттуда реальный ответ на мой запрос?

sampleClient.setCallback(new MqttCallback() {
@Override
public void connectionLost(Throwable cause) {
}

@Override
public void messageArrived(String topic, MqttMessage message) throws Exception {
System.out.println(topic);
System.out.println("setCallback: "+ message.toString());
}

@Override
public void deliveryComplete(IMqttDeliveryToken token) {
System.out.println(token.getMessageId());
token.setActionCallback(new IMqttActionListener() {
@Override
public void onSuccess(IMqttToken asyncActionToken) {
var response = asyncActionToken.getResponse();

try {
System.out.println(new String(response.getPayload()));
} catch (MqttException e) {
e.printStackTrace();
}
}
@Override
public void onFailure(IMqttToken asyncActionToken, Throwable exception) {
}
});
}
});


Подробнее здесь: https://stackoverflow.com/questions/622 ... -mqtt-java

Вернуться в «JAVA»