Твой бот создан, но пока молчит — как телефон без симки. Сегодня спроектируем его диалог: какие команды он будет понимать, какие кнопки показывать и куда всё это ведёт. Логику подключим в следующих уроках — сначала план.
Открой своего бота из прошлого урока и напиши ему что-нибудь. Тишина. Даже «/start» ничего не делает. Это нормально: ты создал бота, но не научил его ни одному слову.
Прежде чем подключать логику, хорошие разработчики делают одну вещь — проектируют диалог . Что видит человек, который открыл бота первый раз? Какие команды есть? Куда ведут кнопки? Если пропустить этот шаг, получится бот, в котором путаются даже создатели.
Сегодня ты решишь, ЧТО умеет твой бот. А в уроках 4–5 научишь его это делать. Проектировать до сборки — привычка, которая отличает продукт от поделки.
⌨️ КОМАНДЫ
Команда — слово со слэшем: /start , /help . Когда пользователь жмёт на «Меню» в чате с ботом, он видит список команд с подсказками — как оглавление книги. Этот список настраивается в BotFather командой /setcommands .
/start Есть у каждого бота — запускается автоматически при первом открытии. Сюда кладут приветствие: кто ты и что умеешь.
/help Спасательный круг: что бот умеет и как с ним разговаривать. Пользователь потерялся → жмёт /help.
Собери список команд своего бота. Выбери 2–4 функции — конструктор соберёт готовый текст для /setcommands. +10 за первый выбор.
Скопируй и отправь BotFather после /setcommands ↓
🔘 КНОПКИ
Кнопки удобнее команд: не надо ничего печатать. В Telegram их два типа, и они выглядят и работают по-разному.
⬇️ Reply-кнопки
Появляются вместо клавиатуры , внизу экрана. Нажатие = отправка текста кнопки как сообщения. Подходят для главного меню, которое всегда под рукой.
📅 Расписание ❓ Помощь
💬 Inline-кнопки
Прикреплены к конкретному сообщению бота. Нажатие не пишет ничего в чат — просто срабатывает действие. Подходят для выбора: «да / нет», «подробнее», ссылки.
Записать тебя на пробное занятие?
✅ Да ❌ Нет
Угадай тип кнопки по ситуации. +5 за верный ответ.
🌳 ПРОЕКТИРУЕМ
Дерево диалога — это схема «пользователь пришёл → что видит → куда жмёт → что получает». Вот дерево простого бота-помощника для класса:
/start → «Привет! Я бот 8Б. Вот что умею» + reply-меню
📅 «Расписание» → присылает расписание на завтра
📚 «Домашка» → спрашивает предмет inline-кнопками → присылает ДЗ
❓ Свободный вопрос → передаёт нейросети → умный ответ
1 Не больше 4–5 пунктов в главном меню. Больше — пользователь теряется. Лучше спрятать редкое в /help.
2 Каждая ветка заканчивается результатом. Нажал → получил. Ветки «в никуда» бесят сильнее всего.
3 Всегда есть путь назад. Кнопка «← Меню» в конце каждой ветки — иначе пользователь застрянет.
Знакомо? Это тот же принцип, что и структура промпта из модуля 1: сначала продумай, что хочешь получить, потом делай. Дерево диалога — это «промпт» для всего бота.
Дерево диалога Опиши диалог своего бота: приветствие, команды, кнопки