Как устроены боты: BotFather, токен и getUpdates
Telegram-бот — это программа плюс аккаунт в Telegram, соединённые токеном. Регистрирует ботов официальный BotFather, а сообщения программа забирает сама — через запрос getUpdates, как ходят проверять почтовый ящик. Создадим твоего первого бота прямо в этом уроке.
Разберёмся, что такое бот на самом деле, — и станет ясно, почему собрать его может каждый, включая человека, который «не по компьютерам».
Бот = программа + телеграм-«розетка»
Бот состоит из двух частей:
- Аккаунт бота в Telegram — имя, аватарка, адрес вида @tvoy_bot. Создаётся за 2 минуты и сам по себе ничего не умеет: это вывеска и «розетка», к которой подключается вторая часть.
- Программа, которая через Telegram получает сообщения пользователей и отправляет ответы. Она может жить где угодно: на твоём компьютере или на сервере.
Telegram сам доставляет сообщения между пользователем и твоей программой — тебе не нужно строить ни приложение, ни сайт, ни интерфейс. Кнопки, чаты, уведомления — всё уже сделано и работает на миллиардах телефонов. Поэтому боты — самый лёгкий вход в создание продуктов: ты пишешь только «мозг», а «тело» даёт Telegram.
BotFather: место рождения ботов
Помнишь из прошлого урока: платформа ботов открылась в 2015 году вместе с @BotFather. Это официальный бот-регистратор: пишешь ему команду /newbot, выбираешь имя (его видят люди) и адрес (заканчивается на bot) — и он выдаёт токен: длинную строку вида 7213…:AAH8…. Через BotFather же потом настраивается всё «лицо» бота: описание, аватарка, список команд в меню.
Токен — это ключ зажигания
Токен связывает твою программу с аккаунтом бота: программа предъявляет его Telegram и получает право говорить от имени бота. У кого токен — тот и управляет ботом. Отсюда два железных правила:
- Никому не показывай токен — ни в чатах, ни на скриншотах, ни в коде, который куда-то выкладываешь. Человек с твоим токеном сможет отвечать твоим клиентам от имени твоего бота — и ты даже не сразу это заметишь.
- Засветил — меняй. У BotFather есть команда
/revoke: старый токен мгновенно умирает, выдаётся новый. Это не стыдно и занимает минуту; стыдно — надеяться, что «никто не заметил».
Как бот узнаёт, что ему написали: getUpdates
Вот вопрос, который почти никто не задаёт, а зря: сообщение пользователя само «прилетает» в твою программу? Подумай секунду. На самом деле — нет. Telegram складывает всё, что написали боту, в очередь на своих серверах — представь почтовый ящик, заведённый на твоего бота. А программа сама ходит спрашивать почту: раз в пару секунд отправляет Telegram запрос getUpdates — дословно «отдай обновления» — и забирает накопившиеся сообщения. Ответила, снова спросила, и так по кругу. Именно поэтому бот перестаёт отвечать, когда программа выключена: письма копятся, но за ними никто не ходит.
У этой механики есть следствие, которое сэкономит тебе часы: ящик один, и ключ к нему один. Если запустить две копии программы с одним токеном — например, на ноутбуке и где-то ещё, — они начнут вырывать письма из ящика друг у друга, и Telegram ответит ошибкой. Запомни картинку с почтой: в уроке про запуск на сервере она объяснит тебе самую частую поломку новичков.
Что нового у ботов в 2026
База, описанная выше, не менялась десять лет — а вот «косметика» растёт с каждой версией Bot API: у кнопок появились цвета, в чатах — чек-листы, у сообщений — режим исчезновения. Хорошая новость: для нашего бота хватит базы, а модные детали ты сможешь заказать у ChatGPT позже одной фразой — когда база заработает.
Сделай сейчас
Открой @BotFather → /newbot → придумай имя и адрес (заканчивается на bot). Сохрани токен в заметки — но не в чаты. В следующем уроке мы закажем программу, которая этого бота оживит.
Попробуй в песочнице
Закрепи правило токена через историю — скопируй промпт целиком:
Разыграй сценку и разбери её. Герой — новичок Митя. Он создал бота через @BotFather, получил токен 7213456789:AAH8xQ… (выдуманный) и на радостях отправил скриншот с токеном в чат друзей на 200 человек. Покажи по шагам: что может сделать любой человек из чата с этим токеном; что Митя увидит (и чего не увидит) со стороны; какой командой BotFather Митя спасает бота. В конце сформулируй правило хранения токена одной фразой.
А потом проверь, как ты понял механику почты:
Объясни метафорой почтового ящика, как программа Telegram-бота получает сообщения через запрос getUpdates: Telegram складывает письма в ящик, программа сама ходит их забирать. Затем проверь меня: задай 3 вопроса на понимание (среди них — что будет, если за письмами с одним ключом ходят сразу две программы) и разбери мои ответы.
Короткие вопросы по уроку — с разбором каждого ответа.