Как создать бота в Telegram: пошаговый запуск через BotFather
BotFather создаёт учётную запись Telegram-бота и выдаёт токен. На этом бот ещё ничего не умеет: логику запускают в конструкторе или на сервере. Токен хранится как пароль, webhook или polling настраи
В этой статье
Коротко. BotFather создаёт учётную запись Telegram-бота и выдаёт токен. На этом бот ещё ничего не умеет: логику запускают в конструкторе или на сервере. Токен хранится как пароль, webhook или polling настраивается отдельно, а первый запуск проверяется на тестовом пользователе до публикации ссылки.
Инструкция разделяет три сущности: BotFather управляет именем, username, токеном и командами; приложение обрабатывает сообщения; хостинг держит приложение доступным. Ошибка новичка — считать, что после команды /newbot готов диалог, либо вставить токен в браузерный код и открыть управление посторонним.
Что подготовить до BotFather
Нужны назначение, публичное имя, свободный username с окончанием bot, владелец и место безопасного хранения токена. Сценарий можно подключить позже.
Создавайте бота с рабочего аккаунта владельца, а не с временного профиля подрядчика.
Проверка. Команда заранее решает, кто сможет перевыпустить токен, если разработчик недоступен.
Как найти настоящего BotFather
Официальный служебный бот имеет username @BotFather. Клоны и ссылки из случайных инструкций могут собирать данные.
Откройте профиль вручную через поиск Telegram, проверьте username и не вводите пароль аккаунта.
Проверка. BotFather не просит код входа, облачный пароль и оплату за создание обычного бота.
Как выполнить /newbot
Команда запускает диалог, затем BotFather просит отображаемое имя и уникальный username. Имя можно менять, username зависит от доступности.
Используйте понятное название без чужого бренда и зафиксируйте выбранный адрес.
Проверка. Если username занят, меняют вариант, а не покупают сомнительный аккаунт у посредника.
Как сохранить токен
Токен позволяет приложению действовать от имени бота. Его нельзя публиковать в скриншоте, репозитории, клиентском JavaScript и общем документе.
Сразу поместите токен в переменную окружения или секрет-хранилище и ограничьте доступ.
Проверка. При утечке старый токен отзывают через BotFather, новый устанавливают на сервере и проверяют журнал.
| Этап | Что сделать | Контроль |
|---|---|---|
| Что подготовить до BotFather | Создавайте бота с рабочего аккаунта владельца, а не с временного профиля подрядчика. | Команда заранее решает, кто сможет перевыпустить токен, если разработчик недоступен. |
| Как найти настоящего BotFather | Откройте профиль вручную через поиск Telegram, проверьте username и не вводите пароль аккаунта. | BotFather не просит код входа, облачный пароль и оплату за создание обычного бота. |
| Как выполнить /newbot | Используйте понятное название без чужого бренда и зафиксируйте выбранный адрес. | Если username занят, меняют вариант, а не покупают сомнительный аккаунт у посредника. |
| Как сохранить токен | Сразу поместите токен в переменную окружения или секрет-хранилище и ограничьте доступ. | При утечке старый токен отзывают через BotFather, новый устанавливают на сервере и проверяют журнал. |
Как подключить конструктор
Платформа обычно просит токен и затем настраивает ветки. Перед передачей проверьте поставщика, роли, экспорт и отзыв доступа.
Создайте тестовую ветку /start, ответ на неизвестный ввод и способ удалить интеграцию.
Проверка. После отключения конструктора токен перевыпускают, если нет уверенности в полном удалении секрета.
Как запустить бота своим кодом
Приложение получает обновления через polling или webhook и отвечает методом Bot API. Токен используется только серверной частью.
Начните с ответа на /start, логирования идентификатора события и обработки ошибок без секретов в сообщении.
Проверка. Повтор одного update не создаёт двойное действие; приложение запоминает обработанный идентификатор.
Как настроить имя, описание и команды
Профиль объясняет назначение до запуска, а меню команд помогает вернуться к основным действиям. Описание не обещает несуществующие функции.
Заполните about, description, изображение и список команд через BotFather, затем откройте профиль с другого аккаунта.
Проверка. /help и /start остаются доступными при ошибке внешней CRM.
Как проверить первого пользователя
Бот не может произвольно начать личный диалог: человек открывает ссылку и нажимает Start. После этого приложение получает событие.
Пройдите запуск с обычного аккаунта, неверный ввод, повторный /start и блокировку бота.
Проверка. Повторный старт не стирает оплаченный заказ и не создаёт дубликат профиля.
| Сценарий | Настройка | Проверка |
|---|---|---|
| Как запустить бота своим кодом | Начните с ответа на /start, логирования идентификатора события и обработки ошибок без секретов в сообщении. | Повтор одного update не создаёт двойное действие; приложение запоминает обработанный идентификатор. |
| Как настроить имя, описание и команды | Заполните about, description, изображение и список команд через BotFather, затем откройте профиль с другого аккаунта. | /help и /start остаются доступными при ошибке внешней CRM. |
| Как проверить первого пользователя | Пройдите запуск с обычного аккаунта, неверный ввод, повторный /start и блокировку бота. | Повторный старт не стирает оплаченный заказ и не создаёт дубликат профиля. |
Что сделать перед публикацией ссылки
Проверьте токен, хостинг, политику данных, тексты ошибок, аналитику, резервный контакт и возможность остановить рассылку.
Запустите закрытый тест и сохраните порядок отката. Публичную ссылку размещайте после прохождения критических сценариев.
Проверка. Если сервер недоступен, пользователь получает честный запасной способ связи, а не бесконечное ожидание.
Как поддерживать систему
Никогда не вставляйте реальный токен в сервис проверки или пример на форуме. Для диагностики достаточно скрыть большую часть значения и показать код ошибки без заголовков авторизации.
Polling удобен для разработки, webhook — для постоянной серверной работы, но выбор зависит от платформы. Одновременно держать несколько обработчиков без координации опасно: события теряются или выполняются дважды.
Резервная копия включает код, настройки, тексты, схему состояний и базу в допустимом объёме. Один токен не восстанавливает логику после удаления проекта конструктора.
Во времяёмка процедураа. Для компонента «Что подготовить до BotFather» сохраните отдельную карточку: цель, рабочий вариант и результат проверки «команда заранее решает, кто сспособен перевыпустить токен, если разработчик недоступен.». Её читает человек, не участвовавший в настройке, и воспроизводит ожидаемое запрос. Если требуется устная подсказка автора, маршрут Telegram-во времяложения ещё не готов к публикации.
Тест на границе. По завершении «Как найти настоящего BotFather» намеренно выполните запрос: botFather не просит код входа, облачный пароль и оплату за создание обычного бота.. Запишите, что увидит адресат, что попадёт в журнал и кто получит задачу. Успешный путь недостаточен: рабочая автоматизация должна предсказуемо вести себя во время ошибке, повторе и отсутствии данных.
Версия и владелец. Блок «Как выполнить /newbot» видит номер редакции, дату и ответственного. Контроль строится вокруг случая «если username занят, меняют вариант, а не покупают сомнительный аккаунт у посредника.». Во время следующем изменении повторяется тот же тест, поэтому улучшение можно сравнить с базовой версией, а не оценивать по впечатлению от нового интерфейса.
Наблюдаемый результат. В теме «Как сохранить токен» нельзя во времянимать формулировку «бот понял». Зафиксируйте вход, состояние, отправленный ответ и по завершениидующее запрос, используя проверку «во время утечке старый токен отзывают через BotFather, новый устанавливают на сервере и проверяют журнал.». Такой след позволяет отличить ошибку текста от сбоя интеграции и неверного бизнес-правила.
Безопасный отказ. Для процедураа «Как подключить конструктор» заранее определите, что произойдёт, когда условие не выполнено. Испытайте вариант «по завершении отключения конструктора токен перевыпускают, если нет уверенности в полном удалении секрета.». Адресат видит честное объяснение и запасной путь, а закрытый журнал — технический контекст без секретов и лишних персональных данных.
Передача человеку. Компонент «Как запустить бота своим кодом» считается завершённым, если известны во времячина эскалации, очередь и сохранённый контекст. Проверьте ситуацию «повтор одного update не создаёт двойное запрос; во времяложение запоминает обработанный идентификатор.». Сотрудник не должен заново спрашивать уже введённое, а автоматический маршрут Telegram-во времяложения прекращает спорить по завершении передачи.
Повтор события. Автоматизация в блоке «Как настроить имя, описание и команды» обязана выдерживать дубль, возврат и повторный вход. Во времяёмочный во времямер: /help и /start остаются доступными во время ошибке внешней CRM.. Второе событие не создаёт лишнюю заявку, платёж или сообщение; если операция неидемпотентна, во времяложение предупреждает и просит подтверждение.
Работа без интеграции. Для «Как проверить первого пользователя» отключите внешнюю систему и выполните тест «повторный старт не стирает оплаченный заказ и не создаёт дубликат профиля.». Основной сервис не должен ломаться целиком: записи либо ставятся в безопасную очередь, либо адресат видит рабочий альтернативный контакт и реальный срок восстановления.
Разбор по завершении запуска. По компоненту «Что сделать перед публикацией ссылки» еженедельно выбирайте неуспешные сессии и сверяйте их с проверкой «если сервер недоступен, адресат видит честный запасной способ связи, а не бесконечное ожидание.». Ошибку относят к источнику, сценарию, интерфейсу или интеграции, назначают владельца и добавляют в во времяёмочный набор до следующего релиза.
Владение ботом нужно оформить организационно. Рабочий аккаунт, резервный ответственный и порядок восстановления фиксируются рядом с проектом, но без токена в открытом документе. Подрядчик получает ровно те доступы, которые нужны для настройки приложения.
Локальная разработка не должна использовать основной токен в случайных утилитах. Создайте отдельного тестового бота и окружение. Тогда экспериментальная команда, webhook или лог не затронут реальных пользователей и не раскроют рабочий секрет.
При выборе webhook настройте HTTPS, секрет проверки и явный список типов событий. Сервер отвечает быстро, а тяжёлую работу отправляет в очередь. Иначе Telegram повторит событие, пока приложение ещё выполняет интеграцию, и действие задублируется.
Polling запускают в одном контролируемом процессе. Два экземпляра, читающие обновления без координации, могут перехватывать события друг у друга. Перезапуск сохраняет последнюю обработанную позицию и не пропускает накопившиеся сообщения.
Профиль бота проверяют не только визуально. Название, username, описание и изображение не должны имитировать чужую службу. Если бот официальный, подтверждение даётся с сайта или канала владельца, а не одной уверенной фразой в описании.
Команды в меню — подсказка, а не вся навигация. Пользователь может написать текстом, переслать сообщение или отправить неподдерживаемый файл. Каждый случай получает понятный ответ без технического исключения и без раскрытия внутреннего устройства.
Журналы приложения скрывают токен и чувствительное содержимое. Для диагностики достаточно идентификатора события, этапа, кода ошибки и времени. Доступ к логам ограничивается так же строго, как доступ к базе, потому что там часто остаются сообщения.
Обновление библиотеки Bot API сначала проходит на тестовом боте. Проверяются команды, кнопки, файлы, webhook, повторы и ошибки. Версию зависимости фиксируют, чтобы неожиданный автоматический апдейт не сломал публичный сценарий.
Перед передачей проекта сохраните инструкцию запуска, переменные окружения без значений, схему инфраструктуры, резервную копию и контакты поставщиков. Новый ответственный должен восстановить сервис без личного компьютера разработчика.
Публичная ссылка получает метки и владельца размещения. Если сценарий закрыт, старые страницы и QR-коды обновляют или перенаправляют. Иначе пользователь продолжает попадать в молчащий бот, хотя технически проект уже считается завершённым.
Что передать в эксплуатацию. По теме «Что подготовить до BotFather» подготовьте короткую инструкцию для дежурного сотрудника: где увидеть сбой, как остановить запрос и кому сообщить. Владелец продукта проверяет её на контрольном случае без помощи разработчика; непонятный шаг переписывается до запуска.
Как не потерять контекст. Для блока «Как найти настоящего BotFather» журнал связывает идентификатор события, версию сценария и итог, но не копирует секреты. Этого достаточно, чтобы воспроизвести ошибку, отличить повтор от нового действия и объяснить пользователю, что произошло.
Когда пересматривать решение. Установка «Как выполнить /newbot» возвращается на проверку по завершении изменения API, поставщика, текста правил или источника данных. Календарная дата тоже нужна: незаметно устаревший успешный маршрут Telegram-во времяложения опаснее явной технической ошибки.
Кто отвечает за содержание. В компоненте «Как сохранить токен» разработчик обеспечивает выполнение логики, но цену, обещание и правила утверждает владелец процесса. Такое компонентение не позволяет технической команде случайно во времянять коммерческое или правовое решение за бизнес.
Как проверить понятность. Дайте маршрут Telegram-во времяложения «Как подключить конструктор» человеку, который не видел схему и не знает внутренних терминов. Запишите, где он остановился, что ожидал по завершении кнопки и какой вопрос задал. Наблюдение важнее просьбы оценить, нравится ли текст.
Контроль перед выдачей ссылки. Запустите бота с обычного аккаунта, завершите один путь и повторите его после перезапуска сервера. Команды, кнопки и сохранённое состояние должны вести к тому же предсказуемому итогу.
Что изучить дальше
Связанные задачи раскрыты отдельно: сценарии Telegram-бота, бот для бизнеса, сравнение MAX и Telegram, рассылка в Telegram, как работает webhook бота, защита данных. Такое разделение сохраняет один интент страницы и не смешивает настройку, контент, рассылку и поддержку.
Финальная проверка
- Сценарий имеет одну главную задачу и измеримый конец.
- Токены и ключи находятся только в защищённой серверной среде.
- Персональные данные собираются в минимальном объёме.
- Ошибки, повторы и недоступность интеграции проверены.
- Передача человеку сохраняет контекст и реальный срок.
- Пользователь может остановить сообщения и сменить тему.
- Версия, журнал и порядок отката сохранены.
Остался вопрос по теме статьи? Напишите его в предложку блога — отвечаю лично: задать вопрос в MAX. Частые вопросы разбираю отдельными статьями и присылаю ссылку тому, кто спросил.
Частые вопросы
BotFather создаёт готового бота?
Нет. Он создаёт аккаунт и токен; сценарий должен работать в конструкторе или серверном приложении.
Как должен заканчиваться username?
Для обычного бота Telegram требует свободный username с окончанием bot.
Можно ли показывать токен разработчику?
Только уполномоченному исполнителю через защищённый канал; после завершения доступы пересматривают.
Что делать при утечке токена?
Немедленно отозвать его через BotFather, выпустить новый, обновить сервер и проверить журнал.
Webhook или polling?
Polling проще для разработки, webhook удобен для постоянного сервера; оба требуют обработки повторов и ошибок.
Почему бот молчит после создания?
BotFather не запускает логику: нужно подключить работающий конструктор или приложение и обработать /start.
Читайте дальше
-
Как перенести чаты из одного мессенджера в другой и ничего не потерять
Перенос чатов — это не кнопка «скопировать всё», а проект сохранения истории: определить, что разрешает источник…
-
Заблокировали канал в MAX: причины, апелляция и план восстановления
Что проверить, где посмотреть причину и как один раз обжаловать предупреждение каналу MAX через официальный бот без…
-
У ребёнка взломали или заблокировали MAX: что делать
Порядок действий для родителя: сохранить SIM, закрыть чужие сессии, вернуть доступ к MAX ребёнка, предупредить…