Kodu:
package com.cupola.demo;
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.persist.MemoryPersistence;
public class Publish {
public static void main(String[] args) {
Sample sas = new Sample();
String topic = "Cupola";
String content = sas.passMessage(24,"Noor");
int qos = 2;
String broker = "tcp://localhost:1883";
String clientId = "DemoPublish";
MemoryPersistence persistence = new MemoryPersistence();
try {
MqttClient sampleClient = new MqttClient(broker, clientId, persistence);
MqttConnectOptions connOpts = new MqttConnectOptions();
connOpts.setCleanSession(true);
System.out.println("Connecting to broker: " + broker);
sampleClient.connect(connOpts);
System.out.println("Connected");
System.out.println("Publishing message: " + content);
MqttMessage message = new MqttMessage(content.getBytes());
message.setQos(qos);
sampleClient.publish(topic, message);
System.out.println("Message published");
sampleClient.disconnect();
System.out.println("Disconnected");
// System.exit(0);
}
catch (MqttException me) {
System.out.println("reason " + me.getReasonCode());
System.out.println("msg " + me.getMessage());
System.out.println("loc " + me.getLocalizedMessage());
System.out.println("cause " + me.getCause());
System.out.println("excep " + me);
me.printStackTrace();
}
}
}
Yayıncıdan işlevi çağırmak ve değerleri
012'ye göre ayarlamak için ayarlanan değerler burada verilmiştir.}
Bu benim Cat.proto dosyasıdır:
option java_outer_classname="CatProto";
message Cat {
optional int32 age = 1;
required string name = 2;
}
onu haklı veya i şeklini değiştirmek gerekir. Lütfen bana öner. Size şimdiden teşekkür ederim.
Burada aslında hangi sorunu görüyorsunuz? – hardillb
Bir mqtt paket niteliklerini doldurmak istiyorum ve mesaj formatı protobuf tarafından tanımlanmalıdır. Bu yüzden yukarıda bahsedilen kod, benim şartım için sorun değil veya daha fazla değişiklik yapmam gerekiyor. Hızlı yanıt için teşekkürler – Noor
Hangi java protobuffer kütüphanesini kullanıyorsunuz? – hardillb