- New event_rules.py: load/save event_rules.json, robust template renderer (missing vars -> empty, empty template -> muted), guard level mapping - danmaku_handler.py: custom SEND_GIFT callback to extract blind_gift_name; implements all event callbacks feeding the TTS queue per user rules - server.py: GET/POST /api/rules, load rules at startup, pass to client - Web UI: 'Event Voice Rules' panel (per-event toggle + template + save) - main.py CLI loads rules; build.py bundles event_rules.json - skip_free_gift option to mute silver free gifts - Rebuild portable zip (83.8 MB)
27 lines
766 B
JSON
27 lines
766 B
JSON
{
|
|
"enabled": {
|
|
"danmaku": true,
|
|
"gift": true,
|
|
"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}",
|
|
"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": "",
|
|
"super_chat": "{viewer_name}的醒目留言:{super_chat_content}"
|
|
},
|
|
"skip_free_gift": true
|
|
} |