Добавление данных о звонке в тег новой сделки
Last updated
Last updated
При обработке звонков модулем Itgrix могут быть созданы новый контакт и новая сделка. По умолчанию сущности получают один тег - Itgrix
.
С помощью кастомизации можно добавить теги с информацией о звонке, например, направление (Входящий
или Исходящий
) и статус (Отвеченный
или Пропущенный
).
Т.к. статус звонка будет известен только в конце звонка, то и добавление тегов нужно добавить в кастомизацию параметров регистрации звонка (process_call_params
).
В этой кастомизации известно:
Является ли сущность (контакт/сделка) новой (т.е. создана ли в процессе обработки этого звонка) - $params['entity_new']
. Значение true
, если новая, иначе false
.
Какой тип у созданной сущности - $params['entity_type']
. Для контакта значение 1
, для сделки значение 3
.
ID сущности - $params['entity_id']
.
Исходя из этих данных реализуем такой алгоритм:
Теги будем устанавливать только для новых сущностей (которые созданы модулем Itgrix).
Нужно получить ID сделки, у которой нужно обновить теги.
Если в кастомизацию пришла сущность типа сделка, то возьмем её ID из параметров.
Если же это контакт, тогда нужно получить данные этого контакта и взять ID первой связанной с ним сделки (у нового контакта может быть только одна сделка). Для этого воспользуемся функцией Amo::getContact
(поставляется вместе с модулем в файле /opt/itgrix_amo/customizer/lib/crm.php
). Формат возвращаемых данных описан в документации amoCRM по работе с контактами.
Осталось обновить теги у найденной сделки. Для этого воспользуемся функцией Amo::updateLead
(поставляется вместе с модулем в файле /opt/itgrix_amo/customizer/lib/crm.php
). Формат данных описан в документации amoCRM по работе со сделками.
В результате у сделки будут теги Itgrix
, Входящий
и Отвеченный
:
Пример кода для добавления тегов в созданную сделку (файл /opt/itgrix_amo/customizer/actions/process_call_params.php
):