@thatmaniscool

Paho mqtt, как реализовать получения от брокера?

Написал программу, которая передает сообщения от клиента брокеру, но мне нужно написать программу, которая будет получать сообщения от брокера.
Пример отправки сообщения ниже:

public class MqttPublishSample {
    private String topic = "Lesson_MQTT_server";
    private String content = "Lesson message";
    private String clientId = "random id";
    private String broker = "tcp://m15.cloudmqtt.com:18594";
    private char [] password = "******".toCharArray();
    private String userName = "*****";
    private int qos = 2; // Max quality
    
    private MemoryPersistence persistence;// wtf???
    
    private void MqttMessage (String message) {
        System.out.println (message);
    }
    
    public MqttPublishSample () {
        try {
            persistence = new MemoryPersistence ();
            
            MqttMessage ("Create client");
            MqttClient client = new MqttClient (broker, clientId, persistence);
            
            MqttMessage ("Create setting of connection");
            MqttConnectOptions options = new MqttConnectOptions ();
            options.setCleanSession(true);
            options.setUserName(userName);
            options.setPassword(password);
            
            MqttMessage ("Connect to server");
            client.connect(options);
            if (client.isConnected())
                MqttMessage ("Connect is succeful!");
            else
                MqttMessage ("Connect falls");
            
            MqttMessage("Publish message");
            MqttMessage message = new MqttMessage (content.getBytes());
            message.setQos(qos);
            client.publish(topic, message);
            MqttMessage("Message was published!");
            
            client.disconnect();
            MqttMessage("Disconnect!");
            
        } catch (MqttException ex) {
            System.out.println("reason: " + ex.getReasonCode());
            System.out.println("msg: " + ex.getMessage());
            System.out.println("loc : " + ex.getLocalizedMessage());
            System.out.println("cause: " + ex.getCause());
        }
    }
    
    
    public static void main (String...strings) {
        new MqttPublishSample ();
    }
 
}
  • Вопрос задан
  • 19 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Innopolis City Москва
от 80 000 до 170 000 руб.
Litota Labs Ульяновск
от 110 000 руб.
8BIT GROUP Москва
от 180 000 до 280 000 руб.
20 марта 2019, в 01:07
1000 руб./за проект
20 марта 2019, в 00:27
2000 руб./за проект
19 марта 2019, в 23:14
6000 руб./за проект