project-mirai / mirai-api-http

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

向好友发送语音时无法送达 #506

Closed dellbeat closed 2 years ago

dellbeat commented 2 years ago

具体操作: 由好友向BOT发送一条语音(排除语音上传时出现的问题) 然后在Console内获取到该条语音消息的ID 然后由BOT发送带有该语音的消息到原好友 Console显示发送出去了但是好友这边出现了奇怪的现象

1.BOT没有发送新的语音消息过来 2.好友会有一条新消息,点击显示“需要添加对方为好友才可发送消息”,如果尝试点击发现显示的QQ号是0 image

image

现在不确定到底是Core问题还是MAH问题 如果是Core问题我再把issue转到Core去

ryoii commented 2 years ago

原则上语音应该是不能转发的才对,你可以试下按url把语音下载下来再转发试试

dellbeat commented 2 years ago

原则上语音应该是不能转发的才对,你可以试下按url把语音下载下来再转发试试

刚刚试了把一条语音下载下来 然后通过传本地路径参数 可以发送 也就是说好友语音只能通过传本地文件的方式上传咯? 但是群的话刚刚试了一下(就刚刚那条语音)可以转发到多个群(还是通过直接传语音ID的方式)

ryoii commented 2 years ago

原则上语音应该是不能转发的才对,你可以试下按url把语音下载下来再转发试试

刚刚试了把一条语音下载下来 然后通过传本地路径参数 可以发送 也就是说好友语音只能通过传本地文件的方式上传咯? 但是群的话刚刚试了一下(就刚刚那条语音)可以转发到多个群(还是通过直接传语音ID的方式)

那大概和我推测的一样,私聊语音和私聊图片是一样的,是c2c私有的,群语音是公开的。所以私聊语音不能跨对象转发,而群语音可以。

但是从操作逻辑上客户端应该都是不允许语音转发的

dellbeat commented 2 years ago

原则上语音应该是不能转发的才对,你可以试下按url把语音下载下来再转发试试

刚刚试了把一条语音下载下来 然后通过传本地路径参数 可以发送 也就是说好友语音只能通过传本地文件的方式上传咯? 但是群的话刚刚试了一下(就刚刚那条语音)可以转发到多个群(还是通过直接传语音ID的方式)

那大概和我推测的一样,私聊语音和私聊图片是一样的,是c2c私有的,群语音是公开的。所以私聊语音不能跨对象转发,而群语音可以。

但是从操作逻辑上客户端应该都是不允许语音转发的

OK 明白了 后续操作会注意 issue先关了