From 8635153e59d7b8161156a1a572e01b206eddcc5c Mon Sep 17 00:00:00 2001 From: heavyrian2012 Date: Wed, 20 Nov 2024 12:47:11 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E8=81=8A=E5=A4=A9=E5=AE=A4?= =?UTF-8?q?=E5=AE=9A=E5=90=91=E6=B6=88=E6=81=AF=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/io/moquette/persistence/MemoryMessagesStore.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java index 2a3091a6..eb849858 100755 --- a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java +++ b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java @@ -733,7 +733,7 @@ public class MemoryMessagesStore implements IMessagesStore { } pullType = ProtoConstants.PullType.Pull_Normal; } else if (type == ProtoConstants.ConversationType.ConversationType_ChatRoom) { - boolean isDirect = !StringUtil.isNullOrEmpty(message.getToUser()); + boolean isDirect = !StringUtil.isNullOrEmpty(message.getToUser()) || !message.getToList().isEmpty(); Collection entries = getChatroomMembers(message.getConversation().getTarget()); for (UserClientEntry entry : entries) { if (isDirect) { @@ -741,6 +741,9 @@ public class MemoryMessagesStore implements IMessagesStore { notifyReceivers.add(message.getToUser()); break; } + if (message.getToList().contains(entry.userId)) { + notifyReceivers.add(entry.userId); + } } else { notifyReceivers.add(entry.userId); }