feat: remove like event (unreliable via INTERACT_WORD_V2); restore portable build dir
- Drop 'like' event from rules, handler and web UI (Bilibili like messages are not reliably delivered as INTERACT_WORD_V2 msg_type=6) - Keep enter_room / follow / interact_other - event_rules.json rewritten without like key - build.py keeps BUILD_DIR = dist/portable
This commit is contained in:
@@ -100,7 +100,6 @@ python main.py --room-id ROOM_ID [--voice VOICE] [--speed SPEED]
|
||||
| `blind_box` 盲盒礼物 | `{viewer_name}` `{gift_name}` `{gift_num}` `{blind_box_gift}` |
|
||||
| `enter_room` 进房 | `{viewer_name}` `{user_uid}` |
|
||||
| `follow` 关注 | `{viewer_name}` `{user_uid}` |
|
||||
| `like` 点赞 | `{viewer_name}` `{user_uid}` |
|
||||
| `interact_other` 其他互动 | `{viewer_name}` `{user_uid}` `{interact_type}`(分享/特别关注/互粉) |
|
||||
| `buy_guard` 上舰 | `{ships_viewer_name}` `{ships_level}`(舰长/提督/总督) `{ships_num}` `{ships_price}` |
|
||||
| `guard_toast` 上舰提示 | `{ships_viewer_name}` `{ships_level}` `{guard_days}` `{toast_msg}` |
|
||||
|
||||
@@ -106,13 +106,16 @@ def main() -> int:
|
||||
"--hidden-import", "danmaku_handler",
|
||||
"--hidden-import", "tts",
|
||||
"--hidden-import", "bili_login",
|
||||
"--noconfirm",
|
||||
"--distpath", str(BUILD_DIR / "app"),
|
||||
str(ROOT / "server.py"),
|
||||
],
|
||||
)
|
||||
exe = BUILD_DIR / "app" / "bililive-tts" / "bililive-tts.exe"
|
||||
if not exe.exists():
|
||||
print(f"ERROR: PyInstaller failed, {exe} not found")
|
||||
internal = BUILD_DIR / "app" / "bililive-tts" / "_internal"
|
||||
base_lib = internal / "base_library.zip"
|
||||
if not exe.exists() or not base_lib.exists():
|
||||
print(f"ERROR: PyInstaller build incomplete: exe={exe.exists()}, base_library.zip={base_lib.exists()}")
|
||||
return 1
|
||||
print(f" OK: {exe} ({exe.stat().st_size // 1024 // 1024} MB)")
|
||||
|
||||
|
||||
+1
-5
@@ -130,7 +130,7 @@ class DanmakuHandler(blivedm.BaseHandler):
|
||||
logger.info("Super chat: %s (%d yuan): %s", message.uname, message.price, message.message)
|
||||
self._put(text)
|
||||
|
||||
# ── interact (enter room / follow / like / share) ──────────────────
|
||||
# ── interact (enter room / follow / share) ─────────────────────────
|
||||
def _on_interact_word_v2(self, client: blivedm.BLiveClient, message: InteractWordV2Message) -> None:
|
||||
msg_type = message.msg_type
|
||||
if msg_type == 1:
|
||||
@@ -141,10 +141,6 @@ class DanmakuHandler(blivedm.BaseHandler):
|
||||
text = event_text(self._rules, "follow",
|
||||
viewer_name=message.username,
|
||||
user_uid=message.uid)
|
||||
elif msg_type == 6:
|
||||
text = event_text(self._rules, "like",
|
||||
viewer_name=message.username,
|
||||
user_uid=message.uid)
|
||||
else:
|
||||
text = event_text(self._rules, "interact_other",
|
||||
viewer_name=message.username,
|
||||
|
||||
+1
-3
@@ -5,19 +5,17 @@
|
||||
"blind_box": true,
|
||||
"enter_room": true,
|
||||
"follow": false,
|
||||
"like": false,
|
||||
"interact_other": false,
|
||||
"buy_guard": true,
|
||||
"guard_toast": false,
|
||||
"super_chat": true
|
||||
},
|
||||
"templates": {
|
||||
"danmaku": "{uname}说、 {msg}",
|
||||
"danmaku": "卧槽!、是{uname}!、他说、 {msg}",
|
||||
"gift": "感谢由{viewer_name}投喂的{gift_name}",
|
||||
"blind_box": "感谢由{viewer_name}投喂的{gift_name}爆出了{blind_box_gift}",
|
||||
"enter_room": "欢迎{viewer_name}进入直播间",
|
||||
"follow": "",
|
||||
"like": "",
|
||||
"interact_other": "",
|
||||
"buy_guard": "恭喜{ships_viewer_name}成为尊贵的{ships_level}",
|
||||
"guard_toast": "",
|
||||
|
||||
+1
-3
@@ -20,7 +20,6 @@ DEFAULT_RULES = {
|
||||
"blind_box": True,
|
||||
"enter_room": True,
|
||||
"follow": False,
|
||||
"like": False,
|
||||
"interact_other": False,
|
||||
"buy_guard": True,
|
||||
"guard_toast": False,
|
||||
@@ -32,7 +31,6 @@ DEFAULT_RULES = {
|
||||
"blind_box": "\u611f\u8c22\u7531{viewer_name}\u6295\u5582\u7684{gift_name}\u7206\u51fa\u4e86{blind_box_gift}",
|
||||
"enter_room": "\u6b22\u8fce{viewer_name}\u8fdb\u5165\u76f4\u64ad\u95f4",
|
||||
"follow": "",
|
||||
"like": "",
|
||||
"interact_other": "",
|
||||
"buy_guard": "\u606d\u559c{ships_viewer_name}\u6210\u4e3a\u5c0a\u8d35\u7684{ships_level}",
|
||||
"guard_toast": "",
|
||||
@@ -42,7 +40,7 @@ DEFAULT_RULES = {
|
||||
}
|
||||
|
||||
ALL_EVENTS = [
|
||||
"danmaku", "gift", "blind_box", "enter_room", "follow", "like",
|
||||
"danmaku", "gift", "blind_box", "enter_room", "follow",
|
||||
"interact_other", "buy_guard", "guard_toast", "super_chat",
|
||||
]
|
||||
|
||||
|
||||
+1
-1
@@ -571,7 +571,7 @@ async function checkExistingLogin() {
|
||||
|
||||
const RULE_LABELS = {
|
||||
danmaku: '弹幕', gift: '礼物', blind_box: '盲盒礼物',
|
||||
enter_room: '进入房间', follow: '关注', like: '点赞',
|
||||
enter_room: '进入房间', follow: '关注',
|
||||
interact_other: '其他互动', buy_guard: '上舰',
|
||||
guard_toast: '上舰提示', super_chat: '醒目留言',
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user