From 75a567d5cdc9a76fe917266eac3c98d364e9c3b6 Mon Sep 17 00:00:00 2001 From: ikechan8370 Date: Sat, 25 Nov 2023 19:47:35 +0800 Subject: [PATCH] =?UTF-8?q?`Shamrock`:=20fix=20=E9=87=8D=E8=A4=87=E3=81=97?= =?UTF-8?q?=E3=81=9F=E3=82=B0=E3=83=AB=E3=83=BC=E3=83=97=E5=8F=82=E5=8A=A0?= =?UTF-8?q?=E3=82=A4=E3=83=99=E3=83=B3=E3=83=88=E3=82=92=E5=89=8A=E9=99=A4?= =?UTF-8?q?=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/listener/PrimitiveListener.kt | 61 +++++-------------- 1 file changed, 14 insertions(+), 47 deletions(-) diff --git a/xposed/src/main/java/moe/fuqiuluo/shamrock/remote/service/listener/PrimitiveListener.kt b/xposed/src/main/java/moe/fuqiuluo/shamrock/remote/service/listener/PrimitiveListener.kt index 1fb0f49..881114a 100644 --- a/xposed/src/main/java/moe/fuqiuluo/shamrock/remote/service/listener/PrimitiveListener.kt +++ b/xposed/src/main/java/moe/fuqiuluo/shamrock/remote/service/listener/PrimitiveListener.kt @@ -81,13 +81,7 @@ internal object PrimitiveListener { 732 -> when(subType) { 12 -> onGroupBan(msgTime, pb) 16 -> onGroupTitleChange(msgTime, pb) - 17 -> { - try { - onGroupRecall(msgTime, pb) - // invite - onGroupMemIncreased(msgTime, pb) - } finally { } - } + 17 -> onGroupRecall(msgTime, pb) 20 -> onGroupPoke(msgTime, pb) 21 -> onEssenceMessage(msgTime, pb) } @@ -287,47 +281,20 @@ internal object PrimitiveListener { } private suspend fun onGroupMemIncreased(time: Long, pb: ProtoMap) { - when(pb[1, 2, 1].asInt) { - 732 -> { - // invite - val groupCode = pb[1, 3, 2, 4].asULong - lateinit var target: String - lateinit var operation: String - pb[1, 3, 2, 26, 7].asList - .value - .forEach { - val value = it[2].asUtf8String - when (it[1].asUtf8String) { - "invitee" -> operation = value - "invitor" -> target = value - } - } - val type = 131 - LogCenter.log("群成员增加($groupCode): $target, type = $type") + val groupCode = pb[1, 3, 2, 1].asULong + val targetUid = pb[1, 3, 2, 3].asUtf8String + val type = pb[1, 3, 2, 4].asInt + val operation = ContactHelper.getUinByUidAsync(pb[1, 3, 2, 5].asUtf8String).toLong() + val target = ContactHelper.getUinByUidAsync(targetUid).toLong() + LogCenter.log("群成员增加($groupCode): $target, type = $type") - if(!GlobalEventTransmitter.GroupNoticeTransmitter - .transGroupMemberNumChanged(time, target.toLong(), groupCode, operation.toLong(), NoticeType.GroupMemIncrease, NoticeSubType.Invite)) { - LogCenter.log("群成员增加推送失败!", Level.WARN) - } - } - 33 -> { - // approve - val groupCode = pb[1, 3, 2, 1].asULong - val targetUid = pb[1, 3, 2, 3].asUtf8String - val type = pb[1, 3, 2, 4].asInt - val operation = ContactHelper.getUinByUidAsync(pb[1, 3, 2, 5].asUtf8String).toLong() - val target = ContactHelper.getUinByUidAsync(targetUid).toLong() - LogCenter.log("群成员增加($groupCode): $target, type = $type") - - if(!GlobalEventTransmitter.GroupNoticeTransmitter - .transGroupMemberNumChanged(time, target, groupCode, operation, NoticeType.GroupMemIncrease, when(type) { - 130 -> NoticeSubType.Approve - 131 -> NoticeSubType.Invite - else -> NoticeSubType.Approve - })) { - LogCenter.log("群成员增加推送失败!", Level.WARN) - } - } + if(!GlobalEventTransmitter.GroupNoticeTransmitter + .transGroupMemberNumChanged(time, target, groupCode, operation, NoticeType.GroupMemIncrease, when(type) { + 130 -> NoticeSubType.Approve + 131 -> NoticeSubType.Invite + else -> NoticeSubType.Approve + })) { + LogCenter.log("群成员增加推送失败!", Level.WARN) } }