Senler: как работает коннектор

Скачать .md

В этой статье вы узнаете, как коннектор Senler выгружает данные в хранилище ROMI center: что попадает в таблицы, с какой периодичностью идёт сбор и какие у него есть известные особенности. Полный список полей — в статье Senler: описание выгружаемых полей.

Что выгружается: подписчики и подписки на группы

ТаблицаЧто внутриКогда появляется
senler_…Подписчики: строка на подписчика, колонки — поля из настроеквсегда
senler_user_subscriptions_…События подписки и отписки на группы Senler: строка на событиевключено «Выгружать подписки на группы»

Важно

Подписчик выгружается один раз — когда коннектор впервые его видит. Значения полей фиксируются в этот момент, дальнейшие изменения в Senler в таблицу не попадают. Освежить их можно только перезагрузкой с удалением данных.

Важно

Подписчик, у которого в момент сбора не заполнено ни одно из выбранных полей, пропускается. «Дата события» в этой проверке не участвует, поэтому с полями по умолчанию — она и пять UTM-меток — пропадает каждый подписчик без меток: на бою меток не было у 63% подписчиков одного подключения и у 3% другого. Чтобы собирать всех, добавьте поле, которое есть у каждого, — например «Дата»; пропущенных раньше вернёт перезагрузка за их даты подписки.

Подписчики, удалённые или отписавшиеся в Senler, остаются в таблице: коннектор только добавляет строки. Отписки видны в таблице подписок.

Периодичность

Подписчики за вчерашний день (по дате подписки) собираются ежедневным заданием в 05:00; проход по курсору за новыми подписчиками идёт каждые 2 минуты, но на практике новых подписчиков не приносит.

Важно

Подписчики приходят раз в сутки. Подписавшиеся сегодня появятся в хранилище только завтра утром, около 05:05.

Подписки на группы собираются каждые 2 часа, с последнего загруженного события.

Подписчиков за пропущенные дни коннектор сам не догружает — их вернёт только перезагрузка; подписки на группы добираются сами, с последнего загруженного события.

За какой период забираются данные

Ежедневное задание берёт подписавшихся вчера — по дате подписки; события подписок — за вчера и позавчера. Историческая перезагрузка идёт по дате подписки, по заданию на день, включая сегодня.

Как сохраняет данные

  • Куда: хранилище ROMI center на движке ClickHouse.
  • Запись в две стадии. Сначала подписчик или событие ложится в промежуточную таблицу ROMI, затем отдельная задача переносит их в хранилище.
  • Имена таблиц: senler_<название подключения латиницей>_<id подключения> и senler_user_subscriptions_<название>_<id>.
  • Структура таблиц: движок MergeTree, без разбиения на партиции.
  • Структура догоняется, а не пересоздаётся. Новое поле приходит новой колонкой. Колонки никогда не удаляются: убранное поле останется в таблице со старыми значениями, а новые строки будут писаться в него пустыми.

Важно

События подписок дублируются. Повторная выгрузка того же окна не заменяет прежние строки, а дописывает копии: каждое утреннее задание перечитывает два дня, и каждая перезагрузка добавляет их снова. На бою у одного подключения 38% строк таблицы подписок — повторы, отдельные события записаны до 40 раз. Считайте уникальные события по пользователю, группе, времени и действию.

Перезагрузка данных

Функция «Загрузить исторические данные» в меню подключения работает за любой период, включая сегодня, по дате подписки, по заданию на день. Уже загруженные подписчики не перечитываются — добавляются только новые. Подписки на группы за период выгружаются заново — новыми копиями.

Важно

Галочка «Удалить ранее загруженные данные за период» сначала ставит период в очередь, и только если задания созданы, удаляет таблицу подписчиков целиком и стирает их промежуточные данные. Затем подписчики периода собираются заново, со свежими значениями полей. После такой перезагрузки в таблице останется только перезагруженный период. Таблица подписок не удаляется.

Дополнительные настройки

НастройкаЧто делает
Ключ, название, платформа и IDШаг «Доступ»: API-ключ Senler, название подключения (по умолчанию «Senler»), платформа — VK или Telegram — и ID группы VK или бота Telegram. Название входит в имена таблиц: при смене запись пойдёт в новые таблицы, а прежние останутся с накопленными данными.
Поля подписчикаШаг «Выбор полей»: имя поля, подпись и тип. В новом подключении заранее заведены «Дата события» и пять UTM-меток.
Выгружать подписки на группыШаг «Дополнительные настройки»: включает таблицу подписок.

Примечание

Нужен внешний ID — группы VK или бота Telegram, — а не номер канала внутри Senler: с ним Senler ответит «Group not found».

Технические поля

КолонкаЧто внутри
rc_data_idНомер строки в промежуточной таблице. По нему строка подписчика перезаписывается.
rc_created_atКогда строка впервые записана в таблицу. При повторной записи переносится со старой.

В предпросмотре данных служебные колонки скрыты — они отрезаются по префиксу rc_.

Покажем, из чего собирается ваша аналитика

За 30 минут разберём ваши источники и соберём схему: что подключается, что считается само, где цифры разойдутся.

  • Что у вас уже собирается и чего не хватает, чтобы увидеть выручку по каналам
  • Порядок подключения: что заработает за день, а что придётся настроить руками
  • Готовые отчёты на живых данных — расход и выручка рядом, когорты, RFM
Записаться на демо
Дашборд ROMI center со сквозной аналитикой