Кейс: как интегрировать данные из UIS и AutoCRM в Power Bi
Для отслеживания результатов контекстной рекламы в агентстве мы всегда настраиваем онлайн-дашборд в Power Bi, но в этот раз клиент использовал сервисы, которые не имели готовых коннекторов для интеграции с привычным сервисом MyBi. Чтобы решить проблему, мы написали код самостоятельно и подключили Telegram-бот для отслеживания корректности передачи данных. Руслан Ахмадеев, ведущий веб-аналитик Tandem Group, рассказал, с какими проблемами столкнулись и как их решали.
О клиенте
Клиент — официальный дилер Haval в Санкт-Петербурге.
При настройке интеграции мы должны были учитывать такие особенности:
Клиент использовал сервис call-tracking UIS, что непопулярно для автомобильного сегмента. Обычно используется Calltouch, Comagic.
В качестве CRM использовался сервис AutoCRM — отраслевое решение для бизнеса, с которым нет готовых коннекторов для разработки онлайн-дашборда.
Как работали
Шаг 1 — сбор информации по API сервисов
Мы знали, что UIS — «дочка» Comagic, поэтому API у них должно было быть аналогичным. Для настройки передачи данных нам помогла вот эта статья на Habr.
Для интеграции с AutoCRM пришлось обращаться к специалистам сервиса, т. к. готовых решений и коннекторов не существовало. Техническая поддержка проконсультировала нас по API.
Остальные сервисы — Google Ads, Яндекс.Директ, MyTarget, Facebook и Marquz — мы интегрировали как обычно, по ним стандартная процедура.
За неделю мы собрали все необходимые токены и изучили API.
Шаг 2 — написание кода
Для интеграции с AutoCRM написали рабочий код:
Для ежедневной выгрузки данных написали скрипты на Python для обоих сервисов.
Весь шаг занял пару дней.
Шаг 3 — автоматизация
Для того чтобы скрипт срабатывал автоматически в нужное время, мы загрузили его на сервер и настроили задачи через с помощью библиотеки Cron.
С других источников мы загружаем через MyBi Connect в базу данных Azure. Для этих сервисов было решено складывать данные по аналогии. Для этого настроили отправку полученных данные в MyBi с помощью технологии WebHooks.
Ушло также пару дней.
Шаг 4 — исправление ошибок
В первое время мы получали ошибки при получении данных. Это было связано с техническими работами, которые проводились на стороне клиента.
Данные не загружались в отчет и не сходились с кабинетами. Ситуация усложнялась тем, что это замечали не сразу.
Было решено добавить в код обработчик ошибок и отправку сообщений в специально разработанный Telegram-бот со статусом корректности получения данных.
Вот такие отчеты мы настроили в Telegram-боте, чтобы иметь возможность оперативно решать возникшую проблему выгрузки данных
Нам нужен был скрипт, который не просто передает статус в Telegram-бот, а который забирал бы данные из UIS, проверял их на корректность и в случае ошибки уже отправлял репорт в мессенджер. Если же с данными было всё в порядке, то скрипт передавал данные по webhooks в MyBi и затем — статус в Telegram. Вот так выглядит рабочий код:
Результат
Мы часто сталкиваемся с возражением клиента, что настройка сквозной аналитики — это очень сложно и если текущие сервисы и инструменты не подключены к готовым системам типа Calltouch или Comagic, то об интеграции можно забыть — очень дорого и сложно.
Для того, чтобы настроить сквозную аналитику и вывести данные в онлайн-дашборд, часто не хватает внутренних ресурсов: например, специалистов, которые разбираются в API и могут быстро написать скрипт. Performance-агентства, как правило, имеют все необходимы компетенции.
Так, в Tandem Group за две недели мы разработали онлайн-дашборд и интегрировали в него данные из систем, которые не имели готовых коннекторов.
Мы решили задачу и создали отчет, который позволяет специалистам агентства и клиенту отслеживать результаты рекламных кампаний в одном месте и в режиме реального времени, быстрее принимать решения для достижения KPI.