Member
Участник чата. Встречается как member (о ком речь), bot (сам бот), arguments.targetMember (к кому обращена команда), chat.owner и в других местах.
При выводе {{ member }} печатается упоминание — имя-ссылка на профиль.
Свойства
| Свойство | Тип | Описание |
|---|---|---|
id | Число | ID пользователя в Telegram |
mention | Строка | Упоминание |
name | Строка | Имя и фамилия |
firstName, lastName | Строка | Имя и фамилия по отдельности новое |
username | Строка | Username без @ новое |
displayName | Строка | Должность администратора в чате, а если ее нет — имя. Псевдоним — nickname |
tag | Строка | @username, а если его нет — имя |
chatTag | Строка | Тег участника в Telegram — подпись рядом с именем, или null новое |
bot | Логический | Это бот |
isPremium | Логический | Есть Telegram Premium новое |
language | Строка | Язык Telegram участника новое |
status | Строка | Статус в чате: creator, administrator, member, restricted, left, kicked. Псевдоним — chatStatus |
isOwner | Логический | Создатель чата новое |
isAdmin | Логический | Администратор чата новое |
moderator | Логический | Может модерировать: администратор с правом ограничивать участников или роль бота «модератор» |
joinedAt | DateTime | Когда вступил в чат |
avatarUrl | Строка | Ссылка на аватар |
rank | Rank | Уровень и опыт |
roles | Список BotRole | Роли бота |
warnCount | Число | Активные предупреждения новое |
attributes | Атрибуты | Доступ к атрибутам по ключу: member.attributes.coins |
astral.playerTag | Строка | Тег привязанного игрока Brawl Stars или null |
astral.player | Игрок Astral | Профиль привязанного игрока или null — см. astral |
chat | Chat | Чат участника |
createdAt, bannerUrl, accentColor, activities, voiceState, flags, bio | — | Всегда пусто: в Telegram этих данных нет |
Методы
Роли
| Метод | Описание |
|---|---|
hasRole(роль) | Есть ли роль бота. Роль — ID или объект |
hasRoles([роли]) | Есть ли все роли из списка |
hasAnyRole([роли]) | Есть ли хотя бы одна роль из списка |
addRole(роль), addRoles([роли]) | Выдать роли |
removeRole(роль), removeRoles([роли]) | Снять роли |
modifyRoles([выдать], [снять]) | Выдать и снять одним вызовом |
addTempRole(роль, срок), addTempRoles([роли], срок) | Выдать на время. Срок — миллисекунды или DateTime, не меньше 15 секунд |
Изменений ролей — не больше 10 за выполнение.
Права
| Метод | Описание |
|---|---|
hasPermission(право) | Есть ли у администратора право Telegram: can_delete_messages, can_restrict_members, can_pin_messages и другие |
hasPermissions([права]) | Есть ли все права из списка |
Атрибуты
| Метод | Описание |
|---|---|
getAttribute(ключ) | MemberAttribute — значение, которое бот хранит для участника |
Недоступно
modifyNickname(имя) — в Telegram нельзя менять ники, редактор покажет ошибку unsupported_in_telegram.
Пример
template
{% if member.isAdmin %}🛡{% elseif member.hasRole('r_vip') %}⭐{% endif %} {{ member }}
Уровень {{ member.rank.level }}, предупреждений: {{ member.warnCount }}