This commit is contained in:
parent
872c84d3f3
commit
56cf63bb0a
@ -2,16 +2,24 @@ import org.eclipse.paho.client.mqttv3.*
|
||||
import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence
|
||||
import java.time.Instant
|
||||
|
||||
class MqttSubscriber : MqttCallbackExtended {
|
||||
class MqttSubscriber() : MqttCallbackExtended {
|
||||
private val broker = "tcp://mqtt.k8s.kmlabz.com:1883"
|
||||
private val clientId = MqttClient.generateClientId()
|
||||
private val persistence = MemoryPersistence()
|
||||
private val mqttClient = MqttAsyncClient(broker, clientId, persistence)
|
||||
private val mqttClient = MqttClient(broker, clientId, persistence)
|
||||
private val benchValues = HashMap<Int, Instant>()
|
||||
private val connOpts = MqttConnectOptions()
|
||||
|
||||
init {
|
||||
connOpts.isCleanSession = true
|
||||
connOpts.userName = "birbnetes"
|
||||
connOpts.password = "de4d2182".toCharArray()
|
||||
connOpts.isAutomaticReconnect = true
|
||||
mqttClient.setCallback(MqttSubscriber())
|
||||
}
|
||||
|
||||
override fun connectionLost(arg0: Throwable) {
|
||||
System.err.println("connection lost")
|
||||
mqttClient.reconnect()
|
||||
}
|
||||
|
||||
override fun deliveryComplete(arg0: IMqttDeliveryToken) {
|
||||
@ -26,22 +34,29 @@ class MqttSubscriber : MqttCallbackExtended {
|
||||
|
||||
override fun connectComplete(reconnect: Boolean, serverURI: String?) {
|
||||
println("Subscribing to all topics")
|
||||
try {
|
||||
mqttClient.subscribe("#", 0)
|
||||
}catch (e: MqttException) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
fun connect() {
|
||||
println("Connecting to broker")
|
||||
val connOpts = MqttConnectOptions()
|
||||
connOpts.isCleanSession = true
|
||||
connOpts.userName = "birbnetes"
|
||||
connOpts.password = "de4d2182".toCharArray()
|
||||
mqttClient.setCallback(MqttSubscriber())
|
||||
try {
|
||||
mqttClient.connect(connOpts)
|
||||
}catch (e: MqttException) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
fun disconnect(): HashMap<Int, Instant> {
|
||||
println("Disconnecting from broker")
|
||||
try {
|
||||
mqttClient.disconnect()
|
||||
}catch (e: MqttException) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
mqttClient.close()
|
||||
return benchValues
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user