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

Пользователи

Страница Пользователи показывает список уникальных пользователей, взаимодействовавших с вашим ботом в выбранном временном диапазоне.

Что показывает страница

Каждая строка таблицы содержит:

ПолеОписание
Platform User IDИдентификатор, под которым producer записал событие. Для личных переписок это Telegram ID пользователя; для сообщений в группе MTProto-воркер записывает сюда ID чата, а настоящий автор лежит в $tg.from_id — именно его считают метрики пользователей
Events in RangeКоличество событий пользователя за выбранный период
First SeenДата первого взаимодействия
Last SeenДата последнего взаимодействия
ДополнительныеСвойства из профиля пользователя (настраиваются)

Настройка столбцов

Нажмите кнопку Columns в верхней части страницы, чтобы добавить или убрать столбцы с пользовательскими свойствами.

По умолчанию отображается столбец $tg.username. Вы можете:

  • Добавить любое свойство из профиля пользователя (например, $tg.first_name, $tg.lang)
  • Ввести произвольный ключ свойства вручную
  • Удалить ненужные столбцы

Выбор столбцов сохраняется в браузере и восстанавливается при следующем открытии.

Свойства профиля пользователя ($tg.*)

При подключении через токен Telegram-бота Metriox автоматически сохраняет свойства пользователя из Telegram:

СвойствоТипОписание
$tg.telegram_user_idnumberИдентификатор пользователя в Telegram
$tg.first_namestringИмя пользователя
$tg.last_namestringФамилия (если заполнена)
$tg.usernamestringUsername в Telegram (если задан)
$tg.language_codestringЯзыковой код (например, "ru", "en")
$tg.is_premiumbooleanPremium-статус (если установлен Telegram)

Откуда берётся профиль и почему бывает пусто

У большинства аккаунтов в Telegram нет @username, а имя приходит только в тех обновлениях, где Telegram прислал объект from. Поэтому пользователь может быть в списке с одним лишь идентификатором — он существует и учитывается везде, просто назвать его пока нечем.

Что наполняет профиль:

  • Mini AppinitData содержит полную личность, профиль заполняется всегда.
  • Серверный SDK (Bot API) — личность приходит, если передавать в SDK апдейт целиком (см. SDK). Без этого Metriox всё равно восстановит @username из самих событий, но имя, язык и Premium останутся неизвестными.
  • Подключение по токену бота (MTProto) — Telegram не отдаёт боту личку, поэтому в личных чатах этот путь профиль не наполняет; в группах и каналах — наполняет.

Историю «до Metriox» получить нельзя: у Telegram нет метода, который вернул бы боту список писавших ему людей. Считается только то, что происходит после подключения.

Периоды в разрезах по свойствам

Разрез по языку, Premium или кампании считает пользователей, активных за выбранный период, и берёт их профиль по состоянию на сейчас. Пользователь, чей профиль записан полгода назад, но который писал вчера, попадает в отчёт за вчера. Тот, кто активен, но пока безымянен, попадает в корзину «не задано».

Параметр /start

Если пользователь открыл бота через диплинк /start <параметр>, Metriox сохраняет:

СвойствоТипОписание
$tg.start_rawstringПараметр /start в исходном виде
$tg.start.<ключ>stringРазобранные пары ключ=значение из параметра

Пример: если пользователь перешёл по ссылке https://t.me/YourBot?start=ref_123%26campaign_promo, то:

$tg.start_raw  = "ref_123&campaign_promo"
$tg.start.ref = "123"
$tg.start.campaign = "promo"
Актуальность данных

Профиль пользователя обновляется при каждом взаимодействии. В таблице отображается последний известный снимок.

Фильтрация пользователей

К странице Пользователи применяются те же фильтры, что и к виджетам. Используйте предикаты на события, чтобы найти пользователей, совершивших определённые действия.

Карточка пользователя

Нажмите на строку пользователя, чтобы открыть его карточку с:

  • Всеми свойствами профиля
  • Историей событий за выбранный период

Что дальше?