Как делаются эти цифры.
За каждым рейтингом и значком на странице Limzo стоит понятное правило, а не чёрный ящик. Вот как считается статистика — и, так же честно, чего Telegram-бот измерить не может.
Откуда берутся данные
Когда админ добавляет Limzo в группу, Telegram начинает передавать боту сообщения и реакции этой группы. Limzo читает каждое обновление, извлекает лёгкие сигналы и обновляет счётчики по участникам и по группе. Он начинает с момента добавления — Telegram не даёт ботам читать историю, — поэтому свежая страница заполняется в первые дни активности.
Часть трафика сознательно исключается ради честной статистики: другие боты, сервисные сообщения самого Telegram и автопересылки постов каналов (псевдо-участник «Telegram») не засчитываются в рейтинги участников.
Карма и XP
Карма — мера полезного, позитивного участия в Limzo. Она построена на сигналах: нет команды !karma, которую можно выпрашивать, и нет минусов, которыми можно воевать. Участники получают карму, когда их ответы вызывают отклик, когда сообщения собирают реакции, когда они отвечают на вопросы и оживляют затихший чат.
XP участника — это его накопленная карма. Поскольку XP растёт из сигналов качества, а не из числа сообщений, его нельзя накрутить флудом — сто сообщений «для галочки» двигают шкалу куда меньше, чем один действительно полезный ответ.
Уровни и значки
Уровни считаются напрямую из XP. Каждый уровень стоит чуть дороже предыдущего по плавной кривой (примерно 10·уровень² + 30·уровень суммарного XP до уровня), так что первые уровни приходят быстро, а высокие награждают долгий вклад. Число уровня растёт бесконечно.
Поверх шкалы уровней стоят шесть значков-вех:
- 🥚 Новичок — уровень 1
- 🐣 Завсегдатай — уровень 3
- ⭐ Знакомое лицо — уровень 6
- 🔥 Ветеран — уровень 10
- 💎 Элита — уровень 18
- 👑 Легенда — уровень 30
Limzo поздравляет участника в чате при переходе на новый значок (первый значок фиксируется тихо, поэтому добавление бота в старую группу никогда не вызывает лавину поздравлений). Значки постоянные — ничего не «сгорает», — а группы с Pro/Community могут переименовать все шесть.
Достижения
Достижения — девять коллекционных разовых наград, которые поощряют разнообразие хорошего поведения, а не объём: например, 💯 «Сотня» (100 сообщений), 🌙 «Ночная сова», 🎁 «Щедрая душа» (500 отданных реакций) и 🔥 «Преданность» (серия 30 дней подряд). Они считаются по устойчивым счётчикам, которые копятся независимо от сроков хранения детальных данных, — прогресс не теряется при очистке. Каждое открывается один раз и остаётся навсегда.
Цитаты и статистика характеров
Шутливые «портреты» — Крикун, Допросчик, Солнышко чата и Грозовая туча, Романист и Минималист — считаются из лёгких сигналов по сообщениям (доля КАПСА, вопросы, позитивные и негативные эмодзи, средняя длина) с разумными порогами, чтобы одно сообщение никого не короновало. «Парочки чата» измеряют, кто кому отвечает чаще всех, экономика реакций сравнивает отданные и полученные реакции, а «Первая помощь» отслеживает медианную скорость ответа.
Кандидаты в цитаты выбираются только из заметных текстовых сообщений — медиа и стикеры цитатами не становятся, — и цитаты можно полностью отключить.
«Лучшие рекрутеры» получают признание за приведённых людей — по ручным добавлениям («X добавил(а) Y») и именованным пригласительным ссылкам. Каждый участник засчитывается одному рекрутеру — первому, — так что повторное добавление не накручивает рейтинг, а основная пригласительная ссылка группы (органический приток) никому не приписывается.
«Настроение чата» — простое соотношение позитивных и негативных эмодзи по всей группе. Оно показывается только при достаточном эмоциональном сигнале, чтобы тихий период не искажал картину, а еженедельный дайджест сравнивает его с прошлой неделей — солнечнее стало или пасмурнее. Это лёгкий игровой сигнал, а не сентимент-анализ чьих-то слов.
Модерация и чистая статистика
Лёгкий антиспам-слой Limzo помечает такие вещи, как спам ссылками и промо через цитаты каналов. Когда что-то удалено — или админ добавил термин в список блокировки, — связанный контент отфильтровывается с публичной страницы и из еженедельного отчёта, так что статистика отражает настоящее сообщество, а не шум.
Честные пределы
Мы лучше скажем, где данные заканчиваются, чем сделаем вид, что это не так:
- Нет истории до добавления. Telegram не раскрывает ботам прошлые сообщения, поэтому день ноль — это день добавления Limzo.
- Чужие удаления невидимы. Если сообщение удалил другой бот или админ, Telegram не присылает событие — страховкой служат фильтры при отрисовке, а админы могут задним числом скрыть контент через список блокировки.
- Сравнениям нужен разбег. Статистика «к прошлому периоду» появляется только когда истории достаточно для честного сравнения — бессмысленных скачков «+3 925%» на свежей группе вы не увидите.
- Сигналы, а не слежка. Почти всё, что питает страницу, — агрегированные счётчики. Что именно хранится и как долго — в политике конфиденциальности.