Skip to content

Commit b06508c

Browse files
authored
fix: 修复配置字段和插件元信息 (#463)
* fix(config): 修复配置字段读取错误 * chore: 优化依赖导入并补充插件元信息
1 parent e787128 commit b06508c

11 files changed

+33
-28
lines changed

bot.py

-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
app = nonebot.get_asgi()
66
driver = nonebot.get_driver()
77
driver.register_adapter(OneBotV11Adapter)
8-
nonebot.load_plugin("nonebot_plugin_apscheduler")
9-
nonebot.load_plugin("nonebot_plugin_guild_patch")
108
nonebot.load_plugins("src/plugins")
119

1210
if __name__ == "__main__":

src/plugins/ELF_RSS2/__init__.py

+13-5
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
import asyncio
22

3-
from nonebot import on_metaevent
3+
from nonebot import on_metaevent, require
44
from nonebot.adapters.onebot.v11 import Bot, LifecycleMetaEvent
55
from nonebot.log import logger
66
from nonebot.plugin import PluginMetadata
77

8+
require("nonebot_plugin_apscheduler")
9+
require("nonebot_plugin_guild_patch")
10+
811
from . import command
912
from . import my_trigger as tr
10-
from .config import DATA_PATH, config
13+
from .config import DATA_PATH, ELFConfig
14+
from .config import config as plugin_config
1115
from .rss_class import Rss
1216
from .utils import send_message_to_admin
1317

@@ -16,7 +20,11 @@
1620
__plugin_meta__ = PluginMetadata(
1721
name="ELF_RSS",
1822
description="QQ机器人 RSS订阅 插件,订阅源建议选择 RSSHub",
19-
usage="https://github.com/Quan666/ELF_RSS",
23+
usage="https://github.com/Quan666/ELF_RSS/blob/2.0/docs/2.0%20%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B.md",
24+
type="application",
25+
homepage="https://github.com/Quan666/ELF_RSS",
26+
config=ELFConfig,
27+
supported_adapters={"~onebot.v11"},
2028
extra={"author": "Quan666 <[email protected]>", "version": VERSION},
2129
)
2230

@@ -41,10 +49,10 @@ async def start(bot: Bot) -> None:
4149

4250
rss_list = Rss.read_rss() # 读取list
4351
if not rss_list:
44-
if config.enable_boot_message:
52+
if plugin_config.enable_boot_message:
4553
await send_message_to_admin(f"第一次启动,你还没有订阅,记得添加哟!\n{boot_message}", bot)
4654
logger.info("第一次启动,你还没有订阅,记得添加哟!")
47-
if config.enable_boot_message:
55+
if plugin_config.enable_boot_message:
4856
await send_message_to_admin(f"ELF_RSS 订阅器启动成功!\n{boot_message}", bot)
4957
logger.info("ELF_RSS 订阅器启动成功!")
5058
# 创建检查更新任务

src/plugins/ELF_RSS2/command/add_dy.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@
1212
from nonebot.params import ArgPlainText, CommandArg
1313
from nonebot.permission import SUPERUSER
1414
from nonebot.rule import to_me
15+
from nonebot_plugin_guild_patch import GUILD_ADMIN, GUILD_OWNER, GuildMessageEvent
1516

1617
from .. import my_trigger as tr
1718
from ..permission import GUILD_SUPERUSER
1819
from ..rss_class import Rss
19-
from ..utils import GUILD_ADMIN, GUILD_OWNER, GuildMessageEvent
2020

2121
RSS_ADD = on_command(
2222
"add",

src/plugins/ELF_RSS2/command/change_dy.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,13 @@
1111
from nonebot.params import ArgPlainText, CommandArg
1212
from nonebot.permission import SUPERUSER
1313
from nonebot.rule import to_me
14+
from nonebot_plugin_guild_patch import GUILD_ADMIN, GUILD_OWNER, GuildMessageEvent
1415

1516
from .. import my_trigger as tr
1617
from ..config import DATA_PATH
1718
from ..permission import GUILD_SUPERUSER
1819
from ..rss_class import Rss
19-
from ..utils import GUILD_ADMIN, GUILD_OWNER, GuildMessageEvent, regex_validate
20+
from ..utils import regex_validate
2021

2122
RSS_CHANGE = on_command(
2223
"change",

src/plugins/ELF_RSS2/command/del_dy.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,11 @@
77
from nonebot.params import ArgPlainText, CommandArg
88
from nonebot.permission import SUPERUSER
99
from nonebot.rule import to_me
10+
from nonebot_plugin_guild_patch import GUILD_ADMIN, GUILD_OWNER, GuildMessageEvent
1011

1112
from .. import my_trigger as tr
1213
from ..permission import GUILD_SUPERUSER
1314
from ..rss_class import Rss
14-
from ..utils import GUILD_ADMIN, GUILD_OWNER, GuildMessageEvent
1515

1616
RSS_DELETE = on_command(
1717
"deldy",

src/plugins/ELF_RSS2/command/rsshub_add.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@
99
from nonebot.permission import SUPERUSER
1010
from nonebot.rule import to_me
1111
from nonebot.typing import T_State
12+
from nonebot_plugin_guild_patch import GUILD_ADMIN, GUILD_OWNER
1213
from yarl import URL
1314

1415
from ..config import config
1516
from ..permission import GUILD_SUPERUSER
1617
from ..rss_class import Rss
17-
from ..utils import GUILD_ADMIN, GUILD_OWNER
1818
from .add_dy import add_feed
1919

2020
rsshub_routes: Dict[str, Any] = {}

src/plugins/ELF_RSS2/command/show_all.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@
1313
from nonebot.params import CommandArg
1414
from nonebot.permission import SUPERUSER
1515
from nonebot.rule import to_me
16+
from nonebot_plugin_guild_patch import GUILD_ADMIN, GUILD_OWNER, GuildMessageEvent
1617

1718
from ..permission import GUILD_SUPERUSER
1819
from ..rss_class import Rss
19-
from ..utils import GUILD_ADMIN, GUILD_OWNER, GuildMessageEvent
2020
from .show_dy import handle_rss_list
2121

2222
RSS_SHOW_ALL = on_command(

src/plugins/ELF_RSS2/command/show_dy.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
from nonebot.params import CommandArg
77
from nonebot.permission import SUPERUSER
88
from nonebot.rule import to_me
9+
from nonebot_plugin_guild_patch import GUILD_ADMIN, GUILD_OWNER, GuildMessageEvent
910

1011
from ..permission import GUILD_SUPERUSER
1112
from ..rss_class import Rss
12-
from ..utils import GUILD_ADMIN, GUILD_OWNER, GuildMessageEvent
1313

1414
RSS_SHOW = on_command(
1515
"show",

src/plugins/ELF_RSS2/my_trigger.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
from apscheduler.triggers.interval import IntervalTrigger
77
from async_timeout import timeout
88
from nonebot.log import logger
9+
from nonebot_plugin_apscheduler import scheduler
910

1011
from . import rss_parsing
1112
from .rss_class import Rss
12-
from .utils import scheduler
1313

1414

1515
# 检测某个rss更新

src/plugins/ELF_RSS2/qbittorrent_download.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
from apscheduler.triggers.interval import IntervalTrigger
1010
from nonebot.adapters.onebot.v11 import ActionFailed, Bot, NetworkError
1111
from nonebot.log import logger
12+
from nonebot_plugin_apscheduler import scheduler
1213
from qbittorrent import Client
1314

1415
from .config import config
@@ -17,7 +18,6 @@
1718
get_bot,
1819
get_bot_group_list,
1920
get_torrent_b16_hash,
20-
scheduler,
2121
send_message_to_admin,
2222
)
2323

src/plugins/ELF_RSS2/utils.py

+11-13
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,10 @@
88
from aiohttp import ClientSession
99
from cachetools import TTLCache
1010
from cachetools.keys import hashkey
11-
from nonebot import get_bot as _get_bot
12-
from nonebot import require
11+
from nonebot import get_bot as nonebot_get_bot
1312
from nonebot.adapters.onebot.v11 import Bot
1413
from nonebot.log import logger
1514

16-
require("nonebot_plugin_apscheduler") # noqa
17-
from nonebot_plugin_apscheduler import scheduler # noqa
18-
19-
require("nonebot_plugin_guild_patch") # noqa
20-
from nonebot_plugin_guild_patch import GuildMessageEvent # noqa
21-
from nonebot_plugin_guild_patch.permission import GUILD_ADMIN, GUILD_OWNER # noqa
22-
2315
from .config import config
2416
from .parsing.utils import get_proxy
2517

@@ -120,10 +112,16 @@ def get_torrent_b16_hash(content: bytes) -> str:
120112

121113
async def send_message_to_admin(message: str, bot: Optional[Bot] = None) -> None:
122114
if bot is None:
123-
bot: Bot = await get_bot() # type: ignore
115+
bot = await get_bot()
124116
if bot is None:
125117
return
126-
await bot.send_private_msg(user_id=int(list(config.superusers)[0]), message=message)
118+
try:
119+
await bot.send_private_msg(
120+
user_id=int(list(config.superusers)[0]), message=message
121+
)
122+
except Exception as e:
123+
logger.error(f"管理员消息推送失败:{e}")
124+
logger.error(f"消息内容:{message}")
127125

128126

129127
async def send_msg(
@@ -240,10 +238,10 @@ async def get_bot() -> Optional[Bot]:
240238
global bot_offline
241239
bot: Optional[Bot] = None
242240
try:
243-
bot = _get_bot() # type: ignore
241+
bot = nonebot_get_bot() # type: ignore
244242
bot_offline = False
245243
except ValueError:
246-
if not bot_offline and config.telegram_admin_id and config.telegram_bot_token:
244+
if not bot_offline and config.telegram_admin_ids and config.telegram_bot_token:
247245
await send_message_to_telegram_admin("QQ Bot 已离线!")
248246
logger.warning("Bot 已离线!")
249247
bot_offline = True

0 commit comments

Comments
 (0)