mirror of
https://github.com/twonlyapp/twonly-app.git
synced 2026-01-15 19:28:40 +00:00
fix #74
This commit is contained in:
parent
61763498dc
commit
dfcfeb6110
2 changed files with 15 additions and 1 deletions
|
|
@ -144,6 +144,13 @@ class MessagesDao extends DatabaseAccessor<TwonlyDatabase>
|
||||||
return (delete(messages)..where((t) => t.messageId.equals(messageId))).go();
|
return (delete(messages)..where((t) => t.messageId.equals(messageId))).go();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future<bool> containsOtherMessageId(int messageOtherId) async {
|
||||||
|
final query = select(messages)
|
||||||
|
..where((t) => t.messageOtherId.equals(messageOtherId));
|
||||||
|
final entry = await query.getSingleOrNull();
|
||||||
|
return entry == null;
|
||||||
|
}
|
||||||
|
|
||||||
SingleOrNullSelectable<Message> getMessageByMessageId(int messageId) {
|
SingleOrNullSelectable<Message> getMessageByMessageId(int messageId) {
|
||||||
return select(messages)..where((t) => t.messageId.equals(messageId));
|
return select(messages)..where((t) => t.messageId.equals(messageId));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -225,7 +225,7 @@ Future<client.Response> handleNewMessage(int fromUserId, Uint8List body) async {
|
||||||
message.kind != MessageKind.storedMediaFile) {
|
message.kind != MessageKind.storedMediaFile) {
|
||||||
Logger("handleServerMessages")
|
Logger("handleServerMessages")
|
||||||
.shout("Got unknown MessageKind $message");
|
.shout("Got unknown MessageKind $message");
|
||||||
} else if (message.content != null) {
|
} else if (message.content != null && message.messageId != null) {
|
||||||
String content = jsonEncode(message.content!.toJson());
|
String content = jsonEncode(message.content!.toJson());
|
||||||
|
|
||||||
bool acknowledgeByUser = false;
|
bool acknowledgeByUser = false;
|
||||||
|
|
@ -241,6 +241,13 @@ Future<client.Response> handleNewMessage(int fromUserId, Uint8List body) async {
|
||||||
responseToMessageId = textContent.responseToMessageId;
|
responseToMessageId = textContent.responseToMessageId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// when a message is received doubled ignore it...
|
||||||
|
if ((await twonlyDatabase.messagesDao
|
||||||
|
.containsOtherMessageId(message.messageId!))) {
|
||||||
|
var ok = client.Response_Ok()..none = true;
|
||||||
|
return client.Response()..ok = ok;
|
||||||
|
}
|
||||||
|
|
||||||
final update = MessagesCompanion(
|
final update = MessagesCompanion(
|
||||||
contactId: Value(fromUserId),
|
contactId: Value(fromUserId),
|
||||||
kind: Value(message.kind),
|
kind: Value(message.kind),
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue