Akegarasu / blivedm-go

go 版 b站/bilibili 直播/bili直播 弹幕库 - websocket协议
MIT License
78 stars 14 forks source link

`OnGuard` 命令可能不再可用于检测大航海。 #7

Closed ShiinaYuki77 closed 2 years ago

ShiinaYuki77 commented 2 years ago

OnGuard 事件检测的大航海事件中,舰长/提督/总督价格始终不变,虽然能正确反应上舰但无法正确反馈金额。 USER_TOAST_MSG 可以正确返回大航海的金额、时间、角色、Uid/Uname 字段。

{
    "cmd": "USER_TOAST_MSG",
    "data": {
        "anchor_show": true,
        "color": "#00D1F1",
        "dmscore": 90,
        "effect_id": 397,
        "end_time": 1662041450,
        "face_effect_id": 44,
        "gift_id": 10003,
        "guard_level": 3,
        "is_show": 0,
        "num": 1,
        "op_type": 3,
        "payflow_id": "2209012210331402119576078",
        "price": 138000,
        "role_name": "舰长",
        "room_effect_id": 590,
        "start_time": 1662041450,
        "svga_block": 0,
        "target_guard_count": 24,
        "toast_msg": "<%七星虞乐%> 自动续费了舰长",
        "uid": 30491957,
        "unit": "月",
        "user_show": true,
        "username": "七星虞乐"
    }
}
ShiinaYuki77 commented 2 years ago

https://gist.github.com/ShiinaYuki77/8985a9847640d865987b0a8c73fb0b30 这有一小段来自其他客户端记录的 JSON 数据流,可以参考一下 🤔

Akegarasu commented 2 years ago

抓了一会全是舰长没遇到提督 我再抓一会看看😭

ShiinaYuki77 commented 2 years ago

可能得等一阵子咯,不是所有的时候都能找得到上原价舰长的。 其实自动续费也返回 Price: 198000 就挺能说明问题的了,您加油

Akegarasu commented 2 years ago

抓到一个158的舰长 挺怪的有这个价的舰长🤔

USER_TOAST_MSG: {"anchor_show":true,"color":"#00D1F1","dmscore":90,"effect_id":397,"end_time":1662301767,"face_effect_id":44,"gift_id":10003,"guard_level":3,"is_sh
ow":0,"num":1,"op_type":2,"payflow_id":"2209042229085152144655163","price":158000,"role_name":"舰长","room_effect_id":590,"start_time":1662301767,"svga_block":0,"t
arget_guard_count":2188,"toast_msg":"\u003c%Saber阿尔托莉雅的狗%\u003e 续费了舰长","uid":313364465,"unit":"月","user_show":true,"username":"Saber阿尔托莉雅的狗"}  

GUARD_BUY: {"uid":313364465,"username":"Saber阿尔托莉雅的狗","guard_level":3,"num":1,"price":198000,"gift_id":10003,"gift_name":"舰长","start_time":1662301767,"end
_time":1662301767}
ShiinaYuki77 commented 2 years ago

https://gist.github.com/ShiinaYuki77/453dc168ec8cc9ba0f368e33c97bf4fe 这有一份含总督的 JSON 不知道有没有参考性 🤔

Akegarasu commented 2 years ago

很有用 总之 GUARD_BUY 这个 cmd 貌似并不能很好的反应实际金额,我扩充了一个 handler OnUserToast

ShiinaYuki77 commented 2 years ago

抓到一个158的舰长 挺怪的有这个价的舰长🤔

USER_TOAST_MSG: {"anchor_show":true,"color":"#00D1F1","dmscore":90,"effect_id":397,"end_time":1662301767,"face_effect_id":44,"gift_id":10003,"guard_level":3,"is_sh
ow":0,"num":1,"op_type":2,"payflow_id":"2209042229085152144655163","price":158000,"role_name":"舰长","room_effect_id":590,"start_time":1662301767,"svga_block":0,"t
arget_guard_count":2188,"toast_msg":"\u003c%Saber阿尔托莉雅的狗%\u003e 续费了舰长","uid":313364465,"unit":"月","user_show":true,"username":"Saber阿尔托莉雅的狗"}  

GUARD_BUY: {"uid":313364465,"username":"Saber阿尔托莉雅的狗","guard_level":3,"num":1,"price":198000,"gift_id":10003,"gift_name":"舰长","start_time":1662301767,"end
_time":1662301767}

似乎是 198 CNY 舰长的原价续费优惠? P.S: 似乎所有档位的 大航海订阅 都有这么个不当不正的价格,似乎是续费挽留/提前订阅优惠,另说是 iOS 侧的舰长价格。

ShiinaYuki77 commented 2 years ago

Fixed on #8. Thanks!