Форма создания бота в мини-приложении BotFather получила второе поле имени. Оно необязательное, проверяется отдельным методом и уезжает на сервер вместе с остальной анкетой. Лежит эта правка пока на одном стенде раздачи из четырёх.

Что изменилось в коде
botfather.js — это веб-BotFather, мини-приложение, где боту заводят токен, команды и профиль. В нём прибавилось сорок шесть строк.
Поле зовётся additional_username, и флаг его состояния при загрузке страницы выставляется в «годен» — пустое поле формы не блокирует. К нему приделан свой таймер задержки: правка в поле вызывает проверку через четыреста миллисекунд, уход из поля — сразу, чтобы не ждать.
Проверка ходит на сервер методом checkBotAdditionalUsername и ответ разбирает в три состояния подсказки: «проверяем», «свободно» и ошибка. Текст ошибки не собирается на клиенте, а печатается как есть с сервера. Отправка формы спотыкается только о непустое имя, которое проверку не прошло, а в метод createBot добавился ещё один параметр — с этим именем.
Ни одной новой строки интерфейса к полю не завезли: подсказки берут те же ключи, что и первое имя.
Платить ли за второе имя, из кода не видно. Подсказки у него те же, что у первого, бесплатного, — «проверяем» и «свободно», — а слов про Fragment, звёзды или покупку в файле нет ни одного. Но цена, если она есть, живёт на сервере: клиент только спрашивает, свободно ли имя, и печатает ответ.
Почему это не новая механика
Несколько имён на один аккаунт протокол Telegram знает давно. В схеме API есть отдельный тип имени с флагами «редактируемое» и «активное» — так устроены коллекционные имена, которые продаются на Fragment, и так же выглядят дополнительные имена у каналов.
У ботов страница с их списком в том же мини-приложении уже была: отдельный экран и метод добавления имени к готовому боту. Новое здесь ровно одно — второе имя можно задать в ту же минуту, когда бот заводится, а не приходить за ним отдельно.
Зачем — код не говорит. В нём нет ни подписи к полю, ни подсказки, ни условия, при котором поле показывается: вся эта часть формы живёт в разметке, которую отдаёт сервер, а она закрыта авторизацией мини-приложения.
Почему поле пока никто не видит
Статику Telegram раздаёт с нескольких стендов, и они не синхронны: это ветки, а не копии. Второе имя сегодня есть только на одном из них — файл там весит 95 172 байта. Рабочее мини-приложение BotFather, которое открывается из Telegram, берёт файл с webappinternal.telegram.org, и там лежит прежняя версия на 93 463 байта: в форме создания три поля — имя бота, описание и username.
В рабочем коде метод не новый: его уже зовёт экран добавления имени к готовому боту и передаёт вместе с именем номер бота. Но рабочий сервер его не исполняет. С номером собственного бота он отвечает Method not found, как на выдуманный метод, без номера — Unauthorized. Серверной части у второго имени бота пока нет ни при создании, ни у готового бота.
Посмотреть на само поле пока негде: файлы стенды отдают кому угодно, а любой адрес самой формы закрыт авторизацией мини-приложения и отвечает 403. Открытой страницы у веб-BotFather нет, на странице бота в t.me кнопки запуска приложения тоже нет.
В переписке с самим @BotFather анкета по-прежнему спрашивает одно имя.



