chore(userbot): apply ruff check --fix and ruff format

- ruff check --fix: 210 auto-fixed errors (import sorting, trailing
  whitespace, unused imports, f-string fixups, deprecated annotations)
- ruff format: 104 files reformatted to consistent style
- 268 non-auto-fixable issues remain (S113 requests timeout, etc.)
This commit is contained in:
2026-06-19 12:19:01 +02:00
parent 95cec59263
commit 7ba6bc44f2
104 changed files with 4338 additions and 5319 deletions
+47 -86
View File
@@ -22,18 +22,17 @@ from pyrogram.types import (
InputMediaVideo,
Message,
)
from utils.db import db
from utils.misc import modules_help, prefix
from utils.scripts import format_exc
def get_filters_chat(chat_id):
return db.get("core.filters", f"{chat_id}", {})
return db.get('core.filters', f'{chat_id}', {})
def set_filters_chat(chat_id, filters_):
return db.set("core.filters", f"{chat_id}", filters_)
return db.set('core.filters', f'{chat_id}', filters_)
async def contains_filter(_, __, m):
@@ -48,21 +47,17 @@ contains = filters.create(contains_filter)
async def filters_main_handler(client: Client, message: Message):
value = get_filters_chat(message.chat.id)[message.text.lower()]
try:
await client.get_messages(int(value["CHAT_ID"]), int(value["MESSAGE_ID"]))
await client.get_messages(int(value['CHAT_ID']), int(value['MESSAGE_ID']))
except errors.RPCError as exc:
raise ContinuePropagation from exc
if value.get("MEDIA_GROUP"):
messages_grouped = await client.get_media_group(
int(value["CHAT_ID"]), int(value["MESSAGE_ID"])
)
if value.get('MEDIA_GROUP'):
messages_grouped = await client.get_media_group(int(value['CHAT_ID']), int(value['MESSAGE_ID']))
media_grouped_list = []
for _ in messages_grouped:
if _.photo:
if _.caption:
media_grouped_list.append(
InputMediaPhoto(_.photo.file_id, _.caption.HTML)
)
media_grouped_list.append(InputMediaPhoto(_.photo.file_id, _.caption.HTML))
else:
media_grouped_list.append(InputMediaPhoto(_.photo.file_id))
elif _.video:
@@ -76,20 +71,14 @@ async def filters_main_handler(client: Client, message: Message):
)
)
else:
media_grouped_list.append(
InputMediaVideo(_.video.file_id, _.caption.HTML)
)
media_grouped_list.append(InputMediaVideo(_.video.file_id, _.caption.HTML))
elif _.video.thumbs:
media_grouped_list.append(
InputMediaVideo(_.video.file_id, _.video.thumbs[0].file_id)
)
media_grouped_list.append(InputMediaVideo(_.video.file_id, _.video.thumbs[0].file_id))
else:
media_grouped_list.append(InputMediaVideo(_.video.file_id))
elif _.audio:
if _.caption:
media_grouped_list.append(
InputMediaAudio(_.audio.file_id, _.caption.HTML)
)
media_grouped_list.append(InputMediaAudio(_.audio.file_id, _.caption.HTML))
else:
media_grouped_list.append(InputMediaAudio(_.audio.file_id))
elif _.document:
@@ -103,77 +92,54 @@ async def filters_main_handler(client: Client, message: Message):
)
)
else:
media_grouped_list.append(
InputMediaDocument(_.document.file_id, _.caption.HTML)
)
media_grouped_list.append(InputMediaDocument(_.document.file_id, _.caption.HTML))
elif _.document.thumbs:
media_grouped_list.append(
InputMediaDocument(
_.document.file_id, _.document.thumbs[0].file_id
)
)
media_grouped_list.append(InputMediaDocument(_.document.file_id, _.document.thumbs[0].file_id))
else:
media_grouped_list.append(InputMediaDocument(_.document.file_id))
await client.send_media_group(
message.chat.id, media_grouped_list, reply_to_message_id=message.id
)
await client.send_media_group(message.chat.id, media_grouped_list, reply_to_message_id=message.id)
else:
await client.copy_message(
message.chat.id,
int(value["CHAT_ID"]),
int(value["MESSAGE_ID"]),
int(value['CHAT_ID']),
int(value['MESSAGE_ID']),
reply_to_message_id=message.id,
)
raise ContinuePropagation
@Client.on_message(filters.command(["filter"], prefix) & filters.me)
@Client.on_message(filters.command(['filter'], prefix) & filters.me)
async def filter_handler(client: Client, message: Message):
try:
if len(message.text.split()) < 2:
return await message.edit(
f"<b>Usage</b>: <code>{prefix}filter [name] (Reply required)</code>"
)
return await message.edit(f'<b>Usage</b>: <code>{prefix}filter [name] (Reply required)</code>')
name = message.text.split(maxsplit=1)[1].lower()
chat_filters = get_filters_chat(message.chat.id)
if name in chat_filters.keys():
return await message.edit(
f"<b>Filter</b> <code>{name}</code> already exists."
)
return await message.edit(f'<b>Filter</b> <code>{name}</code> already exists.')
if not message.reply_to_message:
return await message.edit("<b>Reply to message</b> please.")
return await message.edit('<b>Reply to message</b> please.')
try:
chat = await client.get_chat(db.get("core.notes", "chat_id", 0))
chat = await client.get_chat(db.get('core.notes', 'chat_id', 0))
except (errors.RPCError, ValueError, KeyError):
# group is not accessible or isn't created
chat = await client.create_supergroup(
"Userbot_Notes_Filters", "Don't touch this group, please"
)
db.set("core.notes", "chat_id", chat.id)
chat = await client.create_supergroup('Userbot_Notes_Filters', "Don't touch this group, please")
db.set('core.notes', 'chat_id', chat.id)
chat_id = chat.id
if message.reply_to_message.media_group_id:
get_media_group = [
_.id
for _ in await client.get_media_group(
message.chat.id, message.reply_to_message.id
)
]
get_media_group = [_.id for _ in await client.get_media_group(message.chat.id, message.reply_to_message.id)]
try:
message_id = await client.forward_messages(
chat_id, message.chat.id, get_media_group
)
message_id = await client.forward_messages(chat_id, message.chat.id, get_media_group)
except errors.ChatForwardsRestricted:
await message.edit(
"<b>Forwarding messages is restricted by chat admins</b>"
)
await message.edit('<b>Forwarding messages is restricted by chat admins</b>')
return
filter_ = {
"MESSAGE_ID": str(message_id[1].id),
"MEDIA_GROUP": True,
"CHAT_ID": str(chat_id),
'MESSAGE_ID': str(message_id[1].id),
'MEDIA_GROUP': True,
'CHAT_ID': str(chat_id),
}
else:
try:
@@ -181,44 +147,42 @@ async def filter_handler(client: Client, message: Message):
except errors.ChatForwardsRestricted:
message_id = await message.copy(chat_id)
filter_ = {
"MEDIA_GROUP": False,
"MESSAGE_ID": str(message_id.id),
"CHAT_ID": str(chat_id),
'MEDIA_GROUP': False,
'MESSAGE_ID': str(message_id.id),
'CHAT_ID': str(chat_id),
}
chat_filters.update({name: filter_})
set_filters_chat(message.chat.id, chat_filters)
return await message.edit(
f"<b>Filter</b> <code>{name}</code> has been added.",
f'<b>Filter</b> <code>{name}</code> has been added.',
)
except Exception as e:
return await message.edit(format_exc(e))
@Client.on_message(filters.command(["filters"], prefix) & filters.me)
@Client.on_message(filters.command(['filters'], prefix) & filters.me)
async def filters_handler(_, message: Message):
try:
text = ""
text = ''
for index, a in enumerate(get_filters_chat(message.chat.id).items(), start=1):
key, _ = a
key = key.replace("<", "").replace(">", "")
text += f"{index}. <code>{key}</code>\n"
text = f"<b>Your filters in current chat</b>:\n\n" f"{text}"
key = key.replace('<', '').replace('>', '')
text += f'{index}. <code>{key}</code>\n'
text = f'<b>Your filters in current chat</b>:\n\n{text}'
text = text[:4096]
return await message.edit(text)
except Exception as e:
return await message.edit(format_exc(e))
@Client.on_message(
filters.command(["delfilter", "filterdel", "fdel"], prefix) & filters.me
)
@Client.on_message(filters.command(['delfilter', 'filterdel', 'fdel'], prefix) & filters.me)
async def filter_del_handler(_, message: Message):
try:
if len(message.text.split()) < 2:
return await message.edit(
f"<b>Usage</b>: <code>{prefix}fdel [name]</code>",
f'<b>Usage</b>: <code>{prefix}fdel [name]</code>',
)
name = message.text.split(maxsplit=1)[1].lower()
chat_filters = get_filters_chat(message.chat.id)
@@ -229,18 +193,18 @@ async def filter_del_handler(_, message: Message):
del chat_filters[name]
set_filters_chat(message.chat.id, chat_filters)
return await message.edit(
f"<b>Filter</b> <code>{name}</code> has been deleted.",
f'<b>Filter</b> <code>{name}</code> has been deleted.',
)
except Exception as e:
return await message.edit(format_exc(e))
@Client.on_message(filters.command(["fsearch"], prefix) & filters.me)
@Client.on_message(filters.command(['fsearch'], prefix) & filters.me)
async def filter_search_handler(_, message: Message):
try:
if len(message.text.split()) < 2:
return await message.edit(
f"<b>Usage</b>: <code>{prefix}fsearch [name]</code>",
f'<b>Usage</b>: <code>{prefix}fsearch [name]</code>',
)
name = message.text.split(maxsplit=1)[1].lower()
chat_filters = get_filters_chat(message.chat.id)
@@ -248,17 +212,14 @@ async def filter_search_handler(_, message: Message):
return await message.edit(
f"<b>Filter</b> <code>{name}</code> doesn't exists.",
)
return await message.edit(
f"<b>Trigger</b>:\n<code>{name}</code"
f">\n<b>Answer</b>:\n{chat_filters[name]}"
)
return await message.edit(f'<b>Trigger</b>:\n<code>{name}</code>\n<b>Answer</b>:\n{chat_filters[name]}')
except Exception as e:
return await message.edit(format_exc(e))
modules_help["filters"] = {
"filter [name]": "Create filter (Reply required)",
"filters": "List of all triggers",
"fdel [name]": "Delete filter by name",
"fsearch [name]": "Info filter by name",
modules_help['filters'] = {
'filter [name]': 'Create filter (Reply required)',
'filters': 'List of all triggers',
'fdel [name]': 'Delete filter by name',
'fsearch [name]': 'Info filter by name',
}