From a85b763f4e23bca974b2b1224ea983d53ea06ac2 Mon Sep 17 00:00:00 2001 From: Him188 Date: Tue, 4 Feb 2020 08:34:39 +0800 Subject: [PATCH] Fix group message --- .../network/protocol/packet/chat/receive/MessageSvc.kt | 8 ++++---- .../kotlin/net/mamoe/mirai/qqandroid/utils/MessageQQA.kt | 9 ++++++++- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/receive/MessageSvc.kt b/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/receive/MessageSvc.kt index bdfcda989..444d140ce 100644 --- a/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/receive/MessageSvc.kt +++ b/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/receive/MessageSvc.kt @@ -228,14 +228,14 @@ internal class MessageSvc { ) ), - //.apply { add(ImMsgBody.Elem(generalFlags = ImMsgBody.GeneralFlags( - // pbReserve = "78 00 F8 01 00 C8 02 00".hexToBytes() - // ))) } + // + // + // msgSeq = seq, msgRand = Random.nextInt().absoluteValue//, // syncCookie = ByteArray(0) // ?: SyncCookie(time = currentTimeSeconds + client.timeDifference).toByteArray(SyncCookie.serializer()), - // msgVia = 1 + , msgVia = 1 ) ) } diff --git a/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/utils/MessageQQA.kt b/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/utils/MessageQQA.kt index 80e969fd7..321622aaa 100644 --- a/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/utils/MessageQQA.kt +++ b/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/utils/MessageQQA.kt @@ -3,6 +3,7 @@ package net.mamoe.mirai.qqandroid.utils import net.mamoe.mirai.data.ImageLink import net.mamoe.mirai.message.data.* import net.mamoe.mirai.qqandroid.network.protocol.data.proto.ImMsgBody +import net.mamoe.mirai.utils.io.hexToBytes internal fun NotOnlineImageFromFile.toJceData(): ImMsgBody.NotOnlineImage { return ImMsgBody.NotOnlineImage( @@ -121,7 +122,13 @@ internal fun MessageChain.toRichTextElems(): MutableList { is CustomFaceFromFile -> elements.add(ImMsgBody.Elem(customFace = it.toJceData())) is CustomFaceFromServer -> elements.add(ImMsgBody.Elem(customFace = it.delegate)) is NotOnlineImageFromServer -> elements.add(ImMsgBody.Elem(notOnlineImage = it.delegate)) - is NotOnlineImageFromFile -> elements.add(ImMsgBody.Elem(notOnlineImage = it.toJceData())) + is NotOnlineImageFromFile -> elements.add( + ImMsgBody.Elem( + notOnlineImage = it.toJceData(), generalFlags = ImMsgBody.GeneralFlags( + pbReserve = "78 00 F8 01 00 C8 02 00".hexToBytes() + ) + ) + ) } }