--- url: /commands/settings.md description: >- Все настройки пользовательской команды — имя, алиасы, slash, описание, группа, права доступа, кулдаун, режим ответа и наследование от модуля. --- # Настройки команды

Редактор команды разделен на вкладки: Действия, Поля вызова, Диагностика и Тест. Над вкладками — шапка с основными полями команды.

## Основные поля { #general } | Поле | Описание | Ограничения | |---|---|---| | **Имя** | Имя для вызова через слэш: `/dice` | Латиница в нижнем регистре, цифры и `_`, до 32 символов. Уникально в чате и не совпадает со встроенными командами | | **Slash-команда** | Показывать команду в меню Telegram, которое открывается по `/` | В меню помещается до 100 команд вместе со встроенными | | **Алиасы** | Другие названия для вызова с префиксом: `!кубик`, `.кость` | До 10 алиасов, на любом языке, до 32 символов, без пробелов | | **Описание** | Что делает команда. Видно в меню Telegram и в `/help` | До 256 символов | | **Группа** | Название группы, по которой команды собираются в списке панели и в `/help` | До 32 символов, свободная форма | | **Действие по умолчанию** | Какое действие выполнить, когда участник пишет команду | Одно из действий команды | ::: warning Имя или алиас заняты Если имя совпадает со встроенной командой (например, `mute`) или алиас уже есть у другой команды, редактор подсветит поле и подскажет, с какой командой конфликт. ::: ## Поля вызова { #invocation } Вкладка **«Поля вызова»** определяет, кто, где и как часто может вызывать команду. Это те же поля, что у встроенных команд. ### Кто может вызывать { #who } | Поле | Что задает | |---|---| | Разрешенные статусы | Статусы Telegram: создатель, администраторы (можно потребовать конкретные права админа), обычные участники, ограниченные | | Разрешенные роли | Роли бота, которым можно | | Разрешенные участники | Конкретные люди | | Запрещенные статусы, роли, участники | Кому нельзя, даже если что-то из разрешенного подходит | | Минимальный уровень | Команда доступна с N-го уровня (если включены «Уровни») | ::: info Создателя чата не запереть Создатель чата всегда может вызвать включенную команду, даже если в запрещенных указано иное. Так владелец не сможет случайно закрыть доступ самому себе. ::: ### Где можно вызывать { #where } | Поле | Что задает | |---|---| | Разрешенные топики | Если заполнено, команда работает только в этих топиках форума | | Запрещенные топики | В этих топиках команда не работает | В чатах без топиков эти поля не показываются. ### Как часто { #cooldown } **Кулдаун** — пауза, в течение которой команду нельзя вызвать повторно. Задается в секундах (до суток) и действует на выбор: | Область | Значит | |---|---| | На участника | Каждый участник может вызывать команду раз в N секунд | | На чат | Команду можно вызвать раз в N секунд на весь чат | | Глобально | Одна пауза для всех | ### Как отвечать { #reply } | Поле | Варианты | |---|---| | Режим ответа | **Ответом** на сообщение с командой · **Без упоминания** · **В ЛС** (если участник запускал бота) · **Эфемерно** — ответ видит только вызвавший | | Эфемерная команда | Сам вызов команды из меню Telegram не виден остальным участникам | | Удалить сообщение с командой | Бот удалит `!кубик` после выполнения | | Удалить ответ через | Бот удалит свой ответ через N секунд (0 — не удалять) | | Записывать в лог | Отправлять вызов команды в лог-чат | ::: warning Эфемерные сообщения не гарантированы Telegram может не доставить эфемерное сообщение, если участник не в сети. Используйте этот режим для необязательных ответов: `/rank`, подсказок, сообщений «нет прав». ::: ## Наследование от модуля { #inheritance } У всех пользовательских команд есть общие настройки по умолчанию — в разделе **«Команды»** на уровне модуля. Каждое поле команды либо берется оттуда, либо переопределено у самой команды: * бейдж **«Из модуля»** — значение унаследовано, изменится вместе с модулем; * бейдж **«Переопределено»** — значение задано у команды. Кнопка **«Сбросить к модулю»** возвращает наследование. Так удобно задать кулдаун 5 секунд для всех команд сразу и поменять его только там, где нужно. ## Как бот сообщает об ошибках { #error-mode } Когда команда не может выполниться — сработал `require`, кончилась квота, у бота нет прав, — бот отвечает сообщением об ошибке. Как именно — задается в настройках модуля «Команды»: | Вариант | Что происходит | |---|---| | Ответом | Бот пишет ошибку ответом на вызов | | Эфемерно | Ошибку видит только вызвавший | | Молча | Бот ничего не пишет, ошибка остается только в диагностике | ## Включение и выключение { #enable } Команда выключается через меню **«⋯»** в редакторе — бот попросит подтвердить. Выключенная команда не отвечает и исчезает из меню Telegram и `/help`, но все ее настройки сохраняются. ## Горячие клавиши { #hotkeys } | Клавиши | Действие | |---|---| | Ctrl + S | Сохранить команду | | F11 | Развернуть активное поле шаблона на весь экран |