mirai icon indicating copy to clipboard operation
mirai copied to clipboard

ForwardMessage消息长度计算问题

Open Deficuet opened this issue 3 years ago • 7 comments

问题描述

单条消息最大可发送 4500 字符或 50 张图片

这个我是知道的,但是对合并转发也遵循这条规则就多少有些诡异( 普通用户是能够多选100张图片合并转发的,我也正常收到过100条全是图片的合并转发 但是由bot构造一个含有大于50张图片的合并转发,发送时会报消息超长的错。是有意为之吗? 姑且当bug讨论吧(

复现

通过DSL随意构造一个含有大于50张图片的合并转发并尝试发送

mirai-core 版本

2.10.1

bot-protocol

ANDROID_PHONE

其他组件版本

No response

系统日志

No response

网络日志

No response

补充信息

No response

Deficuet avatar May 02 '22 00:05 Deficuet

普通消息标准限制是5000字符左右+10张图片。mirai因为无法按服务器标准精准控制字符数,就限制在5000字符,但给图片的限制提高到了50。

合并转发的限制大约是总数据不能超过 1M。合并转发有可能是可以允许100图片的。

Him188 avatar May 02 '22 08:05 Him188

普通消息标准限制是5000字符_左右_+10张图片。mirai因为无法按服务器标准精准控制字符数,就限制在5000字符,但给图片的限制提高到了50。

合并转发的限制_大约_是总数据不能超过 1M。合并转发有可能是可以允许100图片的。

冷知识:转发100张图片的,基本上都是色图合集,而且往往质量不高,wwww

landall avatar May 05 '22 15:05 landall

普通消息标准限制是5000字符_左右_+10张图片。mirai因为无法按服务器标准精准控制字符数,就限制在5000字符,但给图片的限制提高到了50。

合并转发的限制_大约_是总数据不能超过 1M。合并转发有可能是可以允许100图片的。

那是否能给个force send呢? 就是如果mirai无法查明数据大小就交给用户判断,然后不保证发送结果(

Nambers avatar May 05 '22 15:05 Nambers

将会提高图片数量限制到 200

Him188 avatar Jul 30 '22 05:07 Him188

看了下代码, 目前的限制是一个合并转发可以包含 200 条消息, 每条消息可以包含 50 张图片. 你的问题可能是使用了合并转发但这个转发内只有一条有超过 50 张图片的消息.

Him188 avatar Nov 27 '22 20:11 Him188

不是,是每条消息(Node)只有一张图。提这个issue的时候,合并转发里塞了大于五十条这样的消息会报这个错

Deficuet avatar Nov 27 '22 20:11 Deficuet