From 56fbb3c346588d32ace9f615ebe7d67308c1c72b Mon Sep 17 00:00:00 2001 From: Kirill Kirilenko Date: Thu, 21 Aug 2025 21:46:59 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9A=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=83=20!?= =?UTF-8?q?=D1=81=D1=82=D0=B0=D1=80=D1=82=20=D0=BC=D0=BE=D0=B3=D1=83=D1=82?= =?UTF-8?q?=20=D0=B2=D1=8B=D0=B7=D1=8B=D0=B2=D0=B0=D1=82=D1=8C=20=D1=82?= =?UTF-8?q?=D0=BE=D0=BB=D1=8C=D0=BA=D0=BE=20=D0=B0=D0=B4=D0=BC=D0=B8=D0=BD?= =?UTF-8?q?=D0=B8=D1=81=D1=82=D1=80=D0=B0=D1=82=D0=BE=D1=80=D1=8B=20=D0=B1?= =?UTF-8?q?=D0=B5=D1=81=D0=B5=D0=B4=D1=8B.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bot.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/bot.py b/bot.py index b47b07f..857e7fe 100644 --- a/bot.py +++ b/bot.py @@ -4,6 +4,7 @@ import datetime import time from vkbottle.bot import Bot, Message +from vkbottle_types.objects import MessagesGetConversationMembers import config from config import db_load, db_save @@ -24,20 +25,26 @@ async def get_user_info(user_id): return None +def user_is_admin(user_id: int, chat_members: MessagesGetConversationMembers): + for member in chat_members.items: + if member.member_id != user_id: + continue + return member.is_admin + return False + + @bot.on.chat_message(text="!старт") async def stats_handler(message: Message): - chat_id = str(message.peer_id) - user_id = str(message.from_id) + chat_members = await bot.api.messages.get_conversation_members(peer_id=message.peer_id, extended=False) - # TODO - if user_id != '5326732': + if not user_is_admin(message.from_id, chat_members): + await message.answer('О таком меня может попросить только администратор беседы.') return + chat_id = str(message.peer_id) if chat_id not in config.DB['chats']: config.DB['chats'][chat_id] = {'users': {}} - chat_members = await bot.api.messages.get_conversation_members(peer_id=message.peer_id, extended=False) - for member in chat_members.items: if member.member_id < 0: continue