Fehlerkorrekturen

This commit is contained in:
Sven committed 2024-05-06 12:50:20 +02:00
1 parent db93891dc9
commit 5c1d016935
7 files changed
+66 -100

No files matched your search

+21 -34
View File
@@ -21,7 +21,7 @@ import 'package:stadtbote/protocoll_messages/bootstrap_response_payload.dart';
import 'package:stadtbote/protocoll_messages/device_log_request.dart';
import 'package:stadtbote/protocoll_messages/device_log_response.dart';
import 'package:stadtbote/protocoll_messages/device_object.dart';
import 'package:stadtbote/protocoll_messages/payload_container.dart';
import 'package:stadtbote/protocoll_messages/job_del_message.dart';
import 'package:stadtbote/protocoll_messages/start_session_message.dart';
import 'package:stadtbote/protocoll_messages/status_info_update.dart';
import 'package:stadtbote/protocoll_messages/sync_jobs_message.dart';
@@ -147,29 +147,17 @@ class MqttCore {
}
_publishText(String topic, String text) {
var buffer = Uint8Buffer();
buffer.addAll(GZipEncoder().encode(const Utf8Encoder().convert(text)) as Iterable<int>);
var messageTopic = "$_toServerTopic$topic/$_clientId";
_mqttClient!.publishMessage(messageTopic, MqttQos.exactlyOnce, buffer);
Util.logInfo("message\n$text\nsend to $messageTopic");
}
publishPayloadMessage(String topic, Map<String, dynamic> payload) {
var payloadContainer = PayloadContainer();
payloadContainer.id = const Uuid().v4().toString();
payloadContainer.recv = topic;
payloadContainer.store = true;
payloadContainer.payload = payload;
var json = jsonEncode(payloadContainer.toJson());
try {
_publishText(topic, json);
} catch (e) {
_enqueueMessage(topic, jsonEncode(payloadContainer.toJson()));
var buffer = Uint8Buffer();
buffer.addAll(GZipEncoder().encode(const Utf8Encoder().convert(text)) as Iterable<int>);
var messageTopic = "$_toServerTopic$topic/$_clientId";
_mqttClient!.publishMessage(messageTopic, MqttQos.exactlyOnce, buffer);
Util.logInfo("message\n$text\nsend to $messageTopic");
} catch (ex) {
_enqueueMessage(topic, text);
}
}
@@ -200,7 +188,7 @@ class MqttCore {
_statusMessageReceived(jsonDecode(payload));
break;
case 'ranks':
case 'ranking':
_rankingMessageReceived(jsonDecode(payload));
break;
@@ -338,13 +326,12 @@ class MqttCore {
}
void _jobDeleteReceived(payloadData) async {
for (var jobId in payloadData) {
await MyApp.isarInstance.writeTxn(() async {
await MyApp.isarInstance.jobs.delete(jobId);
});
var jobDelMessage = JobDelMessage.fromJson(payloadData);
await MyApp.isarInstance.writeTxn(() async {
await MyApp.isarInstance.jobs.delete(jobDelMessage.id);
});
MessageService().publish<JobDeletedMessage>(Constants.messageTopicJobDeleted, arguments: JobDeletedMessage(id: jobId));
}
MessageService().publish<JobDeletedMessage>(Constants.messageTopicJobDeleted, arguments: JobDeletedMessage(id: jobDelMessage.id));
}
void _syncRequestReceived(payloadData) async {
@@ -494,7 +481,7 @@ class MqttCore {
answer.sync.jobs.add(syncJob);
}
publishPayloadMessage("sync_request_response", answer.toJson());
_publishText("sync", jsonEncode(answer.toJson()));
}
void _startTrackTimer() {
@@ -508,7 +495,7 @@ class MqttCore {
trackMessage.pos!.long = position.longitude;
trackMessage.pos!.acc = position.accuracy.toInt();
publishPayloadMessage("track", trackMessage.toJson());
_publishText("track", jsonEncode(trackMessage.toJson()));
}
});
}
@@ -555,12 +542,12 @@ class MqttCore {
message.received.ver = job.ver;
message.received.utc = DateTime.now().millisecondsSinceEpoch;
publishPayloadMessage('job', message.toJson());
_publishText('job', jsonEncode(message.toJson()));
}
void initMessages() {
MessageService().subscribe<PublishPayloadMessage>(Constants.messageTopicPublishPayload, this, (PublishPayloadMessage payloadMessage) {
publishPayloadMessage(payloadMessage.topic, payloadMessage.message);
_publishText(payloadMessage.topic, jsonEncode(payloadMessage.message));
});
MessageService().subscribe<DisconnectClientMessage>(Constants.messageTopicDisconnectClient, this,