Задача
Держать список пользователей, вступивших по инвайт ссылке (по аналогии с офф. клиентом/методом messages.getChatInviteImporters), не являясь владельцем канала/администратором, создавшим ссылку (т.е. с любого админского аккаунта).
Текущая реализация
Смотрим в логе действия вступления (+ с подтверждением заявки) и отписки (п.п.с. те записи, которые ещё не видели, разумеется).
Для вступлений находим в базе соответствующую ссылку по title, затем:
- Новый пользователь (ИД) -- в список пользователей.
- Пользователь из списка отписок -- убираем из отписок, добавляем в пользователей.
- Пользователь из списка пользователей (иногда вступление одного и того же пользователя фигурирует несколько раз (под разными записями в админ. логе)) -- ничего не делаем.
Для отписок ищем пользователя среди всех ссылок. Если принадлежал какой-то, то переносим из списка пользователей в список отписок.
Суть проблемы
Статистика не соответствует информации в офф. клиенте с аккаунта создателя ссылки (с какой-то безумной погрешностью).
Суть вопроса
О чем подумать, в какую сторону покопать? Может, кому-то известны нюансы (вроде выделенных курсивом в тексте моего вопроса) работы админ. лога?
п.с. админским логом я называю раздел "recent actions" в управлении каналом