XiMengJianYu/.svn/pristine/d2/d265248de3c691f3478bdc4fd8493294ef454b00.svn-base

70 lines
2.0 KiB
Plaintext
Raw Permalink Normal View History

2023-04-17 17:58:44 +08:00
package com.example.administrator.ximengjianyu.mqtt.publisher;
import org.eclipse.paho.client.mqttv3.MqttClient;
import org.eclipse.paho.client.mqttv3.MqttConnectOptions;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.eclipse.paho.client.mqttv3.MqttTopic;
//import org.eclipse.paho.client.mqttv3.internal.MemoryPersistence;
import java.util.Random;
public class Thermometer {
//通知地址
public static final String BROKER_URL = "tcp://192.168.133.150:1883";
public static final String TOPIC = "de/eclipsemagazin/blackice/warnings";
private MqttClient client;
public Thermometer() {
// try {
// client = new MqttClient(BROKER_URL, MqttClient.generateClientId(), new MemoryPersistence());
// } catch (MqttException e) {
// e.printStackTrace();
// System.exit(1);
// }
}
private void start() {
try {
MqttConnectOptions ss = new MqttConnectOptions();
ss.setUserName("cmkj");
ss.setPassword("cmkj".toCharArray());
client.connect(ss);
publishTemperature();
client.disconnect();
} catch (MqttException e) {
e.printStackTrace();
System.exit(1);
}
}
private void publishTemperature() throws MqttException {
final MqttTopic temperatureTopic = client.getTopic(TOPIC);
final int temperature = createRandomNumberBetween(-20, 4);
final MqttMessage message = new MqttMessage(String.valueOf(temperature).getBytes());
temperatureTopic.publish(message);
System.out.println("Published data. Topic: " + temperatureTopic.getName() + " Message: " + temperature);
}
public static int createRandomNumberBetween(int min, int max) {
return new Random().nextInt(max - min + 1) + min;
}
public static void main(String... args) {
final Thermometer thermometer = new Thermometer();
thermometer.start();
}
}