Сегодня разберем кейс одного из наших заказчиков, который работает в сфере подбора персонала, а именно владеет кадровым агентством. Процесс рекрутинга в его случае происходит на площадке Avito, а основная рабочая деятельность идет в Битрикс24.
Предлагаем разобраться на примере заказчика, как настроить интеграцию между этими сервисами так, чтобы обмениваться сообщениями между платформами в обе стороны.
1. Ситуация заказчика: проблемы и решение
Компания заказчика по большей части специализируется на поиске кадров для работы вахтовым методом.
Поиск подходящих сотрудников идет сразу в нескольких городах при помощи платформы Авито.
На данном портале у каждого из сотрудников фирмы заказчика есть собственный личный кабинет, а основная трудовая деятельность ведется в Битрикс24.
Об интеграции нескольких учеток Авито Работа и нескольких порталов amoCRM читайте здесь.
Основная проблема заказчика заключается в том, что данные о потенциальных работниках никак не структурированы и не синхронизированы.
Отследить стадию вакансии может только тот сотрудник, за которым эта самая вакансия закреплена.
В случае, если заказчик захочет подключиться к процессу и проверить положение дел, ему придется или напрямую обратиться к менеджеру, или зайти на Авито под его логином и паролем.
Интеграция Авито с amoCRM и отправка в Telegram сообщений о несозданных сделках описана в статье.
Еще один не очень удобный рабочий момент - переписка с кандидатами.
Абсолютно все общение с соискателями идет на платформе Авито, что также усложняет процесс контроля.
Плюс нельзя исключать вероятность того, что один из менеджеров заболеет, а следовательно оперативно передать его работу коллеге не получится.
Решение для заказчика - это интеграция сервиса Авито с Битрикс24.
Данная связка будет дублировать переписку с претендентами на должность в CRM, сохранять всю переписку, контролировать задвоенные контакты плюс создаст единую резервную базу кадров.
О двустороннем импорте чатов из нескольких аккаунтов Авито Работа в один портал Битрикс24 для кадрового агентства читайте тут.
Разберем подробнее, как настроить такую интеграцию при помощи Пинкит.
2. Интеграции Авито и Битрикс24 с выгрузкой откликов и переписки
2.1. Создаем сделку Битрикс24 из отклика Авито
2.1.1. Шаг 1: Откуда
В момент получения отклика мы забираем данные из кабинета Авито, к которому подключили доступ в Пинкит:
2.1.2. Шаг 2: Инструменты
- Получить информацию по отклику
Настраиваем API-запрос методом POST с указанием URL: /job/v1/applications/get_by_ids
Указываем тело запроса:
{
"ids": [
"{{source.applyId}}"
]
}
Заголовки запроса: Content-Type: application/json.
- Проверка, resume_id указано?
Используем проверку "Если-Иначе" по полю step1.applies.0.applicant.resume_id, Условие - "Существует", Результат при успешной проверке - 1, при неуспешной - 0.
- Получить информацию о Резюме
Настраиваем API-запрос методом GET с указанием URL /job/v2/resumes/{{step1.applies.0.applicant.resume_id}}
- Получить информацию о вакансии
Настраиваем API-запрос методом GET с указанием URL /job/v2/vacancies/{{step1.applies.0.vacancy_id}}
- Получить доступ к контактным данным соискателя
Настраиваем API-запрос методом GET с указанием URL /job/v1/resumes/{{step1.applies.0.applicant.resume_id|default()}}/contacts/
- Поиск Телефона. Взять телефон из контактных данных
Используем "Фильтр элементов массива" по полю step1.applies.0.contacts.phones. Название поля внутри элемента массива value, Условие - Не пустое значение.
- Поиск Телефона.Телефон в фильтре найден?
Используем проверку "Если-Иначе" по полю step10, Условие - Не пустое значение, Результат при успешной проверке - 1, при неуспешной - 0.
- Отформатировать номер телефона на 8
Используем форматирование номера телефона, Условие выполнения - step12, Название поля - step10.0.value, Формат - +ххххх, Код страны - 8.
- Поиск Телефона. Поиск контакта по номеру телефона
Настраиваем API-запрос методом GET с указанием URL /crm.contact.list?filter[PHONE]={{step16}}. Условие выполнения - step12, доступ даем уже к Битрикс24.
- Поиск Телефона. Если по номеру телефон не найден
Используем проверку "Если-Иначе" по полю step6.result, Условие - "Пустое значение", Результат при успешной проверке - 1, при неуспешной - 0.
- Поиск Email. Взять e-mail из контактных данных
Используем Фильтр элементов массива. Условие выполнения - step2. Название поля из контекста, которое содержит входящие данные - step5.contacts.
Название поля внутри элемента массива - type. Условие: (Текст) Содержит, Сравниваемое значение - e-mail.
- Поиск Email. Email в фильтре найден?
Используем проверку "Если-Иначе" по полю step11, Условие - "Не пустое значение", Результат при успешной проверке - 1, при неуспешной - 0.
- Поиск Email. Поиск контакта по Email
Настраиваем API-запрос методом GET с указанием URL /crm.contact.list?filter[EMAIL]={{step11.0.value}}. Условие выполнения - step8&&step13.
- Поиск Email. Если по email не найден
Используем проверку "Если-Иначе" по полю step7.result, Условие - "Пустое значение", Результат при успешной проверке - 1, при неуспешной - 0.
- Создать контакт
Настраиваем API-запрос методом POST с указанием URL /crm.contact.add, Условие выполнения - step8&&step9, Заголовки: Content-Type: application/json, Тело запроса:
{
"fields": {
"NAME": "{{step1.applies.0.applicant.data.name|default()}}",
"LAST_NAME": "{{step5.full_name.last_name|default()}}",
"OPENED": "Y",
"ASSIGNED_BY_ID": 5801,
"PHONE": [
{
"VALUE": "{{step16|default()}}",
"VALUE_TYPE": "WORK"
}
],
"EMAIL": [
{
"VALUE": "{{step11.0.value|default()}}",
"VALUE_TYPE": "WORK"
}
]
},
"params": {
"REGISTER_SONET_EVENT": "Y"
}
}
- Взять из запроса или создать новый
Используем проверку "Если-Иначе" по полю step14, Условие - (Логическое)Истина, Результат при успешной проверке - {{step14.result}}1, при неуспешной - {{step6.result.0.ID}}.
2.1.3. Шаг 3: Куда
Создаем сделку в Битрикс24 в нужном направлении:
2.1.4. Шаг 4: Сопоставление данных
Название: Пилот. Pinkit_{{step1.applies.0.applicant.data.name}}_Должность: {{step3.description|default(Не указана}}
ID Стадии сделки: C2:NEW
ID контакта: {{step17}}
Пользовательское сопоставление:
Вакансия
Тип: Тело
Название параметра: fields.UF_CRM_**************
Значение параметра: {{step4.title}}
2.1.5. Запускаем интеграцию.
2.2. Создание чата + добавление ответственного менеджера в чат
2.2.1. Проверяем интеграцию 2.1 на успех:
2.2.2. Шаг 2: Инструменты
- Проверить связку чата Авито и Битрикс24
Используем Поиск ID соответствующий сущности по полю source.int6796.step1.applies.0.contacts.chat.value. Указываем сущность "Чат в обоих сервисах".
- Проверка
Используем проверку "Если-Иначе" по полю step1, Условие - (Логическое)Истина, Результат при успешной проверке - 0, при неуспешной - 1.
- Добавить чат, если его ранее не было
Настраиваем API-запрос методом GET с указанием URL /im.chat.add?ENTITY_TYPE=CRM&ENTITY_ID=DEAL|{{source.int6796.result.result}}&USERS[0]=5801&USERS[1]=5981&TITLE=Авито чат с {{source.int6796.step1.applies.0.applicant.data.name}} {{source.int6796.step16|default()}}.
Условие выполнения - step4.
- Сохранить сопоставление чатов
Используем инструмент "Сохранить сопоставление сущностей".
Условие выполнения - step4, ID сущности-источника - {{source.int6796.step1.applies.0.contacts.chat.value}}, ID сущности-цели - {{step2.result}}. Указываем сущность "Чат в обоих сервисах".
- Останавливать интеграцию каждый раз после создания чата
Используем проверку по полю step1, условие - ТекстСодержит, Сравниваемое значение - Прервать, Действие - Продолжить, если проверка пройдена.
2.2.3. Шаг 3: Куда
Отправляем сообщение в Битрикс24:
2.2.4. Шаг 4: Сопоставление данных
ID чата или ID пользователя - {{step2.result}}
Текст сообщения - Создан новый чат!
2.2.5. Запускаем интеграцию.
2.3. Выгружаем сообщение из Авито в чат сделки Битрикс24
2.3.1. Шаг 1: Откуда
Забираем данные из Авито в момент получения нового сообщения:
2.3.2. Шаг 2: Инструменты
- Проверить связку чата Авито и Битрикс24
Используем Поиск ID соответствующий сущности по полю source.payload.value.chat_id. Указываем сущность "Чат".
- Убрать автора
Используем проверку по полю source.payload.value.author_id. Условие "ЧислоРавно", Сравниваемое значение - ID пользователя, Действие - "Прервать, если проверка пройдена".
2.3.3. Шаг 3: Куда
Отправляем сообщение в Битрикс24:
2.3.4. Шаг 4: Сопоставление данных
ID чата или ID пользователя - chat{{step1}}
Текст сообщения - Сообщение из Авито: {{source.payload.value.content.text}}
2.3.5. Запускаем интеграцию.
2.4. Отправляем сообщение из чата сделки Битрикс24 в Авито
2.4.1. Шаг 1 - Откуда
Настраиваем вебхук с пользовательским фильтром:
Тип: Ответ
Название: event
Условие: (Текст) Содержит
Значение: ONIMBOTMESSAGEADD
2.4.2. Шаг 2: Инструменты
- Найти ID чата из Авито
Используем Поиск ID соответствующий сущности по полю source.data.PARAMS.CHAT_ID. Указываем сущность "Чат".
- Если это не Бот
Используем проверку по полю source.data.USER.ID. Условие - "ЧислоРавно", Сравниваемое значение - ID пользователя, Действие - "Продолжить, если проверка пройдена".
2.4.3. Шаг 3: Куда
Отправляем сообщение в Авито:
2.4.5. Запускаем интеграцию.
Резюмируем
С помощью интеграций Пинкит можно автоматизировать поиск персонала и коммуникацию с соискателями в нескольких кабинетах Авито через выгрузку откликов в сделки Битрикс24 и двусторонний обмен сообщениями в чате сделки.
Это поможет снизить ручной труд ваших сотрудников и избавит от необходимости переключаться между учетками Авито, чтобы отследить процесс закрытия вакансии.
Регистрируйтесь по ссылке в личном кабинете Пинкит: https://lk.pinkit.io/register и протестируйте интеграции Битрикс24 с Авито по нашей инструкции.
Алексей Окара,
основатель Пинол и продакт-менеджер Пинкит
Время работы специалистов Пн.–Пт.: с 9:30 до 18:30; Сб.-Вс.: выходные.
Павел Филатов
|
Сервис
Самые востребованные интеграции по API: Google Sheets, Unisender, СберБанк, HH.ru, Контур.Фокус, GetCourse, Банки, iiko. |
Павел Филатов
|
А вы уже смотрели наш раздел "
|
Павел Филатов
|
Для тех, кто идет в ногу со временем, мы проводим регулярные
Если у Вас есть вопросы по настройке, по функционалу или вы просто хотите быть в курсе новых трендов, тогда регистрируйтесь и подключайтесь к нашим вебинарам. Для вас всегда интересные спикеры, разбор задач на примере реальных кейсов, а также подарки самым активным. |