mirror of
https://github.com/TeamPGM/PagerMaid_Plugins.git
synced 2024-11-22 13:35:37 +00:00
portball v1.41 ignore if not admins
This commit is contained in:
parent
f7f6e76292
commit
6537b3762b
@ -152,13 +152,13 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "portball",
|
"name": "portball",
|
||||||
"version": "1.31",
|
"version": "1.41",
|
||||||
"section": "chat",
|
"section": "chat",
|
||||||
"maintainer": "Pentacene",
|
"maintainer": "Pentacene",
|
||||||
"size": "3.6 kb",
|
"size": "4.3 kb",
|
||||||
"supported": true,
|
"supported": true,
|
||||||
"des-short": "回复你要临时禁言的人的消息来实现XX秒的禁言。",
|
"des-short": "回复你要临时禁言的人的消息来实现XX秒的禁言。",
|
||||||
"des": "portball 原因 秒数"
|
"des": "portball <原因> <秒数>"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "resou",
|
"name": "resou",
|
||||||
|
75
portball.py
75
portball.py
@ -6,44 +6,50 @@ from datetime import timedelta
|
|||||||
from telethon.tl.types import ChannelParticipantsAdmins
|
from telethon.tl.types import ChannelParticipantsAdmins
|
||||||
|
|
||||||
|
|
||||||
@listener(is_plugin=True, outgoing=True, command="portball",
|
@listener(is_plugin=True, outgoing=True, incoming=True, command="portball",
|
||||||
description="回复你要临时禁言的人的消息来实现XX秒的禁言",
|
description="回复你要临时禁言的人的消息来实现XX秒的禁言",
|
||||||
parameters="<理由>(空格)<时间/秒>")
|
parameters="<理由>(空格)<时间/秒>")
|
||||||
async def portball(context):
|
async def portball(context):
|
||||||
reply = await context.get_reply_message()
|
|
||||||
if context.is_group:
|
if context.is_group:
|
||||||
if reply:
|
admins = await context.client.get_participants(context.chat, filter=ChannelParticipantsAdmins)
|
||||||
action = context.arguments.split()
|
reply = await context.get_reply_message()
|
||||||
if reply.sender.last_name == None:
|
# if message sender is one of admins or group anonymous bot
|
||||||
last_name = ''
|
if (context.sender in admins) or (context.sender_id == 1087968824):
|
||||||
else:
|
# if this msg reply to a message
|
||||||
last_name = reply.sender.last_name
|
if reply:
|
||||||
if len(action) < 2:
|
action = context.arguments.split()
|
||||||
notification = await bot.send_message(context.chat_id, '格式是\n-portball 理由 秒数\n真蠢', reply_to = context.id)
|
# get sender's last_name
|
||||||
await sleep(10)
|
if reply.sender.last_name == None:
|
||||||
await notification.delete()
|
last_name = ''
|
||||||
try:
|
else:
|
||||||
await context.delete()
|
last_name = reply.sender.last_name
|
||||||
except:
|
# if something wrong with the command
|
||||||
pass
|
if len(action) < 2:
|
||||||
return False
|
notification = await bot.send_message(context.chat_id, '格式是\n-portball 理由 秒数\n真蠢', reply_to = context.id)
|
||||||
if int(action[1])<60:
|
await sleep(10)
|
||||||
notification = await bot.send_message(context.chat_id, '诶呀不要小于60秒啦', reply_to = context.id)
|
await notification.delete()
|
||||||
await sleep(10)
|
try:
|
||||||
await notification.delete()
|
await context.delete()
|
||||||
try:
|
except:
|
||||||
await context.delete()
|
pass
|
||||||
except:
|
return False
|
||||||
pass
|
# if time of portball less than 60 seconds
|
||||||
return False
|
if int(action[1])<60:
|
||||||
admins = await context.client.get_participants(context.chat, filter=ChannelParticipantsAdmins)
|
notification = await bot.send_message(context.chat_id, '诶呀不要小于60秒啦', reply_to = context.id)
|
||||||
if (context.sender in admins) or (context.sender_id == 1087968824):
|
await sleep(10)
|
||||||
|
await notification.delete()
|
||||||
|
try:
|
||||||
|
await context.delete()
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
return False
|
||||||
|
# portball
|
||||||
try:
|
try:
|
||||||
await bot.edit_permissions(context.chat_id, reply.sender.id, timedelta(seconds=int(action[1].replace(' ',''))), send_messages=False, send_media=False, send_stickers=False, send_gifs=False, send_games=False, send_inline=False, send_polls=False, invite_users=False, change_info=False, pin_messages=False)
|
await bot.edit_permissions(context.chat_id, reply.sender.id, timedelta(seconds=int(action[1].replace(' ',''))), send_messages=False, send_media=False, send_stickers=False, send_gifs=False, send_games=False, send_inline=False, send_polls=False, invite_users=False, change_info=False, pin_messages=False)
|
||||||
portball_message = await bot.send_message(
|
portball_message = await bot.send_message(
|
||||||
context.chat_id,
|
context.chat_id,
|
||||||
f'[{reply.sender.first_name}{last_name}](tg://user?id={reply.sender.id}) 由于 {action[0]} \n'
|
f'[{reply.sender.first_name}{last_name}](tg://user?id={reply.sender.id}) 由于 {action[0]} 被塞了{action[1]}秒口球.\n'
|
||||||
f'被暂时禁言{action[1]}秒',
|
f'到期自动拔出,无后遗症.',
|
||||||
reply_to = reply.id
|
reply_to = reply.id
|
||||||
)
|
)
|
||||||
await context.delete()
|
await context.delete()
|
||||||
@ -57,14 +63,15 @@ async def portball(context):
|
|||||||
notification = await bot.send_message(context.chat_id, '错误:我没有管理员权限或我的权限比被封禁的人要小', reply_to = context.id)
|
notification = await bot.send_message(context.chat_id, '错误:我没有管理员权限或我的权限比被封禁的人要小', reply_to = context.id)
|
||||||
await sleep(10)
|
await sleep(10)
|
||||||
await notification.delete()
|
await notification.delete()
|
||||||
|
|
||||||
|
# if not reply to any message
|
||||||
else:
|
else:
|
||||||
notification = await bot.send_message(context.chat_id, '诶呀你不是管理员,不要给人家塞口球啊', reply_to = context.id)
|
notification = await bot.send_message(context.chat_id, '你好蠢诶,都没有回复人,我哪知道你要搞谁的事情……', reply_to = context.id)
|
||||||
await sleep(10)
|
await sleep(10)
|
||||||
await notification.delete()
|
await notification.delete()
|
||||||
|
# if sender is not admin
|
||||||
else:
|
else:
|
||||||
notification = await bot.send_message(context.chat_id, '你好蠢诶,都没有回复人,我哪知道你要搞谁的事情……', reply_to = context.id)
|
return
|
||||||
await sleep(10)
|
|
||||||
await notification.delete()
|
|
||||||
else:
|
else:
|
||||||
notification = await bot.send_message(context.chat_id, '你好蠢诶,又不是群组,怎么禁言啦!', reply_to = context.id)
|
notification = await bot.send_message(context.chat_id, '你好蠢诶,又不是群组,怎么禁言啦!', reply_to = context.id)
|
||||||
await sleep(10)
|
await sleep(10)
|
||||||
|
Loading…
Reference in New Issue
Block a user