whitechi73 / OpenShamrock

A Bot Framework based on Lsposed with OneBot11(停止维护/禁用于违法用途)
https://whitechi73.github.io/OpenShamrock
GNU General Public License v3.0
1.42k stars 186 forks source link

bug: 收不到视频类型的消息 #242

Closed abortor closed 8 months ago

abortor commented 8 months ago

描述 Bug

在某个自建的新群里,一个bot号用来测试收消息,一个号用来发消息。当发消息的号发的是视频的时候,bot会收不到。发消息的号用的是android QQ (8.9.58.11175) 发的, 并且发出视频消息的瞬间,日志里会出现一行 warning 如下:

[15:30:37] WARN 消息element转换错误:java.lang.NumberFormatException: For input string: "/s", elementType: 5

如果发视频消息的号用的是 9.0.17.15190 , bot 是可以正常收到视频消息的,并且不会有 warning

系统信息

whitechi73 commented 8 months ago

私聊消息还是频道消息

whitechi73 commented 8 months ago

https://github.com/whitechi73/OpenShamrock/actions/runs/7948468009 请在尝试该提交构建后回复

abortor commented 8 months ago

私聊消息还是频道消息

QQ群(就是QQ最基础的旧功能,群聊啦)的视频消息

whitechi73 commented 8 months ago

没复现

abortor commented 8 months ago

没复现

发视频的QQ要使用 安卓QQ 8.9.58, 然后 收视频的bot用 安卓QQ 9.0.15

whitechi73 commented 8 months ago

没复现

发视频的QQ要使用 安卓QQ 8.9.58, 然后 收视频的bot用 安卓QQ 9.0.15

是否有空跟随调试?

whitechi73 commented 8 months ago

https://github.com/whitechi73/OpenShamrock/actions/runs/7949022112 这个构建结束之后安装 打开调试日志模式,复现错误情况,找到 image 类似于这样的日志

abortor commented 8 months ago

https://github.com/whitechi73/OpenShamrock/actions/runs/7949022112 这个构建结束之后安装 打开调试日志模式,复现错误情况,找到 image 类似于这样的日志

开启调试日志模式后日志里可以看到发出来的视频(是用 8.9.58 版本的 QQ发的),如下。关闭调试模式后日志里看不到发送的视频消息。

[20:51:44] DEBUG receive video msg: VideoElement{filePath=,fileName=/storage/emulated/0/Android/data/com.tencent.mobileqq/Tencent/MobileQQ/shortvideo/D946896B6C99890173DD0DD51A02F4BE/3242116187336923856257829546.mp4,videoMd5=d946896b6c99890173d90dd51a12f4be,thumbMd5=4143e72a4aac49ce4a7dc51f3f598f5a,fileTime=56,thumbSize=102916,fileFormat=2,fileSize=3006084,thumbWidth=640,thumbHeight=1136,busiType=0,subBusiType=0,thumbPath=null,transferStatus=0,progress=0,invalidState=0,fileUuid=305102010007363034020100020473fa45b602037a1afd0204e76d5ede020465d1fd5f0410d946896b6c99890173d90dd51a02f4be02037a1db902010004140000000866696c65747970650000000431303033,fileSubId=,fileBizId=null,originVideoMd5=,importRichMediaContext=null,sourceVideoCodecFormat=KCODECFORMATH264,storeID=0,} [20:51:44] WARN 消息element转换错误:java.lang.NumberFormatException: For input string: "/s", elementType: 5

我采用的是主动websocket这种方式接收消息的,连上ws后也并未收到测试号发来的视频消息。图片和文字倒是都能正常收。

whitechi73 commented 8 months ago

试试看最新的提交构建

abortor commented 8 months ago

试试看最新的提交构建

这一版本 Shamrock-v1.0.8.r330.8f8580d-arm64 可以通过 主动ws 正常收到 8.9.58的android QQ 和 9.0.17的android QQ 发送的视频消息了。 关闭调试模式后,日志也显示接收到了视频消息