Перейти к содержимому

Как добавить мини-приложение кнопкой в меню бота

Кнопка «Открыть» в меню бота — то, чем мини-приложение отличается от ссылки, которую нужно кому-то прислать. Разбираем, откуда она берётся, что для этого нужно сделать и почему иногда она ведёт не туда.

Откуда берётся токен

Токен выдаёт @BotFather — служебный бот Telegram. Команда /newbot, имя, адрес бота — и в ответ приходит строка вида 123456789:AA... Это и есть токен: пароль от бота, который даёт право действовать от его имени.

Если бот уже есть, токен показывает команда /mybots → выбрать бота → API Token. Токен можно перевыпустить, но тогда старый перестанет работать — включая кнопку, которую он ставил.

Что с ним делает конструктор

Вставленный в редакторе токен проверяется в Telegram — чей он и живой ли, — и сохраняется зашифрованным. При публикации конструктор сам вызывает метод Telegram setChatMenuButton вашим токеном и ставит кнопку меню на адрес приложения.

Поэтому в BotFather после /newbot делать нечего: вписывать адрес руками не нужно и не следует. Руками — это лишний шанс ошибиться в адресе и не заметить.

Кнопка не появилась или ведёт не туда

Кнопка ставится в момент публикации. Если приложение ещё не опубликовано, ставить её не на что, и меню остаётся прежним. Первое, что стоит проверить, — прошла ли публикация и открывается ли адрес.

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

Кнопка меню одна на бота. Значит, два приложения в одном боте кнопкой не разведёшь: второму нужен свой бот, либо переход между ними делается внутри приложения экранами.

По шагам

  1. 1Заведите бота у @BotFather командой /newbot или откройте существующего через /mybots.
  2. 2Скопируйте токен целиком — вместе с цифрами до двоеточия.
  3. 3Вставьте его в редакторе, в разделе подключения бота.
  4. 4Опубликуйте приложение: кнопка меню встанет на его адрес сама.

Что ещё спрашивают

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

Соседние разборы

Куда пойти дальше