Fehlerkorrekturen und Erweiterungen
This commit is contained in:
1 parent
584f7dc8f7
commit
81133905de
38 files changed
+1003
-222
No files matched your search
@@ -4,13 +4,13 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_chat_ui/flutter_chat_ui.dart';
|
||||
import 'package:flutter_chat_types/flutter_chat_types.dart' as types;
|
||||
import 'package:isar/isar.dart';
|
||||
import 'package:mqtt5_client/mqtt5_client.dart';
|
||||
import 'package:stadtbote/content_views/utils/content_view_widget.dart';
|
||||
import 'package:stadtbote/main.dart';
|
||||
import 'package:stadtbote/messages/pop_content_view_message.dart';
|
||||
import 'package:stadtbote/model/chat_message.dart' as sbmessage;
|
||||
import 'package:stadtbote/model/chat_message.dart';
|
||||
import 'package:stadtbote/model/session_status.dart';
|
||||
import 'package:stadtbote/protocoll_messages/messages_showed.dart';
|
||||
import 'package:stadtbote/tools/constants.dart';
|
||||
import 'package:stadtbote/tools/messages/publish_payload_message.dart';
|
||||
|
||||
@@ -53,6 +53,8 @@ class _MessagesPageState extends State<MessagesPage> with ProducerMixin {
|
||||
var status = await MyApp.isarInstance.sessionStatus.where().findFirst();
|
||||
_sid = status != null ? status.sid : 'Unbekannt';
|
||||
|
||||
_sendMessagesReceivedMessage();
|
||||
|
||||
await _fetchMessages();
|
||||
|
||||
_initCompleted = true;
|
||||
@@ -99,14 +101,11 @@ class _MessagesPageState extends State<MessagesPage> with ProducerMixin {
|
||||
await MyApp.isarInstance.chatMessages.put(message);
|
||||
});
|
||||
|
||||
// TODO MESSAGING
|
||||
sendMessage(
|
||||
routingKey: Constants.messageTopicPublishPayload,
|
||||
payload: PublishPayloadMessage(topic: "message", message: message.toJson(), qos: MqttQos.exactlyOnce),
|
||||
payload: PublishPayloadMessage(topic: "message", message: message.toJson(), acknowledgeRequired: true),
|
||||
);
|
||||
|
||||
//await MessageService().publish<PublishPayloadMessage>(Constants.messageTopicPublishPayload, arguments: PublishPayloadMessage(topic: "message", message: message.toJson(), qos: MqttQos.exactlyOnce));
|
||||
|
||||
_messages.insert(0, types.TextMessage(
|
||||
author: _user,
|
||||
createdAt: now.millisecondsSinceEpoch,
|
||||
@@ -191,6 +190,29 @@ class _MessagesPageState extends State<MessagesPage> with ProducerMixin {
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
void _sendMessagesReceivedMessage() async {
|
||||
var unreadChatMessages = await MyApp.isarInstance.chatMessages
|
||||
.filter()
|
||||
.readEqualTo(false)
|
||||
.findAll();
|
||||
|
||||
if (unreadChatMessages.isNotEmpty) {
|
||||
List<String> chatMessageIds = [];
|
||||
for(var message in unreadChatMessages) {
|
||||
chatMessageIds.add(message.id.toString());
|
||||
}
|
||||
|
||||
var chatMessagesReceived = ChatMessagesReceived();
|
||||
chatMessagesReceived.ids = chatMessageIds;
|
||||
chatMessagesReceived.time = DateTime.now().toUtc().toIso8601String();
|
||||
|
||||
sendMessage(
|
||||
routingKey: Constants.messageTopicChatMessagesReceived,
|
||||
payload: chatMessagesReceived,
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class _HeaderWidget extends StatefulWidget {
|
||||
|
||||
Reference in new issue
Block a user