463e0ffb5dbee2fb5f4fa615c32a366318944ed3
Commit29f28d6changed c2c video `compatQmsgSceneType` from 2 to 1 as a "symmetric asymmetry" cleanup, matching the image/ptt convention where the field tracks the upload's sceneType (c2c=1, group=2). For video this is wrong. Image and ptt have *different* legacy compat elements per scene (notOnlineImage vs customFace; ptt c2c vs group), so the server needs to know which scene shape to emit. The legacy `videoFile` element (packet element type 19) has no scene split — fromChatType / toChatType live inside the element itself — so the QQ NT server emits a single group-shaped compat payload regardless. NapCat hardcodes `compatQMsgSceneType: 2` for *both* UploadGroupVideo and UploadPrivateVideo for exactly this reason. Setting it to 1 on c2c made the server emit a c2c-scene shaped compat blob that older QQ clients failed to resolve, showing the message as "视频已过期" on those receivers. Newer clients only read the commonElem(48, 11) and displayed fine — which is why only "some devices" saw the breakage. Keep `commonElem.businessType = isGroup ? 21 : 11` untouched — that piece of29f28d6is still correct and is what fixed PbSendMsg result=79.
❄️ SnowLuma
Next Remote Protocol Framework.
关于项目
项目处于开发初期,仅支持部分功能,高速迭代中,随时可能出现破坏性更新。
鸣谢
LagrangeV2 - Proto
NapCatQQ - Scaner/Packet
辅助编程
推荐 Opus4.6 + Gemini3.1pro 对本项目辅助开发
本项目大量使用Ai技术。
加入我们
Languages
TypeScript
98.9%
CSS
0.5%
JavaScript
0.5%