Перейти к содержимому

Переменные шаблонов

В подписях хостов, своих примечаниях (для истёкших, отключённых и превысивших лимит пользователей, при пустом списке хостов и превышении лимита HWID), в respondWithRemarks правил ответа, в своих заголовках ответа и в сообщении о лимите устройств можно подставлять данные пользователя.

🇩🇪 Германия · осталось {{DAYS_LEFT}} дн. · {{TRAFFIC_LEFT}}

Неизвестная переменная остаётся в тексте как есть.

Переменная Значение
{{USERNAME}} Имя пользователя
{{ID}} Числовой ID
{{SHORT_UUID}} Короткий UUID из ссылки подписки
{{SUBSCRIPTION_URL}} Полная ссылка подписки
{{EMAIL}}, {{TELEGRAM_ID}}, {{TAG}}, {{DESCRIPTION}} Поля пользователя, пусто, если не заданы
{{STATUS}} Статус: Active, Expired, Disabled, Limited
{{DAYS_LEFT}} Дней до окончания подписки, не меньше 0
{{EXPIRE_UNIX}} Дата окончания, Unix-время в секундах
{{TRAFFIC_USED}}, {{TRAFFIC_LEFT}}, {{TOTAL_TRAFFIC}} Трафик в читаемом виде: 1.23 GiB
{{TRAFFIC_USED_BYTES}}, {{TRAFFIC_LEFT_BYTES}}, {{TOTAL_TRAFFIC_BYTES}} То же в байтах
{{LIFETIME_USED_BYTES}} Трафик за всё время, байты
{{RESET_STRATEGY}} Сброс трафика: NO_RESET, DAY, WEEK, MONTH, MONTH_ROLLING
{{LAST_TRAFFIC_RESET_AT}}, {{NEXT_TRAFFIC_RESET_AT}} Даты последнего и следующего сброса трафика
{{LAST_TRAFFIC_RESET_AT_UNIX}}, {{NEXT_TRAFFIC_RESET_AT_UNIX}} То же в Unix-времени, 0, если даты нет
{{CREATED_AT_UNIX}} Дата создания пользователя, Unix-время
{{SS_HWID_LIMIT}} Лимит устройств: личный, иначе общий, иначе 0

Если лимит трафика не задан, TRAFFIC_LEFT и TOTAL_TRAFFIC равны нулю.

После двоеточия переменной можно передать параметры: {{ПЕРЕМЕННАЯ:ключ=значение|ключ=значение}}.

  • Свои названия статуса и стратегии сброса:

    {{STATUS:ACTIVE=Активна|EXPIRED=Истекла|DISABLED=Отключена|LIMITED=Лимит}}
    {{RESET_STRATEGY:MONTH=ежемесячно|NO_RESET=без сброса}}

    Для значений без своего названия выводится стандартное.

  • Формат даты для LAST_TRAFFIC_RESET_AT и NEXT_TRAFFIC_RESET_AT, по умолчанию DD.MM.YYYY:

    Сброс трафика {{NEXT_TRAFFIC_RESET_AT:format=DD.MM HH:mm}}

    Токены как в dayjs: YYYY, YY, MM, DD, HH, mm, ss и другие. Названия месяцев и дней недели (MMMM, dddd) выводятся по-английски. Время в UTC.

Если строка начинается с rwEncodeBase64:, после подстановки она кодируется и выводится как base64:<закодированный текст>. Так передают текст с переводами строк и эмодзи в заголовках, например в заголовке announce, который показывают Happ и другие клиенты.