Полезные кастомизации itgrix_amo (amoCRM)

Начиная с версии 2.0.0.

Дополнительные кастомизации описаны в разделе Полезные кастомизации (любая CRM).

Схема обработки звонка модулем интеграции Itgrix

(Схема для версий начиная с 2.4.0)

"Запрос разговора" – когда звонит телефон у сотрудника/клиента. В одном "звонке" может быть несколько "разговоров" (в случае перевода звонка).

Краткое описание кастомизаций

Файл кастомизации (по алфавиту)

Описание

1

need_registration.php

Нужна ли регистрация звонка? Можно сделать черные/белые списки по внутреннему номеру/транку.

2

process_call_params.php

Изменение параметров регистрации звонка.

3

process_client_phone.php

Изменение номера телефона перед регистрацией в CRM. Можно сменить формат телефонного номера (+7, 8...).

4

process_contact_creation_params.php

Изменение параметров создания контакта.

5

process_lead_creation_params.php

Изменение параметров создания сделки.

6

process_originate_params.php

Изменение параметров при инициализации звонка из CRM. Можно позвонить через другой транк, через другой контекст, сменить формат номера и прочее.

7

process_record_file_path.php

Кастомизация пути до файла записи разговора.

Также в этом файле настраивается конвертирование из формата wav в mp3. Описание в статье Конвертация записей в формат MP3.

8

process_task_creation_params.php

Изменение параметров создания задач по пропущенным звонкам. Изменение названия задачи может помешать опции автоматического завершения задач.

Входные и выходные параметры кастомизаций

1) need_registration

Используется для реализации функционала чёрных/белых список по номерам, транкам и прочим сложным условиям.

Подробное описание с примерами в статье Черные и белые списки. Как настроить?

2) process_call_params

Изменение параметров регистрации звонка.

Вход:

{
"params": {
"phone_number":<Телефонный номер клиента
(уже кастомизированный через process_client_phone)>,
"direction":<Направление звонка. Принимает значения:
"inbound" - входящий, "outbound" - исходящий>,
"call_result": " ",
"call_status":<Статус звонка. Принимает значения:
4 - отвеченный; 6 - пропущенный>,
"created_by":<ID ответственного пользователя>,
"responsible_user_id":<ID ответственного пользователя>,
"duration":<Длительность (последнего разговора)>,
"link":<Ссылка на получение записи (последнего разговора)>,
"call": {<Набор данных о звонке>},
"entity_type": <Тип сущности: 1-контакт, 2-компания, 3-сделка>,
"entity_id":<ID сущности строкой>,
"entity_new": <bool, создана ли сущность на этом звонке>
}
}

Набор данных о звонке (call) описан в статье Параметры звонка (call) и разговора (conversation) в кастомизациях.

Вернуть:

{
"data": {
"phone_number":<Телефонный номер клиента>,
"direction":<Направление звонка. Принимает значения:
"inbound" - входящий, "outbound" - исходящий>,
"call_result": " ",
"call_status":<Статус звонка. Принимает значения:
4 - отвеченный; 6 - пропущенный>,
"created_by":<ID ответственного пользователя>,
"responsible_user_id":<ID ответственного пользователя>,
"duration":<Длительность>,
"link":<Ссылка на получение записи>
},
"state": "success"
}

3) process_client_phone

Преобразование телефонных номеров клиентов.

Подробное описание с примерами в статье Изменение номера клиента перед отправкой в CRM.

4) process_contact_creation_params

Изменение параметров создания контакта.

В amoCRM по умолчанию в контакте нет поля для телефонного номера. Вместо этого используются пользовательские поля контактов.

Itgrix_amo работает с полем контактов "code": "PHONE" с доступным значением "enum": "WORK". Если такого поля для контактов в аккаунте нет, то модуль не запустится.

Подробное описание пользовательских полей в документации API amoCRM.

Пример: Изменение тега при создании контакта/сделки.

Вход:

{
"params": {
"call": {<Набор данных о звонке.
См. раздел “Параметры звонка (call)>},
"custom_fields": [{
"id":<ID пользовательского поля контактов в аккаунте
(получено автоматически)>,
"values": [{
"enum":<Значение поля.
Itgrix работает со значением "WORK">,
"value":<Номер телефона звонившего>
}]
}],
"name":<Имя контакта. По умолчанию "Контакт <Тел.номер>">,
"responsible_user_id":<ID ответственного пользователя>,
"tags":<Теги. По умолчанию "Itgrix">
}
}

Вернуть:

{
"data": {
"custom_fields": [{
"id":<ID пользовательского поля контактов в аккаунте>,
"values": [{
"enum":<Значение поля>,
"value":<Номер телефона звонившего>
}]
}],
"name":<Имя контакта>,
"responsible_user_id":<ID ответственного пользователя>,
"tags":<Теги через запятую>,
},
"state": "success"
}

Набор данных о звонке (call) описан в статье Параметры звонка (call) и разговора (conversation) в кастомизациях.

5) process_lead_creation_params

Изменение параметров создания сделки.

Пример: Изменение тега при создании контакта/сделки.

Вход:

{
"params": {
"contacts_id": [<ID контакта, с которыми связана сделка>],
"name":<Название сделки.
По умолчанию "<Тел.номер> - входящий/исходящий звонок">,
"pipeline_id":<ID воронки сделок>,
"responsible_user_id":<ID ответственного пользователя>,
"tags":<Теги. По умолчанию "Itgrix">
}
}

Вернуть:

{
"data": {
"contacts_id": [<ID контакта>],
"name":<Название сделки>,
"pipeline_id":<ID воронки сделок>,
"responsible_user_id":<ID ответственного пользователя>,
"tags":<Теги через запятую>
}
"state": "success"
}

6) process_originate_params

Изменение параметров при инициализации звонка из amoCRM.

Подробное описание с примерами в статье Изменение параметров при click-to-call.

7) process_record_file_path

Преобразование пути до файла записи разговора.

Подробное описание с примерами в статье Кастомизация имени файла аудиозаписи.

При регистрации звонка в amoCRM в заметку будет добавлен плеер для проигрывания записи этого звонка (по ссылке, которую модуль Itgrix добавляет автоматически). Но плеер поддерживает только формат mp3.

При установке Itgrix_amo по умолчанию уже включена конвертация файлов записей разговоров в mp3.

8) process_task_creation_params

Изменение параметров создания задач по пропущенным звонкам.

Вход:

{
"params": {
"complete_till_at":<Дата-время, когда задача должна быть завершена
(в формате Unix Timestamp)>,
"element_id":<ID сущности, к которой привязана задача>,
"element_type":<Тип сущности, к которой привязана задача.
Числовое значение: 1 - Контакт, 2 - Сделка>,
"is_completed":<Выполнена ли задача. При создании всегда false>,
"responsible_user_id":<ID ответственного пользователя>,
"task_type":<Тип задачи. Числовое значение:
1 - Звонок, 2 - Встреча, 3 - Письмо>,
"text":<Описание задачи. По умолчанию "Перезвонить <Тел.номер>">,
}
}

Вернуть:

{
"data": {
"complete_till_at":<Дата-время, когда задача должна быть завершена
(в формате Unix Timestamp)>,
"element_id":<ID сущности, к которой привязана задача>,
"element_type":<Тип сущности, к которой привязана задача.
Числовое значение: 1 - Контакт, 2 - Сделка>,
"is_completed":<Выполнена ли задача. При создании всегда false>,
"responsible_user_id":<ID ответственного пользователя>,
"task_type":<Тип задачи. Числовое значение:
1 - Звонок, 2 - Встреча, 3 - Письмо>,
"text":<Описание задачи>,
},
"state": "success"
}