Aiogram 3: Основы и хендлеры для Telegram-ботов — обучение с AI на ASI Biont

Введение: Почему aiogram 3 — это стандарт разработки Telegram-ботов

В июне 2026 года Telegram Bot Development — это не просто хобби, а мощный инструмент для бизнеса и автоматизации. Если вы хотите создавать надёжных, масштабируемых ботов, aiogram 3 — ваш выбор. Эта библиотека предлагает асинхронную архитектуру, гибкие хендлеры и продвинутые возможности, такие как машина состояний (FSM) и интеграция с Telegram Web Apps. На платформе ASI Biont мы объединили обучение с AI и практические кейсы, чтобы вы освоили разработку ботов с нуля до продакшена.

В этой статье разберём ключевые аспекты: хендлеры, клавиатуры, middleware и фильтры, а также покажем, как применить их в реальных проектах. Готовы погрузиться? Поехали!

Основы aiogram 3: Хендлеры и их типы

Хендлеры — это сердце любого бота. Они обрабатывают команды, сообщения, коллбэки и даже платежи. В aiogram 3 используется декораторный подход, что делает код чистым и читаемым.

Основные типы хендлеров:

  • MessageHandler — для текстовых сообщений, команд и медиа.
  • CallbackQueryHandler — для обработки нажатий на инлайн-кнопки.
  • PreCheckoutQueryHandler — для работы с платежами через Telegram Stars.
  • MyChatMemberHandler — для администрирования (например, когда бота добавляют в группу).

Пример простого хендлера:

from aiogram import Router, types
from aiogram.filters import Command

router = Router()

@router.message(Command("start"))
async def cmd_start(message: types.Message):
    await message.answer("Привет! Я бот, созданный на aiogram 3.")

Машина состояний (FSM): Управление диалогами

FSM (Finite State Machine) — это способ организовать многошаговые сценарии, такие как регистрация или оформление заказа. В aiogram 3 FSM реализован через State и StatesGroup.

Пример сценария:

  1. Пользователь вводит имя.
  2. Бот запрашивает email.
  3. Данные сохраняются в базу данных (БД).

Код:

from aiogram.fsm.state import State, StatesGroup

class Form(StatesGroup):
    name = State()
    email = State()

@router.message(Form.name)
async def process_name(message: types.Message, state: FSMContext):
    await state.update_data(name=message.text)
    await state.set_state(Form.email)
    await message.answer("Введите ваш email:")

FSM идеально подходит для Telegram Bot Development в бизнесе: от сбора лидов до кастомизации услуг.

Клавиатуры: Инлайн и Reply

Клавиатуры — это интерфейс взаимодействия с пользователем. В aiogram 3 поддерживаются два типа:
- ReplyKeyboardMarkup — стандартные кнопки под полем ввода.
- InlineKeyboardMarkup — кнопки внутри сообщения (для callback’ов и ссылок).

Таблица сравнения:

Тип Применение Пример использования
Reply Простые команды Кнопки «Меню», «Контакты»
Inline Действия внутри чата Кнопки «Купить», «Подробнее»

Пример инлайн-клавиатуры:

from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton

kb = InlineKeyboardMarkup(inline_keyboard=[
    [InlineKeyboardButton(text="Купить", callback_data="buy")],
    [InlineKeyboardButton(text="Помощь", callback_data="help")]
])

Middleware и фильтры: Гибкая логика

Middleware (промежуточное ПО) позволяет выполнять код до или после хендлера. Например, логировать запросы или проверять подписку на канал.

Пример middleware для проверки доступа:

from aiogram import BaseMiddleware

class AccessMiddleware(BaseMiddleware):
    async def __call__(self, handler, event, data):
        user_id = event.from_user.id
        if user_id in ALLOWED_USERS:
            return await handler(event, data)
        await event.answer("Доступ запрещен.")

Фильтры (aiogram.filters) — это быстрые проверки условий. Например, Command("start") или ChatTypeFilter(chat_type="private"). Комбинируйте их для точной маршрутизации.

Интеграция: Платежи, Telegram Web Apps и БД

Современный Telegram-бот не обходится без внешних сервисов. Рассмотрим три ключевых направления:

1. Платежи через Telegram Stars

Боты могут принимать оплату напрямую. Для этого используйте PreCheckoutQueryHandler и Message.successful_payment. Это удобно для продажи цифровых товаров.

2. Telegram Web Apps

Встраивайте веб-приложения в интерфейс бота. Например, форма заказа или калькулятор. Web App передаёт данные обратно боту через WebAppData.

3. Базы данных (БД)

Для хранения пользователей и состояний используйте SQLite, PostgreSQL или Redis. В aiogram 3 легко интегрировать ORM (например, SQLAlchemy).

Пример сохранения данных:

async def save_user(user_id: int, name: str):
    async with async_session() as session:
        session.add(User(id=user_id, name=name))
        await session.commit()

Практика: Создание бота для бизнеса

Допустим, вы разрабатываете бота для интернет-магазина. Вот типичный сценарий:
1. Пользователь нажимает «Каталог» (хендлер с клавиатурой).
2. Бот показывает товары через инлайн-кнопки (callback-хендлер).
3. Пользователь оформляет заказ (FSM с вводом адреса).
4. Оплата через Telegram Stars (платёжный хендлер).
5. Админ получает уведомление (middleware для логирования).

Этот подход масштабируется от простых чат-ботов до сложных ERP-систем.

Вывод

Aiogram 3 — это зрелая экосистема для Telegram Bot Development. Освоив хендлеры, FSM, клавиатуры и middleware, вы сможете создавать ботов любого уровня сложности. На курсе ASI Biont мы углубляемся в каждую тему: от основ до интеграции с платежами и веб-приложениями. Обучение с AI помогает ускорить процесс: нейросеть генерирует примеры и подсказывает оптимальные решения.

Готовы начать? Пройдите курс «Telegram Bot Development» на ASI Biont и создайте своего первого бота уже сегодня!

← Все статьи

Комментарии

Читайте также

Интеграция Тинькофф API с ASI Biont: автоматизация финансов с помощью ИИ без кода

11 августа 2026

Может ли нейросеть заболеть деменцией — и зачем это нейробиологам

2 июля 2026

И треснул мир напополам: как в США и Китае развили две инженерные школы графического GenAI

20 июля 2026

Освойте продажи и маркетинг с ИИ: почему курс 'AI for Sales & Marketing' на Asibiont.com — ваш карьерный ускоритель в 2026 году

13 июля 2026

Курс «Критическое мышление и логика»: Как перестать верить фейкам и принимать взвешенные решения

16 июля 2026

Linode + AI-агент: автоматизация облачной инфраструктуры без кода и DevOps-рутины

1 июля 2026

ROS 2 и ASI Biont: Как AI-агент управляет роботами через диалог в чате

21 июля 2026

AI-трансформация бизнеса: как курс для руководителей помогает построить стратегию внедрения AI и рассчитать ROI в 2026 году

20 июля 2026

Управление сервомоторами через PCA9685 и AI-агент: как ASI Biont ускоряет робототехнику в 10 раз

26 июля 2026