Commit eb62384
authored
feat(parser): 重构懒下载模式替代原有的延迟发送功能 (#20)
* feat(parser): 重构懒下载模式替代原有的延迟发送功能
- 移除旧的延迟发送配置选项(parser_delay_send_media、parser_delay_send_emoji_ids、parser_delay_send_lazy_download)
- 新增懒下载配置选项(parser_lazy_download)和下载命令列表(parser_download_command)
- 实现LazyManager类管理用户下载会话,支持超时自动清理
- 添加懒下载命令匹配器,用户可发送指定命令下载媒体资源
- 修改渲染器逻辑,分离立即发送和可转发的内容处理
- 移除基于表情点赞的延迟发送机制,改用命令驱动的懒下载模式
- 更新README文档中的配置说明
* feat(config): 添加懒下载模式超时配置项
- 新增 parser_lazy_download_timeout 配置项,默认值为30秒
- 在配置模型中添加对应的属性和文档说明
- 通过 lazy_download_timeout 属性提供访问接口
- 将 README.md 中的配置说明同步更新
* fix(matchers): 修复LazyManager资源清理逻辑
确保在所有情况下都能正确清理用户会话资源,
将LazyManager.remove调用移到finally块中以保证执行。
* refactor(renderer): 优化媒体内容处理逻辑
- 添加sourcery代码优化跳过注释
- 简化视频和音频内容的条件判断逻辑
- 将嵌套的条件语句重构为更清晰的if-else结构
- 保持原有的功能不变,但提高代码可读性
* chore(build): 更新.gitignore并移除VSCode设置中的ruff组织导入配置
移除.gitignore中大部分内容,只保留__pycache__/条目
移除VSCode设置中ruff.organizeImports选项
* feat(config): 分离音频和视频上传配置选项
- 将原来的 parser_need_upload 配置项拆分为 parser_need_upload_audio
和 parser_need_upload_video,分别控制音频和视频的上传行为
- 移除废弃的 need_upload 属性,保留 need_upload_audio 和
need_upload_video 属性
- 更新 README.md 中的相关配置说明
* refactor(matchers): 优化懒下载管理器的异步操作
- 将 LazyManager 的 add、get、remove 方法从异步改为同步方法
- 改进超时处理器中的任务取消逻辑,避免 self-cancel 异常
- 添加 current_task 参数来防止超时回调中的自我取消
- 更新相关调用处的 await 关键字使用1 parent 65e9be7 commit eb62384
8 files changed
Lines changed: 280 additions & 627 deletions
File tree
- .vscode
- src/nonebot_plugin_parser
- matchers
- parsers
- heybox
- renders
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
2 | | - | |
3 | | - | |
4 | | - | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | | - | |
74 | | - | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | | - | |
84 | | - | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
89 | | - | |
90 | | - | |
91 | | - | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | | - | |
96 | | - | |
97 | | - | |
98 | | - | |
99 | | - | |
100 | | - | |
101 | | - | |
102 | | - | |
103 | | - | |
104 | | - | |
105 | | - | |
106 | | - | |
107 | | - | |
108 | | - | |
109 | | - | |
110 | | - | |
111 | | - | |
112 | | - | |
113 | | - | |
114 | | - | |
115 | | - | |
116 | | - | |
117 | | - | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
126 | | - | |
127 | | - | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
136 | | - | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
142 | | - | |
143 | | - | |
144 | | - | |
145 | | - | |
146 | | - | |
147 | | - | |
148 | | - | |
149 | | - | |
150 | | - | |
151 | | - | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
| 1 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
22 | | - | |
23 | 22 | | |
24 | 23 | | |
25 | 24 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
79 | 79 | | |
80 | 80 | | |
81 | 81 | | |
82 | | - | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
83 | 86 | | |
84 | 87 | | |
85 | 88 | | |
| |||
103 | 106 | | |
104 | 107 | | |
105 | 108 | | |
106 | | - | |
107 | | - | |
| 109 | + | |
| 110 | + | |
108 | 111 | | |
109 | | - | |
110 | | - | |
| 112 | + | |
| 113 | + | |
111 | 114 | | |
112 | | - | |
113 | | - | |
| 115 | + | |
| 116 | + | |
114 | 117 | | |
115 | 118 | | |
116 | 119 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
3 | 5 | | |
| 6 | + | |
4 | 7 | | |
5 | | - | |
6 | 8 | | |
7 | 9 | | |
8 | 10 | | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | 11 | | |
13 | 12 | | |
14 | 13 | | |
| |||
45 | 44 | | |
46 | 45 | | |
47 | 46 | | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
| 47 | + | |
53 | 48 | | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
54 | 53 | | |
55 | 54 | | |
56 | 55 | | |
| |||
111 | 110 | | |
112 | 111 | | |
113 | 112 | | |
114 | | - | |
115 | | - | |
116 | | - | |
117 | | - | |
118 | | - | |
119 | 113 | | |
120 | 114 | | |
121 | 115 | | |
| |||
152 | 146 | | |
153 | 147 | | |
154 | 148 | | |
155 | | - | |
156 | | - | |
157 | | - | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
158 | 152 | | |
159 | 153 | | |
160 | | - | |
161 | | - | |
162 | | - | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
163 | 157 | | |
164 | 158 | | |
165 | | - | |
166 | | - | |
167 | | - | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
168 | 162 | | |
169 | 163 | | |
170 | 164 | | |
| |||
0 commit comments