非event卡推送,以及手动查看
This commit is contained in:
@@ -8,7 +8,7 @@ from nonebot.permission import SUPERUSER
|
||||
from nonebot.plugin.on import on_command
|
||||
|
||||
from .config import pconfig
|
||||
from .lib import rlib
|
||||
from .lib import rlib, FetchResultEvent
|
||||
|
||||
group_file = Path("config") / "nonebot_sekai_update_notify" / "group.json"
|
||||
group_file.parent.mkdir(parents=True, exist_ok=True)
|
||||
@@ -34,34 +34,41 @@ async def sync():
|
||||
data = rlib.fetch_data()
|
||||
if data is None:
|
||||
return
|
||||
message = Message()
|
||||
inner = [MessageSegment.text(f"活动 {data.event_id} 的卡牌更新了!")]
|
||||
for card in data.cards:
|
||||
inner.append(MessageSegment.text(card.text))
|
||||
for item in card.path:
|
||||
p = Path(item)
|
||||
n = MessageSegment.image(file=item)
|
||||
n.data["summary"] = f"[{p.name}]"
|
||||
inner.append(n)
|
||||
for node in inner:
|
||||
message.append(MessageSegment.node_custom(
|
||||
user_id=int(get_bot().self_id),
|
||||
nickname=pconfig.nickname,
|
||||
content=Message([node])
|
||||
))
|
||||
for component in data:
|
||||
message = Message()
|
||||
if component is FetchResultEvent:
|
||||
inner = [MessageSegment.text(f"活动 {component.event_id} 更新了!")]
|
||||
else:
|
||||
inner = [MessageSegment.text("发现了新的非活动卡牌!")]
|
||||
if len(component.cards) == 0:
|
||||
inner.append(MessageSegment.text("但没有新的卡牌。"))
|
||||
# else
|
||||
for card in component.cards:
|
||||
inner.append(MessageSegment.text(card.text))
|
||||
for item in card.path:
|
||||
p = Path(item)
|
||||
n = MessageSegment.image(file=item)
|
||||
n.data["summary"] = f"[{p.name}]"
|
||||
inner.append(n)
|
||||
for node in inner:
|
||||
message.append(MessageSegment.node_custom(
|
||||
user_id=int(get_bot().self_id),
|
||||
nickname=pconfig.nickname,
|
||||
content=Message([node])
|
||||
))
|
||||
|
||||
for group in enabled_groups:
|
||||
try:
|
||||
await get_bot().send_group_msg(message=message, group_id=group)
|
||||
except Exception as e:
|
||||
logger.error(f"发送消息到群组 {group} 失败: {e}")
|
||||
|
||||
for card in data.cards:
|
||||
for path in card.path:
|
||||
for group in enabled_groups:
|
||||
try:
|
||||
Path(path).unlink()
|
||||
await get_bot().send_group_msg(message=message, group_id=group)
|
||||
except Exception as e:
|
||||
logger.error(f"删除文件 {path} 失败: {e}")
|
||||
logger.error(f"发送消息到群组 {group} 失败: {e}")
|
||||
|
||||
for card in component.cards:
|
||||
for path in card.path:
|
||||
try:
|
||||
Path(path).unlink()
|
||||
except Exception as e:
|
||||
logger.error(f"删除文件 {path} 失败: {e}")
|
||||
|
||||
|
||||
subscribe = on_command("订阅烤leak", permission=SUPERUSER)
|
||||
|
||||
Reference in New Issue
Block a user