EnotPRO Logo EnotPRO

user

Макрос !{user} создаёт ссылку на профиль пользователя Telegram. Ссылка может вести:

  • На профиль пользователя в Telegram (через tg://user?id= или t.me/username)
  • В админку бота (на страницу управления пользователем)

💡 Совет: Используйте макрос, чтобы показывать имя пользователя в виде кликабельной ссылки. Это удобно для списков участников, логов, уведомлений администраторам.

Пример результата:

<a href="tg://user?id=123456789">Иван Петров</a>

Синтаксис

!{user|
  path: from;
  text: Кастомный текст;
  admin;
  linkOnly;
  byUsername;
}

Короткая форма (без параметров):

!{user}

В короткой форме макрос создаёт ссылку на целевого пользователя (target) с его именем в качестве текста.

Параметры

Параметр Тип Обязательный Описание
id Число ❌ Нет ID пользователя
username Строка ❌ Нет Username пользователя (с @ или без)
path Строка ❌ Нет Путь к объекту с данными пользователя
text Строка ❌ Нет Текст ссылки (вместо имени пользователя)
admin Boolean ❌ Нет Ссылка на профиль в админке бота
linkOnly Boolean ❌ Нет Только URL (без HTML-обёртки)
byUsername Boolean ❌ Нет Ссылка через t.me/username (вместо tg://user?id=)

Значения параметра path

Параметр path позволяет указать, откуда брать данные пользователя.

Значение Описание
from Отправитель текущего сообщения
target Целевой пользователь (значение по умолчанию)
reply Автор сообщения, на которое ответили

Примеры

Отправитель текущего сообщения

!{user|path: from}

Целевой пользователь (по умолчанию)

!{user|path: target}

То же самое, что и !{user}

Автор сообщения, на которое ответили

!{user|path: reply}

💡 path может также указывать на любой объект в контексте, содержащий поля id, first_name, last_name, username.

Примеры

Простейший пример (текущий целевой пользователь)

!{user}

Результат (если пользователь target имеет имя «Иван Петров» и ID 123456789):

<a href="tg://user?id=123456789">Иван Петров</a>

Ссылка на отправителя сообщения

!{user|path: from}

Ссылка на автора сообщения, на которое ответили

!{user|path: reply}

С кастомным текстом

!{user|path: target; text: Написать администратору}

Результат:

<a href="tg://user?id=123456789">Написать администратору</a>

По конкретному ID

!{user|id: 123456789}

По username

!{user|username: durov} Результат:

<a href="https://t.me/durov">@durov</a>

Типичные ошибки и их решение

Ошибка Причина Решение
Ссылка ведёт не туда Не указан path, а контекст не содержит target Укажите явно path: from или path: reply
Текст ссылки — "user" Не удалось определить имя пользователя Укажите text явно
Ссылка в админку не работает Не указан id Убедитесь, что у пользователя есть ID
byUsername не срабатывает У пользователя нет username Проверьте, есть ли у пользователя username

Описание: Создает ссылку на профиль пользователя Telegram.

Параметры:

  • id - идентификатор пользователя или переменная со значением ID (опциональный)
  • username - username пользователя (с @ или без) или переменная со значением username (опциональный)
  • path - путь к объекту с параметрами пользователя (опциональный):
    • from - отправитель текущего сообщения
    • target - целевой пользователь (по умолчанию, если не указаны id, username или path)
    • reply - автор сообщения, на которое ответили
  • text - текст для отображения вместо имени пользователя (опциональный)
  • admin (bool) - создать ссылку на раздел пользователя в админке бота вместо профиля Telegram (опциональный, требуется наличие id)
  • linkOnly (bool) - вернуть только URL без HTML-обёртки (опциональный)
  • byUsername (bool) - строить ссылку через t.me/username вместо tg://user?id= (опциональный, работает если у пользователя есть username)

Возвращает: HTML-ссылку на пользователя Telegram или профиль в админке бота.

Примеры:

Ссылка на целевого пользователя (по умолчанию)

(path=target по умолчанию)

!{user}

Ссылка на инициатора действия

!{user| 
  path: from;}

Ссылка по конкретному ID

!{user| 
  id: 123456789;}

Ссылка на пользователя по username

!{user|
  username:durov}

Использование переменных

!{user| 
  id: ${targetUser.id};}
!{user| 
  username: ${user.username};}

Ссылка с кастомным текстом

!{user| 
  path: targetUser; 
  text: Открыть профиль;}

Ссылка на профиль в админке бота

!{user| 
  path: targetUser; 
  text: Открыть в админке; 
``admin;}

Только ссылка без текста

!{user| 
  path: targetUser; 
  linkOnly;}

Ссылка через t.me

!{user| 
  path: targetUser; 
  byUsername;}

Комбинация параметров

!{user|
  path: targetUser;
  text: Связаться с пользователем;
  byUsername;
}
© 2025 EnotPRO. Все права защищены.