Кастомизации (для версий до 3.0)
Начиная с версии 2.15.0
Last updated
Начиная с версии 2.15.0
Last updated
В версии 2.15.0 обновлена логика обработки звонков: теперь звонки регистрируются через телефонию Битрикс24, что позволяет использовать сквозную аналитику.
Это также означает, что теперь при необходимости создания сущности (лида/контакта) это делает сам Битрикс, а коннектор больше не ищет и не создаёт сущность напрямую.
В связи с обновлением изменилась также и функциональность кастомизаций.
(Схема для версий начиная с 2.15.0)
“Сущность” – это контакт или лид. Запрос разговора – это начало звонка на внутреннем номере. В одном звонке может быть несколько разговоров (в случае перевода звонка).
Файл кастомизации (по алфавиту)
Описание
get_updated_activity_fields.php
Обновление полей дела (в конце звонка).
get_updated_entity_fields.php
Обновить поля сущности (в конце звонка).
need_registration.php
Нужна ли регистрация звонка? Можно сделать черно-белые списки по внутреннему номеру/транку.
process_final_params.php
Изменение данных завершения звонка.
process_originate_params.php
Изменение параметров при инициализации звонка из Битрикс24. Можно позвонить через другой транк, через другой контекст, сменить формат номера и прочее.
process_phone_number.php
Изменение номера телефона перед регистрацией в Б24 и перед поиском пользователя. Можно сменить формат телефонного номера (+7, 8...).
process_record_file_path.php
Кастомизация пути до файла записи разговора.
process_registration_params.php
Изменение параметров регистрации звонка.
process_task_creation_params.php
Кастомизация создания задач по пропущенным звонкам.
Изменение параметров при инициализации звонка из Битрикс.
Примеры Изменения номера\контекста для вызова в астериск
Вход:
{
"params": {
"caller_id": "<caller_id>",
"channel": "<channel>",
"context": "<context>",
"extension": "<extension>",
"priority": "<priority>"
}
}
Вернуть:
{
"data": {
"caller_id": "<caller_id>",
"channel": "<channel>",
"context": "<context>",
"extension": "<extension>",
"priority": "<priority>"
}
}
К этому массиву данных можно добавить переменные "codecs" и "variables":
"codecs": "<codecs>",
"variable": "variable",
Преобразование номеров – как внутренних, так и внешних.
Пример Изменение номера телефона перед отправкой данных в CRM
Вход:
{
"params": {
"phone": "<номер>"
}
}
Вернуть:
{
"data": {
"phone": "<кастомизированный_номер>"
},
"state": "success"
}
Используется для реализации функционала чёрных/белых список по номерам, транкам и прочим сложным условиям.
Пример Черные и белые списки. Как настроить?
Вход:
{
"params": {<Набор данных о разговоре>}
}
Набор данных о разговоре описан ниже в разделе Данные разговора в параметрах.
Вернуть:
{
"data": {
"result": "<Булева переменная: true - регистрируем, false - игнорируем>"
},
"state": "success"
}
Используется для кастомизации параметров регистрации начала звонка.
Примеры Изменение внешнего номера в Битрикс24
Вход:
Набор данных о разговоре описан ниже в разделе Данные разговора в параметрах.
Вернуть:
Полный список параметров в документации Битрикса.
Начиная с версии 2.15.0 кастомизация всех черных/белых списков реализуется через need_registration.
Примеры Разные ответственные за пропущенные за разные транки
Вход:
{"params": {
"ADD_TO_CHAT": "<Добавить сообщение о звонке в бизнес чат>",
"CALL_ID": "<Идентификатор звонка в битрикс>",
"DURATION": "<Длительность>",
"STATUS_CODE": 200,
"USER_ID": "<Идентификатор пользователя Битрикс, ответственного за разговор>",
"conversation": {<Набор данных о разговоре>}
}}
Набор данных о разговоре описан ниже в разделе Данные разговора в параметрах.
Вернуть:
{"data": {
"ADD_TO_CHAT": "<Добавить сообщение о звонке в бизнес чат>",
"CALL_ID": "<Идентификатор звонка в битрикс. Не рекомендуется изменять!>",
"DURATION": "<Длительность>",
"STATUS_CODE": "<SIP-код статуса звонка>",
"USER_ID": "<Идентификатор пользователя Битрикс, ответственного за разговор>"
},
"state": "success"
}
Преобразование пути до файла записи разговора.
Пример Кастомизация имени файла аудиозаписи
Вход:
{"params": {
"call_id": "<id_звонка>",
"from": "<номер>",
"to": "<номер>",
"path": "<путь_до_записи>"
}
}
Вернуть:
{"data": {
"path": "<кастомизированный_путь_до_записи>"
},
"state": "success"
}
Событие возникает перед постановкой задачи (при пропущенном входящем звонке). Полное описание полей задачи в API Битрикса
Пример Кастомизация создания задач по пропущенным звонкам
Вход:
В версии 2.15.0 добавлен блок данных о разговоре (conversation).
Набор данных о разговоре (conversation) описан ниже в разделе Данные разговора в параметрах.
Вернуть:
{"data": {
"arNewTaskData": {
"<Название поля задачи в битрикс>": "<Значение этого поля>"
}
},
"state": "success"
}
Обновление полей дела, в конце звонка.
Примеры использования Обновление полей дела
Вход:
{"params": {<Набор данных о разговоре>}
}
Набор данных о разговоре описан ниже в разделе Данные разговора в параметрах.
Вернуть:
{"data": {
"<Название поля дела в битрикс>": "<Значение этого поля>"
},
"state": "success"
}
В версии 2.15.0 get_updated_lead_fields перенесена в get_updated_entity_fields и вызывается и для лидов, и для контактов.
Обновление полей лида/контакта в конце входящего звонка работает только для сущностей, которые созданы в результате регистрации звонка модулем.
Примеры использования – Обновление полей сущности
Вход:
Набор данных о разговоре описан ниже в разделе Данные разговора в параметрах.
Вернуть:
{"data": {
"<Название поля лида в битрикс>": "<Значение этого поля>"
},
"state": "success"
}
Описание полей лида в API Битрикса. Описание полей контакта в API Битрикса.
Пример (входящий неотвеченный разговор с номера 89123456789 на 123 через транк 3432723033):