Skip to content
This repository has been archived by the owner on Nov 3, 2023. It is now read-only.

接受群邀请时报错 #150

Closed
1 task done
lesser0 opened this issue Nov 26, 2022 · 2 comments
Closed
1 task done

接受群邀请时报错 #150

lesser0 opened this issue Nov 26, 2022 · 2 comments
Assignees
Labels
p: high 优先级:高 s: done 已在下个版本修复或实现 t: bug 类型:bug

Comments

@lesser0
Copy link

lesser0 commented Nov 26, 2022

Code of Conduct

  • I conform

问题描述

接受群邀请时报错。
在空模板中只注册

      Event::registerEvent<GroupInviteEvent>([](GroupInviteEvent e) {
          GroupInviteEvent::operation0(e.source, e.bot.id(), true);
          });

然后被邀请即可复现。

日志

2022-11-26 20:56:04 I/stdout: event:{"friend":{"type":1,"id":【邀请者id】,"groupid":0,"nickornamecard":"【邀请者昵称】","botid":【botid】,"anonymous":false},"message":"[mirai:service:128,<?xml version='1.0' encoding='UTF-8' standalone='yes' ?><msg serviceID=\"128\" templateID=\"12345\" action=\"native\" brief=\"\\[链接\\]邀请你加入群聊\" sourceMsgId=\"0\" url=\"\"><item layout=\"2\"><picture cover=\"\"/><title>邀请你加入群聊</title><summary /></item><data groupcode=\"【群id】\" groupname=\"【群名】\" msgseq=\"1669467363779864\" msgtype=\"2\"/></msg>]","source":"{\"kind\":\"FRIEND\",\"botId\":【botid】,\"ids\":[44698],\"internalIds\":[1085362453],\"time\":1669467363,\"fromId\":【邀请者id】,\"targetId\":【botid】,\"originalMessage\":[{\"type\":\"SimpleServiceMessage\",\"serviceId\":128,\"content\":\"<?xml version='1.0' encoding='UTF-8' standalone='yes' ?><msg serviceID=\\\"128\\\" templateID=\\\"12345\\\" action=\\\"native\\\" brief=\\\"[链接]邀请你加入群聊\\\" sourceMsgId=\\\"0\\\" url=\\\"\\\"><item layout=\\\"2\\\"><picture cover=\\\"\\\"/><title>邀请 你加入群聊</title><summary /></item><data groupcode=\\\"【群id】\\\" groupname=\\\"【群名】\\\" msgseq=\\\"1669467363779864\\\" msgtype=\\\"2\\\"/></msg>\"}]}","type":2}
2022-11-26 20:56:04 I/stdout: event:{"source":{"botid":【botid】,"eventid":1669467363779864,"inviterid":【邀请者id】,"groupid":【群id】,"groupname":"【群名】","inviternick":"【邀请者昵称】"},"request":"{\"eventId\":1669467363779864,\"invitor\":【邀请者id】,\"invitorNick\":\"【邀请者昵称】\",\"groupId\":【群id】,\"groupName\":\"【群名】\"}","type":3}
2022-11-26 20:56:04 I/stdout: Field 'accept' is required for type with serial name 'tech.eritquearcus.miraicp.shared.CPPEvent.Request', but it was missing at path: $
2022-11-26 20:56:04 I/stdout: {"data":{"accept":true,"botid":【botid】,"text":"{\"eventId\":1669467363779864,\"invitor\":【邀请者id】,\"invitorNick\":\"【邀请者昵称】\",\"groupId\":【群id】,\"groupName\":\"【群名】\"}"},"type":18}
2022-11-26 20:56:04 W/stderr: kotlinx.serialization.MissingFieldException: Field 'accept' is required for type with serial name 'tech.eritquearcus.miraicp.shared.CPPEvent.Request', but it was missing at path: $
2022-11-26 20:56:04 W/stderr:   at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:40)
2022-11-26 20:56:04 W/stderr:   at kotlinx.serialization.json.Json.decodeFromString(Json.kt:100)
2022-11-26 20:56:04 W/stderr:   at MiraiCP-plugin-2.13.0-alpha-3.mirai2.jar//tech.eritquearcus.miraicp.shared.CPPLib.KGioperation(CPPLib.kt:297)
2022-11-26 20:56:04 W/stderr:   at MiraiCP-plugin-2.13.0-alpha-3.mirai2.jar//tech.eritquearcus.miraicp.shared.CPPLib$operation$1.invokeSuspend(CPPLib.kt:221)
2022-11-26 20:56:04 W/stderr:   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
2022-11-26 20:56:04 W/stderr:   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
2022-11-26 20:56:04 W/stderr:   at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:284)
2022-11-26 20:56:04 W/stderr:   at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)2022-11-26 20:56:04 W/stderr:   at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
2022-11-26 20:56:04 W/stderr:   at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
2022-11-26 20:56:04 W/stderr:   at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38)
2022-11-26 20:56:04 W/stderr:   at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)2022-11-26 20:56:04 W/stderr:   at MiraiCP-plugin-2.13.0-alpha-3.mirai2.jar//tech.eritquearcus.miraicp.shared.CPPLib.operation(CPPLib.kt:151)
2022-11-26 20:56:04 W/stderr:   at MiraiCP-plugin-2.13.0-alpha-3.mirai2.jar//tech.eritquearcus.miraicp.shared.CPPLibMultiplatform.KOperation(CPPLibMultiplatform.kt:45)
2022-11-26 20:56:04 W/stderr: Caused by: kotlinx.serialization.MissingFieldException: Field 'accept' is required for type with serial name 'tech.eritquearcus.miraicp.shared.CPPEvent.Request', but it was missing
2022-11-26 20:56:04 W/stderr:   at kotlinx.serialization.internal.PluginExceptionsKt.throwMissingFieldException(PluginExceptions.kt:20)
2022-11-26 20:56:04 W/stderr:   at MiraiCP-plugin-2.13.0-alpha-3.mirai2.jar//tech.eritquearcus.miraicp.shared.CPPEvent$Request.<init>(Config.kt:319)
2022-11-26 20:56:04 W/stderr:   at MiraiCP-plugin-2.13.0-alpha-3.mirai2.jar//tech.eritquearcus.miraicp.shared.CPPEvent$Request$$serializer.deserialize(Config.kt:319)
2022-11-26 20:56:04 W/stderr:   at MiraiCP-plugin-2.13.0-alpha-3.mirai2.jar//tech.eritquearcus.miraicp.shared.CPPEvent$Request$$serializer.deserialize(Config.kt:319)
2022-11-26 20:56:04 W/stderr:   at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:59)
2022-11-26 20:56:04 W/stderr:   at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:38)
2022-11-26 20:56:04 W/stderr:   ... 13 more
2022-11-26 20:56:04 E/plugin/Plugin name: MiraiCP内部无法预料的错误:
2022-11-26 20:56:04 E/plugin/Plugin name: 文件名:【目录】\MiraiCP-template-2.13.0-alpha-3\single_include\MiraiCP\MiraiCP.cpp
行号:833

版本

v2.13.0-alpha-3

组件

不属于上述项或我不知道属于哪一项

编译器

Microsoft Visual C++ (MSVC)

系统

Windows

架构

x86-64/amd64

@Antares0982 Antares0982 added t: bug 类型:bug p: high 优先级:高 labels Nov 26, 2022
@lesser0
Copy link
Author

lesser0 commented Dec 1, 2022

此外接受好友也会报同样的错,丢了accept字段

@lesser0
Copy link
Author

lesser0 commented Dec 17, 2022

另外人数较少的群通常无需接受邀请会自动加入,此时不会触发这个bug。复现需要用人数较多的群。

Nambers added a commit that referenced this issue Dec 19, 2022
@Nambers Nambers added the s: ready for merge 状态:等待合并 label Dec 19, 2022
Nambers added a commit that referenced this issue Jan 7, 2023
@Nambers Nambers added s: done 已在下个版本修复或实现 and removed s: ready for merge 状态:等待合并 labels Jan 20, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
p: high 优先级:高 s: done 已在下个版本修复或实现 t: bug 类型:bug
Projects
None yet
Development

No branches or pull requests

3 participants