Обновление кастомизатора в версии Itgrix_amo 3.0.0
Last updated
Was this helpful?
Last updated
Was this helpful?
В обновлении Itgrix_amo v3.0.0 осуществлен переход API amoCRM с v2 на v4. В связи с этим запросы в кастомизаторе (методы класса Amo в файле customizer/lib/crm.php
) также переведены с v2 на v4.
Кроме этого, все запросы теперь осуществляются не напрямую из кастомизации, а через коннектор. Т.е. из кастомизации запрос идет в API коннектора, и уже коннектор отправляет запрос в API amoCRM. Это необходимо для соблюдения ограничения на количество запросов, - теперь запросы из кастомизатора будут учитываться коннектором. Ограничения со стороны amoCRM описаны в статье .
Amo
Все методы-обертки запросов в классе Amo (customizer/lib/crm.php
) переведены с v2 на v4. Исключение - Amo::createLead
и Amo::createTask
, в них и до обновления использовался API v4.
Переименованы методы:
Amo::getLeadsList
-> Amo::getLeadList
Amo::getContactsList
-> Amo::getContactList
Добавлен метод Amo::updateLead
. Он должен был быть добавлен ранее (например, он используется в кастомизации ), но по ошибке не был добавлен в предыдущих релизах. В данном релизе добавлен сразу с использованием API v4.
Отдельного описания требуют изменения в методе Amo::addNoteToEntities
Его исользование описано в статье по кастомизации .
В API amoCRM v2 это POST-запрос /api/v2/notes
(документация на API v2 более недоступна, но можно найти )
В API amoCRM v4 это POST-запрос /api/v4/{entity_type}/notes
( документации amoCRM). Поменялись состав и названия полей, которые нужно отправлять при создании примечания. Но главное - в отличие от v2 в документации v4 не описаны поля params/call_status
, params/call_result
, а поле created_at
описано только в методах чтения, но не записи. Без этих полей невозможно создать полноценное примечание о звонке. Экспериментально выявлено, что указанные поля по-прежнему можно отравлять при создании примечаний и в v4, однако теперь это "недокументированный функционал", т.е. его поддержка не гарантирована.
Тем не менее по-прежнему остается метод Amo::request
, который дает возможность делать запросы напрямую из кастомизатора, причем с выбором используемой версии API (v2/v4).
Таким образом в случае крайней необходимости можно реализовывать запросы по-старому.
Однако, нужно учитывать, что при обновлениях коннектора файлы в customizer/lib
автоматически обновляются на актуальную версию. Поэтому для сохранения старых функций нужно их вынести в другой файл - или непосредственно в файл кастомизации, или создать дополнительный библиотечный файл, который уже подключать в коде кастомизации. Например, можно сохранить целиком старый файл crm.php
, переименовав его и поменяв название класса Amo во избежание конфликта имен.
При обновлении коннектора Itgrix_amo до версии 3.0.0 необходимо учесть изменения в кастомизаторе: если использовались запросы в CRM, скорее всего потребуется внести правки в код (обновить параметры запросов, в некоторых случаях переименовать функции).
Если вам требуется помощь, обратитесь в нашу техническую поддержку.