Команда бота — это сообщение Telegram, начинающееся с косой черты, за которой опционально следует @имя_бота; клиенты Telegram распознают такое сообщение и предлагают пользователям как действие, на которое можно нажать, а не как обычный текст. Собственный бот Autogram отвечает на две команды: /start, которая несёт код верификации из deep link «Привязать Telegram» и связывает ваш аккаунт Telegram с аккаунтом Autogram, и /language, которая позволяет сменить язык ответов бота, не выходя из Telegram.
Команда — это просто сообщение, первое слово которого начинается с /, поэтому бот должен сам распознать её среди обычного текста сообщения, как и любое другое сообщение, — Telegram не толкует слово с косой чертой на своей стороне. В группе или канале команду отправляют с добавленным именем бота (/start@YourBot), ведь в чате может быть несколько ботов, и клиенту нужно знать, какому из них предназначено нажатие. Парсер Autogram отбрасывает этот суффикс и сравнивает только саму команду.
/start — единственная команда, которую каждый бот Telegram получает особым образом: она срабатывает, когда кто-то открывает deep link t.me/<бот>?start=<payload>, и всё, что идёт после знака равенства, приходит как аргумент команды. Autogram использует это для связывания аккаунта: payload — это короткоживущий код верификации, созданный, когда вы нажимаете «Привязать Telegram» в браузере, а его погашение записывает ваш идентификатор пользователя Telegram в ваш аккаунт Autogram. Голая команда /start без payload — это то, что отправляет собственная кнопка START Telegram, и Autogram отвечает на неё приветствием, а не молчанием.
/language — вторая, обычная команда без особой обработки со стороны Telegram: отправленная сама по себе, она перечисляет доступные языки, а отправленная с суффиксом — /language_en, /language_uk, /language_ru — сразу переключает язык ответов бота, без открытия меню или выхода из Telegram. Она реализована как команда, а не кнопка, потому что нажатие кнопки приходит как другой тип обновления, на который вебхук Autogram не подписан, тогда как команда с косой чертой едет тем же обновлением сообщений, которое бот уже слушает.
Автоматизируйте публикацию в Telegram с помощью AI-контента, оценки качества и умного планирования.