project-mirai / mirai-api-http

Mirai HTTP API (console) plugin
GNU Affero General Public License v3.0
1.65k stars 345 forks source link

关于群名片等信息,修改后需要成员发送一条消息才能更新 #666

Closed LenorEric closed 1 year ago

LenorEric commented 1 year ago

许多人在 mirai-core / mirai-api-http 的 issue 或论坛中反馈,群名片等信息,修改后需要成员发送一条消息才能更新 这给实际操作带来了一定的不便,因为很多时候人们希望可以略微更加及时地追踪到群名片的变化 尤其是在一些场合用以规范大家的群昵称,或基于群名片/群头衔进行一定的身份认证

尽管服务器不会主动向客户端发送这类更新信息,但是客户端可以以一定的代价,主动向服务器索取所有群员的信息 尽管这样耗时较久,但相比于重启 mirai-core,这已经是很小的代价了,但却能解决一个大问题

我向 mirai-core 反映此问题时,他们表示已经提供了 api 来主动索取信息,向服务器索取原始的群员信息 经过我的检索和与 mirai-core 开发者的交流,发现一个 LowLevelApi,名为 getRawGroupMemberList 可以实现这样的功能 getRawGroupMemberList 希望可以在近版本内适配这个 api,来实现更及时地更新追踪群名片 尽管这不是上层 api,使得适配有一定难度,但是这可以解决很多人的问题——感觉还是比较好的 lol