nonebot-plugin-jmdownloader 1.1.0__py3-none-any.whl → 1.1.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- nonebot_plugin_jmdownloader/bot/handlers/common.py +26 -0
- nonebot_plugin_jmdownloader/bot/handlers/download.py +9 -16
- nonebot_plugin_jmdownloader/bot/handlers/query.py +5 -18
- nonebot_plugin_jmdownloader/bot/handlers/search.py +7 -19
- nonebot_plugin_jmdownloader/config.py +1 -0
- {nonebot_plugin_jmdownloader-1.1.0.dist-info → nonebot_plugin_jmdownloader-1.1.1.dist-info}/METADATA +4 -1
- {nonebot_plugin_jmdownloader-1.1.0.dist-info → nonebot_plugin_jmdownloader-1.1.1.dist-info}/RECORD +8 -7
- {nonebot_plugin_jmdownloader-1.1.0.dist-info → nonebot_plugin_jmdownloader-1.1.1.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"""公共前置检查 handlers
|
|
2
|
+
|
|
3
|
+
提供可复用的前置检查 handler,供其他 handler 模块使用。
|
|
4
|
+
通过参数类型注解(如 GroupMessageEvent / PrivateMessageEvent)控制触发范围。
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from nonebot.adapters.onebot.v11 import GroupMessageEvent, PrivateMessageEvent
|
|
8
|
+
from nonebot.matcher import Matcher
|
|
9
|
+
|
|
10
|
+
from .. import DataManagerDep
|
|
11
|
+
from ..dependencies import plugin_config
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
async def private_enabled_check(event: PrivateMessageEvent, matcher: Matcher):
|
|
15
|
+
"""私聊功能开关检查:私聊功能禁用时静默终止(仅私聊触发)"""
|
|
16
|
+
if not plugin_config.jmcomic_allow_private:
|
|
17
|
+
await matcher.finish()
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
async def group_enabled_check(
|
|
21
|
+
event: GroupMessageEvent, matcher: Matcher, dm: DataManagerDep
|
|
22
|
+
):
|
|
23
|
+
"""群聊启用检查:群未启用则静默终止(仅群聊触发)"""
|
|
24
|
+
group = dm.get_group(event.group_id)
|
|
25
|
+
if not group.is_enabled(dm.default_enabled):
|
|
26
|
+
await matcher.finish()
|
|
@@ -19,19 +19,11 @@ from nonebot.permission import SUPERUSER
|
|
|
19
19
|
|
|
20
20
|
from .. import DataManagerDep, JmServiceDep
|
|
21
21
|
from ..dependencies import Photo
|
|
22
|
+
from .common import group_enabled_check, private_enabled_check
|
|
22
23
|
|
|
23
24
|
# region 前置检查 handler
|
|
24
25
|
|
|
25
26
|
|
|
26
|
-
async def group_enabled_check(
|
|
27
|
-
event: GroupMessageEvent, matcher: Matcher, dm: DataManagerDep
|
|
28
|
-
):
|
|
29
|
-
"""群聊启用检查:群未启用则静默终止(仅群聊触发)"""
|
|
30
|
-
group = dm.get_group(event.group_id)
|
|
31
|
-
if not group.is_enabled(dm.default_enabled):
|
|
32
|
-
await matcher.finish()
|
|
33
|
-
|
|
34
|
-
|
|
35
27
|
async def user_blacklist_check(
|
|
36
28
|
event: GroupMessageEvent, matcher: Matcher, dm: DataManagerDep
|
|
37
29
|
):
|
|
@@ -197,13 +189,14 @@ jm_download = on_command(
|
|
|
197
189
|
aliases={"JM下载"},
|
|
198
190
|
block=True,
|
|
199
191
|
handlers=[
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
192
|
+
private_enabled_check, # 1. 私聊功能开关检查(仅私聊,禁用时静默终止)
|
|
193
|
+
group_enabled_check, # 2. 群聊启用检查(仅群聊,未启用静默终止)
|
|
194
|
+
user_blacklist_check, # 3. 群聊黑名单检查(仅群聊)
|
|
195
|
+
download_limit_check, # 4. 下载次数检查(群聊和私聊)
|
|
196
|
+
photo_restriction_check, # 5. 内容限制检查(仅群聊)
|
|
197
|
+
consume_and_notify, # 6. 扣次数 + 通知(群聊和私聊)
|
|
198
|
+
group_download_and_upload, # 7. 下载 + 上传群文件(仅群聊)
|
|
199
|
+
private_download_and_upload, # 8. 下载 + 上传私聊文件(仅私聊)
|
|
207
200
|
],
|
|
208
201
|
)
|
|
209
202
|
|
|
@@ -7,30 +7,16 @@ from nonebot import on_command
|
|
|
7
7
|
from nonebot.adapters.onebot.v11 import (
|
|
8
8
|
ActionFailed,
|
|
9
9
|
Bot,
|
|
10
|
-
GroupMessageEvent,
|
|
11
10
|
Message,
|
|
12
11
|
MessageEvent,
|
|
13
12
|
MessageSegment,
|
|
14
13
|
)
|
|
15
14
|
from nonebot.matcher import Matcher
|
|
16
15
|
|
|
17
|
-
from .. import
|
|
16
|
+
from .. import JmServiceDep
|
|
18
17
|
from ..dependencies import Photo
|
|
19
18
|
from ..nonebot_utils import send_forward_msg
|
|
20
|
-
|
|
21
|
-
# region 前置检查 handler
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
async def group_enabled_check(
|
|
25
|
-
event: GroupMessageEvent, matcher: Matcher, dm: DataManagerDep
|
|
26
|
-
):
|
|
27
|
-
"""群聊启用检查:群未启用则静默终止(仅群聊触发)"""
|
|
28
|
-
group = dm.get_group(event.group_id)
|
|
29
|
-
if not group.is_enabled(dm.default_enabled):
|
|
30
|
-
await matcher.finish()
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
# endregion
|
|
19
|
+
from .common import group_enabled_check, private_enabled_check
|
|
34
20
|
|
|
35
21
|
# region 事件处理函数
|
|
36
22
|
|
|
@@ -68,8 +54,9 @@ jm_query = on_command(
|
|
|
68
54
|
aliases={"JM查询"},
|
|
69
55
|
block=True,
|
|
70
56
|
handlers=[
|
|
71
|
-
|
|
72
|
-
|
|
57
|
+
private_enabled_check, # 1. 私聊功能开关检查(仅私聊,禁用时静默终止)
|
|
58
|
+
group_enabled_check, # 2. 群聊启用检查(仅群聊,未启用静默终止)
|
|
59
|
+
query_handler, # 3. 查询处理(群聊和私聊都触发)
|
|
73
60
|
],
|
|
74
61
|
)
|
|
75
62
|
|
|
@@ -9,7 +9,6 @@ from nonebot import on_command
|
|
|
9
9
|
from nonebot.adapters.onebot.v11 import (
|
|
10
10
|
ActionFailed,
|
|
11
11
|
Bot,
|
|
12
|
-
GroupMessageEvent,
|
|
13
12
|
Message,
|
|
14
13
|
MessageEvent,
|
|
15
14
|
MessageSegment,
|
|
@@ -20,20 +19,7 @@ from ...infra import blur_image_async
|
|
|
20
19
|
from .. import DataManagerDep, JmServiceDep, SessionsDep
|
|
21
20
|
from ..dependencies import ArgText, RandomNickname
|
|
22
21
|
from ..nonebot_utils import send_forward_msg
|
|
23
|
-
|
|
24
|
-
# region 前置检查 handler
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
async def group_enabled_check(
|
|
28
|
-
event: GroupMessageEvent, matcher: Matcher, dm: DataManagerDep
|
|
29
|
-
):
|
|
30
|
-
"""群聊启用检查:群未启用则静默终止(仅群聊触发)"""
|
|
31
|
-
group = dm.get_group(event.group_id)
|
|
32
|
-
if not group.is_enabled(dm.default_enabled):
|
|
33
|
-
await matcher.finish()
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
# endregion
|
|
22
|
+
from .common import group_enabled_check, private_enabled_check
|
|
37
23
|
|
|
38
24
|
# region 辅助函数
|
|
39
25
|
|
|
@@ -206,8 +192,9 @@ jm_search = on_command(
|
|
|
206
192
|
aliases={"JM搜索"},
|
|
207
193
|
block=True,
|
|
208
194
|
handlers=[
|
|
209
|
-
|
|
210
|
-
|
|
195
|
+
private_enabled_check, # 1. 私聊功能开关检查(仅私聊,禁用时静默终止)
|
|
196
|
+
group_enabled_check, # 2. 群聊启用检查(仅群聊,未启用静默终止)
|
|
197
|
+
search_handler, # 3. 搜索处理(群聊和私聊都触发)
|
|
211
198
|
],
|
|
212
199
|
)
|
|
213
200
|
|
|
@@ -216,8 +203,9 @@ jm_next_page = on_command(
|
|
|
216
203
|
aliases={"JM下一页"},
|
|
217
204
|
block=True,
|
|
218
205
|
handlers=[
|
|
219
|
-
|
|
220
|
-
|
|
206
|
+
private_enabled_check, # 1. 私聊功能开关检查(仅私聊,禁用时静默终止)
|
|
207
|
+
group_enabled_check, # 2. 群聊启用检查(仅群聊,未启用静默终止)
|
|
208
|
+
next_page_handler, # 3. 下一页处理(群聊和私聊都触发)
|
|
221
209
|
],
|
|
222
210
|
)
|
|
223
211
|
|
|
@@ -27,6 +27,7 @@ class PluginConfig(BaseModel):
|
|
|
27
27
|
|
|
28
28
|
# 数据管理
|
|
29
29
|
jmcomic_allow_groups: bool = Field(default=False, description="是否默认启用所有群")
|
|
30
|
+
jmcomic_allow_private: bool = Field(default=True, description="是否允许私聊功能")
|
|
30
31
|
jmcomic_user_limits: int = Field(
|
|
31
32
|
default=5, description="每位用户的每周下载限制次数"
|
|
32
33
|
)
|
{nonebot_plugin_jmdownloader-1.1.0.dist-info → nonebot_plugin_jmdownloader-1.1.1.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: nonebot-plugin-jmdownloader
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.1
|
|
4
4
|
Summary: 基于 Nonebot2 的 JMComic 插件
|
|
5
5
|
Author: Misty02600
|
|
6
6
|
Author-email: Misty02600 <xiao02600@gmail.com>
|
|
@@ -135,6 +135,7 @@ plugins = ["nonebot_plugin_jmdownloader"]
|
|
|
135
135
|
| jmcomic_log | 否 | False | 是否开启JMComic-Crawler-Python的日志输出 |
|
|
136
136
|
| jmcomic_thread_count | 否 | 10 | 下载线程数量 |
|
|
137
137
|
| jmcomic_allow_groups | 否 | False | 是否默认启用所有群 |
|
|
138
|
+
| jmcomic_allow_private | 否 | True | 是否允许私聊使用功能 |
|
|
138
139
|
| jmcomic_user_limits | 否 | 5 | 每位用户的每周下载限制次数 |
|
|
139
140
|
| jmcomic_output_format | 否 | pdf | 输出格式:pdf 或 zip |
|
|
140
141
|
| jmcomic_zip_password | 否 | 无 | ZIP 压缩包密码(仅 zip 格式有效) |
|
|
@@ -156,6 +157,8 @@ JMCOMIC_USERNAME=******
|
|
|
156
157
|
JMCOMIC_PASSWORD=******
|
|
157
158
|
# JMComic 是否默认启用所有群,建议关闭
|
|
158
159
|
JMCOMIC_ALLOW_GROUPS=False
|
|
160
|
+
# JMComic 是否允许私聊使用功能
|
|
161
|
+
JMCOMIC_ALLOW_PRIVATE=True
|
|
159
162
|
# JMComic 每位用户的每周下载限制次数
|
|
160
163
|
JMCOMIC_USER_LIMITS=5
|
|
161
164
|
# JMComic 输出格式:pdf 或 zip
|
{nonebot_plugin_jmdownloader-1.1.0.dist-info → nonebot_plugin_jmdownloader-1.1.1.dist-info}/RECORD
RENAMED
|
@@ -4,13 +4,14 @@ nonebot_plugin_jmdownloader/bot/dependencies.py,sha256=12zLn_fa9PeaG33cd1ILXuqck
|
|
|
4
4
|
nonebot_plugin_jmdownloader/bot/handlers/__init__.py,sha256=0N2L5IuSVQLrTRxKPVie6a1JgoxTcc4oMy6GOqf6RQI,419
|
|
5
5
|
nonebot_plugin_jmdownloader/bot/handlers/ban_id_tag.py,sha256=62NYG9jQ6PgO7iEWnPSGe5KxJokrbGwj3S5ig8R0060,1547
|
|
6
6
|
nonebot_plugin_jmdownloader/bot/handlers/blacklist.py,sha256=x_SKJwo3kAUQcaxlvZuRFX5u3zkZ4mzf0G4prWbB8uA,3103
|
|
7
|
-
nonebot_plugin_jmdownloader/bot/handlers/
|
|
7
|
+
nonebot_plugin_jmdownloader/bot/handlers/common.py,sha256=unuSPBwGvWpWdgA6I2tYB1ZLaC4PofK3eNpigKqb49I,950
|
|
8
|
+
nonebot_plugin_jmdownloader/bot/handlers/download.py,sha256=99WuuIn-0LClyTuU9YFT2icf8F_Lgy_1JhZSjEiSypk,5846
|
|
8
9
|
nonebot_plugin_jmdownloader/bot/handlers/group_control.py,sha256=taX1EYfmjYBVh-4nhQuH8fZWPwLkPPaNPglXbHquaRU,4954
|
|
9
|
-
nonebot_plugin_jmdownloader/bot/handlers/query.py,sha256=
|
|
10
|
+
nonebot_plugin_jmdownloader/bot/handlers/query.py,sha256=0vndOOpEl4BJ7TEqbiNBzZ2I6FupBIVOH3ON1fLvSOg,1633
|
|
10
11
|
nonebot_plugin_jmdownloader/bot/handlers/scheduled.py,sha256=cFusQ4yKQGaHnv41wZ9JmOzlj1ElI9vhpf2oV4JIOgA,1221
|
|
11
|
-
nonebot_plugin_jmdownloader/bot/handlers/search.py,sha256=
|
|
12
|
+
nonebot_plugin_jmdownloader/bot/handlers/search.py,sha256=IQg6ysdt2gP3AwXP3Cy7VdaZue3uwAEKCK4D12XR7zY,6255
|
|
12
13
|
nonebot_plugin_jmdownloader/bot/nonebot_utils.py,sha256=IPEAz8bZ0QutERLJVaPNdlghW50J1rs6xfsJxwZ9b1k,612
|
|
13
|
-
nonebot_plugin_jmdownloader/config.py,sha256=
|
|
14
|
+
nonebot_plugin_jmdownloader/config.py,sha256=CEype-OIk7PUHbbcNGM5-AtGJUz-bw34czztHpc6aHA,1701
|
|
14
15
|
nonebot_plugin_jmdownloader/core/__init__.py,sha256=8vQ9O18deFU1kKOHCT8Dr-CKdl5j_eZ8wuXaL8_pO70,210
|
|
15
16
|
nonebot_plugin_jmdownloader/core/data_models.py,sha256=U2VF_17JwHUNGXq9TVzz9OZ0grjPoPwFe_GF6EdiXZA,4530
|
|
16
17
|
nonebot_plugin_jmdownloader/core/enums.py,sha256=ikfmrFJouqh8CvbDudSBlx7_bM6aalAPj_LI7rOgVC4,144
|
|
@@ -22,6 +23,6 @@ nonebot_plugin_jmdownloader/infra/jm_service.py,sha256=Rj3GnxXGPio80PIRnOpXJZqfK
|
|
|
22
23
|
nonebot_plugin_jmdownloader/infra/pdf_utils.py,sha256=U0b0PQv8OSH4ZWlG2I4AVeSqFzq346nNXcw1CyYiFlI,2334
|
|
23
24
|
nonebot_plugin_jmdownloader/infra/search_session.py,sha256=eYv42Al1NbHTqalj60bGh4dwIzByaLH3doNfthU5s-8,1369
|
|
24
25
|
nonebot_plugin_jmdownloader/migration.py,sha256=xkHYWRdignvhkQYdvkHVCwj58t4qdLhsX6QWDWnv2Cs,7546
|
|
25
|
-
nonebot_plugin_jmdownloader-1.1.
|
|
26
|
-
nonebot_plugin_jmdownloader-1.1.
|
|
27
|
-
nonebot_plugin_jmdownloader-1.1.
|
|
26
|
+
nonebot_plugin_jmdownloader-1.1.1.dist-info/WHEEL,sha256=iHtWm8nRfs0VRdCYVXocAWFW8ppjHL-uTJkAdZJKOBM,80
|
|
27
|
+
nonebot_plugin_jmdownloader-1.1.1.dist-info/METADATA,sha256=tU2rX5_oVbjDXXWSvHKbJnrXLds6CUQNMjgC4hQmgQc,9875
|
|
28
|
+
nonebot_plugin_jmdownloader-1.1.1.dist-info/RECORD,,
|
{nonebot_plugin_jmdownloader-1.1.0.dist-info → nonebot_plugin_jmdownloader-1.1.1.dist-info}/WHEEL
RENAMED
|
File without changes
|