π ΠΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ aiogram? ΠΠ΅Π³ΠΊΠ°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ ! πͺ
Π§ΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ Π² aiogram, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ bot.delete_message(chat_id, message_id)
.
from aiogram import Bot
async def remove_keyboard(chat_id, message_id):
bot = Bot(token="Π²Π°Ρ_ΡΠΎΠΊΠ΅Π½") # Π·Π°ΠΌΠ΅Π½ΠΈΡΠ΅ Π½Π° Π²Π°Ρ ΡΠΎΠΊΠ΅Π½
await bot.delete_message(chat_id=chat_id, message_id=message_id)
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ aiogram
ΠΠΎΠ³Π΄Π° Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ aiogram Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌ-Π±ΠΎΡΠ°, ΠΈΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ΄Π΅Π»Π°Π» Π²ΡΠ±ΠΎΡ ΠΈΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΠ» ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ Π΄ΠΎΡΡΠΈΡΡ ΡΡΠΎΠ³ΠΎ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ aiogram.
ΠΠ½Π°Π»ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠΎΠΉ.
async def send_message_with_keyboard(message: types.Message):
keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
keyboard.add("Button 1", "Button 2")
await message.reply("ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ:", reply_markup=keyboard)
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄ `ReplyKeyboardMarkup` ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ `types`, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ Ρ Π΄Π²ΡΠΌΡ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ. ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½Π° ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΡΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠΎΠΉ.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ
Π§ΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π»Ρ ΡΡΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΡΠ½ΠΊΡΠΈΡ `button_click_handler`, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡΡΡ ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ.
async def button_click_handler(message: types.Message):
await message.answer("ΠΡ Π½Π°ΠΆΠ°Π»ΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ.")
await message.delete_reply_markup()
Π ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΌΡ ΡΠ½Π°ΡΠ°Π»Π° ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ "ΠΡ Π½Π°ΠΆΠ°Π»ΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ." ΠΠ°ΡΠ΅ΠΌ ΠΌΡ Π²ΡΠ·ΡΠ²Π°Π΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ `delete_reply_markup()` Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° `message`, ΡΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ.
Π§ΡΠΎΠ±Ρ ΡΠ²ΡΠ·Π°ΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ, Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ Π΄Π»Ρ ΡΡΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ:
async def send_message_with_keyboard(message: types.Message):
keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
button1 = types.KeyboardButton("Button 1")
button2 = types.KeyboardButton("Button 2")
keyboard.add(button1, button2)
button1_handler = CallbackData("button1_handler", "button1")
dp.callback_query_handler(button1_handler.filter(button1="clicked"))(button_click_handler)
button2_handler = CallbackData("button2_handler", "button2")
dp.callback_query_handler(button2_handler.filter(button2="clicked"))(button_click_handler)
await message.reply("ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ:", reply_markup=keyboard)
ΠΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΡ `button1_handler` ΠΈ `button2_handler`, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ `CallbackData` ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ `aiogram.types`. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΡΠ²ΡΠ·ΡΠ²Π°Π΅ΠΌ ΡΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ Π² ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ΅. ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ, ΠΈ ΡΡΠ½ΠΊΡΠΈΡ `button_click_handler` ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π² aiogram. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΡΡΠΎΠ±Ρ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌ-Π±ΠΎΡΡ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΡΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ. Π£Π΄Π°ΡΠΈ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅!