Кнопки в постах Telegram-канала: как создать бота в BotFather и добавить inline-кнопки
· 4 min
Как сделать кнопки в постах Telegram-канала: создать бота в BotFather, назначить его админом канала и публиковать посты с inline-кнопками-ссылками.
Кнопки под постом в Telegram-канале («Подробнее», «Записаться», «Купить») называются inline-кнопками, и это функция ботов: в API Telegram разметка с кнопками описана как «reply markup for sending bot buttons». Поэтому, чтобы добавить кнопки в пост канала, нужно создать бота в @BotFather, сделать его администратором канала и публиковать пост от имени бота. Ниже — пошагово и с правилами, которым должны соответствовать кнопки.
Какие бывают inline-кнопки
Согласно описанию возможностей ботов, inline-клавиатура показывается прямо под сообщением, а нажатие на кнопку не отправляет в чат новое сообщение. Основных видов два:
- Кнопки-ссылки (URL) открывают адрес: сайт, страницу товара, другой канал, чат с поддержкой.
- Callback-кнопки передают данные боту, чтобы он отреагировал, — для этого нужен бот со своим кодом.
Для постов в канале почти всегда хватает кнопок-ссылок. В Bot API у каждой кнопки есть текст и ровно одно действие; для кнопки-ссылки это HTTP- или tg://-ссылка. Кнопки располагаются рядами: можно поставить две короткие рядом и одну широкую под ними.
Шаг 1. Создайте бота в BotFather
- Откройте @BotFather (проверьте синюю галочку верификации) и отправьте
/newbot. - Задайте имя, например «Новости Ромашки», — его видят в профиле бота.
- Задайте username: он должен заканчиваться на
bot(например,romashka_news_bot), иметь длину от 5 до 32 символов и состоять только из латинских букв, цифр и подчёркиваний. - BotFather пришлёт токен вида
110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw.
По желанию: /setuserpic — логотип, /setdescription — короткое описание бота. Если бот будет работать и в группах, проверьте, что включён /setjoingroups; для каналов это не важно.
Шаг 2. Сделайте бота администратором канала
Бот может публиковать только в канале, где он администратор с правом публикации сообщений. В приложении: настройки канала → Администраторы → Добавить администратора, найдите бота по username и оставьте право «Публикация сообщений». Лишние права, например добавление новых админов, можно отключить.
Для одного-двух каналов это несложно, а для двадцати — утомительно; ниже показано, как сделать это сразу во всех.
Шаг 3. Подготовьте пост с кнопками
Хороший пост с кнопками:
- Одно главное действие. Пост с шестью кнопками собирает меньше кликов, чем с одной очевидной.
- Короткий текст кнопки. Два-четыре слова, лучше с глаголом: «Скачать гайд», «Записаться на демо».
- Рабочие ссылки. Проверьте каждый URL до публикации: битая ссылка под постом в пятидесяти каналах — неприятность. Работают
https://иtg://; просто текст ссылкой не станет. - Ряды, удобные на телефоне. Не больше двух коротких кнопок в ряду.
Если ссылка изменилась, пост переопубликовывать не обязательно: в Bot API есть метод editMessageReplyMarkup, который заменяет кнопки в уже отправленном ботом сообщении.
Как это сделать в Telegramte
- Подключите бота: в разделе Боты → Подключить бота вставьте токен. Он хранится на сервере в зашифрованном виде.
- Назначьте админом сразу везде: на странице Группы и каналы выберите каналы и нажмите «Добавить бота». Telegramte назначит бота админом через ваш подключённый номер, который владеет этими каналами или является в них админом с правом добавлять администраторов.
- Создайте пост: в массовом постинге выберите отправителем бота, напишите и отформатируйте текст, прикрепите фото или видео и в блоке «Кнопки» добавьте одну или несколько кнопок в ряд — у каждой текст и корректная ссылка
https://…илиtg://…. - Выберите каналы и отправьте сразу, по расписанию или с повтором.
Лимиты
В FAQ для ботов Telegram указывает: не больше примерно одного сообщения в секунду в один чат, не больше 20 сообщений в минуту в одну группу и около 30 сообщений в секунду при массовых уведомлениях по многим чатам. Один пост в несколько десятков каналов при отправке через очередь укладывается в это с запасом — Telegramte ставит отправку в очередь автоматически.
И ещё: встроенная отложенная отправка Telegram ботам недоступна, поэтому расписание для постов от бота всегда ведёт сервис, который их отправляет.
Чек-лист
- Бот создан через
/newbot, токен хранится в надёжном месте. - Бот — админ с правом публикации во всех нужных каналах.
- В посте одна главная кнопка с коротким текстом.
- Все ссылки проверены, формат
https://илиtg://. - Пост отправляется от бота, а не с личного аккаунта: личный аккаунт inline-кнопки прикрепить не может.
По теме: Автопостинг в несколько Telegram-каналов · Повторяющиеся публикации в Telegram