Created
November 4, 2023 18:07
-
-
Save ArtyomKozyrev8/ef702ebcde4ce5da01c7291d454fa357 to your computer and use it in GitHub Desktop.
Very simple bot for Maxim - Drinking Bot!
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import asyncio | |
import logging | |
from aiogram import Dispatcher, Bot, F | |
from aiogram.filters import Command | |
from aiogram.types import Message, CallbackQuery | |
from aiogram.utils.keyboard import InlineKeyboardBuilder | |
router = Dispatcher() | |
TOKEN = "" # Write your Token here! | |
@router.message(Command("drink")) | |
async def go_drinking(message: Message): | |
builder = InlineKeyboardBuilder() | |
builder.button(text="да", callback_data="бухать_да") | |
builder.button(text="нет", callback_data="бухать_нет") | |
await message.answer(text="Пойдем сегодня бухать?", reply_markup=builder.as_markup()) | |
@router.callback_query(F.data == "бухать_нет") | |
async def go_drinking_no(callback: CallbackQuery): | |
builder = InlineKeyboardBuilder() | |
builder.button(text="да!", callback_data="бухать_да") | |
builder.button(text="нет!", callback_data="бухать_нет") | |
await callback.message.answer(text="Подумай еще раз! Пойдем сегодня бухать?!", reply_markup=builder.as_markup()) | |
await callback.answer() | |
@router.callback_query(F.data == "бухать_да") | |
async def go_drinking_choices(callback: CallbackQuery): | |
builder = InlineKeyboardBuilder() | |
builder.button(text="пиво", callback_data="бухать_да_пиво") | |
builder.button(text="водка", callback_data="бухать_да_водка") | |
builder.button(text="вино", callback_data="бухать_да_винишко") | |
builder.adjust(2, 1) | |
await callback.message.answer(text="А что будем бухать?", reply_markup=builder.as_markup()) | |
await callback.answer() | |
@router.callback_query(F.data == "бухать_да_пиво") | |
@router.callback_query(F.data == "бухать_да_водка") | |
@router.callback_query(F.data == "бухать_да_винишко") | |
async def go_drinking_beer(callback: CallbackQuery): | |
if callback.data == "бухать_да_пиво": | |
answer = "Ну что же, опять бухаем пиво!" | |
elif callback.data == "бухать_да_водка": | |
answer = "Водка! Кто-то прямо хочет нажраться!" | |
elif callback.data == "бухать_да_винишко": | |
answer = "Винишко! Нестандратный выбор!" | |
else: | |
answer = "Даже не знаю, что и сказать!" | |
await callback.message.answer(text=answer) | |
await callback.answer() | |
async def main(): | |
await router.start_polling(Bot(token=TOKEN)) | |
if __name__ == '__main__': | |
logging.basicConfig(format='%(asctime)s - %(message)s', level=logging.INFO) | |
asyncio.run((main())) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment