From 1bb3fc5198662023ccf7a795c44e904ffed5f5bc Mon Sep 17 00:00:00 2001 From: macros0 <20460562+macros0@users.noreply.github.com> Date: Sun, 4 Dec 2022 17:31:22 +0300 Subject: [PATCH 1/2] Create examle3.py use aiogram Create examle3.py use aiogram --- examples/examle3.py | 57 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 examples/examle3.py diff --git a/examples/examle3.py b/examples/examle3.py new file mode 100644 index 0000000..9c9a1d9 --- /dev/null +++ b/examples/examle3.py @@ -0,0 +1,57 @@ +# example use aiogram + +import logging +from aiogram import Bot, Dispatcher, executor +from aiogram.types import Message, CallbackQuery, InlineKeyboardButton + +from telegram_bot_pagination import InlineKeyboardPaginator +from data import character_pages + +bot = Bot(token="BOT_TOKEN") +dp = Dispatcher(bot) +logging.basicConfig(level=logging.INFO) + + +async def send_character_page(msg, page=1): + bot: Bot = msg.bot + paginator = InlineKeyboardPaginator( + len(character_pages), + current_page=page, + data_pattern='character#{page}' + ) + + paginator.add_before( + InlineKeyboardButton('Like', callback_data='like#{}'.format(page)), + InlineKeyboardButton('Dislike', callback_data='dislike#{}'.format(page)) + ) + paginator.add_after(InlineKeyboardButton('Go back', callback_data='back')) + + await bot.send_message( + msg.chat.id, + character_pages[page-1], + reply_markup=paginator.markup, + parse_mode='Markdown' + ) + + +async def characters_page_callback(msg: CallbackQuery): + bot: Bot = msg.bot + + page = int(msg.data.split('#')[1]) + await bot.delete_message( + msg.message.chat.id, + msg.message.message_id + ) + await send_character_page(msg.message, page) + + +async def get_character(msg: Message): + await send_character_page(msg) + + +if __name__ == "__main__": + + dp.register_callback_query_handler(characters_page_callback, lambda c: c.data.split('#')[0]=='character') + dp.register_message_handler(get_character, content_types=['text']) + + executor.start_polling(dp, skip_updates=True) From 9a3009eb2abcb62d89fe9fd110451b00dc07d2ad Mon Sep 17 00:00:00 2001 From: macros0 <20460562+macros0@users.noreply.github.com> Date: Tue, 3 Jan 2023 18:56:00 +0300 Subject: [PATCH 2/2] Update examle3.py --- examples/examle3.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/examle3.py b/examples/examle3.py index 9c9a1d9..95b8263 100644 --- a/examples/examle3.py +++ b/examples/examle3.py @@ -34,15 +34,15 @@ async def send_character_page(msg, page=1): ) -async def characters_page_callback(msg: CallbackQuery): - bot: Bot = msg.bot +async def characters_page_callback(query: CallbackQuery): + bot: Bot = query.bot page = int(msg.data.split('#')[1]) await bot.delete_message( - msg.message.chat.id, - msg.message.message_id + query.message.chat.id, + query.message.message_id ) - await send_character_page(msg.message, page) + await send_character_page(query.message, page) async def get_character(msg: Message):