← Все статьи

🤖 Три крутых фишки для вашего Telegram-бота в 2026!

🤖 Три крутых фишки для вашего Telegram-бота в 2026!

Привет! Делюсь топовыми функциями, которые сделают ваш бот современным и удобным.

1️⃣ Интерактивные инлайн-кнопки с callback data
Теперь можно создавать динамические кнопки, которые реагируют на действия пользователя. Идеально для опросов, меню и навигации.

from aiogram import types
# Создаем клавиатуру с кнопками
keyboard = types.InlineKeyboardMarkup()
button1 = types.InlineKeyboardButton(text="Да", callback_data="yes")
button2 = types.InlineKeyboardButton(text="Нет", callback_data="no")
keyboard.add(button1, button2)
# Обработчик нажатия на кнопку
@dp.callback_query_handler(lambda c: c.data in ['yes', 'no'])
async def process_callback(callback_query: types.CallbackQuery):
if callback_query.data == 'yes':
await bot.answer_callback_query(callback_query.id, "Вы выбрали Да!")
else:
await bot.answer_callback_query(callback_query.id, "Вы выбрали Нет!")

2️⃣ Автоматическое сохранение состояния пользователя (FSM)
Больше не нужно хранить данные в базе данных! FSM (Finite State Machine) поможет управлять состоянием беседы.

from aiogram.dispatcher.filters.state import State, StatesGroup
from aiogram.dispatcher import FSMContext
from aiogram.contrib.fsm_storage.memory import MemoryStorage
class Form(StatesGroup):
name = State()
age = State()
@dp.message_handler(commands=['start'])
async def process_start_command(message: types.Message):
await Form.name.set()
await message.reply("Привет! Как тебя зовут?")
@dp.message_handler(state=Form.name)
async def process_name(message: types.Message, state: FSMContext):
async with state.proxy() as data:
data['name'] = message.text
await Form.next()
await message.reply("Сколько тебе лет?")

3️⃣ Мини-приложения в боте
Добавляем интерактивные веб-интерфейсы прямо в Telegram!

from aiogram import types
# Создаем веб-приложение
web_app = types.WebAppInfo(url="https://your-web-app.com")
# Кнопка для открытия веб-приложения
keyboard = types.InlineKeyboardMarkup()
keyboard.add(types.InlineKeyboardButton(text="Открыть приложение", web_app=web_app))
await message.answer("Используйте наше приложение!", reply_markup=keyboard)

🎁 Бонус:
Для всех примеров не забудьте добавить хендлеры в ваш Application:

application.add_handler(CommandHandler("start", start))
application.add_handler(MessageHandler(filters.PHOTO, handle_photo))
application.add_handler(CommandHandler("remind", set_reminder))

🔥 Хотите крутой Telegram-бот для вашего бизнеса?
🎯 Всего одно сообщение - и ваш проект в надёжных руках.
👉 Напишите «Хочу бота» в личку

Попробуйте внедрить эти фичи - пользователи оценят! А какие крутые функции есть в ваших ботах? Делитесь в комментариях 👇

Made on
Tilda