Как использовать BotFather

BotFather — это официальный бот Telegram для создания и управления другими ботами. Это единственный авторизованный способ зарегистрировать нового бота, получить API-токен и настроить параметры бота: имя, описание, команды и аватар. Каждый бот в Telegram, от простого автоответчика до сложной платёжной системы, был создан именно через BotFather.

Что такое BotFather и зачем он нужен

BotFather (@BotFather) — это специальный мета-бот, разработанный и поддерживаемый командой Telegram. Он был запущен вместе с Telegram Bot API в 2015 году и с тех пор остаётся единственным официальным инструментом для создания ботов. По сути, это админ-панель для ваших ботов, только работает она прямо в чате.

Любой бот в Telegram — будь то простой помощник для канала с 500 подписчиками или крупный сервис вроде @BotAnalyticsBot с миллионами пользователей — начинается с одной команды, отправленной BotFather. Без него невозможно получить API-токен, который необходим для подключения вашего кода к серверам Telegram.

Основные возможности BotFather

С помощью BotFather вы можете:

  • Создавать новых ботов и получать уникальные API-токены
  • Редактировать профиль бота — имя, описание, текст «О боте», аватар
  • Настраивать список команд, видимых пользователям в меню
  • Включать инлайн-режим для работы бота в любом чате
  • Управлять настройками — режим конфиденциальности, права в группах
  • Перевыпускать API-токен в случае компрометации
  • Удалять ботов, которые больше не нужны
  • Подключать платёжные системы для приёма оплаты через бота

Пошаговая инструкция: создание первого бота

Шаг 1: Найдите BotFather в Telegram

Откройте поиск в Telegram и введите @BotFather. Обязательно убедитесь, что выбрали верифицированный аккаунт — рядом с именем должна стоять синяя галочка. Нажмите Start или отправьте команду /start, чтобы начать диалог.

Важно: В Telegram существуют поддельные аккаунты с похожими именами. Настоящий BotFather всегда имеет юзернейм именно @BotFather и синюю верификационную галочку.

Шаг 2: Создайте нового бота

Отправьте команду:

/newbot

BotFather задаст вам два вопроса:

  1. Выберите отображаемое имя — это имя, которое пользователи увидят в чате (например, «Ассистент канала Техдайджест»). Имя может содержать пробелы, эмодзи и большинство символов. Максимальная длина — 64 символа.

  2. Выберите юзернейм — он обязательно должен заканчиваться на bot или Bot (например, techdigest_assistant_bot). Юзернейм должен быть уникальным во всём Telegram, содержать только латинские буквы, цифры и нижние подчёркивания, а его длина — от 5 до 32 символов.

Шаг 3: Сохраните API-токен

После успешного создания бота BotFather пришлёт сообщение с вашим API-токеном. Он выглядит примерно так:

7123456789:AAHk5-JxFr0mEx4mpLeT0k3nStr1ng

Критически важно: Относитесь к токену как к паролю. Любой, кто получит этот токен, сможет полностью управлять вашим ботом — отправлять сообщения от его имени, читать входящие данные и получать доступ ко всей информации, которую обрабатывает бот. Никогда не публикуйте токен в открытых репозиториях, чатах или скриншотах.

Шаг 4: Настройте профиль бота

Используйте следующие команды, чтобы придать боту профессиональный вид:

  • /setname — изменить отображаемое имя
  • /setdescription — задать текст, который пользователи видят до начала работы с ботом (до 512 символов). Этот текст отображается на странице профиля бота и должен объяснять, что бот делает.
  • /setabouttext — короткая биография в профиле бота (до 120 символов)
  • /setuserpic — загрузить аватар (рекомендуемый размер: 512×512 пикселей)

Шаг 5: Настройте команды бота

Отправьте /setcommands, выберите вашего бота и предоставьте список команд в таком формате:

start - Начать работу с ботом
help - Показать доступные команды
settings - Настройки
stats - Статистика канала

Эти команды появятся в кнопке меню (иконка /) при общении с ботом. Это значительно упрощает взаимодействие — пользователю не нужно гадать, какие команды доступны.

Шаг 6: Настройте дополнительные параметры

Отправьте /mybots для доступа к интерактивному интерфейсу управления всеми вашими ботами. Выберите нужного бота, и вы увидите опции:

  • Bot Settings — переключение режима конфиденциальности в группах, инлайн-режим, обратная связь для инлайн-запросов
  • Payments — подключение платёжных провайдеров (ЮKassa, Stripe и другие)
  • Transfer Ownership — передача бота другому Telegram-аккаунту

Справочник команд BotFather

Команда Назначение /newbot Создать нового бота /mybots Управление существующими ботами /setname Изменить отображаемое имя /setdescription Задать описание профиля /setabouttext Задать краткий текст «О боте» /setuserpic Изменить аватар /setcommands Настроить меню команд /deletebot Безвозвратно удалить бота /token Посмотреть текущий API-токен /revoke Перевыпустить токен (старый перестанет работать) /setinline Включить и настроить инлайн-режим /setjoingroups Разрешить или запретить добавление в группы /setprivacy Переключить режим конфиденциальности

Подключение бота к Telegram-каналу

Одно из самых популярных применений ботов — управление и автоматизация каналов. Вот как подключить бота к каналу:

  1. Добавьте бота администратором — откройте настройки канала, перейдите в раздел «Администраторы» и добавьте бота по его юзернейму. Выдайте необходимые права: публикация сообщений, редактирование, удаление.

  2. Настройте получение обновлений — в коде бота настройте вебхук или long polling для получения обновлений. Например, сервис tgchannel.space использует токен бота для настройки вебхука, который автоматически обрабатывает новые публикации канала и превращает их в SEO-оптимизированные статьи для веб-блога.

  3. Протестируйте соединение — опубликуйте тестовое сообщение в канале и убедитесь, что бот корректно его получил и обработал.

Управление несколькими ботами

BotFather не ограничивает количество ботов, которые может создать один аккаунт. Вы можете управлять десятками ботов с одного Telegram-аккаунта. Используйте команду /mybots, чтобы увидеть полный список и переключаться между ними.

Для удобства рекомендуется использовать систему именования:

  • projectname_prod_bot — боевой бот
  • projectname_dev_bot — бот для разработки и тестирования
  • projectname_staging_bot — бот для промежуточной среды

Например, если вы ведёте канал «Новости Москвы», ваши боты могут называться mosknews_prod_bot и mosknews_dev_bot.

Советы и лайфхаки

  • Всегда создавайте отдельного бота для разработки и продакшена. Это убережёт реальных пользователей от тестовых сообщений и позволит свободно экспериментировать. Создание дополнительного бота занимает 30 секунд — нет причин этого не делать.
  • Перевыпускайте токен немедленно, если случайно опубликовали его в открытом доступе. Команда /revoke мгновенно делает старый токен недействительным. Автоматические сканеры на GitHub находят утёкшие токены за считанные минуты.
  • Пишите понятное описание и текст «О боте». Пользователь решает, запускать бота или нет, именно по этим текстам. Укажите, что бот делает, какие команды доступны и есть ли предварительные требования.
  • Сразу настройте список команд. Бот с видимым меню команд выглядит профессиональнее и удобнее в использовании. Даже для простых ботов стоит определить как минимум /start и /help.
  • Используйте интерфейс /mybots вместо отдельных команд, когда вносите несколько изменений — это быстрее и нагляднее.
  • Включите режим конфиденциальности (Privacy Mode), если бот не должен читать все сообщения в группе. В этом режиме бот получает только сообщения, адресованные ему напрямую, что лучше для приватности пользователей и снижает нагрузку.

Частые ошибки

Ошибка 1: Публикация API-токена в открытом доступе
Почему это опасно: Любой человек с токеном получает полный контроль над ботом. Утёкшие токены на GitHub эксплуатируются автоматическими сканерами в течение нескольких минут.
Как избежать: Храните токены в переменных окружения или зашифрованных хранилищах секретов. Используйте .env файлы локально и системы управления секретами (Vault, AWS Secrets Manager) в продакшене. Никогда не записывайте токен прямо в код.

Ошибка 2: Выбор слишком общего юзернейма
Почему это проблема: Юзернеймы вроде helper_bot или news_bot почти наверняка заняты, а даже если свободны — их сложно запомнить и найти.
Как избежать: Включайте название вашего проекта или бренда в юзернейм. Например, techdigest_news_bot гораздо информативнее, чем просто news_bot.

Ошибка 3: Отсутствие списка команд
Почему это проблема: Без настроенных команд пользователи не видят меню и вынуждены гадать, как взаимодействовать с ботом. Многие просто уходят, не разобравшись.
Как избежать: Выполните /setcommands сразу после создания бота. Даже если пока определены только /start и /help — это уже лучше, чем ничего.

Ошибка 4: Тестирование на боевом боте
Почему это проблема: Тестовые сообщения, ошибки и эксперименты на продакшен-боте путают и раздражают реальных пользователей.
Как избежать: Создайте отдельного бота для разработки через /newbot и используйте его токен во время тестирования. Переключайтесь на боевой токен только при деплое.

Ошибка 5: Пустой профиль бота
Почему это проблема: Бот без описания, аватара и текста «О боте» выглядит непрофессионально и не вызывает доверия.
Как избежать: Потратьте пять минут на /setdescription, /setabouttext и /setuserpic. Напишите 2–3 предложения о том, что делает бот, и загрузите аккуратный аватар.

Часто задаваемые вопросы

Можно ли изменить юзернейм бота после создания?
Да. Отправьте /mybots, выберите нужного бота, затем Edit BotEdit Username. Новый юзернейм по-прежнему должен заканчиваться на bot и быть свободным. Отображаемое имя меняется ещё проще — через команду /setname.

Есть ли ограничение на количество ботов?
Telegram не публикует жёсткий лимит, но большинство аккаунтов могут создать не менее 20 ботов без ограничений. Если вам нужно больше, можно обратиться в поддержку Telegram. Каждый бот работает независимо со своим токеном и настройками.

Что произойдёт, если удалить бота через BotFather?
Бот будет удалён безвозвратно. Его юзернейм через некоторое время станет доступен для регистрации, API-токен перестанет работать мгновенно, а все данные бота (чаты, сообщения, результаты инлайн-запросов) будут удалены. Отменить это действие невозможно.

Можно ли передать бота другому аккаунту?
Да. Используйте /mybots, выберите бота и нажмите Transfer Ownership. Для подтверждения потребуется пароль двухфакторной аутентификации вашего Telegram-аккаунта. Новый владелец получит полный контроль через свой BotFather.

Как использовать бота для создания веб-версии Telegram-канала?
После создания бота и добавления его администратором канала вы можете подключить его к сервисам, которые публикуют контент канала в интернете. Например, tgchannel.space использует токен вашего бота для получения обновлений канала через вебхуки и автоматически преобразует их в SEO-оптимизированные статьи блога, делая контент вашего Telegram-канала доступным через поисковые системы.