Поиск по extention вместо ring group в CDR Reports FreePBX

В FreePBX есть одна неудобная штука в модуле отчета по звонкам:  при поиске входящих звонков, принятых определенным внутренним номером, если звонок попал на extention через  Ring Group, вы не сможете найти звонок, введя в поле Destionation интересующий вас extention. Да  и в поле Destionation (Получатель) отображается номер Ring Group, а не Extention.

Первое решается так. Откройте в редакторе файл /var/page.cdr.php, найдите строку   $dstchannel = str_replace('AND dst', '', $dst);  и после нее добавьте еще одну:      $dstchannel = str_replace("LIKE '", "LIKE '%", $dstchannel); Сохраните файл. Теперь вы можете вводить extention в поле Destination и поск будет затрагивать также и конечный extention.

Однако в таблице результатов мы все еще видим только номер Ring Group. Сделаем слудеющее. Найдите в этом же файле строку, начинающуюся с echo '<td title="' . _("Channel") . ": " . $channel . ' ' . _("Destination ....  Перед этой строкой вставьте preg_match("/SIP\\/(\\d{1,4})-/m", $channel, $matches);  if($matches[1]) $dst=$matches[1]. " (".$dst.")"; Сохраните. Теперь в поле Destination вы будете видеть конечный Extention.

Все это работает, если внутренние линии нумеруются от 1 до 9999.

Мы предоставляем услуги по "допиливанию" FreePBX под индивидуальные нужды клиента, а также экспресс настройку колл центров на базе FreePBX и Астериск. Обращайтесь!