Case study. Modules for AmoCRM

AmoCR это лид-менеджмент система, которая сохраняет все запросы клиента поступившие по e-mail, телефону, через формы обратной связи на сайте, чаты и мгновенные мессендежры.

Кто-то может спросить, для чего мы делали эту интеграцию, ведь в Drupal уже есть собственные сборки для ведения базы клиентов. Это так, и для небольшой команды, возможно, подойдут и они.

Но если у вас большая команда продажников, которые каждый день обрабатывают сотни клиентов, то вам нужен специализированный продукт. Качественное приложение по технологии “single page application” на Angular будет работать быстро и четко.

Мы очень долго исследовали и сравнивали подобные системы для нашего отдела продаж.

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

Также недавно компания добавила уникальный инструмент - цифровую воронку продаж. Она может автоматически отправлять письма от лица менеджера, менять статус сделки в ответ на любое событие, ставить задачи и отправлять уведомления, а также помочь настроить показы рекламы клиентам в зависимости от этапа продаж. 

Почему был выбран Drupal
amoCRM развивается как платформа. Сегодня быть платформой - значит иметь удобные и быстрые инструменты интеграции с другими сервисами и рынками.
Поскольку Drupal - это одна из лидирующих систем по предоставлению качественного опыта взаимодействия с интерфейсами в цифровом мире, без интеграции с Drupal сервису не стать полноценной платформой.

DrupalJedi занимается разработкой сайтов на Drupal последние семь лет. У нас  одна из самых больших команд Drupal-разработчиков в России.

Сотрудничество DrupalJedi с amoCRM началось, когда мы осознали необходимость интеграции CRM с нашими веб-сайтами. Во время одного из регулярных Drupal код-спринтов мы начали развивать модуль для интеграции, а затем опубликовали об этом отчёт в социальных сетях.

Менеджер amoCRM нашёл нас и предложил обсудить сотрудничество, так как у них уже было несколько идей для модулей интеграции с Drupal.

Описание проекта

Цели
Проект был инициирован двумя сторонами, цели которых хорошо дополнили друг друга.

Глобальной задачей amoCRM было выйти на рынок Drupal и влиться в экосистему Drupal, сделать предложение для текущих пользователей Drupal - как для разработчиков, так и для их клиентов, стать заметными в Drupal сообществе.

Что касается нас, мы придумали идею развития нового продукта для оптимизации бизнес-процессов.

Требования
amoCRM предложили нам сделать такой же плагин как у Wordpress. Он позволил бы пользователю создавать многофункциональные формы со своим дизайном.

Мы же хотели  вписаться в уже существующую философию и сообщество Drupal. Поэтому пришлось немного пожертвовать дизайном - в нашем решении нет возможности интерактивно настраивать форму.

Но мы рады, что выбрали Drupal Way и разработали модуль на базе уже готовых решений. Например, мы использовали следующие модули:
Модуль Webform - это популярнейший конструктор форм в Drupal.
Модуль Rules - позволяет производить различные действия в ответ на какие-либо события.

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

Команда и временная шкала
Команда разработки интеграции amoCRM и Drupal включает пять разработчиков, менеджера проектов и менеджера по связям с общественностью. Кроме того, мы работали с дизайнерами и менеджером по продажам, которые консультировали нас.

На проект было затрачено 800 человеко-часов.

23 июля 2015
Выложили отчет и в тот же день получили предложение по разработке модулей от amoCRM.

31 июля 2015
Провели первый митинг с клиентом и зафиксировали результаты встречи.

4 августа 2015
Составили Roadmap.

19 августа 2015
Была начата работа над реализацией первой части Roadmap.

9 сентрября 2015
Сдали работы первого этапа.

1 октября 2015
Начали Согласование 2 этапа.

5 ноября 2015
Согласовали второй этап.

4 февраля 2016
Начали разработку 2 этапа.

14 марта 2016
Закончили часть по разработке 2 этапа: виджет и модуль виджета.
А также доработка некоторых модулей.

20 мая 2016
Выложили виджет в паблик amoCRM.

Этапы
Проект включал следующие шаги:
1. Создать бесшовную интеграцию для владельцев сайтов на Drupal;
2. Сделать модуль-оболочку для API amoCRM, чтобы разработчики могли использовать его в своих проектах;
3. Интегрировать amoCRM с таким современными инструментами как Slack, Trello для автоматизации конкретных бизнес процессов с использованием всех преимуществ этих инструментов, Drupal’а и amoCRM.

Давайте подробнее пройдемся по этапам сотрудничества.

Этап 1

  • Module amoCRM Form. Создание простого модуля интеграции Drupal  с amoCRM.
  • Module amoCRM Доработать существующий модуль из "песочницы", который будет интегрирован с amoCRM посредством WebHook и модуля Rules.
  • Module amoCRM API. Разработка модуля интеграции на основе существующего REST API amoCRM.
  • Оформление профиля amoCRM на drupal.org (на английском языке)
  • Подготовка описания модулей (на английском языке и русском языках)
  • Подготовка и публикация пресс-релиза

Этап 2

  • amoCRM Contact. Интегрировать стандартный Drupal модуль Contact (простая форма обратной связи) с amoCRM для автоматического создания новых контактов в amoCRM.
  • Доработка существующего модуля интеграции с amoCRM посредством модуля Rules. Это позволит в ответ на действие на Drupal сайте реагировать действием в amoCRM.
  • Front-End & Back End Widget
  • Подготовка описания модулей на русском языке и на английском языке.
  • Локализация модулей через сервис localize.drupal.org.
  • Написать детальную инструкцию с изображениями/видео материалами как настроить интеграцию Drupal с amoCRM.
  • Освящение информационного повода публикации модулей amoCRM.

Организации, принимавшие участие:
DrupalJedi
amoCRM

Основные использованные модули/темы/сборки

Почему были выбраны эти модули
У нас была цель создать полезную, мощную и гибкую интеграцию с системой amoCRM. Поэтому мы использовали модуль Rules. Как он работает в мире Drupal: если у вас есть интеграция с Rules - у вас есть интеграция с сотнями других предоставленных модулей.

Также мы начали разработку нового модуля (X Reference), который позволяет использовать Drupal в качестве хранилища взаимосвязей. Например, мы храним связь между ID Карточки из Trello и ID Сделки из amoCRM.

Результат
По итогу проекта мы получили:

  • Оптимизацию бизнес процессов в отделе по работе с персоналом.
  • Улучшение результатов отдела продаж.

Разработали модули:

  1. Module amoCRM
  2. Module amoCRM Form
  3. Мodule amoCRM API
  4. Module amoCRM Contact
  5. amoCRM Widget 

К модулям написали следующие инструкции:

amoCRM Widget инструкция на английском

Инструкция к остальным модулям amoCRM на английском

Видео-инструкции:
К модулю amoCRM 
К модулю amoCRM Form 
К amoCRM Widget 

Резюме
Итак, давайте подведем итог, чем интеграция с Drupal была полезна для amoCRM:

Интеграция позволила компании привлечь внимание новой аудитории к себе.
Теперь любой Drupal разработчик может взять модуль amoCRM API и создать свой модуль.

Для нас же это было новым опытом в освоении Drupal. Теперь мы точно знаем, что Drupal отлично подходит на роль платформы для интеграций.

Призываем и вас интегрировать с помощью Drupal! Ведь чем больше приложений будут интегрированы с Друпал, тем больше компаний отдадут предпочтение Друпалу как универсальной системе, способной решить практически любую задачу.