Links
Comment on page

Длительность ожидания клиента на линии

Задача: вычислить и записать в поле звонка, какое количество времени клиент ожидал ответа на линии.

Как реализовать

В веб-интерфейсе настройки модуля (http://<Asterisk IP>:8077/config):
  1. 1.
    Установите галочку "Включить кастомизацию".
  2. 2.
    Установите галочку на пункте "полей дела".
3. Отредактируйте файл кастомизации.
Кастомизация настраивается в файле /opt/itgrix_bx/customizer/actions/customize_activity.php.
Для версий ДО 3.4.0 этот файл находится в каталоге /opt/itgrix_bx/custom/
Параметры дела, которые доступны для редактирования, описаны в статье.
$activityFields = array();
if ($params['was_answered'] == false) { // missed
$key = $params['type'] == 3 ? 'to' : 'from'; // 2 = incoming
$activityFields['SUBJECT'] = 'Пропущенный от ' . $params[$key];
} else {
$start_time = date_create($params["start_time"]);
$answer_time = date_create($params["answer_time"]);
$end_time = date_create($params["end_time"]);
$wait_time_sec = $answer_time->getTimestamp() - $start_time->getTimestamp();
$duration_time = $end_time->diff($answered_at)->format("%i мин, %s сек.");
$activityFields['DESCRIPTION'] = "Длительность звонка: " . $duration_time .
" Время ожидания ответа : " . $wait_time_sec . " сек.";
}
return array(
'state' => 'success',
'data' => $activityFields,
);