fucksticker 删除烦人的贴纸

This commit is contained in:
xtaodada 2021-07-05 23:10:05 +08:00
parent 37d2b7bfd2
commit a332857e48
No known key found for this signature in database
GPG Key ID: EE4DC37B55E24736
2 changed files with 44 additions and 0 deletions

34
fucksticker.py Normal file
View File

@ -0,0 +1,34 @@
""" Module to automate sticker deletion. """
from asyncio import sleep
from pagermaid import log
from pagermaid.listener import listener
from pagermaid.utils import alias_command
@listener(is_plugin=True, outgoing=True, command=alias_command("fucksticker"),
description="删除最近 50 条消息中的 sticker 。"
"无管理员权限将只删除自己发送的 sticker 。")
async def fucksticker(context):
""" Deletes specific amount of stickers in chat. """
input_chat = await context.get_input_chat()
count_buffer = 0
count = 0
messages = []
async for message in context.client.iter_messages(context.chat_id):
if count_buffer == 50:
break
if message.sticker:
count += 1
messages.append(message)
else:
pass
count_buffer += 1
text = f"删除了 {count} / {count_buffer} 条 sticker 。"
try:
await context.client.delete_messages(input_chat, messages)
except Exception as e:
text = f"删除了 {count_buffer} 条消息中的 sticker 。"
await log(f'插件 fucksticker 发生错误:\n{e}')
await context.edit(text)
await sleep(1)
await context.delete()

View File

@ -539,6 +539,16 @@
"supported": true,
"des-short": "贴纸包批量导出",
"des": "可选 pypi 前置 lottie[gif] 。"
},
{
"name": "fucksticker",
"version": "1.0",
"section": "chat",
"maintainer": "xtaodada",
"size": "1.14 kb",
"supported": true,
"des-short": "删除烦人的贴纸",
"des": "删除最近 50 条消息中的 sticker 。"
}
]
}