Advertisement
l1von

sdsdff

Jun 3rd, 2021
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.50 KB | None | 0 0
  1. import logging
  2. import asyncio
  3. from aiogram import Bot, Dispatcher, executor, types
  4. from aiogram.contrib.fsm_storage.memory import MemoryStorage
  5. from aiogram.dispatcher import FSMContext
  6. from aiogram.dispatcher.filters import Text
  7. from aiogram.dispatcher.filters.state import State, StatesGroup
  8. import random
  9.  
  10. storage = MemoryStorage()
  11. logging.basicConfig(level=logging.INFO)
  12. bot = Bot(token='11231')
  13. dp = Dispatcher(bot, storage=storage)
  14.  
  15. class Statee(StatesGroup):
  16.     answ = State()
  17.     good = State()
  18.  
  19. @dp.message_handler(commands=['start'])
  20. async def answer(message: types.Message, state=Statee.good):
  21.     a = random.randint(1, 99)
  22.     b = random.randint(1, 99)
  23.     c = a + b
  24.     cw = f"{a} + {b}"
  25.     await message.answer(f'Для входа в группу нужно решить пример. \nПосле успешного прохождения - вы получите ссылку на группу.\n<b>Пример</b>\n{cw}', parse_mode='HTML')
  26.     await Statee.answ.set()
  27.     await state.set_data(c)
  28.  
  29. @dp.message_handler(state=Statee.answ)
  30. async def dig(message: types.Message, state: FSMContext):
  31.     text = message.text
  32.     user_data = await state.get_data()
  33.     if text == f"{user_data}":
  34.         await message.answer('Верно')
  35.         await state.finish()
  36.     else:
  37.         await message.answer('Ты ввёл неверный ответ.\nПопробуй еще раз.')
  38.  
  39.  
  40. if __name__ == '__main__':
  41.     executor.start_polling(dp, skip_updates=True) # Запуск
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement