Битрикс24: как работает коннектор

Скачать .md

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

Что попадает в таблицу: не карточки, а переходы по стадиям

Коннектор выгружает историю стадий портала. Одна строка таблицы — это момент, когда сделка, лид или элемент смарт-процесса попал на стадию. Дата этого перехода кладётся в колонку event_date — по ней строятся воронки и отчёты. Остальные поля (сумма, ответственный, источник, поля контакта и компании) добираются из карточки на момент выгрузки, то есть показывают её состояние тогда, когда коннектор забрал событие.

Важно

У одной сделки в таблице по строке на каждую стадию, куда она попадала. Если сделка вернулась на стадию, где уже была, добавится ли вторая строка — решает настройка «Учитывать повторные переходы в этап»: включена — каждый возврат даёт ещё одну строку со своей датой события; выключена — в таблице остаётся только первое попадание на эту стадию.

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

Коннектор опрашивает портал каждые 30 минут (следующий прогон не стартует, пока идёт предыдущий) и заливает собранное в таблицы хранилища каждую минуту.

Примечание

Исходящий вебхук портала для хранилища не используется — он работает только для потоков офлайн-конверсий. Подключение к хранилищу коннектор пропускает и забирает данные опросом, поэтому задержка от события в CRM до строки в таблице — до получаса плюс время заливки, а не «в реальном времени».

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

Обычный прогон берёт данные с момента прошлой успешной выгрузки по текущий момент. Первый прогон нового подключения — за последние 7 дней. Даты портала читаются в часовом поясе из настроек подключения — если он указан неверно, события съедут на несколько часов и могут попасть в соседние сутки.

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

  • Куда: хранилище ROMI center на движке ClickHouse.
  • Одна таблица на сущность. Контакт и компания своих таблиц не создают: их поля приезжают колонками с префиксами contact_ и company_ в таблицы лидов и сделок.
Суффикс таблицыЧто внутри
_leadлиды
_dealсделки
_d<N>смарт-процесс с номером N

Других сущностей у коннектора нет: счета, предложения и дела в хранилище не выгружаются.

  • Имя таблицы: bitrix24_<поддомен портала>_<id подключения>_<суффикс> — например bitrix24_acme_1234_deal.
  • Структура таблицы: движок MergeTree, сортировка по rc_data_id. В отличие от рекламных коннекторов разбиения на партиции по дате нет — события приходят вперемешку по датам, партиции по дню здесь ничего бы не ускорили.
  • Структура догоняется, а не пересоздаётся. Новое поле, выбранное в настройках, добавляется командой ALTER TABLE … ADD COLUMN. Колонки никогда не удаляются: если снять поле в настройках, колонка останется со старыми значениями, а новые строки будут писаться в неё пустыми.
  • Повторная заливка того же события не плодит дубли. У каждой строки есть rc_data_id — номер события в очереди ROMI. При повторной заливке строка с таким же rc_data_id удаляется и вставляется заново, а дата первой заливки (rc_created_at) переносится со старой строки.
  • Одинаковые события отсеиваются ещё до таблицы: если портал прислал событие, полностью совпадающее с уже сохранённым по тому же подключению и той же сущности, оно не сохраняется.

Перезапись прошлых дней

Битрикс24 позволяет менять сделки задним числом, поэтому коннектор регулярно перечитывает недавние дни. Глубина ежедневной перезаписи — настройка «Перезагрузка прошлых дней»: 0, 1, 3 (по умолчанию), 7 или 14.

Автоматическая перезагрузка за выбранное число дней назад по вчерашний день включительно удаляет из всех таблиц подключения строки этих событий, перечитывает их у портала и заливает заново; дни за пределами окна не трогаются. Функция «Загрузить исторические данные» в меню подключения работает за любой период: данные догружаются, уже загруженные события не задваиваются.

Важно

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

Кроме перезагрузки с галочкой удаления таблицы не удаляются и не пересоздаются: коннектор удаляет только строки тех событий, которые собирается перечитать.

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

НастройкаЧто делает
Часовой пояс аккаунтаВ нём читаются даты портала. Ставится один раз при настройке, менять его на живом подключении не стоит — старые строки пересчитаны не будут.
Перезагрузка прошлых дней (0 / 1 / 3 / 7 / 14)Глубина ежедневной перезаписи. Больше дней — больше нагрузка на портал и дольше прогон.
Учитывать повторные переходы в этапВключено — каждый возврат сделки на стадию даёт отдельную строку. Выключено — только первое попадание на стадию.

Набор выгружаемых полей задаётся на шаге «Выбор полей»: сущности (лиды, сделки, смарт-процессы) и поля внутри каждой. Поле, добавленное позже, начинает заполняться со следующего прогона — задним числом оно появится только после перезагрузки.

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

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

Других служебных колонок у Битрикс24 нет: rc_updated_at, rc_import_id и rc_datasource, которые встречаются у рекламных коннекторов, здесь не создаются. Колонка event_date — не служебная: это дата самого события, она приходит из истории стадий портала.

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

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

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