mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 06:12:53 +08:00
56 lines
1.8 KiB
Python
56 lines
1.8 KiB
Python
from nonebot import on_command
|
||
from nonebot.permission import SUPERUSER
|
||
from nonebot.typing import T_State
|
||
from nonebot.adapters.cqhttp import Bot, MessageEvent
|
||
from nonebot.rule import to_me
|
||
from utils.utils import get_message_text, is_number
|
||
from services.log import logger
|
||
from utils.manager import group_manager
|
||
|
||
|
||
__zx_plugin_name__ = "超级用户被动开关 [Superuser]"
|
||
__plugin_usage__ = """
|
||
usage:
|
||
超级用户被动开关
|
||
指令:
|
||
开启/关闭广播通知
|
||
""".strip()
|
||
__plugin_des__ = "超级用户被动开关"
|
||
__plugin_cmd__ = [
|
||
"开启/关闭广播通知",
|
||
]
|
||
__plugin_version__ = 0.1
|
||
__plugin_author__ = "HibiKier"
|
||
|
||
|
||
oc_gb = on_command(
|
||
"开启广播通知",
|
||
aliases={"关闭广播通知"},
|
||
rule=to_me(),
|
||
permission=SUPERUSER,
|
||
priority=1,
|
||
block=True,
|
||
)
|
||
|
||
|
||
@oc_gb.handle()
|
||
async def _(bot: Bot, event: MessageEvent, state: T_State):
|
||
group = get_message_text(event.json())
|
||
if group:
|
||
if is_number(group):
|
||
group = int(group)
|
||
for g in await bot.get_group_list():
|
||
if g["group_id"] == group:
|
||
break
|
||
else:
|
||
await oc_gb.finish("没有加入这个群...", at_sender=True)
|
||
if state["_prefix"]["raw_command"] == "开启广播通知":
|
||
logger.info(f"USER {event.user_id} 开启了 GROUP {group} 的广播")
|
||
await oc_gb.finish(await group_manager.open_group_task(group, "broadcast",), at_sender=True)
|
||
else:
|
||
logger.info(f"USER {event.user_id} 关闭了 GROUP {group} 的广播")
|
||
await oc_gb.finish(await group_manager.close_group_task(group, "broadcast"), at_sender=True)
|
||
else:
|
||
await oc_gb.finish("请输入正确的群号", at_sender=True)
|
||
else:
|
||
await oc_gb.finish("请输入要关闭广播的群号", at_sender=True) |