mirror of
https://github.com/mamoe/mirai.git
synced 2025-02-13 03:16:05 +08:00
Ignore SystemMsgNewGroup subType=3 groupMsgType=5, fix #651
This commit is contained in:
parent
bb348930d8
commit
4b1e7be524
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2019-2020 Mamoe Technologies and contributors.
|
* Copyright 2019-2021 Mamoe Technologies and contributors.
|
||||||
*
|
*
|
||||||
* 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证.
|
* 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证.
|
||||||
* Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link.
|
* Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link.
|
||||||
@ -143,7 +143,7 @@ internal class NewContact {
|
|||||||
|
|
||||||
|
|
||||||
override suspend fun ByteReadPacket.decode(bot: QQAndroidBot): Packet? {
|
override suspend fun ByteReadPacket.decode(bot: QQAndroidBot): Packet? {
|
||||||
readBytes().loadAs(Structmsg.RspSystemMsgNew.serializer()).run {
|
return readBytes().loadAs(Structmsg.RspSystemMsgNew.serializer()).run {
|
||||||
val struct = groupmsgs.firstOrNull() ?: return null // 会有重复且无法过滤, 不要用 map
|
val struct = groupmsgs.firstOrNull() ?: return null // 会有重复且无法过滤, 不要用 map
|
||||||
|
|
||||||
if (!bot.client.syncingController.systemMsgNewGroupCacheList.addCache(
|
if (!bot.client.syncingController.systemMsgNewGroupCacheList.addCache(
|
||||||
@ -153,7 +153,7 @@ internal class NewContact {
|
|||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
return struct.msg?.run {
|
struct.msg?.run {
|
||||||
//this.soutv("SystemMsg")
|
//this.soutv("SystemMsg")
|
||||||
when (subType) {
|
when (subType) {
|
||||||
1 -> { // 处理被邀请入群 或 处理成员入群申请
|
1 -> { // 处理被邀请入群 或 处理成员入群申请
|
||||||
@ -193,6 +193,12 @@ internal class NewContact {
|
|||||||
5 -> {
|
5 -> {
|
||||||
val group = bot.getGroup(groupCode) ?: return null
|
val group = bot.getGroup(groupCode) ?: return null
|
||||||
when (groupMsgType) {
|
when (groupMsgType) {
|
||||||
|
3 -> {
|
||||||
|
// https://github.com/mamoe/mirai/issues/651
|
||||||
|
// msgDescribe=将你设置为管理员
|
||||||
|
// msgTitle=管理员设置
|
||||||
|
null
|
||||||
|
}
|
||||||
13 -> { // 成员主动退出, 机器人是管理员, 接到通知
|
13 -> { // 成员主动退出, 机器人是管理员, 接到通知
|
||||||
// 但无法获取是哪个成员.
|
// 但无法获取是哪个成员.
|
||||||
null
|
null
|
||||||
@ -203,7 +209,7 @@ internal class NewContact {
|
|||||||
}
|
}
|
||||||
else -> {
|
else -> {
|
||||||
throw contextualBugReportException(
|
throw contextualBugReportException(
|
||||||
"解析 NewContact.SystemMsgNewGroup, subType=5",
|
"解析 NewContact.SystemMsgNewGroup, subType=5, groupMsgType=$groupMsgType",
|
||||||
this._miraiContentToString(),
|
this._miraiContentToString(),
|
||||||
null,
|
null,
|
||||||
"并描述此时机器人是否被踢出群等"
|
"并描述此时机器人是否被踢出群等"
|
||||||
@ -212,7 +218,7 @@ internal class NewContact {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else -> throw contextualBugReportException(
|
else -> throw contextualBugReportException(
|
||||||
"parse SystemMsgNewGroup",
|
"解析 NewContact.SystemMsgNewGroup, subType=$subType, groupMsgType=$groupMsgType",
|
||||||
forDebug = this._miraiContentToString(),
|
forDebug = this._miraiContentToString(),
|
||||||
additional = "并尽量描述此时机器人是否正被邀请加入群, 或者是有有新群员加入此群"
|
additional = "并尽量描述此时机器人是否正被邀请加入群, 或者是有有新群员加入此群"
|
||||||
)
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user