Команды, кнопка меню и инлайн-режим
Что это
Команды начинаются со слеша: стоит набрать /, и появится их список с описаниями. Кнопка «Меню» рядом с полем ввода открывает этот список или запускает мини-приложение. Инлайн-режим позволяет пользоваться ботом в любом чате: человек набирает `@your_bot` и запрос, а потом выбирает результат.
Как сделать
- Команды: отправь @BotFather /setcommands, выбери бота и пришли по команде на строку: `help - Что умеет бот`.
- Поддержи /start и /help, а если у бота есть настройки — /settings.
- Кнопка меню: /setmenubutton, затем текст кнопки и адрес мини-приложения; без этого кнопка открывает список команд.
- Инлайн-режим: /setinline, выбери бота и пришли подсказку, которую люди увидят в поле ввода после имени бота.
- Как пользоваться: в любом чате набери `@your_bot` и запрос и нажми на… Как пользоваться: в любом чате набери `@your_bot` и запрос и нажми на результат. В сообщении рядом с именем отправителя появится имя бота.
Осторожно
- Команда — от 1 до 32 символов: строчная латиница, цифры и подчёркивание. Описание — от 1 до 256 символов, в списке до 100 команд.
- Метод setMyCommands в Bot API задаёт разные списки для личных чатов, групп, администраторов, отдельного чата и разных языков.
- Человек может отправить любую команду, даже не из списка: на сервере проверяй, что она есть и ему можно её вызвать.
- В группах с режимом приватности пиши `/command@your_bot`.
- В инлайн-ответе до 50 результатов. По умолчанию Telegram кеширует ответ на 300 секунд и может показать его любому, кто наберёт тот же запрос; для личных результатов ставь `is_personal`.
С Gem
Gem не настраивает команды, кнопку меню и инлайн-режим: своего бота на Gem пока нет. Твой проект живёт в @gembot (/newproject, /myprojects, /dashboard, /newapp), а его мини-приложение открывается по `t.me/gembot?startapp=<name>`.
Источники
- https://core.telegram.org/bots/features#commands
- https://core.telegram.org/bots/api#setmycommands
- https://core.telegram.org/bots/inline
- https://core.telegram.org/bots/webapps