Наверх
  1. CREATIVE
  2. Блог
  3. Инструкции
  4. Инструкция по работе с модулем "Интеграция с CRM INTRUM Realty"

Просмотров: 116

Инструкция по работе с модулем "Интеграция с CRM INTRUM Realty"

Наш модуль позволяет выгружать информацию об объектах из CRM INTRUM Realty для отображения в каталоге сайта. В инструкции описана настройка и выгрузка объектов из CRM.

Настройка модуля

Вкладка «Настройки» отвечает за саму интеграцию. Там будет необходимо ввести сервер(обычно адрес CRM) Если не задан, используется localhost по умолчанию и ключ API. Пример на скриншоте ниже.

Api key и название сервера можно получить в вашей CRM Intrum для этого перейдите

Настройки > Интеграции > API V2 и создайте новый ключ.

Настройка модуля

Создание выгрузки

Для настройки выгрузки переходим Настройки -> Настройки продукта -> Настройка модулей -> Интеграция с CRM INTRUM Realty.

Создание выгрузки

В вкладке «Добавить» мы можем добавить новую выгрузку, в пункте «Что выгружать» выбираем желаемые объекты, для примера мы возьмём «Квартиры и участки».

Что выгружать

И создадим новый инфоблок нажимаем кнопку «Далее».

Новый инфоблок

Выбираем желаемую категорию для выгрузки и снова нажимаем «Далее»

Различные параметры

Здесь, мы можем выбрать различные параметры, если вам необходим, например «Размер комиссии для агента» выбираем «Создать новый» и нажимаем кнопку «Далее»

Правило успешно добавлено

Перейдем во вкладку «Выгрузка»

Выгрузка

Для того, чтобы произвести выгрузку нажимаем «Выгрузить сейчас» открывается окно загрузки.

Окно загрузки

Не закрываем его, пока импорт не завершится. Затем проверяем изменения на сайте в элементах инфоблока. Проверить это можно, если зайти в Контент -> INTRUM Realty -> Квартиры и комнаты.

Квартиры и комнаты

Создание выгрузки по CRON

Обновление 1.0.1

Для того, чтобы создать выгрузку для CRON, необходимо при создании новой выгрузки поставить галочку «Выгружать по CRON».

Выгружать по CRON

Также можно отредактировать существующую выгрузку для работы с CRON.

Редактировать существующую выгрузку

После этого к названию выгрузки добавится «[CRON]».

[CRON]

ВАЖНО! Для того, чтобы выгрузка по CRON работала необходимо в Панели управления добавить задачу. Пример для ISPManager:

Пример для ISPManager

Опция «Проверять только наличие».

Обновление 1.0.1

Теперь при создании новой выгрузки, когда выбран существующий инфоблок, появляется поле «Проверять только наличие». Суть в том, чтобы не добавлять новые и не изменять существующие записи, а лишь проверять есть ли они в CRM, и если нету, то удалить. Для использования этой опции нужно создать отдельное правило

Добавить новую выгрузку

Также можно отредактировать существующую выгрузку. После активации этой галочки, рядом с названием выгрузки появится текст «(проверять только наличие)».

Проверять только наличие

Фильтр элементов

Импортируемые элементы можно фильтровать по необходимым полям. Например, выгружать только комнаты. Или создать дополнительное поле в CRM “выгружать на сайт” и выгружать в каталог только нужные объекты.

Фильтр активируется при редактировании выгрузки. Нужно выбрать какое поле будет фильтроваться и какое значение должно быть у элементов, чтобы они добавились на сайт.

Фильтр элементов

Список обновлений

Обновление 1.0.1

Описание:

  1. Добавлена возможность делать выгрузку по CRON.

  2. Добавлен функционал "Проверять только наличие". Новые товары не загружаются, но те, которые удалены в CRM, удаляются на сайте.

  3. Теперь импортируются все изображения в одном поле.

Если у вас в CRM есть поле с изображениями, то они импортируются все (точнее ссылки на них).

И эти данные будут записаны в виде «[“путь к изображению 1”, “путь к изображению 2”]».

Такую структуру удобно использовать, преобразовав ее в массив с помощью функции json_decode.

Ошибки при работе модуля

1. “Импорт прерван. Ошибка” при импорте данных.

Выгрузилось только часть элементов из Intrum

Импорт прерван

Ошибка могла произойти по 2 причинам:

  • был превышен лимит запросов к Intrum. Решение: выгрузку можно производить не чаще одного раза в час, чтобы не вылетела ошибка лимита

  • упал сайт из-за большой нагрузки. Решение: Можно уменьшить количество элементов за шаг и увеличить ожидание между шагами, чтобы снизить нагрузку либо сменить хостинг.

Для снижения количества импортируемых за раз объектов необходимо:

  • открыть файл /bitrix/modules/creativebz.intrumrealty/include.php

  • Найти в нем примерно на строчке 633 параметр limit и установить в значение меньшее, чем 100, например 50

Параметр limit

Для добавления таймаута во время ручного запуска импорта:

  • Необходимо открыть файл /bitrix/modules/creativebz.intrumrealty/import.php

  • Добавить в него функцию:

    function sleep(milliseconds) {

    const date = Date.now();

    let currentDate = null;

    do {

    currentDate = Date.now();

    } while (currentDate - date < milliseconds);

    }

  • Вставить ее на строчку 36, а на строку 49 добавить строку sleep(2000);

  • Если нужен таймаут более 2 секунд, то можно указать например 5000, что будет равно 5 секундам

Добавить в функцию

Для добавления таймаута в выгрузки по крону:

  • необходимо в файле /bitrix/modules/creativebz.intrumrealty/include.php добавить строку sleep(2); на строку 936, что означает 2 секундный таймаут

  • если нужно увеличить, то можно написать, например, sleep(5); - что будет равно 5 секундам

Добавление таймаута

2. Исчезают конфиги выгрузки.

Решение. Такая проблема встречается старых версиях Битрикса: у них есть ограничение на длину строки, которую можно хранить в настройках, и, если полей в конфиге очень много, то строка при сохранении обрезается. В итоге это приводит к тому, что конфиг ломается и вообще не отображается. Чтобы проверить работу переделайте хранение конфига на сохранение в файл и проблемы с пропажей конфига не будет.

Читайте также

Просмотров: 102

Инструкция по работе с модулем "Интеграция с CRM WS. Автопрокат"

Модуль интеграции сайта с CRM WS. Автопрокат позволяет выгружать информацию об автомобилях, их комплектации, стоимости и доступности из CRM на сайт и отправлять данные о заказах в CRM

Читать дальше