Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import hashlib
- import logging
- from aiogram import Bot, Dispatcher, executor, types
- from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton
- from aiogram.types import InlineQuery, InputTextMessageContent
- logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO)
- logger = logging.getLogger(__name__)
- bot = Bot('token')
- dp = Dispatcher(bot)
- but1 = InlineKeyboardButton('Кнопка 1', callback_data='test')
- but2 = InlineKeyboardButton('Кнопка 2', callback_data='test2')
- but3 = InlineKeyboardButton('Кнопка 3', callback_data='test3')
- but4 = InlineKeyboardButton('Кнопка 3', callback_data='test4')
- but5 = InlineKeyboardButton('Кнопка 3', callback_data='test5')
- inline_test_kb1 = InlineKeyboardMarkup(row_width=1).row(but1)
- inline_test_kb2 = InlineKeyboardMarkup(row_width=1).row(but2)
- inline_test_kb3 = InlineKeyboardMarkup(row_width=1).row(but3)
- inline_test_kb4 = InlineKeyboardMarkup(row_width=1).row(but4)
- inline_test_kb5 = InlineKeyboardMarkup(row_width=1).row(but5)
- @dp.inline_handler()
- async def inline_echo(inline_query: InlineQuery):
- text = inline_query.query or 'Тут сообщение, а внизу кнопки'
- input_content = InputTextMessageContent(text)
- result_id: str = hashlib.md5(text.encode()).hexdigest()
- item = types.InlineQueryResultArticle(
- id=result_id,
- title='Выводимое мне inline сообщение',
- description="просто ссылка",
- hide_url=False,
- input_message_content=InputTextMessageContent(
- message_text="My mess",
- ),
- reply_markup=inline_test_kb1
- )
- await bot.answer_inline_query(inline_query.id, results=[item], cache_time=1)
- @dp.message_handler(commands=['start', 'help'])
- async def start(message: types.message):
- if message.text == '/start':
- await bot.send_message(message.from_user.id,
- f"Приветствую тебя, {message.from_user.first_name}")
- @dp.callback_query_handler(text=['test', 'tested', 'mytest'])
- async def send_random_value(call: types.CallbackQuery):
- if call.data == 'test':
- await bot.edit_message_text(text='Текст -2', inline_message_id=call.inline_message_id,
- reply_markup=inline_test_kb2)
- elif call.data == 'test2':
- await bot.edit_message_text(text='Текст -3', inline_message_id=call.inline_message_id,
- reply_markup=inline_test_kb3)
- elif call.data == 'test3':
- await bot.edit_message_text(text='Текст -4 ', inline_message_id=call.inline_message_id,
- reply_markup=inline_test_kb4)
- elif call.data == 'test4':
- await bot.edit_message_text(text='Текст -5', inline_message_id=call.inline_message_id,
- reply_markup=inline_test_kb5)
- if __name__ == "__main__":
- executor.start_polling(dp, skip_updates=True)
Advertisement
Add Comment
Please, Sign In to add comment