Теги участников
Команда -тег ставит участникам теги, передаёт их между людьми, держит префикс чата и метки ролей в инфо-канале.
Тег это короткая подпись рядом с именем участника: роль в ролевом чате, звание, должность или шутка, которая давно прижилась. Показывает его сам телеграм, там же, где показывает подписи администраторов, а ставит бот по команде. Всё управление собрано в одной команде с указанием действия.
-тегТеги участников: выдача, снятие, передача, список и метки ролей
-теги/tag/tags<параметр> — обязательный[параметр] — необязательныйБез действия команда присылает памятку с тем, что умеет. Из неё можно открыть список тегов чата. Отправите её ответом на сообщение, и бот вместо памятки покажет тег того, кому вы ответили.

| Действие | Что делает |
|---|---|
@юзер <тег> | Ставит участнику тег, слово-действие тут не нужно |
| Убирает тег и освобождает роль | |
| Переносит тег с одного участника на другого | |
| Показывает текущий тег участника | |
| Открывает список тегов чата с поиском и страницами | |
| Символ, с которого начинаются теги участников | |
| То же для тех, у кого в чате есть админка телеграма | |
| Бронирует роль в инфо-канале | |
| Отмечает, что на роль ищут человека | |
| Помечает роль занятой без участника | |
| Снимает метку роли | |
| Стирает теги тех, кто ушёл из чата |
Не путайте -тег с -нетег. Вторая про ИИ-компаньона и к подписям участников отношения не имеет.
Поставить тег
-тегСтавит участнику подпись рядом с именем
<параметр> — обязательный<параметр> — обязательныйВсё, что вы напишете после участника, бот сохранит как тег.
Поэтому -тег @юзер Ху Тао ставит тег из двух слов, а не ищет действие «Ху».

Тег вмещает 16 символов вместе с префиксом чата, и это предел телеграма, а не бота. Эмодзи в тегах телеграм не разрешает, а лишние символы бот вычищает сам. Что делать с тегами длиннее лимита, решает настройка «Длинные теги», про неё ниже.
Себе тег поставить нельзя, боту тоже. Участнику с такой же или более высокой ролью, чем у вас, тоже нельзя, иерархия тут работает так же, как в модерации. Владельцу чата тег не поставить вообще, телеграм такого не разрешает.
Когда включена проверка по инфо-каналу, тегом может стать только роль из списка. Опечатку бот попробует угадать и предложит применить найденный вариант в один клик, а роль, которую уже кто-то держит, не отдаст и покажет, кто её занял. Роли с меткой брони или розыска при этом считаются свободными.
Посмотреть тег
[параметр] — необязательныйВ ответ придёт одна строка с именем участника и его тегом, а если тега нет, бот так и напишет. Прав для этого никаких не нужно, посмотреть может любой участник.
Снять тег
-тег снятьУбирает тег у участника и освобождает роль
[параметр] — необязательныйБот напишет, какой тег был снят, и, если проверка по инфо-каналу включена, освободит роль в списке. Если тега и не было, он об этом скажет и ничего не тронет.
Передать тег
<параметр> — обязательный<параметр> — обязательныйПередача снимает тег у первого участника и ставит его второму, так что вручную ничего снимать не нужно. Полезно, когда роль в чате переходит от одного человека к другому. Старый владелец остаётся без тега, а роль в инфо-канале никуда не пропадает.

Иерархия проверяется по обоим участникам сразу, так что забрать тег у кого-то старше вас не получится. Если новому владельцу тег не встанет, бот вернёт его прежнему и напишет, что пошло не так.
Список тегов
-тег списокВсе участники чата с тегами, страницами и с поиском
[параметр] — необязательныйВ списке видно, сколько человек в чате с тегами, и сами теги вместе с именами, по десять на страницу. Участники, покинувшие чат, в список не попадают.

Запрос ищет по самому тегу, не по имени, и достаточно части слова. Найденное бот покажет только в первом сообщении, а стоит переключить страницу, и список снова станет полным. Команда -тег список доступна любому участнику.
Префикс тегов
-тег префиксСимвол, который бот подставляет в начало новых тегов
-тег prefix[параметр] — необязательныйПрефикс это символ вроде !, ~ или #, с которого начинаются все теги чата. Нужен он для порядка: с ним теги в списке участников выстраиваются рядом и сразу отличаются от подписей, которые люди себе выдумали до бота. Буквы, цифры и пробелы в префикс не годятся, только спецсимволы, и не больше трёх символов.
Без значения команда покажет текущий префикс и подскажет, как его сменить. Действие убирает его совсем.
[параметр] — необязательныйТот же префикс, но для тех, у кого в чате есть админка телеграма, чтобы отличать их теги от остальных. Пока он не задан, админам достаётся обычный префикс.
Префикс подставляется в момент сохранения тега, поэтому смена префикса не переписывает то, что уже выдано: новые теги пойдут с новым символом, старые останутся как есть, пока их не выдать заново.
Метки ролей в инфо-канале
Обычно роль в инфо-канале помечается занятой сама, как только кто-то получил соответствующий тег. Но роль бывает нужно отметить и без участника: держим её за человеком, который вот-вот придёт, или наоборот ищем на неё желающих.
<параметр> — обязательный<параметр> — обязательный<параметр> — обязательный<параметр> — обязательный
Каждое действие есть и отдельной командой: -бронь, -розыск, -занять роль, -освободить роль. Работают они одинаково, и -снять бронь тоже освобождает роль. Слово роль или бронь можно писать слитно с командой: -занятьроль, -снятьбронь.
Роль достаточно назвать примерно, бот понимает сокращения и привычные прозвища персонажей, а на опечатку предложит ближайшую роль из списка. Символы, которыми метки рисуются в посте, бот берёт из условных обозначений самого поста, а если их там нет, ставит свои.
Бронь и розыск держатся, пока их не снимут вручную, автообновление такие метки не трогает. А занятость и свобода меняются сами, вслед за тегами участников.
Без подключённого инфо-канала помечать нечего, поэтому бот предложит перейти в настройки подключений. Если метка на роли уже стоит, бот скажет, что менять нечего.
Очистить теги ушедших
-тег очиститьСтирает теги участников, покинувших чат, и освобождает их роли
Люди уходят из чата вместе со своими тегами, и роль формально остаётся за тем, кого в чате давно нет. Команда собирает всех таких участников и разом освобождает их роли.

Бот сначала покажет, сколько ушедших с тегами нашлось, и попросит подтверждение. После очистки придёт отчёт: сколько тегов снято и были ли ошибки при обновлении инфо-канала. Тех, кто в чате, команда не касается вообще, так что случайно снести теги всему чату ей не получится.
Не путайте действия. -тег снять убирает тег у одного участника, а -тег очистить стирает теги всех ушедших.
Настройки тегов
Обе настройки доступны через -настройки в разделе управления тегами.
Проверка по инфо каналу привязывает теги к списку ролей: выдать можно только роль из поста, занятость обновляется сама. Пока проверка выключена, тег может быть любым, и одинаковые теги у разных людей бота не смутят. Переключатель появляется только при подключённом инфо-канале, а если канал отключить, проверка выключится сама.
Настройка длинных тегов решает судьбу тегов, которые не влезли в 16 символов телеграма. По умолчанию бот такой тег отклоняет, но можно выбрать и другое поведение.
| Вариант | Что происходит с длинным тегом |
|---|---|
| Отказ в выдаче | Бот откажется его ставить |
| Обрезка по длине | Обрежет ровно по лимиту |
| Удаление последних слов | Отбросит слова с конца |
| Сокращение до инициалов | Сократит слова с конца до инициалов: Камисато Аято превратится в Камисато А. |
Сокращается только та версия, которую видно в телеграме. Полный тег бот помнит и ищет по нему, а в ответе на команду покажет обе версии: сам тег и то, что от него осталось в отображении.
Что нужно боту
Теги ставит телеграм, поэтому боту нужны права администратора в группе, и среди них право менять теги участников. Без него ни одна команда из этой статьи тег не сохранит, о чём бот честно напишет в ответе.
Если тег не встаёт, причин обычно три: у бота нет нужного права, тег длиннее лимита или содержит то, что телеграм в тегах не разрешает, или участник это владелец чата.
Кому доступны команды
| Действие | Кому доступно |
|---|---|
| Поставить, снять, передать тег, очистить теги ушедших | Модераторы и выше |
| Метки ролей в инфо-канале | Модераторы и выше |
| Префикс тегов участников и админов | Администраторы и выше |
Посмотреть тег и открыть список через -тег | Все участники |
Права выдаются по отдельности, так что доступ можно и сузить, и расширить через права участника. Управление тегами, метки ролей и префикс это три разных права: например, модератору можно оставить выдачу тегов, но закрыть префикс, чтобы оформление чата не менялось по настроению.