hibikier
# 被动技能发送控制
通过hook来阻断被动技能发送的信息
# 被动技能
一般为 主动发送消息 ,不受真寻插件控制的定时任务或on_message等
# 使用hook被动控制
- 在消息添加特定字符为来达到阻断消息发送的目的
- 在权限为-1的群中不再需要手动发送“关闭全部被动”之类的命令
- 不需要写if,完全由hook来管理
# 定义被动技能
使用标准定义一个被动,如果不明白如何定义请查看插件标准!
__plugin_task__ = {"genshin_alc", "原神黄历提醒"}
1
特定字符串:
- [_task|{plugin_name}]]
# 栗子
matcher.send("[[_task|genshin_alc]]" + "这是原神黄历提醒的被动提醒")
1
# 完整栗子
@scheduler.scheduled_job(
"cron",
hour=10,
minute=25,
)
async def _():
# 每日提醒
bot = get_bot()
if bot:
gl = await bot.get_group_list()
gl = [g["group_id"] for g in gl]
alc_img = await get_alc_image(ALC_PATH)
if alc_img:
mes = "[[_task|genshin_alc]]" + alc_img + "\n ※ 黄历数据来源于 genshin.pub"
for gid in gl:
if await group_manager.check_group_task_status(gid, "genshin_alc"):
await bot.send_group_msg(group_id=int(gid), message="" + mes)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17