Сразу извиняюсь за глупый вопрос. Смотрите в чем проблема: пишу бота "Русская рулетка", после команды надо ставить никнейм своего соперника, после чего в чат показывается сообщение с двумя кнопками. Одна "Принять", другая "Не принимать". Надо сделать так, чтобы при нажатии кнопки бот проверял айди и сравнивал его с указанным. Нужная строка вот:
from aiogram import Bot, types
from aiogram.dispatcher import Dispatcher
from aiogram.utils import executor
from config import TOKEN
bot = Bot(token=TOKEN)
dp = Dispatcher(bot)
@dp.message_handler(commands="ruletkaid")
async def inlinebtn(message: types.Message):
user1 = str(message.get_args())
user2 = str(message.from_user.username)
return user1
keyboard = types.InlineKeyboardMarkup()
keyboard.add(types.InlineKeyboardButton(text="Принять", callback_data="random_value"))
keyboard.add(types.InlineKeyboardButton(text="Не принимать", callback_data="da", ))
await message.answer(user1 + ', вас вызывает на дуэль ' + user2, reply_markup=keyboard)
@dp.callback_query_handler(text="random_value")
async def send_random_value(call: types.CallbackQuery):
global user1
userid = call.message.from_user.username
if userid != user1:
await call.answer(text="Не тебе адресовано.", show_alert=True)
return False
await call.answer(text="Код сработал.", show_alert=True)
@dp.callback_query_handler(text="da")
async def send_random_value(call: types.CallbackQuery):
await call.reply.edit(text="Вы не приняли предложение противника.")
Вот. Надеюсь, что вы поможете. Заранее спасибо.