{"id":14271,"url":"\/distributions\/14271\/click?bit=1&hash=51917511656265921c5b13ff3eb9d4e048e0aaeb67fc3977400bb43652cdbd32","title":"\u0420\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u043d\u0430\u0442\u0438\u0432\u043e\u043a \u0438 \u0441\u043f\u0435\u0446\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0432 vc.ru \u2014 \u043d\u0430\u0439\u0434\u0438\u0441\u044c!","buttonText":"","imageUuid":""}

Решена проблема переноса данных между веб-сервисами

Статья будет полезна всем, кто озадачен проблемой переноса данных из сервиса в сервис с их параллельной обработкой и автоматизацией деловых процессов. Вариант решения предложили в Пинол.

За 10-ти летний опыт внедрения CRM, мы в Пинол пришли к выводу, что нет продукта, способного закрыть ВСЕ боли бизнеса. Нет на 100% универсального ПО — каждый продукт хорош со своей стороны и нельзя угнаться за всеми тенденциями в функционале на рынке.


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

Но мы нашли выход — сами разработали платформу для интеграций между веб-сервисами. Для пользователя все просто: нужно зарегистрироваться в личном кабинете Пинкит и выбрать нужную интеграцию. Если в списке нет готового сервиса — пишите, обсудим доработку.

Алексей Окара, основатель компании "Пинол"

Идея продукта

Идея продиктована клиентами Пинол — все используют разные сервисы и нужен обмен данными между ними. Тут есть как минимум 2 выхода:

  1. мириться с недостающим функционалом и переносить все вручную,
  2. разрабатывать кастомную интеграцию для каждого заказчика

Первый вариант не подходит — клиент не хочет тратить время и мириться с ошибками при переносе. А второй скрывает ряд существенных недостатков:

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

Каждый раз сталкиваясь с этими недостатками, в Пинол решили, что нужна своя платформа для различных интеграций. Такой внешний независимой сервис должен, как подушка для иголок, стать точкой входа / выхода для них - уметь принимать данные из одного сервиса и корректно передавать их в другой.

Сервис решает проблемы разработки отдельных интеграций для разных веб-сервисов и предусматривает возможность расширения для новых интеграций на будущих проектах.

Что такое Пинкит 2.0

Пинкит 2.0 — это платформа, которая позволяет настроить интеграцию между двумя разными сервисами, имеющими REST API.

То есть, платформа позволяет реализовать как единоразовую миграцию данных из сервиса А в сервис Б, так и передачу данных из сервиса в сервис по событию.

Помимо этого, платформа позволяет реализовать сценарии со сложной логикой, где требуется фильтрация исходных данных из сервиса А, обработка этих данных посредством фильтрации, перебором с дополнительными произвольными http-запросами к сервисам A или Б c записью ответов и возможностью использовать эти ответы на последующих шагах обработки или при сопоставлении данных для передачи в сервис Б.

Функционал

Доступы к различным сервисам

Предлагаем рассмотреть на примере первое и основное - доступы к сервисам. Они добавляются в одноименном разделе:

В разделе "Интеграции" проходит основная работа с сервисом. Здесь есть список всех ваших интеграций и базовых функций:

Рассмотрим интеграцию между CRM Битрикс24 и сервисом рассылок Юнисендер:

В правой части отображен статус интеграции. Статусов может быть 3:

  • Активная - интеграция настроена и работает
  • Пауза - работа интеграции приостановлена (соответствующей соседней кнопкой на панели можно приостановить интеграцию и запустить вновь)
  • Черновик - интеграция настроена не до конца, то есть в процессе настройки не пройдены все шаги и на финальном шаге не произведен запуск

Для управления процессом импорта / экспорта есть такие интуитивные кнопки:

  • Пауза/Запуск - приостановить/запустить интеграцию
  • Настройки - возвращаемся к настройке текущей интеграции по шагам с возможностью исправить и перезапустить интеграцию или оставить черновиком.
  • Копировать
  • Удалить

В левой части - кнопка перехода в Журнал интеграции.

В журнал попадает ответ сервисов на все запросы платформы Пинкит 2.0

Есть возможность поиска по тексту запроса, датам ответа, и типу ответа.

Настройка

Простую интеграцию на платформе Пинкит 2.0 сможет настроить даже начинающий пользователь. По поводу реализации сложных сценариев можно обратиться в техподдержку платформы.

Рассмотрим настройку интеграции по шагам на примере Обратной интеграции из сервиса Unisender в Битрикс24. Настроим возврат статуса и веб-версию письма, отправленного клиенту из сервиса рассылок Unisender - в Битрикс24.

На Шаге 1 осуществляется подключение сервиса А, событие для отправки данных и базовая фильтрация.

Выбираем один из сервисов, представленных на платформе. Затем выбираем одно из предложенных событий, после которого отработает дальнейший сценарий интеграции.

Выбираем подключение - это ранее подключенный нами сервис во вкладке "Доступы".

Выбираем фильтры. Часть фильтров выводится в интерфейсе (в данном случае это статус письма).

Если требуется дополнительная фильтрация, то можно добавить пользовательский фильтр.

В окне настройки пользовательского фильтра выберем его тип:

  • Запрос - применяется в get-параметрах запроса.
  • Тело - применяется в теле запроса.
  • Ответ - применяется при чтении данных полученных из ответа сервиса

А также название параметра и его значение для фильтрации:

На Шаге 2 можно провести многошаговую обработку данных.

Для этого добавим шаг соответствующей клавишей, есть возможность выбрать из представленных типов шагов:

Далее настроим шаг обработки. Таким образом будет выглядеть Поиск контактов по е-mail в Битрикс24 для письма, выгруженного из Unisender.

Таким образом, по шагам можно выстроить логику обработки данных при интеграции двух сервисов.

На Шаге 3 укажем сервис Б, целевое действие в сервисе, и подключение из вкладки "Доступы".

На Шаге 4 происходит сопоставление данных сервиса А, сервиса Б, а также ответов, полученных на шаге 2 при обработке данных:

Если сопоставления по выведенным в интерфейс полям не достаточно, есть возможность добавить пользовательское сопоставление соответствующей кнопкой:

Таким образом будет настроено сопоставление пользовательского поля Битрикс24 и веб-версии письма Unisender, полученного при обработке данных на шаге 2.

На Шаге 5 указываем название интеграции и запускаем. Готово!

Если вам интересно, чем Пинкит лучше, чем Zapier или Albato, пишите в комментариях.

0
2 комментария
Анатолий

С iiko есть у вас готовая интеграция?

Ответить
Развернуть ветку
Alex Okara

Да, мы это не так давно подняли в релизе для ресторанной тематики. Протестировать интеграцию можете в ЛК по Пинкит https://lk.pinkit.io/integrations

Ответить
Развернуть ветку
-1 комментариев
Раскрывать всегда