Диагностика проблем создания дел
По результату разговора дела могут не создаваться по следующим причинам:
0. Состоялся разговор между сотрудниками на портале.
Внимание! Дела по разговорам между сотрудниками портала не создаются!
Если телефонный номер на который Вы звоните указан в контактах сотрудника - этот разговор тоже будет считаться внутренним и дело создано не будет.
- Нет доступа к MySQL таблице CDR (в будущем CDR)
- Данные о разговоре не попадают в CDR
- Не указаны контексты для входящих и исходящих разговоров, или они указаны не верно, либо данные в CDR не корректны
1. Нет доступа к CDR
Убедитесь, что в серверных настройках верно указаны реквизиты подключения к MySQL. При подключении к базе с указанными реквизитами должна быть доступна таблица `cdr`.
Распространенные проблемы:
- Указана база MySQL, в которой нет таблицы `cdr`. Например, для FreePBX указана база `asterisk`, тогда как `cdr` расположена в `asteriskcdrdb`
2. Данные о разговоре не попадают в CDR
Для проверки, совершите разговор с клиентом, положите трубку и выполните в SQL-клиенте запрос
SELECT * FROM `cdr` ORDER BY `calldate` DESC LIMIT 50
В полученной выборке найдите данные о состоявшемся разговоре.
Если их нет - обратитесь к вашим специалистам по Asterisk с этой проблемой. В CDR должны попадать данные обо всех состоявшихся разговорах
Распространенные проблемы:
- Asterisk настроен вручную и в CDR попадают данные о входящих вызовах, но не попадают об исходящих. Или, наоборот.
3. Контексты для входящих и исходящих вызовов, данные в CDR
Для отладки создания дел необходимо:
- Совершить звонок, поговорить, положить трубку
- Выполнить в SQL-клиенте запрос: SELECT * FROM `cdr` ORDER BY `calldate` DESC LIMIT 50
- Найти запись, относящуюся к совершенному звонку
При определении направления вызова мы опираемся на контекст: в настройках приложения вы указали контексты входящих и исходящих вызовов. Проверьте, что для текущей записи указан контекст, он присутствует в только в списке входящих, или только в списке исходящих контекстов, по нему однозначно можно определить направление вызова.
Для входящих звонков данные берутся из полей:
- Звонящий - src
- Ответивший - из dstchannel
- Номер, на который пришел звонок - did
Для исходящих звонков данные берутся из полей:
- Звонящий - из channel
- Ответивший - из lastdata
В том случае, если в этих полях не содержатся нужные данные, необходимо проводить настройки Asterisk, или производить кастомизацию приложения. Вы можете провести её самостоятельно в файле bx24asterisk_parser.php, либо обратиться к нашим специалистам.
В том случае, если у вас всегда данные о звонившем и ответившем содержатся в полях src и dst, независимо от контекста, добавьте, или замените функцию convertHistoryToCall(array $entry) в файле bx24asterisk_parser.php на следующее:
public function convertHistoryEntryToCall(array $entry) { $call = array( "from" => $entry["src"], "to" => $entry["dst"], "direction" => ($this->isInternalPhoneNumber($entry['src'])) ? "out" : "in", "external" => $entry["did"], ); return $call; }
Распространенные проблемы:
- Один контекст используется и для входящих и для исходящих вызовов. В таком случае, потребуется кастомизация приложения, обратитесь в нашу службу технической поддержки
- Нет поля did, или оно не заполнено. В таком случае информация об источнике лида не будет попадать в CRM
Сервис поддержки клиентов работает на платформе UserEcho