diff options
Diffstat (limited to 'ATRI/plugins/manage/modules/broadcast.py')
-rw-r--r-- | ATRI/plugins/manage/modules/broadcast.py | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/ATRI/plugins/manage/modules/broadcast.py b/ATRI/plugins/manage/modules/broadcast.py deleted file mode 100644 index 7f7816d..0000000 --- a/ATRI/plugins/manage/modules/broadcast.py +++ /dev/null @@ -1,66 +0,0 @@ -import asyncio -from random import randint - -from nonebot.typing import T_State -from nonebot.permission import SUPERUSER -from nonebot.adapters.cqhttp import Bot, MessageEvent - -from ATRI.service import Service as sv - - -__doc__ = """ -群发内容 -权限组:维护者 -用法: - 广播 内容 -""" - -broadcast = sv.on_command(cmd="广播", docs=__doc__, permission=SUPERUSER) - - [email protected]_parser # type: ignore -async def _broadcast_load(bot: Bot, event: MessageEvent, state: T_State) -> None: - msg = str(event.message) - quit_list = ["算了", "罢了", "取消"] - if msg in quit_list: - await broadcast.finish("好吧...") - if not msg: - await broadcast.reject("想群发啥呢0w0") - else: - state["msg"] = msg - - -async def _broadcast(bot: Bot, event: MessageEvent, state: T_State) -> None: - msg = str(event.message).strip() - if msg: - state["msg"] = msg - - [email protected]("msg", prompt="请告诉咱需要群发的内容~!") -async def _deal_broadcast(bot: Bot, event: MessageEvent, state: T_State) -> None: - msg = state["msg"] - group_list = await bot.get_group_list() - succ_list = [] - err_list = [] - - for group in group_list: - await asyncio.sleep(randint(0, 2)) - try: - await bot.send_group_msg(group_id=group["group_id"], message=msg) - except BaseException: - err_list.append(group["group_id"]) - - msg0 = "" - for i in err_list: - msg0 += f" {i}\n" - - repo_msg = ( - f"推送消息:\n{msg}\n" - "————————\n" - f"总共:{len(group_list)}\n" - f"成功推送:{len(succ_list)}\n" - f"失败[{len(err_list)}]个:\n" - ) + msg0 - - await broadcast.finish(repo_msg) |