2
Ce code d'abonné mqtt fonctionne correctement. Je peux facilement m'abonner aux messages qui sont publiés sur broker.hivemq.com avec le sujet correspondant.Effectuer une action dans l'abonné MQTT
public class AccelerometerSubscriber implements MqttCallback,
IMqttActionListener {
public static void main(String[] args) throws MqttException {
int QUALITY_OF_SERVICE = 2;
MqttClient client=new MqttClient("tcp://broker.hivemq.com:1883",
MqttClient.generateClientId());
client.setCallback(new SimpleMqttCallBack());
client.connect();
System.out.println("Subscribing ....");
client.subscribe("MQTT Examples"); }
System.out.println("some action"); //------------right here--------------
public void connectionLost(Throwable throwable) {
System.out.println("Connection to MQTT broker lost!"); }
public void messageArrived(String s, MqttMessage mqttMessage) throws Exception {
System.out.println("Message received:\n\t"+ new String(mqttMessage.getPayload()));
}
public void deliveryComplete(IMqttDeliveryToken iMqttDeliveryToken) {
// not used in this example
}}
Maintenant, je ne veux effectuer une action que lorsqu'un message est reçu. Je suis incapable de faire ça.